forked from aziomq/aziomq
-
Notifications
You must be signed in to change notification settings - Fork 115
132 lines (126 loc) · 4.06 KB
/
cmake.yml
File metadata and controls
132 lines (126 loc) · 4.06 KB
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
name: CMake
on:
push:
branches:
- '**'
pull_request:
branches: [master]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build:
strategy:
fail-fast: false
matrix:
config:
- os: ubuntu-24.04
family: ubuntu
cc: gcc
cxx: g++
- os: ubuntu-22.04
family: ubuntu
cc: gcc
cxx: g++
- os: macos-26
family: macos
cc: clang
cxx: clang++
- os: macos-15
family: macos
cc: clang
cxx: clang++
- os: macos-14
family: macos
cc: clang
cxx: clang++
- os: macos-13
family: macos
cc: clang
cxx: clang++
boost:
- url: system
system_packages_ubuntu: libboost-all-dev
system_packages_macos: boost
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_189
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_187
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_184
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_181
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_176
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_174
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW
- url: BOOST_168
system_packages_ubuntu:
system_packages_macos:
extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=OLD
zmq:
- tag: system
system_packages_ubuntu: libzmq3-dev
system_packages_macos: zmq
exclude:
- config:
family: macos
boost:
url: BOOST_176
- config:
family: macos
boost:
url: BOOST_174
- config:
family: macos
boost:
url: BOOST_168
- config:
os: macos-14
boost:
url: BOOST_181
runs-on: ${{ matrix.config.os }}
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
CTEST_OUTPUT_ON_FAILURE: 1
PACKAGES_UBUNTU: ${{ matrix.boost.system_packages_ubuntu }} ${{ matrix.zmq.system_packages_ubuntu }}
PACKAGES_MACOS: ${{ matrix.boost.system_packages_macos }} ${{ matrix.zmq.system_packages_macos }}
CONFIG_OS: ${{ matrix.config.os }}
MATRIX: ${{ toJson(matrix) }}
steps:
- uses: actions/checkout@v3
- name: buildtools on ubuntu
if: ${{ startsWith(matrix.config.os, 'ubuntu') }}
shell: bash
run: |
PACKAGES_UBUNTU=$(echo $PACKAGES_UBUNTU | sed 's/^[ ]*//;s/[ ]*$//')
if [ -n "$PACKAGES_UBUNTU" ]; then
sudo apt-get update && sudo apt-get install -y $PACKAGES_UBUNTU
fi
- name: buildtools on macos
if: ${{ startsWith(matrix.config.os, 'macos') }}
shell: bash
run: |
PACKAGES_MACOS=$(echo $PACKAGES_MACOS | sed 's/^[ ]*//;s/[ ]*$//')
if [ -n "$PACKAGES_MACOS" ]; then
brew install $PACKAGES_MACOS
fi
- name: build
shell: bash
run: |
cmake -DBOOST_URL=${{matrix.boost.url}} -DZMQ_TAG=${{matrix.zmq.tag}} ${{matrix.boost.extra_cmake_args}} -S .github/workflows/cmake-superbuild -B build
cmake --build build