Skip to content

Commit 278fa16

Browse files
committed
Updating github actions configuration.
1 parent 836b45c commit 278fa16

1 file changed

Lines changed: 62 additions & 80 deletions

File tree

.github/workflows/actions_build.yml

Lines changed: 62 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -15,77 +15,24 @@ env:
1515
WIN_BOOST_DIR: "C:/local/boost_1_87_0"
1616

1717
jobs:
18-
build_gcc_ubuntu_22_04:
19-
runs-on: ubuntu-22.04
20-
strategy:
21-
fail-fast: false
22-
matrix:
23-
type: [Debug, Release, MinSizeRel]
24-
cc_ver: [9, 10, 11, 12]
25-
cpp: [11, 14, 17, 20]
26-
qt_ver: [5, 6]
27-
28-
steps:
29-
- uses: actions/checkout@v4
30-
31-
- name: Prepare Install
32-
run: sudo apt-get update --fix-missing
33-
34-
- name: Install Packages
35-
run: |
36-
sudo apt install libqt${{matrix.qt_ver}}gui${{matrix.qt_ver}} qtbase5-dev qt6-base-dev libboost-all-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}} \
37-
python3 libpython3-dev swig default-jdk default-jre emscripten
38-
39-
- name: Create Build Environment
40-
run: cmake -E make_directory ${{runner.workspace}}/build
41-
42-
- name: Prepare externals
43-
shell: bash
44-
run: $GITHUB_WORKSPACE/script/prepare_externals.sh
45-
env:
46-
BUILD_DIR: ${{runner.workspace}}/build
47-
CC: gcc-${{matrix.cc_ver}}
48-
CXX: g++-${{matrix.cc_ver}}
49-
EXTERNALS_DIR: ${{runner.workspace}}/externals
50-
COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install
51-
COMMON_BUILD_TYPE: ${{matrix.type}}
52-
COMMON_CXX_STANDARD: ${{matrix.cpp}}
53-
COMMS_TAG: ${{env.COMMS_TAG}}
54-
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
55-
CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}}
56-
CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}}
57-
58-
- name: Configure CMake
59-
shell: bash
60-
working-directory: ${{runner.workspace}}/build
61-
run: |
62-
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \
63-
-DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
64-
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} \
65-
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
66-
-DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
67-
env:
68-
CC: gcc-${{matrix.cc_ver}}
69-
CXX: g++-${{matrix.cc_ver}}
70-
BUILD_TOOLS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}"
71-
72-
- name: Build Target
73-
working-directory: ${{runner.workspace}}/build
74-
shell: bash
75-
run: cmake --build . --config ${{matrix.type}} --target install
76-
env:
77-
VERBOSE: 1
78-
7918
build_gcc_ubuntu_24_04:
8019
runs-on: ubuntu-24.04
8120
strategy:
8221
fail-fast: false
8322
matrix:
8423
type: [Debug, Release, MinSizeRel]
85-
cc_ver: [13, 14]
24+
cc_ver: [9, 10, 11, 12, 13, 14]
8625
cpp: [11, 14, 17, 20, 23]
8726
qt_ver: [5, 6]
8827
exclude:
28+
- cc_ver: 9
29+
cpp: 23
30+
- cc_ver: 10
31+
cpp: 23
32+
- cc_ver: 11
33+
cpp: 23
34+
- cc_ver: 12
35+
cpp: 23
8936
- cc_ver: 13
9037
cpp: 23
9138

@@ -98,7 +45,8 @@ jobs:
9845
- name: Install Packages
9946
run: |
10047
sudo apt install libqt${{matrix.qt_ver}}gui${{matrix.qt_ver}} qtbase5-dev qt6-base-dev libboost-all-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}} \
101-
python3 libpython3-dev swig default-jdk default-jre emscripten
48+
python3 libpython3-dev swig default-jdk default-jre emscripten \
49+
texlive-base texlive-latex-base texlive-latex-recommended texlive-plain-generic tex4ht
10250
10351
- name: Create Build Environment
10452
run: cmake -E make_directory ${{runner.workspace}}/build
@@ -126,12 +74,14 @@ jobs:
12674
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \
12775
-DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
12876
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} \
129-
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
77+
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_GEN_C=ON -DUBLOX_GEN_LATEX=ON -DUBLOX_BUILD_LATEX=${{env.BUILD_LATEX}} \
78+
-DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
13079
-DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
13180
env:
13281
CC: gcc-${{matrix.cc_ver}}
13382
CXX: g++-${{matrix.cc_ver}}
13483
BUILD_TOOLS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}"
84+
BUILD_LATEX: "${{ matrix.type == 'Debug' && matrix.cpp == 17 && matrix.cc_ver == 14 && matrix.qt_ver == 5 && 'ON' || 'OFF' }}"
13585

