#声明使用的最低版本
cmake_minimum_required(VERSION 3.10.2)
#指定的工程名
project(ads)
#用来查找依赖包,理想情况下,一句 find_package()把一整个依赖包的头文件包含路径、库路径、库名称、版本号
#等情况都获取到,后续只管用就好了。但实际中往往CMake失败就是出在find_package()失败上
find_package(Threads)
#现阶段,你只需要了解SET指令用来显示的定义变量即可
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
#判断编译器 GNU 不太好理解,可以理解成GCC G++
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
set(COMPILE_OPTIONS
-pedantic
-Wall
-Wextra
)
add_definitions(-D_GNU_SOURCE)
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
# Compiler flags and definitions for Visual Studio come here
endif()
#语法为: 编译开关 option(<variable> "<help_text>" [value])
#UILD_SHARED_LIBS 变量指定编译类型为共享库
option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
#add_subdirectory(子文件夹名)表示对子文件夹项目进行cmake编译。
add_subdirectory(AdsLib)
add_subdirectory(AdsLibTest)
add_subdirectory(example)
ADS-master中的CMakelists的文件说明
于 2022-07-29 22:23:18 首次发布