cmake 生成器表达式
时间: 2023-10-15 22:06:07 浏览: 90
cmake代码生成工具
CMake 生成器表达式可以在 CMakeLists.txt 文件中使用,用于在生成项目时动态计算文件路径、编译选项、链接选项等信息。
生成器表达式使用 `$<` 开头,`>` 结尾,中间是表达式内容。常见的生成器表达式有:
- `$<TARGET_PROPERTY:target,prop>`:获取指定目标的属性值
- `$<TARGET_FILE:target>`:获取指定目标的输出文件路径
- `$<TARGET_OBJECTS:target>`:获取指定目标的所有目标文件路径
- `$<SOURCE_DIR:dir>`:获取指定源代码目录的绝对路径
- `$<BUILD_INTERFACE:...>`:指定编译接口文件路径
- `$<INSTALL_INTERFACE:...>`:指定安装接口文件路径
- `$<CONFIG>`:根据当前构建配置返回相应的值
例如,可以通过 `$<TARGET_FILE:mylib>` 获取目标为 `mylib` 的输出文件路径,从而将其作为编译选项传递给其他目标。
需要注意的是,生成器表达式仅在生成项目时才会被计算,而不是在配置时。因此,不能在配置时使用生成器表达式进行条件判断或路径计算。
阅读全文