mirror of
https://github.com/mhx/dwarfs.git
synced 2025-09-12 13:59:46 -04:00
build: conditionally install benchmarks
This commit is contained in:
parent
3ae1e273f8
commit
4272cc377d
@ -524,23 +524,25 @@ if(WITH_LIBDWARFS AND WITH_BENCHMARKS)
|
|||||||
add_executable(dwarfs_benchmark test/dwarfs_benchmark.cpp)
|
add_executable(dwarfs_benchmark test/dwarfs_benchmark.cpp)
|
||||||
target_link_libraries(dwarfs_benchmark PRIVATE dwarfs_test_helpers benchmark::benchmark)
|
target_link_libraries(dwarfs_benchmark PRIVATE dwarfs_test_helpers benchmark::benchmark)
|
||||||
target_link_libraries(dwarfs_benchmark PRIVATE dwarfs_reader dwarfs_writer)
|
target_link_libraries(dwarfs_benchmark PRIVATE dwarfs_reader dwarfs_writer)
|
||||||
list(APPEND BINARY_TARGETS dwarfs_benchmark)
|
list(APPEND BENCHMARK_TARGETS dwarfs_benchmark)
|
||||||
|
|
||||||
add_executable(multiversioning_benchmark test/multiversioning_benchmark.cpp)
|
add_executable(multiversioning_benchmark test/multiversioning_benchmark.cpp)
|
||||||
target_link_libraries(multiversioning_benchmark PRIVATE benchmark::benchmark)
|
target_link_libraries(multiversioning_benchmark PRIVATE benchmark::benchmark)
|
||||||
target_link_libraries(multiversioning_benchmark PRIVATE dwarfs_writer)
|
target_link_libraries(multiversioning_benchmark PRIVATE dwarfs_writer)
|
||||||
list(APPEND BINARY_TARGETS multiversioning_benchmark)
|
list(APPEND BENCHMARK_TARGETS multiversioning_benchmark)
|
||||||
|
|
||||||
add_executable(converter_benchmark test/converter_benchmark.cpp)
|
add_executable(converter_benchmark test/converter_benchmark.cpp)
|
||||||
target_link_libraries(converter_benchmark PRIVATE dwarfs_test_helpers benchmark::benchmark)
|
target_link_libraries(converter_benchmark PRIVATE dwarfs_test_helpers benchmark::benchmark)
|
||||||
list(APPEND BINARY_TARGETS converter_benchmark)
|
list(APPEND BENCHMARK_TARGETS converter_benchmark)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# TODO: migrate to benchmark?
|
# TODO: migrate to benchmark?
|
||||||
add_executable(segmenter_benchmark test/segmenter_benchmark.cpp)
|
add_executable(segmenter_benchmark test/segmenter_benchmark.cpp)
|
||||||
target_link_libraries(segmenter_benchmark PRIVATE dwarfs_follybenchmark_lite dwarfs_test_helpers)
|
target_link_libraries(segmenter_benchmark PRIVATE dwarfs_follybenchmark_lite dwarfs_test_helpers)
|
||||||
target_link_libraries(segmenter_benchmark PRIVATE dwarfs_writer)
|
target_link_libraries(segmenter_benchmark PRIVATE dwarfs_writer)
|
||||||
list(APPEND BINARY_TARGETS segmenter_benchmark)
|
list(APPEND BENCHMARK_TARGETS segmenter_benchmark)
|
||||||
|
|
||||||
|
list(APPEND BINARY_TARGETS ${BENCHMARK_TARGETS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_LIBDWARFS AND WITH_FUZZ)
|
if(WITH_LIBDWARFS AND WITH_FUZZ)
|
||||||
@ -870,17 +872,36 @@ if(DEFINED ENV{GITHUB_REF_TYPE})
|
|||||||
"binary_tarball=${CMAKE_PROJECT_NAME}-${DWARFS_ARTIFACT_ID}${PACKAGE_EXT}\n"
|
"binary_tarball=${CMAKE_PROJECT_NAME}-${DWARFS_ARTIFACT_ID}${PACKAGE_EXT}\n"
|
||||||
"universal_binary=${UNIVERSAL_OUT}\n")
|
"universal_binary=${UNIVERSAL_OUT}\n")
|
||||||
|
|
||||||
set(RICEPP_BENCHMARK_FITS "ricepp/ricepp_benchmark_fits")
|
add_custom_command(
|
||||||
|
OUTPUT _copy_artifacts
|
||||||
add_custom_target(copy_artifacts
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${ARTIFACTS_FULL_PATH}
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${ARTIFACTS_FULL_PATH}
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${DWARFS_ARTIFACT_ID}${PACKAGE_EXT} ${ARTIFACTS_FULL_PATH}
|
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${DWARFS_ARTIFACT_ID}${PACKAGE_EXT} ${ARTIFACTS_FULL_PATH}
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${UNIVERSAL_OUT} ${ARTIFACTS_FULL_PATH}
|
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/${UNIVERSAL_OUT} ${ARTIFACTS_FULL_PATH}
|
||||||
|
)
|
||||||
|
|
||||||
|
if(WITH_BENCHMARKS)
|
||||||
|
foreach(tgt ${BENCHMARK_TARGETS})
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT _copy_artifacts APPEND
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/${RICEPP_BENCHMARK_FITS}${CMAKE_EXECUTABLE_SUFFIX}
|
${CMAKE_CURRENT_BINARY_DIR}/${tgt}${CMAKE_EXECUTABLE_SUFFIX}
|
||||||
|
${ARTIFACTS_FULL_PATH}/${tgt}-${DWARFS_ARTIFACT_ID}${CMAKE_EXECUTABLE_SUFFIX}
|
||||||
|
)
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
if (ENABLE_RICEPP)
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT _copy_artifacts APPEND
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/ricepp/ricepp_benchmark_fits${CMAKE_EXECUTABLE_SUFFIX}
|
||||||
${ARTIFACTS_FULL_PATH}/ricepp_benchmark_fits-${DWARFS_ARTIFACT_ID}${CMAKE_EXECUTABLE_SUFFIX}
|
${ARTIFACTS_FULL_PATH}/ricepp_benchmark_fits-${DWARFS_ARTIFACT_ID}${CMAKE_EXECUTABLE_SUFFIX}
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_custom_target(copy_artifacts DEPENDS _copy_artifacts)
|
||||||
|
set_source_files_properties(_copy_artifacts PROPERTIES SYMBOLIC ON)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
configure_file("${PROJECT_SOURCE_DIR}/cmake/dwarfs_install.cmake.in" dwarfs_install.cmake @ONLY)
|
configure_file("${PROJECT_SOURCE_DIR}/cmake/dwarfs_install.cmake.in" dwarfs_install.cmake @ONLY)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user