@@ -14,21 +14,21 @@ jobs:
14
14
fail-fast : false
15
15
16
16
matrix :
17
- os : [ubuntu-latest, macos-14]
17
+ os : [ubuntu-latest, macos-14, ubuntu-24.04-arm ]
18
18
build_type : [Release]
19
19
staticcompile : [ON, OFF]
20
20
c_compiler : [gcc]
21
21
cpp_compiler : [g++]
22
22
23
23
steps :
24
-
25
- - name : Install help2man for Linux
26
- if : matrix.os == 'ubuntu-latest'
24
+
25
+ - name : Install dependencies for Linux
26
+ if : matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm'
27
27
run : sudo apt-get update && sudo apt-get install -yq help2man libgmp-dev
28
-
28
+
29
29
- name : Install gmp for Mac
30
30
if : matrix.os == 'macos-13'
31
- run : |
31
+ run : |
32
32
HOMEBREW_NO_AUTO_UPDATE=1 brew install cmake
33
33
wget https://ftp.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz
34
34
tar xf gmp-6.3.0.tar.xz
@@ -40,26 +40,26 @@ jobs:
40
40
41
41
- name : Install zlib for Mac dynamic
42
42
if : matrix.os == 'macos-14' && matrix.staticcompile == 'OFF'
43
- run : |
43
+ run : |
44
44
wget https://www.zlib.net/zlib-1.3.1.tar.gz
45
45
tar xzvf zlib-1.3.1.tar.gz
46
46
cd zlib-1.3.1
47
47
./configure
48
48
make -j8
49
49
sudo make install
50
50
cd ..
51
-
51
+
52
52
- name : Install zlib for Mac static
53
53
if : matrix.os == 'macos-14' && matrix.staticcompile == 'ON'
54
- run : |
54
+ run : |
55
55
wget https://www.zlib.net/zlib-1.3.1.tar.gz
56
56
tar xzvf zlib-1.3.1.tar.gz
57
57
cd zlib-1.3.1
58
58
./configure --static
59
59
make -j8
60
60
sudo make install
61
61
cd ..
62
-
62
+
63
63
- name : Installing Numpy
64
64
run : |
65
65
pip install pip --upgrade
71
71
repository : meelgroup/cadical
72
72
ref : mate-only-libraries-1.8.0
73
73
path : cadical
74
-
74
+
75
75
- name : Build Cadical
76
76
run : |
77
77
cd cadical
@@ -85,48 +85,57 @@ jobs:
85
85
repository : meelgroup/cadiback
86
86
ref : synthesis
87
87
path : cadiback
88
-
88
+
89
89
- name : Build Cadiback
90
90
run : |
91
91
cd cadiback
92
92
CXX=c++ ./configure
93
93
make -j8
94
94
cd ..
95
-
95
+
96
96
- name : checkout
97
- uses : actions/checkout@v4.1.1
97
+ uses : actions/checkout@v4
98
98
with :
99
- path : cryptominisat
100
-
101
- - name : Add git submodules for Linux only (not needed for non-testing)
102
- working-directory : cryptominisat
103
- if : matrix.os == 'ubuntu-latest'
104
- run : git submodule update --init
99
+ path : project
100
+ submodules : ' true'
105
101
106
102
- name : Configure & build
107
103
run : |
108
- cd cryptominisat
104
+ cd project
109
105
mkdir -p build && cd build
110
- cmake -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DENABLE_TESTING=OFF -DSTATICCOMPILE=${{ matrix.staticcompile }} ..
111
- cmake --build . --config ${{ matrix.build_type }}
106
+ cmake \
107
+ -DENABLE_TESTING=OFF \
108
+ -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} \
109
+ -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
110
+ -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
111
+ -DSTATICCOMPILE=${{ matrix.staticcompile }} \
112
+ -S ..
113
+ cmake --build . --config ${{matrix.build_type}} -v
112
114
113
115
- name : Upload Artifact - Linux
114
116
if : matrix.os == 'ubuntu-latest' && matrix.staticcompile == 'ON'
115
117
uses : actions/upload-artifact@v4
116
118
with :
117
119
name : cryptominisat5-linux-amd64
118
- path : cryptominisat/build/cryptominisat5
119
-
120
+ path : project/build/cryptominisat5
121
+
122
+ - name : Upload Artifact - Linux arm
123
+ if : matrix.os == 'ubuntu-24.04-arm' && matrix.staticcompile == 'ON'
124
+ uses : actions/upload-artifact@v4
125
+ with :
126
+ name : cryptominisat-linux-arm64
127
+ path : project/build/cryptominisat5
128
+
120
129
- name : Upload Artifact - Mac
121
130
if : matrix.os == 'macos-14' && matrix.staticcompile == 'ON'
122
131
uses : actions/upload-artifact@v4
123
132
with :
124
133
name : cryptominisat5-mac-arm64
125
- path : cryptominisat /build/cryptominisat5
134
+ path : project /build/cryptominisat5
126
135
127
136
- name : Upload Artifact - Windows
128
137
if : matrix.os == 'windows-2022' && matrix.staticcompile == 'ON'
129
138
uses : actions/upload-artifact@v4
130
139
with :
131
140
name : cryptominisat5-win64.exe
132
- path : cryptominisat \build\Release\cryptominisat5.exe
141
+ path : project \build\Release\cryptominisat5.exe
0 commit comments