Skip to content

Commit ff0d51e

Browse files
committed
Testing C++23 build.
1 parent 79c1e50 commit ff0d51e

File tree

1 file changed

+113
-1
lines changed

1 file changed

+113
-1
lines changed

.github/workflows/actions_build.yml

+113-1
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,60 @@ jobs:
174174
env:
175175
VERBOSE: 1
176176

177+
build_gcc_ubuntu_24_04:
178+
runs-on: ubuntu-24.04
179+
strategy:
180+
fail-fast: false
181+
matrix:
182+
type: [Debug, Release, MinSizeRel]
183+
cc_ver: [13, 14]
184+
cpp: [11, 14, 17, 20, 23]
185+
exclude:
186+
- cc_ver: 13
187+
cpp: 23
188+
189+
steps:
190+
- uses: actions/checkout@v2
191+
192+
- name: Prepare Install
193+
run: sudo apt-get update --fix-missing
194+
195+
- name: Install Packages
196+
run: sudo apt install libqt5gui5 libboost-all-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}}
197+
198+
- name: Create Build Environment
199+
run: cmake -E make_directory ${{runner.workspace}}/build
200+
201+
- name: Prepare externals
202+
shell: bash
203+
run: $GITHUB_WORKSPACE/script/prepare_externals.sh
204+
env:
205+
BUILD_DIR: ${{runner.workspace}}/build
206+
CC: gcc-${{matrix.cc_ver}}
207+
CXX: g++-${{matrix.cc_ver}}
208+
EXTERNALS_DIR: ${{runner.workspace}}/externals
209+
COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install
210+
COMMON_BUILD_TYPE: ${{matrix.type}}
211+
COMMON_CXX_STANDARD: ${{matrix.cpp}}
212+
COMMS_TAG: ${{env.COMMS_TAG}}
213+
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
214+
215+
- name: Configure CMake
216+
shell: bash
217+
working-directory: ${{runner.workspace}}/build
218+
run: |
219+
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
220+
-DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
221+
env:
222+
CC: gcc-${{matrix.cc_ver}}
223+
CXX: g++-${{matrix.cc_ver}}
224+
225+
- name: Build
226+
working-directory: ${{runner.workspace}}/build
227+
shell: bash
228+
run: cmake --build . --config ${{matrix.type}} --target install
229+
env:
230+
VERBOSE: 1
177231

178232
build_clang_old_ubuntu_20_04:
179233
runs-on: ubuntu-20.04
@@ -354,7 +408,65 @@ jobs:
354408
shell: bash
355409
run: cmake --build . --config ${{matrix.type}} --target install
356410
env:
357-
VERBOSE: 1
411+
VERBOSE: 1
412+
413+
build_clang_ubuntu_24_04:
414+
runs-on: ubuntu-24.04
415+
strategy:
416+
fail-fast: false
417+
matrix:
418+
type: [Debug, Release, MinSizeRel]
419+
cc_ver: [16, 17, 18]
420+
cpp: [11, 14, 17, 20, 23]
421+
exclude:
422+
- cc_ver: 16
423+
cpp: 23
424+
- cc_ver: 17
425+
cpp: 23
426+
427+
428+
steps:
429+
- uses: actions/checkout@v2
430+
431+
- name: Prepare Install
432+
run: sudo apt-get update --fix-missing
433+
434+
- name: Install Packages
435+
run: sudo apt install libqt5gui5 libboost-all-dev libxml2-dev clang-${{matrix.cc_ver}}
436+
437+
- name: Create Build Environment
438+
run: cmake -E make_directory ${{runner.workspace}}/build
439+
440+
- name: Prepare externals
441+
shell: bash
442+
run: $GITHUB_WORKSPACE/script/prepare_externals.sh
443+
env:
444+
BUILD_DIR: ${{runner.workspace}}/build
445+
CC: clang-${{matrix.cc_ver}}
446+
CXX: clang++-${{matrix.cc_ver}}
447+
EXTERNALS_DIR: ${{runner.workspace}}/externals
448+
COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install
449+
COMMON_BUILD_TYPE: ${{matrix.type}}
450+
COMMON_CXX_STANDARD: ${{matrix.cpp}}
451+
COMMS_TAG: ${{env.COMMS_TAG}}
452+
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
453+
454+
- name: Configure CMake
455+
shell: bash
456+
working-directory: ${{runner.workspace}}/build
457+
run: |
458+
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
459+
-DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install
460+
env:
461+
CC: clang-${{matrix.cc_ver}}
462+
CXX: clang++-${{matrix.cc_ver}}
463+
464+
- name: Build
465+
working-directory: ${{runner.workspace}}/build
466+
shell: bash
467+
run: cmake --build . --config ${{matrix.type}} --target install
468+
env:
469+
VERBOSE: 1
358470

359471
build_msvc_2019:
360472
runs-on: windows-2019

0 commit comments

Comments
 (0)