我想创建一个 bash 帮助脚本来区分生成的文件和它的源文件。输出的目录结构与源匹配,所以如果我有此数据,我应该能够找到源文件的名称:
- 生成文件的名称(这将传递给脚本)
- CMAKE_PROJECT_SOURCE_DIR(我需要找到它)
我的计划是:
- 在目录树上搜索 CMakeCache.txt 文件。
- 当/如果找到,运行 CMake 以某种方式打印出源路径
我该怎么做?最好不必配置/生成(因为这会引入一些延迟)。 我应该改为 grep 构建文件夹中的特定文件吗?哪个?
最佳答案
一旦找到 CMakeCache.txt
,您可以通过以下方式在其中 grep 查找项目源目录:
cat CMakeCache.txt | grep -E '.*_SOURCE_DIR:STATIC=.*' | grep -E -o '/.*'
这会输出 _SOURCE_DIR 的值变量。
关于bash - 从cmake中的构建目录中查找源目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27188786/