name: Build on: [push, pull_request] concurrency: group: ${{ github.workflow }}-${{ github.job }}-${{ github.ref }} cancel-in-progress: true jobs: Ubuntu: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Build Ubuntu run: | ./configure --with-fastfloat make make check Ubuntu-20-04: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 - name: Build Ubuntu run: | ./configure --with-fastfloat make make check MacOS: runs-on: macos-latest steps: - uses: actions/checkout@v2 - name: Build MacOS run: | ./configure --with-fastfloat make make check Windows-64: runs-on: windows-latest steps: - uses: actions/checkout@v2 - uses: ilammy/msvc-dev-cmd@v1 with: arch: x64 - name: Build Windows 64 bit run: devenv .\Projects\VC2019\lcms2.sln /Rebuild "Release|x64" /Project testbed - name: Run tests run: testbed\testbed.exe --chdir testbed Windows-32: runs-on: windows-latest steps: - uses: actions/checkout@v2 - uses: ilammy/msvc-dev-cmd@v1 with: arch: win32 - name: Build Windows 32 bit run: devenv .\Projects\VC2019\lcms2.sln /Rebuild "Release|Win32" /Project testbed - name: Run tests run: testbed\testbed.exe --chdir testbed Ubuntu-meson: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Install packages run: | sudo apt-get -y install build-essential python3-pip ninja-build pip install meson==0.59.2 - name: Build Ubuntu run: | meson setup build -Dfastfloat=true meson compile -C build meson test -C build VisualStudio-meson: runs-on: windows-latest steps: - uses: actions/checkout@v2 - name: Install packages run: | pip install meson==0.59.2 - uses: ilammy/msvc-dev-cmd@v1 - name: Build Windows run: | meson setup build meson compile -C build meson test -C build msys-meson: name: 'msys-meson ${{ matrix.sys.abi }} ${{ matrix.library }}' runs-on: windows-latest defaults: run: shell: msys2 {0} strategy: matrix: sys: - { abi: mingw32, env: i686, compiler: gcc } - { abi: mingw64, env: x86_64, compiler: gcc } - { abi: ucrt64, env: ucrt-x86_64, compiler: gcc } - { abi: clang32, env: clang-i686, compiler: clang } - { abi: clang64, env: clang-x86_64, compiler: clang } library: ['shared', 'static'] fail-fast: false steps: - name: Use MinGW from MSYS uses: msys2/setup-msys2@v2 with: msystem: ${{matrix.sys.abi}} update: true pacboy: >- toolchain:p meson:p ninja:p - uses: actions/checkout@v2 - name: Build Windows run: | meson setup build -Dfastfloat=true -Dthreaded=true -Dsamples=true -Ddefault_library=${{ matrix.library }} meson compile -C build meson test -C build