如何为CMakefile设置多个元素变量

时间:2016-07-15 08:32:26

标签: cmake gnu-make

我可以为cmake传递定义的变量,如下所示(例如,当我想设置PYTHON_INCLUDE_PATH = dir1时)。

cmake -DPYTHON_INCLUDE_PATH=dir1 ..

但是如果我想为这个PYTHON_INCLUDE_PATH设置多个路径怎么办?我试过了

cmake -DPYTHON_INCLUDE_PATH='dir1 dir2 dir3'   

或应该是

cmake -DPYTHON_INCLUDE_PATH='dir1:dir2:dir3' (or , instead of :)  

但我不确定它是否有效。 (看到其他一些错误,所以我不确定它是否正确。)

我看到我也可以在.cmake文件中设置这些定义,如下面的set(VARIABLE,VALUE)。

set(OpenCV_CUDA_VERSION 7.5)   

那么当变量有多个元素时,这个set(..)形式的对应语法是什么?

1 个答案:

答案 0 :(得分:1)

使用以下语法:

cmake -DLIST_VAR="one;two;three" ...

你可以玩以下CMakeLists.txt

cmake_minimum_required(VERSION 3.5)

foreach(v IN LISTS LIST_VAR)
    message(STATUS "${v}")
endforeach()