Added an "add LTO if enabled" function to all targets currently in the library
This commit is contained in:
parent
31254ced32
commit
43ea796a02
4 changed files with 13 additions and 5 deletions
|
|
@ -3,8 +3,10 @@ project(sfizz)
|
|||
###############################
|
||||
add_executable(sfzprint sfzprint.cpp)
|
||||
target_link_libraries(sfzprint sfizz::parser absl::flags_parse)
|
||||
sfizz_enable_lto_if_needed(sfzprint)
|
||||
# install(TARGETS sfzprint DESTINATION . OPTIONAL)
|
||||
|
||||
add_executable(sfizz_jack jack_client.cpp)
|
||||
target_link_libraries(sfizz_jack sfizz::sfizz jack absl::flags_parse)
|
||||
# install(TARGETS sfizz_jack DESTINATION . OPTIONAL)
|
||||
sfizz_enable_lto_if_needed(sfizz_jack)
|
||||
# install(TARGETS sfizz_jack DESTINATION . OPTIONAL)
|
||||
|
|
|
|||
|
|
@ -12,3 +12,10 @@ else()
|
|||
endif()
|
||||
set (ENABLE_LTO OFF)
|
||||
endif()
|
||||
|
||||
function(SFIZZ_ENABLE_LTO_IF_NEEDED TARGET)
|
||||
if (ENABLE_LTO)
|
||||
message(STATUS "Enabling LTO on ${TARGET}")
|
||||
set_property (TARGET ${TARGET} PROPERTY INTERPROCEDURAL_OPTIMIZATION True)
|
||||
endif()
|
||||
endfunction()
|
||||
|
|
|
|||
|
|
@ -32,10 +32,8 @@ if (UNIX)
|
|||
target_link_libraries (sfizz PUBLIC atomic)
|
||||
endif()
|
||||
|
||||
if (ENABLE_LTO)
|
||||
set_property (TARGET sfizz_parser PROPERTY INTERPROCEDURAL_OPTIMIZATION True)
|
||||
set_property (TARGET sfizz PROPERTY INTERPROCEDURAL_OPTIMIZATION True)
|
||||
endif()
|
||||
sfizz_enable_lto_if_needed(sfizz_parser)
|
||||
sfizz_enable_lto_if_needed(sfizz)
|
||||
|
||||
add_library (sfizz::parser ALIAS sfizz_parser)
|
||||
add_library (sfizz::sfizz ALIAS sfizz)
|
||||
|
|
|
|||
|
|
@ -37,5 +37,6 @@ if(UNIX)
|
|||
endif(UNIX)
|
||||
target_link_libraries(sfizz_tests PRIVATE absl::strings absl::str_format absl::flat_hash_map sndfile cnpy absl::span absl::algorithm)
|
||||
target_include_directories(sfizz_tests SYSTEM PRIVATE sources)
|
||||
sfizz_enable_lto_if_needed(sfizz_tests)
|
||||
|
||||
file(COPY "." DESTINATION ${CMAKE_BINARY_DIR}/tests)
|
||||
Loading…
Add table
Reference in a new issue