CMake: strip targets (optional) with -D STRIP_TARGETS=ON

pull/7683/head
mj-xmr 3 years ago
parent ab7df49331
commit 41297c10f0
No known key found for this signature in database
GPG Key ID: C101BF94093451E0

@ -154,6 +154,15 @@ function (monero_set_target_no_relink target)
endif() endif()
endfunction() endfunction()
option(STRIP_TARGETS "Strip symbols from targets?" OFF)
function (monero_set_target_strip target)
if (STRIP_TARGETS)
set_target_properties("${target}" PROPERTIES LINK_FLAGS_RELEASE -s)
set_target_properties("${target}" PROPERTIES LINK_FLAGS_DEBUG -s)
# Stripping from Debug might make sense if you're low on disk space, but want to test if debug version builds properly.
endif()
endfunction()
function (monero_add_minimal_executable name) function (monero_add_minimal_executable name)
source_group("${name}" source_group("${name}"
FILES FILES
@ -161,7 +170,8 @@ function (monero_add_minimal_executable name)
add_executable("${name}" add_executable("${name}"
${ARGN}) ${ARGN})
monero_set_target_no_relink( ${name} ) monero_set_target_no_relink("${name}")
monero_set_target_strip ("${name}")
endfunction() endfunction()
# Finds all headers in a directory and its subdirs, to be able to search for them and autosave in IDEs. # Finds all headers in a directory and its subdirs, to be able to search for them and autosave in IDEs.
@ -556,6 +566,7 @@ function (monero_add_library_with_deps)
add_library(${objlib} OBJECT ${MONERO_ADD_LIBRARY_SOURCES}) add_library(${objlib} OBJECT ${MONERO_ADD_LIBRARY_SOURCES})
add_library("${MONERO_ADD_LIBRARY_NAME}" $<TARGET_OBJECTS:${objlib}>) add_library("${MONERO_ADD_LIBRARY_NAME}" $<TARGET_OBJECTS:${objlib}>)
monero_set_target_no_relink("${MONERO_ADD_LIBRARY_NAME}") monero_set_target_no_relink("${MONERO_ADD_LIBRARY_NAME}")
monero_set_target_strip ("${MONERO_ADD_LIBRARY_NAME}")
if (MONERO_ADD_LIBRARY_DEPENDS) if (MONERO_ADD_LIBRARY_DEPENDS)
add_dependencies(${objlib} ${MONERO_ADD_LIBRARY_DEPENDS}) add_dependencies(${objlib} ${MONERO_ADD_LIBRARY_DEPENDS})
endif() endif()

@ -77,6 +77,7 @@ function (monero_add_executable name)
enable_stack_trace("${name}") enable_stack_trace("${name}")
monero_set_target_no_relink("${name}") monero_set_target_no_relink("${name}")
monero_set_target_strip ("${name}")
endfunction () endfunction ()
include(Version) include(Version)

Loading…
Cancel
Save