From 2db623f554d5522350214a7c5bacd5ec2dec1b34 Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 14 Sep 2020 11:52:31 -0400 Subject: Xcode: Add option to specify build system variant Extend the `-T ` option to support a `buildsystem=` field with the Xcode generator. Add a `CMAKE_XCODE_BUILD_SYSTEM` variable to inform project code about the selected build system variant. --- Source/cmGlobalXCodeGenerator.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'Source/cmGlobalXCodeGenerator.h') diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index 4e686822ba..bbf3ee915c 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -113,11 +113,20 @@ public: cmMakefile* mf) override; void AppendFlag(std::string& flags, std::string const& flag) const; + enum class BuildSystem + { + One = 1, + }; + protected: void AddExtraIDETargets() override; void Generate() override; private: + bool ParseGeneratorToolset(std::string const& ts, cmMakefile* mf); + bool ProcessGeneratorToolsetField(std::string const& key, + std::string const& value, cmMakefile* mf); + cmXCodeObject* CreateOrGetPBXGroup(cmGeneratorTarget* gtgt, cmSourceGroup* sg); cmXCodeObject* CreatePBXGroup(cmXCodeObject* parent, @@ -254,6 +263,8 @@ protected: std::vector> XCodeObjects; cmXCodeObject* RootObject; + BuildSystem XcodeBuildSystem = BuildSystem::One; + private: std::string const& GetXcodeBuildCommand(); std::string FindXcodeBuildCommand(); -- cgit v1.2.1