aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/build.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/build.yml')
-rw-r--r--.github/workflows/build.yml22
1 files changed, 9 insertions, 13 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 716b18590..7c28a71ce 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -5,6 +5,9 @@ on: [push, pull_request]
# The below variables reduce repetitions across similar targets
env:
REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost
+ BUILD_DEFAULT_LINUX: |
+ ccache --max-size=150M
+ cmake -S . -B build -D ARCH="default" -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=release && cmake --build build -j3
APT_INSTALL_LINUX: 'sudo apt -y install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libnorm-dev libusb-1.0-0-dev libpgm-dev libprotobuf-dev protobuf-compiler ccache'
APT_SET_CONF: |
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
@@ -79,9 +82,7 @@ jobs:
with:
path: ~/.ccache
key: ccache-ubuntu-build-${{ matrix.os }}-${{ github.sha }}
- restore-keys: |
- ccache-ubuntu-build-${{ matrix.os }}
- ccache-ubuntu-build-
+ restore-keys: ccache-ubuntu-build-${{ matrix.os }}
- name: remove bundled boost
run: ${{env.REMOVE_BUNDLED_BOOST}}
- name: set apt conf
@@ -91,9 +92,7 @@ jobs:
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: build
- run: |
- ccache --max-size=150M
- make -j3
+ run: ${{env.BUILD_DEFAULT_LINUX}}
libwallet-ubuntu:
runs-on: ubuntu-latest
@@ -137,8 +136,8 @@ jobs:
uses: actions/cache@v2
with:
path: ~/.ccache
- key: test-ubuntu-ccache-${{ github.sha }}
- restore-keys: test-ubuntu-ccache-
+ key: ccache-ubuntu-build-ubuntu-latest-${{ github.sha }}
+ restore-keys: ccache-ubuntu-build-ubuntu-latest
- name: remove bundled boost
run: ${{env.REMOVE_BUNDLED_BOOST}}
- name: set apt conf
@@ -153,11 +152,8 @@ jobs:
env:
CTEST_OUTPUT_ON_FAILURE: ON
run: |
- ccache --max-size=150M
- DIR_BUILD="build/ci/release"
- DIR_SRC="`pwd`"
- mkdir -p "${DIR_BUILD}" && cd "${DIR_BUILD}"
- cmake -S "${DIR_SRC}" -D ARCH="default" -D BUILD_SHARED_LIBS=ON -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=release && make -j3 && make test
+ ${{env.BUILD_DEFAULT_LINUX}}
+ cmake --build build --target test
# ARCH="default" (not "native") ensures, that a different execution host can execute binaries compiled elsewhere.
# BUILD_SHARED_LIBS=ON speeds up the linkage part a bit, reduces size, and is the only place where the dynamic linkage is tested.