Add option to build minimized debug symbols

Related to 621f4c5add
This commit is contained in:
Lars Toenning
2023-11-14 19:51:38 +01:00
parent ea937c6a27
commit 297c78c326
2 changed files with 11 additions and 0 deletions

View File

@@ -43,6 +43,7 @@ cmake_dependent_option(SWIFT_BUILD_XSWIFTBUS "Build xswiftbus" ON "NOT SWIFT_WIN
option(SWIFT_BUILD_FLIGHTGEAR_PLUGIN "Build Flightgear plugin" ON) option(SWIFT_BUILD_FLIGHTGEAR_PLUGIN "Build Flightgear plugin" ON)
option(SWIFT_BUILD_EMULATED_PLUGIN "Build Emulated plugin" ON) option(SWIFT_BUILD_EMULATED_PLUGIN "Build Emulated plugin" ON)
cmake_dependent_option(SWIFT_BUILD_MSFS_PLUGIN "Build MSFS plugin" ON WIN32 OFF) cmake_dependent_option(SWIFT_BUILD_MSFS_PLUGIN "Build MSFS plugin" ON WIN32 OFF)
option(SWIFT_MINIFY_DEBUG_SYMBOLS "Minify debug symbols" OFF)
option(SWIFT_BUILD_BLACKCORE "Build Blackcore" ON) option(SWIFT_BUILD_BLACKCORE "Build Blackcore" ON)
option(SWIFT_BUILD_BLACKSOUND "Build Blacksound" ON) option(SWIFT_BUILD_BLACKSOUND "Build Blacksound" ON)
@@ -56,6 +57,15 @@ option(SWIFT_VATSIM_SUPPORT "Build with VATSIM support" ON)
set(VATSIM_KEY_JSON "" CACHE STRING "Path to JSON containing VATSIM key") set(VATSIM_KEY_JSON "" CACHE STRING "Path to JSON containing VATSIM key")
load_vatsim_key() load_vatsim_key()
if(SWIFT_MINIFY_DEBUG_SYMBOLS)
if(MSVC)
add_link_options(/OPT:REF /OPT:ICF)
elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
add_compile_options(-g1 -gz)
elseif(${CMAKE_CXX_COMPILER_ID} MATCHES ".*Clang")
add_compile_options(-gline-tables-only)
endif()
endif()
if(MSVC) if(MSVC)
# This also installs some dlls which we do not need # This also installs some dlls which we do not need

View File

@@ -51,6 +51,7 @@ class Builder:
'..', '..',
'-G {}'.format(self._get_generator()), '-G {}'.format(self._get_generator()),
'-DCMAKE_BUILD_TYPE=RelWithDebInfo', '-DCMAKE_BUILD_TYPE=RelWithDebInfo',
'-DSWIFT_MINIFY_DEBUG_SYMBOLS=ON',
'-DCMAKE_INSTALL_PREFIX=../dist', '-DCMAKE_INSTALL_PREFIX=../dist',
'-DSWIFT_USE_CRASHPAD={}'.format(use_crashpad)] + cmake_args '-DSWIFT_USE_CRASHPAD={}'.format(use_crashpad)] + cmake_args
subprocess.check_call(cmake_call, env=dict(os.environ)) subprocess.check_call(cmake_call, env=dict(os.environ))