uses: actions/checkout@v3
- name: Install packages (Ubuntu)
- run: |
- sudo apt-get install -y gcc-10
+ run: sudo apt-get install -y gcc-10
- name: Generate project files
run: |
CI: true
- name: Compile source code
- run: |
- cmake --build . --config Release > /dev/null
+ run: cmake --build . --config Release > /dev/null
Clang:
runs-on: ubuntu-latest
uses: actions/checkout@v3
- name: Install packages (Ubuntu)
- run: |
- sudo apt-get install clang-tools -y
+ run: sudo apt-get install clang-tools -y
- name: Generate project files
run: |
- name: Add repositories (Wine)
if: contains(matrix.packages, 'wine')
- run: |
- sudo dpkg --add-architecture i386
+ run: sudo dpkg --add-architecture i386
- name: Install packages (Ubuntu)
if: runner.os == 'Linux' && matrix.packages
run: |
# strawberryperl installs /c/Strawberry/c/bin/libstdc++-6.dll, which is incompatible with the mingw64 one.
# zlib-ng does not need perl, so simply remove it.
- choco uninstall strawberryperl --no-progress
- choco install ninja ${{ matrix.packages }} --no-progress
+ choco uninstall --no-progress strawberryperl
+ choco install --no-progress ninja ${{ matrix.packages }}
- name: Install packages (macOS)
if: runner.os == 'macOS'
- run: |
- brew install ninja ${{ matrix.packages }}
+ run: brew install ninja ${{ matrix.packages }}
env:
HOMEBREW_NO_INSTALL_CLEANUP: 1
- name: Initialize Wine
# Prevent parallel test jobs from initializing Wine at the same time
if: contains(matrix.packages, 'wine')
- run: |
- wineboot --init
+ run: wineboot --init
- name: Compile LLVM C++ libraries (MSAN)
if: contains(matrix.name, 'MSAN')
CI: true
- name: Compile source code (zlib-ng)
- run: |
- cmake --build . --config Release
+ run: cmake --build . --config Release
- name: Checkout repository (libpng)
uses: actions/checkout@v3
- name: Install packages (macOS)
if: runner.os == 'macOS'
- run: |
- brew install ninja diffoscope ${{ matrix.packages }}
+ run: brew install ninja diffoscope ${{ matrix.packages }}
env:
HOMEBREW_NO_INSTALL_CLEANUP: 1
xcode-version: '11.7.0'
- name: Compare builds
- run: |
- sh test/pkgcheck.sh
+ run: sh test/pkgcheck.sh
env:
CC: ${{ matrix.compiler }}
CXX: ${{ matrix.cxx-compiler }}
LDFLAGS: ${{ matrix.ldflags }}
- name: Compare builds (compat)
- run: |
- sh test/pkgcheck.sh --zlib-compat
+ run: sh test/pkgcheck.sh --zlib-compat
env:
CC: ${{ matrix.compiler }}
CFLAGS: ${{ matrix.cflags }}
- name: Check ABI
# macOS runner does not contain abigail
if: runner.os != 'macOS'
- run: |
- sh test/abicheck.sh --refresh-if
+ run: sh test/abicheck.sh --refresh-if
env:
CC: ${{ matrix.compiler }}
CXX: ${{ matrix.cxx-compiler }}
- name: Check ABI (compat)
# macOS runner does not contain abigail
if: runner.os != 'macOS'
- run: |
- sh test/abicheck.sh --zlib-compat --refresh-if
+ run: sh test/abicheck.sh --zlib-compat --refresh-if
env:
CC: ${{ matrix.compiler }}
CXX: ${{ matrix.cxx-compiler }}
CI: true
- name: Compile source code
- run: |
- cmake --build . --config Release --target install
+ run: cmake --build . --config Release --target install
- name: Package release (Windows)
if: runner.os == 'Windows'