summaryrefslogtreecommitdiffstats
path: root/Help
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-01-24 19:45:24 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2017-01-24 19:45:24 (GMT)
commit6122fc54a9275caf3054a12bbc813be2c8036863 (patch)
tree93b09abb98fc0cf2d30a6ea5183b7d925c17c15d /Help
parent6c99ec5bfdc9710355e3318cb9884638ea2ce925 (diff)
parent10c9c73d58b481a212d1ed87ceeb227a7654bc56 (diff)
downloadCMake-6122fc54a9275caf3054a12bbc813be2c8036863.zip
CMake-6122fc54a9275caf3054a12bbc813be2c8036863.tar.gz
CMake-6122fc54a9275caf3054a12bbc813be2c8036863.tar.bz2
Merge topic '16253-xcode-effective-platform-name'
10c9c73d Xcode: Control emission of EFFECTIVE_PLATFORM_NAME
Diffstat (limited to 'Help')
-rw-r--r--Help/manual/cmake-properties.7.rst1
-rw-r--r--Help/prop_gbl/XCODE_EMIT_EFFECTIVE_PLATFORM_NAME.rst24
-rw-r--r--Help/release/dev/xcode-effective-platform-name.rst8
3 files changed, 33 insertions, 0 deletions
diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
index e748cd1..4af8626 100644
--- a/Help/manual/cmake-properties.7.rst
+++ b/Help/manual/cmake-properties.7.rst
@@ -44,6 +44,7 @@ Properties of Global Scope
/prop_gbl/TARGET_MESSAGES
/prop_gbl/TARGET_SUPPORTS_SHARED_LIBS
/prop_gbl/USE_FOLDERS
+ /prop_gbl/XCODE_EMIT_EFFECTIVE_PLATFORM_NAME
.. _`Directory Properties`:
diff --git a/Help/prop_gbl/XCODE_EMIT_EFFECTIVE_PLATFORM_NAME.rst b/Help/prop_gbl/XCODE_EMIT_EFFECTIVE_PLATFORM_NAME.rst
new file mode 100644
index 0000000..9a6086e
--- /dev/null
+++ b/Help/prop_gbl/XCODE_EMIT_EFFECTIVE_PLATFORM_NAME.rst
@@ -0,0 +1,24 @@
+XCODE_EMIT_EFFECTIVE_PLATFORM_NAME
+----------------------------------
+
+Control emission of ``EFFECTIVE_PLATFORM_NAME`` by the Xcode generator.
+
+It is required for building the same target with multiple SDKs. A
+common use case is the parallel use of ``iphoneos`` and
+``iphonesimulator`` SDKs.
+
+Three different states possible that control when the Xcode generator
+emits the ``EFFECTIVE_PLATFORM_NAME`` variable:
+
+- If set to ``ON`` it will always be emitted
+- If set to ``OFF`` it will never be emitted
+- If unset (the default) it will only be emitted when the project was
+ configured for an embedded Xcode SDK like iOS, tvOS, watchOS or any
+ of the simulators.
+
+.. note::
+
+ When this behavior is enable for generated Xcode projects, the
+ ``EFFECTIVE_PLATFORM_NAME`` variable will leak into
+ :manual:`Generator expressions <cmake-generator-expressions(7)>`
+ like ``TARGET_FILE`` and will render those mostly unusable.
diff --git a/Help/release/dev/xcode-effective-platform-name.rst b/Help/release/dev/xcode-effective-platform-name.rst
new file mode 100644
index 0000000..e337ca0
--- /dev/null
+++ b/Help/release/dev/xcode-effective-platform-name.rst
@@ -0,0 +1,8 @@
+xcode-effective-platform-name
+-----------------------------
+
+* The Xcode generator can now control emission of the
+ ``EFFECTIVE_PLATFORM_NAME`` variable through the
+ :prop_gbl:`XCODE_EMIT_EFFECTIVE_PLATFORM_NAME` global property.
+ This is useful when building with multiple SDKs like macosx and
+ iphoneos in parallel.