OBJECT库会忽略INTERFACE库中的INTERFACE_POSITION_INDEPENDENT_CODE吗?

时间:2018-11-05 17:05:27

标签: cmake

似乎当INTERFACE库的一部分时,OBJECT库会忽略INTERFACE_POSITION_INDEPENDENT_CODE。以下CMakeLists.txt通过CMake传递时没有错误,尽管我希望它指出冲突。同样,使用-fPIC在archs中构建对象完全取决于在archs特定的set_target_properties调用中设置的值。我可以通过has-iPIC上的target_compile_options对其进行破解,但这并不酷。 这是一个错误吗?  或对某事的误解?

cmake版本:3.12.3

file(GLOB ARCHS_SRC "*.cpp")

add_library(has-iPIC INTERFACE)
set_target_properties(
  has-iPIC
  PROPERTIES
  INTERFACE_POSITION_INDEPENDENT_CODE ON
)

add_library(archs OBJECT ${ARCHS_SRC})

target_link_libraries(archs
  has-iPIC
)

set_target_properties(
    archs PROPERTIES
    POSITION_INDEPENDENT_CODE OFF
)

0 个答案:

没有答案