if("$ENV{QNX_HOST}" STREQUAL "") message(FATAL_ERROR "QNX_HOST environment variable not found. Please set the variable to your host's build tools") endif() if("$ENV{QNX_TARGET}" STREQUAL "") message(FATAL_ERROR "QNX_TARGET environment variable not found. Please set the variable to the qnx target location") endif() if(CMAKE_HOST_WIN32) set(HOST_EXECUTABLE_SUFFIX ".exe") #convert windows paths to cmake paths file(TO_CMAKE_PATH "$ENV{QNX_HOST}" QNX_HOST) file(TO_CMAKE_PATH "$ENV{QNX_TARGET}" QNX_TARGET) else() set(QNX_HOST "$ENV{QNX_HOST}") set(QNX_TARGET "$ENV{QNX_TARGET}") endif() message(STATUS "using QNX_HOST ${QNX_HOST}") message(STATUS "using QNX_TARGET ${QNX_TARGET}") set(QNX TRUE) set(CMAKE_SYSTEM_NAME QNX) set(CMAKE_C_COMPILER ${QNX_HOST}/usr/bin/qcc) set(CMAKE_CXX_COMPILER ${QNX_HOST}/usr/bin/qcc) set(CMAKE_ASM_COMPILER ${QNX_HOST}/usr/bin/qcc) set(CMAKE_AR "${QNX_HOST}/usr/bin/nto${CMAKE_SYSTEM_PROCESSOR}-ar${HOST_EXECUTABLE_SUFFIX}" CACHE PATH "archiver") set(CMAKE_RANLIB "${QNX_HOST}/usr/bin/nto${CMAKE_SYSTEM_PROCESSOR}-ranlib${HOST_EXECUTABLE_SUFFIX}" CACHE PATH "ranlib") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Vgcc_nto${CMAKE_SYSTEM_PROCESSOR} ${EXTRA_CMAKE_C_FLAGS}" CACHE STRING "c_flags") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Vgcc_nto${CMAKE_SYSTEM_PROCESSOR} -std=gnu++11 ${EXTRA_CMAKE_CXX_FLAGS}" CACHE STRING "cxx_flags") set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -Vgcc_nto${CMAKE_SYSTEM_PROCESSOR} ${EXTRA_CMAKE_ASM_FLAGS}" CACHE STRING "asm_flags") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${EXTRA_CMAKE_LINKER_FLAGS}" CACHE STRING "exe_linker_flags") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${EXTRA_CMAKE_LINKER_FLAGS}" CACHE STRING "so_linker_flags")