Skip to content

Commit 1a30ad4

Browse files
committed
Run 32-bit builds and tests as CI job
This is to detect hardwired 64-bit configuration or tests when those should be platform-independent instead.
1 parent 1cae1b3 commit 1a30ad4

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed

.github/workflows/pull-request-checks.yaml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -442,6 +442,52 @@ jobs:
442442
- name: Run tests
443443
run: cd build; ctest . -V -L CORE -j2
444444

445+
# This job takes approximately 30 to 60 minutes
446+
check-ubuntu-22_04-cmake-gcc-32bit:
447+
runs-on: ubuntu-22.04
448+
steps:
449+
- uses: actions/checkout@v3
450+
with:
451+
submodules: recursive
452+
- name: Fetch dependencies
453+
env:
454+
# This is needed in addition to -yq to prevent apt-get from asking for
455+
# user input
456+
DEBIAN_FRONTEND: noninteractive
457+
run: |
458+
sudo apt-get update
459+
sudo apt-get install --no-install-recommends -yq cmake ninja-build gcc gdb g++ maven flex bison libxml2-utils ccache doxygen z3 g++-multilib
460+
- name: Confirm z3 solver is available and log the version installed
461+
run: z3 --version
462+
- name: Download cvc-5 from the releases page and make sure it can be deployed
463+
run: |
464+
wget -O cvc5 https://github.com/cvc5/cvc5/releases/download/cvc5-${{env.cvc5-version}}/cvc5-Linux
465+
chmod u+x cvc5
466+
mv cvc5 /usr/local/bin
467+
cvc5 --version
468+
- name: Prepare ccache
469+
uses: actions/cache@v3
470+
with:
471+
path: .ccache
472+
key: ${{ runner.os }}-22.04-Release-32-${{ github.ref }}-${{ github.sha }}-PR
473+
restore-keys: |
474+
${{ runner.os }}-22.04-Release-32-${{ github.ref }}
475+
${{ runner.os }}-22.04-Release-32
476+
- name: ccache environment
477+
run: |
478+
echo "CCACHE_BASEDIR=$PWD" >> $GITHUB_ENV
479+
echo "CCACHE_DIR=$PWD/.ccache" >> $GITHUB_ENV
480+
- name: Configure using CMake
481+
run: cmake -S . -Bbuild -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ -Dsat_impl="minisat2;cadical" -DCMAKE_CXX_FLAGS=-m32
482+
- name: Zero ccache stats and limit in size
483+
run: ccache -z --max-size=500M
484+
- name: Build with Ninja
485+
run: ninja -C build -j2
486+
- name: Print ccache stats
487+
run: ccache -s
488+
- name: Run tests
489+
run: cd build; ctest . -V -L CORE -j2
490+
445491
# This job takes approximately 5 to 24 minutes
446492
check-ubuntu-20_04-cmake-gcc-KNOWNBUG:
447493
runs-on: ubuntu-20.04

0 commit comments

Comments
 (0)