cmake 返回当前路径的上层路径 string(REGEX REPLACE…)

  • Post author:
  • Post category:其他




返回当前路径的上层路径

  • 先上实现代码
string(REGEX REPLACE "(.+)\\learn/basic.*" "\\1" PROJECT_INIT_PATH ${PROJECT_SOURCE_DIR})



说明

  • CMakeLists.txt 所在路径,可由cmake的宏得到,即

    PROJECT_SOURCE_DIR

    ,如下
/home/sxy/Personal/github/opencv_cpp/learn/basic/build
  • 目标路径,为CMakeLists.txt 所在路径的上级目录,保存到

    PROJECT_INIT_PATH

    ,如下
/home/sxy/Personal/github/opencv_cpp/
  • 使用cmake 中的string()函数和正则表达式可以做到
//原型
string(REGEX REPLACE <regular expression> <replace expression> <ouput variable> <input> [<input> ...])



版权声明:本文为qq_25188995原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。