-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path.cirrus.yml
112 lines (108 loc) · 3.14 KB
/
.cirrus.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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
task:
environment:
CODECOV_TOKEN: ENCRYPTED[f6131f3947378ac741bd50e49a83f7e619100d91f4c4ff79180a508e39c93f07e2a90c17174261dbafebd70c2f150d45]
matrix:
- name: Fedora 40 (g++ 14)
container:
dockerfile: docker/Dockerfile.fedora
docker_arguments:
VERSION: 40
- name: Ubuntu 24.04 (g++ 12)
container:
dockerfile: docker/Dockerfile.ubuntu
docker_arguments:
VERSION: 24.04
GCC_VERSION: 12
- name: Ubuntu 24.04 (g++ 13)
container:
dockerfile: docker/Dockerfile.ubuntu
docker_arguments:
VERSION: 24.04
GCC_VERSION: 13
- name: Ubuntu 24.04 (g++ 14)
container:
dockerfile: docker/Dockerfile.ubuntu
docker_arguments:
VERSION: 24.04
GCC_VERSION: 14
debug_build_script:
- mkdir build && cd build
- cmake -DCMAKE_BUILD_TYPE=Debug -DCODE_COVERAGE=ON ..
- make
always:
binaries_artifacts:
path: "build/black"
path: "build/src/lib/libblack.so"
test_script:
- cd build
- ./unit_tests
- ../tests/cli-tests.sh
- ctest -j2 -R black --output-on-failure
coverage_script:
- cd build
- bash <(curl -s https://codecov.io/bash);
task:
name: macOS (LLVM latest)
osx_instance:
image: ghcr.io/cirruslabs/macos-sonoma-xcode:latest
download_dependencies_script:
- brew update
- brew install llvm cmake fmt catch2 z3 cryptominisat nlohmann-json
- brew install black-sat/black/hopscotch-map
- ./download-mathsat.sh
release_build_script:
- mkdir -p build && cd build
- ../config-brew-llvm.sh -DCMAKE_BUILD_TYPE=Release ..
- make
test_script:
- cd build
- ctest -j2 -R black --output-on-failure
# task:
# name: FreeBSD 14.0
# freebsd_instance:
# image_family: freebsd-14-0
# download_dependencies_script:
# - yes | pkg install git cmake libfmt nlohmann-json z3 cryptominisat
# install_hopscotch_script:
# - git clone https://github.com/Tessil/hopscotch-map.git
# - cd hopscotch-map
# - cmake .
# - make install
# debug_build_script:
# - mkdir -p build && cd build
# - cmake -DCMAKE_BUILD_TYPE=Debug ..
# - make
# test_script:
# - cd build
# - ctest -j2 -R black --output-on-failure
task:
matrix:
- name: Fedora 40 (with CryptoMiniSAT backend)
environment:
BACKEND: cmsat
- name: Fedora 40 (with MathSAT backend)
environment:
BACKEND: mathsat
- name: Fedora 40 (with CVC5 backend)
environment:
BACKEND: cvc5
container:
dockerfile: docker/Dockerfile.fedora
docker_arguments:
VERSION: 40
environment:
CODECOV_TOKEN: ENCRYPTED[f6131f3947378ac741bd50e49a83f7e619100d91f4c4ff79180a508e39c93f07e2a90c17174261dbafebd70c2f150d45]
download_mathsat_script:
- ./download-mathsat.sh
debug_build_script:
- mkdir -p build && cd build
- cmake -DCMAKE_BUILD_TYPE=Debug -DBLACK_TESTS_SAT_BACKEND=$BACKEND -DCODE_COVERAGE=ON ..
- make
test_script:
- cd build
- ./unit_tests
- ../tests/cli-tests.sh
- ctest -j2 -R black
coverage_script:
- cd build
- bash <(curl -s https://codecov.io/bash);