mirror of
https://github.com/mhx/dwarfs.git
synced 2025-09-13 06:16:55 -04:00
build: use ricepp as object libraries
This commit is contained in:
parent
792a5c32c3
commit
93a6979cb6
@ -791,7 +791,7 @@ target_compile_definitions(
|
|||||||
)
|
)
|
||||||
|
|
||||||
if(ENABLE_RICEPP)
|
if(ENABLE_RICEPP)
|
||||||
target_link_libraries(dwarfs_common PRIVATE ricepp)
|
target_link_libraries(dwarfs_common PRIVATE ${RICEPP_OBJECT_TARGETS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(STATIC_BUILD_DO_NOT_USE)
|
if(STATIC_BUILD_DO_NOT_USE)
|
||||||
@ -1466,7 +1466,7 @@ if(NOT STATIC_BUILD_DO_NOT_USE)
|
|||||||
dwarfs_fsst
|
dwarfs_fsst
|
||||||
|
|
||||||
# other
|
# other
|
||||||
ricepp
|
${RICEPP_OBJECT_TARGETS}
|
||||||
folly_deps
|
folly_deps
|
||||||
EXPORT dwarfs-targets
|
EXPORT dwarfs-targets
|
||||||
LIBRARY DESTINATION lib
|
LIBRARY DESTINATION lib
|
||||||
|
@ -68,20 +68,27 @@ endif()
|
|||||||
|
|
||||||
foreach(target ${RICEPP_LIBS_CPUSPECIFIC})
|
foreach(target ${RICEPP_LIBS_CPUSPECIFIC})
|
||||||
message(STATUS "[ricepp] adding CPU target: ${target}")
|
message(STATUS "[ricepp] adding CPU target: ${target}")
|
||||||
target_include_directories(${target} PUBLIC include)
|
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_compile_features(${target} PUBLIC cxx_std_20)
|
target_compile_features(${target} PUBLIC cxx_std_20)
|
||||||
list(APPEND RICEPP_OBJECTS_CPUSPECIFIC $<TARGET_OBJECTS:${target}>)
|
list(APPEND RICEPP_OBJECTS_CPUSPECIFIC $<TARGET_OBJECTS:${target}>)
|
||||||
|
list(APPEND RICEPP_OBJECT_TARGETS ${target})
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
add_library(ricepp ricepp.cpp ${RICEPP_OBJECTS_CPUSPECIFIC})
|
add_library(ricepp-core OBJECT ricepp.cpp)
|
||||||
target_link_libraries(ricepp PUBLIC range-v3::range-v3)
|
target_link_libraries(ricepp-core PUBLIC range-v3::range-v3)
|
||||||
target_include_directories(ricepp PUBLIC
|
target_include_directories(ricepp-core PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||||
$<INSTALL_INTERFACE:include>
|
$<INSTALL_INTERFACE:include>
|
||||||
)
|
)
|
||||||
target_compile_features(ricepp PUBLIC cxx_std_20)
|
target_compile_features(ricepp-core PUBLIC cxx_std_20)
|
||||||
target_compile_definitions(ricepp PRIVATE ${RICEPP_CPU_SUPPORT})
|
target_compile_definitions(ricepp-core PRIVATE ${RICEPP_CPU_SUPPORT})
|
||||||
|
list(APPEND RICEPP_OBJECT_TARGETS ricepp-core)
|
||||||
|
|
||||||
|
set(RICEPP_OBJECT_TARGETS "${RICEPP_OBJECT_TARGETS}" PARENT_SCOPE)
|
||||||
|
|
||||||
|
add_library(ricepp)
|
||||||
|
target_link_libraries(ricepp PUBLIC ${RICEPP_OBJECT_TARGETS})
|
||||||
|
|
||||||
if(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
|
if(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
|
||||||
message(STATUS "[ricepp] building standalone")
|
message(STATUS "[ricepp] building standalone")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user