Repository navigation
Updated package clean on ubuntu-26.04 in github actions. #755
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Github Actions Build | |
| on: | |
| push: | |
| branches: | |
| - '**' | |
| tags-ignore: | |
| - '**' | |
| env: | |
| COMMS_TAG: v5.5.2 | |
| CC_TOOLS_QT_TAG: v6.0.8 | |
| jobs: | |
| build_gcc_ubuntu_24_04: | |
| if: false | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Debug, Release, MinSizeRel] | |
| cc_ver: [9, 10, 11, 12] | |
| cpp: [11, 14, 17, 20] | |
| qt_ver: [5, 6] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Prepare Install | |
| run: sudo apt-get update --fix-missing | |
| - name: List biggest packages | |
| run: | | |
| echo "Listing 100 largest packages"; \ | |
| dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 100; \ | |
| df -h | |
| - name: Clean unused packages | |
| run: | | |
| sudo apt-get remove -y microsoft-edge-stable azure-cli '^google-cloud-cli.*' google-chrome-stable firefox powershell 'php.*' '^dotnet-.*' '^llvm-.*' '^clang-tools-.*'; \ | |
| sudo apt-get clean | |
| - name: Install Packages | |
| run: | | |
| sudo apt install libqt${{matrix.qt_ver}}gui${{matrix.qt_ver}} qtbase5-dev qt6-base-dev libxml2-dev doxygen gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}} \ | |
| python3 libpython3-dev swig default-jdk default-jre emscripten nodejs \ | |
| texlive-base texlive-latex-base texlive-latex-recommended texlive-plain-generic tex4ht \ | |
| tshark | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Prepare externals | |
| shell: bash | |
| run: $GITHUB_WORKSPACE/script/prepare_externals.sh | |
| env: | |
| BUILD_DIR: ${{runner.workspace}}/build | |
| CC: gcc-${{matrix.cc_ver}} | |
| CXX: g++-${{matrix.cc_ver}} | |
| EXTERNALS_DIR: ${{runner.workspace}}/externals | |
| COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install | |
| COMMON_BUILD_TYPE: ${{matrix.type}} | |
| COMMON_CXX_STANDARD: ${{matrix.cpp}} | |
| COMMS_TAG: ${{env.COMMS_TAG}} | |
| CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}} | |
| CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}} | |
| - name: Configure CMake | |
| shell: bash | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \ | |
| -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCOMMSDSL_TESTS_CXX_STANDARD=${{matrix.cpp}} \ | |
| -DCMAKE_CXX_STANDARD=${{env.TOOLS_CXX_STANDARD}} -DCOMMSDSL_TESTS_QT_VERSION=${{matrix.qt_ver}} \ | |
| -DCOMMSDSL_BUILD_UNIT_TESTS=ON -DCOMMSDSL_TEST_BUILD_DOC=${{env.BUILD_TEST_DOCS}} -DCMAKE_IGNORE_PATH=/usr/local/bin \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT_TESTS=${{env.BUILD_TOOLS_QT_UNIT_TESTS}} \ | |
| -DCOMMSDSL_BUILD_WITH_SANITIZERS=ON | |
| env: | |
| CC: gcc-${{matrix.cc_ver}} | |
| CXX: g++-${{matrix.cc_ver}} | |
| BUILD_TOOLS_QT_UNIT_TESTS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}" | |
| BUILD_TEST_DOCS: "${{ matrix.type == 'Debug' && matrix.cpp == 11 && matrix.cc_ver == 14 && matrix.qt_ver == 5 && 'ON' || 'OFF' }}" | |
| TOOLS_CXX_STANDARD: "${{ matrix.cpp >= 17 && matrix.cpp || '17' }}" | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| - name: Testing | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: ctest -V | |
| build_gcc_ubuntu_26_04: | |
| runs-on: ubuntu-26.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Debug, Release, MinSizeRel] | |
| cc_ver: [13, 14, 15] | |
| cpp: [11, 14, 17, 20, 23] | |
| qt_ver: [6] | |
| exclude: | |
| - cc_ver: 13 | |
| cpp: 23 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Prepare Install | |
| run: sudo apt-get update --fix-missing | |
| - name: List biggest packages | |
| run: | | |
| echo "Listing 100 largest packages"; \ | |
| dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 100; \ | |
| df -h | |
| - name: Clean unused packages | |
| run: | | |
| sudo apt-get remove -y microsoft-edge-stable azure-cli google-chrome-stable firefox '^llvm-.*' '^gfortran-.*'; \ | |
| sudo apt-get clean | |
| - name: Install Packages | |
| run: | | |
| sudo apt install libqt${{matrix.qt_ver}}gui${{matrix.qt_ver}} qt6-base-dev libxml2-dev doxygen gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}} \ | |
| python3 libpython3-dev swig default-jdk default-jre emscripten nodejs \ | |
| texlive-base texlive-latex-base texlive-latex-recommended texlive-plain-generic tex4ht \ | |
| tshark | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Prepare externals | |
| shell: bash | |
| run: $GITHUB_WORKSPACE/script/prepare_externals.sh | |
| env: | |
| BUILD_DIR: ${{runner.workspace}}/build | |
| CC: gcc-${{matrix.cc_ver}} | |
| CXX: g++-${{matrix.cc_ver}} | |
| EXTERNALS_DIR: ${{runner.workspace}}/externals | |
| COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install | |
| COMMON_BUILD_TYPE: ${{matrix.type}} | |
| COMMON_CXX_STANDARD: ${{matrix.cpp}} | |
| COMMS_TAG: ${{env.COMMS_TAG}} | |
| CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}} | |
| CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}} | |
| - name: Configure CMake | |
| shell: bash | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \ | |
| -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCOMMSDSL_TESTS_CXX_STANDARD=${{matrix.cpp}} \ | |
| -DCMAKE_CXX_STANDARD=${{env.TOOLS_CXX_STANDARD}} -DCOMMSDSL_TESTS_QT_VERSION=${{matrix.qt_ver}} \ | |
| -DCOMMSDSL_BUILD_UNIT_TESTS=ON -DCOMMSDSL_TEST_BUILD_DOC=${{env.BUILD_TEST_DOCS}} -DCMAKE_IGNORE_PATH=/usr/local/bin \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT_TESTS=${{env.BUILD_TOOLS_QT_UNIT_TESTS}} \ | |
| -DCOMMSDSL_BUILD_WITH_SANITIZERS=ON | |
| env: | |
| CC: gcc-${{matrix.cc_ver}} | |
| CXX: g++-${{matrix.cc_ver}} | |
| BUILD_TOOLS_QT_UNIT_TESTS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}" | |
| BUILD_TEST_DOCS: "${{ matrix.type == 'Debug' && matrix.cpp == 11 && matrix.cc_ver == 14 && matrix.qt_ver == 5 && 'ON' || 'OFF' }}" | |
| TOOLS_CXX_STANDARD: "${{ matrix.cpp >= 17 && matrix.cpp || '17' }}" | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| - name: Testing | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: ctest -V | |
| build_gcc_no_sanitize_ubuntu_26_04: | |
| if: false | |
| runs-on: ubuntu-26.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Release] | |
| cc_ver: [13, 14, 15] | |
| cpp: [17, 20, 23] | |
| exclude: | |
| - cc_ver: 13 | |
| cpp: 23 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Prepare Install | |
| run: sudo apt-get update --fix-missing | |
| - name: Install Packages | |
| run: | | |
| sudo apt install libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}} | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Configure CMake | |
| shell: bash | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \ | |
| -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install \ | |
| -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON \ | |
| -DCOMMSDSL_BUILD_WITH_SANITIZERS=OFF -DCOMMSDSL_BUILD_UNIT_TESTS=OFF | |
| env: | |
| CC: gcc-${{matrix.cc_ver}} | |
| CXX: g++-${{matrix.cc_ver}} | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| build_clang_ubuntu_24_04: | |
| if: false | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Debug, Release, MinSizeRel] | |
| cc_ver: [14, 15, 16] | |
| cpp: [11, 14, 17, 20] | |
| qt_ver: [5, 6] | |
| exclude: | |
| - cc_ver: 14 | |
| cpp: 20 | |
| - cc_ver: 15 | |
| cpp: 20 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Prepare Install | |
| run: sudo apt-get update --fix-missing | |
| - name: Install Packages | |
| run: | | |
| sudo apt install libqt${{matrix.qt_ver}}gui${{matrix.qt_ver}} qtbase5-dev qt6-base-dev libxml2-dev clang-${{matrix.cc_ver}} \ | |
| python3 libpython3-dev swig default-jdk default-jre emscripten nodejs tshark | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Prepare externals | |
| shell: bash | |
| run: $GITHUB_WORKSPACE/script/prepare_externals.sh | |
| env: | |
| BUILD_DIR: ${{runner.workspace}}/build | |
| CC: clang-${{matrix.cc_ver}} | |
| CXX: clang++-${{matrix.cc_ver}} | |
| EXTERNALS_DIR: ${{runner.workspace}}/externals | |
| COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install | |
| COMMON_BUILD_TYPE: ${{matrix.type}} | |
| COMMON_CXX_STANDARD: ${{matrix.cpp}} | |
| COMMS_TAG: ${{env.COMMS_TAG}} | |
| CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}} | |
| CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}} | |
| - name: Configure CMake | |
| shell: bash | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \ | |
| -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCOMMSDSL_TESTS_CXX_STANDARD=${{matrix.cpp}} \ | |
| -DCMAKE_CXX_STANDARD=${{env.TOOLS_CXX_STANDARD}} -DCOMMSDSL_TESTS_QT_VERSION=${{matrix.qt_ver}} \ | |
| -DCOMMSDSL_BUILD_UNIT_TESTS=ON -DCMAKE_IGNORE_PATH=/usr/local/bin \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT_TESTS=${{env.BUILD_TOOLS_QT_UNIT_TESTS}} \ | |
| -DCOMMSDSL_BUILD_WITH_SANITIZERS=ON | |
| env: | |
| CC: clang-${{matrix.cc_ver}} | |
| CXX: clang++-${{matrix.cc_ver}} | |
| BUILD_TOOLS_QT_UNIT_TESTS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}" | |
| TOOLS_CXX_STANDARD: "${{ matrix.cpp >= 17 && matrix.cpp || '17' }}" | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| - name: Testing | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: ctest -V | |
| build_clang_ubuntu_26_04: | |
| if: false | |
| runs-on: ubuntu-26.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Debug, Release, MinSizeRel] | |
| cc_ver: [17, 18, 19, 20, 21, 22] | |
| cpp: [11, 14, 17, 20, 23] | |
| qt_ver: [6] | |
| exclude: | |
| - cc_ver: 17 | |
| cpp: 23 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Prepare Install | |
| run: sudo apt-get update --fix-missing | |
| - name: Install Packages | |
| run: | | |
| sudo apt install libqt${{matrix.qt_ver}}gui${{matrix.qt_ver}} qt6-base-dev libxml2-dev clang-${{matrix.cc_ver}} \ | |
| python3 libpython3-dev swig default-jdk default-jre emscripten nodejs tshark | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Prepare externals | |
| shell: bash | |
| run: $GITHUB_WORKSPACE/script/prepare_externals.sh | |
| env: | |
| BUILD_DIR: ${{runner.workspace}}/build | |
| CC: clang-${{matrix.cc_ver}} | |
| CXX: clang++-${{matrix.cc_ver}} | |
| EXTERNALS_DIR: ${{runner.workspace}}/externals | |
| COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install | |
| COMMON_BUILD_TYPE: ${{matrix.type}} | |
| COMMON_CXX_STANDARD: ${{matrix.cpp}} | |
| COMMS_TAG: ${{env.COMMS_TAG}} | |
| CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}} | |
| CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}} | |
| - name: Configure CMake | |
| shell: bash | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \ | |
| -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCOMMSDSL_TESTS_CXX_STANDARD=${{matrix.cpp}} \ | |
| -DCMAKE_CXX_STANDARD=${{env.TOOLS_CXX_STANDARD}} -DCOMMSDSL_TESTS_QT_VERSION=${{matrix.qt_ver}} \ | |
| -DCOMMSDSL_BUILD_UNIT_TESTS=ON -DCMAKE_IGNORE_PATH=/usr/local/bin \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT_TESTS=${{env.BUILD_TOOLS_QT_UNIT_TESTS}} \ | |
| -DCOMMSDSL_BUILD_WITH_SANITIZERS=ON | |
| env: | |
| CC: clang-${{matrix.cc_ver}} | |
| CXX: clang++-${{matrix.cc_ver}} | |
| BUILD_TOOLS_QT_UNIT_TESTS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}" | |
| TOOLS_CXX_STANDARD: "${{ matrix.cpp >= 17 && matrix.cpp || '17' }}" | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| - name: Testing | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: ctest -V | |
| build_clang_no_sanitize_ubuntu_26_04: | |
| if: false | |
| runs-on: ubuntu-26.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Release] | |
| cc_ver: [17, 18, 19, 20, 21, 22] | |
| cpp: [17, 20, 23] | |
| exclude: | |
| - cc_ver: 17 | |
| cpp: 23 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Prepare Install | |
| run: sudo apt-get update --fix-missing | |
| - name: Install Packages | |
| run: | | |
| sudo apt install libxml2-dev clang-${{matrix.cc_ver}} | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Configure CMake | |
| shell: bash | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install \ | |
| -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install \ | |
| -DCMAKE_CXX_STANDARD=${{matrix.cpp}} \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON \ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON \ | |
| -DCOMMSDSL_BUILD_WITH_SANITIZERS=OFF -DCOMMSDSL_BUILD_UNIT_TESTS=OFF | |
| env: | |
| CC: clang-${{matrix.cc_ver}} | |
| CXX: clang++-${{matrix.cc_ver}} | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| build_msvc_2022: | |
| if: false | |
| runs-on: windows-2022 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Debug, Release] | |
| arch: [x64] | |
| cpp: [11, 14, 17, 20] | |
| qt_ver: [5, 6] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Install Qt (sets QT_ROOT_DIR) | |
| if: ${{matrix.cpp >= 17}} | |
| uses: jurplel/install-qt-action@v4 | |
| with: | |
| version: ${{ matrix.qt_ver == 5 && '5.15.*' || '6.8.*' }} | |
| cache: true | |
| - name: Prepare externals | |
| shell: cmd | |
| run: | | |
| set QTDIR=%QT_ROOT_DIR% | |
| %GITHUB_WORKSPACE%\script\prepare_externals.bat | |
| env: | |
| BUILD_DIR: ${{runner.workspace}}/build | |
| PLATFORM: ${{matrix.arch}} | |
| EXTERNALS_DIR: ${{runner.workspace}}/externals | |
| COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install | |
| COMMON_BUILD_TYPE: ${{matrix.type}} | |
| COMMON_CXX_STANDARD: ${{matrix.cpp}} | |
| COMMS_TAG: ${{env.COMMS_TAG}} | |
| CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}} | |
| CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}} | |
| CC_TOOLS_QT_SKIP: "${{ matrix.cpp >= 17 && (matrix.qt_ver == 6 || matrix.cpp < 20) && '0' || '1' }}" | |
| - name: Configure CMake | |
| shell: cmd | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake %GITHUB_WORKSPACE% -A ${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install ^ | |
| -DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install;${{env.QT_ROOT_DIR}}" ^ | |
| -DCOMMSDSL_TESTS_CXX_STANDARD=${{matrix.cpp}} -DCOMMSDSL_TESTS_QT_VERSION=${{matrix.qt_ver}} ^ | |
| -DCMAKE_CXX_STANDARD=${{env.TOOLS_CXX_STANDARD}} ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON ^ | |
| -DCOMMSDSL_BUILD_UNIT_TESTS=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT_TESTS=${{env.BUILD_TOOLS_QT_UNIT_TESTS}} ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG_TESTS=OFF -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN_TESTS=OFF ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX_TESTS=OFF -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK_TESTS=OFF | |
| env: | |
| TOOLS_CXX_STANDARD: "${{ matrix.cpp >= 17 && matrix.cpp || '17' }}" | |
| BUILD_TOOLS_QT_UNIT_TESTS: "${{ matrix.cpp >= 17 && (matrix.qt_ver == 6 || matrix.cpp < 20) && 'ON' || 'OFF' }}" | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: cmd | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| - name: Testing | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: ctest -V | |
| build_msvc_2026: | |
| if: false | |
| runs-on: windows-2025 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| type: [Debug, Release] | |
| arch: [x64] | |
| cpp: [11, 14, 17, 20, 23] | |
| qt_ver: [5, 6] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Create Build Environment | |
| run: cmake -E make_directory ${{runner.workspace}}/build | |
| - name: Install Qt (sets QT_ROOT_DIR) | |
| if: ${{matrix.cpp >= 17}} | |
| uses: jurplel/install-qt-action@v4 | |
| with: | |
| version: ${{ matrix.qt_ver == 5 && '5.15.*' || '6.8.*' }} | |
| cache: true | |
| - name: Prepare externals | |
| shell: cmd | |
| run: | | |
| set QTDIR=%QT_ROOT_DIR% | |
| %GITHUB_WORKSPACE%\script\prepare_externals.bat | |
| env: | |
| BUILD_DIR: ${{runner.workspace}}/build | |
| PLATFORM: ${{matrix.arch}} | |
| EXTERNALS_DIR: ${{runner.workspace}}/externals | |
| COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install | |
| COMMON_BUILD_TYPE: ${{matrix.type}} | |
| COMMON_CXX_STANDARD: ${{matrix.cpp}} | |
| COMMS_TAG: ${{env.COMMS_TAG}} | |
| CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}} | |
| CC_TOOLS_QT_MAJOR_QT_VERSION: ${{matrix.qt_ver}} | |
| CC_TOOLS_QT_SKIP: "${{ matrix.cpp >= 17 && (matrix.qt_ver == 6 || matrix.cpp < 20) && '0' || '1' }}" | |
| - name: Configure CMake | |
| shell: cmd | |
| working-directory: ${{runner.workspace}}/build | |
| run: | | |
| cmake %GITHUB_WORKSPACE% -A ${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install ^ | |
| -DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install;${{env.QTDIR}}" ^ | |
| -DCOMMSDSL_TESTS_CXX_STANDARD=${{matrix.cpp}} -DCOMMSDSL_TESTS_QT_VERSION=${{matrix.qt_ver}} ^ | |
| -DCMAKE_CXX_STANDARD=${{env.TOOLS_CXX_STANDARD}} ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TEST=ON -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG=ON -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX=ON -DCOMMSDSL_BUILD_COMMSDSL2C=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK=ON ^ | |
| -DCOMMSDSL_BUILD_UNIT_TESTS=ON ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2TOOLS_QT_TESTS=${{env.BUILD_TOOLS_QT_UNIT_TESTS}} ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2SWIG_TESTS=OFF -DCOMMSDSL_BUILD_COMMSDSL2EMSCRIPTEN_TESTS=OFF ^ | |
| -DCOMMSDSL_BUILD_COMMSDSL2LATEX_TESTS=OFF -DCOMMSDSL_BUILD_COMMSDSL2WIRESHARK_TESTS=OFF | |
| env: | |
| TOOLS_CXX_STANDARD: "${{ matrix.cpp >= 17 && matrix.cpp || '17' }}" | |
| BUILD_TOOLS_QT_UNIT_TESTS: "${{ matrix.cpp >= 17 && (matrix.qt_ver == 6 || matrix.cpp < 20) && 'ON' || 'OFF' }}" | |
| - name: Build Target | |
| working-directory: ${{runner.workspace}}/build | |
| shell: cmd | |
| run: cmake --build . --config ${{matrix.type}} --target install | |
| env: | |
| VERBOSE: 1 | |
| - name: Testing | |
| working-directory: ${{runner.workspace}}/build | |
| shell: bash | |
| run: ctest -V |