[Cmake-commits] CMake branch, next, updated. v3.7.0-rc2-846-g15da528
Brad King
brad.king at kitware.com
Tue Nov 1 09:39:19 EDT 2016
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 15da528a4f90e497d8ecd3592e0c19e6aed4307f (commit)
via 935041908db878163ab03f175b992981fc4b8ff3 (commit)
via 542d52f95e3540953113fc66dc7a7958b9c184de (commit)
from 95f5bf3a71a6fdb1e516e1a6e5a0cadf968337f3 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=15da528a4f90e497d8ecd3592e0c19e6aed4307f
commit 15da528a4f90e497d8ecd3592e0c19e6aed4307f
Merge: 95f5bf3 9350419
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Nov 1 09:39:18 2016 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Nov 1 09:39:18 2016 -0400
Merge topic 'fix-macos-sysroot' into next
93504190 Darwin: Remove deployment target version check
542d52f9 Revert "Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path"
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=935041908db878163ab03f175b992981fc4b8ff3
commit 935041908db878163ab03f175b992981fc4b8ff3
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Mon Oct 31 10:29:44 2016 +0100
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue Nov 1 09:37:49 2016 -0400
Darwin: Remove deployment target version check
Starting with Xcode 8 the SDK folder also contains an unversioned entry:
MacOSX.sdk
MacOSX10.12.sdk -> MacOSX.sdk
If this unversioned path is used CMake cannot detect the SDK version.
Furthermore, querying the SDK version via
xcodebuild -sdk <sysroot> -version Path
gives bogus results for the Command Line Tools installed into `/`.
The OS X deployment target version and SDK version are not as tied as
they once were, so this check is now more trouble than it is worth.
Simply remove it.
Closes: #16323
diff --git a/Modules/Platform/Darwin-Initialize.cmake b/Modules/Platform/Darwin-Initialize.cmake
index 3606144..b539e45 100644
--- a/Modules/Platform/Darwin-Initialize.cmake
+++ b/Modules/Platform/Darwin-Initialize.cmake
@@ -113,7 +113,6 @@ set(CMAKE_OSX_SYSROOT "${_CMAKE_OSX_SYSROOT_DEFAULT}" CACHE ${_CMAKE_OSX_SYSROOT
"The product will be built against the headers and libraries located inside the indicated SDK.")
# Transform the cached value to something we can use.
-set(_CMAKE_OSX_SYSROOT_ORIG "${CMAKE_OSX_SYSROOT}")
set(_CMAKE_OSX_SYSROOT_PATH "")
if(CMAKE_OSX_SYSROOT)
if("x${CMAKE_OSX_SYSROOT}" MATCHES "/")
@@ -122,7 +121,6 @@ if(CMAKE_OSX_SYSROOT)
message(WARNING "Ignoring CMAKE_OSX_SYSROOT value:\n ${CMAKE_OSX_SYSROOT}\n"
"because the directory does not exist.")
set(CMAKE_OSX_SYSROOT "")
- set(_CMAKE_OSX_SYSROOT_ORIG "")
endif()
set(_CMAKE_OSX_SYSROOT_PATH "${CMAKE_OSX_SYSROOT}")
else()
diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake
index bb085ac..26b12a1 100644
--- a/Modules/Platform/Darwin.cmake
+++ b/Modules/Platform/Darwin.cmake
@@ -64,30 +64,6 @@ if(NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
mark_as_advanced(CMAKE_INSTALL_NAME_TOOL)
endif()
-# Make sure the combination of SDK and Deployment Target are allowed
-if(CMAKE_OSX_DEPLOYMENT_TARGET)
- if("${_CMAKE_OSX_SYSROOT_PATH}" MATCHES "/MacOSX([0-9]+\\.[0-9]+)[^/]*\\.sdk")
- set(_sdk_ver "${CMAKE_MATCH_1}")
- elseif("${_CMAKE_OSX_SYSROOT_ORIG}" MATCHES "^macosx([0-9]+\\.[0-9]+)$")
- set(_sdk_ver "${CMAKE_MATCH_1}")
- elseif("${_CMAKE_OSX_SYSROOT_ORIG}" STREQUAL "/")
- set(_sdk_ver "${_CURRENT_OSX_VERSION}")
- else()
- message(FATAL_ERROR
- "CMAKE_OSX_DEPLOYMENT_TARGET is '${CMAKE_OSX_DEPLOYMENT_TARGET}' "
- "but CMAKE_OSX_SYSROOT:\n \"${_CMAKE_OSX_SYSROOT_ORIG}\"\n"
- "is not set to a MacOSX SDK with a recognized version. "
- "Either set CMAKE_OSX_SYSROOT to a valid SDK or set "
- "CMAKE_OSX_DEPLOYMENT_TARGET to empty.")
- endif()
- if(CMAKE_OSX_DEPLOYMENT_TARGET VERSION_GREATER "${_sdk_ver}")
- message(FATAL_ERROR
- "CMAKE_OSX_DEPLOYMENT_TARGET (${CMAKE_OSX_DEPLOYMENT_TARGET}) "
- "is greater than CMAKE_OSX_SYSROOT SDK:\n ${_CMAKE_OSX_SYSROOT_ORIG}\n"
- "Please set CMAKE_OSX_DEPLOYMENT_TARGET to ${_sdk_ver} or lower.")
- endif()
-endif()
-
# Enable shared library versioning.
set(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-install_name")
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=542d52f95e3540953113fc66dc7a7958b9c184de
commit 542d52f95e3540953113fc66dc7a7958b9c184de
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Mon Oct 31 10:25:38 2016 +0100
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue Nov 1 09:31:08 2016 -0400
Revert "Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path"
Revert commit v3.7.0-rc1~48^2 (Xcode: Convert maybe unversioned OSX
sysroot into versioned SDK path, 2016-09-25). The replacement of
`else()` with `if(CMAKE_OSX_SYSROOT)` defeats the prior handling of
`if("x${CMAKE_OSX_SYSROOT}" MATCHES "/")`. This causes the combination
-DCMAKE_OSX_DEPLOYMENT_TARGET:STRING="" -DCMAKE_OSX_SYSROOT:STRING=/
to not be honored and `-isysroot` to be emitted as a compiler flag
universally. We will need another solution to the problem the
now-reverted commit was meant to address.
Closes: #16394
diff --git a/Modules/Platform/Darwin-Initialize.cmake b/Modules/Platform/Darwin-Initialize.cmake
index 39374e1..3606144 100644
--- a/Modules/Platform/Darwin-Initialize.cmake
+++ b/Modules/Platform/Darwin-Initialize.cmake
@@ -125,10 +125,8 @@ if(CMAKE_OSX_SYSROOT)
set(_CMAKE_OSX_SYSROOT_ORIG "")
endif()
set(_CMAKE_OSX_SYSROOT_PATH "${CMAKE_OSX_SYSROOT}")
- endif()
-
- if(CMAKE_OSX_SYSROOT)
- # Transform the (maybe unversioned) sysroot into a versioned path.
+ else()
+ # Transform the sdk name into a path.
execute_process(
COMMAND xcodebuild -sdk ${CMAKE_OSX_SYSROOT} -version Path
OUTPUT_VARIABLE _stdout
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list