CMake:获取带有转义字符的环境变量

时间:2019-09-30 16:16:49

标签: cmake environment-variables cmake-language

假设有人要在CMake中使用环境变量MY_VAR。只需使用set(myVar $ENV{MY_VAR})

但是如果MY_VAR包含转义字符,说MY_VAR="/path/with/escaped\ chars"怎么办? CMake将\后跟空白视为两个单独的字符,而不是单个字符(空白)。换句话说,

# CMakeLists.txt

set(myVar $ENV{MY_VAR})
message(${myVar})

打印/path/with/escaped\ chars,而不打印/path/with/escaped chars如何让CMake识别环境变量中的转义字符?是否有关于此问题的最佳实践?我正在macOS上运行CMake,但希望有一个独立于平台的解决方案...

上下文:Cmake用于在安装之前配置C++框架。 MY_VAR包含用户提供的路径,该路径在Makefile中用于(a)将CMAKE_PREFIX_PATH设置,而(b)由Cmake设置为configure_file用于python脚本的配置文件。是框架要求的。

0 个答案:

没有答案