我有一个使用以下cmake命令配置的项目:
cmake -DCMAKE_CXX_COMPILER=g++-610 \
-DCMAKE_CXX_FLAGS='-std=c++0x' \
-DCMAKE_C_COMPILER=gcc-610 \
-DCMAKE_BUILD_TYPE=Debug -DCMAKE_RULE_MESSAGES=OFF \
-DDISABLE_GCRYPT=ON \
-DDISABLE_SCGI=ON \
-DDISABLE_HTTP=ON \
-DDISABLE_CACHE=ON \
-DDISABLE_TCPCACHE=ON \
-DDISABLE_GZIP=ON \
..
现在我想在不同的目录中配置一个构建版本,使用不同的编译器(例如clang)。有没有办法从现有的构建目录中找出cmake调用开关?
当配置了使用autoconf的项目时,我可以获得配置的选项:
$ ./config.status --version
config.status
configured by ../gcc-6.1.0/configure, generated by GNU Autoconf 2.64,
with options " '--program-suffix=-610' '--enable-version-specific-runtime-libs' '--enable-languages=c,c++,lto'"
答案 0 :(得分:1)
我恐怕没有。
这些信息将包含在CMakeCache.txt
中,但是无法区分cmake调用时设置的缓存变量和cmake本身设置的其他缓存变量,或项目cmake文件中的缓存变量,或通过cmake-gui