[Cmake-commits] [cmake-commits] david.cole committed Darwin.cmake 1.62 1.63
cmake-commits at cmake.org
cmake-commits at cmake.org
Tue Dec 15 11:10:18 EST 2009
Update of /cvsroot/CMake/CMake/Modules/Platform
In directory public:/mounts/ram/cvs-serv21599/Modules/Platform
Modified Files:
Darwin.cmake
Log Message:
Fix issues #9959 and #9898 - do not set CMAKE_OSX_DEPLOYMENT_TARGET if CMAKE_OSX_SYSROOT is set.
Default to "" for CMAKE_OSX_DEPLOYMENT_TARGET if CMAKE_OSX_SYSROOT is set. Also, add new error message to detect the case where there is a deployment target, but no SDK has been set. Fix args to STRING REGEX call so that it works even if _sdk_path variable is empty inside sanity check function.
Index: Darwin.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/Platform/Darwin.cmake,v
retrieving revision 1.62
retrieving revision 1.63
diff -C 2 -d -r1.62 -r1.63
*** Darwin.cmake 2 Dec 2009 20:17:52 -0000 1.62
--- Darwin.cmake 15 Dec 2009 16:10:15 -0000 1.63
***************
*** 2,9 ****
# Darwin versions:
! # 6.x == Mac OSX 10.2
! # 7.x == Mac OSX 10.3
! # 8.x == Mac OSX 10.4
! # 9.x == Mac OSX 10.5
STRING(REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\1" DARWIN_MAJOR_VERSION "${CMAKE_SYSTEM_VERSION}")
STRING(REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\2" DARWIN_MINOR_VERSION "${CMAKE_SYSTEM_VERSION}")
--- 2,10 ----
# Darwin versions:
! # 6.x == Mac OSX 10.2 (Jaguar)
! # 7.x == Mac OSX 10.3 (Panther)
! # 8.x == Mac OSX 10.4 (Tiger)
! # 9.x == Mac OSX 10.5 (Leopard)
! # 10.x == Mac OSX 10.6 (Snow Leopard)
STRING(REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\1" DARWIN_MAJOR_VERSION "${CMAKE_SYSTEM_VERSION}")
STRING(REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\2" DARWIN_MINOR_VERSION "${CMAKE_SYSTEM_VERSION}")
***************
*** 73,80 ****
ENDIF(NOT _CMAKE_OSX_SDKS)
! # Set CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT to the current version of OS X
! EXECUTE_PROCESS(COMMAND sw_vers -productVersion OUTPUT_VARIABLE CURRENT_OSX_VERSION)
! STRING(REGEX REPLACE "^.*(10)\\.([0-9]+)\\.*([0-9]+)*.*$" "\\1.\\2"
! CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT ${CURRENT_OSX_VERSION})
# Set CMAKE_OSX_SYSROOT_DEFAULT based on CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT.
--- 74,91 ----
ENDIF(NOT _CMAKE_OSX_SDKS)
! EXECUTE_PROCESS(COMMAND sw_vers -productVersion
! OUTPUT_VARIABLE CURRENT_OSX_VERSION
! OUTPUT_STRIP_TRAILING_WHITESPACE)
!
! # Set CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT - if user has already specified an SDK
! # with CMAKE_OSX_SYSROOT, then deployment target should default to "", otherwise,
! # default it to the current OSX version.
! #
! IF(CMAKE_OSX_SYSROOT)
! SET(CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT "")
! ELSE(CMAKE_OSX_SYSROOT)
! STRING(REGEX REPLACE "^.*(10)\\.([0-9]+)\\.*([0-9]+)*.*$" "\\1.\\2"
! CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT ${CURRENT_OSX_VERSION})
! ENDIF(CMAKE_OSX_SYSROOT)
# Set CMAKE_OSX_SYSROOT_DEFAULT based on CMAKE_OSX_DEPLOYMENT_TARGET_DEFAULT.
***************
*** 126,138 ****
#----------------------------------------------------------------------------
function(SanityCheckSDKAndDeployTarget _sdk_path _deploy)
! if (_deploy STREQUAL "")
return()
endif()
! string (REGEX REPLACE "(.*MacOSX*)(....)(.*\\.sdk)" "\\2" SDK ${_sdk_path})
! if (_deploy GREATER SDK)
! message (FATAL_ERROR "CMAKE_OSX_DEPLOYMENT_TARGET (${_deploy}) is greater than CMAKE_OSX_SYSROOT SDK (${_sdk_path}). Please set CMAKE_OSX_DEPLOYMENT_TARGET to ${SDK}")
! endif (_deploy GREATER SDK)
! endfunction(SanityCheckSDKAndDeployTarget _sdk_path _deploy)
#----------------------------------------------------------------------------
--- 137,153 ----
#----------------------------------------------------------------------------
function(SanityCheckSDKAndDeployTarget _sdk_path _deploy)
! if(_deploy STREQUAL "")
return()
endif()
! if(_sdk_path STREQUAL "")
! message(FATAL_ERROR "CMAKE_OSX_DEPLOYMENT_TARGET='${_deploy}' but CMAKE_OSX_SYSROOT is empty... - either set CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to empty")
! endif()
!
! string(REGEX REPLACE "(.*MacOSX*)(....)(.*\\.sdk)" "\\2" SDK "${_sdk_path}")
! if(_deploy GREATER "${SDK}")
! message(FATAL_ERROR "CMAKE_OSX_DEPLOYMENT_TARGET (${_deploy}) is greater than CMAKE_OSX_SYSROOT SDK (${_sdk_path}). Please set CMAKE_OSX_DEPLOYMENT_TARGET to ${SDK}")
! endif()
! endfunction(SanityCheckSDKAndDeployTarget)
#----------------------------------------------------------------------------
More information about the Cmake-commits
mailing list