BUG: <CONFIG>_LOCATION property should use the config name in the directory and not $(OutDir). This addresses bug#5363.

This commit is contained in:
Brad King 2007-08-01 11:36:35 -04:00
parent f0d1e1626d
commit e0fc8b2995
1 changed files with 11 additions and 5 deletions

View File

@ -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();