mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
bf1bb62e74 macOS: Restore support for LLVM/Clang without explicit CMAKE_OSX_SYSROOT
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10734
32 lines
1.3 KiB
ReStructuredText
32 lines
1.3 KiB
ReStructuredText
CMAKE_OSX_SYSROOT
|
|
-----------------
|
|
|
|
Specify the location or name of the macOS platform SDK to be used.
|
|
|
|
If not set explicitly, the value is initialized by the ``SDKROOT``
|
|
environment variable, if set. Otherwise, the value defaults to empty,
|
|
and the compiler is expected to choose a default macOS SDK on its own.
|
|
|
|
.. versionchanged:: 4.0
|
|
The default is now empty. Previously a default was computed based on
|
|
the :variable:`CMAKE_OSX_DEPLOYMENT_TARGET` or the host platform.
|
|
|
|
In order to pass an explicit macOS SDK via the compiler's ``-isysroot`` flag,
|
|
users may configure their build tree with ``-DCMAKE_OSX_SYSROOT=macosx``,
|
|
or ``export SDKROOT="$(xcrun --sdk macosx --show-sdk-path)"`` in their
|
|
environment.
|
|
|
|
Notes:
|
|
|
|
* macOS compilers in ``/usr/bin``, when not invoked with ``-isysroot``,
|
|
search for headers in ``/usr/local/include`` before system SDK paths,
|
|
matching the convention on many platforms. Users on macOS-x86_64 hosts
|
|
with Homebrew installed in ``/usr/local`` should pass an explicit SDK,
|
|
as described above, when not building with Homebrew tools.
|
|
|
|
* Some Clang compilers have no default macOS SDK selection. For these,
|
|
if :variable:`CMAKE_OSX_SYSROOT` is empty, CMake will automatically pass
|
|
``-isysroot`` with the macOS SDK printed by ``xcrun --show-sdk-path``.
|
|
|
|
.. include:: include/CMAKE_OSX_VARIABLE.rst
|