|
|
@@ -81,3 +81,41 @@ SET(CMAKE_CXX_CREATE_STATIC_LIBRARY "wlib ${CMAKE_LIB_QUIET} -n -b '<TARGET_UNQ
|
|
|
|
|
|
# create a C static library
|
|
|
SET(CMAKE_C_CREATE_STATIC_LIBRARY ${CMAKE_CXX_CREATE_STATIC_LIBRARY})
|
|
|
+
|
|
|
+IF(NOT CMAKE_WATCOM_COMPILER_TESTS_RUN)
|
|
|
+ SET(CMAKE_WATCOM_COMPILER_TESTS_RUN 1)
|
|
|
+ SET(testWatcomVersionFile
|
|
|
+ "${CMAKE_ROOT}/Modules/CMakeTestWatcomVersion.c")
|
|
|
+ STRING(REGEX REPLACE "/" "\\\\" testWatcomVersionFile "${testWatcomVersionFile}")
|
|
|
+ MESSAGE(STATUS "Check for Watcom compiler version")
|
|
|
+ SET(CMAKE_TEST_COMPILER ${CMAKE_C_COMPILER})
|
|
|
+ IF (NOT CMAKE_C_COMPILER)
|
|
|
+ SET(CMAKE_TEST_COMPILER ${CMAKE_CXX_COMPILER})
|
|
|
+ ENDIF()
|
|
|
+ EXECUTE_PROCESS(COMMAND ${CMAKE_TEST_COMPILER}
|
|
|
+ -q -pc \"${testWatcomVersionFile}\"
|
|
|
+ OUTPUT_VARIABLE CMAKE_COMPILER_OUTPUT
|
|
|
+ RETURN_VALUE CMAKE_COMPILER_RETURN
|
|
|
+ )
|
|
|
+ STRING(REGEX REPLACE "\n" " " compilerVersion "${CMAKE_COMPILER_OUTPUT}")
|
|
|
+ STRING(REGEX REPLACE ".*VERSION=(.*)" "\\1"
|
|
|
+ compilerVersion "${compilerVersion}")
|
|
|
+ IF(NOT CMAKE_COMPILER_RETURN)
|
|
|
+ SET(WATCOM16)
|
|
|
+ SET(WATCOM17)
|
|
|
+ SET(WATCOM18)
|
|
|
+ SET(WATCOM19)
|
|
|
+ IF("${compilerVersion}" LESS 1270)
|
|
|
+ SET(WATCOM16 1)
|
|
|
+ ENDIF()
|
|
|
+ IF("${compilerVersion}" EQUAL 1270)
|
|
|
+ SET(WATCOM17 1)
|
|
|
+ ENDIF()
|
|
|
+ IF("${compilerVersion}" EQUAL 1280)
|
|
|
+ SET(WATCOM18 1)
|
|
|
+ ENDIF()
|
|
|
+ IF("${compilerVersion}" EQUAL 1290)
|
|
|
+ SET(WATCOM19 1)
|
|
|
+ ENDIF()
|
|
|
+ ENDIF()
|
|
|
+ENDIF()
|