Merge pull request #218 from jp-pino/master #77
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: CMake | |
| on: | |
| push: | |
| branches: | |
| - '**' | |
| pull_request: | |
| branches: [master] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| config: | |
| - os: ubuntu-24.04 | |
| family: ubuntu | |
| cc: gcc | |
| cxx: g++ | |
| - os: ubuntu-22.04 | |
| family: ubuntu | |
| cc: gcc | |
| cxx: g++ | |
| - os: macos-26 | |
| family: macos | |
| cc: clang | |
| cxx: clang++ | |
| - os: macos-15 | |
| family: macos | |
| cc: clang | |
| cxx: clang++ | |
| - os: macos-14 | |
| family: macos | |
| cc: clang | |
| cxx: clang++ | |
| - os: macos-13 | |
| family: macos | |
| cc: clang | |
| cxx: clang++ | |
| boost: | |
| - url: system | |
| system_packages_ubuntu: libboost-all-dev | |
| system_packages_macos: boost | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_189 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_187 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_184 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_181 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_176 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_174 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=NEW | |
| - url: BOOST_168 | |
| system_packages_ubuntu: | |
| system_packages_macos: | |
| extra_cmake_args: -DCMAKE_POLICY_DEFAULT_CMP0167=OLD | |
| zmq: | |
| - tag: system | |
| system_packages_ubuntu: libzmq3-dev | |
| system_packages_macos: zmq | |
| exclude: | |
| - config: | |
| family: macos | |
| boost: | |
| url: BOOST_176 | |
| - config: | |
| family: macos | |
| boost: | |
| url: BOOST_174 | |
| - config: | |
| family: macos | |
| boost: | |
| url: BOOST_168 | |
| - config: | |
| os: macos-14 | |
| boost: | |
| url: BOOST_181 | |
| runs-on: ${{ matrix.config.os }} | |
| env: | |
| CC: ${{ matrix.config.cc }} | |
| CXX: ${{ matrix.config.cxx }} | |
| CTEST_OUTPUT_ON_FAILURE: 1 | |
| PACKAGES_UBUNTU: ${{ matrix.boost.system_packages_ubuntu }} ${{ matrix.zmq.system_packages_ubuntu }} | |
| PACKAGES_MACOS: ${{ matrix.boost.system_packages_macos }} ${{ matrix.zmq.system_packages_macos }} | |
| CONFIG_OS: ${{ matrix.config.os }} | |
| MATRIX: ${{ toJson(matrix) }} | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: buildtools on ubuntu | |
| if: ${{ startsWith(matrix.config.os, 'ubuntu') }} | |
| shell: bash | |
| run: | | |
| PACKAGES_UBUNTU=$(echo $PACKAGES_UBUNTU | sed 's/^[ ]*//;s/[ ]*$//') | |
| if [ -n "$PACKAGES_UBUNTU" ]; then | |
| sudo apt-get update && sudo apt-get install -y $PACKAGES_UBUNTU | |
| fi | |
| - name: buildtools on macos | |
| if: ${{ startsWith(matrix.config.os, 'macos') }} | |
| shell: bash | |
| run: | | |
| PACKAGES_MACOS=$(echo $PACKAGES_MACOS | sed 's/^[ ]*//;s/[ ]*$//') | |
| if [ -n "$PACKAGES_MACOS" ]; then | |
| brew install $PACKAGES_MACOS | |
| fi | |
| - name: build | |
| shell: bash | |
| run: | | |
| cmake -DBOOST_URL=${{matrix.boost.url}} -DZMQ_TAG=${{matrix.zmq.tag}} ${{matrix.boost.extra_cmake_args}} -S .github/workflows/cmake-superbuild -B build | |
| cmake --build build |