@@ -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 
3154env :
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 
70158env :
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+          
109218env :
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 
150275env :
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