我有一个C ++库A.可以通过多种方式安装,具体取决于使用的外部依赖项。这也会根据库是在调试模式还是在发布模式下进行更改。这意味着某些功能可能不可用,或者需要更改某些类型/定义才能链接到库。
现在我想将A链接到本地项目B.我为A设置了一个ProjectConfig.cmake文件,该文件位于/path/lib/CMake/A/AConfig.cmake,该文件在最小的构建。但是,只要我在编译中添加定义或包含某些包,就不会自动导出此信息。这使得链接到A很难,例如我需要知道OpenMP用于具有连贯的构建。
有没有办法以ProjectConfig.cmake的方式导出此信息?
答案 0 :(得分:1)
生成ProjectConfig.cmake文件以包含您需要包含的内容。
http://www.cmake.org/cmake/help/v3.0/manual/cmake-packages.7.html
请注意,如果您设置目标的使用要求,则不需要生成文件。
http://www.cmake.org/cmake/help/v3.0/manual/cmake-buildsystem.7.html