1 、set 设置名称变量 如set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR})
2、project(DriveworksSDK_Samples C CXX)?
3、find_package(CUDA REQUIRED) 该命令用于在固定的目录下查找cmake文件,一般为FindCUDA.camke CUDAConfig.cmake,在安装相应的软件时,如cuda和opencv,会在相应的目录下配置cmake文件,用于指定相应的头文件目录以及库目录。
4、include(ArchConfiguration)
5、include_directories(${Driveworks_INCLUDE_DIR}) 用于包含头文件目录
6、list(APPEND Driveworks_LIBRARIES ${CUDA_LIBRARIES} ${CUDA_cublas_LIBRARY}) 也是一种设置环境变量的方式,是将后面的变量添加进前面的变量中。
7、file(GLOB ADDITIONAL_SAMPLES "CMakeListSamples*.txt") 用于查找所有匹配的文件并添加进变量;
8、add_subbirectory(src/${SAMPLE}) 用于添加子目录,可以编译该目录下的CMakeList。
9、add_cuda_dependencies_target(update_cuda_deps ON) 这个是在其他的CMAKE中定义的宏,用于添加进CUDA相应的头文件和库。
10、target_link_libraries(${PROJECT_NAME} PRIVATE ${LIBRARIES}) 添加需要连接的库。在前面生成了库或者可执行文件,而该库或者可执行文件需要依赖其他的库,那么这里就要添加链接的库,实现链接。
11、link_directories()
12 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
13 configure_file(src/framework/DataPath.hpp.in
${SDK_BINARY_DIR}/configured/samples/framework/DataPath.hpp)