diff options
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r-- | Source/cmMakefileTargetGenerator.cxx | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx index 5f27856..5e3bf61 100644 --- a/Source/cmMakefileTargetGenerator.cxx +++ b/Source/cmMakefileTargetGenerator.cxx @@ -17,7 +17,7 @@ #include <cmext/algorithm> #include <cmext/string_view> -#include "cm_codecvt.hxx" +#include "cm_codecvt_Encoding.hxx" #include "cmComputeLinkInformation.h" #include "cmCustomCommand.h" @@ -126,8 +126,11 @@ void cmMakefileTargetGenerator::GetDeviceLinkFlags( std::vector<std::string> linkOpts; this->GeneratorTarget->GetLinkOptions(linkOpts, this->GetConfigName(), linkLanguage); + this->LocalGenerator->SetLinkScriptShell( + this->GlobalGenerator->GetUseLinkScript()); // LINK_OPTIONS are escaped. this->LocalGenerator->AppendCompileOptions(linkFlags, linkOpts); + this->LocalGenerator->SetLinkScriptShell(false); } void cmMakefileTargetGenerator::GetTargetLinkFlags( @@ -144,8 +147,11 @@ void cmMakefileTargetGenerator::GetTargetLinkFlags( std::vector<std::string> opts; this->GeneratorTarget->GetLinkOptions(opts, this->GetConfigName(), linkLanguage); + this->LocalGenerator->SetLinkScriptShell( + this->GlobalGenerator->GetUseLinkScript()); // LINK_OPTIONS are escaped. this->LocalGenerator->AppendCompileOptions(flags, opts); + this->LocalGenerator->SetLinkScriptShell(false); this->LocalGenerator->AppendPositionIndependentLinkerFlags( flags, this->GeneratorTarget, this->GetConfigName(), linkLanguage); @@ -2129,12 +2135,12 @@ std::string cmMakefileTargetGenerator::CreateResponseFile( // FIXME: Find a better way to determine the response file encoding, // perhaps using tool-specific platform information variables. // For now, use the makefile encoding as a heuristic. - codecvt::Encoding responseEncoding = + codecvt_Encoding responseEncoding = this->GlobalGenerator->GetMakefileEncoding(); // Non-MSVC tooling doesn't understand BOM encoded files. - if (responseEncoding == codecvt::UTF8_WITH_BOM && + if (responseEncoding == codecvt_Encoding::UTF8_WITH_BOM && (language == "CUDA" || !this->Makefile->IsOn("MSVC"))) { - responseEncoding = codecvt::UTF8; + responseEncoding = codecvt_Encoding::UTF8; } // Create the response file. |