diff --git a/Modules/Compiler/QCC-CXX.cmake b/Modules/Compiler/QCC-CXX.cmake index 0716af7a27..19a04af744 100644 --- a/Modules/Compiler/QCC-CXX.cmake +++ b/Modules/Compiler/QCC-CXX.cmake @@ -6,10 +6,18 @@ __compiler_qcc(CXX) # If the toolchain uses qcc for CMAKE_CXX_COMPILER instead of QCC, the # default for the driver is not c++. +if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "12.2.0") # QNX 8.0 toolchain + set(_cmake_qcc_cxx_lang_compile_flag "-lang-c++") + set(_cmake_qcc_cxx_lang_link_flag "-lang-c++") +else () + set(_cmake_qcc_cxx_lang_compile_flag "-x c++") + set(_cmake_qcc_cxx_lang_link_flag "") +endif () set(CMAKE_CXX_COMPILE_OBJECT - " -lang-c++ -o -c ") - + " ${_cmake_qcc_cxx_lang_compile_flag} -o -c ") set(CMAKE_CXX_LINK_EXECUTABLE - " -lang-c++ -o ") + " ${_cmake_qcc_cxx_lang_link_flag} -o ") +unset(_cmake_qcc_cxx_lang_compile_flag) +unset(_cmake_qcc_cxx_lang_link_flag) set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")