From 629afe07ce50d027b26cf9a62986a08cb4dac578 Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 14 Apr 2008 15:27:27 -0400 Subject: BUG: A per-config target name postfix should be ignored for Mac bundle and framework names. --- Source/cmTarget.cxx | 10 ++++++++-- Tests/Framework/CMakeLists.txt | 1 + 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index e7bf4ec..1bf3061 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -134,8 +134,8 @@ void cmTarget::DefineProperties(cmake *cm) ("DEBUG_POSTFIX", cmProperty::TARGET, "A postfix that will be applied to this target when build debug.", "A property on a target that specifies a postfix to add to the " - "target name when built in debug mode. For example foo.dll " - "versus fooD.dll"); + "target name when built in debug mode. For example \"foo.dll\" " + "versus \"fooD.dll\". Ignored for Mac Frameworks and App Bundles."); cm->DefineProperty ("EchoString", cmProperty::TARGET, @@ -2311,6 +2311,12 @@ void cmTarget::GetFullNameInternal(TargetType type, std::string configProp = cmSystemTools::UpperCase(config); configProp += "_POSTFIX"; configPostfix = this->GetProperty(configProp.c_str()); + // Mac application bundles and frameworks have no postfix. + if(configPostfix && + (this->IsAppBundleOnApple() || this->IsFrameworkOnApple())) + { + configPostfix = 0; + } } const char* prefixVar = this->GetPrefixVariableInternal(type, implib); const char* suffixVar = this->GetSuffixVariableInternal(type, implib); diff --git a/Tests/Framework/CMakeLists.txt b/Tests/Framework/CMakeLists.txt index 3eb0dbc..397e970 100644 --- a/Tests/Framework/CMakeLists.txt +++ b/Tests/Framework/CMakeLists.txt @@ -24,6 +24,7 @@ set_target_properties(foo PROPERTIES PUBLIC_HEADER "foo.h;foo2.h;fooPublic.h;fooBoth.h" RESOURCE "test.lua" INSTALL_NAME_DIR "@executable_path/../../../Library/Frameworks" + DEBUG_POSTFIX -d ) # fooBoth.h is listed as both public and private... (private wins...) # fooNeither.h is listed as neither public nor private... -- cgit v0.12