2121 strategy :
2222 matrix :
2323 os : [ubuntu-20.04, ubuntu-22.04, macos-13]
24- include :
25- - use_qt6 : On
26- - os : ubuntu-20.04
27- use_qt6 : Off
2824 fail-fast : false # Prefer quick result
2925
3026 runs-on : ${{ matrix.os }}
4238 key : ${{ github.workflow }}-${{ github.job }}-${{ matrix.os }}
4339
4440 - name : Install missing software on ubuntu
45- if : contains(matrix.os, 'ubuntu') && matrix.use_qt6 == 'Off'
46- run : |
47- sudo apt-get update
48- sudo apt-get install libxml2-utils libtinyxml2-dev qtbase5-dev qttools5-dev libqt5charts5-dev qtchooser
49-
50- - name : Install missing software on ubuntu
51- if : contains(matrix.os, 'ubuntu') && matrix.use_qt6 == 'On'
41+ if : contains(matrix.os, 'ubuntu')
5242 run : |
5343 sudo apt-get update
5444 sudo apt-get install libxml2-utils libtinyxml2-dev
@@ -66,13 +56,13 @@ jobs:
6656 - name : CMake build on ubuntu (with GUI / system tinyxml2)
6757 if : contains(matrix.os, 'ubuntu')
6858 run : |
69- cmake -S . -B cmake.output.tinyxml2 -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DUSE_QT6=${{ matrix.use_qt6 }} - DWITH_QCHART=On -DUSE_BUNDLED_TINYXML2=Off -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
59+ cmake -S . -B cmake.output.tinyxml2 -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DWITH_QCHART=On -DUSE_BUNDLED_TINYXML2=Off -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
7060 cmake --build cmake.output.tinyxml2 -- -j$(nproc)
7161
7262 - name : CMake build on macos (with GUI / system tinyxml2)
7363 if : contains(matrix.os, 'macos')
7464 run : |
75- cmake -S . -B cmake.output.tinyxml2 -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DUSE_QT6=On - DWITH_QCHART=On -DUSE_BUNDLED_TINYXML2=Off -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DQt6_DIR=$(brew --prefix qt@6)/lib/cmake/Qt6
65+ cmake -S . -B cmake.output.tinyxml2 -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DWITH_QCHART=On -DUSE_BUNDLED_TINYXML2=Off -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DQt6_DIR=$(brew --prefix qt@6)/lib/cmake/Qt6
7666 cmake --build cmake.output.tinyxml2 -- -j$(nproc)
7767
7868 - name : Run CMake test (system tinyxml2)
8474 strategy :
8575 matrix :
8676 os : [ubuntu-20.04, ubuntu-22.04, macos-13]
87- include :
88- - use_qt6 : On
89- - os : ubuntu-20.04
90- use_qt6 : Off
9177 fail-fast : false # Prefer quick result
9278
9379 runs-on : ${{ matrix.os }}
@@ -104,12 +90,6 @@ jobs:
10490 with :
10591 key : ${{ github.workflow }}-${{ github.job }}-${{ matrix.os }}
10692
107- - name : Install missing software on ubuntu
108- if : contains(matrix.os, 'ubuntu') && matrix.use_qt6 == 'Off'
109- run : |
110- sudo apt-get update
111- sudo apt-get install libxml2-utils qtbase5-dev qttools5-dev libqt5charts5-dev qtchooser
112-
11393 # TODO: move latest compiler to separate step
11494 # TODO: bail out on warnings with latest GCC
11595 - name : Set up GCC
@@ -125,7 +105,7 @@ jobs:
125105 echo "CXX=g++-13" >> $GITHUB_ENV
126106
127107 - name : Install missing software on ubuntu
128- if : contains(matrix.os, 'ubuntu') && matrix.use_qt6 == 'On'
108+ if : contains(matrix.os, 'ubuntu')
129109 run : |
130110 sudo apt-get update
131111 sudo apt-get install libxml2-utils
@@ -143,13 +123,13 @@ jobs:
143123 - name : CMake build on ubuntu (with GUI)
144124 if : contains(matrix.os, 'ubuntu')
145125 run : |
146- cmake -S . -B cmake.output -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DUSE_QT6=${{ matrix.use_qt6 }} - DWITH_QCHART=On -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
126+ cmake -S . -B cmake.output -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DWITH_QCHART=On -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
147127 cmake --build cmake.output -- -j$(nproc)
148128
149129 - name : CMake build on macos (with GUI)
150130 if : contains(matrix.os, 'macos')
151131 run : |
152- cmake -S . -B cmake.output -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DUSE_QT6=On - DWITH_QCHART=On -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DQt6_DIR=$(brew --prefix qt@6)/lib/cmake/Qt6
132+ cmake -S . -B cmake.output -G "Unix Makefiles" -DHAVE_RULES=On -DBUILD_TESTS=On -DBUILD_GUI=On -DWITH_QCHART=On -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DQt6_DIR=$(brew --prefix qt@6)/lib/cmake/Qt6
153133 cmake --build cmake.output -- -j$(nproc)
154134
155135 - name : Run CMake test
0 commit comments