1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- # 定义cmake的最低版本
- cmake_minimum_required(VERSION 3.5)
- # 定义工程名称
- project(MeasurementNode VERSION 1.0.0.0)
- # 指定安装目录
- SET (CMAKE_INSTALL_PREFIX
- ${PROJECT_SOURCE_DIR}/out
- )
- # 打印工程定级目录(非必要)
- message("project path: " ${PROJECT_SOURCE_DIR})
- include_directories(
- ${PROJECT_SOURCE_DIR}/Modules/DataToCloud/device
- ${PROJECT_SOURCE_DIR}/Modules/DataToCloud/service
- ${PROJECT_SOURCE_DIR}/Modules/DataToCloud/conversion
- ${PROJECT_SOURCE_DIR}/tool
- )
- # 第三方库
- find_path(YAML_CPP_INCLUDE_DIR
- NAMES yaml_cpp.h
- PATHS ${YAML_CPP_INCLUDE_DIRS})
- find_library(YAML_CPP_LIBRARY
- NAMES YAML_CPP
- PATHS ${YAML_CPP_LIBRARY_DIRS})
- if(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5")
- add_definitions(-DHAVE_NEW_YAMLCPP)
- endif(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5")
- add_subdirectory(thirdpart/rs_driver)
- FIND_PACKAGE(PCL REQUIRED)
- FIND_PACKAGE(OpenCV REQUIRED)
- FIND_PACKAGE(rs_driver REQUIRED)
- FIND_PACKAGE(Eigen3 REQUIRED)
- FIND_PACKAGE(Protobuf REQUIRED)
- # 添加子目录CMAKE
- add_subdirectory(thirdpart) # 模块
- add_subdirectory(tool) #
- add_subdirectory(Modules/DataToCloud/service) # 模块
- add_subdirectory(Modules/DataToCloud/conversion) # 模块
- add_subdirectory(Modules/DataToCloud/device) # 模块
- # 将./src 下的所有文件名保存到DIR_SRCS变量
- aux_source_directory(. DIR_SRCS)
- # 编译时打印
- message("-- add " ${DIR_SRCS})
- # 生成可执行文件
- add_executable(MeasurementNode ${DIR_SRCS})
- # 添加链接静态库
- target_link_libraries(MeasurementNode
- libdevice
- libconversion
- libpahoc
- libtool
- -lpthread
- )
- # 将库文件,可执行文件,头文件安装到指定目录
- install(TARGETS MeasurementNode
- LIBRARY DESTINATION lib # 动态库安装路径
- ARCHIVE DESTINATION lib # 静态库安装路径
- RUNTIME DESTINATION bin # 可执行文件安装路径
- PUBLIC_HEADER DESTINATION include # 头文件安装路径
- )
|