mirror of
https://github.com/mhx/dwarfs.git
synced 2025-08-03 17:56:12 -04:00
build: try enabling LTO builds
This commit is contained in:
parent
2f053d89a7
commit
ad3778d8e5
@ -97,7 +97,7 @@ case "-$BUILD_TYPE-" in
|
||||
;;
|
||||
*-clang-*)
|
||||
case "-$BUILD_DIST-" in
|
||||
*-ubuntu-*)
|
||||
*-ubuntu-*|*-alpine-*)
|
||||
export CC=clang$CLANG_VERSION CXX=clang++$CLANG_VERSION
|
||||
;;
|
||||
*)
|
||||
@ -126,7 +126,7 @@ case "-$BUILD_TYPE-" in
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DCMAKE_BUILD_TYPE=MinSizeRel"
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DWITH_BENCHMARKS=1"
|
||||
export CFLAGS="-ffunction-sections -fdata-sections -fvisibility=hidden -fmerge-all-constants"
|
||||
export CXXFLAGS="$CFLAGS"
|
||||
export CXXFLAGS="${CFLAGS}"
|
||||
export LDFLAGS="-Wl,--gc-sections"
|
||||
;;
|
||||
*-reldbg-*)
|
||||
@ -137,6 +137,16 @@ case "-$BUILD_TYPE-" in
|
||||
exit 1
|
||||
esac
|
||||
|
||||
case "-$BUILD_TYPE-" in
|
||||
*-lto-*)
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DDISABLE_MOLD=1"
|
||||
export CFLAGS="${CFLAGS} -flto"
|
||||
export CXXFLAGS="${CXXFLAGS} -flto"
|
||||
export LDFLAGS="${LDFLAGS} -flto"
|
||||
export COMPILER="${COMPILER}-lto"
|
||||
;;
|
||||
esac
|
||||
|
||||
case "-$BUILD_TYPE-" in
|
||||
*-asan-*)
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DENABLE_ASAN=1"
|
||||
@ -196,7 +206,7 @@ fi
|
||||
if [[ "-$BUILD_TYPE-" == *-static-* ]]; then
|
||||
CMAKE_ARGS_NONSTATIC="${CMAKE_ARGS}"
|
||||
export LDFLAGS="-L/opt/static-libs/$COMPILER/lib"
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DSTATIC_BUILD_DO_NOT_USE=1 -DWITH_UNIVERSAL_BINARY=1 -DWITH_PXATTR=1"
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DSTATIC_BUILD_DO_NOT_USE=1 -DWITH_UNIVERSAL_BINARY=1 -DWITH_FUSE_EXTRACT_BINARY=1 -DWITH_PXATTR=1"
|
||||
CMAKE_ARGS="${CMAKE_ARGS} -DSTATIC_BUILD_EXTRA_PREFIX=/opt/static-libs/$COMPILER"
|
||||
fi
|
||||
|
||||
|
12
.github/workflows/build.yml
vendored
12
.github/workflows/build.yml
vendored
@ -344,6 +344,18 @@ jobs:
|
||||
- arch: arm64v8
|
||||
dist: alpine
|
||||
build_type: clang-relsize-ninja-static
|
||||
- arch: amd64
|
||||
dist: alpine
|
||||
build_type: gcc-relsize-lto-ninja-static
|
||||
- arch: arm64v8
|
||||
dist: alpine
|
||||
build_type: gcc-relsize-lto-ninja-static
|
||||
- arch: amd64
|
||||
dist: alpine
|
||||
build_type: clang-relsize-lto-ninja-static
|
||||
- arch: arm64v8
|
||||
dist: alpine
|
||||
build_type: clang-relsize-lto-ninja-static
|
||||
- arch: amd64
|
||||
dist: alpine
|
||||
build_type: clang-reldbg-stacktrace-ninja-static
|
||||
|
Loading…
x
Reference in New Issue
Block a user