Commit 629afe07 authored by Brad King's avatar Brad King
Browse files

BUG: A per-config target name postfix should be ignored for Mac bundle and framework names.

parent 820901dd
......@@ -134,8 +134,8 @@ void cmTarget::DefineProperties(cmake *cm)
"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.");
("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);
......@@ -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"
# fooBoth.h is listed as both public and private... (private wins...)
# fooNeither.h is listed as neither public nor private...
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment