BUG: fix xcode 15 (really bill Hoffman)
This commit is contained in:
parent
b72d77d929
commit
93ee345b41
@ -1413,19 +1413,12 @@ void cmGlobalXCodeGenerator::AddDependTarget(cmXCodeObject* target,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
void cmGlobalXCodeGenerator::AppendBuildSettingAttribute(cmXCodeObject* target,
|
||||
void cmGlobalXCodeGenerator::AppendOrAddBuildSetting(cmXCodeObject* settings,
|
||||
const char* attribute,
|
||||
const char* value)
|
||||
{
|
||||
cmXCodeObject* configurationList = target->GetObject("buildConfigurationList")->GetObject();
|
||||
cmXCodeObject* buildConfigs = configurationList->GetObject("buildConfigurations");
|
||||
std::vector<cmXCodeObject*> list = buildConfigs->GetObjectList();
|
||||
// each configuration and the target itself has a buildSettings in it
|
||||
list.push_back(target);
|
||||
for(std::vector<cmXCodeObject*>::iterator i = list.begin(); i != list.end(); ++i)
|
||||
{
|
||||
cmXCodeObject* settings = (*i)->GetObject("buildSettings");
|
||||
if(settings)
|
||||
{
|
||||
cmXCodeObject* attr = settings->GetObject(attribute);
|
||||
@ -1443,6 +1436,30 @@ void cmGlobalXCodeGenerator::AppendBuildSettingAttribute(cmXCodeObject* target,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
void cmGlobalXCodeGenerator::AppendBuildSettingAttribute(cmXCodeObject* target,
|
||||
const char* attribute,
|
||||
const char* value)
|
||||
{
|
||||
if(m_XcodeVersion < 21)
|
||||
{
|
||||
this->AppendOrAddBuildSetting(target->GetObject("buildSettings"),
|
||||
attribute, value);
|
||||
}
|
||||
else
|
||||
{
|
||||
cmXCodeObject* configurationList = target->GetObject("buildConfigurationList")->GetObject();
|
||||
cmXCodeObject* buildConfigs = configurationList->GetObject("buildConfigurations");
|
||||
std::vector<cmXCodeObject*> list = buildConfigs->GetObjectList();
|
||||
// each configuration and the target itself has a buildSettings in it
|
||||
list.push_back(target);
|
||||
for(std::vector<cmXCodeObject*>::iterator i = list.begin(); i != list.end(); ++i)
|
||||
{
|
||||
cmXCodeObject* settings = (*i)->GetObject("buildSettings");
|
||||
this->AppendOrAddBuildSetting(settings, attribute, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
@ -100,6 +100,8 @@ private:
|
||||
cmXCodeObject* buildPhases);
|
||||
void AddConfigurations(cmXCodeObject* target,
|
||||
cmTarget& cmtarget);
|
||||
void AppendOrAddBuildSetting(cmXCodeObject* settings, const char* attr,
|
||||
const char* value);
|
||||
void AppendBuildSettingAttribute(cmXCodeObject* target, const char* attr,
|
||||
const char* value);
|
||||
cmXCodeObject* CreateUtilityTarget(cmTarget& target);
|
||||
|
Loading…
x
Reference in New Issue
Block a user