Do debug info, use thin static archives

This commit is contained in:
Aidan Case 2024-03-14 19:45:29 -05:00
parent de03aed8ba
commit 30760ca090
2 changed files with 10 additions and 1 deletions

View file

@ -276,6 +276,14 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
add_compile_options(-Wno-unknown-pragmas)
# Adding -fext-numeric-literals to enable GCC extensions on definitions of quad float literals, which are required by Boost.
add_compile_options(-fext-numeric-literals)
# More of a "size" optimization, use thin archives for static building to not waste space
# Taken from https://bugs.webkit.org/show_bug.cgi?id=108330
if(SLIC3R_STATIC AND ${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crU --thin <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crU --thin <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rU --thin <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> rU --thin <TARGET> <LINK_FLAGS> <OBJECTS>")
endif()
endif()
# Bit of a hack for flatpak building: compress the debug info with zstd to save space in CI
@ -283,6 +291,7 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
add_compile_options(-gz=zstd)
endif()
endif()
if (SLIC3R_ASAN)

View file

@ -256,7 +256,7 @@ modules:
-DSLIC3R_STATIC=ON \
-DSLIC3R_BUILD_TESTS=OFF \
-DSLIC3R_DESKTOP_INTEGRATION=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFLATPAK=ON \
-DBBL_RELEASE_TO_PUBLIC=1
CXXFLAGS=-std=gnu++20 cmake --build . --target install -j$FLATPAK_BUILDER_N_JOBS