-
Notifications
You must be signed in to change notification settings - Fork 22
66 lines (52 loc) · 1.64 KB
/
solvers.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
name: Building all solvers
on:
workflow_dispatch: # can be triggered manually
schedule:
- cron: '0 11 * * 1' # run at 11.00 every Monday
# we do not modify the install scripts or the Makefile very often,
# so we build the solvers once a week to make sure they still build OK.
push:
branches:
- main # run for the main branch
paths:
- etc/build/*.sh
- Makefile
- .github/workflows/solvers.yml
pull_request: # and for PRs
paths:
- etc/build/*.sh
- Makefile
- .github/workflows/solvers.yml
# other branches that want testing must create a PR
env:
SCCACHE_GHA_ENABLED: "true"
jobs:
Job:
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
name: Checkout repository
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.4
- name: Setting PATH
shell: bash
run: |
echo "${HOME}/.local/bin" >> ${GITHUB_PATH}
# libnuma-dev for runsolver
# autoconf, cmake, gmp for yices
- name: Installing dependencies on Linux
shell: bash
run: sudo apt-get install -y gperf libnuma-dev
if: runner.os == 'Linux'
- name: Installing dependencies on macOS
shell: bash
run: brew install autoconf cmake gmp gperf
if: runner.os == 'macOS'
- name: Building solvers
shell: bash
run: BIN_DIR=${HOME}/.local/bin PROCESSES=2 make solvers