summaryrefslogtreecommitdiff
path: root/Modules/CMakeDetermineSystem.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/CMakeDetermineSystem.cmake')
-rw-r--r--Modules/CMakeDetermineSystem.cmake23
1 files changed, 18 insertions, 5 deletions
diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake
index 09752eea1a..7e6a6dd684 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_*