CMake添加接口但不链接

时间:2017-12-15 11:33:45

标签: cmake

链接到库时,该库的所有接口目录都将添加到此目标的包含路径中。

当可执行文件包含多个对象库时,那些OBJECT库将不具有此包含路径。我不能简单地在OBJECT库上target_link_library。 CMake会失败。

是否有一个CMake功能可以添加所有接口目录但不链接?

我自己创建了它,但我很确定它在某个地方......

function(target_add_interfaces TARGET OTHER_TARGETS)
   foreach(OTHER_TARGET ${OTHER_TARGETS})
      target_include_directories(${TARGET} PUBLIC "$<TARGET_PROPERTY:${OTHER_TARGET},INTERFACE_INCLUDE_DIRECTORIES>")
   endforeach(OTHER_TARGET)
endfunction()

0 个答案:

没有答案