13686
- name: Build Target
13787
working-directory: ${{runner.workspace}}/build
@@ -146,8 +96,8 @@ jobs:
14696
fail-fast: false
14797
matrix:
14898
type: [Debug, Release, MinSizeRel]
149-
cc_ver: [12, 13, 14, 15]
150-
cpp: [11, 14, 17, 20]
99+
cc_ver: [12, 13]
100+
cpp: [11, 14, 17]
151101
qt_ver: [5, 6]
152102

153103
steps:
@@ -188,7 +138,8 @@ jobs:
188138
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \
189139
-DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
190140
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} \
191-
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
141+
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_GEN_C=ON -DUBLOX_GEN_LATEX=ON -DUBLOX_BUILD_LATEX=OFF \
142+
-DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
192143
-DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
193144
env:
194145
CC: clang-${{matrix.cc_ver}}
@@ -208,10 +159,18 @@ jobs:
208159
fail-fast: false
209160
matrix:
210161
type: [Debug, Release, MinSizeRel]
211-
cc_ver: [16, 17, 18]
162+
cc_ver: [14, 15, 16, 17, 18]
212163
cpp: [11, 14, 17, 20, 23]
213164
qt_ver: [5, 6]
214165
exclude:
166+
- cc_ver: 14
167+
cpp: 20
168+
- cc_ver: 14
169+
cpp: 23
170+
- cc_ver: 15
171+
cpp: 20
172+
- cc_ver: 15
173+
cpp: 23
215174
- cc_ver: 16
216175
cpp: 23
217176
- cc_ver: 17
@@ -255,7 +214,8 @@ jobs:
255214
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \
256215
-DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \
257216
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} \
258-
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
217+
-DUBLOX_GEN_SWIG=ON -DUBLOX_GEN_EMSCRIPTEN=ON -DUBLOX_GEN_C=ON -DUBLOX_GEN_LATEX=ON -DUBLOX_BUILD_LATEX=OFF \
218+
-DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} \
259219
-DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
260220
env:
261221
CC: clang-${{matrix.cc_ver}}
@@ -269,14 +229,14 @@ jobs:
269229
env:
270230
VERBOSE: 1
271231

272-
build_msvc_2019:
273-
runs-on: windows-2019
232+
build_msvc_2022:
233+
runs-on: windows-2022
274234
strategy:
275235
fail-fast: false
276236
matrix:
277237
type: [Debug, Release]
278238
arch: [Win32, x64]
279-
cpp: [11, 14, 17]
239+
cpp: [11, 14, 17, 20]
280240
qt_ver: [5, 6]
281241
exclude:
282242
- arch: Win32
@@ -304,8 +264,8 @@ jobs:
304264
if: matrix.arch == 'x64'
305265
shell: cmd
306266
run: |
307-
choco install boost-msvc-14.2 --version=${{env.WIN_BOOST_VERSION}}
308-
echo BOOST_DIR=${{env.WIN_BOOST_DIR}}/lib64-msvc-14.2/cmake >>%GITHUB_ENV%
267+
choco install boost-msvc-14.3 --version=${{env.WIN_BOOST_VERSION}}
268+
echo BOOST_DIR=${{env.WIN_BOOST_DIR}}/lib64-msvc-14.3/cmake >>%GITHUB_ENV%
309269
310270
- name: Prepare externals
311271
shell: cmd
@@ -334,6 +294,7 @@ jobs:
334294
-DCMAKE_POLICY_DEFAULT_CMP0167=NEW ^
335295
-DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} ^
336296
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} ^
297+
-DUBLOX_GEN_C=ON -DUBLOX_GEN_LATEX=ON -DUBLOX_BUILD_LATEX=OFF ^
337298
-DUBLOX_BUILD_EXAMPLES=${{env.HAS_BOOST}} ^
338299
-DUBLOX_SCHEMA_FILES_LIST_FILE=%GITHUB_WORKSPACE%/basic_msgs.txt
339300
env:
@@ -347,21 +308,37 @@ jobs:
347308
env:
348309
VERBOSE: 1
349310

