You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
2.0 KiB
73 lines
2.0 KiB
#限定CMake的版本
|
|
cmake_minimum_required (VERSION 3.5)
|
|
|
|
project(rootproject)
|
|
set(CHECK_WORK_Value "CELL_ET")
|
|
|
|
if (DEFINED WORK)
|
|
set(CHECK_WORK_Value ${WORK})
|
|
endif()
|
|
|
|
# 根据宏设置编译时宏
|
|
add_definitions(-DCHECK_WORK="${CHECK_WORK_Value}")
|
|
|
|
message(STATUS "CHECK_WORK: ${CHECK_WORK_Value}")
|
|
|
|
find_package( OpenCV REQUIRED )
|
|
|
|
message(STATUS "oPENCV Library status:")
|
|
message(STATUS ">version:${OpenCV_VERSION}")
|
|
message(STATUS "Include:${OpenCV_INCLUDE_DIRS}")
|
|
|
|
set(CMAKE_BUILD_TYPE "release")
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON) # 要求编译器支持 C++17
|
|
set(CMAKE_CXX_EXTENSIONS OFF) # 禁用 GNU 特定的扩展
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
#set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS}; --default-stream per-thread)
|
|
|
|
add_definitions(-DCUDA_API_PER_THREAD_DEFAULT_STREAM)
|
|
# PROJECT_INCLUDE_DIR当作全局头文件变量
|
|
set(PROJECT_INCLUDE_DIR c/include)
|
|
|
|
# x86_64,aarch64
|
|
set(BUILD_ARCH x86_64 CACHE STRING "Arch of this project" FORCE)
|
|
MESSAGE(STATUS "BUILD_ARCH : ${BUILD_ARCH}")
|
|
|
|
MESSAGE(STATUS "CMAKE_BUILD_TYPE : ${CMAKE_BUILD_TYPE}")
|
|
MESSAGE(STATUS "This is BINARY dir " ${PROJECT_BINARY_DIR})
|
|
MESSAGE(STATUS "This is SOURCE dir " ${PROJECT_SOURCE_DIR})
|
|
|
|
#包含通用的编译环境模块到顶层目录
|
|
include(${PROJECT_SOURCE_DIR}/cmake/default_variabes.cmake)
|
|
include(${PROJECT_SOURCE_DIR}/cmake/cpp_c_flags.cmake)
|
|
include(${PROJECT_SOURCE_DIR}/cmake/print_archs.cmake)
|
|
|
|
include_directories(${PROJECT_SOURCE_DIR}/include/)
|
|
include_directories(/usr/local/boost/include
|
|
/usr/include
|
|
${OpenCV_INCLUDE_DIRS}
|
|
)
|
|
link_directories(
|
|
${PROJECT_SOURCE_DIR}/lib/x86_64/
|
|
/usr/local/boost/lib
|
|
)
|
|
|
|
#下一级的编译目录
|
|
|
|
MESSAGE("build dependent module - start")
|
|
#当程序执行命令 ADD_SUBDIRECTORY(src)时进入目录 src 对其中的 CMakeLists.txt 进行解析。
|
|
|
|
|
|
add_subdirectory(ConfigModule)
|
|
MESSAGE("ConfigModule")
|
|
|
|
# CommonUtil
|
|
add_subdirectory(AlgorithmModule)
|
|
MESSAGE("AlgorithmModule")
|
|
|
|
add_subdirectory(example)
|
|
MESSAGE("example")
|
|
|
|
|