BUG: A per-config target name postfix should be ignored for Mac bundle and framework names.
This commit is contained in:
parent
820901dd13
commit
629afe07ce
|
@ -134,8 +134,8 @@ void cmTarget::DefineProperties(cmake *cm)
|
||||||
("DEBUG_POSTFIX", cmProperty::TARGET,
|
("DEBUG_POSTFIX", cmProperty::TARGET,
|
||||||
"A postfix that will be applied to this target when build debug.",
|
"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 "
|
"A property on a target that specifies a postfix to add to the "
|
||||||
"target name when built in debug mode. For example foo.dll "
|
"target name when built in debug mode. For example \"foo.dll\" "
|
||||||
"versus fooD.dll");
|
"versus \"fooD.dll\". Ignored for Mac Frameworks and App Bundles.");
|
||||||
|
|
||||||
cm->DefineProperty
|
cm->DefineProperty
|
||||||
("EchoString", cmProperty::TARGET,
|
("EchoString", cmProperty::TARGET,
|
||||||
|
@ -2311,6 +2311,12 @@ void cmTarget::GetFullNameInternal(TargetType type,
|
||||||
std::string configProp = cmSystemTools::UpperCase(config);
|
std::string configProp = cmSystemTools::UpperCase(config);
|
||||||
configProp += "_POSTFIX";
|
configProp += "_POSTFIX";
|
||||||
configPostfix = this->GetProperty(configProp.c_str());
|
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* prefixVar = this->GetPrefixVariableInternal(type, implib);
|
||||||
const char* suffixVar = this->GetSuffixVariableInternal(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"
|
PUBLIC_HEADER "foo.h;foo2.h;fooPublic.h;fooBoth.h"
|
||||||
RESOURCE "test.lua"
|
RESOURCE "test.lua"
|
||||||
INSTALL_NAME_DIR "@executable_path/../../../Library/Frameworks"
|
INSTALL_NAME_DIR "@executable_path/../../../Library/Frameworks"
|
||||||
|
DEBUG_POSTFIX -d
|
||||||
)
|
)
|
||||||
# fooBoth.h is listed as both public and private... (private wins...)
|
# fooBoth.h is listed as both public and private... (private wins...)
|
||||||
# fooNeither.h is listed as neither public nor private...
|
# fooNeither.h is listed as neither public nor private...
|
||||||
|
|
Loading…
Reference in New Issue