1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-14 02:08:27 +08:00

Help: Document IOS_INSTALL_COMBINED as deprecated

The approach has not made sense since the introduction of Apple Silicon
and macOS arm64.

Issue: #24957
This commit is contained in:
Márton Marczell
2023-07-20 14:57:12 +02:00
committed by Brad King
parent e0ed4d7a6f
commit 7d3eede923
3 changed files with 22 additions and 4 deletions

View File

@@ -2,18 +2,27 @@ IOS_INSTALL_COMBINED
--------------------
.. versionadded:: 3.5
.. deprecated:: 3.28
:prop_tgt:`IOS_INSTALL_COMBINED` was designed to make universal binaries
containing iOS/arm* device code paired with iOS Simulator/x86_64 code
(or similar for other Apple embedded platforms). Universal binaries can only
differentiate code based on CPU type, so this only made sense before the
days of arm64 macOS machines (i.e. iOS Simulator/arm64). Apple now
recommends xcframeworks, which contain multiple binaries for different
platforms, for this use case.
Build a combined (device and simulator) target when installing.
When this property is set to set to false (which is the default) then it will
When this property is set to false, which is the default, then it will
either be built with the device SDK or the simulator SDK depending on the SDK
set. But if this property is set to true then the target will at install time
also be built for the corresponding SDK and combined into one library.
also be built for the other SDK and combined into one library.
.. note::
If a selected architecture is available for both: device SDK and simulator
If a selected architecture is available for both device SDK and simulator
SDK it will be built for the SDK selected by :variable:`CMAKE_OSX_SYSROOT`
and removed from the corresponding SDK.
and removed from the other SDK.
This feature requires at least Xcode version 6.

View File

@@ -0,0 +1,6 @@
deprecate-install-combined
--------------------------
* The :prop_tgt:`IOS_INSTALL_COMBINED` target property and corresponding
:variable:`CMAKE_IOS_INSTALL_COMBINED` variable have been deprecated.
Their functionality does not make sense on Apple Silicon hosts.

View File

@@ -2,6 +2,9 @@ CMAKE_IOS_INSTALL_COMBINED
--------------------------
.. versionadded:: 3.5
.. deprecated:: 3.28
This is deprecated because :prop_tgt:`IOS_INSTALL_COMBINED` is deprecated.
Default value for :prop_tgt:`IOS_INSTALL_COMBINED` of targets.