From f18c7b5f919dd5ba6051345fa67ec50b3200e81a Mon Sep 17 00:00:00 2001 From: "K.Ohta" Date: Thu, 28 Feb 2019 00:20:48 +0900 Subject: [PATCH] [Build][Linux] buildvars.dat: Add "USE_SHRINK_DEBUG_SYMBOL" flag to save disk space. --- source/build-cmake/buildvars.dat.tmpl | 4 ++++ .../params/buildvars_linux_params_gcc.dat | 20 +++++++++++++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/source/build-cmake/buildvars.dat.tmpl b/source/build-cmake/buildvars.dat.tmpl index 3d10bf013..4ec2b711f 100644 --- a/source/build-cmake/buildvars.dat.tmpl +++ b/source/build-cmake/buildvars.dat.tmpl @@ -26,6 +26,10 @@ USE_WHOLE_PROGRAM_OPTIMIZE="No" # Threads when using LTO. LTO_THREADS=6 +# Shrinked debug symbols; +# This may not be used both LTO. +USE_SHRINK_DEBUG_SYMBOL="No" + # "No" or "Yes" USE_OPENMP="No" diff --git a/source/build-cmake/params/buildvars_linux_params_gcc.dat b/source/build-cmake/params/buildvars_linux_params_gcc.dat index 4e90dedac..9cbcb13a5 100644 --- a/source/build-cmake/params/buildvars_linux_params_gcc.dat +++ b/source/build-cmake/params/buildvars_linux_params_gcc.dat @@ -123,10 +123,24 @@ case ${COMPRESS_SYMBOLS} in ;; esac +#ToDo: Its ugly hack. +if [ -z ${EXTRA_DLL_DIR} ] ; then + EXTRA_DLL_DIR="/usr/local/lib/x86_64-linux-gnu" +fi + + +case ${USE_SHRINK_DEBUG_SYMBOL} in + "Yes" | "yes" | "YES" ) + EXTRA_LINKER_FLAGS="-L${EXTRA_DLL_DIR} -fuse-ld=gold -Wl,--gdb-index -Wl,--compress-debug-sections,zlib ${EXTRA_LINKER_FLAGS}" + EXTRA_LINKER_DLL_FLAGS="-L${EXTRA_DLL_DIR} -fuse-ld=gold -Wl,--gdb-index -Wl,--compress-debug-sections,zlib ${EXTRA_LINKER_DLL_FLAGS}" + MAKEFLAGS_BASE3="-gsplit-dwarf ${MAKEFLAGS_BASE3}" + ;; +esac + case ${CSP_DEBUG} in "Yes" | "yes" | "YES" ) - MAKEFLAGS_DLL_LINK_BASE="-ggdb ${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3} -DNDEBUG" - MAKEFLAGS_BASE2="-ggdb ${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3} -DNDEBUG" + MAKEFLAGS_DLL_LINK_BASE="${EXTRA_LINKER_DLL_FLAGS} ${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3} -DNDEBUG" + MAKEFLAGS_BASE2="-ggdb ${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3} -DNDEBUG" ;; "No" | "no" | "NO" | * ) MAKEFLAGS_DLL_LINK_BASE="${COMPRESS_CFLAGS} ${MAKEFLAGS_BASE3}" @@ -144,7 +158,7 @@ fi case ${USE_LTO} in "Yes" | "yes" | "YES" ) - MAKEFLAGS_LINK_BASE2="${LTO_FLAGS} ${MAKEFLAGS_BASE2}" + MAKEFLAGS_LINK_BASE2="${EXTRA_LINKER_FLAGS} ${LTO_FLAGS} ${MAKEFLAGS_BASE2}" MAKEFLAGS_BASE2="${LTO_FLAGS2} ${MAKEFLAGS_BASE2}" ;; "No" | "no" | "NO" | * ) -- 2.11.0