一. 简介
前面几篇文章学习了 cmake的一些目录属性,主要有两个重要的目录属性INCLUDE_DIRECTORIES 属性、LINK_DIRECTORIES 属性。文章如下:
cmake进阶:目录属性之 INCLUDE_DIRECTORIES-CSDN博客
本文学习 父目录的 INCLUDE_DIRECTORIES 填充 子目录的 INCLUDE_DIRECTORIES 属性。
二. 父目录的 INCLUDE_DIRECTORIES 填充 子目录的 INCLUDE_DIRECTORIES 属性
父目录的 INCLUDE_DIRECTORIES 属性可以初始化、填充子目录的 INCLUDE_DIRECTORIES 属性。
假如有如下工程目录:
顶层 CMakeLists.txt文件的代码如下所示:
# 父源码
cmake_minimum_required(VERSION 3.5)
project(TEST)
#调用 include_directories 添加 2 个目录
include_directories(include hello)
get_directory_property(p_list INCLUDE_DIRECTORIES)
message("${p_list}")
#调用子源码
add_subdirectory(subdir)
subdir子目录 CMakeLists.txt文件的代码如下:
#子源码
get_directory_property(c_list INCLUDE_DIRECTORIES)
message("${c_list}")
进入 build目录下,执行"cmake .." 命令后,打印信息如下:
关于头文件搜索路径学习到这里。