mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-30 18:29:37 -06:00
Xcode: Refactor generator variable names and types
* Instead of `classes` use name `commonSourceFiles`. * No need for reference when you have pointer.
This commit is contained in:
@@ -1152,23 +1152,24 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget(
|
||||
}
|
||||
|
||||
// organize the sources
|
||||
std::vector<cmSourceFile*> classes;
|
||||
if (!gtgt->GetConfigCommonSourceFiles(classes)) {
|
||||
std::vector<cmSourceFile*> commonSourceFiles;
|
||||
if (!gtgt->GetConfigCommonSourceFiles(commonSourceFiles)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Add CMakeLists.txt file for user convenience.
|
||||
this->AddXCodeProjBuildRule(gtgt, classes);
|
||||
this->AddXCodeProjBuildRule(gtgt, commonSourceFiles);
|
||||
|
||||
// Add the Info.plist we are about to generate for an App Bundle.
|
||||
if (gtgt->GetPropertyAsBool("MACOSX_BUNDLE")) {
|
||||
std::string plist = this->ComputeInfoPListLocation(gtgt);
|
||||
cmSourceFile* sf = gtgt->Makefile->GetOrCreateSource(
|
||||
plist, true, cmSourceFileLocationKind::Known);
|
||||
classes.push_back(sf);
|
||||
commonSourceFiles.push_back(sf);
|
||||
}
|
||||
|
||||
std::sort(classes.begin(), classes.end(), cmSourceFilePathCompare());
|
||||
std::sort(commonSourceFiles.begin(), commonSourceFiles.end(),
|
||||
cmSourceFilePathCompare());
|
||||
|
||||
gtgt->ComputeObjectMapping();
|
||||
|
||||
@@ -1176,7 +1177,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget(
|
||||
std::vector<cmXCodeObject*> headerFiles;
|
||||
std::vector<cmXCodeObject*> resourceFiles;
|
||||
std::vector<cmXCodeObject*> sourceFiles;
|
||||
for (auto sourceFile : classes) {
|
||||
for (auto sourceFile : commonSourceFiles) {
|
||||
cmXCodeObject* xsf = this->CreateXCodeSourceFile(
|
||||
this->CurrentLocalGenerator, sourceFile, gtgt);
|
||||
cmXCodeObject* fr = xsf->GetObject("fileRef");
|
||||
@@ -1275,7 +1276,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget(
|
||||
using mapOfVectorOfSourceFiles =
|
||||
std::map<std::string, std::vector<cmSourceFile*>>;
|
||||
mapOfVectorOfSourceFiles bundleFiles;
|
||||
for (auto sourceFile : classes) {
|
||||
for (auto sourceFile : commonSourceFiles) {
|
||||
cmGeneratorTarget::SourceFileFlags tsFlags =
|
||||
gtgt->GetTargetSourceFileFlags(sourceFile);
|
||||
if (tsFlags.Type == cmGeneratorTarget::SourceFileTypeMacContent) {
|
||||
@@ -1323,7 +1324,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeTarget(
|
||||
using mapOfVectorOfSourceFiles =
|
||||
std::map<std::string, std::vector<cmSourceFile*>>;
|
||||
mapOfVectorOfSourceFiles bundleFiles;
|
||||
for (auto sourceFile : classes) {
|
||||
for (auto sourceFile : commonSourceFiles) {
|
||||
cmGeneratorTarget::SourceFileFlags tsFlags =
|
||||
gtgt->GetTargetSourceFileFlags(sourceFile);
|
||||
if (tsFlags.Type == cmGeneratorTarget::SourceFileTypeDeepResource) {
|
||||
@@ -2795,21 +2796,20 @@ void cmGlobalXCodeGenerator::AddDependAndLinkInformation(cmXCodeObject* target)
|
||||
}
|
||||
|
||||
// Compute the link library and directory information.
|
||||
cmComputeLinkInformation* pcli = gt->GetLinkInformation(configName);
|
||||
if (!pcli) {
|
||||
cmComputeLinkInformation* cli = gt->GetLinkInformation(configName);
|
||||
if (!cli) {
|
||||
continue;
|
||||
}
|
||||
cmComputeLinkInformation& cli = *pcli;
|
||||
|
||||
// Add dependencies directly on library files.
|
||||
for (auto const& libDep : cli.GetDepends()) {
|
||||
for (auto const& libDep : cli->GetDepends()) {
|
||||
target->AddDependLibrary(configName, libDep);
|
||||
}
|
||||
|
||||
// add the library search paths
|
||||
{
|
||||
std::string linkDirs;
|
||||
for (auto const& libDir : cli.GetDirectories()) {
|
||||
for (auto const& libDir : cli->GetDirectories()) {
|
||||
if (!libDir.empty() && libDir != "/usr/lib") {
|
||||
// Now add the same one but append
|
||||
// $(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) to it:
|
||||
|
||||
@@ -28,7 +28,7 @@ struct cmDocumentationEntry;
|
||||
/** \class cmGlobalXCodeGenerator
|
||||
* \brief Write a Unix makefiles.
|
||||
*
|
||||
* cmGlobalXCodeGenerator manages UNIX build process for a tree
|
||||
* cmGlobalXCodeGenerator manages Xcode build process for a tree
|
||||
*/
|
||||
class cmGlobalXCodeGenerator : public cmGlobalGenerator
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user