aboutsummaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
author1Conan <7620342+1Conan@users.noreply.github.com>2022-01-18 23:12:59 -0500
committerCameron Katri <me@cameronkatri.com>2022-01-18 23:14:23 -0500
commit73deb88ab0152cc45ee1cb101293d2e7065be747 (patch)
treea21576aa6bd6e8f61e9bb42dc28020cfdde671d2 /.github
parent5e7c8eac8ffa05bce4f9bf8a25400ab5e9b11708 (diff)
downloadldid-73deb88ab0152cc45ee1cb101293d2e7065be747.tar.gz
ldid-73deb88ab0152cc45ee1cb101293d2e7065be747.tar.zst
ldid-73deb88ab0152cc45ee1cb101293d2e7065be747.zip
ci: use lto and gc-sections
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml18
1 files changed, 15 insertions, 3 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 43c6e9a..fd82d07 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -4,7 +4,14 @@ on:
paths:
- '*.c'
- '*.cpp'
+ - '.github/workflows/*'
+ - 'Makefile'
pull_request:
+ paths:
+ - '*.c'
+ - '*.cpp'
+ - '.github/workflows/*'
+ - 'Makefile'
workflow_dispatch:
release:
types:
@@ -69,7 +76,11 @@ jobs:
echo "${HOME}/${TOOLCHAIN}/bin" >> $GITHUB_PATH
echo "CC=sccache ${TRIPLE}-gcc" >> $GITHUB_ENV
echo "CXX=sccache ${TRIPLE}-g++" >> $GITHUB_ENV
- echo "CFLAGS=-Os -static" >> $GITHUB_ENV
+ echo "AR=${TRIPLE}-gcc-ar" >> $GITHUB_ENV
+ echo "NM=${TRIPLE}-gcc-nm" >> $GITHUB_ENV
+ echo "RANLIB=${TRIPLE}-gcc-ranlib" >> $GITHUB_ENV
+ echo "CFLAGS=-Os -fPIC -fno-pie -no-pie -static -flto -ffunction-sections -fdata-sections" >> $GITHUB_ENV
+ echo "LDFLAGS=-Wl,--gc-sections -Wl,-strip-all -flto" >> $GITHUB_ENV
- name: build libplist
run: |
@@ -79,7 +90,7 @@ jobs:
./configure --host=${TRIPLE} --prefix=/usr --without-cython --enable-static --disable-shared
make -j$(nproc)
- echo "CFLAGS=${CFLAGS} -I${DEP_PATH}/libplist-${LIBPLIST_VERSION}/include" >> $GITHUB_ENV
+ echo "CPPFLAGS=${CPPFLAGS} -I${DEP_PATH}/libplist-${LIBPLIST_VERSION}/include" >> $GITHUB_ENV
echo "LIBPLIST_LIB=${DEP_PATH}/libplist-${LIBPLIST_VERSION}/src/.libs/libplist-2.0.a" >> $GITHUB_ENV
- name: build openssl
@@ -103,7 +114,7 @@ jobs:
./config --prefix=/usr --static -static ${PLATFORM}
make -j$(nproc) build_generated libcrypto.a
- echo "CFLAGS=${CFLAGS} -I${DEP_PATH}/openssl-${OPENSSL_VERSION}/include" >> $GITHUB_ENV
+ echo "CPPFLAGS=${CPPFLAGS} -I${DEP_PATH}/openssl-${OPENSSL_VERSION}/include" >> $GITHUB_ENV
echo "LIBCRYPTO_LIB=${DEP_PATH}/openssl-${OPENSSL_VERSION}/libcrypto.a" >> $GITHUB_ENV
- name: build
@@ -111,6 +122,7 @@ jobs:
export LDID_VERSION=$(echo "$(git describe --tags --abbrev=0)")
make -j$(nproc) \
VERSION="${LDID_VERSION}" \
+ LDFLAGS="-static -static-libstdc++ ${LDFLAGS}" \
LIBS="${LIBPLIST_LIB} ${LIBCRYPTO_LIB}"
${TRIPLE}-strip ldid