在我的主项目中,我包含了add_subdirectory()
的其他外部项目或库。有时我发现我想设置或修改这样包含的子项目的一些变量或属性,例如:
我想修改子目录中的默认选项,而不会影响父项目。如果仅在set()
之前使用add_subdirectory()
,那么将在父项目中创建我不需要的另一个变量,如果父项目中存在具有相同名称的变量或选项,则可能会导致冲突
我想为子项目发布一些add_definitions()
或include_directories()
。我可以使用target_compile_definitions()
和target_include_directories()
,但这需要了解子项目中的所有目标。
那么,有没有办法传递这些信息,而无需修改子目录中的CMakeLists.txt
文件?