build: range-v3 is not a hard dependency for installed libs

This commit is contained in:
Marcus Holland-Moritz 2024-08-08 23:06:38 +02:00
parent df8db3880a
commit a06158d7d0
3 changed files with 9 additions and 4 deletions

View File

@ -1130,7 +1130,6 @@ foreach(tgt dwarfs_common dwarfs_reader dwarfs_writer
set_target_properties(${tgt} PROPERTIES EXPORT_COMPILE_COMMANDS ON)
target_link_libraries(${tgt} PUBLIC Boost::boost)
target_link_libraries(${tgt} PRIVATE range-v3::range-v3)
if(USE_JEMALLOC)
target_link_libraries(${tgt} PRIVATE PkgConfig::JEMALLOC)
@ -1143,6 +1142,7 @@ foreach(tgt dwarfs_common dwarfs_reader dwarfs_writer
target_include_directories(${tgt} PRIVATE
$<BUILD_INTERFACE:$<TARGET_PROPERTY:phmap,INTERFACE_INCLUDE_DIRECTORIES>>
$<BUILD_INTERFACE:$<TARGET_PROPERTY:range-v3::range-v3,INTERFACE_INCLUDE_DIRECTORIES>>
)
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR

View File

@ -19,7 +19,6 @@ if(@APPLE@ AND @USE_HOMEBREW_LIBARCHIVE@) # APPLE AND USE_HOMEBREW_LIBARCHIVE
endif()
find_dependency(Threads REQUIRED)
find_dependency(range-v3 CONFIG REQUIRED)
find_dependency(fmt CONFIG REQUIRED)
find_dependency(gflags CONFIG REQUIRED)
find_dependency(Boost @BOOST_REQUIRED_VERSION@ REQUIRED COMPONENTS chrono context filesystem iostreams program_options regex system thread)

View File

@ -69,14 +69,20 @@ endif()
foreach(target ${RICEPP_LIBS_CPUSPECIFIC})
message(STATUS "[ricepp] adding CPU target: ${target}")
target_include_directories(${target} PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
target_link_libraries(${target} PUBLIC range-v3::range-v3)
# target_link_libraries(${target} PUBLIC range-v3::range-v3)
target_include_directories(${target} PUBLIC
$<BUILD_INTERFACE:$<TARGET_PROPERTY:range-v3::range-v3,INTERFACE_INCLUDE_DIRECTORIES>>
)
target_compile_features(${target} PUBLIC cxx_std_20)
list(APPEND RICEPP_OBJECTS_CPUSPECIFIC $<TARGET_OBJECTS:${target}>)
list(APPEND RICEPP_OBJECT_TARGETS ${target})
endforeach()
add_library(ricepp-core OBJECT ricepp.cpp)
target_link_libraries(ricepp-core PUBLIC range-v3::range-v3)
# target_link_libraries(ricepp-core PUBLIC range-v3::range-v3)
target_include_directories(ricepp-core PUBLIC
$<BUILD_INTERFACE:$<TARGET_PROPERTY:range-v3::range-v3,INTERFACE_INCLUDE_DIRECTORIES>>
)
target_include_directories(ricepp-core PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>