mirror of
				https://github.com/NVIDIA/cuda-samples.git
				synced 2025-11-04 15:47:50 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
set(CMAKE_SYSTEM_NAME QNX)
 | 
						|
set(CMAKE_SYSTEM_PROCESSOR aarch64)
 | 
						|
 | 
						|
# Need to set the QNX_HOST and QNX_TARGET environment variables
 | 
						|
set(QNX_HOST $ENV{QNX_HOST})
 | 
						|
set(QNX_TARGET $ENV{QNX_TARGET})
 | 
						|
 | 
						|
message(STATUS "QNX_HOST = ${QNX_HOST}")
 | 
						|
message(STATUS "QNX_TARGET = ${QNX_TARGET}")
 | 
						|
 | 
						|
find_program(QNX_QCC   NAMES qcc   PATHS "${QNX_HOST}/usr/bin")
 | 
						|
find_program(QNX_QPLUS NAMES q++   PATHS "${QNX_HOST}/usr/bin")
 | 
						|
 | 
						|
if(NOT QNX_QCC OR NOT QNX_QPLUS)
 | 
						|
    message(FATAL_ERROR "Could not find qcc or q++ in QNX_HOST=${QNX_HOST}/usr/bin")
 | 
						|
endif()
 | 
						|
 | 
						|
# Specify the cross-compilers
 | 
						|
set(CMAKE_C_COMPILER ${QNX_QCC})
 | 
						|
set(CMAKE_CXX_COMPILER ${QNX_QPLUS})
 | 
						|
 | 
						|
set(CMAKE_C_COMPILER_TARGET aarch64)
 | 
						|
set(CMAKE_CXX_COMPILER_TARGET aarch64)
 | 
						|
 | 
						|
# Set compiler flags
 | 
						|
set(CMAKE_CUDA_HOST_COMPILER ${CMAKE_CXX_COMPILER} CACHE STRING "" FORCE)
 | 
						|
set(CMAKE_CUDA_COMPILER_ID_TEST_FLAGS_FIRST "-nodlink -L${CUDA_ROOT}/lib64 -L${CUDA_ROOT}/lib -I${CUDA_ROOT}/include")
 | 
						|
 | 
						|
set(CMAKE_C_FLAGS " \"-V${__qnx_gcc_ver},gcc_ntoaarch64le\"")
 | 
						|
set(CMAKE_CXX_FLAGS " \"-V${__qnx_gcc_ver},gcc_ntoaarch64le\"")
 | 
						|
set(CMAKE_CUDA_FLAGS " --qpp-config=${__qnx_gcc_ver},gcc_ntoaarch64le")
 | 
						|
set(AUTOMAGIC_NVCC_FLAGS --qpp-config=${__qnx_gcc_ver},gcc_ntoaarch64le CACHE STRING "automagic feature detection flags for cross build")
 | 
						|
add_link_options("-V${__qnx_gcc_ver},gcc_ntoaarch64le")
 | 
						|
 | 
						|
set(CROSS_COMPILE_FOR_QNX ON CACHE BOOL "Cross compiling for QNX platforms")
 | 
						|
string(APPEND CMAKE_CXX_FLAGS " -D_QNX_SOURCE")
 | 
						|
string(APPEND CMAKE_CUDA_FLAGS " -D_QNX_SOURCE")
 |