From 19e37116cb764251d7b0029024b84e6f192e8153 Mon Sep 17 00:00:00 2001 From: Cedric Martineau Date: Fri, 3 Dec 2021 09:50:34 -0500 Subject: VS: Move LocalDebugger* settings to the end of their PropertyGroup Define the settings after others like `OutDir` so that the latter can be referenced. Fixes: #18094 --- Source/cmVisualStudio10TargetGenerator.cxx | 68 +++++++++++++++--------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index d35bd41..16f52e0 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -2670,40 +2670,6 @@ void cmVisualStudio10TargetGenerator::WritePathAndIncrementalLinkOptions( for (std::string const& config : this->Configurations) { const std::string cond = this->CalcCondition(config); - if (ttype <= cmStateEnums::UTILITY) { - if (cmValue workingDir = this->GeneratorTarget->GetProperty( - "VS_DEBUGGER_WORKING_DIRECTORY")) { - std::string genWorkingDir = cmGeneratorExpression::Evaluate( - *workingDir, this->LocalGenerator, config); - e1.WritePlatformConfigTag("LocalDebuggerWorkingDirectory", cond, - genWorkingDir); - } - - if (cmValue environment = - this->GeneratorTarget->GetProperty("VS_DEBUGGER_ENVIRONMENT")) { - std::string genEnvironment = cmGeneratorExpression::Evaluate( - *environment, this->LocalGenerator, config); - e1.WritePlatformConfigTag("LocalDebuggerEnvironment", cond, - genEnvironment); - } - - if (cmValue debuggerCommand = - this->GeneratorTarget->GetProperty("VS_DEBUGGER_COMMAND")) { - std::string genDebuggerCommand = cmGeneratorExpression::Evaluate( - *debuggerCommand, this->LocalGenerator, config); - e1.WritePlatformConfigTag("LocalDebuggerCommand", cond, - genDebuggerCommand); - } - - if (cmValue commandArguments = this->GeneratorTarget->GetProperty( - "VS_DEBUGGER_COMMAND_ARGUMENTS")) { - std::string genCommandArguments = cmGeneratorExpression::Evaluate( - *commandArguments, this->LocalGenerator, config); - e1.WritePlatformConfigTag("LocalDebuggerCommandArguments", cond, - genCommandArguments); - } - } - if (ttype >= cmStateEnums::UTILITY) { e1.WritePlatformConfigTag( "IntDir", cond, "$(Platform)\\$(Configuration)\\$(ProjectName)\\"); @@ -2780,6 +2746,40 @@ void cmVisualStudio10TargetGenerator::WritePathAndIncrementalLinkOptions( this->OutputLinkIncremental(e1, config); } + + if (ttype <= cmStateEnums::UTILITY) { + if (cmValue workingDir = this->GeneratorTarget->GetProperty( + "VS_DEBUGGER_WORKING_DIRECTORY")) { + std::string genWorkingDir = cmGeneratorExpression::Evaluate( + *workingDir, this->LocalGenerator, config); + e1.WritePlatformConfigTag("LocalDebuggerWorkingDirectory", cond, + genWorkingDir); + } + + if (cmValue environment = + this->GeneratorTarget->GetProperty("VS_DEBUGGER_ENVIRONMENT")) { + std::string genEnvironment = cmGeneratorExpression::Evaluate( + *environment, this->LocalGenerator, config); + e1.WritePlatformConfigTag("LocalDebuggerEnvironment", cond, + genEnvironment); + } + + if (cmValue debuggerCommand = + this->GeneratorTarget->GetProperty("VS_DEBUGGER_COMMAND")) { + std::string genDebuggerCommand = cmGeneratorExpression::Evaluate( + *debuggerCommand, this->LocalGenerator, config); + e1.WritePlatformConfigTag("LocalDebuggerCommand", cond, + genDebuggerCommand); + } + + if (cmValue commandArguments = this->GeneratorTarget->GetProperty( + "VS_DEBUGGER_COMMAND_ARGUMENTS")) { + std::string genCommandArguments = cmGeneratorExpression::Evaluate( + *commandArguments, this->LocalGenerator, config); + e1.WritePlatformConfigTag("LocalDebuggerCommandArguments", cond, + genCommandArguments); + } + } } } -- cgit v0.12