summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileLibraryTargetGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2007-02-01 14:57:24 (GMT)
committerBrad King <brad.king@kitware.com>2007-02-01 14:57:24 (GMT)
commit712345ffc4614467671fd5948fb80d711ae28994 (patch)
treee76883b82f308ef9acd1eb8e1d36e9fca9514d11 /Source/cmMakefileLibraryTargetGenerator.cxx
parent9d217a94e5745b3c620b94b8d9a4abb1100c514b (diff)
downloadCMake-712345ffc4614467671fd5948fb80d711ae28994.zip
CMake-712345ffc4614467671fd5948fb80d711ae28994.tar.gz
CMake-712345ffc4614467671fd5948fb80d711ae28994.tar.bz2
BUG: The .pdb file generated for a library or executable should match the real file name used for the target. This addresses bug#3277.
Diffstat (limited to 'Source/cmMakefileLibraryTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.cxx13
1 files changed, 10 insertions, 3 deletions
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx
index 291b90a..39580ad 100644
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
@@ -239,8 +239,9 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
std::string targetNameSO;
std::string targetNameReal;
std::string targetNameImport;
+ std::string targetNamePDB;
this->Target->GetLibraryNames(
- targetName, targetNameSO, targetNameReal, targetNameImport,
+ targetName, targetNameSO, targetNameReal, targetNameImport, targetNamePDB,
this->LocalGenerator->ConfigurationName.c_str());
// Construct the full path version of the names.
@@ -259,8 +260,7 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
outpath += "/";
}
std::string targetFullPath = outpath + targetName;
- std::string targetFullPathPDB =
- outpath + this->Target->GetName() + std::string(".pdb");
+ std::string targetFullPathPDB = outpath + targetNamePDB;
std::string targetFullPathSO = outpath + targetNameSO;
std::string targetFullPathReal = outpath + targetNameReal;
std::string targetFullPathImport = outpath + targetNameImport;
@@ -351,18 +351,21 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
std::string cleanSharedSOName;
std::string cleanSharedRealName;
std::string cleanImportName;
+ std::string cleanPDBName;
this->Target->GetLibraryCleanNames(
cleanStaticName,
cleanSharedName,
cleanSharedSOName,
cleanSharedRealName,
cleanImportName,
+ cleanPDBName,
this->LocalGenerator->ConfigurationName.c_str());
std::string cleanFullStaticName = outpath + cleanStaticName;
std::string cleanFullSharedName = outpath + cleanSharedName;
std::string cleanFullSharedSOName = outpath + cleanSharedSOName;
std::string cleanFullSharedRealName = outpath + cleanSharedRealName;
std::string cleanFullImportName = outpath + cleanImportName;
+ std::string cleanFullPDBName = outpath + cleanPDBName;
libCleanFiles.push_back
(this->Convert(cleanFullStaticName.c_str(),
cmLocalGenerator::START_OUTPUT,
@@ -398,6 +401,10 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
cmLocalGenerator::START_OUTPUT,
cmLocalGenerator::UNCHANGED));
}
+ libCleanFiles.push_back
+ (this->Convert(cleanFullPDBName.c_str(),
+ cmLocalGenerator::START_OUTPUT,
+ cmLocalGenerator::UNCHANGED));
}
#ifdef _WIN32