From 60f821fe73c3d3b61b1f3737395d5eec040f169a Mon Sep 17 00:00:00 2001 From: Patrick Lodder Date: Mon, 11 Oct 2021 03:05:03 +0200 Subject: [PATCH 1/4] ci: make --enable-reduce-exports standard for all hosts --- .github/workflows/ci.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 25cefd992..2979e2704 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,7 +42,7 @@ jobs: packages: g++-multilib bc python3-zmq run-tests: true dep-opts: "NO_QT=1" - config-opts: "--enable-zmq --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++" + config-opts: "--enable-zmq --enable-glibc-back-compat LDFLAGS=-static-libstdc++" goal: install - name: armhf-linux host: arm-linux-gnueabihf @@ -50,7 +50,7 @@ jobs: packages: g++-arm-linux-gnueabihf run-tests: false dep-opts: "NO_QT=1" - config-opts: "--enable-glibc-back-compat --enable-reduce-exports --disable-tests" + config-opts: "--enable-glibc-back-compat --disable-tests LDFLAGS=-static-libstdc++" goal: install - name: x86_64-linux-nowallet host: x86_64-unknown-linux-gnu @@ -58,7 +58,7 @@ jobs: packages: python3 run-tests: true dep-opts: "NO_WALLET=1" - config-opts: "--enable-gui=qt5 --enable-glibc-back-compat --enable-reduce-exports --disable-wallet" + config-opts: "--enable-gui=qt5 --enable-glibc-back-compat --disable-wallet LDFLAGS=-static-libstdc++" goal: install - name: x86_64-linux-dbg host: x86_64-unknown-linux-gnu @@ -66,7 +66,7 @@ jobs: packages: bc python3-zmq run-tests: true dep-opts: "DEBUG=1" - config-opts: "--enable-gui=qt5 --enable-zmq --enable-glibc-back-compat --enable-reduce-exports CPPFLAGS=-DDEBUG_LOCKORDER" + config-opts: "--enable-gui=qt5 --enable-zmq --enable-glibc-back-compat CPPFLAGS=-DDEBUG_LOCKORDER" goal: install - name: i686-win host: i686-w64-mingw32 @@ -79,7 +79,7 @@ jobs: sudo update-binfmts --import /usr/share/binfmts/wine run-tests: true dep-opts: "" - config-opts: "--enable-reduce-exports --enable-gui=qt5" + config-opts: "--enable-gui=qt5" goal: install - name: x86_64-win host: x86_64-w64-mingw32 @@ -92,7 +92,7 @@ jobs: sudo update-binfmts --import /usr/share/binfmts/wine run-tests: true dep-opts: "" - config-opts: "--enable-reduce-exports --enable-gui=qt5" + config-opts: "--enable-gui=qt5" goal: install - name: x86_64-macos host: x86_64-apple-darwin11 @@ -100,7 +100,7 @@ jobs: packages: cmake imagemagick libcap-dev librsvg2-bin libz-dev libtiff-tools libtinfo5 python3-setuptools xorriso libtinfo5 run-tests: false dep-opts: "" - config-opts: "--enable-gui=qt5 --enable-reduce-exports" + config-opts: "--enable-gui=qt5" goal: deploy sdk: 10.11 @@ -166,7 +166,7 @@ jobs: run: | depends/${{ matrix.host }}/native/bin/ccache --max-size=$CCACHE_SIZE ./autogen.sh - ./configure --prefix=`pwd`/depends/${{ matrix.host }} ${{ matrix.config-opts }} || ( cat config.log && false) + ./configure --prefix=`pwd`/depends/${{ matrix.host }} ${{ matrix.config-opts }} --enable-reduce-exports || ( cat config.log && false) make $MAKEJOBS ${{ matrix.goal }} || ( echo "Build failure. Verbose build follows." && make ${{ matrix.goal }} V=1 ; false ) - name: Run tests From 40d2a4ea424915226646489a89476e65d4737279 Mon Sep 17 00:00:00 2001 From: Patrick Lodder Date: Sun, 10 Oct 2021 20:04:23 +0200 Subject: [PATCH 2/4] ci: add check-security and check-symbols --- .github/workflows/ci.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2979e2704..1f7b198af 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,6 +41,8 @@ jobs: os: ubuntu-18.04 packages: g++-multilib bc python3-zmq run-tests: true + check-security: true + check-symbols: true dep-opts: "NO_QT=1" config-opts: "--enable-zmq --enable-glibc-back-compat LDFLAGS=-static-libstdc++" goal: install @@ -49,6 +51,8 @@ jobs: os: ubuntu-18.04 packages: g++-arm-linux-gnueabihf run-tests: false + check-security: true + check-symbols: false dep-opts: "NO_QT=1" config-opts: "--enable-glibc-back-compat --disable-tests LDFLAGS=-static-libstdc++" goal: install @@ -57,6 +61,8 @@ jobs: os: ubuntu-18.04 packages: python3 run-tests: true + check-security: true + check-symbols: true dep-opts: "NO_WALLET=1" config-opts: "--enable-gui=qt5 --enable-glibc-back-compat --disable-wallet LDFLAGS=-static-libstdc++" goal: install @@ -65,6 +71,8 @@ jobs: os: ubuntu-18.04 packages: bc python3-zmq run-tests: true + check-security: true + check-symbols: false dep-opts: "DEBUG=1" config-opts: "--enable-gui=qt5 --enable-zmq --enable-glibc-back-compat CPPFLAGS=-DDEBUG_LOCKORDER" goal: install @@ -78,6 +86,8 @@ jobs: sudo update-alternatives --set i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++-posix sudo update-binfmts --import /usr/share/binfmts/wine run-tests: true + check-security: true + check-symbols: false dep-opts: "" config-opts: "--enable-gui=qt5" goal: install @@ -91,6 +101,8 @@ jobs: sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix sudo update-binfmts --import /usr/share/binfmts/wine run-tests: true + check-security: true + check-symbols: false dep-opts: "" config-opts: "--enable-gui=qt5" goal: install @@ -99,6 +111,8 @@ jobs: os: ubuntu-18.04 packages: cmake imagemagick libcap-dev librsvg2-bin libz-dev libtiff-tools libtinfo5 python3-setuptools xorriso libtinfo5 run-tests: false + check-security: false + check-symbols: false dep-opts: "" config-opts: "--enable-gui=qt5" goal: deploy @@ -176,6 +190,14 @@ jobs: qa/pull-tester/install-deps.sh qa/pull-tester/rpc-tests.py --coverage + - name: Check security + if: ${{ matrix.check-security }} + run: make -C src check-security + + - name: Check symbols + if: ${{ matrix.check-symbols }} + run: make -C src check-symbols + - name: Upload artifacts uses: actions/upload-artifact@v2 with: From dbb81ea357ba89f9cf6c1caa5eb90009fc82339d Mon Sep 17 00:00:00 2001 From: Patrick Lodder Date: Mon, 11 Oct 2021 03:08:01 +0200 Subject: [PATCH 3/4] ci: add aarch64 --- .github/workflows/ci.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1f7b198af..951236522 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,6 +28,7 @@ jobs: fail-fast: false matrix: name: + - aarch64-linux - armhf-linux - i686-linux - i686-win @@ -56,6 +57,16 @@ jobs: dep-opts: "NO_QT=1" config-opts: "--enable-glibc-back-compat --disable-tests LDFLAGS=-static-libstdc++" goal: install + - name: aarch64-linux + host: aarch64-linux-gnu + os: ubuntu-18.04 + packages: g++-aarch64-linux-gnu + run-tests: false + check-security: true + check-symbols: false + dep-opts: "NO_QT=1" + config-opts: "--enable-zmq --enable-glibc-back-compat --disable-tests LDFLAGS=-static-libstdc++" + goal: install - name: x86_64-linux-nowallet host: x86_64-unknown-linux-gnu os: ubuntu-18.04 From e6e2f460c36de7f142daee8e1208015dedc5113a Mon Sep 17 00:00:00 2001 From: Patrick Lodder Date: Mon, 11 Oct 2021 21:22:29 +0200 Subject: [PATCH 4/4] cleanup: don't build CI macos tests if we dont run them --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 951236522..08d65cbc4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -125,7 +125,7 @@ jobs: check-security: false check-symbols: false dep-opts: "" - config-opts: "--enable-gui=qt5" + config-opts: "--enable-gui=qt5 --disable-tests" goal: deploy sdk: 10.11