1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-01-10 01:17:44 +03:00

ci: Build test with different linkers

This commit is contained in:
Jan Janssen 2021-12-10 18:28:33 +01:00
parent 3abdd4bf2e
commit aa22e69856
2 changed files with 14 additions and 8 deletions

View File

@ -62,6 +62,7 @@ PACKAGES=(
)
COMPILER="${COMPILER:?}"
COMPILER_VERSION="${COMPILER_VERSION:?}"
LINKER="${LINKER:?}"
RELEASE="$(lsb_release -cs)"
bash -c "echo 'deb-src http://archive.ubuntu.com/ubuntu/ $RELEASE main restricted universe multiverse' >>/etc/apt/sources.list"
@ -117,7 +118,12 @@ for args in "${ARGS[@]}"; do
info "Checking build with $args"
# shellcheck disable=SC2086
if ! AR="$AR" CC="$CC" CXX="$CXX" CFLAGS="-Werror" CXXFLAGS="-Werror" meson -Dtests=unsafe -Dslow-tests=true -Dfuzz-tests=true --werror $args build; then
if ! AR="$AR" \
CC="$CC" CC_LD="$LINKER" CFLAGS="-Werror" \
CXX="$CXX" CXX_LD="$LINKER" CXXFLAGS="-Werror" \
meson -Dtests=unsafe -Dslow-tests=true -Dfuzz-tests=true --werror \
$args build; then
fatal "meson failed with $args"
fi

View File

@ -19,20 +19,20 @@ jobs:
build:
runs-on: ubuntu-20.04
concurrency:
group: ${{ github.workflow }}-${{ matrix.env.COMPILER }}-${{ matrix.env.COMPILER_VERSION }}-${{ github.ref }}
group: ${{ github.workflow }}-${{ matrix.env.COMPILER }}-${{ matrix.env.COMPILER_VERSION }}-${{ matrix.env.LINKER }}-${{ github.ref }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
env:
- { COMPILER: "gcc", COMPILER_VERSION: "10" }
- { COMPILER: "gcc", COMPILER_VERSION: "11" }
- { COMPILER: "clang", COMPILER_VERSION: "11" }
- { COMPILER: "clang", COMPILER_VERSION: "12" }
- { COMPILER: "clang", COMPILER_VERSION: "13" }
- { COMPILER: "gcc", COMPILER_VERSION: "10", LINKER: "bfd" }
- { COMPILER: "gcc", COMPILER_VERSION: "11", LINKER: "gold" }
- { COMPILER: "clang", COMPILER_VERSION: "11", LINKER: "bfd" }
- { COMPILER: "clang", COMPILER_VERSION: "12", LINKER: "gold" }
- { COMPILER: "clang", COMPILER_VERSION: "13", LINKER: "lld" }
env: ${{ matrix.env }}
steps:
- name: Repository checkout
uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
- name: Build check (${{ env.COMPILER }}-${{ env.COMPILER_VERSION }})
- name: Build check (${{ env.COMPILER }}-${{ env.COMPILER_VERSION }}-${{ env.LINKER }})
run: sudo -E .github/workflows/build_test.sh