@@ -2,6 +2,10 @@ name: Github Actions Build
22
33on : [push]
44
5+ env :
6+ COMMS_BRANCH : master
7+ COMMSDSL_BRANCH : master
8+
59jobs :
610 build_gcc_ubuntu_18_04 :
711 runs-on : ubuntu-18.04
@@ -24,10 +28,29 @@ jobs:
2428 - name : Create Build Environment
2529 run : cmake -E make_directory ${{runner.workspace}}/build
2630
31+
32+ - name : Prepare externals
33+ shell : bash
34+ run : $GITHUB_WORKSPACE/script/prepare_externals.sh
35+ env :
36+ BUILD_DIR : ${{runner.workspace}}/build
37+ CC : gcc-${{matrix.cc_ver}}
38+ CXX : g++-${{matrix.cc_ver}}
39+ CC_COMMSDSL : gcc-8
40+ CXX_COMMSDSL : g++-8
41+ EXTERNALS_DIR : ${{runner.workspace}}/externals
42+ COMMON_INSTALL_DIR : ${{runner.workspace}}/build/install
43+ COMMON_BUILD_TYPE : ${{matrix.type}}
44+ COMMON_CXX_STANDARD : ${{matrix.cpp}}
45+ COMMS_TAG : ${{env.COMMS_BRANCH}}
46+ COMMSDSL_TAG : ${{env.COMMSDSL_BRANCH}}
47+
2748 - name : Configure CMake
2849 shell : bash
2950 working-directory : ${{runner.workspace}}/build
30- run : cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCMAKE_INSTALL_PREFIX=install -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=gold -DCOMMSDSL_C_COMPILER=gcc-8 -DCOMMSDSL_CXX_COMPILER=g++-8
51+ run : |
52+ cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
53+ -DCMAKE_INSTALL_PREFIX=install -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=gold -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
3154 env :
3255 CC : gcc-${{matrix.cc_ver}}
3356 CXX : g++-${{matrix.cc_ver}}
@@ -45,11 +68,60 @@ jobs:
4568 fail-fast : false
4669 matrix :
4770 type : [Debug, Release, MinSizeRel]
48- cc_ver : [8, 9, 10, 11]
71+ cc_ver : [8]
72+ cpp : [11, 14, 17]
73+
74+ steps :
75+ - uses : actions/checkout@v2
76+
77+ - name : Prepare Install
78+ run : sudo apt-get update --fix-missing
79+
80+ - name : Install Packages
81+ run : sudo apt install libqt5gui5 libboost-all-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}}
82+
83+ - name : Create Build Environment
84+ run : cmake -E make_directory ${{runner.workspace}}/build
85+
86+ - name : Prepare externals
87+ shell : bash
88+ run : $GITHUB_WORKSPACE/script/prepare_externals.sh
89+ env :
90+ BUILD_DIR : ${{runner.workspace}}/build
91+ CC : gcc-${{matrix.cc_ver}}
92+ CXX : g++-${{matrix.cc_ver}}
93+ EXTERNALS_DIR : ${{runner.workspace}}/externals
94+ COMMON_INSTALL_DIR : ${{runner.workspace}}/build/install
95+ COMMON_BUILD_TYPE : ${{matrix.type}}
96+ COMMON_CXX_STANDARD : ${{matrix.cpp}}
97+ COMMS_TAG : ${{env.COMMS_BRANCH}}
98+ COMMSDSL_TAG : ${{env.COMMSDSL_BRANCH}}
99+
100+ - name : Configure CMake
101+ shell : bash
102+ working-directory : ${{runner.workspace}}/build
103+ run : |
104+ cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
105+ -DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
106+ env :
107+ CC : gcc-${{matrix.cc_ver}}
108+ CXX : g++-${{matrix.cc_ver}}
109+
110+ - name : Build
111+ working-directory : ${{runner.workspace}}/build
112+ shell : bash
113+ run : cmake --build . --config ${{matrix.type}} --target install
114+ env :
115+ VERBOSE : 1
116+
117+ build_gcc_ubuntu_22_04 :
118+ runs-on : ubuntu-22.04
119+ strategy :
120+ fail-fast : false
121+ matrix :
122+ type : [Debug, Release, MinSizeRel]
123+ cc_ver : [9, 10, 11, 12]
49124 cpp : [11, 14, 17, 20]
50- exclude :
51- - cc_ver : 8
52- cpp : 20
53125
54126 steps :
55127 - uses : actions/checkout@v2
@@ -63,10 +135,26 @@ jobs:
63135 - name : Create Build Environment
64136 run : cmake -E make_directory ${{runner.workspace}}/build
65137
138+ - name : Prepare externals
139+ shell : bash
140+ run : $GITHUB_WORKSPACE/script/prepare_externals.sh
141+ env :
142+ BUILD_DIR : ${{runner.workspace}}/build
143+ CC : gcc-${{matrix.cc_ver}}
144+ CXX : g++-${{matrix.cc_ver}}
145+ EXTERNALS_DIR : ${{runner.workspace}}/externals
146+ COMMON_INSTALL_DIR : ${{runner.workspace}}/build/install
147+ COMMON_BUILD_TYPE : ${{matrix.type}}
148+ COMMON_CXX_STANDARD : ${{matrix.cpp}}
149+ COMMS_TAG : ${{env.COMMS_BRANCH}}
150+ COMMSDSL_TAG : ${{env.COMMSDSL_BRANCH}}
151+
66152 - name : Configure CMake
67153 shell : bash
68154 working-directory : ${{runner.workspace}}/build
69- run : cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCMAKE_INSTALL_PREFIX=install
155+ run : |
156+ cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
157+ -DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
70158 env :
71159 CC : gcc-${{matrix.cc_ver}}
72160 CXX : g++-${{matrix.cc_ver}}
78166 env :
79167 VERBOSE : 1
80168
169+
81170 build_clang_ubuntu_18_04 :
82171 runs-on : ubuntu-18.04
83172 strategy :
@@ -102,10 +191,30 @@ jobs:
102191 - name : Create Build Environment
103192 run : cmake -E make_directory ${{runner.workspace}}/build
104193
194+ - name : Prepare externals
195+ shell : bash
196+ run : $GITHUB_WORKSPACE/script/prepare_externals.sh
197+ env :
198+ BUILD_DIR : ${{runner.workspace}}/build
199+ CC : clang-${{matrix.cc_ver}}
200+ CXX : clang++-${{matrix.cc_ver}}
201+ CC_COMMSDSL : clang-6.0
202+ CXX_COMMSDSL : clang++-6.0
203+ EXTERNALS_DIR : ${{runner.workspace}}/externals
204+ COMMON_INSTALL_DIR : ${{runner.workspace}}/build/install
205+ COMMON_BUILD_TYPE : ${{matrix.type}}
206+ COMMON_CXX_STANDARD : ${{matrix.cpp}}
207+ COMMS_TAG : ${{env.COMMS_BRANCH}}
208+ COMMSDSL_TAG : ${{env.COMMSDSL_BRANCH}}
209+
105210 - name : Configure CMake
106211 shell : bash
107212 working-directory : ${{runner.workspace}}/build
108- run : cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCMAKE_INSTALL_PREFIX=install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCMAKE_INSTALL_PREFIX=install -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=gold -DCOMMSDSL_C_COMPILER=clang-6.0 -DCOMMSDSL_CXX_COMPILER=clang++-6.0
213+ run : |
214+ cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
215+ -DCMAKE_INSTALL_PREFIX=install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=gold \
216+ -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
217+
109218 env :
110219 CC : clang-${{matrix.cc_ver}}
111220 CXX : clang++-${{matrix.cc_ver}}
@@ -123,7 +232,7 @@ jobs:
123232 fail-fast : false
124233 matrix :
125234 type : [Debug, Release, MinSizeRel]
126- cc_ver : [7, 8, 9, 10, 11, 12 ]
235+ cc_ver : [7, 8, 9, 10, 11]
127236 cpp : [11, 14, 17, 20]
128237 exclude :
129238 - cc_ver : 7
@@ -143,10 +252,26 @@ jobs:
143252 - name : Create Build Environment
144253 run : cmake -E make_directory ${{runner.workspace}}/build
145254
255+ - name : Prepare externals
256+ shell : bash
257+ run : $GITHUB_WORKSPACE/script/prepare_externals.sh
258+ env :
259+ BUILD_DIR : ${{runner.workspace}}/build
260+ CC : clang-${{matrix.cc_ver}}
261+ CXX : clang++-${{matrix.cc_ver}}
262+ EXTERNALS_DIR : ${{runner.workspace}}/externals
263+ COMMON_INSTALL_DIR : ${{runner.workspace}}/build/install
264+ COMMON_BUILD_TYPE : ${{matrix.type}}
265+ COMMON_CXX_STANDARD : ${{matrix.cpp}}
266+ COMMS_TAG : ${{env.COMMS_BRANCH}}
267+ COMMSDSL_TAG : ${{env.COMMSDSL_BRANCH}}
268+
146269 - name : Configure CMake
147270 shell : bash
148271 working-directory : ${{runner.workspace}}/build
149- run : cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCMAKE_INSTALL_PREFIX=install
272+ run : |
273+ cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
274+ -DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
150275 env :
151276 CC : clang-${{matrix.cc_ver}}
152277 CXX : clang++-${{matrix.cc_ver}}
@@ -157,3 +282,55 @@ jobs:
157282 run : cmake --build . --config ${{matrix.type}} --target install
158283 env :
159284 VERBOSE : 1
285+
286+ build_clang_ubuntu_22_04 :
287+ runs-on : ubuntu-22.04
288+ strategy :
289+ fail-fast : false
290+ matrix :
291+ type : [Debug, Release, MinSizeRel]
292+ cc_ver : [12, 13, 14]
293+ cpp : [11, 14, 17, 20]
294+
295+ steps :
296+ - uses : actions/checkout@v2
297+
298+ - name : Prepare Install
299+ run : sudo apt-get update --fix-missing
300+
301+ - name : Install Packages
302+ run : sudo apt install libqt5gui5 libboost-all-dev libxml2-dev clang-${{matrix.cc_ver}}
303+
304+ - name : Create Build Environment
305+ run : cmake -E make_directory ${{runner.workspace}}/build
306+
307+ - name : Prepare externals
308+ shell : bash
309+ run : $GITHUB_WORKSPACE/script/prepare_externals.sh
310+ env :
311+ BUILD_DIR : ${{runner.workspace}}/build
312+ CC : clang-${{matrix.cc_ver}}
313+ CXX : clang++-${{matrix.cc_ver}}
314+ EXTERNALS_DIR : ${{runner.workspace}}/externals
315+ COMMON_INSTALL_DIR : ${{runner.workspace}}/build/install
316+ COMMON_BUILD_TYPE : ${{matrix.type}}
317+ COMMON_CXX_STANDARD : ${{matrix.cpp}}
318+ COMMS_TAG : ${{env.COMMS_BRANCH}}
319+ COMMSDSL_TAG : ${{env.COMMSDSL_BRANCH}}
320+
321+ - name : Configure CMake
322+ shell : bash
323+ working-directory : ${{runner.workspace}}/build
324+ run : |
325+ cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
326+ -DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
327+ env :
328+ CC : clang-${{matrix.cc_ver}}
329+ CXX : clang++-${{matrix.cc_ver}}
330+
331+ - name : Build
332+ working-directory : ${{runner.workspace}}/build
333+ shell : bash
334+ run : cmake --build . --config ${{matrix.type}} --target install
335+ env :
336+ VERBOSE : 1
0 commit comments