diff options
Diffstat (limited to 'Source')
89 files changed, 748 insertions, 5334 deletions
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index 035b7a0..e86cc2f 100644 --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@ -821,7 +821,6 @@ target_compile_definitions(CMakeLib PUBLIC ${CLANG_TIDY_DEFINITIONS}) # include_directories( "${CMake_SOURCE_DIR}/Source/CTest" - ${CMAKE_XMLRPC_INCLUDES} ${CMAKE_CURL_INCLUDES} ) # @@ -887,7 +886,7 @@ set(CTEST_SRCS cmCTest.cxx # Build CTestLib add_library(CTestLib ${CTEST_SRCS}) -target_link_libraries(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES} ${CMAKE_XMLRPC_LIBRARIES}) +target_link_libraries(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES}) # # CPack diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index e4f11ed..b43f9fd 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 13) -set(CMake_VERSION_PATCH 20181206) +set(CMake_VERSION_PATCH 20181213) #set(CMake_VERSION_RC 1) diff --git a/Source/CPack/cmCPackDebGenerator.cxx b/Source/CPack/cmCPackDebGenerator.cxx index ea0ee58..29968af 100644 --- a/Source/CPack/cmCPackDebGenerator.cxx +++ b/Source/CPack/cmCPackDebGenerator.cxx @@ -80,7 +80,7 @@ DebGenerator::DebGenerator( , WorkDir(workDir) , TopLevelDir(topLevelDir) , TemporaryDir(temporaryDir) - , DebianArchiveType(debianArchiveType ? debianArchiveType : "paxr") + , DebianArchiveType(debianArchiveType ? debianArchiveType : "gnutar") , ControlValues(controlValues) , GenShLibs(genShLibs) , ShLibsFilename(shLibsFilename) diff --git a/Source/CPack/cmCPackFreeBSDGenerator.cxx b/Source/CPack/cmCPackFreeBSDGenerator.cxx index 1433414..2fcd1a8 100644 --- a/Source/CPack/cmCPackFreeBSDGenerator.cxx +++ b/Source/CPack/cmCPackFreeBSDGenerator.cxx @@ -55,8 +55,7 @@ cmGeneratedFileStream& operator<<(cmGeneratedFileStream& s, const EscapeQuotes& v) { s << '"'; - for (std::string::size_type i = 0; i < v.value.length(); ++i) { - char c = v.value[i]; + for (char c : v.value) { switch (c) { case '\n': s << "\\n"; @@ -148,8 +147,8 @@ public: ManifestKeyListValue& operator<<(const std::vector<std::string>& v) { - for (VList::const_iterator it = v.begin(); it != v.end(); ++it) { - (*this) << (*it); + for (std::string const& e : v) { + (*this) << e; } return *this; } @@ -159,9 +158,9 @@ public: bool with_comma = false; s << '['; - for (VList::const_iterator it = value.begin(); it != value.end(); ++it) { + for (std::string const& elem : value) { s << (with_comma ? ',' : ' '); - s << EscapeQuotes(*it); + s << EscapeQuotes(elem); with_comma = true; } s << " ]"; @@ -182,8 +181,8 @@ public: void write_value(cmGeneratedFileStream& s) const override { s << "{\n"; - for (VList::const_iterator it = value.begin(); it != value.end(); ++it) { - s << " \"" << *it << "\": {\"origin\": \"" << *it << "\"},\n"; + for (std::string const& elem : value) { + s << " \"" << elem << "\": {\"origin\": \"" << elem << "\"},\n"; } s << '}'; } @@ -206,9 +205,8 @@ std::string cmCPackFreeBSDGenerator::var_lookup(const char* var_name) const char* pv = this->GetOption(var_name); if (!pv) { return std::string(); - } else { - return pv; } + return pv; } // Produce UCL in the given @p manifest file for the common @@ -234,7 +232,7 @@ void cmCPackFreeBSDGenerator::write_manifest_fields( cmSystemTools::ExpandListArgument( var_lookup("CPACK_FREEBSD_PACKAGE_LICENSE"), licenses); std::string licenselogic("single"); - if (licenses.size() < 1) { + if (licenses.empty()) { cmSystemTools::SetFatalErrorOccured(); } else if (licenses.size() > 1) { licenselogic = var_lookup("CPACK_FREEBSD_PACKAGE_LICENSE_LOGIC"); @@ -249,7 +247,7 @@ void cmCPackFreeBSDGenerator::write_manifest_fields( std::vector<std::string> deps; cmSystemTools::ExpandListArgument(var_lookup("CPACK_FREEBSD_PACKAGE_DEPS"), deps); - if (deps.size() > 0) { + if (!deps.empty()) { manifest << (ManifestKeyDepsValue("deps") << deps); } } @@ -277,13 +275,9 @@ void write_manifest_files(cmGeneratedFileStream& s, const std::string& toplevel, const std::vector<std::string>& files) { - const char* c_toplevel = toplevel.c_str(); - std::vector<std::string>::const_iterator it; - s << "\"files\": {\n"; - for (it = files.begin(); it != files.end(); ++it) { - s << " \"/" << cmSystemTools::RelativePath(c_toplevel, it->c_str()) - << "\": \"" + for (std::string const& file : files) { + s << " \"/" << cmSystemTools::RelativePath(toplevel, file) << "\": \"" << "<sha256>" << "\",\n"; } @@ -313,7 +307,7 @@ int cmCPackFreeBSDGenerator::PackageFiles() std::string manifestname = toplevel + "/+MANIFEST"; { - cmGeneratedFileStream manifest(manifestname.c_str()); + cmGeneratedFileStream manifest(manifestname); manifest << "{\n"; write_manifest_fields(manifest); write_manifest_files(manifest, toplevel, files); @@ -340,16 +334,15 @@ int cmCPackFreeBSDGenerator::PackageFiles() std::string output_dir = cmSystemTools::CollapseCombinedPath(toplevel, "../"); pkg_create_from_manifest(output_dir.c_str(), ::TXZ, toplevel.c_str(), - manifestname.c_str(), NULL); + manifestname.c_str(), nullptr); std::string broken_suffix = std::string("-") + var_lookup("CPACK_TOPLEVEL_TAG") + std::string(GetOutputExtension()); - for (std::vector<std::string>::iterator it = packageFileNames.begin(); - it != packageFileNames.end(); ++it) { - cmCPackLogger(cmCPackLog::LOG_DEBUG, "Packagefile " << *it << std::endl); - if (has_suffix(*it, broken_suffix)) { - it->replace(it->size() - broken_suffix.size(), std::string::npos, - GetOutputExtension()); + for (std::string& name : packageFileNames) { + cmCPackLogger(cmCPackLog::LOG_DEBUG, "Packagefile " << name << std::endl); + if (has_suffix(name, broken_suffix)) { + name.replace(name.size() - broken_suffix.size(), std::string::npos, + GetOutputExtension()); break; } } diff --git a/Source/CPack/cmCPackPKGGenerator.cxx b/Source/CPack/cmCPackPKGGenerator.cxx index bdda386..9401bca 100644 --- a/Source/CPack/cmCPackPKGGenerator.cxx +++ b/Source/CPack/cmCPackPKGGenerator.cxx @@ -225,7 +225,8 @@ void cmCPackPKGGenerator::CreateChoice(const cmCPackComponent& component, xout.Content(this->GetPackageName(component)); } else { xout.Content("file:./"); - xout.Content(relativePackageLocation); + xout.Content(cmSystemTools::EncodeURL(relativePackageLocation, + /*escapeSlashes=*/false)); } xout.EndElement(); // pkg-ref } diff --git a/Source/CPack/cpack.cxx b/Source/CPack/cpack.cxx index 7cf69fc..4e49727 100644 --- a/Source/CPack/cpack.cxx +++ b/Source/CPack/cpack.cxx @@ -89,6 +89,15 @@ int cpackDefinitionArgument(const char* argument, const char* cValue, return 1; } +static void cpackProgressCallback(const char* message, float progress, + void* clientdata) +{ + (void)progress; + (void)clientdata; + + std::cout << "-- " << message << std::endl; +} + // this is CPack. int main(int argc, char const* const* argv) { @@ -202,6 +211,7 @@ int main(int argc, char const* const* argv) cmake cminst(cmake::RoleScript); cminst.SetHomeDirectory(""); cminst.SetHomeOutputDirectory(""); + cminst.SetProgressCallback(cpackProgressCallback, nullptr); cminst.GetCurrentSnapshot().SetDefaultDefinitions(); cmGlobalGenerator cmgg(&cminst); cmMakefile globalMF(&cmgg, cminst.GetCurrentSnapshot()); diff --git a/Source/CTest/cmCTestHandlerCommand.cxx b/Source/CTest/cmCTestHandlerCommand.cxx index 667a8ba..c63694d 100644 --- a/Source/CTest/cmCTestHandlerCommand.cxx +++ b/Source/CTest/cmCTestHandlerCommand.cxx @@ -206,18 +206,7 @@ bool cmCTestHandlerCommand::InitialPass(std::vector<std::string> const& args, handler->PopulateCustomVectors(this->Makefile); if (this->Values[ct_SUBMIT_INDEX]) { - if (!this->CTest->GetDropSiteCDash() && - this->CTest->GetDartVersion() <= 1) { - cmCTestLog( - this->CTest, ERROR_MESSAGE, - "Dart before version 2.0 does not support collecting submissions." - << std::endl - << "Please upgrade the server to Dart 2 or higher, or do not use " - "SUBMIT_INDEX." - << std::endl); - } else { - handler->SetSubmitIndex(atoi(this->Values[ct_SUBMIT_INDEX])); - } + handler->SetSubmitIndex(atoi(this->Values[ct_SUBMIT_INDEX])); } cmWorkingDirectory workdir( this->CTest->GetCTestConfiguration("BuildDirectory")); diff --git a/Source/CTest/cmCTestSubmitCommand.cxx b/Source/CTest/cmCTestSubmitCommand.cxx index 60029ab..43bd636 100644 --- a/Source/CTest/cmCTestSubmitCommand.cxx +++ b/Source/CTest/cmCTestSubmitCommand.cxx @@ -20,9 +20,6 @@ cmCTestGenericHandler* cmCTestSubmitCommand::InitializeHandler() const char* ctestDropSite = this->Makefile->GetDefinition("CTEST_DROP_SITE"); const char* ctestDropLocation = this->Makefile->GetDefinition("CTEST_DROP_LOCATION"); - const char* ctestTriggerSite = - this->Makefile->GetDefinition("CTEST_TRIGGER_SITE"); - bool ctestDropSiteCDash = this->Makefile->IsOn("CTEST_DROP_SITE_CDASH"); if (!ctestDropMethod) { ctestDropMethod = "http"; } @@ -41,16 +38,6 @@ cmCTestGenericHandler* cmCTestSubmitCommand::InitializeHandler() this->CTest->SetCTestConfiguration("DropLocation", ctestDropLocation, this->Quiet); - this->CTest->SetCTestConfiguration( - "IsCDash", ctestDropSiteCDash ? "TRUE" : "FALSE", this->Quiet); - - // Only propagate TriggerSite for non-CDash projects: - // - if (!ctestDropSiteCDash) { - this->CTest->SetCTestConfiguration("TriggerSite", ctestTriggerSite, - this->Quiet); - } - this->CTest->SetCTestConfigurationFromCMakeVariable( this->Makefile, "CurlOptions", "CTEST_CURL_OPTIONS", this->Quiet); this->CTest->SetCTestConfigurationFromCMakeVariable( @@ -58,8 +45,6 @@ cmCTestGenericHandler* cmCTestSubmitCommand::InitializeHandler() this->CTest->SetCTestConfigurationFromCMakeVariable( this->Makefile, "DropSitePassword", "CTEST_DROP_SITE_PASSWORD", this->Quiet); - this->CTest->SetCTestConfigurationFromCMakeVariable( - this->Makefile, "ScpCommand", "CTEST_SCP_COMMAND", this->Quiet); const char* notesFilesVariable = this->Makefile->GetDefinition("CTEST_NOTES_FILES"); diff --git a/Source/CTest/cmCTestSubmitHandler.cxx b/Source/CTest/cmCTestSubmitHandler.cxx index 061c8ef..67c669c 100644 --- a/Source/CTest/cmCTestSubmitHandler.cxx +++ b/Source/CTest/cmCTestSubmitHandler.cxx @@ -5,9 +5,7 @@ #include "cm_curl.h" #include "cm_jsoncpp_reader.h" #include "cm_jsoncpp_value.h" -#include "cmsys/Process.h" #include <chrono> -#include <cstring> #include <sstream> #include <stdio.h> #include <stdlib.h> @@ -20,20 +18,11 @@ #include "cmCurl.h" #include "cmDuration.h" #include "cmGeneratedFileStream.h" -#include "cmProcessOutput.h" #include "cmState.h" #include "cmSystemTools.h" -#include "cmThirdParty.h" -#include "cmWorkingDirectory.h" #include "cmXMLParser.h" #include "cmake.h" -#if defined(CTEST_USE_XMLRPC) -# include "cmVersion.h" -# include "cm_sys_stat.h" -# include "cm_xmlrpc.h" -#endif - #define SUBMIT_TIMEOUT_IN_SECONDS_DEFAULT 120 typedef std::vector<char> cmCTestSubmitHandlerVectorOfChar; @@ -131,7 +120,6 @@ static size_t cmCTestSubmitHandlerCurlDebugCallback(CURL* /*unused*/, cmCTestSubmitHandler::cmCTestSubmitHandler() : HTTPProxy() - , FTPProxy() { this->Initialize(); } @@ -143,165 +131,16 @@ void cmCTestSubmitHandler::Initialize() p = cmCTest::Part(p + 1)) { this->SubmitPart[p] = true; } - this->CDash = false; this->HasWarnings = false; this->HasErrors = false; this->Superclass::Initialize(); this->HTTPProxy.clear(); this->HTTPProxyType = 0; this->HTTPProxyAuth.clear(); - this->FTPProxy.clear(); - this->FTPProxyType = 0; this->LogFile = nullptr; this->Files.clear(); } -bool cmCTestSubmitHandler::SubmitUsingFTP( - const std::string& localprefix, const std::vector<std::string>& files, - const std::string& remoteprefix, const std::string& url) -{ - CURL* curl; - CURLcode res; - FILE* ftpfile; - char error_buffer[1024]; - - /* In windows, this will init the winsock stuff */ - ::curl_global_init(CURL_GLOBAL_ALL); - - for (std::string const& file : files) { - /* get a curl handle */ - curl = curl_easy_init(); - if (curl) { - // Using proxy - if (this->FTPProxyType > 0) { - curl_easy_setopt(curl, CURLOPT_PROXY, this->FTPProxy.c_str()); - switch (this->FTPProxyType) { - case 2: - curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4); - break; - case 3: - curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5); - break; - default: - curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); - } - } - - // enable uploading - ::curl_easy_setopt(curl, CURLOPT_UPLOAD, 1); - - // if there is little to no activity for too long stop submitting - ::curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 1); - ::curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, - SUBMIT_TIMEOUT_IN_SECONDS_DEFAULT); - - ::curl_easy_setopt(curl, CURLOPT_UPLOAD, 1); - - std::string local_file = file; - if (!cmSystemTools::FileExists(local_file)) { - local_file = localprefix + "/" + file; - } - std::string upload_as = - url + "/" + remoteprefix + cmSystemTools::GetFilenameName(file); - - if (!cmSystemTools::FileExists(local_file)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Cannot find file: " << local_file << std::endl); - ::curl_easy_cleanup(curl); - ::curl_global_cleanup(); - return false; - } - unsigned long filelen = cmSystemTools::FileLength(local_file); - - ftpfile = cmsys::SystemTools::Fopen(local_file, "rb"); - *this->LogFile << "\tUpload file: " << local_file << " to " << upload_as - << std::endl; - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - " Upload file: " << local_file << " to " - << upload_as << std::endl, - this->Quiet); - - ::curl_easy_setopt(curl, CURLOPT_VERBOSE, 1); - - // specify target - ::curl_easy_setopt(curl, CURLOPT_URL, upload_as.c_str()); - - // now specify which file to upload - ::curl_easy_setopt(curl, CURLOPT_INFILE, ftpfile); - - // and give the size of the upload (optional) - ::curl_easy_setopt(curl, CURLOPT_INFILESIZE, static_cast<long>(filelen)); - - // and give curl the buffer for errors - ::curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, &error_buffer); - - // specify handler for output - ::curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, - cmCTestSubmitHandlerWriteMemoryCallback); - ::curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, - cmCTestSubmitHandlerCurlDebugCallback); - - /* we pass our 'chunk' struct to the callback function */ - cmCTestSubmitHandlerVectorOfChar chunk; - cmCTestSubmitHandlerVectorOfChar chunkDebug; - ::curl_easy_setopt(curl, CURLOPT_FILE, &chunk); - ::curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &chunkDebug); - - // Now run off and do what you've been told! - res = ::curl_easy_perform(curl); - - if (!chunk.empty()) { - cmCTestOptionalLog(this->CTest, DEBUG, - "CURL output: [" - << cmCTestLogWrite(&*chunk.begin(), chunk.size()) - << "]" << std::endl, - this->Quiet); - } - if (!chunkDebug.empty()) { - cmCTestOptionalLog( - this->CTest, DEBUG, - "CURL debug output: [" - << cmCTestLogWrite(&*chunkDebug.begin(), chunkDebug.size()) << "]" - << std::endl, - this->Quiet); - } - - fclose(ftpfile); - if (res) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Error when uploading file: " << local_file - << std::endl); - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Error message was: " << error_buffer << std::endl); - *this->LogFile << " Error when uploading file: " << local_file - << std::endl - << " Error message was: " << error_buffer << std::endl - << " Curl output was: "; - // avoid dereference of empty vector - if (!chunk.empty()) { - *this->LogFile << cmCTestLogWrite(&*chunk.begin(), chunk.size()); - cmCTestLog(this->CTest, ERROR_MESSAGE, - "CURL output: [" - << cmCTestLogWrite(&*chunk.begin(), chunk.size()) << "]" - << std::endl); - } - *this->LogFile << std::endl; - ::curl_easy_cleanup(curl); - ::curl_global_cleanup(); - return false; - } - // always cleanup - ::curl_easy_cleanup(curl); - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Uploaded: " + local_file << std::endl, - this->Quiet); - } - } - ::curl_global_cleanup(); - return true; -} - -// Uploading files is simpler bool cmCTestSubmitHandler::SubmitUsingHTTP( const std::string& localprefix, const std::vector<std::string>& files, const std::string& remoteprefix, const std::string& url) @@ -407,26 +246,7 @@ bool cmCTestSubmitHandler::SubmitUsingHTTP( *this->LogFile << "\tUpload file: " << local_file << " to " << remote_file << std::endl; - std::string ofile; - for (char c : remote_file) { - char hexCh[4] = { 0, 0, 0, 0 }; - hexCh[0] = c; - switch (c) { - case '+': - case '?': - case '/': - case '\\': - case '&': - case ' ': - case '=': - case '%': - sprintf(hexCh, "%%%02X", static_cast<int>(c)); - ofile.append(hexCh); - break; - default: - ofile.append(hexCh); - } - } + std::string ofile = cmSystemTools::EncodeURL(remote_file); std::string upload_as = url + ((url.find('?') == std::string::npos) ? '?' : '&') + "FileName=" + ofile; @@ -676,370 +496,6 @@ void cmCTestSubmitHandler::ParseResponse( } } -bool cmCTestSubmitHandler::TriggerUsingHTTP( - const std::vector<std::string>& files, const std::string& remoteprefix, - const std::string& url) -{ - CURL* curl; - char error_buffer[1024]; - - /* In windows, this will init the winsock stuff */ - ::curl_global_init(CURL_GLOBAL_ALL); - - for (std::string const& file : files) { - /* get a curl handle */ - curl = curl_easy_init(); - if (curl) { - // Using proxy - if (this->HTTPProxyType > 0) { - curl_easy_setopt(curl, CURLOPT_PROXY, this->HTTPProxy.c_str()); - switch (this->HTTPProxyType) { - case 2: - curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4); - break; - case 3: - curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5); - break; - default: - curl_easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); - if (!this->HTTPProxyAuth.empty()) { - curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, - this->HTTPProxyAuth.c_str()); - } - } - } - - ::curl_easy_setopt(curl, CURLOPT_VERBOSE, 1); - - // and give curl the buffer for errors - ::curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, &error_buffer); - - // specify handler for output - ::curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, - cmCTestSubmitHandlerWriteMemoryCallback); - ::curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, - cmCTestSubmitHandlerCurlDebugCallback); - - /* we pass our 'chunk' struct to the callback function */ - cmCTestSubmitHandlerVectorOfChar chunk; - cmCTestSubmitHandlerVectorOfChar chunkDebug; - ::curl_easy_setopt(curl, CURLOPT_FILE, &chunk); - ::curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &chunkDebug); - - std::string rfile = remoteprefix + cmSystemTools::GetFilenameName(file); - std::string ofile; - for (char c : rfile) { - char hexCh[4] = { 0, 0, 0, 0 }; - hexCh[0] = c; - switch (c) { - case '+': - case '?': - case '/': - case '\\': - case '&': - case ' ': - case '=': - case '%': - sprintf(hexCh, "%%%02X", static_cast<int>(c)); - ofile.append(hexCh); - break; - default: - ofile.append(hexCh); - } - } - std::string turl = url + - ((url.find('?') == std::string::npos) ? '?' : '&') + - "xmlfile=" + ofile; - *this->LogFile << "Trigger url: " << turl << std::endl; - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - " Trigger url: " << turl << std::endl, this->Quiet); - curl_easy_setopt(curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY); - curl_easy_setopt(curl, CURLOPT_URL, turl.c_str()); - if (curl_easy_perform(curl)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Error when triggering: " << turl << std::endl); - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Error message was: " << error_buffer << std::endl); - *this->LogFile << "\tTriggering failed with error: " << error_buffer - << std::endl - << " Error message was: " << error_buffer - << std::endl; - if (!chunk.empty()) { - *this->LogFile << " Curl output was: " - << cmCTestLogWrite(&*chunk.begin(), chunk.size()) - << std::endl; - cmCTestLog(this->CTest, ERROR_MESSAGE, - "CURL output: [" - << cmCTestLogWrite(&*chunk.begin(), chunk.size()) << "]" - << std::endl); - } - ::curl_easy_cleanup(curl); - ::curl_global_cleanup(); - return false; - } - - if (!chunk.empty()) { - cmCTestOptionalLog(this->CTest, DEBUG, - "CURL output: [" - << cmCTestLogWrite(&*chunk.begin(), chunk.size()) - << "]" << std::endl, - this->Quiet); - } - if (!chunkDebug.empty()) { - cmCTestOptionalLog( - this->CTest, DEBUG, - "CURL debug output: [" - << cmCTestLogWrite(&*chunkDebug.begin(), chunkDebug.size()) << "]" - << std::endl, - this->Quiet); - } - - // always cleanup - ::curl_easy_cleanup(curl); - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, std::endl, - this->Quiet); - } - } - ::curl_global_cleanup(); - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Dart server triggered..." << std::endl, this->Quiet); - return true; -} - -bool cmCTestSubmitHandler::SubmitUsingSCP( - const std::string& scp_command, const std::string& localprefix, - const std::vector<std::string>& files, const std::string& remoteprefix, - const std::string& url) -{ - if (scp_command.empty() || localprefix.empty() || files.empty() || - remoteprefix.empty() || url.empty()) { - return false; - } - - std::vector<const char*> argv; - argv.push_back(scp_command.c_str()); // Scp command - argv.push_back(scp_command.c_str()); // Dummy string for file - argv.push_back(scp_command.c_str()); // Dummy string for remote url - argv.push_back(nullptr); - - cmsysProcess* cp = cmsysProcess_New(); - cmsysProcess_SetOption(cp, cmsysProcess_Option_HideWindow, 1); - // cmsysProcess_SetTimeout(cp, timeout); - - int problems = 0; - - for (std::string const& file : files) { - int retVal; - - std::string lfname = localprefix; - cmSystemTools::ConvertToUnixSlashes(lfname); - lfname += "/" + file; - lfname = cmSystemTools::ConvertToOutputPath(lfname); - argv[1] = lfname.c_str(); - std::string rfname = url + "/" + remoteprefix + file; - argv[2] = rfname.c_str(); - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - "Execute \"" << argv[0] << "\" \"" << argv[1] << "\" \"" - << argv[2] << "\"" << std::endl, - this->Quiet); - *this->LogFile << "Execute \"" << argv[0] << "\" \"" << argv[1] << "\" \"" - << argv[2] << "\"" << std::endl; - - cmsysProcess_SetCommand(cp, &*argv.begin()); - cmsysProcess_Execute(cp); - char* data; - int length; - cmProcessOutput processOutput; - std::string strdata; - - while (cmsysProcess_WaitForData(cp, &data, &length, nullptr)) { - processOutput.DecodeText(data, length, strdata); - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - cmCTestLogWrite(strdata.c_str(), strdata.size()), - this->Quiet); - } - processOutput.DecodeText(std::string(), strdata); - if (!strdata.empty()) { - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - cmCTestLogWrite(strdata.c_str(), strdata.size()), - this->Quiet); - } - - cmsysProcess_WaitForExit(cp, nullptr); - - int result = cmsysProcess_GetState(cp); - - if (result == cmsysProcess_State_Exited) { - retVal = cmsysProcess_GetExitValue(cp); - if (retVal != 0) { - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - "\tSCP returned: " << retVal << std::endl, - this->Quiet); - *this->LogFile << "\tSCP returned: " << retVal << std::endl; - problems++; - } - } else if (result == cmsysProcess_State_Exception) { - retVal = cmsysProcess_GetExitException(cp); - cmCTestLog(this->CTest, ERROR_MESSAGE, - "\tThere was an exception: " << retVal << std::endl); - *this->LogFile << "\tThere was an exception: " << retVal << std::endl; - problems++; - } else if (result == cmsysProcess_State_Expired) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - "\tThere was a timeout" << std::endl); - *this->LogFile << "\tThere was a timeout" << std::endl; - problems++; - } else if (result == cmsysProcess_State_Error) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - "\tError executing SCP: " << cmsysProcess_GetErrorString(cp) - << std::endl); - *this->LogFile << "\tError executing SCP: " - << cmsysProcess_GetErrorString(cp) << std::endl; - problems++; - } - } - cmsysProcess_Delete(cp); - return problems == 0; -} - -bool cmCTestSubmitHandler::SubmitUsingCP(const std::string& localprefix, - const std::vector<std::string>& files, - const std::string& remoteprefix, - const std::string& destination) -{ - if (localprefix.empty() || files.empty() || remoteprefix.empty() || - destination.empty()) { - /* clang-format off */ - cmCTestLog(this->CTest, ERROR_MESSAGE, - "Missing arguments for submit via cp:\n" - << "\tlocalprefix: " << localprefix << "\n" - << "\tNumber of files: " << files.size() << "\n" - << "\tremoteprefix: " << remoteprefix << "\n" - << "\tdestination: " << destination << std::endl); - /* clang-format on */ - return false; - } - - for (std::string const& file : files) { - std::string lfname = localprefix; - cmSystemTools::ConvertToUnixSlashes(lfname); - lfname += "/" + file; - std::string rfname = destination + "/" + remoteprefix + file; - cmSystemTools::CopyFileAlways(lfname, rfname); - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - " Copy file: " << lfname << " to " << rfname - << std::endl, - this->Quiet); - } - std::string tagDoneFile = destination + "/" + remoteprefix + "DONE"; - cmSystemTools::Touch(tagDoneFile, true); - return true; -} - -#if defined(CTEST_USE_XMLRPC) -bool cmCTestSubmitHandler::SubmitUsingXMLRPC( - const std::string& localprefix, const std::vector<std::string>& files, - const std::string& remoteprefix, const std::string& url) -{ - xmlrpc_env env; - char ctestString[] = "CTest"; - std::string ctestVersionString = cmVersion::GetCMakeVersion(); - char* ctestVersion = const_cast<char*>(ctestVersionString.c_str()); - - std::string realURL = url + "/" + remoteprefix + "/Command/"; - - /* Start up our XML-RPC client library. */ - xmlrpc_client_init(XMLRPC_CLIENT_NO_FLAGS, ctestString, ctestVersion); - - /* Initialize our error-handling environment. */ - xmlrpc_env_init(&env); - - /* Call the famous server at UserLand. */ - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Submitting to: " << realURL << " (" << remoteprefix - << ")" << std::endl, - this->Quiet); - for (std::string const& file : files) { - xmlrpc_value* result; - - std::string local_file = file; - if (!cmSystemTools::FileExists(local_file)) { - local_file = localprefix + "/" + file; - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Submit file: " << local_file << std::endl, - this->Quiet); - struct stat st; - if (::stat(local_file.c_str(), &st)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Cannot find file: " << local_file << std::endl); - return false; - } - - // off_t can be bigger than size_t. fread takes size_t. - // make sure the file is not too big. - if (static_cast<off_t>(static_cast<size_t>(st.st_size)) != - static_cast<off_t>(st.st_size)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " File too big: " << local_file << std::endl); - return false; - } - size_t fileSize = static_cast<size_t>(st.st_size); - FILE* fp = cmsys::SystemTools::Fopen(local_file, "rb"); - if (!fp) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Cannot open file: " << local_file << std::endl); - return false; - } - - unsigned char* fileBuffer = new unsigned char[fileSize]; - if (fread(fileBuffer, 1, fileSize, fp) != fileSize) { - delete[] fileBuffer; - fclose(fp); - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Cannot read file: " << local_file << std::endl); - return false; - } - fclose(fp); - - char remoteCommand[] = "Submit.put"; - char* pRealURL = const_cast<char*>(realURL.c_str()); - result = - xmlrpc_client_call(&env, pRealURL, remoteCommand, "(6)", fileBuffer, - static_cast<xmlrpc_int32>(fileSize)); - - delete[] fileBuffer; - - if (env.fault_occurred) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Submission problem: " << env.fault_string << " (" - << env.fault_code << ")" - << std::endl); - xmlrpc_env_clean(&env); - xmlrpc_client_cleanup(); - return false; - } - - /* Dispose of our result value. */ - xmlrpc_DECREF(result); - } - - /* Clean up our error-handling environment. */ - xmlrpc_env_clean(&env); - - /* Shutdown our XML-RPC client library. */ - xmlrpc_client_cleanup(); - return true; -} -#else -bool cmCTestSubmitHandler::SubmitUsingXMLRPC( - std::string const& /*unused*/, std::vector<std::string> const& /*unused*/, - std::string const& /*unused*/, std::string const& /*unused*/) -{ - return false; -} -#endif - void cmCTestSubmitHandler::ConstructCDashURL(std::string& dropMethod, std::string& url) { @@ -1294,11 +750,6 @@ int cmCTestSubmitHandler::ProcessHandler() if (cdashUploadFile && cdashUploadType) { return this->HandleCDashUploadFile(cdashUploadFile, cdashUploadType); } - std::string iscdash = this->CTest->GetCTestConfiguration("IsCDash"); - // cdash does not need to trigger so just return true - if (!iscdash.empty()) { - this->CDash = true; - } const std::string& buildDirectory = this->CTest->GetCTestConfiguration("BuildDirectory"); @@ -1336,36 +787,11 @@ int cmCTestSubmitHandler::ProcessHandler() } } - if (getenv("FTP_PROXY")) { - this->FTPProxyType = 1; - this->FTPProxy = getenv("FTP_PROXY"); - if (getenv("FTP_PROXY_PORT")) { - this->FTPProxy += ":"; - this->FTPProxy += getenv("FTP_PROXY_PORT"); - } - if (getenv("FTP_PROXY_TYPE")) { - std::string type = getenv("FTP_PROXY_TYPE"); - // HTTP/SOCKS4/SOCKS5 - if (type == "HTTP") { - this->FTPProxyType = 1; - } else if (type == "SOCKS4") { - this->FTPProxyType = 2; - } else if (type == "SOCKS5") { - this->FTPProxyType = 3; - } - } - } - if (!this->HTTPProxy.empty()) { cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, " Use HTTP Proxy: " << this->HTTPProxy << std::endl, this->Quiet); } - if (!this->FTPProxy.empty()) { - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Use FTP Proxy: " << this->FTPProxy << std::endl, - this->Quiet); - } cmGeneratedFileStream ofs; this->StartLogFile("Submit", ofs); @@ -1462,66 +888,11 @@ int cmCTestSubmitHandler::ProcessHandler() std::string dropMethod(this->CTest->GetCTestConfiguration("DropMethod")); - if (dropMethod.empty() || dropMethod == "ftp") { - ofs << "Using drop method: FTP" << std::endl; - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Using FTP submit method" << std::endl - << " Drop site: ftp://", - this->Quiet); - std::string url = "ftp://"; - url += cmCTest::MakeURLSafe( - this->CTest->GetCTestConfiguration("DropSiteUser")) + - ":" + - cmCTest::MakeURLSafe( - this->CTest->GetCTestConfiguration("DropSitePassword")) + - "@" + this->CTest->GetCTestConfiguration("DropSite") + - cmCTest::MakeURLSafe(this->CTest->GetCTestConfiguration("DropLocation")); - if (!this->CTest->GetCTestConfiguration("DropSiteUser").empty()) { - cmCTestOptionalLog( - this->CTest, HANDLER_OUTPUT, - this->CTest->GetCTestConfiguration("DropSiteUser").c_str(), - this->Quiet); - if (!this->CTest->GetCTestConfiguration("DropSitePassword").empty()) { - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, ":******", - this->Quiet); - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, "@", this->Quiet); - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - this->CTest->GetCTestConfiguration("DropSite") - << this->CTest->GetCTestConfiguration("DropLocation") - << std::endl, - this->Quiet); - if (!this->SubmitUsingFTP(buildDirectory + "/Testing/" + - this->CTest->GetCurrentTag(), - files, prefix, url)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Problems when submitting via FTP" << std::endl); - ofs << " Problems when submitting via FTP" << std::endl; - return -1; - } - if (!this->CDash) { - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Using HTTP trigger method" - << std::endl - << " Trigger site: " - << this->CTest->GetCTestConfiguration("TriggerSite") - << std::endl, - this->Quiet); - if (!this->TriggerUsingHTTP( - files, prefix, - this->CTest->GetCTestConfiguration("TriggerSite"))) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Problems when triggering via HTTP" << std::endl); - ofs << " Problems when triggering via HTTP" << std::endl; - return -1; - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Submission successful" << std::endl, this->Quiet); - ofs << " Submission successful" << std::endl; - return 0; - } - } else if (dropMethod == "http" || dropMethod == "https") { + if (dropMethod.empty()) { + dropMethod = "http"; + } + + if (dropMethod == "http" || dropMethod == "https") { std::string url = dropMethod; url += "://"; ofs << "Using drop method: " << dropMethod << std::endl; @@ -1558,23 +929,6 @@ int cmCTestSubmitHandler::ProcessHandler() ofs << " Problems when submitting via HTTP" << std::endl; return -1; } - if (!this->CDash) { - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Using HTTP trigger method" - << std::endl - << " Trigger site: " - << this->CTest->GetCTestConfiguration("TriggerSite") - << std::endl, - this->Quiet); - if (!this->TriggerUsingHTTP( - files, prefix, - this->CTest->GetCTestConfiguration("TriggerSite"))) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Problems when triggering via HTTP" << std::endl); - ofs << " Problems when triggering via HTTP" << std::endl; - return -1; - } - } if (this->HasErrors) { cmCTestLog(this->CTest, HANDLER_OUTPUT, " Errors occurred during " @@ -1592,95 +946,6 @@ int cmCTestSubmitHandler::ProcessHandler() } return 0; - } else if (dropMethod == "xmlrpc") { -#if defined(CTEST_USE_XMLRPC) - ofs << "Using drop method: XML-RPC" << std::endl; - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Using XML-RPC submit method" << std::endl, - this->Quiet); - std::string url = this->CTest->GetCTestConfiguration("DropSite"); - prefix = this->CTest->GetCTestConfiguration("DropLocation"); - if (!this->SubmitUsingXMLRPC(buildDirectory + "/Testing/" + - this->CTest->GetCurrentTag(), - files, prefix, url)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Problems when submitting via XML-RPC" << std::endl); - ofs << " Problems when submitting via XML-RPC" << std::endl; - return -1; - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Submission successful" << std::endl, this->Quiet); - ofs << " Submission successful" << std::endl; - return 0; -#else - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Submission method \"xmlrpc\" not compiled into CTest!" - << std::endl); - return -1; -#endif - } else if (dropMethod == "scp") { - std::string url; - if (!this->CTest->GetCTestConfiguration("DropSiteUser").empty()) { - url += this->CTest->GetCTestConfiguration("DropSiteUser") + "@"; - } - url += this->CTest->GetCTestConfiguration("DropSite") + ":" + - this->CTest->GetCTestConfiguration("DropLocation"); - - // change to the build directory so that we can uses a relative path - // on windows since scp doesn't support "c:" a drive in the path - cmWorkingDirectory workdir(buildDirectory); - if (workdir.Failed()) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Failed to change directory to " - << buildDirectory << " : " - << std::strerror(workdir.GetLastResult()) << std::endl); - ofs << " Failed to change directory to " << buildDirectory << " : " - << std::strerror(workdir.GetLastResult()) << std::endl; - return -1; - } - - if (!this->SubmitUsingSCP(this->CTest->GetCTestConfiguration("ScpCommand"), - "Testing/" + this->CTest->GetCurrentTag(), files, - prefix, url)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Problems when submitting via SCP" << std::endl); - ofs << " Problems when submitting via SCP" << std::endl; - return -1; - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Submission successful" << std::endl, this->Quiet); - ofs << " Submission successful" << std::endl; - return 0; - } else if (dropMethod == "cp") { - std::string location = this->CTest->GetCTestConfiguration("DropLocation"); - - // change to the build directory so that we can uses a relative path - // on windows since scp doesn't support "c:" a drive in the path - cmWorkingDirectory workdir(buildDirectory); - if (workdir.Failed()) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Failed to change directory to " - << buildDirectory << " : " - << std::strerror(workdir.GetLastResult()) << std::endl); - ofs << " Failed to change directory to " << buildDirectory << " : " - << std::strerror(workdir.GetLastResult()) << std::endl; - return -1; - } - cmCTestOptionalLog(this->CTest, HANDLER_VERBOSE_OUTPUT, - " Change directory: " << buildDirectory << std::endl, - this->Quiet); - - if (!this->SubmitUsingCP("Testing/" + this->CTest->GetCurrentTag(), files, - prefix, location)) { - cmCTestLog(this->CTest, ERROR_MESSAGE, - " Problems when submitting via CP" << std::endl); - ofs << " Problems when submitting via cp" << std::endl; - return -1; - } - cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, - " Submission successful" << std::endl, this->Quiet); - ofs << " Submission successful" << std::endl; - return 0; } cmCTestLog(this->CTest, ERROR_MESSAGE, diff --git a/Source/CTest/cmCTestSubmitHandler.h b/Source/CTest/cmCTestSubmitHandler.h index 66f2173..393e826 100644 --- a/Source/CTest/cmCTestSubmitHandler.h +++ b/Source/CTest/cmCTestSubmitHandler.h @@ -56,30 +56,10 @@ private: /** * Submit file using various ways */ - bool SubmitUsingFTP(const std::string& localprefix, - const std::vector<std::string>& files, - const std::string& remoteprefix, const std::string& url); bool SubmitUsingHTTP(const std::string& localprefix, const std::vector<std::string>& files, const std::string& remoteprefix, const std::string& url); - bool SubmitUsingSCP(const std::string& scp_command, - const std::string& localprefix, - const std::vector<std::string>& files, - const std::string& remoteprefix, const std::string& url); - - bool SubmitUsingCP(const std::string& localprefix, - const std::vector<std::string>& files, - const std::string& remoteprefix, const std::string& url); - - bool TriggerUsingHTTP(const std::vector<std::string>& files, - const std::string& remoteprefix, - const std::string& url); - - bool SubmitUsingXMLRPC(const std::string& localprefix, - const std::vector<std::string>& files, - const std::string& remoteprefix, - const std::string& url); typedef std::vector<char> cmCTestSubmitHandlerVectorOfChar; @@ -92,11 +72,8 @@ private: std::string HTTPProxy; int HTTPProxyType; std::string HTTPProxyAuth; - std::string FTPProxy; - int FTPProxyType; std::ostream* LogFile; bool SubmitPart[cmCTest::PartCount]; - bool CDash; bool HasWarnings; bool HasErrors; cmCTest::SetOfStrings Files; diff --git a/Source/cmCTest.cxx b/Source/cmCTest.cxx index d35d41e..7c19864 100644 --- a/Source/cmCTest.cxx +++ b/Source/cmCTest.cxx @@ -292,8 +292,6 @@ cmCTest::cmCTest() this->OutputLogFile = nullptr; this->OutputLogFileLastTag = -1; this->SuppressUpdatingCTestConfiguration = false; - this->DartVersion = 1; - this->DropSiteCDash = false; this->BuildID = ""; this->OutputTestOutputOnTestFailure = false; this->OutputColorCode = cmCTest::ColoredOutputSupportedByConsole(); @@ -613,8 +611,6 @@ bool cmCTest::InitializeFromCommand(cmCTestStartCommand* command) { std::string src_dir = this->GetCTestConfiguration("SourceDirectory"); std::string bld_dir = this->GetCTestConfiguration("BuildDirectory"); - this->DartVersion = 1; - this->DropSiteCDash = false; this->BuildID = ""; for (Part p = PartStart; p != PartCount; p = Part(p + 1)) { this->Parts[p].SubmitFiles.clear(); @@ -658,18 +654,6 @@ bool cmCTest::InitializeFromCommand(cmCTestStartCommand* command) command->ShouldBeQuiet()); this->SetCTestConfigurationFromCMakeVariable( mf, "BuildName", "CTEST_BUILD_NAME", command->ShouldBeQuiet()); - const char* dartVersion = mf->GetDefinition("CTEST_DART_SERVER_VERSION"); - if (dartVersion) { - this->DartVersion = atoi(dartVersion); - if (this->DartVersion < 0) { - cmCTestLog(this, ERROR_MESSAGE, - "Invalid Dart server version: " - << dartVersion << ". Please specify the version number." - << std::endl); - return false; - } - } - this->DropSiteCDash = mf->IsOn("CTEST_DROP_SITE_CDASH"); if (!this->Initialize(bld_dir.c_str(), command)) { return false; diff --git a/Source/cmCTest.h b/Source/cmCTest.h index 9139e42..7da0e1d 100644 --- a/Source/cmCTest.h +++ b/Source/cmCTest.h @@ -418,10 +418,6 @@ public: /** Get color code characters for a specific color */ std::string GetColorCode(Color color) const; - /** Get the version of dart server */ - int GetDartVersion() { return this->DartVersion; } - int GetDropSiteCDash() { return this->DropSiteCDash; } - /** The Build ID is assigned by CDash */ void SetBuildID(const std::string& id) { this->BuildID = id; } std::string GetBuildID() { return this->BuildID; } @@ -633,9 +629,6 @@ private: bool ShowLineNumbers; bool Quiet; - int DartVersion; - bool DropSiteCDash; - std::string BuildID; std::vector<std::string> InitialCommandLineArguments; diff --git a/Source/cmConvertMSBuildXMLToJSON.py b/Source/cmConvertMSBuildXMLToJSON.py index 92569e7..02074ba 100644 --- a/Source/cmConvertMSBuildXMLToJSON.py +++ b/Source/cmConvertMSBuildXMLToJSON.py @@ -96,7 +96,6 @@ def read_msbuild_json(path, values=[]): return values - def main(): """Script entrypoint.""" # Parse the arguments @@ -213,6 +212,14 @@ def __find_and_remove_value(list, compare): return found +def __normalize_switch(switch, separator): + new = switch + if switch.startswith("/") or switch.startswith("-"): + new = switch[1:] + if new and separator: + new = new + separator + return new + ########################################################################################### # private xml functions def __convert(root, tag, values, func): @@ -257,6 +264,8 @@ def __convert_bool(node): reverse_switch = __get_attribute(node, 'ReverseSwitch') if reverse_switch: + __with_argument(node, converted) + converted_reverse = copy.deepcopy(converted) converted_reverse['switch'] = reverse_switch @@ -303,7 +312,11 @@ def __convert_node(node, default_value='', default_flags=vsflags()): converted = {} converted['name'] = name - converted['switch'] = __get_attribute(node, 'Switch') + + switch = __get_attribute(node, 'Switch') + separator = __get_attribute(node, 'Separator') + converted['switch'] = __normalize_switch(switch, separator) + converted['comment'] = __get_attribute(node, 'DisplayName') converted['value'] = default_value @@ -435,7 +448,7 @@ def __write_json_file(path, values): with open(path, 'w') as f: json.dump(sorted_values, f, indent=2, separators=(',', ': ')) - + f.write("\n") ########################################################################################### # private list helpers diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx index f6ec606..541ae76 100644 --- a/Source/cmCoreTryCompile.cxx +++ b/Source/cmCoreTryCompile.cxx @@ -121,6 +121,7 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv, std::string cxxExtensions; std::string cudaExtensions; std::vector<std::string> targets; + std::vector<std::string> linkOptions; std::string libsToLink = " "; bool useOldLinkLibs = true; char targetNameBuf[64]; @@ -144,6 +145,7 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv, DoingNone, DoingCMakeFlags, DoingCompileDefinitions, + DoingLinkOptions, DoingLinkLibraries, DoingOutputVariable, DoingCopyFile, @@ -165,6 +167,8 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv, doing = DoingCMakeFlags; } else if (argv[i] == "COMPILE_DEFINITIONS") { doing = DoingCompileDefinitions; + } else if (argv[i] == "LINK_OPTIONS") { + doing = DoingLinkOptions; } else if (argv[i] == "LINK_LIBRARIES") { doing = DoingLinkLibraries; useOldLinkLibs = false; @@ -208,6 +212,8 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv, cmakeFlags.push_back(argv[i]); } else if (doing == DoingCompileDefinitions) { compileDefs.push_back(argv[i]); + } else if (doing == DoingLinkOptions) { + linkOptions.push_back(argv[i]); } else if (doing == DoingLinkLibraries) { libsToLink += "\"" + cmSystemTools::TrimWhitespace(argv[i]) + "\" "; if (cmTarget* tgt = this->Makefile->FindTargetToUse(argv[i])) { @@ -814,6 +820,23 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv, } } + if (!linkOptions.empty()) { + std::vector<std::string> options; + options.reserve(linkOptions.size()); + for (const auto& option : linkOptions) { + options.emplace_back(cmOutputConverter::EscapeForCMake(option)); + } + + if (targetType == cmStateEnums::STATIC_LIBRARY) { + fprintf(fout, + "set_property(TARGET %s PROPERTY STATIC_LIBRARY_OPTIONS %s)\n", + targetName.c_str(), cmJoin(options, " ").c_str()); + } else { + fprintf(fout, "target_link_options(%s PRIVATE %s)\n", + targetName.c_str(), cmJoin(options, " ").c_str()); + } + } + if (useOldLinkLibs) { fprintf(fout, "target_link_libraries(%s ${LINK_LIBRARIES})\n", targetName.c_str()); diff --git a/Source/cmCurl.cxx b/Source/cmCurl.cxx index 3360323..0482898 100644 --- a/Source/cmCurl.cxx +++ b/Source/cmCurl.cxx @@ -2,8 +2,6 @@ file Copyright.txt or https://cmake.org/licensing for details. */ #include "cmCurl.h" -#include "cmThirdParty.h" - #if !defined(CMAKE_USE_SYSTEM_CURL) && !defined(_WIN32) && \ !defined(__APPLE__) && !defined(CURL_CA_BUNDLE) && !defined(CURL_CA_PATH) # define CMAKE_FIND_CAFILE diff --git a/Source/cmDependsFortran.cxx b/Source/cmDependsFortran.cxx index a04cee7..310af2d 100644 --- a/Source/cmDependsFortran.cxx +++ b/Source/cmDependsFortran.cxx @@ -697,9 +697,9 @@ bool cmDependsFortran::ModulesDiffer(const char* modFile, std::string cmDependsFortran::MaybeConvertToRelativePath( std::string const& base, std::string const& path) { - if (!cmOutputConverter::ContainedInDirectory( - base, path, this->LocalGenerator->GetStateSnapshot().GetDirectory())) { + if (!this->LocalGenerator->GetStateSnapshot().GetDirectory().ContainsBoth( + base, path)) { return path; } - return cmOutputConverter::ForceToRelativePath(base, path); + return cmSystemTools::ForceToRelativePath(base, path); } diff --git a/Source/cmExtraEclipseCDT4Generator.cxx b/Source/cmExtraEclipseCDT4Generator.cxx index 8e25e9c..adb14ec 100644 --- a/Source/cmExtraEclipseCDT4Generator.cxx +++ b/Source/cmExtraEclipseCDT4Generator.cxx @@ -714,7 +714,7 @@ void cmExtraEclipseCDT4Generator::CreateCProjectFile() const xml.Attribute("path", p); xml.EndElement(); - // exlude source directory from output search path + // exclude source directory from output search path // - only if not named the same as an output directory if (!cmSystemTools::FileIsDirectory( std::string(this->HomeOutputDirectory + "/" + p))) { diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 73ff5a1..fb8e8d3 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -180,6 +180,9 @@ bool cmFileCommand::InitialPass(std::vector<std::string> const& args, if (subCommand == "SIZE") { return this->HandleSizeCommand(args); } + if (subCommand == "READ_SYMLINK") { + return this->HandleReadSymlinkCommand(args); + } std::string e = "does not recognize sub-command " + subCommand; this->SetError(e); @@ -3627,7 +3630,7 @@ bool cmFileCommand::HandleSizeCommand(std::vector<std::string> const& args) if (!cmSystemTools::FileExists(filename, true)) { std::ostringstream e; - e << "SIZE requested of path that is not readable " << filename; + e << "SIZE requested of path that is not readable:\n " << filename; this->SetError(e.str()); return false; } @@ -3638,3 +3641,30 @@ bool cmFileCommand::HandleSizeCommand(std::vector<std::string> const& args) return true; } + +bool cmFileCommand::HandleReadSymlinkCommand( + std::vector<std::string> const& args) +{ + if (args.size() != 3) { + std::ostringstream e; + e << args[0] << " requires a file name and output variable"; + this->SetError(e.str()); + return false; + } + + const std::string& filename = args[1]; + const std::string& outputVariable = args[2]; + + std::string result; + if (!cmSystemTools::ReadSymlink(filename, result)) { + std::ostringstream e; + e << "READ_SYMLINK requested of path that is not a symlink:\n " + << filename; + this->SetError(e.str()); + return false; + } + + this->Makefile->AddDefinition(outputVariable, result.c_str()); + + return true; +} diff --git a/Source/cmFileCommand.h b/Source/cmFileCommand.h index 01e007d..fe05c98 100644 --- a/Source/cmFileCommand.h +++ b/Source/cmFileCommand.h @@ -60,6 +60,7 @@ protected: bool HandleGenerateCommand(std::vector<std::string> const& args); bool HandleLockCommand(std::vector<std::string> const& args); bool HandleSizeCommand(std::vector<std::string> const& args); + bool HandleReadSymlinkCommand(std::vector<std::string> const& args); private: void AddEvaluationFile(const std::string& inputName, diff --git a/Source/cmGlobalVisualStudio10Generator.cxx b/Source/cmGlobalVisualStudio10Generator.cxx index 82fcaad..c9c6938 100644 --- a/Source/cmGlobalVisualStudio10Generator.cxx +++ b/Source/cmGlobalVisualStudio10Generator.cxx @@ -8,19 +8,11 @@ #include "cmLocalVisualStudio10Generator.h" #include "cmMakefile.h" #include "cmSourceFile.h" -#include "cmVS10CLFlagTable.h" -#include "cmVS10CSharpFlagTable.h" -#include "cmVS10CudaFlagTable.h" -#include "cmVS10CudaHostFlagTable.h" -#include "cmVS10LibFlagTable.h" -#include "cmVS10LinkFlagTable.h" -#include "cmVS10MASMFlagTable.h" -#include "cmVS10NASMFlagTable.h" -#include "cmVS10RCFlagTable.h" #include "cmVersion.h" #include "cmVisualStudioSlnData.h" #include "cmVisualStudioSlnParser.h" #include "cmXMLWriter.h" +#include "cm_jsoncpp_reader.h" #include "cmake.h" #include "cmsys/FStream.hxx" @@ -30,6 +22,7 @@ #include <algorithm> static const char vs10generatorName[] = "Visual Studio 10 2010"; +static std::map<std::string, std::vector<cmIDEFlagTable>> loadedFlagJsonFiles; // Map generator name without year to name with year. static const char* cmVS10GenName(const std::string& name, std::string& genName) @@ -120,15 +113,16 @@ cmGlobalVisualStudio10Generator::cmGlobalVisualStudio10Generator( this->DefaultPlatformToolset = "v100"; } } - this->DefaultClFlagTable = cmVS10CLFlagTable; - this->DefaultCSharpFlagTable = cmVS10CSharpFlagTable; - this->DefaultLibFlagTable = cmVS10LibFlagTable; - this->DefaultLinkFlagTable = cmVS10LinkFlagTable; - this->DefaultCudaFlagTable = cmVS10CudaFlagTable; - this->DefaultCudaHostFlagTable = cmVS10CudaHostFlagTable; - this->DefaultMasmFlagTable = cmVS10MASMFlagTable; - this->DefaultNasmFlagTable = cmVS10NASMFlagTable; - this->DefaultRcFlagTable = cmVS10RCFlagTable; + this->DefaultCLFlagTableName = "v10"; + this->DefaultCSharpFlagTableName = "v10"; + this->DefaultLibFlagTableName = "v10"; + this->DefaultLinkFlagTableName = "v10"; + this->DefaultCudaFlagTableName = "v10"; + this->DefaultCudaHostFlagTableName = "v10"; + this->DefaultMasmFlagTableName = "v10"; + this->DefaultNasmFlagTableName = "v10"; + this->DefaultRCFlagTableName = "v10"; + this->Version = VS10; this->PlatformToolsetNeedsDebugEnum = false; } @@ -1050,67 +1044,174 @@ std::string cmGlobalVisualStudio10Generator::GetInstalledNsightTegraVersion() return version; } +static std::string cmLoadFlagTableString(Json::Value entry, const char* field) +{ + if (entry.isMember(field)) { + auto string = entry[field]; + if (string.isConvertibleTo(Json::ValueType::stringValue)) { + return string.asString(); + } + } + return ""; +} + +static unsigned int cmLoadFlagTableSpecial(Json::Value entry, + const char* field) +{ + unsigned int value = 0; + if (entry.isMember(field)) { + auto specials = entry[field]; + if (specials.isArray()) { + for (auto const& special : specials) { + std::string s = special.asString(); + if (s == "UserValue") { + value |= cmIDEFlagTable::UserValue; + } else if (s == "UserIgnored") { + value |= cmIDEFlagTable::UserIgnored; + } else if (s == "UserRequired") { + value |= cmIDEFlagTable::UserRequired; + } else if (s == "Continue") { + value |= cmIDEFlagTable::Continue; + } else if (s == "SemicolonAppendable") { + value |= cmIDEFlagTable::SemicolonAppendable; + } else if (s == "UserFollowing") { + value |= cmIDEFlagTable::UserFollowing; + } else if (s == "CaseInsensitive") { + value |= cmIDEFlagTable::CaseInsensitive; + } else if (s == "SpaceAppendable") { + value |= cmIDEFlagTable::SpaceAppendable; + } + } + } + } + return value; +} + +static cmIDEFlagTable const* cmLoadFlagTableJson( + std::string const& flagJsonPath) +{ + cmIDEFlagTable* ret = nullptr; + auto savedFlagIterator = loadedFlagJsonFiles.find(flagJsonPath); + if (savedFlagIterator != loadedFlagJsonFiles.end()) { + ret = savedFlagIterator->second.data(); + } else { + Json::Reader reader; + cmsys::ifstream stream; + + stream.open(flagJsonPath.c_str(), std::ios_base::in); + if (stream) { + Json::Value flags; + if (reader.parse(stream, flags, false) && flags.isArray()) { + std::vector<cmIDEFlagTable> flagTable; + for (auto const& flag : flags) { + cmIDEFlagTable flagEntry; + flagEntry.IDEName = cmLoadFlagTableString(flag, "name"); + flagEntry.commandFlag = cmLoadFlagTableString(flag, "switch"); + flagEntry.comment = cmLoadFlagTableString(flag, "comment"); + flagEntry.value = cmLoadFlagTableString(flag, "value"); + flagEntry.special = cmLoadFlagTableSpecial(flag, "flags"); + flagTable.push_back(flagEntry); + } + cmIDEFlagTable endFlag{ "", "", "", "", 0 }; + flagTable.push_back(endFlag); + + loadedFlagJsonFiles[flagJsonPath] = flagTable; + ret = loadedFlagJsonFiles[flagJsonPath].data(); + } + } + } + return ret; +} + +cmIDEFlagTable const* cmGlobalVisualStudio10Generator::LoadFlagTable( + std::string const& flagTableName, std::string const& table) const +{ + cmIDEFlagTable const* ret = nullptr; + + std::string filename = cmSystemTools::GetCMakeRoot() + + "/Templates/MSBuild/FlagTables/" + flagTableName + "_" + table + ".json"; + ret = cmLoadFlagTableJson(filename); + + if (!ret) { + cmMakefile* mf = this->GetCurrentMakefile(); + + std::ostringstream e; + /* clang-format off */ + e << "JSON flag table \"" << filename << + "\" could not be loaded.\n"; + /* clang-format on */ + mf->IssueMessage(cmake::FATAL_ERROR, e.str().c_str()); + } + return ret; +} + cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetClFlagTable() const { - cmIDEFlagTable const* table = this->ToolsetOptions.GetClFlagTable( - this->GetPlatformName(), this->GetPlatformToolsetString()); + std::string flagTableName = this->ToolsetOptions.GetClFlagTableName( + this->GetPlatformName(), this->GetPlatformToolsetString(), + this->DefaultCLFlagTableName); - return (table != nullptr) ? table : this->DefaultClFlagTable; + return LoadFlagTable(flagTableName, "CL"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetCSharpFlagTable() const { - cmIDEFlagTable const* table = this->ToolsetOptions.GetCSharpFlagTable( - this->GetPlatformName(), this->GetPlatformToolsetString()); + std::string flagTableName = this->ToolsetOptions.GetCSharpFlagTableName( + this->GetPlatformName(), this->GetPlatformToolsetString(), + this->DefaultCSharpFlagTableName); - return (table != nullptr) ? table : this->DefaultCSharpFlagTable; + return LoadFlagTable(flagTableName, "CSharp"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetRcFlagTable() const { - cmIDEFlagTable const* table = this->ToolsetOptions.GetRcFlagTable( - this->GetPlatformName(), this->GetPlatformToolsetString()); + std::string flagTableName = this->ToolsetOptions.GetRcFlagTableName( + this->GetPlatformName(), this->GetPlatformToolsetString(), + this->DefaultRCFlagTableName); - return (table != nullptr) ? table : this->DefaultRcFlagTable; + return LoadFlagTable(flagTableName, "RC"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetLibFlagTable() const { - cmIDEFlagTable const* table = this->ToolsetOptions.GetLibFlagTable( - this->GetPlatformName(), this->GetPlatformToolsetString()); + std::string flagTableName = this->ToolsetOptions.GetLibFlagTableName( + this->GetPlatformName(), this->GetPlatformToolsetString(), + this->DefaultLibFlagTableName); - return (table != nullptr) ? table : this->DefaultLibFlagTable; + return LoadFlagTable(flagTableName, "LIB"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetLinkFlagTable() const { - cmIDEFlagTable const* table = this->ToolsetOptions.GetLinkFlagTable( - this->GetPlatformName(), this->GetPlatformToolsetString()); + std::string flagTableName = this->ToolsetOptions.GetLinkFlagTableName( + this->GetPlatformName(), this->GetPlatformToolsetString(), + this->DefaultLinkFlagTableName); - return (table != nullptr) ? table : this->DefaultLinkFlagTable; + return LoadFlagTable(flagTableName, "Link"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetCudaFlagTable() const { - return this->DefaultCudaFlagTable; + return LoadFlagTable(this->DefaultCudaFlagTableName, "Cuda"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetCudaHostFlagTable() const { - return this->DefaultCudaHostFlagTable; + return LoadFlagTable(this->DefaultCudaHostFlagTableName, "CudaHost"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetMasmFlagTable() const { - cmIDEFlagTable const* table = this->ToolsetOptions.GetMasmFlagTable( - this->GetPlatformName(), this->GetPlatformToolsetString()); + std::string flagTableName = this->ToolsetOptions.GetMasmFlagTableName( + this->GetPlatformName(), this->GetPlatformToolsetString(), + this->DefaultMasmFlagTableName); - return (table != nullptr) ? table : this->DefaultMasmFlagTable; + return LoadFlagTable(flagTableName, "MASM"); } cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetNasmFlagTable() const { - return this->DefaultNasmFlagTable; + return LoadFlagTable(this->DefaultNasmFlagTableName, "NASM"); } diff --git a/Source/cmGlobalVisualStudio10Generator.h b/Source/cmGlobalVisualStudio10Generator.h index 63e6903..6c4a9e6 100644 --- a/Source/cmGlobalVisualStudio10Generator.h +++ b/Source/cmGlobalVisualStudio10Generator.h @@ -144,6 +144,9 @@ protected: std::string const& GetMSBuildCommand(); + cmIDEFlagTable const* LoadFlagTable(std::string const& flagTableName, + std::string const& table) const; + std::string GeneratorToolset; std::string GeneratorToolsetVersion; std::string GeneratorToolsetHostArchitecture; @@ -153,15 +156,15 @@ protected: std::string SystemName; std::string SystemVersion; std::string NsightTegraVersion; - cmIDEFlagTable const* DefaultClFlagTable; - cmIDEFlagTable const* DefaultCSharpFlagTable; - cmIDEFlagTable const* DefaultLibFlagTable; - cmIDEFlagTable const* DefaultLinkFlagTable; - cmIDEFlagTable const* DefaultCudaFlagTable; - cmIDEFlagTable const* DefaultCudaHostFlagTable; - cmIDEFlagTable const* DefaultMasmFlagTable; - cmIDEFlagTable const* DefaultNasmFlagTable; - cmIDEFlagTable const* DefaultRcFlagTable; + std::string DefaultCLFlagTableName; + std::string DefaultCSharpFlagTableName; + std::string DefaultLibFlagTableName; + std::string DefaultLinkFlagTableName; + std::string DefaultCudaFlagTableName; + std::string DefaultCudaHostFlagTableName; + std::string DefaultMasmFlagTableName; + std::string DefaultNasmFlagTableName; + std::string DefaultRCFlagTableName; bool SystemIsWindowsCE; bool SystemIsWindowsPhone; bool SystemIsWindowsStore; diff --git a/Source/cmGlobalVisualStudio11Generator.cxx b/Source/cmGlobalVisualStudio11Generator.cxx index f1d5a8c..e40023d 100644 --- a/Source/cmGlobalVisualStudio11Generator.cxx +++ b/Source/cmGlobalVisualStudio11Generator.cxx @@ -6,12 +6,6 @@ #include "cmDocumentationEntry.h" #include "cmLocalVisualStudio10Generator.h" #include "cmMakefile.h" -#include "cmVS11CLFlagTable.h" -#include "cmVS11CSharpFlagTable.h" -#include "cmVS11LibFlagTable.h" -#include "cmVS11LinkFlagTable.h" -#include "cmVS11MASMFlagTable.h" -#include "cmVS11RCFlagTable.h" static const char vs11generatorName[] = "Visual Studio 11 2012"; @@ -107,12 +101,12 @@ cmGlobalVisualStudio11Generator::cmGlobalVisualStudio11Generator( "ProductDir", vc11Express, cmSystemTools::KeyWOW64_32); this->DefaultPlatformToolset = "v110"; - this->DefaultClFlagTable = cmVS11CLFlagTable; - this->DefaultCSharpFlagTable = cmVS11CSharpFlagTable; - this->DefaultLibFlagTable = cmVS11LibFlagTable; - this->DefaultLinkFlagTable = cmVS11LinkFlagTable; - this->DefaultMasmFlagTable = cmVS11MASMFlagTable; - this->DefaultRcFlagTable = cmVS11RCFlagTable; + this->DefaultCLFlagTableName = "v11"; + this->DefaultCSharpFlagTableName = "v11"; + this->DefaultLibFlagTableName = "v11"; + this->DefaultLinkFlagTableName = "v11"; + this->DefaultMasmFlagTableName = "v11"; + this->DefaultRCFlagTableName = "v11"; this->Version = VS11; } diff --git a/Source/cmGlobalVisualStudio12Generator.cxx b/Source/cmGlobalVisualStudio12Generator.cxx index e05ae70..3be7d24 100644 --- a/Source/cmGlobalVisualStudio12Generator.cxx +++ b/Source/cmGlobalVisualStudio12Generator.cxx @@ -6,12 +6,6 @@ #include "cmDocumentationEntry.h" #include "cmLocalVisualStudio10Generator.h" #include "cmMakefile.h" -#include "cmVS12CLFlagTable.h" -#include "cmVS12CSharpFlagTable.h" -#include "cmVS12LibFlagTable.h" -#include "cmVS12LinkFlagTable.h" -#include "cmVS12MASMFlagTable.h" -#include "cmVS12RCFlagTable.h" static const char vs12generatorName[] = "Visual Studio 12 2013"; @@ -90,12 +84,12 @@ cmGlobalVisualStudio12Generator::cmGlobalVisualStudio12Generator( "ProductDir", vc12Express, cmSystemTools::KeyWOW64_32); this->DefaultPlatformToolset = "v120"; - this->DefaultClFlagTable = cmVS12CLFlagTable; - this->DefaultCSharpFlagTable = cmVS12CSharpFlagTable; - this->DefaultLibFlagTable = cmVS12LibFlagTable; - this->DefaultLinkFlagTable = cmVS12LinkFlagTable; - this->DefaultMasmFlagTable = cmVS12MASMFlagTable; - this->DefaultRcFlagTable = cmVS12RCFlagTable; + this->DefaultCLFlagTableName = "v12"; + this->DefaultCSharpFlagTableName = "v12"; + this->DefaultLibFlagTableName = "v12"; + this->DefaultLinkFlagTableName = "v12"; + this->DefaultMasmFlagTableName = "v12"; + this->DefaultRCFlagTableName = "v12"; this->Version = VS12; } diff --git a/Source/cmGlobalVisualStudio14Generator.cxx b/Source/cmGlobalVisualStudio14Generator.cxx index 92ee2e0..ac969e8 100644 --- a/Source/cmGlobalVisualStudio14Generator.cxx +++ b/Source/cmGlobalVisualStudio14Generator.cxx @@ -6,12 +6,6 @@ #include "cmDocumentationEntry.h" #include "cmLocalVisualStudio10Generator.h" #include "cmMakefile.h" -#include "cmVS140CLFlagTable.h" -#include "cmVS140CSharpFlagTable.h" -#include "cmVS140LinkFlagTable.h" -#include "cmVS14LibFlagTable.h" -#include "cmVS14MASMFlagTable.h" -#include "cmVS14RCFlagTable.h" static const char vs14generatorName[] = "Visual Studio 14 2015"; @@ -90,12 +84,12 @@ cmGlobalVisualStudio14Generator::cmGlobalVisualStudio14Generator( "ProductDir", vc14Express, cmSystemTools::KeyWOW64_32); this->DefaultPlatformToolset = "v140"; - this->DefaultClFlagTable = cmVS140CLFlagTable; - this->DefaultCSharpFlagTable = cmVS140CSharpFlagTable; - this->DefaultLibFlagTable = cmVS14LibFlagTable; - this->DefaultLinkFlagTable = cmVS140LinkFlagTable; - this->DefaultMasmFlagTable = cmVS14MASMFlagTable; - this->DefaultRcFlagTable = cmVS14RCFlagTable; + this->DefaultCLFlagTableName = "v140"; + this->DefaultCSharpFlagTableName = "v140"; + this->DefaultLibFlagTableName = "v14"; + this->DefaultLinkFlagTableName = "v140"; + this->DefaultMasmFlagTableName = "v14"; + this->DefaultRCFlagTableName = "v14"; this->Version = VS14; } diff --git a/Source/cmGlobalVisualStudio15Generator.cxx b/Source/cmGlobalVisualStudio15Generator.cxx index 23fd2d5..2853283 100644 --- a/Source/cmGlobalVisualStudio15Generator.cxx +++ b/Source/cmGlobalVisualStudio15Generator.cxx @@ -6,9 +6,6 @@ #include "cmDocumentationEntry.h" #include "cmLocalVisualStudio10Generator.h" #include "cmMakefile.h" -#include "cmVS141CLFlagTable.h" -#include "cmVS141CSharpFlagTable.h" -#include "cmVS141LinkFlagTable.h" #include "cmVSSetupHelper.h" static const char vs15generatorName[] = "Visual Studio 15 2017"; @@ -84,9 +81,9 @@ cmGlobalVisualStudio15Generator::cmGlobalVisualStudio15Generator( { this->ExpressEdition = false; this->DefaultPlatformToolset = "v141"; - this->DefaultClFlagTable = cmVS141CLFlagTable; - this->DefaultCSharpFlagTable = cmVS141CSharpFlagTable; - this->DefaultLinkFlagTable = cmVS141LinkFlagTable; + this->DefaultCLFlagTableName = "v141"; + this->DefaultCSharpFlagTableName = "v141"; + this->DefaultLinkFlagTableName = "v141"; this->Version = VS15; } diff --git a/Source/cmGlobalVisualStudio7Generator.cxx b/Source/cmGlobalVisualStudio7Generator.cxx index 1be80ac..3648086 100644 --- a/Source/cmGlobalVisualStudio7Generator.cxx +++ b/Source/cmGlobalVisualStudio7Generator.cxx @@ -37,7 +37,7 @@ static cmVS7FlagTable cmVS7ExtraFlagTable[] = { // and have EHa passed on the command line by leaving out the table // entry. - { 0, 0, 0, 0, 0 } + { "", "", "", "", 0 } }; cmGlobalVisualStudio7Generator::cmGlobalVisualStudio7Generator( diff --git a/Source/cmGlobalVisualStudio8Generator.cxx b/Source/cmGlobalVisualStudio8Generator.cxx index b155d9c..097d7e2 100644 --- a/Source/cmGlobalVisualStudio8Generator.cxx +++ b/Source/cmGlobalVisualStudio8Generator.cxx @@ -362,7 +362,7 @@ static cmVS7FlagTable cmVS8ExtraFlagTable[] = { { "TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "wchar_t is not a built-in type", "false", 0 }, - { 0, 0, 0, 0, 0 } + { "", "", "", "", 0 } }; cmIDEFlagTable const* cmGlobalVisualStudio8Generator::GetExtraFlagTableVS8() { diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index ac4f0be..d6ab769 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -3563,7 +3563,7 @@ std::string cmGlobalXCodeGenerator::RelativeToSource(const char* p) { // We force conversion because Xcode breakpoints do not work unless // they are in a file named relative to the source tree. - return cmOutputConverter::ForceToRelativePath( + return cmSystemTools::ForceToRelativePath( cmSystemTools::JoinPath(this->ProjectSourceDirectoryComponents), p); } diff --git a/Source/cmIDEFlagTable.h b/Source/cmIDEFlagTable.h index 152e293..28d5d53 100644 --- a/Source/cmIDEFlagTable.h +++ b/Source/cmIDEFlagTable.h @@ -3,13 +3,15 @@ #ifndef cmIDEFlagTable_h #define cmIDEFlagTable_h +#include <string> + // This is a table mapping XML tag IDE names to command line options struct cmIDEFlagTable { - const char* IDEName; // name used in the IDE xml file - const char* commandFlag; // command line flag - const char* comment; // comment - const char* value; // string value + std::string IDEName; // name used in the IDE xml file + std::string commandFlag; // command line flag + std::string comment; // comment + std::string value; // string value unsigned int special; // flags for special handling requests enum { diff --git a/Source/cmIDEOptions.cxx b/Source/cmIDEOptions.cxx index f996788..ee0c782 100644 --- a/Source/cmIDEOptions.cxx +++ b/Source/cmIDEOptions.cxx @@ -97,24 +97,24 @@ bool cmIDEOptions::CheckFlagTable(cmIDEFlagTable const* table, { const char* pf = flag.c_str() + 1; // Look for an entry in the flag table matching this flag. - for (cmIDEFlagTable const* entry = table; entry->IDEName; ++entry) { + for (cmIDEFlagTable const* entry = table; !entry->IDEName.empty(); ++entry) { bool entry_found = false; if (entry->special & cmIDEFlagTable::UserValue) { // This flag table entry accepts a user-specified value. If // the entry specifies UserRequired we must match only if a // non-empty value is given. - int n = static_cast<int>(strlen(entry->commandFlag)); - if ((strncmp(pf, entry->commandFlag, n) == 0 || + int n = static_cast<int>(entry->commandFlag.length()); + if ((strncmp(pf, entry->commandFlag.c_str(), n) == 0 || (entry->special & cmIDEFlagTable::CaseInsensitive && - cmsysString_strncasecmp(pf, entry->commandFlag, n))) && + cmsysString_strncasecmp(pf, entry->commandFlag.c_str(), n))) && (!(entry->special & cmIDEFlagTable::UserRequired) || static_cast<int>(strlen(pf)) > n)) { this->FlagMapUpdate(entry, std::string(pf + n)); entry_found = true; } - } else if (strcmp(pf, entry->commandFlag) == 0 || + } else if (strcmp(pf, entry->commandFlag.c_str()) == 0 || (entry->special & cmIDEFlagTable::CaseInsensitive && - cmsysString_strcasecmp(pf, entry->commandFlag) == 0)) { + cmsysString_strcasecmp(pf, entry->commandFlag.c_str()) == 0)) { if (entry->special & cmIDEFlagTable::UserFollowing) { // This flag expects a value in the following argument. this->DoingFollowing = entry; diff --git a/Source/cmLinkLineComputer.cxx b/Source/cmLinkLineComputer.cxx index 7511fd2..6643990 100644 --- a/Source/cmLinkLineComputer.cxx +++ b/Source/cmLinkLineComputer.cxx @@ -11,6 +11,7 @@ #include "cmOutputConverter.h" #include "cmStateDirectory.h" #include "cmStateTypes.h" +#include "cmSystemTools.h" cmLinkLineComputer::cmLinkLineComputer(cmOutputConverter* outputConverter, cmStateDirectory const& stateDir) @@ -46,9 +47,8 @@ std::string cmLinkLineComputer::ConvertToLinkReference( { std::string relLib = lib; - if (cmOutputConverter::ContainedInDirectory( - this->StateDir.GetCurrentBinary(), lib, this->StateDir)) { - relLib = cmOutputConverter::ForceToRelativePath( + if (this->StateDir.ContainsBoth(this->StateDir.GetCurrentBinary(), lib)) { + relLib = cmSystemTools::ForceToRelativePath( this->StateDir.GetCurrentBinary(), lib); } return relLib; diff --git a/Source/cmLocalNinjaGenerator.cxx b/Source/cmLocalNinjaGenerator.cxx index 8a07516..a8647b1 100644 --- a/Source/cmLocalNinjaGenerator.cxx +++ b/Source/cmLocalNinjaGenerator.cxx @@ -318,7 +318,10 @@ std::string cmLocalNinjaGenerator::WriteCommandScript( cmsys::ofstream script(scriptPath.c_str()); -#ifndef _WIN32 +#ifdef _WIN32 + script << "@echo off\n"; + int line = 1; +#else script << "set -e\n\n"; #endif @@ -329,12 +332,22 @@ std::string cmLocalNinjaGenerator::WriteCommandScript( // for the raw shell script. cmSystemTools::ReplaceString(cmd, "$$", "$"); #ifdef _WIN32 - script << cmd << " || exit /b" << '\n'; + script << cmd << " || (set FAIL_LINE=" << ++line << "& goto :ABORT)" + << '\n'; #else script << cmd << '\n'; #endif } +#ifdef _WIN32 + script << "goto :EOF\n\n" + ":ABORT\n" + "set ERROR_CODE=%ERRORLEVEL%\n" + "echo Batch file failed at line %FAIL_LINE% " + "with errorcode %ERRORLEVEL%\n" + "exit /b %ERROR_CODE%"; +#endif + return scriptPath; } diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index 11d3608..707a1b5 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -2093,9 +2093,8 @@ void cmLocalUnixMakefileGenerator3::CreateCDCommand( std::string cmLocalUnixMakefileGenerator3::MaybeConvertToRelativePath( std::string const& base, std::string const& path) { - if (!cmOutputConverter::ContainedInDirectory( - base, path, this->GetStateSnapshot().GetDirectory())) { + if (!this->GetStateSnapshot().GetDirectory().ContainsBoth(base, path)) { return path; } - return cmOutputConverter::ForceToRelativePath(base, path); + return cmSystemTools::ForceToRelativePath(base, path); } diff --git a/Source/cmLocalVisualStudio7Generator.cxx b/Source/cmLocalVisualStudio7Generator.cxx index 7630691..fee9dd6 100644 --- a/Source/cmLocalVisualStudio7Generator.cxx +++ b/Source/cmLocalVisualStudio7Generator.cxx @@ -362,7 +362,7 @@ cmVS7FlagTable cmLocalVisualStudio7GeneratorFortranFlagTable[] = { { "EnableRecursion", "recursive", "", "true", 0 }, { "ReentrantCode", "reentrancy", "", "true", 0 }, // done up to Language - { 0, 0, 0, 0, 0 } + { "", "", "", "", 0 } }; // fill the table here currently the comment field is not used for // anything other than documentation NOTE: Make sure the longer @@ -472,7 +472,7 @@ cmVS7FlagTable cmLocalVisualStudio7GeneratorFlagTable[] = { { "WarnAsError", "WX", "Treat warnings as errors", "true", 0 }, { "BrowseInformation", "FR", "Generate browse information", "1", 0 }, { "StringPooling", "GF", "Enable StringPooling", "true", 0 }, - { 0, 0, 0, 0, 0 } + { "", "", "", "", 0 } }; cmVS7FlagTable cmLocalVisualStudio7GeneratorLinkFlagTable[] = { @@ -537,7 +537,7 @@ cmVS7FlagTable cmLocalVisualStudio7GeneratorLinkFlagTable[] = { { "ModuleDefinitionFile", "DEF:", "add an export def file", "", cmVS7FlagTable::UserValue }, { "GenerateMapFile", "MAP", "enable generation of map file", "true", 0 }, - { 0, 0, 0, 0, 0 } + { "", "", "", "", 0 } }; cmVS7FlagTable cmLocalVisualStudio7GeneratorFortranLinkFlagTable[] = { @@ -545,7 +545,7 @@ cmVS7FlagTable cmLocalVisualStudio7GeneratorFortranLinkFlagTable[] = { "linkIncrementalNo", 0 }, { "LinkIncremental", "INCREMENTAL:YES", "link incremental", "linkIncrementalYes", 0 }, - { 0, 0, 0, 0, 0 } + { "", "", "", "", 0 } }; // Helper class to write build event <Tool .../> elements. diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 5ad8ef6..5cd6ba5 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -2727,6 +2727,7 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( cmState* state = this->GetCMakeInstance()->GetState(); + static const std::string lineVar = "CMAKE_CURRENT_LIST_LINE"; do { char inc = *in; switch (inc) { @@ -2739,7 +2740,6 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( const char* value = nullptr; std::string varresult; std::string svalue; - static const std::string lineVar = "CMAKE_CURRENT_LIST_LINE"; switch (var.domain) { case NORMAL: if (filename && lookup == lineVar) { @@ -2889,7 +2889,14 @@ cmake::MessageType cmMakefile::ExpandVariablesInStringNew( "abcdefghijklmnopqrstuvwxyz" "0123456789/_.+-")) { std::string variable(in + 1, nextAt - in - 1); - std::string varresult = this->GetSafeDefinition(variable); + + std::string varresult; + if (filename && variable == lineVar) { + varresult = std::to_string(line); + } else { + varresult = this->GetSafeDefinition(variable); + } + if (escapeQuotes) { varresult = cmSystemTools::EscapeQuotes(varresult); } @@ -3648,8 +3655,15 @@ void cmMakefile::ConfigureString(const std::string& input, std::string& output, } // Perform variable replacements. - this->ExpandVariablesInString(output, escapeQuotes, true, atOnly, nullptr, - -1, true, true); + const char* filename = nullptr; + long lineNumber = -1; + if (!this->Backtrace.Empty()) { + const auto& currentTrace = this->Backtrace.Top(); + filename = currentTrace.FilePath.c_str(); + lineNumber = currentTrace.Line; + } + this->ExpandVariablesInString(output, escapeQuotes, true, atOnly, filename, + lineNumber, true, true); } int cmMakefile::ConfigureFile(const char* infile, const char* outfile, diff --git a/Source/cmMakefileExecutableTargetGenerator.cxx b/Source/cmMakefileExecutableTargetGenerator.cxx index 08bb2ce..846b12c 100644 --- a/Source/cmMakefileExecutableTargetGenerator.cxx +++ b/Source/cmMakefileExecutableTargetGenerator.cxx @@ -84,6 +84,10 @@ void cmMakefileExecutableTargetGenerator::WriteDeviceExecutableRule( bool relink) { #ifdef CMAKE_BUILD_WITH_CMAKE + if (!this->GlobalGenerator->GetLanguageEnabled("CUDA")) { + return; + } + const std::string cuda_lang("CUDA"); cmGeneratorTarget::LinkClosure const* closure = this->GeneratorTarget->GetLinkClosure(this->ConfigName); diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx index a79425e..cb41c28 100644 --- a/Source/cmMakefileTargetGenerator.cxx +++ b/Source/cmMakefileTargetGenerator.cxx @@ -1308,11 +1308,10 @@ public: private: std::string MaybeConvertToRelativePath(std::string const& obj) { - if (!cmOutputConverter::ContainedInDirectory( - this->StateDir.GetCurrentBinary(), obj, this->StateDir)) { + if (!this->StateDir.ContainsBoth(this->StateDir.GetCurrentBinary(), obj)) { return obj; } - return cmOutputConverter::ForceToRelativePath( + return cmSystemTools::ForceToRelativePath( this->StateDir.GetCurrentBinary(), obj); } diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx index 1386706..c953d20 100644 --- a/Source/cmNinjaNormalTargetGenerator.cxx +++ b/Source/cmNinjaNormalTargetGenerator.cxx @@ -557,6 +557,10 @@ std::vector<std::string> cmNinjaNormalTargetGenerator::ComputeLinkCmd() void cmNinjaNormalTargetGenerator::WriteDeviceLinkStatement() { + if (!this->GetGlobalGenerator()->GetLanguageEnabled("CUDA")) { + return; + } + cmGeneratorTarget& genTarget = *this->GetGeneratorTarget(); // determine if we need to do any device linking for this target diff --git a/Source/cmOutputConverter.cxx b/Source/cmOutputConverter.cxx index 80e6e97..011c7d8 100644 --- a/Source/cmOutputConverter.cxx +++ b/Source/cmOutputConverter.cxx @@ -9,7 +9,6 @@ #include <string.h> #include <vector> -#include "cmAlgorithms.h" #include "cmState.h" #include "cmStateDirectory.h" #include "cmSystemTools.h" @@ -73,119 +72,15 @@ std::string cmOutputConverter::ConvertDirectorySeparatorsForShell( return result; } -static bool cmOutputConverterNotAbove(const char* a, const char* b) -{ - return (cmSystemTools::ComparePath(a, b) || - cmSystemTools::IsSubDirectory(a, b)); -} - -bool cmOutputConverter::ContainedInDirectory(std::string const& local_path, - std::string const& remote_path, - cmStateDirectory const& directory) -{ - const std::string& relativePathTopBinary = - directory.GetRelativePathTopBinary(); - const std::string& relativePathTopSource = - directory.GetRelativePathTopSource(); - - const bool bothInBinary = - cmOutputConverterNotAbove(local_path.c_str(), - relativePathTopBinary.c_str()) && - cmOutputConverterNotAbove(remote_path.c_str(), - relativePathTopBinary.c_str()); - - const bool bothInSource = - cmOutputConverterNotAbove(local_path.c_str(), - relativePathTopSource.c_str()) && - cmOutputConverterNotAbove(remote_path.c_str(), - relativePathTopSource.c_str()); - - return bothInSource || bothInBinary; -} - std::string cmOutputConverter::ConvertToRelativePath( std::string const& local_path, std::string const& remote_path) const { - if (!ContainedInDirectory(local_path, remote_path, - this->StateSnapshot.GetDirectory())) { + if (!this->StateSnapshot.GetDirectory().ContainsBoth(local_path, + remote_path)) { return remote_path; } - return cmOutputConverter::ForceToRelativePath(local_path, remote_path); -} - -std::string cmOutputConverter::ForceToRelativePath( - std::string const& local_path, std::string const& remote_path) -{ - // The paths should never be quoted. - assert(local_path.front() != '\"'); - assert(remote_path.front() != '\"'); - - // The local path should never have a trailing slash. - assert(local_path.empty() || local_path.back() != '/'); - - // If the path is already relative then just return the path. - if (!cmSystemTools::FileIsFullPath(remote_path)) { - return remote_path; - } - - // Identify the longest shared path component between the remote - // path and the local path. - std::vector<std::string> local; - cmSystemTools::SplitPath(local_path, local); - std::vector<std::string> remote; - cmSystemTools::SplitPath(remote_path, remote); - unsigned int common = 0; - while (common < remote.size() && common < local.size() && - cmSystemTools::ComparePath(remote[common], local[common])) { - ++common; - } - - // If no part of the path is in common then return the full path. - if (common == 0) { - return remote_path; - } - - // If the entire path is in common then just return a ".". - if (common == remote.size() && common == local.size()) { - return "."; - } - - // If the entire path is in common except for a trailing slash then - // just return a "./". - if (common + 1 == remote.size() && remote[common].empty() && - common == local.size()) { - return "./"; - } - - // Construct the relative path. - std::string relative; - - // First add enough ../ to get up to the level of the shared portion - // of the path. Leave off the trailing slash. Note that the last - // component of local will never be empty because local should never - // have a trailing slash. - for (unsigned int i = common; i < local.size(); ++i) { - relative += ".."; - if (i < local.size() - 1) { - relative += "/"; - } - } - - // Now add the portion of the destination path that is not included - // in the shared portion of the path. Add a slash the first time - // only if there was already something in the path. If there was a - // trailing slash in the input then the last iteration of the loop - // will add a slash followed by an empty string which will preserve - // the trailing slash in the output. - - if (!relative.empty() && !remote.empty()) { - relative += "/"; - } - relative += cmJoin(cmMakeRange(remote).advance(common), "/"); - - // Finally return the path. - return relative; + return cmSystemTools::ForceToRelativePath(local_path, remote_path); } static bool cmOutputConverterIsShellOperator(const std::string& str) diff --git a/Source/cmOutputConverter.h b/Source/cmOutputConverter.h index ed7143c..5a4f879 100644 --- a/Source/cmOutputConverter.h +++ b/Source/cmOutputConverter.h @@ -10,7 +10,6 @@ #include "cmStateSnapshot.h" class cmState; -class cmStateDirectory; class cmOutputConverter { @@ -92,10 +91,6 @@ public: }; static FortranFormat GetFortranFormat(const char* value); - static bool ContainedInDirectory(std::string const& local_path, - std::string const& remote_path, - cmStateDirectory const& directory); - /** * Convert the given remote path to a relative path with respect to * the given local path. Both paths must use forward slashes and not @@ -106,14 +101,6 @@ public: std::string ConvertToRelativePath(std::string const& local_path, std::string const& remote_path) const; - /** - * Convert the given remote path to a relative path with respect to - * the given local path. Both paths must use forward slashes and not - * already be escaped or quoted. - */ - static std::string ForceToRelativePath(std::string const& local_path, - std::string const& remote_path); - private: cmState* GetState() const; diff --git a/Source/cmPolicies.h b/Source/cmPolicies.h index 9985d63..7674877 100644 --- a/Source/cmPolicies.h +++ b/Source/cmPolicies.h @@ -251,7 +251,10 @@ class cmMakefile; "The FindQt module does not exist for find_package().", 3, 14, 0, \ cmPolicies::WARN) \ SELECT(POLICY, CMP0085, "$<IN_LIST:...> handles empty list items.", 3, 14, \ - 0, cmPolicies::WARN) + 0, cmPolicies::WARN) \ + SELECT(POLICY, CMP0086, \ + "UseSWIG honors SWIG_MODULE_NAME via -module flag.", 3, 14, 0, \ + cmPolicies::WARN) #define CM_SELECT_ID(F, A1, A2, A3, A4, A5, A6) F(A1) #define CM_FOR_EACH_POLICY_ID(POLICY) \ diff --git a/Source/cmQtAutoGenInitializer.cxx b/Source/cmQtAutoGenInitializer.cxx index 49236ed..6a2a951 100644 --- a/Source/cmQtAutoGenInitializer.cxx +++ b/Source/cmQtAutoGenInitializer.cxx @@ -35,9 +35,22 @@ #include <set> #include <sstream> #include <string> +#include <type_traits> #include <utility> #include <vector> +std::string GetQtExecutableTargetName( + const cmQtAutoGen::IntegerVersion& qtVersion, std::string const& executable) +{ + if (qtVersion.Major == 5) { + return ("Qt5::" + executable); + } + if (qtVersion.Major == 4) { + return ("Qt4::" + executable); + } + return (""); +} + static std::size_t GetParallelCPUCount() { static std::size_t count = 0; @@ -489,10 +502,13 @@ bool cmQtAutoGenInitializer::InitMoc() // Moc includes { - bool const appendImplicit = (this->QtVersion.Major == 5); + // We need to disable this until we have all implicit includes available. + // See issue #18669. + // bool const appendImplicit = (this->QtVersion.Major == 5); + auto GetIncludeDirs = - [this, localGen, - appendImplicit](std::string const& cfg) -> std::vector<std::string> { + [this, localGen](std::string const& cfg) -> std::vector<std::string> { + bool const appendImplicit = false; // Get the include dirs for this target, without stripping the implicit // include dirs off, see // https://gitlab.kitware.com/cmake/cmake/issues/13667 @@ -521,6 +537,12 @@ bool cmQtAutoGenInitializer::InitMoc() [this, localGen](std::string const& cfg) -> std::set<std::string> { std::set<std::string> defines; localGen->GetTargetDefines(this->Target, cfg, "CXX", defines); +#ifdef _WIN32 + if (this->Moc.PredefsCmd.empty()) { + // Add WIN32 definition if we don't have a moc_predefs.h + defines.insert("WIN32"); + } +#endif return defines; }; @@ -538,11 +560,7 @@ bool cmQtAutoGenInitializer::InitMoc() } // Moc executable - if (!GetMocExecutable()) { - return false; - } - - return true; + return GetMocExecutable(); } bool cmQtAutoGenInitializer::InitUic() @@ -619,19 +637,12 @@ bool cmQtAutoGenInitializer::InitUic() } // Uic executable - if (!GetUicExecutable()) { - return false; - } - - return true; + return GetUicExecutable(); } bool cmQtAutoGenInitializer::InitRcc() { - if (!GetRccExecutable()) { - return false; - } - return true; + return GetRccExecutable(); } bool cmQtAutoGenInitializer::InitScanFiles() @@ -1342,251 +1353,170 @@ void cmQtAutoGenInitializer::AddGeneratedSource(std::string const& filename, this->Target->AddSource(filename); } -cmQtAutoGenInitializer::IntegerVersion cmQtAutoGenInitializer::GetQtVersion( +static unsigned int CharPtrToInt(const char* const input) +{ + unsigned long tmp = 0; + if (input != nullptr && cmSystemTools::StringToULong(input, &tmp)) { + return static_cast<unsigned int>(tmp); + } + return 0; +} + +static unsigned int StringToInt(const std::string& input) +{ + return input.empty() ? 0 : CharPtrToInt(input.c_str()); +} + +static std::vector<cmQtAutoGenInitializer::IntegerVersion> GetKnownQtVersions( cmGeneratorTarget const* target) { - cmQtAutoGenInitializer::IntegerVersion res; cmMakefile* makefile = target->Target->GetMakefile(); - // -- Major version - std::string qtMajor = makefile->GetSafeDefinition("QT_VERSION_MAJOR"); - if (qtMajor.empty()) { - qtMajor = makefile->GetSafeDefinition("Qt5Core_VERSION_MAJOR"); - } - { - const char* targetQtVersion = - target->GetLinkInterfaceDependentStringProperty("QT_MAJOR_VERSION", ""); - if (targetQtVersion != nullptr) { - qtMajor = targetQtVersion; + std::vector<cmQtAutoGenInitializer::IntegerVersion> result; + for (const std::string& prefix : + std::vector<std::string>({ "Qt5Core", "QT" })) { + auto tmp = cmQtAutoGenInitializer::IntegerVersion( + StringToInt(makefile->GetSafeDefinition(prefix + "_VERSION_MAJOR")), + StringToInt(makefile->GetSafeDefinition(prefix + "_VERSION_MINOR"))); + if (tmp.Major != 0) { + result.push_back(tmp); } } - // -- Minor version - std::string qtMinor; - if (!qtMajor.empty()) { - if (qtMajor == "5") { - qtMinor = makefile->GetSafeDefinition("Qt5Core_VERSION_MINOR"); - } - if (qtMinor.empty()) { - qtMinor = makefile->GetSafeDefinition("QT_VERSION_MINOR"); - } - { - const char* targetQtVersion = - target->GetLinkInterfaceDependentStringProperty("QT_MINOR_VERSION", - ""); - if (targetQtVersion != nullptr) { - qtMinor = targetQtVersion; - } - } + return result; +} + +cmQtAutoGenInitializer::IntegerVersion cmQtAutoGenInitializer::GetQtVersion( + cmGeneratorTarget const* target) +{ + auto knownQtVersions = GetKnownQtVersions(target); + if (knownQtVersions.empty()) { + return cmQtAutoGenInitializer::IntegerVersion(); // No Qt + } + + // Pick a version from the known versions: + auto targetVersion = CharPtrToInt( + target->GetLinkInterfaceDependentStringProperty("QT_MAJOR_VERSION", "")); + + if (targetVersion == 0) { + // No specific version was requested by the target: + // Use highest known Qt version. + return knownQtVersions.at(0); } - // -- Convert to integer - if (!qtMajor.empty() && !qtMinor.empty()) { - unsigned long majorUL(0); - unsigned long minorUL(0); - if (cmSystemTools::StringToULong(qtMajor.c_str(), &majorUL) && - cmSystemTools::StringToULong(qtMinor.c_str(), &minorUL)) { - res.Major = static_cast<unsigned int>(majorUL); - res.Minor = static_cast<unsigned int>(minorUL); + for (auto it : knownQtVersions) { + if (it.Major == targetVersion) { + return it; } } - return res; + // Requested version was not found + return cmQtAutoGenInitializer::IntegerVersion(); } -bool cmQtAutoGenInitializer::GetMocExecutable() +std::pair<bool, std::string> GetQtExecutable( + const cmQtAutoGen::IntegerVersion& qtVersion, cmGeneratorTarget* target, + const std::string& executable, bool ignoreMissingTarget, std::string* output) { std::string err; + std::string result; - // Find moc executable + // Find executable { - std::string targetName; - if (this->QtVersion.Major == 5) { - targetName = "Qt5::moc"; - } else if (this->QtVersion.Major == 4) { - targetName = "Qt4::moc"; + const std::string targetName = + GetQtExecutableTargetName(qtVersion, executable); + if (targetName.empty()) { + err = "The AUTOMOC, AUTOUIC and AUTORCC feature "; + err += "supports only Qt 4 and Qt 5"; } else { - err = "The AUTOMOC feature supports only Qt 4 and Qt 5"; - } - if (!targetName.empty()) { - cmLocalGenerator* localGen = this->Target->GetLocalGenerator(); + cmLocalGenerator* localGen = target->GetLocalGenerator(); cmGeneratorTarget* tgt = localGen->FindGeneratorTargetToUse(targetName); if (tgt != nullptr) { - this->Moc.Executable = tgt->ImportedGetLocation(""); + result = tgt->ImportedGetLocation(""); } else { + if (ignoreMissingTarget) { + return std::make_pair(true, ""); + } + err = "Could not find target " + targetName; } } } - // Test moc command + // Test executable if (err.empty()) { - if (cmSystemTools::FileExists(this->Moc.Executable, true)) { + if (cmSystemTools::FileExists(result, true)) { std::vector<std::string> command; - command.push_back(this->Moc.Executable); + command.push_back(result); command.push_back("-h"); std::string stdOut; std::string stdErr; int retVal = 0; - bool result = cmSystemTools::RunSingleCommand( + const bool runResult = cmSystemTools::RunSingleCommand( command, &stdOut, &stdErr, &retVal, nullptr, cmSystemTools::OUTPUT_NONE, cmDuration::zero(), cmProcessOutput::Auto); - if (!result) { - err = "The moc test command failed: "; - err += QuotedCommand(command); + if (!runResult) { + err = "Test of \"" + executable + "\" binary "; + err += cmQtAutoGen::Quoted(result) + " failed: "; + err += cmQtAutoGen::QuotedCommand(command); + } else { + if (output != nullptr) { + *output = stdOut; + } } } else { - err = "The moc executable "; - err += Quoted(this->Moc.Executable); + err = "The \"" + executable + "\" binary "; + err += cmQtAutoGen::Quoted(result); err += " does not exist"; } } // Print error if (!err.empty()) { - std::string msg = "AutoMoc ("; - msg += this->Target->GetName(); + std::string msg = "AutoGen ("; + msg += target->GetName(); msg += "): "; msg += err; cmSystemTools::Error(msg.c_str()); - return false; + return std::make_pair(false, ""); } - return true; + return std::make_pair(true, result); } -bool cmQtAutoGenInitializer::GetUicExecutable() +bool cmQtAutoGenInitializer::GetMocExecutable() { - std::string err; - - // Find uic executable - { - std::string targetName; - if (this->QtVersion.Major == 5) { - targetName = "Qt5::uic"; - } else if (this->QtVersion.Major == 4) { - targetName = "Qt4::uic"; - } else { - err = "The AUTOUIC feature supports only Qt 4 and Qt 5"; - } - if (!targetName.empty()) { - cmLocalGenerator* localGen = this->Target->GetLocalGenerator(); - cmGeneratorTarget* tgt = localGen->FindGeneratorTargetToUse(targetName); - if (tgt != nullptr) { - this->Uic.Executable = tgt->ImportedGetLocation(""); - } else { - if (this->QtVersion.Major == 5) { - // Project does not use Qt5Widgets, but has AUTOUIC ON anyway - } else { - err = "Could not find target " + targetName; - } - } - } - } - - // Test uic command - if (err.empty() && !this->Uic.Executable.empty()) { - if (cmSystemTools::FileExists(this->Uic.Executable, true)) { - std::vector<std::string> command; - command.push_back(this->Uic.Executable); - command.push_back("-h"); - std::string stdOut; - std::string stdErr; - int retVal = 0; - bool result = cmSystemTools::RunSingleCommand( - command, &stdOut, &stdErr, &retVal, nullptr, - cmSystemTools::OUTPUT_NONE, cmDuration::zero(), cmProcessOutput::Auto); - if (!result) { - err = "The uic test command failed: "; - err += QuotedCommand(command); - } - } else { - err = "The uic executable "; - err += Quoted(this->Uic.Executable); - err += " does not exist"; - } - } - - // Print error - if (!err.empty()) { - std::string msg = "AutoUic ("; - msg += this->Target->GetName(); - msg += "): "; - msg += err; - cmSystemTools::Error(msg.c_str()); - return false; - } + const auto result = + GetQtExecutable(this->QtVersion, this->Target, "moc", false, nullptr); + this->Moc.Executable = result.second; + return result.first; +} - return true; +bool cmQtAutoGenInitializer::GetUicExecutable() +{ + const auto result = + GetQtExecutable(this->QtVersion, this->Target, "uic", true, nullptr); + this->Uic.Executable = result.second; + return result.first; } bool cmQtAutoGenInitializer::GetRccExecutable() { - std::string err; - - // Find rcc executable - { - std::string targetName; - if (this->QtVersion.Major == 5) { - targetName = "Qt5::rcc"; - } else if (this->QtVersion.Major == 4) { - targetName = "Qt4::rcc"; - } else { - err = "The AUTORCC feature supports only Qt 4 and Qt 5"; - } - if (!targetName.empty()) { - cmLocalGenerator* localGen = this->Target->GetLocalGenerator(); - cmGeneratorTarget* tgt = localGen->FindGeneratorTargetToUse(targetName); - if (tgt != nullptr) { - this->Rcc.Executable = tgt->ImportedGetLocation(""); - } else { - err = "Could not find target " + targetName; - } - } + std::string stdOut; + const auto result = + GetQtExecutable(this->QtVersion, this->Target, "rcc", false, &stdOut); + this->Rcc.Executable = result.second; + if (!result.first) { + return false; } - // Test rcc command - if (err.empty()) { - if (cmSystemTools::FileExists(this->Rcc.Executable, true)) { - std::vector<std::string> command; - command.push_back(this->Rcc.Executable); - command.push_back("-h"); - std::string stdOut; - std::string stdErr; - int retVal = 0; - bool result = cmSystemTools::RunSingleCommand( - command, &stdOut, &stdErr, &retVal, nullptr, - cmSystemTools::OUTPUT_NONE, cmDuration::zero(), cmProcessOutput::Auto); - if (result) { - // Detect if rcc supports (-)-list - if (this->QtVersion.Major == 5) { - if (stdOut.find("--list") != std::string::npos) { - this->Rcc.ListOptions.push_back("--list"); - } else { - this->Rcc.ListOptions.push_back("-list"); - } - } - } else { - err = "The rcc test command failed: "; - err += QuotedCommand(command); - } + if (this->QtVersion.Major == 5) { + if (stdOut.find("--list") != std::string::npos) { + this->Rcc.ListOptions.push_back("--list"); } else { - err = "The rcc executable "; - err += Quoted(this->Rcc.Executable); - err += " does not exist"; + this->Rcc.ListOptions.push_back("-list"); } } - - // Print error - if (!err.empty()) { - std::string msg = "AutoRcc ("; - msg += this->Target->GetName(); - msg += "): "; - msg += err; - cmSystemTools::Error(msg.c_str()); - return false; - } - return true; } diff --git a/Source/cmQtAutoGeneratorMocUic.cxx b/Source/cmQtAutoGeneratorMocUic.cxx index 2e6f90f..446ef9a 100644 --- a/Source/cmQtAutoGeneratorMocUic.cxx +++ b/Source/cmQtAutoGeneratorMocUic.cxx @@ -1279,16 +1279,6 @@ bool cmQtAutoGeneratorMocUic::Init(cmMakefile* makefile) Moc_.SkipList.insert(lst.begin(), lst.end()); } Moc_.Definitions = InfoGetConfigList("AM_MOC_DEFINITIONS"); -#ifdef _WIN32 - { - std::string win32("WIN32"); - auto itB = Moc().Definitions.cbegin(); - auto itE = Moc().Definitions.cend(); - if (std::find(itB, itE, win32) == itE) { - Moc_.Definitions.emplace_back(std::move(win32)); - } - } -#endif Moc_.IncludePaths = InfoGetConfigList("AM_MOC_INCLUDES"); Moc_.Options = InfoGetList("AM_MOC_OPTIONS"); Moc_.RelaxedMode = InfoGetBool("AM_MOC_RELAXED_MODE"); diff --git a/Source/cmStateDirectory.cxx b/Source/cmStateDirectory.cxx index f94e714..40f694c 100644 --- a/Source/cmStateDirectory.cxx +++ b/Source/cmStateDirectory.cxx @@ -138,6 +138,23 @@ void cmStateDirectory::SetRelativePathTopBinary(const char* dir) this->DirectoryState->RelativePathTopBinary = dir; } +bool cmStateDirectory::ContainsBoth(std::string const& local_path, + std::string const& remote_path) const +{ + auto PathEqOrSubDir = [](std::string const& a, std::string const& b) { + return (cmSystemTools::ComparePath(a, b) || + cmSystemTools::IsSubDirectory(a, b)); + }; + + bool bothInBinary = PathEqOrSubDir(local_path, GetRelativePathTopBinary()) && + PathEqOrSubDir(remote_path, GetRelativePathTopBinary()); + + bool bothInSource = PathEqOrSubDir(local_path, GetRelativePathTopSource()) && + PathEqOrSubDir(remote_path, GetRelativePathTopSource()); + + return bothInBinary || bothInSource; +} + cmStateDirectory::cmStateDirectory( cmLinkedTree<cmStateDetail::BuildsystemDirectoryStateType>::iterator iter, const cmStateSnapshot& snapshot) diff --git a/Source/cmStateDirectory.h b/Source/cmStateDirectory.h index e5f4d05..c4b18ad 100644 --- a/Source/cmStateDirectory.h +++ b/Source/cmStateDirectory.h @@ -32,6 +32,9 @@ public: void SetRelativePathTopSource(const char* dir); void SetRelativePathTopBinary(const char* dir); + bool ContainsBoth(std::string const& local_path, + std::string const& remote_path) const; + cmStringRange GetIncludeDirectoriesEntries() const; cmBacktraceRange GetIncludeDirectoriesEntryBacktraces() const; void AppendIncludeDirectoriesEntry(std::string const& vec, diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 28aa57c..be65853 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -49,6 +49,7 @@ #include <string.h> #include <time.h> #include <utility> +#include <vector> #if defined(_WIN32) # include <windows.h> @@ -1463,6 +1464,80 @@ std::string cmSystemTools::RelativePath(std::string const& local, return cmsys::SystemTools::RelativePath(local, remote); } +std::string cmSystemTools::ForceToRelativePath(std::string const& local_path, + std::string const& remote_path) +{ + // The paths should never be quoted. + assert(local_path.front() != '\"'); + assert(remote_path.front() != '\"'); + + // The local path should never have a trailing slash. + assert(local_path.empty() || local_path.back() != '/'); + + // If the path is already relative then just return the path. + if (!cmSystemTools::FileIsFullPath(remote_path)) { + return remote_path; + } + + // Identify the longest shared path component between the remote + // path and the local path. + std::vector<std::string> local; + cmSystemTools::SplitPath(local_path, local); + std::vector<std::string> remote; + cmSystemTools::SplitPath(remote_path, remote); + unsigned int common = 0; + while (common < remote.size() && common < local.size() && + cmSystemTools::ComparePath(remote[common], local[common])) { + ++common; + } + + // If no part of the path is in common then return the full path. + if (common == 0) { + return remote_path; + } + + // If the entire path is in common then just return a ".". + if (common == remote.size() && common == local.size()) { + return "."; + } + + // If the entire path is in common except for a trailing slash then + // just return a "./". + if (common + 1 == remote.size() && remote[common].empty() && + common == local.size()) { + return "./"; + } + + // Construct the relative path. + std::string relative; + + // First add enough ../ to get up to the level of the shared portion + // of the path. Leave off the trailing slash. Note that the last + // component of local will never be empty because local should never + // have a trailing slash. + for (unsigned int i = common; i < local.size(); ++i) { + relative += ".."; + if (i < local.size() - 1) { + relative += "/"; + } + } + + // Now add the portion of the destination path that is not included + // in the shared portion of the path. Add a slash the first time + // only if there was already something in the path. If there was a + // trailing slash in the input then the last iteration of the loop + // will add a slash followed by an empty string which will preserve + // the trailing slash in the output. + + if (!relative.empty() && !remote.empty()) { + relative += "/"; + } + relative += cmJoin(cmMakeRange(remote).advance(common), "/"); + + // Finally return the path. + return relative; +} + std::string cmSystemTools::CollapseCombinedPath(std::string const& dir, std::string const& file) { @@ -3009,6 +3084,35 @@ bool cmSystemTools::StringToULong(const char* str, unsigned long* value) return (*endp == '\0') && (endp != str) && (errno == 0); } +std::string cmSystemTools::EncodeURL(std::string const& in, bool escapeSlashes) +{ + std::string out; + for (char c : in) { + char hexCh[4] = { 0, 0, 0, 0 }; + hexCh[0] = c; + switch (c) { + case '+': + case '?': + case '\\': + case '&': + case ' ': + case '=': + case '%': + sprintf(hexCh, "%%%02X", static_cast<int>(c)); + break; + case '/': + if (escapeSlashes) { + strcpy(hexCh, "%2F"); + } + break; + default: + break; + } + out.append(hexCh); + } + return out; +} + bool cmSystemTools::CreateSymlink(const std::string& origName, const std::string& newName) { diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index 98300eb..c0999e7 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -375,6 +375,14 @@ public: static std::string RelativePath(std::string const& local, std::string const& remote); + /** + * Convert the given remote path to a relative path with respect to + * the given local path. Both paths must use forward slashes and not + * already be escaped or quoted. + */ + static std::string ForceToRelativePath(std::string const& local_path, + std::string const& remote_path); + /** Joins two paths while collapsing x/../ parts * For example CollapseCombinedPath("a/b/c", "../../d") results in "a/d" */ @@ -495,6 +503,10 @@ public: static bool StringToLong(const char* str, long* value); static bool StringToULong(const char* str, unsigned long* value); + /** Encode a string as a URL. */ + static std::string EncodeURL(std::string const& in, + bool escapeSlashes = true); + #ifdef _WIN32 struct WindowsFileRetry { diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 92d5505..688f73b 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -6,7 +6,6 @@ #include <algorithm> #include <assert.h> #include <iterator> -#include <map> #include <set> #include <sstream> #include <string.h> diff --git a/Source/cmTarget.h b/Source/cmTarget.h index aa2859d..655cefd 100644 --- a/Source/cmTarget.h +++ b/Source/cmTarget.h @@ -6,7 +6,6 @@ #include "cmConfigure.h" // IWYU pragma: keep #include <iosfwd> -#include <map> #include <set> #include <string> #include <unordered_map> @@ -344,11 +343,4 @@ private: typedef std::unordered_map<std::string, cmTarget> cmTargets; -class cmTargetSet : public std::set<std::string> -{ -}; -class cmTargetManifest : public std::map<std::string, cmTargetSet> -{ -}; - #endif diff --git a/Source/cmTargetLinkLibrariesCommand.cxx b/Source/cmTargetLinkLibrariesCommand.cxx index 66cc6ee..eebf7a0 100644 --- a/Source/cmTargetLinkLibrariesCommand.cxx +++ b/Source/cmTargetLinkLibrariesCommand.cxx @@ -451,7 +451,8 @@ bool cmTargetLinkLibrariesCommand::HandleLibrary(const std::string& lib, // STATIC library.) if (this->CurrentProcessingState == ProcessingKeywordPrivateInterface || this->CurrentProcessingState == ProcessingPlainPrivateInterface) { - if (this->Target->GetType() == cmStateEnums::STATIC_LIBRARY) { + if (this->Target->GetType() == cmStateEnums::STATIC_LIBRARY || + this->Target->GetType() == cmStateEnums::OBJECT_LIBRARY) { std::string configLib = this->Target->GetDebugGeneratorExpressions(libRef, llt); if (cmGeneratorExpression::IsValidTargetName(libRef) || diff --git a/Source/cmTryRunCommand.cxx b/Source/cmTryRunCommand.cxx index 9396138..fafbd24 100644 --- a/Source/cmTryRunCommand.cxx +++ b/Source/cmTryRunCommand.cxx @@ -45,7 +45,8 @@ bool cmTryRunCommand::InitialPass(std::vector<std::string> const& argv, if (argv[i] == "ARGS") { ++i; while (i < argv.size() && argv[i] != "COMPILE_DEFINITIONS" && - argv[i] != "CMAKE_FLAGS" && argv[i] != "LINK_LIBRARIES") { + argv[i] != "CMAKE_FLAGS" && argv[i] != "LINK_OPTIONS" && + argv[i] != "LINK_LIBRARIES") { runArgs += " "; runArgs += argv[i]; ++i; diff --git a/Source/cmVS10CLFlagTable.h b/Source/cmVS10CLFlagTable.h deleted file mode 100644 index df4d58c..0000000 --- a/Source/cmVS10CLFlagTable.h +++ /dev/null @@ -1,205 +0,0 @@ -static cmVS7FlagTable cmVS10CLFlagTable[] = { - - // Enum Properties - { "DebugInformationFormat", "Z7", "C7 compatible", "OldStyle", 0 }, - { "DebugInformationFormat", "Zi", "Program Database", "ProgramDatabase", 0 }, - { "DebugInformationFormat", "ZI", "Program Database for Edit And Continue", - "EditAndContinue", 0 }, - - { "WarningLevel", "W0", "Turn Off All Warnings", "TurnOffAllWarnings", 0 }, - { "WarningLevel", "W1", "Level1", "Level1", 0 }, - { "WarningLevel", "W2", "Level2", "Level2", 0 }, - { "WarningLevel", "W3", "Level3", "Level3", 0 }, - { "WarningLevel", "W4", "Level4", "Level4", 0 }, - { "WarningLevel", "Wall", "EnableAllWarnings", "EnableAllWarnings", 0 }, - - { "Optimization", "Od", "Disabled", "Disabled", 0 }, - { "Optimization", "O1", "Minimize Size", "MinSpace", 0 }, - { "Optimization", "O2", "Maximize Speed", "MaxSpeed", 0 }, - { "Optimization", "Ox", "Full Optimization", "Full", 0 }, - - { "InlineFunctionExpansion", "", "Default", "Default", 0 }, - { "InlineFunctionExpansion", "Ob0", "Disabled", "Disabled", 0 }, - { "InlineFunctionExpansion", "Ob1", "Only __inline", "OnlyExplicitInline", - 0 }, - { "InlineFunctionExpansion", "Ob2", "Any Suitable", "AnySuitable", 0 }, - - { "FavorSizeOrSpeed", "Os", "Favor small code", "Size", 0 }, - { "FavorSizeOrSpeed", "Ot", "Favor fast code", "Speed", 0 }, - { "FavorSizeOrSpeed", "", "Neither", "Neither", 0 }, - - { "ExceptionHandling", "EHa", "Yes with SEH Exceptions", "Async", 0 }, - { "ExceptionHandling", "EHsc", "Yes", "Sync", 0 }, - { "ExceptionHandling", "EHs", "Yes with Extern C functions", "SyncCThrow", - 0 }, - { "ExceptionHandling", "", "No", "false", 0 }, - - { "BasicRuntimeChecks", "RTCs", "Stack Frames", "StackFrameRuntimeCheck", - 0 }, - { "BasicRuntimeChecks", "RTCu", "Uninitialized variables", - "UninitializedLocalUsageCheck", 0 }, - { "BasicRuntimeChecks", "RTC1", "Both (/RTC1, equiv. to /RTCsu)", - "EnableFastChecks", 0 }, - { "BasicRuntimeChecks", "", "Default", "Default", 0 }, - - { "RuntimeLibrary", "MT", "Multi-threaded", "MultiThreaded", 0 }, - { "RuntimeLibrary", "MTd", "Multi-threaded Debug", "MultiThreadedDebug", 0 }, - { "RuntimeLibrary", "MD", "Multi-threaded DLL", "MultiThreadedDLL", 0 }, - { "RuntimeLibrary", "MDd", "Multi-threaded Debug DLL", - "MultiThreadedDebugDLL", 0 }, - - { "StructMemberAlignment", "Zp1", "1 Byte", "1Byte", 0 }, - { "StructMemberAlignment", "Zp2", "2 Bytes", "2Bytes", 0 }, - { "StructMemberAlignment", "Zp4", "4 Byte", "4Bytes", 0 }, - { "StructMemberAlignment", "Zp8", "8 Bytes", "8Bytes", 0 }, - { "StructMemberAlignment", "Zp16", "16 Bytes", "16Bytes", 0 }, - { "StructMemberAlignment", "", "Default", "Default", 0 }, - - { "EnableEnhancedInstructionSet", "arch:SSE", - "Streaming SIMD Extensions (/arch:SSE)", "StreamingSIMDExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:SSE2", - "Streaming SIMD Extensions 2 (/arch:SSE2)", "StreamingSIMDExtensions2", - 0 }, - { "EnableEnhancedInstructionSet", "", "Not Set", "NotSet", 0 }, - - { "FloatingPointModel", "fp:precise", "Precise", "Precise", 0 }, - { "FloatingPointModel", "fp:strict", "Strict", "Strict", 0 }, - { "FloatingPointModel", "fp:fast", "Fast", "Fast", 0 }, - - { "PrecompiledHeader", "Yc", "Create", "Create", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Yu", "Use", "Use", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Y-", "Not Using Precompiled Headers", "NotUsing", - 0 }, - - { "AssemblerOutput", "", "No Listing", "NoListing", 0 }, - { "AssemblerOutput", "FA", "Assembly-Only Listing", "AssemblyCode", 0 }, - { "AssemblerOutput", "FAc", "Assembly With Machine Code", - "AssemblyAndMachineCode", 0 }, - { "AssemblerOutput", "FAs", "Assembly With Source Code", - "AssemblyAndSourceCode", 0 }, - { "AssemblerOutput", "FAcs", "Assembly, Machine Code and Source", "All", 0 }, - - { "CallingConvention", "Gd", "__cdecl", "Cdecl", 0 }, - { "CallingConvention", "Gr", "__fastcall", "FastCall", 0 }, - { "CallingConvention", "Gz", "__stdcall", "StdCall", 0 }, - - { "CompileAs", "", "Default", "Default", 0 }, - { "CompileAs", "TC", "Compile as C Code", "CompileAsC", 0 }, - { "CompileAs", "TP", "Compile as C++ Code", "CompileAsCpp", 0 }, - - { "ErrorReporting", "errorReport:none", "Do Not Send Report", "None", 0 }, - { "ErrorReporting", "errorReport:prompt", "Prompt Immediately", "Prompt", - 0 }, - { "ErrorReporting", "errorReport:queue", "Queue For Next Login", "Queue", - 0 }, - { "ErrorReporting", "errorReport:send", "Send Automatically", "Send", 0 }, - - { "CompileAsManaged", "", "No Common Language RunTime Support", "false", 0 }, - { "CompileAsManaged", "clr", "Common Language RunTime Support", "true", 0 }, - { "CompileAsManaged", "clr:pure", - "Pure MSIL Common Language RunTime Support", "Pure", 0 }, - { "CompileAsManaged", "clr:safe", - "Safe MSIL Common Language RunTime Support", "Safe", 0 }, - { "CompileAsManaged", "clr:oldSyntax", - "Common Language RunTime Support, Old Syntax", "OldSyntax", 0 }, - - // Bool Properties - { "SuppressStartupBanner", "nologo-", "", "false", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - { "TreatWarningAsError", "WX-", "", "false", 0 }, - { "TreatWarningAsError", "WX", "", "true", 0 }, - { "IntrinsicFunctions", "Oi", "", "true", 0 }, - { "OmitFramePointers", "Oy-", "", "false", 0 }, - { "OmitFramePointers", "Oy", "", "true", 0 }, - { "EnableFiberSafeOptimizations", "GT", "", "true", 0 }, - { "WholeProgramOptimization", "GL", "", "true", 0 }, - { "UndefineAllPreprocessorDefinitions", "u", "", "true", 0 }, - { "IgnoreStandardIncludePath", "X", "", "true", 0 }, - { "PreprocessToFile", "P", "", "true", 0 }, - { "PreprocessSuppressLineNumbers", "EP", "", "true", 0 }, - { "PreprocessKeepComments", "C", "", "true", 0 }, - { "StringPooling", "GF-", "", "false", 0 }, - { "StringPooling", "GF", "", "true", 0 }, - { "MinimalRebuild", "Gm-", "", "false", 0 }, - { "MinimalRebuild", "Gm", "", "true", 0 }, - { "SmallerTypeCheck", "RTCc", "", "true", 0 }, - { "BufferSecurityCheck", "GS-", "", "false", 0 }, - { "BufferSecurityCheck", "GS", "", "true", 0 }, - { "FunctionLevelLinking", "Gy-", "", "false", 0 }, - { "FunctionLevelLinking", "Gy", "", "true", 0 }, - { "FloatingPointExceptions", "fp:except-", "", "false", 0 }, - { "FloatingPointExceptions", "fp:except", "", "true", 0 }, - { "CreateHotpatchableImage", "hotpatch", "", "true", 0 }, - { "DisableLanguageExtensions", "Za", "", "true", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0 }, - { "RuntimeTypeInfo", "GR-", "", "false", 0 }, - { "RuntimeTypeInfo", "GR", "", "true", 0 }, - { "OpenMPSupport", "openmp-", "", "false", 0 }, - { "OpenMPSupport", "openmp", "", "true", 0 }, - { "ExpandAttributedSource", "Fx", "", "true", 0 }, - { "ShowIncludes", "showIncludes", "", "true", 0 }, - { "EnablePREfast", "analyze-", "", "false", 0 }, - { "EnablePREfast", "analyze", "", "true", 0 }, - { "UseFullPaths", "FC", "", "true", 0 }, - { "OmitDefaultLibName", "Zl", "", "true", 0 }, - { "UseUnicodeForAssemblerListing", "FAu", "", "true", 0 }, - - // Bool Properties With Argument - { "MultiProcessorCompilation", "MP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "ProcessorNumber", "MP", "Multi-processor Compilation", "", - cmVS7FlagTable::UserValueRequired }, - { "GenerateXMLDocumentationFiles", "doc", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "", - cmVS7FlagTable::UserValueRequired }, - { "BrowseInformation", "FR", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "BrowseInformationFile", "FR", "Enable Browse Information", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalIncludeDirectories", "I", "Additional Include Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalUsingDirectories", "AI", "Resolve #using References", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PreprocessorDefinitions", "D ", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "UndefinePreprocessorDefinitions", "U", - "Undefine Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DisableSpecificWarnings", "wd", "Disable Specific Warnings", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedIncludeFiles", "FI", "Forced Include File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedUsingFiles", "FU", "Forced #using File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "TreatSpecificWarningsAsErrors", "we", "Treat Specific Warnings As Errors", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - // Skip [TrackerLogDirectory] - no command line Switch. - { "PreprocessOutputPath", "Fi", "Preprocess Output Path", "", - cmVS7FlagTable::UserValue }, - { "PrecompiledHeaderFile", "Yc", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderFile", "Yu", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderOutputFile", "Fp", "Precompiled Header Output File", "", - cmVS7FlagTable::UserValue }, - { "AssemblerListingLocation", "Fa", "ASM List Location", "", - cmVS7FlagTable::UserValue }, - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "ProgramDataBaseFileName", "Fd", "Program Database File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [XMLDocumentationFileName] - no command line Switch. - // Skip [BrowseInformationFile] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10CSharpFlagTable.h b/Source/cmVS10CSharpFlagTable.h deleted file mode 100644 index 6ac7a76..0000000 --- a/Source/cmVS10CSharpFlagTable.h +++ /dev/null @@ -1,121 +0,0 @@ -static cmVS7FlagTable cmVS10CSharpFlagTable[] = { - { "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired }, - - { "OutputType", "target:exe", "", "Exe", 0 }, - { "OutputType", "target:winexe", "", "Winexe", 0 }, - { "OutputType", "target:library", "", "Library", 0 }, - { "OutputType", "target:module", "", "Module", 0 }, - - { "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired }, - - { "Platform", "platform:x86", "", "x86", 0 }, - { "Platform", "platform:Itanium", "", "Itanium", 0 }, - { "Platform", "platform:x64", "", "x64", 0 }, - { "Platform", "platform:arm", "", "arm", 0 }, - { "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred", - 0 }, - { "Platform", "platform:anycpu", "", "anycpu", 0 }, - - { "References", "reference:", "mit alias", "", 0 }, - { "References", "reference:", "dateiliste", "", 0 }, - { "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable }, - { "", "link", "", "", 0 }, - - { "Win32Resource", "win32res:", "", "", cmIDEFlagTable::UserValueRequired }, - { "ApplicationIcon", "win32icon:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "ApplicationManifest", "win32manifest:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "NoWin32Manifest", "nowin32manifest", "", "true", 0 }, - - { "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue }, - - { "DebugSymbols", "debug", "", "true", 0 }, - { "DebugSymbols", "debug-", "", "false", 0 }, - { "DebugSymbols", "debug+", "", "true", 0 }, - - { "DebugType", "debug:none", "", "none", 0 }, - { "DebugType", "debug:full", "", "full", 0 }, - { "DebugType", "debug:pdbonly", "", "pdbonly", 0 }, - - { "Optimize", "optimize", "", "true", 0 }, - { "Optimize", "optimize-", "", "false", 0 }, - { "Optimize", "optimize+", "", "true", 0 }, - - { "TreatWarningsAsErrors", "warnaserror", "", "true", 0 }, - { "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 }, - { "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 }, - - { "WarningsAsErrors", "warnaserror", "", "", 0 }, - { "WarningsAsErrors", "warnaserror-", "", "", 0 }, - { "WarningsAsErrors", "warnaserror+", "", "", 0 }, - - { "WarningLevel", "warn:0", "", "0", 0 }, - { "WarningLevel", "warn:1", "", "1", 0 }, - { "WarningLevel", "warn:2", "", "2", 0 }, - { "WarningLevel", "warn:3", "", "3", 0 }, - { "WarningLevel", "warn:4", "", "4", 0 }, - { "DisabledWarnings", "nowarn", "", "", 0 }, - - { "CheckForOverflowUnderflow", "checked", "", "true", 0 }, - { "CheckForOverflowUnderflow", "checked-", "", "false", 0 }, - { "CheckForOverflowUnderflow", "checked+", "", "true", 0 }, - - { "AllowUnsafeBlocks", "unsafe", "", "true", 0 }, - { "AllowUnsafeBlocks", "unsafe-", "", "false", 0 }, - { "AllowUnsafeBlocks", "unsafe+", "", "true", 0 }, - - { "DefineConstants", "define:", "", "", - cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue }, - - { "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 }, - { "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 }, - { "LangVersion", "langversion:3", "", "3", 0 }, - { "LangVersion", "langversion:4", "", "4", 0 }, - { "LangVersion", "langversion:5", "", "5", 0 }, - { "LangVersion", "langversion:6", "", "6", 0 }, - { "LangVersion", "langversion:default", "", "default", 0 }, - - { "DelaySign", "delaysign", "", "true", 0 }, - { "DelaySign", "delaysign-", "", "false", 0 }, - { "DelaySign", "delaysign+", "", "true", 0 }, - - { "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 }, - - { "KeyContainerName", "keycontainer", "", "", 0 }, - - { "NoLogo", "nologo", "", "", 0 }, - - { "NoConfig", "noconfig", "", "true", 0 }, - - { "BaseAddress", "baseaddress:", "", "", 0 }, - - { "CodePage", "codepage", "", "", 0 }, - - { "Utf8Output", "utf8output", "", "", 0 }, - - { "MainEntryPoint", "main:", "", "", 0 }, - - { "GenerateFullPaths", "fullpaths", "", "true", 0 }, - - { "FileAlignment", "filealign", "", "", 0 }, - - { "PdbFile", "pdb:", "", "", 0 }, - - { "NoStandardLib", "nostdlib", "", "true", 0 }, - { "NoStandardLib", "nostdlib-", "", "false", 0 }, - { "NoStandardLib", "nostdlib+", "", "true", 0 }, - - { "SubsystemVersion", "subsystemversion", "", "", 0 }, - - { "AdditionalLibPaths", "lib:", "", "", 0 }, - - { "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 }, - { "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 }, - { "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 }, - { "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 }, - - { 0, 0, 0, 0, 0 }, -}; diff --git a/Source/cmVS10CudaFlagTable.h b/Source/cmVS10CudaFlagTable.h deleted file mode 100644 index 2b57e08..0000000 --- a/Source/cmVS10CudaFlagTable.h +++ /dev/null @@ -1,54 +0,0 @@ -static cmVS7FlagTable cmVS10CudaFlagTable[] = { - // Collect options meant for the host compiler. - { "AdditionalCompilerOptions", "Xcompiler=", "Host compiler options", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SpaceAppendable }, - { "AdditionalCompilerOptions", "Xcompiler", "Host compiler options", "", - cmVS7FlagTable::UserFollowing | cmVS7FlagTable::SpaceAppendable }, - - // Select the CUDA runtime library. - { "CudaRuntime", "cudart=none", "No CUDA runtime library", "None", 0 }, - { "CudaRuntime", "cudart=shared", "Shared/dynamic CUDA runtime library", - "Shared", 0 }, - { "CudaRuntime", "cudart=static", "Static CUDA runtime library", "Static", - 0 }, - { "CudaRuntime", "cudart", "CUDA runtime library", "", - cmVS7FlagTable::UserFollowing }, - - // Capture arch/code arguments into temporaries for post-processing. - { "cmake-temp-gencode", "gencode=", "", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "cmake-temp-gencode", "gencode", "", "", - cmVS7FlagTable::UserFollowing | cmVS7FlagTable::SemicolonAppendable }, - { "cmake-temp-gencode", "-generate-code=", "", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "cmake-temp-gencode", "-generate-code", "", "", - cmVS7FlagTable::UserFollowing | cmVS7FlagTable::SemicolonAppendable }, - - { "cmake-temp-code", "code=", "", "", cmVS7FlagTable::UserValue }, - { "cmake-temp-code", "code", "", "", cmVS7FlagTable::UserFollowing }, - { "cmake-temp-code", "-gpu-code=", "", "", cmVS7FlagTable::UserValue }, - { "cmake-temp-code", "-gpu-code", "", "", cmVS7FlagTable::UserFollowing }, - - { "cmake-temp-arch", "arch=", "", "", cmVS7FlagTable::UserValue }, - { "cmake-temp-arch", "arch", "", "", cmVS7FlagTable::UserFollowing }, - { "cmake-temp-arch", "-gpu-architecture=", "", "", - cmVS7FlagTable::UserValue }, - { "cmake-temp-arch", "-gpu-architecture", "", "", - cmVS7FlagTable::UserFollowing }, - - // Other flags. - - { "FastMath", "use_fast_math", "", "true", 0 }, - { "FastMath", "-use_fast_math", "", "true", 0 }, - - { "GPUDebugInfo", "G", "", "true", 0 }, - { "GPUDebugInfo", "-device-debug", "", "true", 0 }, - - { "HostDebugInfo", "g", "", "true", 0 }, - { "HostDebugInfo", "-debug", "", "true", 0 }, - - { "MaxRegCount", "maxrregcount=", "", "", cmVS7FlagTable::UserValue }, - { "MaxRegCount", "maxrregcount", "", "", cmVS7FlagTable::UserFollowing }, - - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10CudaHostFlagTable.h b/Source/cmVS10CudaHostFlagTable.h deleted file mode 100644 index 5b61066..0000000 --- a/Source/cmVS10CudaHostFlagTable.h +++ /dev/null @@ -1,35 +0,0 @@ -static cmVS7FlagTable cmVS10CudaHostFlagTable[] = { - //{"Optimization", "", "<inherit from host>", "InheritFromHost", 0}, - { "Optimization", "Od", "Disabled", "Od", 0 }, - { "Optimization", "O1", "Minimize Size", "O1", 0 }, - { "Optimization", "O2", "Maximize Speed", "O2", 0 }, - { "Optimization", "Ox", "Full Optimization", "O3", 0 }, - - //{"Runtime", "", "<inherit from host>", "InheritFromHost", 0}, - { "Runtime", "MT", "Multi-Threaded", "MT", 0 }, - { "Runtime", "MTd", "Multi-Threaded Debug", "MTd", 0 }, - { "Runtime", "MD", "Multi-Threaded DLL", "MD", 0 }, - { "Runtime", "MDd", "Multi-threaded Debug DLL", "MDd", 0 }, - { "Runtime", "ML", "Single-Threaded", "ML", 0 }, - { "Runtime", "MLd", "Single-Threaded Debug", "MLd", 0 }, - - //{"RuntimeChecks", "", "<inherit from host>", "InheritFromHost", 0}, - //{"RuntimeChecks", "", "Default", "Default", 0}, - { "RuntimeChecks", "RTCs", "Stack Frames", "RTCs", 0 }, - { "RuntimeChecks", "RTCu", "Uninitialized Variables", "RTCu", 0 }, - { "RuntimeChecks", "RTC1", "Both", "RTC1", 0 }, - - //{"TypeInfo", "", "<inherit from host>", "InheritFromHost", 0}, - { "TypeInfo", "GR", "Yes", "true", 0 }, - { "TypeInfo", "GR-", "No", "false", 0 }, - - //{"Warning", "", "<inherit from host>", "InheritFromHost", 0}, - { "Warning", "W0", "Off: Turn Off All Warnings", "W0", 0 }, - { "Warning", "W1", "Level 1", "W1", 0 }, - { "Warning", "W2", "Level 2", "W2", 0 }, - { "Warning", "W3", "Level 3", "W3", 0 }, - { "Warning", "W4", "Level 4", "W4", 0 }, - { "Warning", "Wall", "Enable All Warnings", "Wall", 0 }, - - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10LibFlagTable.h b/Source/cmVS10LibFlagTable.h deleted file mode 100644 index be4f475..0000000 --- a/Source/cmVS10LibFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS10LibFlagTable[] = { - - // Enum Properties - { "ErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "ErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "ErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "ErrorReporting", "ERRORREPORT:NONE", "No Error Report", "NoErrorReport", - 0 }, - - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - // Bool Properties - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "TreatLibWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLibWarningAsErrors", "WX", "", "true", 0 }, - { "Verbose", "VERBOSE", "", "true", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - // Skip [AdditionalDependencies] - no command line Switch. - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ExportNamedFunctions", "EXPORT:", "Export Named Functions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "RemoveObjects", "REMOVE:", "Remove Objects", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "ModuleDefinitionFile", "DEF:", "Module Definition File Name", "", - cmVS7FlagTable::UserValue }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue }, - { "DisplayLibrary", "LIST:", "Display Library to standard output", "", - cmVS7FlagTable::UserValue }, - // Skip [MinimumRequiredVersion] - no command line Switch. - { "Name", "NAME:", "Name", "", cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10LinkFlagTable.h b/Source/cmVS10LinkFlagTable.h deleted file mode 100644 index 8f5b59b..0000000 --- a/Source/cmVS10LinkFlagTable.h +++ /dev/null @@ -1,247 +0,0 @@ -static cmVS7FlagTable cmVS10LinkFlagTable[] = { - - // Enum Properties - { "ShowProgress", "", "Not Set", "NotSet", 0 }, - { "ShowProgress", "VERBOSE", "Display all progress messages", "LinkVerbose", - 0 }, - { "ShowProgress", "VERBOSE:Lib", "For Libraries Searched", "LinkVerboseLib", - 0 }, - { "ShowProgress", "VERBOSE:ICF", - "About COMDAT folding during optimized linking", "LinkVerboseICF", 0 }, - { "ShowProgress", "VERBOSE:REF", - "About data removed during optimized linking", "LinkVerboseREF", 0 }, - { "ShowProgress", "VERBOSE:SAFESEH", "About Modules incompatible with SEH", - "LinkVerboseSAFESEH", 0 }, - { "ShowProgress", "VERBOSE:CLR", - "About linker activity related to managed code", "LinkVerboseCLR", 0 }, - - { "ForceFileOutput", "FORCE", "Enabled", "Enabled", 0 }, - { "ForceFileOutput", "FORCE:MULTIPLE", "Multiply Defined Symbol Only", - "MultiplyDefinedSymbolOnly", 0 }, - { "ForceFileOutput", "FORCE:UNRESOLVED", "Undefined Symbol Only", - "UndefinedSymbolOnly", 0 }, - - { "CreateHotPatchableImage", "FUNCTIONPADMIN", "Enabled", "Enabled", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:5", "X86 Image Only", - "X86Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:6", "X64 Image Only", - "X64Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:16", "Itanium Image Only", - "ItaniumImage", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACExecutionLevel", "level='asInvoker'", "asInvoker", "AsInvoker", 0 }, - { "UACExecutionLevel", "level='highestAvailable'", "highestAvailable", - "HighestAvailable", 0 }, - { "UACExecutionLevel", "level='requireAdministrator'", - "requireAdministrator", "RequireAdministrator", 0 }, - - { "SubSystem", "", "Not Set", "NotSet", 0 }, - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - { "Driver", "", "Not Set", "NotSet", 0 }, - { "Driver", "Driver", "Driver", "Driver", 0 }, - { "Driver", "DRIVER:UPONLY", "UP Only", "UpOnly", 0 }, - { "Driver", "DRIVER:WDM", "WDM", "WDM", 0 }, - - { "LinkTimeCodeGeneration", "", "Default", "Default", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "Use Link Time Code Generation", - "UseLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGInstrument", - "Profile Guided Optimization - Instrument", "PGInstrument", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGOptimize", - "Profile Guided Optimization - Optimization", "PGOptimization", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGUpdate", - "Profile Guided Optimization - Update", "PGUpdate", 0 }, - - { "TargetMachine", "", "Not Set", "NotSet", 0 }, - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA", "MTA threading attribute", - "MTAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA", "STA threading attribute", - "STAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE", - "Default threading attribute", "DefaultThreadingAttribute", 0 }, - - { "CLRImageType", "CLRIMAGETYPE:IJW", "Force IJW image", "ForceIJWImage", - 0 }, - { "CLRImageType", "CLRIMAGETYPE:PURE", "Force Pure IL Image", - "ForcePureILImage", 0 }, - { "CLRImageType", "CLRIMAGETYPE:SAFE", "Force Safe IL Image", - "ForceSafeILImage", 0 }, - { "CLRImageType", "", "Default image type", "Default", 0 }, - - { "LinkErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "LinkErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "LinkErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "LinkErrorReporting", "ERRORREPORT:NONE", "No Error Report", - "NoErrorReport", 0 }, - - { "CLRSupportLastError", "CLRSupportLastError", "Enabled", "Enabled", 0 }, - { "CLRSupportLastError", "CLRSupportLastError:NO", "Disabled", "Disabled", - 0 }, - { "CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL", "System Dlls Only", - "SystemDlls", 0 }, - - // Bool Properties - { "LinkIncremental", "INCREMENTAL:NO", "", "false", 0 }, - { "LinkIncremental", "INCREMENTAL", "", "true", 0 }, - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "LinkStatus", "LTCG:NOSTATUS", "", "false", 0 }, - { "LinkStatus", "LTCG:STATUS", "", "true", 0 }, - { "PreventDllBinding", "ALLOWBIND:NO", "", "false", 0 }, - { "PreventDllBinding", "ALLOWBIND", "", "true", 0 }, - { "TreatLinkerWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLinkerWarningAsErrors", "WX", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "GenerateManifest", "MANIFEST:NO", "", "false", 0 }, - { "GenerateManifest", "MANIFEST", "", "true", 0 }, - { "AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACUIAccess", "uiAccess='false'", "", "false", 0 }, - { "UACUIAccess", "uiAccess='true'", "", "true", 0 }, - - { "GenerateDebugInformation", "DEBUG", "", "true", - cmVS7FlagTable::CaseInsensitive }, - { "MapExports", "MAPINFO:EXPORTS", "", "true", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE:NO", "", "false", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE", "", "true", 0 }, - { "TerminalServerAware", "TSAWARE:NO", "", "false", 0 }, - { "TerminalServerAware", "TSAWARE", "", "true", 0 }, - { "SwapRunFromCD", "SWAPRUN:CD", "", "true", 0 }, - { "SwapRunFromNET", "SWAPRUN:NET", "", "true", 0 }, - { "OptimizeReferences", "OPT:NOREF", "", "false", 0 }, - { "OptimizeReferences", "OPT:REF", "", "true", 0 }, - { "EnableCOMDATFolding", "OPT:NOICF", "", "false", 0 }, - { "EnableCOMDATFolding", "OPT:ICF", "", "true", 0 }, - { "IgnoreEmbeddedIDL", "IGNOREIDL", "", "true", 0 }, - { "NoEntryPoint", "NOENTRY", "", "true", 0 }, - { "SetChecksum", "RELEASE", "", "true", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE:NO", "", "false", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE", "", "true", 0 }, - { "FixedBaseAddress", "FIXED:NO", "", "false", 0 }, - { "FixedBaseAddress", "FIXED", "", "true", 0 }, - { "DataExecutionPrevention", "NXCOMPAT:NO", "", "false", 0 }, - { "DataExecutionPrevention", "NXCOMPAT", "", "true", 0 }, - { "TurnOffAssemblyGeneration", "NOASSEMBLY", "", "true", 0 }, - { "SupportUnloadOfDelayLoadedDLL", "DELAY:UNLOAD", "", "true", 0 }, - { "SupportNobindOfDelayLoadedDLL", "DELAY:NOBIND", "", "true", 0 }, - { "Profile", "PROFILE", "", "true", 0 }, - { "LinkDelaySign", "DELAYSIGN:NO", "", "false", 0 }, - { "LinkDelaySign", "DELAYSIGN", "", "true", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK:NO", "", "false", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK", "", "true", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH:NO", "", "false", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH", "", "true", 0 }, - { "LinkDLL", "DLL", "", "true", 0 }, - - // Bool Properties With Argument - { "EnableUAC", "MANIFESTUAC:", "", "", - cmVS7FlagTable::UserValueRequired | cmVS7FlagTable::SpaceAppendable }, - { "GenerateMapFile", "MAP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "MapFileName", "MAP:", "Generate Map File", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AddModuleNamesToAssembly", "ASSEMBLYMODULE:", "Add Module to Assembly", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "EmbedManagedResourceFile", - "ASSEMBLYRESOURCE:", "Embed Managed Resource File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DelayLoadDLLs", "DELAYLOAD:", "Delay Loaded Dlls", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:", "Assembly Link Resource", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalManifestDependencies", - "MANIFESTDEPENDENCY:", "Additional Manifest Dependencies", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "Version", "VERSION:", "Version", "", cmVS7FlagTable::UserValue }, - { "SpecifySectionAttributes", "SECTION:", "Specify Section Attributes", "", - cmVS7FlagTable::UserValue }, - { "MSDOSStubFileName", "STUB:", "MS-DOS Stub File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - { "ModuleDefinitionFile", "DEF:", "Module Definition File", "", - cmVS7FlagTable::UserValue }, - { "ManifestFile", "ManifestFile:", "Manifest File", "", - cmVS7FlagTable::UserValue }, - { "ProgramDatabaseFile", "PDB:", "Generate Program Database File", "", - cmVS7FlagTable::UserValue }, - { "StripPrivateSymbols", "PDBSTRIPPED:", "Strip Private Symbols", "", - cmVS7FlagTable::UserValue }, - // Skip [MapFileName] - no command line Switch. - // Skip [MinimumRequiredVersion] - no command line Switch. - { "HeapReserveSize", "HEAP:", "Heap Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [HeapCommitSize] - no command line Switch. - { "StackReserveSize", "STACK:", "Stack Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [StackCommitSize] - no command line Switch. - { "FunctionOrder", "ORDER:@", "Function Order", "", - cmVS7FlagTable::UserValue }, - { "ProfileGuidedDatabase", "PGD:", "Profile Guided Database", "", - cmVS7FlagTable::UserValue }, - { "MidlCommandFile", "MIDL:@", "MIDL Commands", "", - cmVS7FlagTable::UserValue }, - { "MergedIDLBaseFileName", "IDLOUT:", "Merged IDL Base File Name", "", - cmVS7FlagTable::UserValue }, - { "TypeLibraryFile", "TLBOUT:", "Type Library", "", - cmVS7FlagTable::UserValue }, - { "EntryPointSymbol", "ENTRY:", "Entry Point", "", - cmVS7FlagTable::UserValue }, - { "BaseAddress", "BASE:", "Base Address", "", cmVS7FlagTable::UserValue }, - { "ImportLibrary", "IMPLIB:", "Import Library", "", - cmVS7FlagTable::UserValue }, - { "MergeSections", "MERGE:", "Merge Sections", "", - cmVS7FlagTable::UserValue }, - { "LinkKeyFile", "KEYFILE:", "Key File", "", cmVS7FlagTable::UserValue }, - { "KeyContainer", "KEYCONTAINER:", "Key Container", "", - cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10MASMFlagTable.h b/Source/cmVS10MASMFlagTable.h deleted file mode 100644 index 0a45245..0000000 --- a/Source/cmVS10MASMFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS10MASMFlagTable[] = { - - // Enum Properties - { "PreserveIdentifierCase", "", "Default", "0", 0 }, - { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1", - 0 }, - { "PreserveIdentifierCase", "Cu", - "Maps all identifiers to upper case. (/Cu)", "2", 0 }, - { "PreserveIdentifierCase", "Cx", - "Preserves case in public and extern symbols. (/Cx)", "3", 0 }, - - { "WarningLevel", "W0", "Warning Level 0 (/W0)", "0", 0 }, - { "WarningLevel", "W1", "Warning Level 1 (/W1)", "1", 0 }, - { "WarningLevel", "W2", "Warning Level 2 (/W2)", "2", 0 }, - { "WarningLevel", "W3", "Warning Level 3 (/W3)", "3", 0 }, - - { "PackAlignmentBoundary", "", "Default", "0", 0 }, - { "PackAlignmentBoundary", "Zp1", "One Byte Boundary (/Zp1)", "1", 0 }, - { "PackAlignmentBoundary", "Zp2", "Two Byte Boundary (/Zp2)", "2", 0 }, - { "PackAlignmentBoundary", "Zp4", "Four Byte Boundary (/Zp4)", "3", 0 }, - { "PackAlignmentBoundary", "Zp8", "Eight Byte Boundary (/Zp8)", "4", 0 }, - { "PackAlignmentBoundary", "Zp16", "Sixteen Byte Boundary (/Zp16)", "5", 0 }, - - { "CallingConvention", "", "Default", "0", 0 }, - { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1", - 0 }, - { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2", - 0 }, - { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 }, - - { "ErrorReporting", "errorReport:prompt", - "Prompt to send report immediately (/errorReport:prompt)", "0", 0 }, - { "ErrorReporting", "errorReport:queue", - "Prompt to send report at the next logon (/errorReport:queue)", "1", 0 }, - { "ErrorReporting", "errorReport:send", - "Automatically send report (/errorReport:send)", "2", 0 }, - { "ErrorReporting", "errorReport:none", - "Do not send report (/errorReport:none)", "3", 0 }, - - // Bool Properties - { "NoLogo", "nologo", "", "true", 0 }, - { "GeneratePreprocessedSourceListing", "EP", "", "true", 0 }, - { "ListAllAvailableInformation", "Sa", "", "true", 0 }, - { "UseSafeExceptionHandlers", "safeseh", "", "true", 0 }, - { "AddFirstPassListing", "Sf", "", "true", 0 }, - { "EnableAssemblyGeneratedCodeListing", "Sg", "", "true", 0 }, - { "DisableSymbolTable", "Sn", "", "true", 0 }, - { "EnableFalseConditionalsInListing", "Sx", "", "true", 0 }, - { "TreatWarningsAsErrors", "WX", "", "true", 0 }, - { "MakeAllSymbolsPublic", "Zf", "", "true", 0 }, - { "GenerateDebugInformation", "Zi", "", "true", 0 }, - { "EnableMASM51Compatibility", "Zm", "", "true", 0 }, - { "PerformSyntaxCheckOnly", "Zs", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IncludePaths", "I", "Include Paths", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "BrowseFile", "FR", "Generate Browse Information File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - - // String Properties - // Skip [Inputs] - no command line Switch. - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "", - cmVS7FlagTable::UserValue }, - // Skip [CommandLineTemplate] - no command line Switch. - // Skip [ExecutionDescription] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10NASMFlagTable.h b/Source/cmVS10NASMFlagTable.h deleted file mode 100644 index b91af92..0000000 --- a/Source/cmVS10NASMFlagTable.h +++ /dev/null @@ -1,50 +0,0 @@ -static cmVS7FlagTable cmVS10NASMFlagTable[] = { - - // Enum Properties - { "Outputswitch", "fwin32", "", "0", 0 }, - { "Outputswitch", "fwin", "", "0", 0 }, - { "Outputswitch", "fwin64", "", "1", 0 }, - { "Outputswitch", "felf", "", "2", 0 }, - { "Outputswitch", "felf32", "", "2", 0 }, - { "Outputswitch", "felf64", "", "3", 0 }, - - { "ErrorReportingFormat", "Xgnu", "", "-Xgnu GNU format: Default format", - 0 }, - { "ErrorReportingFormat", "Xvc", "", - "-Xvc Style used by Microsoft Visual C++", 0 }, - - // Bool Properties - { "TreatWarningsAsErrors", "Werror", "", "true", 0 }, - { "GenerateDebugInformation", "g", "", "true", 0 }, - { "floatunderflow", "w+float-underflow", "", "true", 0 }, - { "macrodefaults", "w-macro-defaults", "", "true", 0 }, - { "user", "w-user", "%warning directives (default on)", "true", 0 }, - { "floatoverflow", "w-float-overflow", "", "true", 0 }, - { "floatdenorm", "w+float-denorm", "", "true", 0 }, - { "numberoverflow", "w-number-overflow", "", "true", 0 }, - { "macroselfref", "w+macro-selfref", "", "true", 0 }, - { "floattoolong", "w-float-toolong", "", "true", 0 }, - { "orphanlabels", "w-orphan-labels", "", "true", 0 }, - { "tasmmode", "t", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "UndefinePreprocessorDefinitions", "U", - "Undefine Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IncludePaths", "I", "Include Paths", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AssembledCodeListingFile", "l", - "Generates an assembled code listing file.", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - // Skip [Inputs] - no command line Switch. - // Skip [CommandLineTemplate] - no command line Switch. - // Skip [ExecutionDescription] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS10RCFlagTable.h b/Source/cmVS10RCFlagTable.h deleted file mode 100644 index 6e2b834..0000000 --- a/Source/cmVS10RCFlagTable.h +++ /dev/null @@ -1,7 +0,0 @@ -static cmVS7FlagTable cmVS10RCFlagTable[] = { - // Bool Properties - { "NullTerminateStrings", "n", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS11CLFlagTable.h b/Source/cmVS11CLFlagTable.h deleted file mode 100644 index d156938..0000000 --- a/Source/cmVS11CLFlagTable.h +++ /dev/null @@ -1,220 +0,0 @@ -static cmVS7FlagTable cmVS11CLFlagTable[] = { - - // Enum Properties - { "DebugInformationFormat", "", "None", "None", 0 }, - { "DebugInformationFormat", "Z7", "C7 compatible", "OldStyle", 0 }, - { "DebugInformationFormat", "Zi", "Program Database", "ProgramDatabase", 0 }, - { "DebugInformationFormat", "ZI", "Program Database for Edit And Continue", - "EditAndContinue", 0 }, - - { "WarningLevel", "W0", "Turn Off All Warnings", "TurnOffAllWarnings", 0 }, - { "WarningLevel", "W1", "Level1", "Level1", 0 }, - { "WarningLevel", "W2", "Level2", "Level2", 0 }, - { "WarningLevel", "W3", "Level3", "Level3", 0 }, - { "WarningLevel", "W4", "Level4", "Level4", 0 }, - { "WarningLevel", "Wall", "EnableAllWarnings", "EnableAllWarnings", 0 }, - - { "Optimization", "Od", "Disabled", "Disabled", 0 }, - { "Optimization", "O1", "Minimize Size", "MinSpace", 0 }, - { "Optimization", "O2", "Maximize Speed", "MaxSpeed", 0 }, - { "Optimization", "Ox", "Full Optimization", "Full", 0 }, - - { "InlineFunctionExpansion", "", "Default", "Default", 0 }, - { "InlineFunctionExpansion", "Ob0", "Disabled", "Disabled", 0 }, - { "InlineFunctionExpansion", "Ob1", "Only __inline", "OnlyExplicitInline", - 0 }, - { "InlineFunctionExpansion", "Ob2", "Any Suitable", "AnySuitable", 0 }, - - { "FavorSizeOrSpeed", "Os", "Favor small code", "Size", 0 }, - { "FavorSizeOrSpeed", "Ot", "Favor fast code", "Speed", 0 }, - { "FavorSizeOrSpeed", "", "Neither", "Neither", 0 }, - - { "ExceptionHandling", "EHa", "Yes with SEH Exceptions", "Async", 0 }, - { "ExceptionHandling", "EHsc", "Yes", "Sync", 0 }, - { "ExceptionHandling", "EHs", "Yes with Extern C functions", "SyncCThrow", - 0 }, - { "ExceptionHandling", "", "No", "false", 0 }, - - { "BasicRuntimeChecks", "RTCs", "Stack Frames", "StackFrameRuntimeCheck", - 0 }, - { "BasicRuntimeChecks", "RTCu", "Uninitialized variables", - "UninitializedLocalUsageCheck", 0 }, - { "BasicRuntimeChecks", "RTC1", "Both (/RTC1, equiv. to /RTCsu)", - "EnableFastChecks", 0 }, - { "BasicRuntimeChecks", "", "Default", "Default", 0 }, - - { "RuntimeLibrary", "MT", "Multi-threaded", "MultiThreaded", 0 }, - { "RuntimeLibrary", "MTd", "Multi-threaded Debug", "MultiThreadedDebug", 0 }, - { "RuntimeLibrary", "MD", "Multi-threaded DLL", "MultiThreadedDLL", 0 }, - { "RuntimeLibrary", "MDd", "Multi-threaded Debug DLL", - "MultiThreadedDebugDLL", 0 }, - - { "StructMemberAlignment", "Zp1", "1 Byte", "1Byte", 0 }, - { "StructMemberAlignment", "Zp2", "2 Bytes", "2Bytes", 0 }, - { "StructMemberAlignment", "Zp4", "4 Byte", "4Bytes", 0 }, - { "StructMemberAlignment", "Zp8", "8 Bytes", "8Bytes", 0 }, - { "StructMemberAlignment", "Zp16", "16 Bytes", "16Bytes", 0 }, - { "StructMemberAlignment", "", "Default", "Default", 0 }, - - { "EnableEnhancedInstructionSet", "arch:SSE", "Streaming SIMD Extensions", - "StreamingSIMDExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:SSE2", "Streaming SIMD Extensions 2", - "StreamingSIMDExtensions2", 0 }, - { "EnableEnhancedInstructionSet", "arch:AVX", "Advanced Vector Extensions", - "AdvancedVectorExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:IA32", "No Enhanced Instructions", - "NoExtensions", 0 }, - { "EnableEnhancedInstructionSet", "", "Not Set", "NotSet", 0 }, - - { "FloatingPointModel", "fp:precise", "Precise", "Precise", 0 }, - { "FloatingPointModel", "fp:strict", "Strict", "Strict", 0 }, - { "FloatingPointModel", "fp:fast", "Fast", "Fast", 0 }, - - { "PrecompiledHeader", "Yc", "Create", "Create", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Yu", "Use", "Use", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Y-", "Not Using Precompiled Headers", "NotUsing", - 0 }, - - { "AssemblerOutput", "", "No Listing", "NoListing", 0 }, - { "AssemblerOutput", "FA", "Assembly-Only Listing", "AssemblyCode", 0 }, - { "AssemblerOutput", "FAc", "Assembly With Machine Code", - "AssemblyAndMachineCode", 0 }, - { "AssemblerOutput", "FAs", "Assembly With Source Code", - "AssemblyAndSourceCode", 0 }, - { "AssemblerOutput", "FAcs", "Assembly, Machine Code and Source", "All", 0 }, - - { "CallingConvention", "Gd", "__cdecl", "Cdecl", 0 }, - { "CallingConvention", "Gr", "__fastcall", "FastCall", 0 }, - { "CallingConvention", "Gz", "__stdcall", "StdCall", 0 }, - - { "CompileAs", "", "Default", "Default", 0 }, - { "CompileAs", "TC", "Compile as C Code", "CompileAsC", 0 }, - { "CompileAs", "TP", "Compile as C++ Code", "CompileAsCpp", 0 }, - - { "ErrorReporting", "errorReport:none", "Do Not Send Report", "None", 0 }, - { "ErrorReporting", "errorReport:prompt", "Prompt Immediately", "Prompt", - 0 }, - { "ErrorReporting", "errorReport:queue", "Queue For Next Login", "Queue", - 0 }, - { "ErrorReporting", "errorReport:send", "Send Automatically", "Send", 0 }, - - { "CompileAsManaged", "", "No Common Language RunTime Support", "false", 0 }, - { "CompileAsManaged", "clr", "Common Language RunTime Support", "true", 0 }, - { "CompileAsManaged", "clr:pure", - "Pure MSIL Common Language RunTime Support", "Pure", 0 }, - { "CompileAsManaged", "clr:safe", - "Safe MSIL Common Language RunTime Support", "Safe", 0 }, - { "CompileAsManaged", "clr:oldSyntax", - "Common Language RunTime Support, Old Syntax", "OldSyntax", 0 }, - - // Bool Properties - { "CompileAsWinRT", "ZW", "", "true", 0 }, - { "WinRTNoStdLib", "ZW:nostdlib", "", "true", 0 }, - { "SuppressStartupBanner", "nologo-", "", "false", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - { "TreatWarningAsError", "WX-", "", "false", 0 }, - { "TreatWarningAsError", "WX", "", "true", 0 }, - { "SDLCheck", "sdl-", "", "false", 0 }, - { "SDLCheck", "sdl", "", "true", 0 }, - { "IntrinsicFunctions", "Oi", "", "true", 0 }, - { "OmitFramePointers", "Oy-", "", "false", 0 }, - { "OmitFramePointers", "Oy", "", "true", 0 }, - { "EnableFiberSafeOptimizations", "GT", "", "true", 0 }, - { "WholeProgramOptimization", "GL", "", "true", 0 }, - { "UndefineAllPreprocessorDefinitions", "u", "", "true", 0 }, - { "IgnoreStandardIncludePath", "X", "", "true", 0 }, - { "PreprocessToFile", "P", "", "true", 0 }, - { "PreprocessSuppressLineNumbers", "EP", "", "true", 0 }, - { "PreprocessKeepComments", "C", "", "true", 0 }, - { "StringPooling", "GF-", "", "false", 0 }, - { "StringPooling", "GF", "", "true", 0 }, - { "MinimalRebuild", "Gm-", "", "false", 0 }, - { "MinimalRebuild", "Gm", "", "true", 0 }, - { "SmallerTypeCheck", "RTCc", "", "true", 0 }, - { "BufferSecurityCheck", "GS-", "", "false", 0 }, - { "BufferSecurityCheck", "GS", "", "true", 0 }, - { "FunctionLevelLinking", "Gy-", "", "false", 0 }, - { "FunctionLevelLinking", "Gy", "", "true", 0 }, - { "EnableParallelCodeGeneration", "Qpar-", "", "false", 0 }, - { "EnableParallelCodeGeneration", "Qpar", "", "true", 0 }, - { "FloatingPointExceptions", "fp:except-", "", "false", 0 }, - { "FloatingPointExceptions", "fp:except", "", "true", 0 }, - { "CreateHotpatchableImage", "hotpatch", "", "true", 0 }, - { "DisableLanguageExtensions", "Za", "", "true", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0 }, - { "RuntimeTypeInfo", "GR-", "", "false", 0 }, - { "RuntimeTypeInfo", "GR", "", "true", 0 }, - { "OpenMPSupport", "openmp-", "", "false", 0 }, - { "OpenMPSupport", "openmp", "", "true", 0 }, - { "ExpandAttributedSource", "Fx", "", "true", 0 }, - { "UseUnicodeForAssemblerListing", "FAu", "", "true", 0 }, - { "ShowIncludes", "showIncludes", "", "true", 0 }, - { "EnablePREfast", "analyze-", "", "false", 0 }, - { "EnablePREfast", "analyze", "", "true", 0 }, - { "UseFullPaths", "FC", "", "true", 0 }, - { "OmitDefaultLibName", "Zl", "", "true", 0 }, - - // Bool Properties With Argument - { "MultiProcessorCompilation", "MP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "ProcessorNumber", "MP", "Multi-processor Compilation", "", - cmVS7FlagTable::UserValueRequired }, - { "GenerateXMLDocumentationFiles", "doc", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "", - cmVS7FlagTable::UserValueRequired }, - { "BrowseInformation", "FR", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "BrowseInformationFile", "FR", "Enable Browse Information", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalIncludeDirectories", "I", "Additional Include Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalUsingDirectories", "AI", "Additional #using Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PreprocessorDefinitions", "D ", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "UndefinePreprocessorDefinitions", "U", - "Undefine Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DisableSpecificWarnings", "wd", "Disable Specific Warnings", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedIncludeFiles", "FI", "Forced Include File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedUsingFiles", "FU", "Forced #using File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PREfastLog", "analyze:log", "Code Analysis Log", "", - cmVS7FlagTable::UserFollowing }, - { "PREfastAdditionalPlugins", "analyze:plugin", - "Additional Code Analysis Native plugins", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "TreatSpecificWarningsAsErrors", "we", "Treat Specific Warnings As Errors", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - // Skip [TrackerLogDirectory] - no command line Switch. - { "PreprocessOutputPath", "Fi", "Preprocess Output Path", "", - cmVS7FlagTable::UserValue }, - { "PrecompiledHeaderFile", "Yc", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderFile", "Yu", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderOutputFile", "Fp", "Precompiled Header Output File", "", - cmVS7FlagTable::UserValue }, - { "AssemblerListingLocation", "Fa", "ASM List Location", "", - cmVS7FlagTable::UserValue }, - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "ProgramDataBaseFileName", "Fd", "Program Database File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [XMLDocumentationFileName] - no command line Switch. - // Skip [BrowseInformationFile] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS11CSharpFlagTable.h b/Source/cmVS11CSharpFlagTable.h deleted file mode 100644 index 18b804a..0000000 --- a/Source/cmVS11CSharpFlagTable.h +++ /dev/null @@ -1,121 +0,0 @@ -static cmVS7FlagTable cmVS11CSharpFlagTable[] = { - { "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired }, - - { "OutputType", "target:exe", "", "Exe", 0 }, - { "OutputType", "target:winexe", "", "Winexe", 0 }, - { "OutputType", "target:library", "", "Library", 0 }, - { "OutputType", "target:module", "", "Module", 0 }, - - { "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired }, - - { "Platform", "platform:x86", "", "x86", 0 }, - { "Platform", "platform:Itanium", "", "Itanium", 0 }, - { "Platform", "platform:x64", "", "x64", 0 }, - { "Platform", "platform:arm", "", "arm", 0 }, - { "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred", - 0 }, - { "Platform", "platform:anycpu", "", "anycpu", 0 }, - - { "References", "reference:", "mit alias", "", 0 }, - { "References", "reference:", "dateiliste", "", 0 }, - { "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable }, - { "", "link", "", "", 0 }, - - { "Win32Resource", "win32res:", "", "", cmIDEFlagTable::UserValueRequired }, - { "ApplicationIcon", "win32icon:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "ApplicationManifest", "win32manifest:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "NoWin32Manifest", "nowin32manifest", "", "true", 0 }, - - { "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue }, - - { "DebugSymbols", "debug", "", "true", 0 }, - { "DebugSymbols", "debug-", "", "false", 0 }, - { "DebugSymbols", "debug+", "", "true", 0 }, - - { "DebugType", "debug:none", "", "none", 0 }, - { "DebugType", "debug:full", "", "full", 0 }, - { "DebugType", "debug:pdbonly", "", "pdbonly", 0 }, - - { "Optimize", "optimize", "", "true", 0 }, - { "Optimize", "optimize-", "", "false", 0 }, - { "Optimize", "optimize+", "", "true", 0 }, - - { "TreatWarningsAsErrors", "warnaserror", "", "true", 0 }, - { "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 }, - { "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 }, - - { "WarningsAsErrors", "warnaserror", "", "", 0 }, - { "WarningsAsErrors", "warnaserror-", "", "", 0 }, - { "WarningsAsErrors", "warnaserror+", "", "", 0 }, - - { "WarningLevel", "warn:0", "", "0", 0 }, - { "WarningLevel", "warn:1", "", "1", 0 }, - { "WarningLevel", "warn:2", "", "2", 0 }, - { "WarningLevel", "warn:3", "", "3", 0 }, - { "WarningLevel", "warn:4", "", "4", 0 }, - { "DisabledWarnings", "nowarn", "", "", 0 }, - - { "CheckForOverflowUnderflow", "checked", "", "true", 0 }, - { "CheckForOverflowUnderflow", "checked-", "", "false", 0 }, - { "CheckForOverflowUnderflow", "checked+", "", "true", 0 }, - - { "AllowUnsafeBlocks", "unsafe", "", "true", 0 }, - { "AllowUnsafeBlocks", "unsafe-", "", "false", 0 }, - { "AllowUnsafeBlocks", "unsafe+", "", "true", 0 }, - - { "DefineConstants", "define:", "", "", - cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue }, - - { "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 }, - { "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 }, - { "LangVersion", "langversion:3", "", "3", 0 }, - { "LangVersion", "langversion:4", "", "4", 0 }, - { "LangVersion", "langversion:5", "", "5", 0 }, - { "LangVersion", "langversion:6", "", "6", 0 }, - { "LangVersion", "langversion:default", "", "default", 0 }, - - { "DelaySign", "delaysign", "", "true", 0 }, - { "DelaySign", "delaysign-", "", "false", 0 }, - { "DelaySign", "delaysign+", "", "true", 0 }, - - { "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 }, - - { "KeyContainerName", "keycontainer", "", "", 0 }, - - { "NoLogo", "nologo", "", "", 0 }, - - { "NoConfig", "noconfig", "", "true", 0 }, - - { "BaseAddress", "baseaddress:", "", "", 0 }, - - { "CodePage", "codepage", "", "", 0 }, - - { "Utf8Output", "utf8output", "", "", 0 }, - - { "MainEntryPoint", "main:", "", "", 0 }, - - { "GenerateFullPaths", "fullpaths", "", "true", 0 }, - - { "FileAlignment", "filealign", "", "", 0 }, - - { "PdbFile", "pdb:", "", "", 0 }, - - { "NoStandardLib", "nostdlib", "", "true", 0 }, - { "NoStandardLib", "nostdlib-", "", "false", 0 }, - { "NoStandardLib", "nostdlib+", "", "true", 0 }, - - { "SubsystemVersion", "subsystemversion", "", "", 0 }, - - { "AdditionalLibPaths", "lib:", "", "", 0 }, - - { "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 }, - { "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 }, - { "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 }, - { "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 }, - - { 0, 0, 0, 0, 0 }, -}; diff --git a/Source/cmVS11LibFlagTable.h b/Source/cmVS11LibFlagTable.h deleted file mode 100644 index 15c8ddd..0000000 --- a/Source/cmVS11LibFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS11LibFlagTable[] = { - - // Enum Properties - { "ErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "ErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "ErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "ErrorReporting", "ERRORREPORT:NONE", "No Error Report", "NoErrorReport", - 0 }, - - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - // Bool Properties - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "TreatLibWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLibWarningAsErrors", "WX", "", "true", 0 }, - { "Verbose", "VERBOSE", "", "true", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - // Skip [AdditionalDependencies] - no command line Switch. - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ExportNamedFunctions", "EXPORT:", "Export Named Functions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "RemoveObjects", "REMOVE:", "Remove Objects", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "ModuleDefinitionFile", "DEF:", "Module Definition File Name", "", - cmVS7FlagTable::UserValue }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue }, - { "DisplayLibrary", "LIST:", "Display Library to standard output", "", - cmVS7FlagTable::UserValue }, - // Skip [MinimumRequiredVersion] - no command line Switch. - { "Name", "NAME:", "Name", "", cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - // Skip [TrackerLogDirectory] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS11LinkFlagTable.h b/Source/cmVS11LinkFlagTable.h deleted file mode 100644 index 53f1139..0000000 --- a/Source/cmVS11LinkFlagTable.h +++ /dev/null @@ -1,272 +0,0 @@ -static cmVS7FlagTable cmVS11LinkFlagTable[] = { - - // Enum Properties - { "ShowProgress", "", "Not Set", "NotSet", 0 }, - { "ShowProgress", "VERBOSE", "Display all progress messages", "LinkVerbose", - 0 }, - { "ShowProgress", "VERBOSE:Lib", "For Libraries Searched", "LinkVerboseLib", - 0 }, - { "ShowProgress", "VERBOSE:ICF", - "About COMDAT folding during optimized linking", "LinkVerboseICF", 0 }, - { "ShowProgress", "VERBOSE:REF", - "About data removed during optimized linking", "LinkVerboseREF", 0 }, - { "ShowProgress", "VERBOSE:SAFESEH", "About Modules incompatible with SEH", - "LinkVerboseSAFESEH", 0 }, - { "ShowProgress", "VERBOSE:CLR", - "About linker activity related to managed code", "LinkVerboseCLR", 0 }, - - { "ForceFileOutput", "FORCE", "Enabled", "Enabled", 0 }, - { "ForceFileOutput", "FORCE:MULTIPLE", "Multiply Defined Symbol Only", - "MultiplyDefinedSymbolOnly", 0 }, - { "ForceFileOutput", "FORCE:UNRESOLVED", "Undefined Symbol Only", - "UndefinedSymbolOnly", 0 }, - - { "CreateHotPatchableImage", "FUNCTIONPADMIN", "Enabled", "Enabled", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:5", "X86 Image Only", - "X86Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:6", "X64 Image Only", - "X64Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:16", "Itanium Image Only", - "ItaniumImage", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACExecutionLevel", "level='asInvoker'", "asInvoker", "AsInvoker", 0 }, - { "UACExecutionLevel", "level='highestAvailable'", "highestAvailable", - "HighestAvailable", 0 }, - { "UACExecutionLevel", "level='requireAdministrator'", - "requireAdministrator", "RequireAdministrator", 0 }, - - { "SubSystem", "", "Not Set", "NotSet", 0 }, - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - { "Driver", "", "Not Set", "NotSet", 0 }, - { "Driver", "Driver", "Driver", "Driver", 0 }, - { "Driver", "DRIVER:UPONLY", "UP Only", "UpOnly", 0 }, - { "Driver", "DRIVER:WDM", "WDM", "WDM", 0 }, - - { "LinkTimeCodeGeneration", "", "Default", "Default", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "Use Link Time Code Generation", - "UseLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGInstrument", - "Profile Guided Optimization - Instrument", "PGInstrument", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGOptimize", - "Profile Guided Optimization - Optimization", "PGOptimization", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGUpdate", - "Profile Guided Optimization - Update", "PGUpdate", 0 }, - - { "GenerateWindowsMetadata", "WINMD", "Yes", "true", 0 }, - { "GenerateWindowsMetadata", "WINMD:NO", "No", "false", 0 }, - - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "TargetMachine", "", "Not Set", "NotSet", 0 }, - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA", "MTA threading attribute", - "MTAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA", "STA threading attribute", - "STAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE", - "Default threading attribute", "DefaultThreadingAttribute", 0 }, - - { "CLRImageType", "CLRIMAGETYPE:IJW", "Force IJW image", "ForceIJWImage", - 0 }, - { "CLRImageType", "CLRIMAGETYPE:PURE", "Force Pure IL Image", - "ForcePureILImage", 0 }, - { "CLRImageType", "CLRIMAGETYPE:SAFE", "Force Safe IL Image", - "ForceSafeILImage", 0 }, - { "CLRImageType", "", "Default image type", "Default", 0 }, - - { "SignHash", "CLRSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "SignHash", "CLRSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "SignHash", "CLRSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "SignHash", "CLRSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "LinkErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "LinkErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "LinkErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "LinkErrorReporting", "ERRORREPORT:NONE", "No Error Report", - "NoErrorReport", 0 }, - - { "CLRSupportLastError", "CLRSupportLastError", "Enabled", "Enabled", 0 }, - { "CLRSupportLastError", "CLRSupportLastError:NO", "Disabled", "Disabled", - 0 }, - { "CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL", "System Dlls Only", - "SystemDlls", 0 }, - - // Bool Properties - { "LinkIncremental", "INCREMENTAL:NO", "", "false", 0 }, - { "LinkIncremental", "INCREMENTAL", "", "true", 0 }, - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "LinkStatus", "LTCG:NOSTATUS", "", "false", 0 }, - { "LinkStatus", "LTCG:STATUS", "", "true", 0 }, - { "PreventDllBinding", "ALLOWBIND:NO", "", "false", 0 }, - { "PreventDllBinding", "ALLOWBIND", "", "true", 0 }, - { "TreatLinkerWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLinkerWarningAsErrors", "WX", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "GenerateManifest", "MANIFEST:NO", "", "false", 0 }, - { "GenerateManifest", "MANIFEST", "", "true", 0 }, - { "AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACUIAccess", "uiAccess='false'", "", "false", 0 }, - { "UACUIAccess", "uiAccess='true'", "", "true", 0 }, - - { "ManifestEmbed", "manifest:embed", "", "true", 0 }, - { "GenerateDebugInformation", "DEBUG", "", "true", - cmVS7FlagTable::CaseInsensitive }, - { "MapExports", "MAPINFO:EXPORTS", "", "true", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE:NO", "", "false", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE", "", "true", 0 }, - { "TerminalServerAware", "TSAWARE:NO", "", "false", 0 }, - { "TerminalServerAware", "TSAWARE", "", "true", 0 }, - { "SwapRunFromCD", "SWAPRUN:CD", "", "true", 0 }, - { "SwapRunFromNET", "SWAPRUN:NET", "", "true", 0 }, - { "OptimizeReferences", "OPT:NOREF", "", "false", 0 }, - { "OptimizeReferences", "OPT:REF", "", "true", 0 }, - { "EnableCOMDATFolding", "OPT:NOICF", "", "false", 0 }, - { "EnableCOMDATFolding", "OPT:ICF", "", "true", 0 }, - { "IgnoreEmbeddedIDL", "IGNOREIDL", "", "true", 0 }, - { "AppContainer", "APPCONTAINER", "", "true", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN:NO", "", "false", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN", "", "true", 0 }, - { "NoEntryPoint", "NOENTRY", "", "true", 0 }, - { "SetChecksum", "RELEASE", "", "true", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE:NO", "", "false", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE", "", "true", 0 }, - { "FixedBaseAddress", "FIXED:NO", "", "false", 0 }, - { "FixedBaseAddress", "FIXED", "", "true", 0 }, - { "DataExecutionPrevention", "NXCOMPAT:NO", "", "false", 0 }, - { "DataExecutionPrevention", "NXCOMPAT", "", "true", 0 }, - { "TurnOffAssemblyGeneration", "NOASSEMBLY", "", "true", 0 }, - { "SupportUnloadOfDelayLoadedDLL", "DELAY:UNLOAD", "", "true", 0 }, - { "SupportNobindOfDelayLoadedDLL", "DELAY:NOBIND", "", "true", 0 }, - { "Profile", "PROFILE", "", "true", 0 }, - { "LinkDelaySign", "DELAYSIGN:NO", "", "false", 0 }, - { "LinkDelaySign", "DELAYSIGN", "", "true", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK:NO", "", "false", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK", "", "true", 0 }, - { "DetectOneDefinitionRule", "ODR", "", "true", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH:NO", "", "false", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH", "", "true", 0 }, - { "LinkDLL", "DLL", "", "true", 0 }, - - // Bool Properties With Argument - { "EnableUAC", "MANIFESTUAC:", "", "", - cmVS7FlagTable::UserValueRequired | cmVS7FlagTable::SpaceAppendable }, - { "GenerateMapFile", "MAP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "MapFileName", "MAP:", "Generate Map File", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AddModuleNamesToAssembly", "ASSEMBLYMODULE:", "Add Module to Assembly", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "EmbedManagedResourceFile", - "ASSEMBLYRESOURCE:", "Embed Managed Resource File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DelayLoadDLLs", "DELAYLOAD:", "Delay Loaded Dlls", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:", "Assembly Link Resource", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalManifestDependencies", - "MANIFESTDEPENDENCY:", "Additional Manifest Dependencies", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ManifestInput", "manifestinput:", "Manifest Input", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "Version", "VERSION:", "Version", "", cmVS7FlagTable::UserValue }, - { "SpecifySectionAttributes", "SECTION:", "Specify Section Attributes", "", - cmVS7FlagTable::UserValue }, - { "MSDOSStubFileName", "STUB:", "MS-DOS Stub File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - { "ModuleDefinitionFile", "DEF:", "Module Definition File", "", - cmVS7FlagTable::UserValue }, - { "ManifestFile", "ManifestFile:", "Manifest File", "", - cmVS7FlagTable::UserValue }, - { "ProgramDatabaseFile", "PDB:", "Generate Program Database File", "", - cmVS7FlagTable::UserValue }, - { "StripPrivateSymbols", "PDBSTRIPPED:", "Strip Private Symbols", "", - cmVS7FlagTable::UserValue }, - // Skip [MapFileName] - no command line Switch. - // Skip [MinimumRequiredVersion] - no command line Switch. - { "HeapReserveSize", "HEAP:", "Heap Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [HeapCommitSize] - no command line Switch. - { "StackReserveSize", "STACK:", "Stack Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [StackCommitSize] - no command line Switch. - { "FunctionOrder", "ORDER:@", "Function Order", "", - cmVS7FlagTable::UserValue }, - { "ProfileGuidedDatabase", "PGD:", "Profile Guided Database", "", - cmVS7FlagTable::UserValue }, - { "MidlCommandFile", "MIDL:@", "MIDL Commands", "", - cmVS7FlagTable::UserValue }, - { "MergedIDLBaseFileName", "IDLOUT:", "Merged IDL Base File Name", "", - cmVS7FlagTable::UserValue }, - { "TypeLibraryFile", "TLBOUT:", "Type Library", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataFile", "WINMDFILE:", "Windows Metadata File", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataLinkKeyFile", "WINMDKEYFILE:", "Windows Metadata Key File", - "", cmVS7FlagTable::UserValue }, - { "WindowsMetadataKeyContainer", "WINMDKEYCONTAINER:", - "Windows Metadata Key Container", "", cmVS7FlagTable::UserValue }, - { "EntryPointSymbol", "ENTRY:", "Entry Point", "", - cmVS7FlagTable::UserValue }, - { "BaseAddress", "BASE:", "Base Address", "", cmVS7FlagTable::UserValue }, - { "ImportLibrary", "IMPLIB:", "Import Library", "", - cmVS7FlagTable::UserValue }, - { "MergeSections", "MERGE:", "Merge Sections", "", - cmVS7FlagTable::UserValue }, - { "LinkKeyFile", "KEYFILE:", "Key File", "", cmVS7FlagTable::UserValue }, - { "KeyContainer", "KEYCONTAINER:", "Key Container", "", - cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS11MASMFlagTable.h b/Source/cmVS11MASMFlagTable.h deleted file mode 100644 index fdf8239..0000000 --- a/Source/cmVS11MASMFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS11MASMFlagTable[] = { - - // Enum Properties - { "PreserveIdentifierCase", "", "Default", "0", 0 }, - { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1", - 0 }, - { "PreserveIdentifierCase", "Cu", - "Maps all identifiers to upper case. (/Cu)", "2", 0 }, - { "PreserveIdentifierCase", "Cx", - "Preserves case in public and extern symbols. (/Cx)", "3", 0 }, - - { "WarningLevel", "W0", "Warning Level 0 (/W0)", "0", 0 }, - { "WarningLevel", "W1", "Warning Level 1 (/W1)", "1", 0 }, - { "WarningLevel", "W2", "Warning Level 2 (/W2)", "2", 0 }, - { "WarningLevel", "W3", "Warning Level 3 (/W3)", "3", 0 }, - - { "PackAlignmentBoundary", "", "Default", "0", 0 }, - { "PackAlignmentBoundary", "Zp1", "One Byte Boundary (/Zp1)", "1", 0 }, - { "PackAlignmentBoundary", "Zp2", "Two Byte Boundary (/Zp2)", "2", 0 }, - { "PackAlignmentBoundary", "Zp4", "Four Byte Boundary (/Zp4)", "3", 0 }, - { "PackAlignmentBoundary", "Zp8", "Eight Byte Boundary (/Zp8)", "4", 0 }, - { "PackAlignmentBoundary", "Zp16", "Sixteen Byte Boundary (/Zp16)", "5", 0 }, - - { "CallingConvention", "", "Default", "0", 0 }, - { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1", - 0 }, - { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2", - 0 }, - { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 }, - - { "ErrorReporting", "errorReport:prompt", - "Prompt to send report immediately (/errorReport:prompt)", "0", 0 }, - { "ErrorReporting", "errorReport:queue", - "Prompt to send report at the next logon (/errorReport:queue)", "1", 0 }, - { "ErrorReporting", "errorReport:send", - "Automatically send report (/errorReport:send)", "2", 0 }, - { "ErrorReporting", "errorReport:none", - "Do not send report (/errorReport:none)", "3", 0 }, - - // Bool Properties - { "NoLogo", "nologo", "", "true", 0 }, - { "GeneratePreprocessedSourceListing", "EP", "", "true", 0 }, - { "ListAllAvailableInformation", "Sa", "", "true", 0 }, - { "UseSafeExceptionHandlers", "safeseh", "", "true", 0 }, - { "AddFirstPassListing", "Sf", "", "true", 0 }, - { "EnableAssemblyGeneratedCodeListing", "Sg", "", "true", 0 }, - { "DisableSymbolTable", "Sn", "", "true", 0 }, - { "EnableFalseConditionalsInListing", "Sx", "", "true", 0 }, - { "TreatWarningsAsErrors", "WX", "", "true", 0 }, - { "MakeAllSymbolsPublic", "Zf", "", "true", 0 }, - { "GenerateDebugInformation", "Zi", "", "true", 0 }, - { "EnableMASM51Compatibility", "Zm", "", "true", 0 }, - { "PerformSyntaxCheckOnly", "Zs", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IncludePaths", "I", "Include Paths", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "BrowseFile", "FR", "Generate Browse Information File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - - // String Properties - // Skip [Inputs] - no command line Switch. - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "", - cmVS7FlagTable::UserValue }, - // Skip [CommandLineTemplate] - no command line Switch. - // Skip [ExecutionDescription] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS11RCFlagTable.h b/Source/cmVS11RCFlagTable.h deleted file mode 100644 index 4997fe1..0000000 --- a/Source/cmVS11RCFlagTable.h +++ /dev/null @@ -1,7 +0,0 @@ -static cmVS7FlagTable cmVS11RCFlagTable[] = { - // Bool Properties - { "NullTerminateStrings", "n", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS12CLFlagTable.h b/Source/cmVS12CLFlagTable.h deleted file mode 100644 index a4f2518..0000000 --- a/Source/cmVS12CLFlagTable.h +++ /dev/null @@ -1,222 +0,0 @@ -static cmVS7FlagTable cmVS12CLFlagTable[] = { - - // Enum Properties - { "DebugInformationFormat", "", "None", "None", 0 }, - { "DebugInformationFormat", "Z7", "C7 compatible", "OldStyle", 0 }, - { "DebugInformationFormat", "Zi", "Program Database", "ProgramDatabase", 0 }, - { "DebugInformationFormat", "ZI", "Program Database for Edit And Continue", - "EditAndContinue", 0 }, - - { "WarningLevel", "W0", "Turn Off All Warnings", "TurnOffAllWarnings", 0 }, - { "WarningLevel", "W1", "Level1", "Level1", 0 }, - { "WarningLevel", "W2", "Level2", "Level2", 0 }, - { "WarningLevel", "W3", "Level3", "Level3", 0 }, - { "WarningLevel", "W4", "Level4", "Level4", 0 }, - { "WarningLevel", "Wall", "EnableAllWarnings", "EnableAllWarnings", 0 }, - - { "Optimization", "", "Custom", "Custom", 0 }, - { "Optimization", "Od", "Disabled", "Disabled", 0 }, - { "Optimization", "O1", "Minimize Size", "MinSpace", 0 }, - { "Optimization", "O2", "Maximize Speed", "MaxSpeed", 0 }, - { "Optimization", "Ox", "Full Optimization", "Full", 0 }, - - { "InlineFunctionExpansion", "", "Default", "Default", 0 }, - { "InlineFunctionExpansion", "Ob0", "Disabled", "Disabled", 0 }, - { "InlineFunctionExpansion", "Ob1", "Only __inline", "OnlyExplicitInline", - 0 }, - { "InlineFunctionExpansion", "Ob2", "Any Suitable", "AnySuitable", 0 }, - - { "FavorSizeOrSpeed", "Os", "Favor small code", "Size", 0 }, - { "FavorSizeOrSpeed", "Ot", "Favor fast code", "Speed", 0 }, - { "FavorSizeOrSpeed", "", "Neither", "Neither", 0 }, - - { "ExceptionHandling", "EHa", "Yes with SEH Exceptions", "Async", 0 }, - { "ExceptionHandling", "EHsc", "Yes", "Sync", 0 }, - { "ExceptionHandling", "EHs", "Yes with Extern C functions", "SyncCThrow", - 0 }, - { "ExceptionHandling", "", "No", "false", 0 }, - - { "BasicRuntimeChecks", "RTCs", "Stack Frames", "StackFrameRuntimeCheck", - 0 }, - { "BasicRuntimeChecks", "RTCu", "Uninitialized variables", - "UninitializedLocalUsageCheck", 0 }, - { "BasicRuntimeChecks", "RTC1", "Both (/RTC1, equiv. to /RTCsu)", - "EnableFastChecks", 0 }, - { "BasicRuntimeChecks", "", "Default", "Default", 0 }, - - { "RuntimeLibrary", "MT", "Multi-threaded", "MultiThreaded", 0 }, - { "RuntimeLibrary", "MTd", "Multi-threaded Debug", "MultiThreadedDebug", 0 }, - { "RuntimeLibrary", "MD", "Multi-threaded DLL", "MultiThreadedDLL", 0 }, - { "RuntimeLibrary", "MDd", "Multi-threaded Debug DLL", - "MultiThreadedDebugDLL", 0 }, - - { "StructMemberAlignment", "Zp1", "1 Byte", "1Byte", 0 }, - { "StructMemberAlignment", "Zp2", "2 Bytes", "2Bytes", 0 }, - { "StructMemberAlignment", "Zp4", "4 Byte", "4Bytes", 0 }, - { "StructMemberAlignment", "Zp8", "8 Bytes", "8Bytes", 0 }, - { "StructMemberAlignment", "Zp16", "16 Bytes", "16Bytes", 0 }, - { "StructMemberAlignment", "", "Default", "Default", 0 }, - - { "BufferSecurityCheck", "GS-", "Disable Security Check", "false", 0 }, - { "BufferSecurityCheck", "GS", "Enable Security Check", "true", 0 }, - - { "EnableEnhancedInstructionSet", "arch:SSE", "Streaming SIMD Extensions", - "StreamingSIMDExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:SSE2", "Streaming SIMD Extensions 2", - "StreamingSIMDExtensions2", 0 }, - { "EnableEnhancedInstructionSet", "arch:AVX", "Advanced Vector Extensions", - "AdvancedVectorExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:IA32", "No Enhanced Instructions", - "NoExtensions", 0 }, - { "EnableEnhancedInstructionSet", "", "Not Set", "NotSet", 0 }, - - { "FloatingPointModel", "fp:precise", "Precise", "Precise", 0 }, - { "FloatingPointModel", "fp:strict", "Strict", "Strict", 0 }, - { "FloatingPointModel", "fp:fast", "Fast", "Fast", 0 }, - - { "PrecompiledHeader", "Yc", "Create", "Create", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Yu", "Use", "Use", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Y-", "Not Using Precompiled Headers", "NotUsing", - 0 }, - - { "AssemblerOutput", "", "No Listing", "NoListing", 0 }, - { "AssemblerOutput", "FA", "Assembly-Only Listing", "AssemblyCode", 0 }, - { "AssemblerOutput", "FAc", "Assembly With Machine Code", - "AssemblyAndMachineCode", 0 }, - { "AssemblerOutput", "FAs", "Assembly With Source Code", - "AssemblyAndSourceCode", 0 }, - { "AssemblerOutput", "FAcs", "Assembly, Machine Code and Source", "All", 0 }, - - { "CallingConvention", "Gd", "__cdecl", "Cdecl", 0 }, - { "CallingConvention", "Gr", "__fastcall", "FastCall", 0 }, - { "CallingConvention", "Gz", "__stdcall", "StdCall", 0 }, - { "CallingConvention", "Gv", "__vectorcall", "VectorCall", 0 }, - - { "CompileAs", "", "Default", "Default", 0 }, - { "CompileAs", "TC", "Compile as C Code", "CompileAsC", 0 }, - { "CompileAs", "TP", "Compile as C++ Code", "CompileAsCpp", 0 }, - - { "ErrorReporting", "errorReport:none", "Do Not Send Report", "None", 0 }, - { "ErrorReporting", "errorReport:prompt", "Prompt Immediately", "Prompt", - 0 }, - { "ErrorReporting", "errorReport:queue", "Queue For Next Login", "Queue", - 0 }, - { "ErrorReporting", "errorReport:send", "Send Automatically", "Send", 0 }, - - { "CompileAsManaged", "", "No Common Language RunTime Support", "false", 0 }, - { "CompileAsManaged", "clr", "Common Language RunTime Support", "true", 0 }, - { "CompileAsManaged", "clr:pure", - "Pure MSIL Common Language RunTime Support", "Pure", 0 }, - { "CompileAsManaged", "clr:safe", - "Safe MSIL Common Language RunTime Support", "Safe", 0 }, - { "CompileAsManaged", "clr:oldSyntax", - "Common Language RunTime Support, Old Syntax", "OldSyntax", 0 }, - - // Bool Properties - { "CompileAsWinRT", "ZW", "", "true", 0 }, - { "WinRTNoStdLib", "ZW:nostdlib", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - { "TreatWarningAsError", "WX-", "", "false", 0 }, - { "TreatWarningAsError", "WX", "", "true", 0 }, - { "SDLCheck", "sdl-", "", "false", 0 }, - { "SDLCheck", "sdl", "", "true", 0 }, - { "IntrinsicFunctions", "Oi", "", "true", 0 }, - { "OmitFramePointers", "Oy-", "", "false", 0 }, - { "OmitFramePointers", "Oy", "", "true", 0 }, - { "EnableFiberSafeOptimizations", "GT", "", "true", 0 }, - { "WholeProgramOptimization", "GL", "", "true", 0 }, - { "UndefineAllPreprocessorDefinitions", "u", "", "true", 0 }, - { "IgnoreStandardIncludePath", "X", "", "true", 0 }, - { "PreprocessToFile", "P", "", "true", 0 }, - { "PreprocessSuppressLineNumbers", "EP", "", "true", 0 }, - { "PreprocessKeepComments", "C", "", "true", 0 }, - { "StringPooling", "GF-", "", "false", 0 }, - { "StringPooling", "GF", "", "true", 0 }, - { "MinimalRebuild", "Gm-", "", "false", 0 }, - { "MinimalRebuild", "Gm", "", "true", 0 }, - { "SmallerTypeCheck", "RTCc", "", "true", 0 }, - { "FunctionLevelLinking", "Gy-", "", "false", 0 }, - { "FunctionLevelLinking", "Gy", "", "true", 0 }, - { "EnableParallelCodeGeneration", "Qpar-", "", "false", 0 }, - { "EnableParallelCodeGeneration", "Qpar", "", "true", 0 }, - { "FloatingPointExceptions", "fp:except-", "", "false", 0 }, - { "FloatingPointExceptions", "fp:except", "", "true", 0 }, - { "CreateHotpatchableImage", "hotpatch", "", "true", 0 }, - { "DisableLanguageExtensions", "Za", "", "true", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0 }, - { "RuntimeTypeInfo", "GR-", "", "false", 0 }, - { "RuntimeTypeInfo", "GR", "", "true", 0 }, - { "OpenMPSupport", "openmp-", "", "false", 0 }, - { "OpenMPSupport", "openmp", "", "true", 0 }, - { "ExpandAttributedSource", "Fx", "", "true", 0 }, - { "UseUnicodeForAssemblerListing", "FAu", "", "true", 0 }, - { "ShowIncludes", "showIncludes", "", "true", 0 }, - { "EnablePREfast", "analyze-", "", "false", 0 }, - { "EnablePREfast", "analyze", "", "true", 0 }, - { "UseFullPaths", "FC", "", "true", 0 }, - { "OmitDefaultLibName", "Zl", "", "true", 0 }, - - // Bool Properties With Argument - { "MultiProcessorCompilation", "MP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "ProcessorNumber", "MP", "Multi-processor Compilation", "", - cmVS7FlagTable::UserValueRequired }, - { "GenerateXMLDocumentationFiles", "doc", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "", - cmVS7FlagTable::UserValueRequired }, - { "BrowseInformation", "FR", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "BrowseInformationFile", "FR", "Enable Browse Information", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalIncludeDirectories", "I", "Additional Include Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalUsingDirectories", "AI", "Additional #using Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PreprocessorDefinitions", "D ", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "UndefinePreprocessorDefinitions", "U", - "Undefine Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DisableSpecificWarnings", "wd", "Disable Specific Warnings", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedIncludeFiles", "FI", "Forced Include File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedUsingFiles", "FU", "Forced #using File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PREfastLog", "analyze:log", "Code Analysis Log", "", - cmVS7FlagTable::UserFollowing }, - { "PREfastAdditionalPlugins", "analyze:plugin", - "Additional Code Analysis Native plugins", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "TreatSpecificWarningsAsErrors", "we", "Treat Specific Warnings As Errors", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - // Skip [TrackerLogDirectory] - no command line Switch. - { "PreprocessOutputPath", "Fi", "Preprocess Output Path", "", - cmVS7FlagTable::UserValue }, - { "PrecompiledHeaderFile", "Yc", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderFile", "Yu", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderOutputFile", "Fp", "Precompiled Header Output File", "", - cmVS7FlagTable::UserValue }, - { "AssemblerListingLocation", "Fa", "ASM List Location", "", - cmVS7FlagTable::UserValue }, - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "ProgramDataBaseFileName", "Fd", "Program Database File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [XMLDocumentationFileName] - no command line Switch. - // Skip [BrowseInformationFile] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS12CSharpFlagTable.h b/Source/cmVS12CSharpFlagTable.h deleted file mode 100644 index 0370499..0000000 --- a/Source/cmVS12CSharpFlagTable.h +++ /dev/null @@ -1,121 +0,0 @@ -static cmVS7FlagTable cmVS12CSharpFlagTable[] = { - { "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired }, - - { "OutputType", "target:exe", "", "Exe", 0 }, - { "OutputType", "target:winexe", "", "Winexe", 0 }, - { "OutputType", "target:library", "", "Library", 0 }, - { "OutputType", "target:module", "", "Module", 0 }, - - { "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired }, - - { "Platform", "platform:x86", "", "x86", 0 }, - { "Platform", "platform:Itanium", "", "Itanium", 0 }, - { "Platform", "platform:x64", "", "x64", 0 }, - { "Platform", "platform:arm", "", "arm", 0 }, - { "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred", - 0 }, - { "Platform", "platform:anycpu", "", "anycpu", 0 }, - - { "References", "reference:", "mit alias", "", 0 }, - { "References", "reference:", "dateiliste", "", 0 }, - { "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable }, - { "", "link", "", "", 0 }, - - { "Win32Resource", "win32res:", "", "", cmIDEFlagTable::UserValueRequired }, - { "ApplicationIcon", "win32icon:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "ApplicationManifest", "win32manifest:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "NoWin32Manifest", "nowin32manifest", "", "true", 0 }, - - { "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue }, - - { "DebugSymbols", "debug", "", "true", 0 }, - { "DebugSymbols", "debug-", "", "false", 0 }, - { "DebugSymbols", "debug+", "", "true", 0 }, - - { "DebugType", "debug:none", "", "none", 0 }, - { "DebugType", "debug:full", "", "full", 0 }, - { "DebugType", "debug:pdbonly", "", "pdbonly", 0 }, - - { "Optimize", "optimize", "", "true", 0 }, - { "Optimize", "optimize-", "", "false", 0 }, - { "Optimize", "optimize+", "", "true", 0 }, - - { "TreatWarningsAsErrors", "warnaserror", "", "true", 0 }, - { "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 }, - { "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 }, - - { "WarningsAsErrors", "warnaserror", "", "", 0 }, - { "WarningsAsErrors", "warnaserror-", "", "", 0 }, - { "WarningsAsErrors", "warnaserror+", "", "", 0 }, - - { "WarningLevel", "warn:0", "", "0", 0 }, - { "WarningLevel", "warn:1", "", "1", 0 }, - { "WarningLevel", "warn:2", "", "2", 0 }, - { "WarningLevel", "warn:3", "", "3", 0 }, - { "WarningLevel", "warn:4", "", "4", 0 }, - { "DisabledWarnings", "nowarn", "", "", 0 }, - - { "CheckForOverflowUnderflow", "checked", "", "true", 0 }, - { "CheckForOverflowUnderflow", "checked-", "", "false", 0 }, - { "CheckForOverflowUnderflow", "checked+", "", "true", 0 }, - - { "AllowUnsafeBlocks", "unsafe", "", "true", 0 }, - { "AllowUnsafeBlocks", "unsafe-", "", "false", 0 }, - { "AllowUnsafeBlocks", "unsafe+", "", "true", 0 }, - - { "DefineConstants", "define:", "", "", - cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue }, - - { "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 }, - { "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 }, - { "LangVersion", "langversion:3", "", "3", 0 }, - { "LangVersion", "langversion:4", "", "4", 0 }, - { "LangVersion", "langversion:5", "", "5", 0 }, - { "LangVersion", "langversion:6", "", "6", 0 }, - { "LangVersion", "langversion:default", "", "default", 0 }, - - { "DelaySign", "delaysign", "", "true", 0 }, - { "DelaySign", "delaysign-", "", "false", 0 }, - { "DelaySign", "delaysign+", "", "true", 0 }, - - { "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 }, - - { "KeyContainerName", "keycontainer", "", "", 0 }, - - { "NoLogo", "nologo", "", "", 0 }, - - { "NoConfig", "noconfig", "", "true", 0 }, - - { "BaseAddress", "baseaddress:", "", "", 0 }, - - { "CodePage", "codepage", "", "", 0 }, - - { "Utf8Output", "utf8output", "", "", 0 }, - - { "MainEntryPoint", "main:", "", "", 0 }, - - { "GenerateFullPaths", "fullpaths", "", "true", 0 }, - - { "FileAlignment", "filealign", "", "", 0 }, - - { "PdbFile", "pdb:", "", "", 0 }, - - { "NoStandardLib", "nostdlib", "", "true", 0 }, - { "NoStandardLib", "nostdlib-", "", "false", 0 }, - { "NoStandardLib", "nostdlib+", "", "true", 0 }, - - { "SubsystemVersion", "subsystemversion", "", "", 0 }, - - { "AdditionalLibPaths", "lib:", "", "", 0 }, - - { "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 }, - { "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 }, - { "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 }, - { "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 }, - - { 0, 0, 0, 0, 0 }, -}; diff --git a/Source/cmVS12LibFlagTable.h b/Source/cmVS12LibFlagTable.h deleted file mode 100644 index 2229b97..0000000 --- a/Source/cmVS12LibFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS12LibFlagTable[] = { - - // Enum Properties - { "ErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "ErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "ErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "ErrorReporting", "ERRORREPORT:NONE", "No Error Report", "NoErrorReport", - 0 }, - - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - // Bool Properties - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "TreatLibWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLibWarningAsErrors", "WX", "", "true", 0 }, - { "Verbose", "VERBOSE", "", "true", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - // Skip [AdditionalDependencies] - no command line Switch. - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ExportNamedFunctions", "EXPORT:", "Export Named Functions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "RemoveObjects", "REMOVE:", "Remove Objects", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "ModuleDefinitionFile", "DEF:", "Module Definition File Name", "", - cmVS7FlagTable::UserValue }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue }, - { "DisplayLibrary", "LIST:", "Display Library to standard output", "", - cmVS7FlagTable::UserValue }, - // Skip [MinimumRequiredVersion] - no command line Switch. - { "Name", "NAME:", "Name", "", cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - // Skip [TrackerLogDirectory] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS12LinkFlagTable.h b/Source/cmVS12LinkFlagTable.h deleted file mode 100644 index ddc3ea1..0000000 --- a/Source/cmVS12LinkFlagTable.h +++ /dev/null @@ -1,272 +0,0 @@ -static cmVS7FlagTable cmVS12LinkFlagTable[] = { - - // Enum Properties - { "ShowProgress", "", "Not Set", "NotSet", 0 }, - { "ShowProgress", "VERBOSE", "Display all progress messages", "LinkVerbose", - 0 }, - { "ShowProgress", "VERBOSE:Lib", "For Libraries Searched", "LinkVerboseLib", - 0 }, - { "ShowProgress", "VERBOSE:ICF", - "About COMDAT folding during optimized linking", "LinkVerboseICF", 0 }, - { "ShowProgress", "VERBOSE:REF", - "About data removed during optimized linking", "LinkVerboseREF", 0 }, - { "ShowProgress", "VERBOSE:SAFESEH", "About Modules incompatible with SEH", - "LinkVerboseSAFESEH", 0 }, - { "ShowProgress", "VERBOSE:CLR", - "About linker activity related to managed code", "LinkVerboseCLR", 0 }, - - { "ForceFileOutput", "FORCE", "Enabled", "Enabled", 0 }, - { "ForceFileOutput", "FORCE:MULTIPLE", "Multiply Defined Symbol Only", - "MultiplyDefinedSymbolOnly", 0 }, - { "ForceFileOutput", "FORCE:UNRESOLVED", "Undefined Symbol Only", - "UndefinedSymbolOnly", 0 }, - - { "CreateHotPatchableImage", "FUNCTIONPADMIN", "Enabled", "Enabled", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:5", "X86 Image Only", - "X86Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:6", "X64 Image Only", - "X64Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:16", "Itanium Image Only", - "ItaniumImage", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACExecutionLevel", "level='asInvoker'", "asInvoker", "AsInvoker", 0 }, - { "UACExecutionLevel", "level='highestAvailable'", "highestAvailable", - "HighestAvailable", 0 }, - { "UACExecutionLevel", "level='requireAdministrator'", - "requireAdministrator", "RequireAdministrator", 0 }, - - { "SubSystem", "", "Not Set", "NotSet", 0 }, - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - { "Driver", "", "Not Set", "NotSet", 0 }, - { "Driver", "Driver", "Driver", "Driver", 0 }, - { "Driver", "DRIVER:UPONLY", "UP Only", "UpOnly", 0 }, - { "Driver", "DRIVER:WDM", "WDM", "WDM", 0 }, - - { "LinkTimeCodeGeneration", "", "Default", "Default", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "Use Link Time Code Generation", - "UseLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGInstrument", - "Profile Guided Optimization - Instrument", "PGInstrument", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGOptimize", - "Profile Guided Optimization - Optimization", "PGOptimization", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGUpdate", - "Profile Guided Optimization - Update", "PGUpdate", 0 }, - - { "GenerateWindowsMetadata", "WINMD", "Yes", "true", 0 }, - { "GenerateWindowsMetadata", "WINMD:NO", "No", "false", 0 }, - - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "TargetMachine", "", "Not Set", "NotSet", 0 }, - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA", "MTA threading attribute", - "MTAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA", "STA threading attribute", - "STAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE", - "Default threading attribute", "DefaultThreadingAttribute", 0 }, - - { "CLRImageType", "CLRIMAGETYPE:IJW", "Force IJW image", "ForceIJWImage", - 0 }, - { "CLRImageType", "CLRIMAGETYPE:PURE", "Force Pure IL Image", - "ForcePureILImage", 0 }, - { "CLRImageType", "CLRIMAGETYPE:SAFE", "Force Safe IL Image", - "ForceSafeILImage", 0 }, - { "CLRImageType", "", "Default image type", "Default", 0 }, - - { "SignHash", "CLRSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "SignHash", "CLRSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "SignHash", "CLRSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "SignHash", "CLRSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "LinkErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "LinkErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "LinkErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "LinkErrorReporting", "ERRORREPORT:NONE", "No Error Report", - "NoErrorReport", 0 }, - - { "CLRSupportLastError", "CLRSupportLastError", "Enabled", "Enabled", 0 }, - { "CLRSupportLastError", "CLRSupportLastError:NO", "Disabled", "Disabled", - 0 }, - { "CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL", "System Dlls Only", - "SystemDlls", 0 }, - - // Bool Properties - { "LinkIncremental", "INCREMENTAL:NO", "", "false", 0 }, - { "LinkIncremental", "INCREMENTAL", "", "true", 0 }, - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "LinkStatus", "LTCG:NOSTATUS", "", "false", 0 }, - { "LinkStatus", "LTCG:STATUS", "", "true", 0 }, - { "PreventDllBinding", "ALLOWBIND:NO", "", "false", 0 }, - { "PreventDllBinding", "ALLOWBIND", "", "true", 0 }, - { "TreatLinkerWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLinkerWarningAsErrors", "WX", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "GenerateManifest", "MANIFEST:NO", "", "false", 0 }, - { "GenerateManifest", "MANIFEST", "", "true", 0 }, - { "AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACUIAccess", "uiAccess='false'", "", "false", 0 }, - { "UACUIAccess", "uiAccess='true'", "", "true", 0 }, - - { "ManifestEmbed", "manifest:embed", "", "true", 0 }, - { "GenerateDebugInformation", "DEBUG", "", "true", - cmVS7FlagTable::CaseInsensitive }, - { "MapExports", "MAPINFO:EXPORTS", "", "true", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE:NO", "", "false", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE", "", "true", 0 }, - { "TerminalServerAware", "TSAWARE:NO", "", "false", 0 }, - { "TerminalServerAware", "TSAWARE", "", "true", 0 }, - { "SwapRunFromCD", "SWAPRUN:CD", "", "true", 0 }, - { "SwapRunFromNET", "SWAPRUN:NET", "", "true", 0 }, - { "OptimizeReferences", "OPT:NOREF", "", "false", 0 }, - { "OptimizeReferences", "OPT:REF", "", "true", 0 }, - { "EnableCOMDATFolding", "OPT:NOICF", "", "false", 0 }, - { "EnableCOMDATFolding", "OPT:ICF", "", "true", 0 }, - { "IgnoreEmbeddedIDL", "IGNOREIDL", "", "true", 0 }, - { "AppContainer", "APPCONTAINER", "", "true", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN:NO", "", "false", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN", "", "true", 0 }, - { "NoEntryPoint", "NOENTRY", "", "true", 0 }, - { "SetChecksum", "RELEASE", "", "true", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE:NO", "", "false", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE", "", "true", 0 }, - { "FixedBaseAddress", "FIXED:NO", "", "false", 0 }, - { "FixedBaseAddress", "FIXED", "", "true", 0 }, - { "DataExecutionPrevention", "NXCOMPAT:NO", "", "false", 0 }, - { "DataExecutionPrevention", "NXCOMPAT", "", "true", 0 }, - { "TurnOffAssemblyGeneration", "NOASSEMBLY", "", "true", 0 }, - { "SupportUnloadOfDelayLoadedDLL", "DELAY:UNLOAD", "", "true", 0 }, - { "SupportNobindOfDelayLoadedDLL", "DELAY:NOBIND", "", "true", 0 }, - { "Profile", "PROFILE", "", "true", 0 }, - { "LinkDelaySign", "DELAYSIGN:NO", "", "false", 0 }, - { "LinkDelaySign", "DELAYSIGN", "", "true", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK:NO", "", "false", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK", "", "true", 0 }, - { "DetectOneDefinitionRule", "ODR", "", "true", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH:NO", "", "false", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH", "", "true", 0 }, - { "LinkDLL", "DLL", "", "true", 0 }, - - // Bool Properties With Argument - { "EnableUAC", "MANIFESTUAC:", "", "", - cmVS7FlagTable::UserValueRequired | cmVS7FlagTable::SpaceAppendable }, - { "GenerateMapFile", "MAP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "MapFileName", "MAP:", "Generate Map File", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AddModuleNamesToAssembly", "ASSEMBLYMODULE:", "Add Module to Assembly", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "EmbedManagedResourceFile", - "ASSEMBLYRESOURCE:", "Embed Managed Resource File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DelayLoadDLLs", "DELAYLOAD:", "Delay Loaded Dlls", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:", "Assembly Link Resource", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalManifestDependencies", - "MANIFESTDEPENDENCY:", "Additional Manifest Dependencies", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ManifestInput", "manifestinput:", "Manifest Input", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "Version", "VERSION:", "Version", "", cmVS7FlagTable::UserValue }, - { "SpecifySectionAttributes", "SECTION:", "Specify Section Attributes", "", - cmVS7FlagTable::UserValue }, - { "MSDOSStubFileName", "STUB:", "MS-DOS Stub File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - { "ModuleDefinitionFile", "DEF:", "Module Definition File", "", - cmVS7FlagTable::UserValue }, - { "ManifestFile", "ManifestFile:", "Manifest File", "", - cmVS7FlagTable::UserValue }, - { "ProgramDatabaseFile", "PDB:", "Generate Program Database File", "", - cmVS7FlagTable::UserValue }, - { "StripPrivateSymbols", "PDBSTRIPPED:", "Strip Private Symbols", "", - cmVS7FlagTable::UserValue }, - // Skip [MapFileName] - no command line Switch. - // Skip [MinimumRequiredVersion] - no command line Switch. - { "HeapReserveSize", "HEAP:", "Heap Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [HeapCommitSize] - no command line Switch. - { "StackReserveSize", "STACK:", "Stack Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [StackCommitSize] - no command line Switch. - { "FunctionOrder", "ORDER:@", "Function Order", "", - cmVS7FlagTable::UserValue }, - { "ProfileGuidedDatabase", "PGD:", "Profile Guided Database", "", - cmVS7FlagTable::UserValue }, - { "MidlCommandFile", "MIDL:@", "MIDL Commands", "", - cmVS7FlagTable::UserValue }, - { "MergedIDLBaseFileName", "IDLOUT:", "Merged IDL Base File Name", "", - cmVS7FlagTable::UserValue }, - { "TypeLibraryFile", "TLBOUT:", "Type Library", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataFile", "WINMDFILE:", "Windows Metadata File", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataLinkKeyFile", "WINMDKEYFILE:", "Windows Metadata Key File", - "", cmVS7FlagTable::UserValue }, - { "WindowsMetadataKeyContainer", "WINMDKEYCONTAINER:", - "Windows Metadata Key Container", "", cmVS7FlagTable::UserValue }, - { "EntryPointSymbol", "ENTRY:", "Entry Point", "", - cmVS7FlagTable::UserValue }, - { "BaseAddress", "BASE:", "Base Address", "", cmVS7FlagTable::UserValue }, - { "ImportLibrary", "IMPLIB:", "Import Library", "", - cmVS7FlagTable::UserValue }, - { "MergeSections", "MERGE:", "Merge Sections", "", - cmVS7FlagTable::UserValue }, - { "LinkKeyFile", "KEYFILE:", "Key File", "", cmVS7FlagTable::UserValue }, - { "KeyContainer", "KEYCONTAINER:", "Key Container", "", - cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS12MASMFlagTable.h b/Source/cmVS12MASMFlagTable.h deleted file mode 100644 index acc0d48..0000000 --- a/Source/cmVS12MASMFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS12MASMFlagTable[] = { - - // Enum Properties - { "PreserveIdentifierCase", "", "Default", "0", 0 }, - { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1", - 0 }, - { "PreserveIdentifierCase", "Cu", - "Maps all identifiers to upper case. (/Cu)", "2", 0 }, - { "PreserveIdentifierCase", "Cx", - "Preserves case in public and extern symbols. (/Cx)", "3", 0 }, - - { "WarningLevel", "W0", "Warning Level 0 (/W0)", "0", 0 }, - { "WarningLevel", "W1", "Warning Level 1 (/W1)", "1", 0 }, - { "WarningLevel", "W2", "Warning Level 2 (/W2)", "2", 0 }, - { "WarningLevel", "W3", "Warning Level 3 (/W3)", "3", 0 }, - - { "PackAlignmentBoundary", "", "Default", "0", 0 }, - { "PackAlignmentBoundary", "Zp1", "One Byte Boundary (/Zp1)", "1", 0 }, - { "PackAlignmentBoundary", "Zp2", "Two Byte Boundary (/Zp2)", "2", 0 }, - { "PackAlignmentBoundary", "Zp4", "Four Byte Boundary (/Zp4)", "3", 0 }, - { "PackAlignmentBoundary", "Zp8", "Eight Byte Boundary (/Zp8)", "4", 0 }, - { "PackAlignmentBoundary", "Zp16", "Sixteen Byte Boundary (/Zp16)", "5", 0 }, - - { "CallingConvention", "", "Default", "0", 0 }, - { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1", - 0 }, - { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2", - 0 }, - { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 }, - - { "ErrorReporting", "errorReport:prompt", - "Prompt to send report immediately (/errorReport:prompt)", "0", 0 }, - { "ErrorReporting", "errorReport:queue", - "Prompt to send report at the next logon (/errorReport:queue)", "1", 0 }, - { "ErrorReporting", "errorReport:send", - "Automatically send report (/errorReport:send)", "2", 0 }, - { "ErrorReporting", "errorReport:none", - "Do not send report (/errorReport:none)", "3", 0 }, - - // Bool Properties - { "NoLogo", "nologo", "", "true", 0 }, - { "GeneratePreprocessedSourceListing", "EP", "", "true", 0 }, - { "ListAllAvailableInformation", "Sa", "", "true", 0 }, - { "UseSafeExceptionHandlers", "safeseh", "", "true", 0 }, - { "AddFirstPassListing", "Sf", "", "true", 0 }, - { "EnableAssemblyGeneratedCodeListing", "Sg", "", "true", 0 }, - { "DisableSymbolTable", "Sn", "", "true", 0 }, - { "EnableFalseConditionalsInListing", "Sx", "", "true", 0 }, - { "TreatWarningsAsErrors", "WX", "", "true", 0 }, - { "MakeAllSymbolsPublic", "Zf", "", "true", 0 }, - { "GenerateDebugInformation", "Zi", "", "true", 0 }, - { "EnableMASM51Compatibility", "Zm", "", "true", 0 }, - { "PerformSyntaxCheckOnly", "Zs", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IncludePaths", "I", "Include Paths", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "BrowseFile", "FR", "Generate Browse Information File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - - // String Properties - // Skip [Inputs] - no command line Switch. - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "", - cmVS7FlagTable::UserValue }, - // Skip [CommandLineTemplate] - no command line Switch. - // Skip [ExecutionDescription] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS12RCFlagTable.h b/Source/cmVS12RCFlagTable.h deleted file mode 100644 index a650f85..0000000 --- a/Source/cmVS12RCFlagTable.h +++ /dev/null @@ -1,7 +0,0 @@ -static cmVS7FlagTable cmVS12RCFlagTable[] = { - // Bool Properties - { "NullTerminateStrings", "n", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS140CLFlagTable.h b/Source/cmVS140CLFlagTable.h deleted file mode 100644 index 2b89042..0000000 --- a/Source/cmVS140CLFlagTable.h +++ /dev/null @@ -1,240 +0,0 @@ -static cmVS7FlagTable cmVS140CLFlagTable[] = { - - // Enum Properties - { "DebugInformationFormat", "", "None", "None", 0 }, - { "DebugInformationFormat", "Z7", "C7 compatible", "OldStyle", 0 }, - { "DebugInformationFormat", "Zi", "Program Database", "ProgramDatabase", 0 }, - { "DebugInformationFormat", "ZI", "Program Database for Edit And Continue", - "EditAndContinue", 0 }, - - { "WarningLevel", "W0", "Turn Off All Warnings", "TurnOffAllWarnings", 0 }, - { "WarningLevel", "W1", "Level1", "Level1", 0 }, - { "WarningLevel", "W2", "Level2", "Level2", 0 }, - { "WarningLevel", "W3", "Level3", "Level3", 0 }, - { "WarningLevel", "W4", "Level4", "Level4", 0 }, - { "WarningLevel", "Wall", "EnableAllWarnings", "EnableAllWarnings", 0 }, - - { "Optimization", "", "Custom", "Custom", 0 }, - { "Optimization", "Od", "Disabled", "Disabled", 0 }, - { "Optimization", "O1", "Minimize Size", "MinSpace", 0 }, - { "Optimization", "O2", "Maximize Speed", "MaxSpeed", 0 }, - { "Optimization", "Ox", "Full Optimization", "Full", 0 }, - - { "InlineFunctionExpansion", "", "Default", "Default", 0 }, - { "InlineFunctionExpansion", "Ob0", "Disabled", "Disabled", 0 }, - { "InlineFunctionExpansion", "Ob1", "Only __inline", "OnlyExplicitInline", - 0 }, - { "InlineFunctionExpansion", "Ob2", "Any Suitable", "AnySuitable", 0 }, - - { "FavorSizeOrSpeed", "Os", "Favor small code", "Size", 0 }, - { "FavorSizeOrSpeed", "Ot", "Favor fast code", "Speed", 0 }, - { "FavorSizeOrSpeed", "", "Neither", "Neither", 0 }, - - { "ExceptionHandling", "EHa", "Yes with SEH Exceptions", "Async", 0 }, - { "ExceptionHandling", "EHsc", "Yes", "Sync", 0 }, - { "ExceptionHandling", "EHs", "Yes with Extern C functions", "SyncCThrow", - 0 }, - { "ExceptionHandling", "", "No", "false", 0 }, - - { "BasicRuntimeChecks", "RTCs", "Stack Frames", "StackFrameRuntimeCheck", - 0 }, - { "BasicRuntimeChecks", "RTCu", "Uninitialized variables", - "UninitializedLocalUsageCheck", 0 }, - { "BasicRuntimeChecks", "RTC1", "Both (/RTC1, equiv. to /RTCsu)", - "EnableFastChecks", 0 }, - { "BasicRuntimeChecks", "", "Default", "Default", 0 }, - - { "RuntimeLibrary", "MT", "Multi-threaded", "MultiThreaded", 0 }, - { "RuntimeLibrary", "MTd", "Multi-threaded Debug", "MultiThreadedDebug", 0 }, - { "RuntimeLibrary", "MD", "Multi-threaded DLL", "MultiThreadedDLL", 0 }, - { "RuntimeLibrary", "MDd", "Multi-threaded Debug DLL", - "MultiThreadedDebugDLL", 0 }, - - { "StructMemberAlignment", "Zp1", "1 Byte", "1Byte", 0 }, - { "StructMemberAlignment", "Zp2", "2 Bytes", "2Bytes", 0 }, - { "StructMemberAlignment", "Zp4", "4 Byte", "4Bytes", 0 }, - { "StructMemberAlignment", "Zp8", "8 Bytes", "8Bytes", 0 }, - { "StructMemberAlignment", "Zp16", "16 Bytes", "16Bytes", 0 }, - { "StructMemberAlignment", "", "Default", "Default", 0 }, - - { "BufferSecurityCheck", "GS-", "Disable Security Check", "false", 0 }, - { "BufferSecurityCheck", "GS", "Enable Security Check", "true", 0 }, - - { "EnableEnhancedInstructionSet", "arch:SSE", "Streaming SIMD Extensions", - "StreamingSIMDExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:SSE2", "Streaming SIMD Extensions 2", - "StreamingSIMDExtensions2", 0 }, - { "EnableEnhancedInstructionSet", "arch:AVX", "Advanced Vector Extensions", - "AdvancedVectorExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:AVX2", - "Advanced Vector Extensions 2", "AdvancedVectorExtensions2", 0 }, - { "EnableEnhancedInstructionSet", "arch:IA32", "No Enhanced Instructions", - "NoExtensions", 0 }, - { "EnableEnhancedInstructionSet", "", "Not Set", "NotSet", 0 }, - - { "FloatingPointModel", "fp:precise", "Precise", "Precise", 0 }, - { "FloatingPointModel", "fp:strict", "Strict", "Strict", 0 }, - { "FloatingPointModel", "fp:fast", "Fast", "Fast", 0 }, - - { "PrecompiledHeader", "Yc", "Create", "Create", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Yu", "Use", "Use", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Y-", "Not Using Precompiled Headers", "NotUsing", - 0 }, - - { "AssemblerOutput", "", "No Listing", "NoListing", 0 }, - { "AssemblerOutput", "FA", "Assembly-Only Listing", "AssemblyCode", 0 }, - { "AssemblerOutput", "FAc", "Assembly With Machine Code", - "AssemblyAndMachineCode", 0 }, - { "AssemblerOutput", "FAs", "Assembly With Source Code", - "AssemblyAndSourceCode", 0 }, - { "AssemblerOutput", "FAcs", "Assembly, Machine Code and Source", "All", 0 }, - - { "CallingConvention", "Gd", "__cdecl", "Cdecl", 0 }, - { "CallingConvention", "Gr", "__fastcall", "FastCall", 0 }, - { "CallingConvention", "Gz", "__stdcall", "StdCall", 0 }, - { "CallingConvention", "Gv", "__vectorcall", "VectorCall", 0 }, - - { "CompileAs", "", "Default", "Default", 0 }, - { "CompileAs", "TC", "Compile as C Code", "CompileAsC", 0 }, - { "CompileAs", "TP", "Compile as C++ Code", "CompileAsCpp", 0 }, - - { "ErrorReporting", "errorReport:none", "Do Not Send Report", "None", 0 }, - { "ErrorReporting", "errorReport:prompt", "Prompt Immediately", "Prompt", - 0 }, - { "ErrorReporting", "errorReport:queue", "Queue For Next Login", "Queue", - 0 }, - { "ErrorReporting", "errorReport:send", "Send Automatically", "Send", 0 }, - - { "CompileAsManaged", "", "No Common Language RunTime Support", "false", 0 }, - { "CompileAsManaged", "clr", "Common Language RunTime Support", "true", 0 }, - { "CompileAsManaged", "clr:pure", - "Pure MSIL Common Language RunTime Support", "Pure", 0 }, - { "CompileAsManaged", "clr:safe", - "Safe MSIL Common Language RunTime Support", "Safe", 0 }, - { "CompileAsManaged", "clr:oldSyntax", - "Common Language RunTime Support, Old Syntax", "OldSyntax", 0 }, - - { "CppLanguageStandard", "", "Default", "Default", 0 }, - { "CppLanguageStandard", "std=c++98", "C++03", "c++98", 0 }, - { "CppLanguageStandard", "std=c++11", "C++11", "c++11", 0 }, - { "CppLanguageStandard", "std=c++1y", "C++14", "c++1y", 0 }, - { "CppLanguageStandard", "std=c++14", "C++14", "c++1y", 0 }, - { "CppLanguageStandard", "std=gnu++98", "C++03 (GNU Dialect)", "gnu++98", - 0 }, - { "CppLanguageStandard", "std=gnu++11", "C++11 (GNU Dialect)", "gnu++11", - 0 }, - { "CppLanguageStandard", "std=gnu++1y", "C++14 (GNU Dialect)", "gnu++1y", - 0 }, - { "CppLanguageStandard", "std=gnu++14", "C++14 (GNU Dialect)", "gnu++1y", - 0 }, - - // Bool Properties - { "CompileAsWinRT", "ZW", "", "true", 0 }, - { "WinRTNoStdLib", "ZW:nostdlib", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - { "TreatWarningAsError", "WX-", "", "false", 0 }, - { "TreatWarningAsError", "WX", "", "true", 0 }, - { "SDLCheck", "sdl-", "", "false", 0 }, - { "SDLCheck", "sdl", "", "true", 0 }, - { "IntrinsicFunctions", "Oi", "", "true", 0 }, - { "OmitFramePointers", "Oy-", "", "false", 0 }, - { "OmitFramePointers", "Oy", "", "true", 0 }, - { "EnableFiberSafeOptimizations", "GT", "", "true", 0 }, - { "WholeProgramOptimization", "GL", "", "true", 0 }, - { "UndefineAllPreprocessorDefinitions", "u", "", "true", 0 }, - { "IgnoreStandardIncludePath", "X", "", "true", 0 }, - { "PreprocessToFile", "P", "", "true", 0 }, - { "PreprocessSuppressLineNumbers", "EP", "", "true", 0 }, - { "PreprocessKeepComments", "C", "", "true", 0 }, - { "StringPooling", "GF-", "", "false", 0 }, - { "StringPooling", "GF", "", "true", 0 }, - { "MinimalRebuild", "Gm-", "", "false", 0 }, - { "MinimalRebuild", "Gm", "", "true", 0 }, - { "SmallerTypeCheck", "RTCc", "", "true", 0 }, - { "FunctionLevelLinking", "Gy-", "", "false", 0 }, - { "FunctionLevelLinking", "Gy", "", "true", 0 }, - { "EnableParallelCodeGeneration", "Qpar-", "", "false", 0 }, - { "EnableParallelCodeGeneration", "Qpar", "", "true", 0 }, - { "FloatingPointExceptions", "fp:except-", "", "false", 0 }, - { "FloatingPointExceptions", "fp:except", "", "true", 0 }, - { "CreateHotpatchableImage", "hotpatch", "", "true", 0 }, - { "DisableLanguageExtensions", "Za", "", "true", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0 }, - { "RemoveUnreferencedCodeData", "Zc:inline-", "", "false", 0 }, - { "RemoveUnreferencedCodeData", "Zc:inline", "", "true", 0 }, - { "RuntimeTypeInfo", "GR-", "", "false", 0 }, - { "RuntimeTypeInfo", "GR", "", "true", 0 }, - { "OpenMPSupport", "openmp-", "", "false", 0 }, - { "OpenMPSupport", "openmp", "", "true", 0 }, - { "ExpandAttributedSource", "Fx", "", "true", 0 }, - { "UseUnicodeForAssemblerListing", "FAu", "", "true", 0 }, - { "ShowIncludes", "showIncludes", "", "true", 0 }, - { "EnablePREfast", "analyze-", "", "false", 0 }, - { "EnablePREfast", "analyze", "", "true", 0 }, - { "UseFullPaths", "FC", "", "true", 0 }, - { "OmitDefaultLibName", "Zl", "", "true", 0 }, - - // Bool Properties With Argument - { "MultiProcessorCompilation", "MP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "ProcessorNumber", "MP", "Multi-processor Compilation", "", - cmVS7FlagTable::UserValueRequired }, - { "GenerateXMLDocumentationFiles", "doc", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "", - cmVS7FlagTable::UserValueRequired }, - { "BrowseInformation", "FR", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "BrowseInformationFile", "FR", "Enable Browse Information", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalIncludeDirectories", "I", "Additional Include Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalUsingDirectories", "AI", "Additional #using Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PreprocessorDefinitions", "D ", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "UndefinePreprocessorDefinitions", "U", - "Undefine Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DisableSpecificWarnings", "wd", "Disable Specific Warnings", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedIncludeFiles", "FI", "Forced Include File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedUsingFiles", "FU", "Forced #using File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PREfastLog", "analyze:log", "Code Analysis Log", "", - cmVS7FlagTable::UserFollowing }, - { "PREfastAdditionalPlugins", "analyze:plugin", - "Additional Code Analysis Native plugins", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "TreatSpecificWarningsAsErrors", "we", "Treat Specific Warnings As Errors", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - // Skip [TrackerLogDirectory] - no command line Switch. - { "PreprocessOutputPath", "Fi", "Preprocess Output Path", "", - cmVS7FlagTable::UserValue }, - { "PrecompiledHeaderFile", "Yc", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderFile", "Yu", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderOutputFile", "Fp", "Precompiled Header Output File", "", - cmVS7FlagTable::UserValue }, - { "AssemblerListingLocation", "Fa", "ASM List Location", "", - cmVS7FlagTable::UserValue }, - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "ProgramDataBaseFileName", "Fd", "Program Database File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [XMLDocumentationFileName] - no command line Switch. - // Skip [BrowseInformationFile] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS140CSharpFlagTable.h b/Source/cmVS140CSharpFlagTable.h deleted file mode 100644 index f695f45..0000000 --- a/Source/cmVS140CSharpFlagTable.h +++ /dev/null @@ -1,121 +0,0 @@ -static cmVS7FlagTable cmVS140CSharpFlagTable[] = { - { "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired }, - - { "OutputType", "target:exe", "", "Exe", 0 }, - { "OutputType", "target:winexe", "", "Winexe", 0 }, - { "OutputType", "target:library", "", "Library", 0 }, - { "OutputType", "target:module", "", "Module", 0 }, - - { "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired }, - - { "Platform", "platform:x86", "", "x86", 0 }, - { "Platform", "platform:Itanium", "", "Itanium", 0 }, - { "Platform", "platform:x64", "", "x64", 0 }, - { "Platform", "platform:arm", "", "arm", 0 }, - { "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred", - 0 }, - { "Platform", "platform:anycpu", "", "anycpu", 0 }, - - { "References", "reference:", "mit alias", "", 0 }, - { "References", "reference:", "dateiliste", "", 0 }, - { "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable }, - { "", "link", "", "", 0 }, - - { "Win32Resource", "win32res:", "", "", cmIDEFlagTable::UserValueRequired }, - { "ApplicationIcon", "win32icon:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "ApplicationManifest", "win32manifest:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "NoWin32Manifest", "nowin32manifest", "", "true", 0 }, - - { "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue }, - - { "DebugSymbols", "debug", "", "true", 0 }, - { "DebugSymbols", "debug-", "", "false", 0 }, - { "DebugSymbols", "debug+", "", "true", 0 }, - - { "DebugType", "debug:none", "", "none", 0 }, - { "DebugType", "debug:full", "", "full", 0 }, - { "DebugType", "debug:pdbonly", "", "pdbonly", 0 }, - - { "Optimize", "optimize", "", "true", 0 }, - { "Optimize", "optimize-", "", "false", 0 }, - { "Optimize", "optimize+", "", "true", 0 }, - - { "TreatWarningsAsErrors", "warnaserror", "", "true", 0 }, - { "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 }, - { "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 }, - - { "WarningsAsErrors", "warnaserror", "", "", 0 }, - { "WarningsAsErrors", "warnaserror-", "", "", 0 }, - { "WarningsAsErrors", "warnaserror+", "", "", 0 }, - - { "WarningLevel", "warn:0", "", "0", 0 }, - { "WarningLevel", "warn:1", "", "1", 0 }, - { "WarningLevel", "warn:2", "", "2", 0 }, - { "WarningLevel", "warn:3", "", "3", 0 }, - { "WarningLevel", "warn:4", "", "4", 0 }, - { "DisabledWarnings", "nowarn", "", "", 0 }, - - { "CheckForOverflowUnderflow", "checked", "", "true", 0 }, - { "CheckForOverflowUnderflow", "checked-", "", "false", 0 }, - { "CheckForOverflowUnderflow", "checked+", "", "true", 0 }, - - { "AllowUnsafeBlocks", "unsafe", "", "true", 0 }, - { "AllowUnsafeBlocks", "unsafe-", "", "false", 0 }, - { "AllowUnsafeBlocks", "unsafe+", "", "true", 0 }, - - { "DefineConstants", "define:", "", "", - cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue }, - - { "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 }, - { "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 }, - { "LangVersion", "langversion:3", "", "3", 0 }, - { "LangVersion", "langversion:4", "", "4", 0 }, - { "LangVersion", "langversion:5", "", "5", 0 }, - { "LangVersion", "langversion:6", "", "6", 0 }, - { "LangVersion", "langversion:default", "", "default", 0 }, - - { "DelaySign", "delaysign", "", "true", 0 }, - { "DelaySign", "delaysign-", "", "false", 0 }, - { "DelaySign", "delaysign+", "", "true", 0 }, - - { "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 }, - - { "KeyContainerName", "keycontainer", "", "", 0 }, - - { "NoLogo", "nologo", "", "", 0 }, - - { "NoConfig", "noconfig", "", "true", 0 }, - - { "BaseAddress", "baseaddress:", "", "", 0 }, - - { "CodePage", "codepage", "", "", 0 }, - - { "Utf8Output", "utf8output", "", "", 0 }, - - { "MainEntryPoint", "main:", "", "", 0 }, - - { "GenerateFullPaths", "fullpaths", "", "true", 0 }, - - { "FileAlignment", "filealign", "", "", 0 }, - - { "PdbFile", "pdb:", "", "", 0 }, - - { "NoStandardLib", "nostdlib", "", "true", 0 }, - { "NoStandardLib", "nostdlib-", "", "false", 0 }, - { "NoStandardLib", "nostdlib+", "", "true", 0 }, - - { "SubsystemVersion", "subsystemversion", "", "", 0 }, - - { "AdditionalLibPaths", "lib:", "", "", 0 }, - - { "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 }, - { "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 }, - { "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 }, - { "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 }, - - { 0, 0, 0, 0, 0 }, -}; diff --git a/Source/cmVS140LinkFlagTable.h b/Source/cmVS140LinkFlagTable.h deleted file mode 100644 index fe03153..0000000 --- a/Source/cmVS140LinkFlagTable.h +++ /dev/null @@ -1,285 +0,0 @@ -static cmVS7FlagTable cmVS140LinkFlagTable[] = { - - // Enum Properties - { "ShowProgress", "", "Not Set", "NotSet", 0 }, - { "ShowProgress", "VERBOSE", "Display all progress messages", "LinkVerbose", - 0 }, - { "ShowProgress", "VERBOSE:Lib", "For Libraries Searched", "LinkVerboseLib", - 0 }, - { "ShowProgress", "VERBOSE:ICF", - "About COMDAT folding during optimized linking", "LinkVerboseICF", 0 }, - { "ShowProgress", "VERBOSE:REF", - "About data removed during optimized linking", "LinkVerboseREF", 0 }, - { "ShowProgress", "VERBOSE:SAFESEH", "About Modules incompatible with SEH", - "LinkVerboseSAFESEH", 0 }, - { "ShowProgress", "VERBOSE:CLR", - "About linker activity related to managed code", "LinkVerboseCLR", 0 }, - - { "ForceFileOutput", "FORCE", "Enabled", "Enabled", 0 }, - { "ForceFileOutput", "FORCE:MULTIPLE", "Multiply Defined Symbol Only", - "MultiplyDefinedSymbolOnly", 0 }, - { "ForceFileOutput", "FORCE:UNRESOLVED", "Undefined Symbol Only", - "UndefinedSymbolOnly", 0 }, - - { "CreateHotPatchableImage", "FUNCTIONPADMIN", "Enabled", "Enabled", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:5", "X86 Image Only", - "X86Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:6", "X64 Image Only", - "X64Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:16", "Itanium Image Only", - "ItaniumImage", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACExecutionLevel", "level='asInvoker'", "asInvoker", "AsInvoker", 0 }, - { "UACExecutionLevel", "level='highestAvailable'", "highestAvailable", - "HighestAvailable", 0 }, - { "UACExecutionLevel", "level='requireAdministrator'", - "requireAdministrator", "RequireAdministrator", 0 }, - - { "GenerateDebugInformation", "DEBUG:FASTLINK", - "Optimize for faster linking", "DebugFastLink", - cmVS7FlagTable::CaseInsensitive }, - { "GenerateDebugInformation", "DEBUG:FULL", "Optimize for debugging", "true", - cmVS7FlagTable::CaseInsensitive }, - { "GenerateDebugInformation", "DEBUG:NONE", - "Produces no debugging information", "false", - cmVS7FlagTable::CaseInsensitive }, - { "GenerateDebugInformation", "DEBUG", "Optimize for debugging", "true", - cmVS7FlagTable::CaseInsensitive }, - - { "SubSystem", "", "Not Set", "NotSet", 0 }, - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - { "Driver", "", "Not Set", "NotSet", 0 }, - { "Driver", "Driver", "Driver", "Driver", 0 }, - { "Driver", "DRIVER:UPONLY", "UP Only", "UpOnly", 0 }, - { "Driver", "DRIVER:WDM", "WDM", "WDM", 0 }, - - { "LinkTimeCodeGeneration", "", "Default", "Default", 0 }, - { "LinkTimeCodeGeneration", "LTCG:incremental", - "Use Fast Link Time Code Generation", "UseFastLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "Use Link Time Code Generation", - "UseLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGInstrument", - "Profile Guided Optimization - Instrument", "PGInstrument", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGOptimize", - "Profile Guided Optimization - Optimization", "PGOptimization", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGUpdate", - "Profile Guided Optimization - Update", "PGUpdate", 0 }, - - { "GenerateWindowsMetadata", "WINMD", "Yes", "true", 0 }, - { "GenerateWindowsMetadata", "WINMD:NO", "No", "false", 0 }, - - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "TargetMachine", "", "Not Set", "NotSet", 0 }, - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA", "MTA threading attribute", - "MTAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA", "STA threading attribute", - "STAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE", - "Default threading attribute", "DefaultThreadingAttribute", 0 }, - - { "CLRImageType", "CLRIMAGETYPE:IJW", "Force IJW image", "ForceIJWImage", - 0 }, - { "CLRImageType", "CLRIMAGETYPE:PURE", "Force Pure IL Image", - "ForcePureILImage", 0 }, - { "CLRImageType", "CLRIMAGETYPE:SAFE", "Force Safe IL Image", - "ForceSafeILImage", 0 }, - { "CLRImageType", "", "Default image type", "Default", 0 }, - - { "SignHash", "CLRSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "SignHash", "CLRSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "SignHash", "CLRSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "SignHash", "CLRSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "LinkErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "LinkErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "LinkErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "LinkErrorReporting", "ERRORREPORT:NONE", "No Error Report", - "NoErrorReport", 0 }, - - { "CLRSupportLastError", "CLRSupportLastError", "Enabled", "Enabled", 0 }, - { "CLRSupportLastError", "CLRSupportLastError:NO", "Disabled", "Disabled", - 0 }, - { "CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL", "System Dlls Only", - "SystemDlls", 0 }, - - // Bool Properties - { "LinkIncremental", "INCREMENTAL:NO", "", "false", 0 }, - { "LinkIncremental", "INCREMENTAL", "", "true", 0 }, - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "LinkStatus", "LTCG:NOSTATUS", "", "false", 0 }, - { "LinkStatus", "LTCG:STATUS", "", "true", 0 }, - { "PreventDllBinding", "ALLOWBIND:NO", "", "false", 0 }, - { "PreventDllBinding", "ALLOWBIND", "", "true", 0 }, - { "TreatLinkerWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLinkerWarningAsErrors", "WX", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "GenerateManifest", "MANIFEST:NO", "", "false", 0 }, - { "GenerateManifest", "MANIFEST", "", "true", 0 }, - { "AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACUIAccess", "uiAccess='false'", "", "false", 0 }, - { "UACUIAccess", "uiAccess='true'", "", "true", 0 }, - - { "ManifestEmbed", "manifest:embed", "", "true", 0 }, - { "MapExports", "MAPINFO:EXPORTS", "", "true", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE:NO", "", "false", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE", "", "true", 0 }, - { "TerminalServerAware", "TSAWARE:NO", "", "false", 0 }, - { "TerminalServerAware", "TSAWARE", "", "true", 0 }, - { "SwapRunFromCD", "SWAPRUN:CD", "", "true", 0 }, - { "SwapRunFromNET", "SWAPRUN:NET", "", "true", 0 }, - { "OptimizeReferences", "OPT:NOREF", "", "false", 0 }, - { "OptimizeReferences", "OPT:REF", "", "true", 0 }, - { "EnableCOMDATFolding", "OPT:NOICF", "", "false", 0 }, - { "EnableCOMDATFolding", "OPT:ICF", "", "true", 0 }, - { "IgnoreEmbeddedIDL", "IGNOREIDL", "", "true", 0 }, - { "AppContainer", "APPCONTAINER", "", "true", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN:NO", "", "false", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN", "", "true", 0 }, - { "NoEntryPoint", "NOENTRY", "", "true", 0 }, - { "SetChecksum", "RELEASE", "", "true", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE:NO", "", "false", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE", "", "true", 0 }, - { "FixedBaseAddress", "FIXED:NO", "", "false", 0 }, - { "FixedBaseAddress", "FIXED", "", "true", 0 }, - { "DataExecutionPrevention", "NXCOMPAT:NO", "", "false", 0 }, - { "DataExecutionPrevention", "NXCOMPAT", "", "true", 0 }, - { "TurnOffAssemblyGeneration", "NOASSEMBLY", "", "true", 0 }, - { "SupportUnloadOfDelayLoadedDLL", "DELAY:UNLOAD", "", "true", 0 }, - { "SupportNobindOfDelayLoadedDLL", "DELAY:NOBIND", "", "true", 0 }, - { "Profile", "PROFILE", "", "true", 0 }, - { "LinkDelaySign", "DELAYSIGN:NO", "", "false", 0 }, - { "LinkDelaySign", "DELAYSIGN", "", "true", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK:NO", "", "false", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK", "", "true", 0 }, - { "DetectOneDefinitionRule", "ODR", "", "true", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH:NO", "", "false", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH", "", "true", 0 }, - { "LinkDLL", "DLL", "", "true", 0 }, - - // Bool Properties With Argument - { "EnableUAC", "MANIFESTUAC:", "", "", - cmVS7FlagTable::UserValueRequired | cmVS7FlagTable::SpaceAppendable }, - { "GenerateMapFile", "MAP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "MapFileName", "MAP:", "Generate Map File", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "Natvis", "NATVIS:", "Natvis files", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AddModuleNamesToAssembly", "ASSEMBLYMODULE:", "Add Module to Assembly", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "EmbedManagedResourceFile", - "ASSEMBLYRESOURCE:", "Embed Managed Resource File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DelayLoadDLLs", "DELAYLOAD:", "Delay Loaded Dlls", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:", "Assembly Link Resource", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalManifestDependencies", - "MANIFESTDEPENDENCY:", "Additional Manifest Dependencies", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ManifestInput", "manifestinput:", "Manifest Input", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "Version", "VERSION:", "Version", "", cmVS7FlagTable::UserValue }, - { "SpecifySectionAttributes", "SECTION:", "Specify Section Attributes", "", - cmVS7FlagTable::UserValue }, - { "MSDOSStubFileName", "STUB:", "MS-DOS Stub File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - { "ModuleDefinitionFile", "DEF:", "Module Definition File", "", - cmVS7FlagTable::UserValue }, - { "ManifestFile", "ManifestFile:", "Manifest File", "", - cmVS7FlagTable::UserValue }, - { "ProgramDatabaseFile", "PDB:", "Generate Program Database File", "", - cmVS7FlagTable::UserValue }, - { "StripPrivateSymbols", "PDBSTRIPPED:", "Strip Private Symbols", "", - cmVS7FlagTable::UserValue }, - // Skip [MapFileName] - no command line Switch. - // Skip [MinimumRequiredVersion] - no command line Switch. - { "HeapReserveSize", "HEAP:", "Heap Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [HeapCommitSize] - no command line Switch. - { "StackReserveSize", "STACK:", "Stack Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [StackCommitSize] - no command line Switch. - { "FunctionOrder", "ORDER:@", "Function Order", "", - cmVS7FlagTable::UserValue }, - { "ProfileGuidedDatabase", "PGD:", "Profile Guided Database", "", - cmVS7FlagTable::UserValue }, - { "MidlCommandFile", "MIDL:@", "MIDL Commands", "", - cmVS7FlagTable::UserValue }, - { "MergedIDLBaseFileName", "IDLOUT:", "Merged IDL Base File Name", "", - cmVS7FlagTable::UserValue }, - { "TypeLibraryFile", "TLBOUT:", "Type Library", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataFile", "WINMDFILE:", "Windows Metadata File", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataLinkKeyFile", "WINMDKEYFILE:", "Windows Metadata Key File", - "", cmVS7FlagTable::UserValue }, - { "WindowsMetadataKeyContainer", "WINMDKEYCONTAINER:", - "Windows Metadata Key Container", "", cmVS7FlagTable::UserValue }, - { "EntryPointSymbol", "ENTRY:", "Entry Point", "", - cmVS7FlagTable::UserValue }, - { "BaseAddress", "BASE:", "Base Address", "", cmVS7FlagTable::UserValue }, - { "ImportLibrary", "IMPLIB:", "Import Library", "", - cmVS7FlagTable::UserValue }, - { "MergeSections", "MERGE:", "Merge Sections", "", - cmVS7FlagTable::UserValue }, - { "LinkKeyFile", "KEYFILE:", "Key File", "", cmVS7FlagTable::UserValue }, - { "KeyContainer", "KEYCONTAINER:", "Key Container", "", - cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS141CLFlagTable.h b/Source/cmVS141CLFlagTable.h deleted file mode 100644 index 7d219be..0000000 --- a/Source/cmVS141CLFlagTable.h +++ /dev/null @@ -1,260 +0,0 @@ -static cmVS7FlagTable cmVS141CLFlagTable[] = { - - // Enum Properties - { "DiagnosticsFormat", "diagnostics:classic", "Classic", "Classic", 0 }, - { "DiagnosticsFormat", "diagnostics:column", "Column", "Column", 0 }, - { "DiagnosticsFormat", "diagnostics:caret", "Caret", "Caret", 0 }, - - { "DebugInformationFormat", "", "None", "None", 0 }, - { "DebugInformationFormat", "Z7", "C7 compatible", "OldStyle", 0 }, - { "DebugInformationFormat", "Zi", "Program Database", "ProgramDatabase", 0 }, - { "DebugInformationFormat", "ZI", "Program Database for Edit And Continue", - "EditAndContinue", 0 }, - - { "WarningLevel", "W0", "Turn Off All Warnings", "TurnOffAllWarnings", 0 }, - { "WarningLevel", "W1", "Level1", "Level1", 0 }, - { "WarningLevel", "W2", "Level2", "Level2", 0 }, - { "WarningLevel", "W3", "Level3", "Level3", 0 }, - { "WarningLevel", "W4", "Level4", "Level4", 0 }, - { "WarningLevel", "Wall", "EnableAllWarnings", "EnableAllWarnings", 0 }, - - { "Optimization", "", "Custom", "Custom", 0 }, - { "Optimization", "Od", "Disabled", "Disabled", 0 }, - { "Optimization", "O1", "Minimize Size", "MinSpace", 0 }, - { "Optimization", "O2", "Maximize Speed", "MaxSpeed", 0 }, - { "Optimization", "Ox", "Full Optimization", "Full", 0 }, - - { "InlineFunctionExpansion", "", "Default", "Default", 0 }, - { "InlineFunctionExpansion", "Ob0", "Disabled", "Disabled", 0 }, - { "InlineFunctionExpansion", "Ob1", "Only __inline", "OnlyExplicitInline", - 0 }, - { "InlineFunctionExpansion", "Ob2", "Any Suitable", "AnySuitable", 0 }, - - { "FavorSizeOrSpeed", "Os", "Favor small code", "Size", 0 }, - { "FavorSizeOrSpeed", "Ot", "Favor fast code", "Speed", 0 }, - { "FavorSizeOrSpeed", "", "Neither", "Neither", 0 }, - - { "ExceptionHandling", "EHa", "Yes with SEH Exceptions", "Async", 0 }, - { "ExceptionHandling", "EHsc", "Yes", "Sync", 0 }, - { "ExceptionHandling", "EHs", "Yes with Extern C functions", "SyncCThrow", - 0 }, - { "ExceptionHandling", "", "No", "false", 0 }, - - { "BasicRuntimeChecks", "RTCs", "Stack Frames", "StackFrameRuntimeCheck", - 0 }, - { "BasicRuntimeChecks", "RTCu", "Uninitialized variables", - "UninitializedLocalUsageCheck", 0 }, - { "BasicRuntimeChecks", "RTC1", "Both (/RTC1, equiv. to /RTCsu)", - "EnableFastChecks", 0 }, - { "BasicRuntimeChecks", "", "Default", "Default", 0 }, - - { "RuntimeLibrary", "MT", "Multi-threaded", "MultiThreaded", 0 }, - { "RuntimeLibrary", "MTd", "Multi-threaded Debug", "MultiThreadedDebug", 0 }, - { "RuntimeLibrary", "MD", "Multi-threaded DLL", "MultiThreadedDLL", 0 }, - { "RuntimeLibrary", "MDd", "Multi-threaded Debug DLL", - "MultiThreadedDebugDLL", 0 }, - - { "StructMemberAlignment", "Zp1", "1 Byte", "1Byte", 0 }, - { "StructMemberAlignment", "Zp2", "2 Bytes", "2Bytes", 0 }, - { "StructMemberAlignment", "Zp4", "4 Byte", "4Bytes", 0 }, - { "StructMemberAlignment", "Zp8", "8 Bytes", "8Bytes", 0 }, - { "StructMemberAlignment", "Zp16", "16 Bytes", "16Bytes", 0 }, - { "StructMemberAlignment", "", "Default", "Default", 0 }, - - { "BufferSecurityCheck", "GS-", "Disable Security Check", "false", 0 }, - { "BufferSecurityCheck", "GS", "Enable Security Check", "true", 0 }, - - { "ControlFlowGuard", "guard:cf", "Yes", "Guard", 0 }, - { "ControlFlowGuard", "", "No", "false", 0 }, - - { "EnableEnhancedInstructionSet", "arch:SSE", "Streaming SIMD Extensions", - "StreamingSIMDExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:SSE2", "Streaming SIMD Extensions 2", - "StreamingSIMDExtensions2", 0 }, - { "EnableEnhancedInstructionSet", "arch:AVX", "Advanced Vector Extensions", - "AdvancedVectorExtensions", 0 }, - { "EnableEnhancedInstructionSet", "arch:AVX2", - "Advanced Vector Extensions 2", "AdvancedVectorExtensions2", 0 }, - { "EnableEnhancedInstructionSet", "arch:IA32", "No Enhanced Instructions", - "NoExtensions", 0 }, - { "EnableEnhancedInstructionSet", "", "Not Set", "NotSet", 0 }, - - { "FloatingPointModel", "fp:precise", "Precise", "Precise", 0 }, - { "FloatingPointModel", "fp:strict", "Strict", "Strict", 0 }, - { "FloatingPointModel", "fp:fast", "Fast", "Fast", 0 }, - - { "SpectreMitigation", "Qspectre", "Spectre mitigations", "Spectre", 0 }, - - { "LanguageStandard", "std:c++17", "ISO C++17 Standard", "stdcpp17", 0 }, - { "LanguageStandard", "std:c++14", "ISO C++14 Standard", "stdcpp14", 0 }, - { "LanguageStandard", "std:c++latest", "ISO C++ Latest Draft Standard", - "stdcpplatest", 0 }, - - { "PrecompiledHeader", "Yc", "Create", "Create", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Yu", "Use", "Use", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "PrecompiledHeader", "Y-", "Not Using Precompiled Headers", "NotUsing", - 0 }, - - { "AssemblerOutput", "", "No Listing", "NoListing", 0 }, - { "AssemblerOutput", "FA", "Assembly-Only Listing", "AssemblyCode", 0 }, - { "AssemblerOutput", "FAc", "Assembly With Machine Code", - "AssemblyAndMachineCode", 0 }, - { "AssemblerOutput", "FAs", "Assembly With Source Code", - "AssemblyAndSourceCode", 0 }, - { "AssemblerOutput", "FAcs", "Assembly, Machine Code and Source", "All", 0 }, - - { "CallingConvention", "Gd", "__cdecl", "Cdecl", 0 }, - { "CallingConvention", "Gr", "__fastcall", "FastCall", 0 }, - { "CallingConvention", "Gz", "__stdcall", "StdCall", 0 }, - { "CallingConvention", "Gv", "__vectorcall", "VectorCall", 0 }, - - { "CompileAs", "", "Default", "Default", 0 }, - { "CompileAs", "TC", "Compile as C Code", "CompileAsC", 0 }, - { "CompileAs", "TP", "Compile as C++ Code", "CompileAsCpp", 0 }, - - { "ErrorReporting", "errorReport:none", "Do Not Send Report", "None", 0 }, - { "ErrorReporting", "errorReport:prompt", "Prompt Immediately", "Prompt", - 0 }, - { "ErrorReporting", "errorReport:queue", "Queue For Next Login", "Queue", - 0 }, - { "ErrorReporting", "errorReport:send", "Send Automatically", "Send", 0 }, - - { "CompileAsManaged", "", "No Common Language RunTime Support", "false", 0 }, - { "CompileAsManaged", "clr", "Common Language RunTime Support", "true", 0 }, - { "CompileAsManaged", "clr:pure", - "Pure MSIL Common Language RunTime Support", "Pure", 0 }, - { "CompileAsManaged", "clr:safe", - "Safe MSIL Common Language RunTime Support", "Safe", 0 }, - { "CompileAsManaged", "clr:oldSyntax", - "Common Language RunTime Support, Old Syntax", "OldSyntax", 0 }, - - { "CppLanguageStandard", "", "Default", "Default", 0 }, - { "CppLanguageStandard", "std=c++98", "C++03", "c++98", 0 }, - { "CppLanguageStandard", "std=c++11", "C++11", "c++11", 0 }, - { "CppLanguageStandard", "std=c++1y", "C++14", "c++1y", 0 }, - { "CppLanguageStandard", "std=c++14", "C++14", "c++1y", 0 }, - { "CppLanguageStandard", "std=gnu++98", "C++03 (GNU Dialect)", "gnu++98", - 0 }, - { "CppLanguageStandard", "std=gnu++11", "C++11 (GNU Dialect)", "gnu++11", - 0 }, - { "CppLanguageStandard", "std=gnu++1y", "C++14 (GNU Dialect)", "gnu++1y", - 0 }, - { "CppLanguageStandard", "std=gnu++14", "C++14 (GNU Dialect)", "gnu++1y", - 0 }, - - // Bool Properties - { "CompileAsWinRT", "ZW", "", "true", 0 }, - { "WinRTNoStdLib", "ZW:nostdlib", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - { "TreatWarningAsError", "WX-", "", "false", 0 }, - { "TreatWarningAsError", "WX", "", "true", 0 }, - { "SDLCheck", "sdl-", "", "false", 0 }, - { "SDLCheck", "sdl", "", "true", 0 }, - { "IntrinsicFunctions", "Oi", "", "true", 0 }, - { "OmitFramePointers", "Oy-", "", "false", 0 }, - { "OmitFramePointers", "Oy", "", "true", 0 }, - { "EnableFiberSafeOptimizations", "GT", "", "true", 0 }, - { "WholeProgramOptimization", "GL", "", "true", 0 }, - { "UndefineAllPreprocessorDefinitions", "u", "", "true", 0 }, - { "IgnoreStandardIncludePath", "X", "", "true", 0 }, - { "PreprocessToFile", "P", "", "true", 0 }, - { "PreprocessSuppressLineNumbers", "EP", "", "true", 0 }, - { "PreprocessKeepComments", "C", "", "true", 0 }, - { "StringPooling", "GF-", "", "false", 0 }, - { "StringPooling", "GF", "", "true", 0 }, - { "MinimalRebuild", "Gm-", "", "false", 0 }, - { "MinimalRebuild", "Gm", "", "true", 0 }, - { "SmallerTypeCheck", "RTCc", "", "true", 0 }, - { "FunctionLevelLinking", "Gy-", "", "false", 0 }, - { "FunctionLevelLinking", "Gy", "", "true", 0 }, - { "EnableParallelCodeGeneration", "Qpar-", "", "false", 0 }, - { "EnableParallelCodeGeneration", "Qpar", "", "true", 0 }, - { "FloatingPointExceptions", "fp:except-", "", "false", 0 }, - { "FloatingPointExceptions", "fp:except", "", "true", 0 }, - { "CreateHotpatchableImage", "hotpatch", "", "true", 0 }, - { "DisableLanguageExtensions", "Za", "", "true", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0 }, - { "TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0 }, - { "ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0 }, - { "RemoveUnreferencedCodeData", "Zc:inline-", "", "false", 0 }, - { "RemoveUnreferencedCodeData", "Zc:inline", "", "true", 0 }, - { "EnforceTypeConversionRules", "Zc:rvalueCast-", "", "false", 0 }, - { "EnforceTypeConversionRules", "Zc:rvalueCast", "", "true", 0 }, - { "RuntimeTypeInfo", "GR-", "", "false", 0 }, - { "RuntimeTypeInfo", "GR", "", "true", 0 }, - { "OpenMPSupport", "openmp-", "", "false", 0 }, - { "OpenMPSupport", "openmp", "", "true", 0 }, - { "ExpandAttributedSource", "Fx", "", "true", 0 }, - { "UseUnicodeForAssemblerListing", "FAu", "", "true", 0 }, - { "ShowIncludes", "showIncludes", "", "true", 0 }, - { "EnablePREfast", "analyze-", "", "false", 0 }, - { "EnablePREfast", "analyze", "", "true", 0 }, - { "UseFullPaths", "FC", "", "true", 0 }, - { "OmitDefaultLibName", "Zl", "", "true", 0 }, - { "SupportJustMyCode", "JMC-", "", "false", 0 }, - { "SupportJustMyCode", "JMC", "", "true", 0 }, - - // Bool Properties With Argument - { "MultiProcessorCompilation", "MP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "ProcessorNumber", "MP", "Multi-processor Compilation", "", - cmVS7FlagTable::UserValueRequired }, - { "GenerateXMLDocumentationFiles", "doc", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "", - cmVS7FlagTable::UserValueRequired }, - { "BrowseInformation", "FR", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "BrowseInformationFile", "FR", "Enable Browse Information", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalIncludeDirectories", "I", "Additional Include Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalUsingDirectories", "AI", "Additional #using Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PreprocessorDefinitions", "D ", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "UndefinePreprocessorDefinitions", "U", - "Undefine Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DisableSpecificWarnings", "wd", "Disable Specific Warnings", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedIncludeFiles", "FI", "Forced Include File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForcedUsingFiles", "FU", "Forced #using File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "PREfastLog", "analyze:log", "Code Analysis Log", "", - cmVS7FlagTable::UserFollowing }, - { "PREfastAdditionalPlugins", "analyze:plugin", - "Additional Code Analysis Native plugins", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "TreatSpecificWarningsAsErrors", "we", "Treat Specific Warnings As Errors", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "WarningVersion", "Wv:", "Warning Version", "", - cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - { "PreprocessOutputPath", "Fi", "Preprocess Output Path", "", - cmVS7FlagTable::UserValue }, - { "PrecompiledHeaderFile", "Yc", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderFile", "Yu", "Precompiled Header Name", "", - cmVS7FlagTable::UserValueRequired }, - { "PrecompiledHeaderOutputFile", "Fp", "Precompiled Header Output File", "", - cmVS7FlagTable::UserValue }, - { "AssemblerListingLocation", "Fa", "ASM List Location", "", - cmVS7FlagTable::UserValue }, - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "ProgramDataBaseFileName", "Fd", "Program Database File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [XMLDocumentationFileName] - no command line Switch. - // Skip [BrowseInformationFile] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS141CSharpFlagTable.h b/Source/cmVS141CSharpFlagTable.h deleted file mode 100644 index 1f84097..0000000 --- a/Source/cmVS141CSharpFlagTable.h +++ /dev/null @@ -1,126 +0,0 @@ -static cmVS7FlagTable cmVS141CSharpFlagTable[] = { - { "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired }, - - { "OutputType", "target:exe", "", "Exe", 0 }, - { "OutputType", "target:winexe", "", "Winexe", 0 }, - { "OutputType", "target:library", "", "Library", 0 }, - { "OutputType", "target:module", "", "Module", 0 }, - - { "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired }, - - { "Platform", "platform:x86", "", "x86", 0 }, - { "Platform", "platform:Itanium", "", "Itanium", 0 }, - { "Platform", "platform:x64", "", "x64", 0 }, - { "Platform", "platform:arm", "", "arm", 0 }, - { "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred", - 0 }, - { "Platform", "platform:anycpu", "", "anycpu", 0 }, - - { "References", "reference:", "mit alias", "", 0 }, - { "References", "reference:", "dateiliste", "", 0 }, - { "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable }, - { "", "link", "", "", 0 }, - - { "Win32Resource", "win32res:", "", "", cmIDEFlagTable::UserValueRequired }, - { "ApplicationIcon", "win32icon:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "ApplicationManifest", "win32manifest:", "", "", - cmIDEFlagTable::UserValueRequired }, - - { "NoWin32Manifest", "nowin32manifest", "", "true", 0 }, - - { "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue }, - - { "DebugSymbols", "debug", "", "true", 0 }, - { "DebugSymbols", "debug-", "", "false", 0 }, - { "DebugSymbols", "debug+", "", "true", 0 }, - - { "DebugType", "debug:none", "", "none", 0 }, - { "DebugType", "debug:full", "", "full", 0 }, - { "DebugType", "debug:pdbonly", "", "pdbonly", 0 }, - - { "Optimize", "optimize", "", "true", 0 }, - { "Optimize", "optimize-", "", "false", 0 }, - { "Optimize", "optimize+", "", "true", 0 }, - - { "TreatWarningsAsErrors", "warnaserror", "", "true", 0 }, - { "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 }, - { "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 }, - - { "WarningsAsErrors", "warnaserror", "", "", 0 }, - { "WarningsAsErrors", "warnaserror-", "", "", 0 }, - { "WarningsAsErrors", "warnaserror+", "", "", 0 }, - - { "WarningLevel", "warn:0", "", "0", 0 }, - { "WarningLevel", "warn:1", "", "1", 0 }, - { "WarningLevel", "warn:2", "", "2", 0 }, - { "WarningLevel", "warn:3", "", "3", 0 }, - { "WarningLevel", "warn:4", "", "4", 0 }, - { "DisabledWarnings", "nowarn", "", "", 0 }, - - { "CheckForOverflowUnderflow", "checked", "", "true", 0 }, - { "CheckForOverflowUnderflow", "checked-", "", "false", 0 }, - { "CheckForOverflowUnderflow", "checked+", "", "true", 0 }, - - { "AllowUnsafeBlocks", "unsafe", "", "true", 0 }, - { "AllowUnsafeBlocks", "unsafe-", "", "false", 0 }, - { "AllowUnsafeBlocks", "unsafe+", "", "true", 0 }, - - { "DefineConstants", "define:", "", "", - cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue }, - - { "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 }, - { "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 }, - { "LangVersion", "langversion:3", "", "3", 0 }, - { "LangVersion", "langversion:4", "", "4", 0 }, - { "LangVersion", "langversion:5", "", "5", 0 }, - { "LangVersion", "langversion:6", "", "6", 0 }, - { "LangVersion", "langversion:7.0", "", "7.0", 0 }, - { "LangVersion", "langversion:7.1", "", "7.1", 0 }, - { "LangVersion", "langversion:7.2", "", "7.2", 0 }, - { "LangVersion", "langversion:7.3", "", "7.3", 0 }, - { "LangVersion", "langversion:default", "", "default", 0 }, - { "LangVersion", "langversion:latest", "", "latest", 0 }, - - { "DelaySign", "delaysign", "", "true", 0 }, - { "DelaySign", "delaysign-", "", "false", 0 }, - { "DelaySign", "delaysign+", "", "true", 0 }, - - { "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 }, - - { "KeyContainerName", "keycontainer", "", "", 0 }, - - { "NoLogo", "nologo", "", "", 0 }, - - { "NoConfig", "noconfig", "", "true", 0 }, - - { "BaseAddress", "baseaddress:", "", "", 0 }, - - { "CodePage", "codepage", "", "", 0 }, - - { "Utf8Output", "utf8output", "", "", 0 }, - - { "MainEntryPoint", "main:", "", "", 0 }, - - { "GenerateFullPaths", "fullpaths", "", "true", 0 }, - - { "FileAlignment", "filealign", "", "", 0 }, - - { "PdbFile", "pdb:", "", "", 0 }, - - { "NoStandardLib", "nostdlib", "", "true", 0 }, - { "NoStandardLib", "nostdlib-", "", "false", 0 }, - { "NoStandardLib", "nostdlib+", "", "true", 0 }, - - { "SubsystemVersion", "subsystemversion", "", "", 0 }, - - { "AdditionalLibPaths", "lib:", "", "", 0 }, - - { "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 }, - { "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 }, - { "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 }, - { "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 }, - - { 0, 0, 0, 0, 0 }, -}; diff --git a/Source/cmVS141LinkFlagTable.h b/Source/cmVS141LinkFlagTable.h deleted file mode 100644 index 7e56c8e..0000000 --- a/Source/cmVS141LinkFlagTable.h +++ /dev/null @@ -1,287 +0,0 @@ -static cmVS7FlagTable cmVS141LinkFlagTable[] = { - - // Enum Properties - { "ShowProgress", "", "Not Set", "NotSet", 0 }, - { "ShowProgress", "VERBOSE", "Display all progress messages", "LinkVerbose", - 0 }, - { "ShowProgress", "VERBOSE:Lib", "For Libraries Searched", "LinkVerboseLib", - 0 }, - { "ShowProgress", "VERBOSE:ICF", - "About COMDAT folding during optimized linking", "LinkVerboseICF", 0 }, - { "ShowProgress", "VERBOSE:REF", - "About data removed during optimized linking", "LinkVerboseREF", 0 }, - { "ShowProgress", "VERBOSE:SAFESEH", "About Modules incompatible with SEH", - "LinkVerboseSAFESEH", 0 }, - { "ShowProgress", "VERBOSE:CLR", - "About linker activity related to managed code", "LinkVerboseCLR", 0 }, - - { "ForceFileOutput", "FORCE", "Enabled", "Enabled", 0 }, - { "ForceFileOutput", "FORCE:MULTIPLE", "Multiply Defined Symbol Only", - "MultiplyDefinedSymbolOnly", 0 }, - { "ForceFileOutput", "FORCE:UNRESOLVED", "Undefined Symbol Only", - "UndefinedSymbolOnly", 0 }, - - { "CreateHotPatchableImage", "FUNCTIONPADMIN", "Enabled", "Enabled", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:5", "X86 Image Only", - "X86Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:6", "X64 Image Only", - "X64Image", 0 }, - { "CreateHotPatchableImage", "FUNCTIONPADMIN:16", "Itanium Image Only", - "ItaniumImage", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACExecutionLevel", "level='asInvoker'", "asInvoker", "AsInvoker", 0 }, - { "UACExecutionLevel", "level='highestAvailable'", "highestAvailable", - "HighestAvailable", 0 }, - { "UACExecutionLevel", "level='requireAdministrator'", - "requireAdministrator", "RequireAdministrator", 0 }, - - { "GenerateDebugInformation", "DEBUG:FASTLINK", - "Generate Debug Information optimized for faster links", "DebugFastLink", - cmVS7FlagTable::CaseInsensitive }, - { "GenerateDebugInformation", "DEBUG:FULL", - "Generate Debug Information optimized for sharing and publishing", - "DebugFull", cmVS7FlagTable::CaseInsensitive }, - { "GenerateDebugInformation", "DEBUG:NONE", - "Produces no debugging information", "false", - cmVS7FlagTable::CaseInsensitive }, - { "GenerateDebugInformation", "DEBUG", "Generate Debug Information", "true", - cmVS7FlagTable::CaseInsensitive }, - - { "SubSystem", "", "Not Set", "NotSet", 0 }, - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - { "Driver", "", "Not Set", "NotSet", 0 }, - { "Driver", "Driver", "Driver", "Driver", 0 }, - { "Driver", "DRIVER:UPONLY", "UP Only", "UpOnly", 0 }, - { "Driver", "DRIVER:WDM", "WDM", "WDM", 0 }, - - { "LinkTimeCodeGeneration", "", "Default", "Default", 0 }, - { "LinkTimeCodeGeneration", "LTCG:incremental", - "Use Fast Link Time Code Generation", "UseFastLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "Use Link Time Code Generation", - "UseLinkTimeCodeGeneration", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGInstrument", - "Profile Guided Optimization - Instrument", "PGInstrument", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGOptimize", - "Profile Guided Optimization - Optimization", "PGOptimization", 0 }, - { "LinkTimeCodeGeneration", "LTCG:PGUpdate", - "Profile Guided Optimization - Update", "PGUpdate", 0 }, - - { "GenerateWindowsMetadata", "WINMD", "Yes", "true", 0 }, - { "GenerateWindowsMetadata", "WINMD:NO", "No", "false", 0 }, - - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "WindowsMetadataSignHash", "WINMDSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "TargetMachine", "", "Not Set", "NotSet", 0 }, - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:ARM64", "MachineARM64", "MachineARM64", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA", "MTA threading attribute", - "MTAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA", "STA threading attribute", - "STAThreadingAttribute", 0 }, - { "CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE", - "Default threading attribute", "DefaultThreadingAttribute", 0 }, - - { "CLRImageType", "CLRIMAGETYPE:IJW", "Force IJW image", "ForceIJWImage", - 0 }, - { "CLRImageType", "CLRIMAGETYPE:PURE", "Force Pure IL Image", - "ForcePureILImage", 0 }, - { "CLRImageType", "CLRIMAGETYPE:SAFE", "Force Safe IL Image", - "ForceSafeILImage", 0 }, - { "CLRImageType", "", "Default image type", "Default", 0 }, - - { "SignHash", "CLRSIGNHASH:SHA1", "SHA1", "SHA1", 0 }, - { "SignHash", "CLRSIGNHASH:SHA256", "SHA256", "SHA256", 0 }, - { "SignHash", "CLRSIGNHASH:SHA384", "SHA384", "SHA384", 0 }, - { "SignHash", "CLRSIGNHASH:SHA512", "SHA512", "SHA512", 0 }, - - { "LinkErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "LinkErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "LinkErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "LinkErrorReporting", "ERRORREPORT:NONE", "No Error Report", - "NoErrorReport", 0 }, - - { "CLRSupportLastError", "CLRSupportLastError", "Enabled", "Enabled", 0 }, - { "CLRSupportLastError", "CLRSupportLastError:NO", "Disabled", "Disabled", - 0 }, - { "CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL", "System Dlls Only", - "SystemDlls", 0 }, - - // Bool Properties - { "LinkIncremental", "INCREMENTAL:NO", "", "false", 0 }, - { "LinkIncremental", "INCREMENTAL", "", "true", 0 }, - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "LinkStatus", "LTCG:NOSTATUS", "", "false", 0 }, - { "LinkStatus", "LTCG:STATUS", "", "true", 0 }, - { "PreventDllBinding", "ALLOWBIND:NO", "", "false", 0 }, - { "PreventDllBinding", "ALLOWBIND", "", "true", 0 }, - { "TreatLinkerWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLinkerWarningAsErrors", "WX", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "GenerateManifest", "MANIFEST:NO", "", "false", 0 }, - { "GenerateManifest", "MANIFEST", "", "true", 0 }, - { "AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0 }, - - // correct flags for uac should be /MANIFESTUAC, but some projects already - // use this bug to access uac field, so keep these for compatibility - { "UACUIAccess", "uiAccess='false'", "", "false", 0 }, - { "UACUIAccess", "uiAccess='true'", "", "true", 0 }, - - { "ManifestEmbed", "manifest:embed", "", "true", 0 }, - { "MapExports", "MAPINFO:EXPORTS", "", "true", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0 }, - { "AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE:NO", "", "false", 0 }, - { "LargeAddressAware", "LARGEADDRESSAWARE", "", "true", 0 }, - { "TerminalServerAware", "TSAWARE:NO", "", "false", 0 }, - { "TerminalServerAware", "TSAWARE", "", "true", 0 }, - { "SwapRunFromCD", "SWAPRUN:CD", "", "true", 0 }, - { "SwapRunFromNET", "SWAPRUN:NET", "", "true", 0 }, - { "OptimizeReferences", "OPT:NOREF", "", "false", 0 }, - { "OptimizeReferences", "OPT:REF", "", "true", 0 }, - { "EnableCOMDATFolding", "OPT:NOICF", "", "false", 0 }, - { "EnableCOMDATFolding", "OPT:ICF", "", "true", 0 }, - { "IgnoreEmbeddedIDL", "IGNOREIDL", "", "true", 0 }, - { "AppContainer", "APPCONTAINER", "", "true", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN:NO", "", "false", 0 }, - { "WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN", "", "true", 0 }, - { "NoEntryPoint", "NOENTRY", "", "true", 0 }, - { "SetChecksum", "RELEASE", "", "true", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE:NO", "", "false", 0 }, - { "RandomizedBaseAddress", "DYNAMICBASE", "", "true", 0 }, - { "FixedBaseAddress", "FIXED:NO", "", "false", 0 }, - { "FixedBaseAddress", "FIXED", "", "true", 0 }, - { "DataExecutionPrevention", "NXCOMPAT:NO", "", "false", 0 }, - { "DataExecutionPrevention", "NXCOMPAT", "", "true", 0 }, - { "TurnOffAssemblyGeneration", "NOASSEMBLY", "", "true", 0 }, - { "SupportUnloadOfDelayLoadedDLL", "DELAY:UNLOAD", "", "true", 0 }, - { "SupportNobindOfDelayLoadedDLL", "DELAY:NOBIND", "", "true", 0 }, - { "Profile", "PROFILE", "", "true", 0 }, - { "LinkDelaySign", "DELAYSIGN:NO", "", "false", 0 }, - { "LinkDelaySign", "DELAYSIGN", "", "true", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK:NO", "", "false", 0 }, - { "CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK", "", "true", 0 }, - { "DetectOneDefinitionRule", "ODR", "", "true", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH:NO", "", "false", 0 }, - { "ImageHasSafeExceptionHandlers", "SAFESEH", "", "true", 0 }, - { "LinkDLL", "DLL", "", "true", 0 }, - - // Bool Properties With Argument - { "EnableUAC", "MANIFESTUAC:", "", "", - cmVS7FlagTable::UserValueRequired | cmVS7FlagTable::SpaceAppendable }, - { "GenerateMapFile", "MAP", "", "true", - cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue }, - { "MapFileName", "MAP:", "Generate Map File", "", - cmVS7FlagTable::UserValueRequired }, - - // String List Properties - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "Natvis", "NATVIS:", "Natvis files", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AddModuleNamesToAssembly", "ASSEMBLYMODULE:", "Add Module to Assembly", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "EmbedManagedResourceFile", - "ASSEMBLYRESOURCE:", "Embed Managed Resource File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "DelayLoadDLLs", "DELAYLOAD:", "Delay Loaded Dlls", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:", "Assembly Link Resource", - "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "AdditionalManifestDependencies", - "MANIFESTDEPENDENCY:", "Additional Manifest Dependencies", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ManifestInput", "manifestinput:", "Manifest Input", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "Version", "VERSION:", "Version", "", cmVS7FlagTable::UserValue }, - { "SpecifySectionAttributes", "SECTION:", "Specify Section Attributes", "", - cmVS7FlagTable::UserValue }, - { "MSDOSStubFileName", "STUB:", "MS-DOS Stub File Name", "", - cmVS7FlagTable::UserValue }, - // Skip [TrackerLogDirectory] - no command line Switch. - { "ModuleDefinitionFile", "DEF:", "Module Definition File", "", - cmVS7FlagTable::UserValue }, - { "ManifestFile", "ManifestFile:", "Manifest File", "", - cmVS7FlagTable::UserValue }, - { "ProgramDatabaseFile", "PDB:", "Generate Program Database File", "", - cmVS7FlagTable::UserValue }, - { "StripPrivateSymbols", "PDBSTRIPPED:", "Strip Private Symbols", "", - cmVS7FlagTable::UserValue }, - // Skip [MapFileName] - no command line Switch. - // Skip [MinimumRequiredVersion] - no command line Switch. - { "HeapReserveSize", "HEAP:", "Heap Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [HeapCommitSize] - no command line Switch. - { "StackReserveSize", "STACK:", "Stack Reserve Size", "", - cmVS7FlagTable::UserValue }, - // Skip [StackCommitSize] - no command line Switch. - { "FunctionOrder", "ORDER:@", "Function Order", "", - cmVS7FlagTable::UserValue }, - { "ProfileGuidedDatabase", "PGD:", "Profile Guided Database", "", - cmVS7FlagTable::UserValue }, - { "MidlCommandFile", "MIDL:@", "MIDL Commands", "", - cmVS7FlagTable::UserValue }, - { "MergedIDLBaseFileName", "IDLOUT:", "Merged IDL Base File Name", "", - cmVS7FlagTable::UserValue }, - { "TypeLibraryFile", "TLBOUT:", "Type Library", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataFile", "WINMDFILE:", "Windows Metadata File", "", - cmVS7FlagTable::UserValue }, - { "WindowsMetadataLinkKeyFile", "WINMDKEYFILE:", "Windows Metadata Key File", - "", cmVS7FlagTable::UserValue }, - { "WindowsMetadataKeyContainer", "WINMDKEYCONTAINER:", - "Windows Metadata Key Container", "", cmVS7FlagTable::UserValue }, - { "EntryPointSymbol", "ENTRY:", "Entry Point", "", - cmVS7FlagTable::UserValue }, - { "BaseAddress", "BASE:", "Base Address", "", cmVS7FlagTable::UserValue }, - { "ImportLibrary", "IMPLIB:", "Import Library", "", - cmVS7FlagTable::UserValue }, - { "MergeSections", "MERGE:", "Merge Sections", "", - cmVS7FlagTable::UserValue }, - { "LinkKeyFile", "KEYFILE:", "Key File", "", cmVS7FlagTable::UserValue }, - { "KeyContainer", "KEYCONTAINER:", "Key Container", "", - cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS14LibFlagTable.h b/Source/cmVS14LibFlagTable.h deleted file mode 100644 index adce075..0000000 --- a/Source/cmVS14LibFlagTable.h +++ /dev/null @@ -1,77 +0,0 @@ -static cmVS7FlagTable cmVS14LibFlagTable[] = { - - // Enum Properties - { "ErrorReporting", "ERRORREPORT:PROMPT", "PromptImmediately", - "PromptImmediately", 0 }, - { "ErrorReporting", "ERRORREPORT:QUEUE", "Queue For Next Login", - "QueueForNextLogin", 0 }, - { "ErrorReporting", "ERRORREPORT:SEND", "Send Error Report", - "SendErrorReport", 0 }, - { "ErrorReporting", "ERRORREPORT:NONE", "No Error Report", "NoErrorReport", - 0 }, - - { "TargetMachine", "MACHINE:ARM", "MachineARM", "MachineARM", 0 }, - { "TargetMachine", "MACHINE:ARM64", "MachineARM64", "MachineARM64", 0 }, - { "TargetMachine", "MACHINE:EBC", "MachineEBC", "MachineEBC", 0 }, - { "TargetMachine", "MACHINE:IA64", "MachineIA64", "MachineIA64", 0 }, - { "TargetMachine", "MACHINE:MIPS", "MachineMIPS", "MachineMIPS", 0 }, - { "TargetMachine", "MACHINE:MIPS16", "MachineMIPS16", "MachineMIPS16", 0 }, - { "TargetMachine", "MACHINE:MIPSFPU", "MachineMIPSFPU", "MachineMIPSFPU", - 0 }, - { "TargetMachine", "MACHINE:MIPSFPU16", "MachineMIPSFPU16", - "MachineMIPSFPU16", 0 }, - { "TargetMachine", "MACHINE:SH4", "MachineSH4", "MachineSH4", 0 }, - { "TargetMachine", "MACHINE:THUMB", "MachineTHUMB", "MachineTHUMB", 0 }, - { "TargetMachine", "MACHINE:X64", "MachineX64", "MachineX64", 0 }, - { "TargetMachine", "MACHINE:X86", "MachineX86", "MachineX86", 0 }, - - { "SubSystem", "SUBSYSTEM:CONSOLE", "Console", "Console", 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWS", "Windows", "Windows", 0 }, - { "SubSystem", "SUBSYSTEM:NATIVE", "Native", "Native", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_APPLICATION", "EFI Application", - "EFI Application", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", - "EFI Boot Service Driver", "EFI Boot Service Driver", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_ROM", "EFI ROM", "EFI ROM", 0 }, - { "SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER", "EFI Runtime", "EFI Runtime", - 0 }, - { "SubSystem", "SUBSYSTEM:WINDOWSCE", "WindowsCE", "WindowsCE", 0 }, - { "SubSystem", "SUBSYSTEM:POSIX", "POSIX", "POSIX", 0 }, - - // Bool Properties - { "SuppressStartupBanner", "NOLOGO", "", "true", 0 }, - { "IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0 }, - { "TreatLibWarningAsErrors", "WX:NO", "", "false", 0 }, - { "TreatLibWarningAsErrors", "WX", "", "true", 0 }, - { "Verbose", "VERBOSE", "", "true", 0 }, - { "LinkTimeCodeGeneration", "LTCG", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - // Skip [AdditionalDependencies] - no command line Switch. - { "AdditionalLibraryDirectories", - "LIBPATH:", "Additional Library Directories", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IgnoreSpecificDefaultLibraries", - "NODEFAULTLIB:", "Ignore Specific Default Libraries", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "ExportNamedFunctions", "EXPORT:", "Export Named Functions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "RemoveObjects", "REMOVE:", "Remove Objects", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - - // String Properties - { "OutputFile", "OUT:", "Output File", "", cmVS7FlagTable::UserValue }, - { "ModuleDefinitionFile", "DEF:", "Module Definition File Name", "", - cmVS7FlagTable::UserValue }, - { "ForceSymbolReferences", "INCLUDE:", "Force Symbol References", "", - cmVS7FlagTable::UserValue }, - { "DisplayLibrary", "LIST:", "Display Library to standard output", "", - cmVS7FlagTable::UserValue }, - // Skip [MinimumRequiredVersion] - no command line Switch. - { "Name", "NAME:", "Name", "", cmVS7FlagTable::UserValue }, - // Skip [AdditionalOptions] - no command line Switch. - // Skip [TrackerLogDirectory] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS14MASMFlagTable.h b/Source/cmVS14MASMFlagTable.h deleted file mode 100644 index 82ec9f1..0000000 --- a/Source/cmVS14MASMFlagTable.h +++ /dev/null @@ -1,76 +0,0 @@ -static cmVS7FlagTable cmVS14MASMFlagTable[] = { - - // Enum Properties - { "PreserveIdentifierCase", "", "Default", "0", 0 }, - { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1", - 0 }, - { "PreserveIdentifierCase", "Cu", - "Maps all identifiers to upper case. (/Cu)", "2", 0 }, - { "PreserveIdentifierCase", "Cx", - "Preserves case in public and extern symbols. (/Cx)", "3", 0 }, - - { "WarningLevel", "W0", "Warning Level 0 (/W0)", "0", 0 }, - { "WarningLevel", "W1", "Warning Level 1 (/W1)", "1", 0 }, - { "WarningLevel", "W2", "Warning Level 2 (/W2)", "2", 0 }, - { "WarningLevel", "W3", "Warning Level 3 (/W3)", "3", 0 }, - - { "PackAlignmentBoundary", "", "Default", "0", 0 }, - { "PackAlignmentBoundary", "Zp1", "One Byte Boundary (/Zp1)", "1", 0 }, - { "PackAlignmentBoundary", "Zp2", "Two Byte Boundary (/Zp2)", "2", 0 }, - { "PackAlignmentBoundary", "Zp4", "Four Byte Boundary (/Zp4)", "3", 0 }, - { "PackAlignmentBoundary", "Zp8", "Eight Byte Boundary (/Zp8)", "4", 0 }, - { "PackAlignmentBoundary", "Zp16", "Sixteen Byte Boundary (/Zp16)", "5", 0 }, - - { "CallingConvention", "", "Default", "0", 0 }, - { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1", - 0 }, - { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2", - 0 }, - { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 }, - - { "ErrorReporting", "errorReport:prompt", - "Prompt to send report immediately (/errorReport:prompt)", "0", 0 }, - { "ErrorReporting", "errorReport:queue", - "Prompt to send report at the next logon (/errorReport:queue)", "1", 0 }, - { "ErrorReporting", "errorReport:send", - "Automatically send report (/errorReport:send)", "2", 0 }, - { "ErrorReporting", "errorReport:none", - "Do not send report (/errorReport:none)", "3", 0 }, - - // Bool Properties - { "NoLogo", "nologo", "", "true", 0 }, - { "GeneratePreprocessedSourceListing", "EP", "", "true", 0 }, - { "ListAllAvailableInformation", "Sa", "", "true", 0 }, - { "UseSafeExceptionHandlers", "safeseh", "", "true", 0 }, - { "AddFirstPassListing", "Sf", "", "true", 0 }, - { "EnableAssemblyGeneratedCodeListing", "Sg", "", "true", 0 }, - { "DisableSymbolTable", "Sn", "", "true", 0 }, - { "EnableFalseConditionalsInListing", "Sx", "", "true", 0 }, - { "TreatWarningsAsErrors", "WX", "", "true", 0 }, - { "MakeAllSymbolsPublic", "Zf", "", "true", 0 }, - { "GenerateDebugInformation", "Zi", "", "true", 0 }, - { "EnableMASM51Compatibility", "Zm", "", "true", 0 }, - { "PerformSyntaxCheckOnly", "Zs", "", "true", 0 }, - - // Bool Properties With Argument - - // String List Properties - { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "IncludePaths", "I", "Include Paths", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - { "BrowseFile", "FR", "Generate Browse Information File", "", - cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable }, - // Skip [AdditionalDependencies] - no command line Switch. - - // String Properties - // Skip [Inputs] - no command line Switch. - { "ObjectFileName", "Fo", "Object File Name", "", - cmVS7FlagTable::UserValue }, - { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "", - cmVS7FlagTable::UserValue }, - // Skip [CommandLineTemplate] - no command line Switch. - // Skip [ExecutionDescription] - no command line Switch. - // Skip [AdditionalOptions] - no command line Switch. - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVS14RCFlagTable.h b/Source/cmVS14RCFlagTable.h deleted file mode 100644 index 5dc8d5a..0000000 --- a/Source/cmVS14RCFlagTable.h +++ /dev/null @@ -1,7 +0,0 @@ -static cmVS7FlagTable cmVS14RCFlagTable[] = { - // Bool Properties - { "NullTerminateStrings", "n", "", "true", 0 }, - { "SuppressStartupBanner", "nologo", "", "true", 0 }, - - { 0, 0, 0, 0, 0 } -}; diff --git a/Source/cmVSSetupHelper.cxx b/Source/cmVSSetupHelper.cxx index 22fe007..7a54e12 100644 --- a/Source/cmVSSetupHelper.cxx +++ b/Source/cmVSSetupHelper.cxx @@ -267,6 +267,19 @@ bool cmVSSetupAPIHelper::GetVCToolsetVersion(std::string& vsToolsetVersion) return isInstalled && !vsToolsetVersion.empty(); } +bool cmVSSetupAPIHelper::IsEWDKEnabled() +{ + std::string envEnterpriseWDK, envDisableRegistryUse; + cmSystemTools::GetEnv("EnterpriseWDK", envEnterpriseWDK); + cmSystemTools::GetEnv("DisableRegistryUse", envDisableRegistryUse); + if (!cmSystemTools::Strucmp(envEnterpriseWDK.c_str(), "True") && + !cmSystemTools::Strucmp(envDisableRegistryUse.c_str(), "True")) { + return true; + } + + return false; +} + bool cmVSSetupAPIHelper::EnumerateAndChooseVSInstance() { bool isVSInstanceExists = false; @@ -274,6 +287,26 @@ bool cmVSSetupAPIHelper::EnumerateAndChooseVSInstance() return true; } + if (this->IsEWDKEnabled()) { + std::string envWindowsSdkDir81, envVSVersion, envVsInstallDir; + + cmSystemTools::GetEnv("WindowsSdkDir_81", envWindowsSdkDir81); + cmSystemTools::GetEnv("VisualStudioVersion", envVSVersion); + cmSystemTools::GetEnv("VSINSTALLDIR", envVsInstallDir); + if (envVSVersion.empty() || envVsInstallDir.empty()) + return false; + + chosenInstanceInfo.VSInstallLocation = + std::wstring(envVsInstallDir.begin(), envVsInstallDir.end()); + chosenInstanceInfo.Version = + std::wstring(envVSVersion.begin(), envVSVersion.end()); + chosenInstanceInfo.VCToolsetVersion = envVSVersion; + chosenInstanceInfo.ullVersion = std::stoi(envVSVersion); + chosenInstanceInfo.IsWin10SDKInstalled = true; + chosenInstanceInfo.IsWin81SDKInstalled = !envWindowsSdkDir81.empty(); + return true; + } + if (initializationFailure || setupConfig == NULL || setupConfig2 == NULL || setupHelper == NULL) return false; diff --git a/Source/cmVSSetupHelper.h b/Source/cmVSSetupHelper.h index 4144c15..b9cca45 100644 --- a/Source/cmVSSetupHelper.h +++ b/Source/cmVSSetupHelper.h @@ -150,6 +150,7 @@ private: HRESULT comInitialized; // current best instance of VS selected VSInstanceInfo chosenInstanceInfo; + bool IsEWDKEnabled(); std::string SpecifiedVSInstallLocation; }; diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index e9a1a67..7d7defc 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -3319,7 +3319,8 @@ bool cmVisualStudio10TargetGenerator::ComputeLinkOptions( std::vector<std::string> vsTargetVec; this->AddLibraries(cli, libVec, vsTargetVec, config); if (std::find(linkClosure->Languages.begin(), linkClosure->Languages.end(), - "CUDA") != linkClosure->Languages.end()) { + "CUDA") != linkClosure->Languages.end() && + this->CudaOptions[config] != nullptr) { switch (this->CudaOptions[config]->GetCudaRuntime()) { case cmVisualStudioGeneratorOptions::CudaRuntimeStatic: libVec.push_back("cudadevrt.lib"); diff --git a/Source/cmVisualStudio10ToolsetOptions.cxx b/Source/cmVisualStudio10ToolsetOptions.cxx index 9a1d950..f71b8b7 100644 --- a/Source/cmVisualStudio10ToolsetOptions.cxx +++ b/Source/cmVisualStudio10ToolsetOptions.cxx @@ -6,145 +6,123 @@ #include "cmIDEFlagTable.h" #include "cmVisualStudioGeneratorOptions.h" -#include "cmVS10CLFlagTable.h" -#include "cmVS10CSharpFlagTable.h" -#include "cmVS10LibFlagTable.h" -#include "cmVS10LinkFlagTable.h" -#include "cmVS10MASMFlagTable.h" -#include "cmVS10RCFlagTable.h" -#include "cmVS11CLFlagTable.h" -#include "cmVS11CSharpFlagTable.h" -#include "cmVS11LibFlagTable.h" -#include "cmVS11LinkFlagTable.h" -#include "cmVS11MASMFlagTable.h" -#include "cmVS11RCFlagTable.h" -#include "cmVS12CLFlagTable.h" -#include "cmVS12CSharpFlagTable.h" -#include "cmVS12LibFlagTable.h" -#include "cmVS12LinkFlagTable.h" -#include "cmVS12MASMFlagTable.h" -#include "cmVS12RCFlagTable.h" -#include "cmVS140CLFlagTable.h" -#include "cmVS140CSharpFlagTable.h" -#include "cmVS140LinkFlagTable.h" -#include "cmVS141CLFlagTable.h" -#include "cmVS141CSharpFlagTable.h" -#include "cmVS141LinkFlagTable.h" -#include "cmVS14LibFlagTable.h" -#include "cmVS14MASMFlagTable.h" -#include "cmVS14RCFlagTable.h" - -cmIDEFlagTable const* cmVisualStudio10ToolsetOptions::GetClFlagTable( - std::string const& name, std::string const& toolset) const +std::string cmVisualStudio10ToolsetOptions::GetClFlagTableName( + std::string const& name, std::string const& toolset, + std::string const& defaultToolset) const { std::string const useToolset = this->GetToolsetName(name, toolset); if (toolset == "v141") { - return cmVS141CLFlagTable; + return "v141"; } else if (useToolset == "v140") { - return cmVS140CLFlagTable; + return "v140"; } else if (useToolset == "v120") { - return cmVS12CLFlagTable; + return "v12"; } else if (useToolset == "v110") { - return cmVS11CLFlagTable; + return "v11"; } else if (useToolset == "v100") { - return cmVS10CLFlagTable; + return "v10"; } else { - return 0; + return this->GetToolsetName(name, defaultToolset); } } -cmIDEFlagTable const* cmVisualStudio10ToolsetOptions::GetCSharpFlagTable( - std::string const& name, std::string const& toolset) const +std::string cmVisualStudio10ToolsetOptions::GetCSharpFlagTableName( + std::string const& name, std::string const& toolset, + std::string const& defaultToolset) const { std::string const useToolset = this->GetToolsetName(name, toolset); if ((useToolset == "v141")) { - return cmVS141CSharpFlagTable; + return "v141"; } else if (useToolset == "v140") { - return cmVS140CSharpFlagTable; + return "v140"; } else if (useToolset == "v120") { - return cmVS12CSharpFlagTable; + return "v12"; } else if (useToolset == "v110") { - return cmVS11CSharpFlagTable; + return "v11"; } else if (useToolset == "v100") { - return cmVS10CSharpFlagTable; + return "v10"; } else { - return 0; + return this->GetToolsetName(name, defaultToolset); } } -cmIDEFlagTable const* cmVisualStudio10ToolsetOptions::GetRcFlagTable( - std::string const& name, std::string const& toolset) const +std::string cmVisualStudio10ToolsetOptions::GetRcFlagTableName( + std::string const& name, std::string const& toolset, + std::string const& defaultToolset) const { std::string const useToolset = this->GetToolsetName(name, toolset); if ((useToolset == "v140") || (useToolset == "v141")) { - return cmVS14RCFlagTable; + return "v14"; } else if (useToolset == "v120") { - return cmVS12RCFlagTable; + return "v12"; } else if (useToolset == "v110") { - return cmVS11RCFlagTable; + return "v11"; } else if (useToolset == "v100") { - return cmVS10RCFlagTable; + return "v10"; } else { - return 0; + return this->GetToolsetName(name, defaultToolset); } } -cmIDEFlagTable const* cmVisualStudio10ToolsetOptions::GetLibFlagTable( - std::string const& name, std::string const& toolset) const +std::string cmVisualStudio10ToolsetOptions::GetLibFlagTableName( + std::string const& name, std::string const& toolset, + std::string const& defaultToolset) const { std::string const useToolset = this->GetToolsetName(name, toolset); if ((useToolset == "v140") || (useToolset == "v141")) { - return cmVS14LibFlagTable; + return "v14"; } else if (useToolset == "v120") { - return cmVS12LibFlagTable; + return "v12"; } else if (useToolset == "v110") { - return cmVS11LibFlagTable; + return "v11"; } else if (useToolset == "v100") { - return cmVS10LibFlagTable; + return "v10"; } else { - return 0; + return this->GetToolsetName(name, defaultToolset); } } -cmIDEFlagTable const* cmVisualStudio10ToolsetOptions::GetLinkFlagTable( - std::string const& name, std::string const& toolset) const +std::string cmVisualStudio10ToolsetOptions::GetLinkFlagTableName( + std::string const& name, std::string const& toolset, + std::string const& defaultToolset) const { std::string const useToolset = this->GetToolsetName(name, toolset); if (useToolset == "v141") { - return cmVS141LinkFlagTable; + return "v141"; } else if (useToolset == "v140") { - return cmVS140LinkFlagTable; + return "v140"; } else if (useToolset == "v120") { - return cmVS12LinkFlagTable; + return "v12"; } else if (useToolset == "v110") { - return cmVS11LinkFlagTable; + return "v11"; } else if (useToolset == "v100") { - return cmVS10LinkFlagTable; + return "v10"; } else { - return 0; + return this->GetToolsetName(name, defaultToolset); } } -cmIDEFlagTable const* cmVisualStudio10ToolsetOptions::GetMasmFlagTable( - std::string const& name, std::string const& toolset) const +std::string cmVisualStudio10ToolsetOptions::GetMasmFlagTableName( + std::string const& name, std::string const& toolset, + std::string const& defaultToolset) const { std::string const useToolset = this->GetToolsetName(name, toolset); if ((useToolset == "v140") || (useToolset == "v141")) { - return cmVS14MASMFlagTable; + return "v14"; } else if (useToolset == "v120") { - return cmVS12MASMFlagTable; + return "v12"; } else if (useToolset == "v110") { - return cmVS11MASMFlagTable; + return "v11"; } else if (useToolset == "v100") { - return cmVS10MASMFlagTable; + return "v10"; } else { - return 0; + return this->GetToolsetName(name, defaultToolset); } } diff --git a/Source/cmVisualStudio10ToolsetOptions.h b/Source/cmVisualStudio10ToolsetOptions.h index c736a49..43946f0 100644 --- a/Source/cmVisualStudio10ToolsetOptions.h +++ b/Source/cmVisualStudio10ToolsetOptions.h @@ -7,8 +7,6 @@ #include <string> -struct cmIDEFlagTable; - /** \class cmVisualStudio10ToolsetOptions * \brief Retrieves toolset options for MSBuild. * @@ -17,18 +15,24 @@ struct cmIDEFlagTable; class cmVisualStudio10ToolsetOptions { public: - cmIDEFlagTable const* GetClFlagTable(std::string const& name, - std::string const& toolset) const; - cmIDEFlagTable const* GetCSharpFlagTable(std::string const& name, - std::string const& toolset) const; - cmIDEFlagTable const* GetRcFlagTable(std::string const& name, - std::string const& toolset) const; - cmIDEFlagTable const* GetLibFlagTable(std::string const& name, - std::string const& toolset) const; - cmIDEFlagTable const* GetLinkFlagTable(std::string const& name, - std::string const& toolset) const; - cmIDEFlagTable const* GetMasmFlagTable(std::string const& name, - std::string const& toolset) const; + std::string GetClFlagTableName(std::string const& name, + std::string const& toolset, + std::string const& defaultToolset) const; + std::string GetCSharpFlagTableName(std::string const& name, + std::string const& toolset, + std::string const& defaultToolset) const; + std::string GetRcFlagTableName(std::string const& name, + std::string const& toolset, + std::string const& defaultToolset) const; + std::string GetLibFlagTableName(std::string const& name, + std::string const& toolset, + std::string const& defaultToolset) const; + std::string GetLinkFlagTableName(std::string const& name, + std::string const& toolset, + std::string const& defaultToolset) const; + std::string GetMasmFlagTableName(std::string const& name, + std::string const& toolset, + std::string const& defaultToolset) const; private: std::string GetToolsetName(std::string const& name, diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 45881aa..930ced9 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -691,6 +691,8 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args) if (args[1] == "touch" && args.size() > 2) { for (std::string::size_type cc = 2; cc < args.size(); cc++) { if (!cmSystemTools::Touch(args[cc], true)) { + std::cerr << "cmake -E touch: failed to update \""; + std::cerr << args[cc] << "\".\n"; return 1; } } @@ -701,6 +703,8 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args) if (args[1] == "touch_nocreate" && args.size() > 2) { for (std::string::size_type cc = 2; cc < args.size(); cc++) { if (!cmSystemTools::Touch(args[cc], false)) { + std::cerr << "cmake -E touch_nocreate: failed to update \""; + std::cerr << args[cc] << "\".\n"; return 1; } } diff --git a/Source/ctest.cxx b/Source/ctest.cxx index ca8a776..ca412ae 100644 --- a/Source/ctest.cxx +++ b/Source/ctest.cxx @@ -128,7 +128,7 @@ static const char* cmDocumentationOptions[][2] = { { "--schedule-random", "Use a random order for scheduling tests" }, { "--submit-index", "Submit individual dashboard tests with specific index" }, - { "--timeout <seconds>", "Set a global timeout on all tests." }, + { "--timeout <seconds>", "Set the default test timeout." }, { "--stop-time <time>", "Set a time at which all tests should stop running." }, { "--http1.0", "Submit using HTTP 1.0." }, diff --git a/Source/kwsys/SystemTools.cxx b/Source/kwsys/SystemTools.cxx index 0a4ad7a..331f16e 100644 --- a/Source/kwsys/SystemTools.cxx +++ b/Source/kwsys/SystemTools.cxx @@ -1355,39 +1355,15 @@ bool SystemTools::Touch(const std::string& filename, bool create) } CloseHandle(h); #elif KWSYS_CXX_HAS_UTIMENSAT - struct timespec times[2] = { { 0, UTIME_OMIT }, { 0, UTIME_NOW } }; - if (utimensat(AT_FDCWD, filename.c_str(), times, 0) < 0) { + // utimensat is only available on newer Unixes and macOS 10.13+ + if (utimensat(AT_FDCWD, filename.c_str(), NULL, 0) < 0) { return false; } #else - struct stat st; - if (stat(filename.c_str(), &st) < 0) { - return false; - } - struct timeval mtime; - gettimeofday(&mtime, 0); -# if KWSYS_CXX_HAS_UTIMES - struct timeval atime; -# if KWSYS_CXX_STAT_HAS_ST_MTIM - atime.tv_sec = st.st_atim.tv_sec; - atime.tv_usec = st.st_atim.tv_nsec / 1000; -# elif KWSYS_CXX_STAT_HAS_ST_MTIMESPEC - atime.tv_sec = st.st_atimespec.tv_sec; - atime.tv_usec = st.st_atimespec.tv_nsec / 1000; -# else - atime.tv_sec = st.st_atime; - atime.tv_usec = 0; -# endif - struct timeval times[2] = { atime, mtime }; - if (utimes(filename.c_str(), times) < 0) { + // fall back to utimes + if (utimes(filename.c_str(), NULL) < 0) { return false; } -# else - struct utimbuf times = { st.st_atime, mtime.tv_sec }; - if (utime(filename.c_str(), ×) < 0) { - return false; - } -# endif #endif return true; } |