From e0fc8b2995932253e3b51aca56024c617662c7bb Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 1 Aug 2007 11:36:35 -0400 Subject: [PATCH] BUG: _LOCATION property should use the config name in the directory and not $(OutDir). This addresses bug#5363. --- Source/cmTarget.cxx | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 3db4add30..1ca187d13 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -1277,16 +1277,22 @@ const char* cmTarget::ImportedGetLocation(const char* config) //---------------------------------------------------------------------------- const char* cmTarget::NormalGetLocation(const char* config) { - this->Location = this->GetDirectory(); + this->Location = this->GetDirectory(config); if(!this->Location.empty()) { this->Location += "/"; } - const char* cfgid = this->Makefile->GetDefinition("CMAKE_CFG_INTDIR"); - if(cfgid && strcmp(cfgid, ".") != 0) + if(!config) { - this->Location += cfgid; - this->Location += "/"; + // No specific configuration was given so it will not appear on + // the result of GetDirectory. Add a name here to be replaced at + // build time. + const char* cfgid = this->Makefile->GetDefinition("CMAKE_CFG_INTDIR"); + if(cfgid && strcmp(cfgid, ".") != 0) + { + this->Location += cfgid; + this->Location += "/"; + } } this->Location += this->GetFullName(config, false); return this->Location.c_str();