Merge topic 'xcode-6-librarian-flags'
608cf814
Xcode: Fix static library creation for Xcode 6 (#15038)
This commit is contained in:
commit
05d064fec3
|
@ -2299,7 +2299,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target,
|
|||
}
|
||||
}
|
||||
|
||||
buildSettings->AddAttribute("OTHER_LDFLAGS",
|
||||
buildSettings->AddAttribute(this->GetTargetLinkFlagsVar(target),
|
||||
this->CreateString(extraLinkOptions.c_str()));
|
||||
buildSettings->AddAttribute("OTHER_REZFLAGS",
|
||||
this->CreateString(""));
|
||||
|
@ -2526,6 +2526,22 @@ std::string cmGlobalXCodeGenerator::AddConfigurations(cmXCodeObject* target,
|
|||
return "";
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
const char*
|
||||
cmGlobalXCodeGenerator::GetTargetLinkFlagsVar(cmTarget const& cmtarget) const
|
||||
{
|
||||
if(this->XcodeVersion >= 60 &&
|
||||
(cmtarget.GetType() == cmTarget::STATIC_LIBRARY ||
|
||||
cmtarget.GetType() == cmTarget::OBJECT_LIBRARY))
|
||||
{
|
||||
return "OTHER_LIBTOOLFLAGS";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "OTHER_LDFLAGS";
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
const char* cmGlobalXCodeGenerator::GetTargetFileType(cmTarget& cmtarget)
|
||||
{
|
||||
|
@ -2835,8 +2851,9 @@ void cmGlobalXCodeGenerator
|
|||
sep = " ";
|
||||
linkObjs += this->XCodeEscapePath(oi->c_str());
|
||||
}
|
||||
this->AppendBuildSettingAttribute(target, "OTHER_LDFLAGS",
|
||||
linkObjs.c_str(), configName);
|
||||
this->AppendBuildSettingAttribute(
|
||||
target, this->GetTargetLinkFlagsVar(*cmtarget),
|
||||
linkObjs.c_str(), configName);
|
||||
}
|
||||
|
||||
// Skip link information for object libraries.
|
||||
|
@ -2914,8 +2931,9 @@ void cmGlobalXCodeGenerator
|
|||
target->AddDependTarget(configName, li->Target->GetName());
|
||||
}
|
||||
}
|
||||
this->AppendBuildSettingAttribute(target, "OTHER_LDFLAGS",
|
||||
linkLibs.c_str(), configName);
|
||||
this->AppendBuildSettingAttribute(
|
||||
target, this->GetTargetLinkFlagsVar(*cmtarget),
|
||||
linkLibs.c_str(), configName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -134,6 +134,7 @@ private:
|
|||
cmXCodeObject* buildPhases);
|
||||
void ForceLinkerLanguages();
|
||||
void ForceLinkerLanguage(cmTarget& cmtarget);
|
||||
const char* GetTargetLinkFlagsVar(cmTarget const& cmtarget) const;
|
||||
const char* GetTargetFileType(cmTarget& cmtarget);
|
||||
const char* GetTargetProductType(cmTarget& cmtarget);
|
||||
std::string AddConfigurations(cmXCodeObject* target, cmTarget& cmtarget);
|
||||
|
|
Loading…
Reference in New Issue