Xcode: Add XCODE_FILE_ATTRIBUTES source file property
This adds values to the ATTRIBUTES list in PBXBuildFile settings.
This commit is contained in:
parent
ef494edf76
commit
811f6c8252
|
@ -344,6 +344,7 @@ Properties on Source Files
|
|||
/prop_sf/VS_XAML_TYPE
|
||||
/prop_sf/WRAP_EXCLUDE
|
||||
/prop_sf/XCODE_EXPLICIT_FILE_TYPE
|
||||
/prop_sf/XCODE_FILE_ATTRIBUTES
|
||||
/prop_sf/XCODE_LAST_KNOWN_FILE_TYPE
|
||||
|
||||
.. _`Cache Entry Properties`:
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
XCODE_FILE_ATTRIBUTES
|
||||
---------------------
|
||||
|
||||
Add values to the Xcode ``ATTRIBUTES`` setting on its reference to a
|
||||
source file. Among other things, this can be used to set the role on
|
||||
a mig file::
|
||||
|
||||
set_source_files_properties(defs.mig
|
||||
PROPERTIES
|
||||
XCODE_FILE_ATTRIBUTES "Client;Server"
|
||||
)
|
|
@ -714,6 +714,20 @@ cmXCodeObject* cmGlobalXCodeGenerator::CreateXCodeSourceFile(
|
|||
}
|
||||
}
|
||||
|
||||
// Add user-specified file attributes.
|
||||
const char* extraFileAttributes = sf->GetProperty("XCODE_FILE_ATTRIBUTES");
|
||||
if (extraFileAttributes) {
|
||||
// Expand the list of attributes.
|
||||
std::vector<std::string> attributes;
|
||||
cmSystemTools::ExpandListArgument(extraFileAttributes, attributes);
|
||||
|
||||
// Store the attributes.
|
||||
for (std::vector<std::string>::const_iterator ai = attributes.begin();
|
||||
ai != attributes.end(); ++ai) {
|
||||
attrs->AddObject(this->CreateString(*ai));
|
||||
}
|
||||
}
|
||||
|
||||
settings->AddAttributeIfNotEmpty("ATTRIBUTES", attrs);
|
||||
|
||||
// Add the fileRef to the top level Resources group/folder if it is not
|
||||
|
|
Loading…
Reference in New Issue