cmake_demo/CMakelists.txt

70 lines
1.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 0. cmake 最低版本号要求
cmake_minimum_required(VERSION 3.8)
# 0. 项目信息
project(demo)
# 2. 添加当前路径
set(CMAKE_INCLUDE_CURRENT_DIR ON)
# 2. 配置项目
option(USE_DEMO "use demo application interface" ON)
set(VERSION "1.0")
# 2. 配置文件
configure_file(
"${PROJECT_SOURCE_DIR}/config.h.in"
"${PROJECT_BINARY_DIR}/config.h"
)
# 2. 配置条件
if(USE_DEMO)
# include_directories(.)
# else()
# pass
endif(USE_DEMO)
# 0. 查找当前目录下的所有文件并将名称保存在DIR_SRC中
aux_source_directory(. DIR_SRC)
# 1. 添加子目录
add_subdirectory(src)
# 1. 添加头文件路径
include_directories(src)
# 0. 指定生成目标
add_executable(demo ${DIR_SRC})
# 1. 添加链接库
# 1.A 如果是动态库修改了安装路径之后exe就找不到了怎么破
# link_directories(${PROJECT_SOURCE_DIR}/lib)
# target_link_libraries(demo list_d)
# 1.B 静态库
target_link_libraries(demo list)
# 3. 配置安装路径
set(CMAKE_INSTALL_PREFIX "./release")
install(TARGETS demo DESTINATION bin)
install (FILES "${PROJECT_BINARY_DIR}/config.h"
DESTINATION include)
# # 4. 启用测试
# enable_testing()
# # 测试程序是否成功运行
# add_test (NAME test_demo COMMAND demo 1 2 3 5 8)
# 5. 支持GDB
set(CMAKE_BUILD_TYPE "Debug")
set(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb")
set(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")
#
# 构建一个 CPack 安装包windows还得添加打包工具
#
# include (InstallRequiredSystemLibraries)
# set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/License.txt")
# set (CPACK_PACKAGE_VERSION_MAJOR "${VERSION}")
# include (CPack)