|
|
@@ -6,20 +6,30 @@
|
|
|
# as a default compiler
|
|
|
|
|
|
IF(NOT CMAKE_CXX_COMPILER)
|
|
|
+ SET(CMAKE_CXX_COMPILER_INIT NOTFOUND)
|
|
|
+
|
|
|
# if the user has specified CC via the environment, then use that without checking
|
|
|
IF($ENV{CXX} MATCHES ".+")
|
|
|
GET_FILENAME_COMPONENT(CMAKE_CXX_COMPILER_INIT $ENV{CXX} PROGRAM PROGRAM_ARGS CMAKE_CXX_FLAGS_ENV_INIT)
|
|
|
IF(EXISTS ${CMAKE_CXX_COMPILER_INIT})
|
|
|
ELSE(EXISTS ${CMAKE_CXX_COMPILER_INIT})
|
|
|
- MESSAGE(SEND_ERROR "Could not find compiler set in environment variable CXX:\n$ENV{CXX}.")
|
|
|
+ MESSAGE(SEND_ERROR "Could not find compiler set in environment variable CXX:\n$ENV{CXX}.\n${CMAKE_CXX_COMPILER_INIT}")
|
|
|
ENDIF(EXISTS ${CMAKE_CXX_COMPILER_INIT})
|
|
|
- ELSE($ENV{CXX} MATCHES ".+")
|
|
|
+ ENDIF($ENV{CXX} MATCHES ".+")
|
|
|
+
|
|
|
+ IF(CMAKE_GENERATOR_CXX)
|
|
|
+ IF(NOT CMAKE_CXX_COMPILER_INIT)
|
|
|
+ SET(CMAKE_CXX_COMPILER_INIT ${CMAKE_GENERATOR_CXX})
|
|
|
+ ENDIF(NOT CMAKE_CXX_COMPILER_INIT)
|
|
|
+ ENDIF(CMAKE_GENERATOR_CXX)
|
|
|
+
|
|
|
+ IF(NOT CMAKE_CXX_COMPILER_INIT)
|
|
|
# if not in the envionment then search for the compiler in the path
|
|
|
- SET(CMAKE_CXX_COMPILER_LIST ${CMAKE_GENERATOR_CXX} c++ g++ CC aCC cl bcc )
|
|
|
+ SET(CMAKE_CXX_COMPILER_LIST c++ g++ CC aCC cl bcc )
|
|
|
FIND_PROGRAM(CMAKE_CXX_COMPILER_FULLPATH NAMES ${CMAKE_CXX_COMPILER_LIST})
|
|
|
GET_FILENAME_COMPONENT(CMAKE_CXX_COMPILER_INIT
|
|
|
${CMAKE_CXX_COMPILER_FULLPATH} NAME)
|
|
|
- ENDIF($ENV{CXX} MATCHES ".+")
|
|
|
+ ENDIF(NOT CMAKE_CXX_COMPILER_INIT)
|
|
|
SET(CMAKE_CXX_COMPILER ${CMAKE_CXX_COMPILER_INIT}
|
|
|
CACHE STRING "C++ compiler")
|
|
|
ENDIF(NOT CMAKE_CXX_COMPILER)
|