350-
build_msvc_2022:
351-
runs-on: windows-2022
311+
build_msvc_2025:
312+
runs-on: windows-2025
352313
strategy:
353314
fail-fast: false
354315
matrix:
355316
type: [Debug, Release]
356317
arch: [Win32, x64]
357-
cpp: [11, 14, 17, 20]
318+
cpp: [11, 14, 17, 20, 23]
319+
qt_ver: [5, 6]
320+
exclude:
321+
- arch: Win32
322+
qt_ver: 6
358323

359324
steps:
360325
- uses: actions/checkout@v4
361326

362327
- name: Create Build Environment
363328
run: cmake -E make_directory ${{runner.workspace}}/build
364329

330+
- name: Install Qt
331+
if: ${{matrix.cpp >= 17 && matrix.arch == 'x64'}}
332+
shell: cmd
333+
run: |
334+
choco install curl
335+
curl -L https://github.com/martinrotter/qt-minimalistic-builds/releases/download/${{env.QT_VER}}/qt-${{env.QT_VER}}-dynamic-msvc2019-x86_64.7z -o ${{runner.workspace}}/qt.7z
336+
7z x ${{runner.workspace}}/qt.7z -o${{runner.workspace}}/qt
337+
echo QT_VER=${{env.QT_VER}} >>%GITHUB_ENV%
338+
echo QTDIR=${{runner.workspace}}/qt/qt-${{env.QT_VER}}-dynamic-msvc2019-x86_64 >>%GITHUB_ENV%
339+
env:
340+
QT_VER: ${{matrix.qt_ver == '5' && '5.15.3' || '6.2.2'}}
341+
365342
- name: Install Boost
366343
if: matrix.arch == 'x64'
367344
shell: cmd
@@ -383,20 +360,25 @@ jobs:
383360
COMMS_TAG: ${{env.COMMS_TAG}}
384361
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
385362
COMMSDSL_PLATFORM: 'x64'
386-
CC_TOOLS_QT_SKIP: 1
363+
CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}}
364+
CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}}
365+
CC_TOOLS_QT_SKIP: ${{matrix.arch == 'Win32' && '1' || '0'}}
387366

388367
- name: Configure CMake
389368
shell: cmd
390369
working-directory: ${{runner.workspace}}/build
391370
run: |
392371
cmake %GITHUB_WORKSPACE% -A ${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install ^
393-
-DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install" ^
372+
-DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install;${{env.QTDIR}};${{env.BOOST_DIR}}" ^
394373
-DCMAKE_POLICY_DEFAULT_CMP0167=NEW ^
395374
-DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} ^
396-
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_BUILD_EXAMPLES=${{env.HAS_BOOST}} ^
375+
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} ^
376+
-DUBLOX_GEN_C=ON -DUBLOX_GEN_LATEX=ON -DUBLOX_BUILD_LATEX=OFF ^
377+
-DUBLOX_BUILD_EXAMPLES=${{env.HAS_BOOST}} ^
397378
-DUBLOX_SCHEMA_FILES_LIST_FILE=%GITHUB_WORKSPACE%/basic_msgs.txt
398379
env:
399380
HAS_BOOST: "${{ matrix.arch == 'x64' && 'ON' || 'OFF' }}"
381+
BUILD_TOOLS: "${{ matrix.cpp >= 17 && matrix.arch == 'x64' && 'ON' || 'OFF' }}"
400382

401383
- name: Build Target
402384
working-directory: ${{runner.workspace}}/build

0 commit comments

Comments
 (0)