diff options
Diffstat (limited to 'Modules/CMakeDetermineSystem.cmake')
-rw-r--r-- | Modules/CMakeDetermineSystem.cmake | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake index 09752ee..7e6a6dd 100644 --- a/Modules/CMakeDetermineSystem.cmake +++ b/Modules/CMakeDetermineSystem.cmake @@ -28,7 +28,7 @@ # find out on which system cmake runs -IF(UNIX) +IF(CMAKE_HOST_UNIX) FIND_PROGRAM(CMAKE_UNAME uname /bin /usr/bin /usr/local/bin ) IF(CMAKE_UNAME) EXEC_PROGRAM(uname ARGS -s OUTPUT_VARIABLE CMAKE_HOST_SYSTEM_NAME) @@ -53,12 +53,25 @@ IF(UNIX) STRING(REGEX REPLACE "\"" "" CMAKE_HOST_SYSTEM_PROCESSOR "${CMAKE_HOST_SYSTEM_PROCESSOR}") STRING(REGEX REPLACE "/" "_" CMAKE_HOST_SYSTEM_PROCESSOR "${CMAKE_HOST_SYSTEM_PROCESSOR}") ENDIF(CMAKE_UNAME) -ELSE(UNIX) - IF(WIN32) +ELSE(CMAKE_HOST_UNIX) + IF(CMAKE_HOST_WIN32) SET (CMAKE_HOST_SYSTEM_NAME "Windows") SET (CMAKE_HOST_SYSTEM_PROCESSOR "$ENV{PROCESSOR_ARCHITECTURE}") - ENDIF(WIN32) -ENDIF(UNIX) + ENDIF(CMAKE_HOST_WIN32) +ENDIF(CMAKE_HOST_UNIX) + +# this is for compatibility +# with cmake 2.4 these variables were compiled in +# now that cmake has to separate between host and target platform +# two sets are needed. For compatibility the old set of variables is here +# set to the compiled-in values, so they still work in custom +# language or compiler modules where they might be used. +# After that they are reset in CMakeSystemSpecificInformation.cmake +# and then set according to the current target platform in the Modules/${CMAKE_SYSTEM_NAME}.cmake file +SET(APPLE ${CMAKE_HOST_APPLE}) +SET(UNIX ${CMAKE_HOST_UNIX}) +SET(CYGWIN ${CMAKE_HOST_CYGWIN}) +SET(WIN32 ${CMAKE_HOST_WIN32}) # if a toolchain file is used, the user wants to cross compile. # in this case read the toolchain file and keep the CMAKE_HOST_SYSTEM_* |