name: Build on: push jobs: build: name: Build runs-on: ubuntu-22.04 strategy: matrix: arch: - arm - arm64 - hppa - i686 - m68k - mips - mipsel - powerpc - powerpc64 - powerpc64le - sh4 - s390x - x86_64-x32 include: - arch: x86_64 - arch: x86_64 libxen: libxen steps: - name: Checkout uses: actions/checkout@v4 - name: Set Environment env: LIBXEN: ${{ matrix.libxen }} ARCH: ${{ matrix.arch }} run: | case $LIBXEN in libxen) EXTRA_PKGS+=" libxen-dev" ;; esac case $ARCH in arm) GNU_ARCH="arm-linux-gnueabi" ;; arm64) GNU_ARCH="aarch64-linux-gnu" ;; x86_64) ;; x86_64-x32) GNU_ARCH="x86_64-linux-gnux32" CROSS_COMPILER_PKG="gcc-x86-64-linux-gnux32" ;; *) GNU_ARCH="$ARCH-linux-gnu" ;; esac if [ -n "$GNU_ARCH" ]; then if [ -z "$CROSS_COMPILER_PKG" ]; then CROSS_COMPILER_PKG="gcc-$GNU_ARCH" fi EXTRA_PKGS+=" $CROSS_COMPILER_PKG" CONFIG_FLAGS+=" --host=$GNU_ARCH" fi echo "EXTRA_PKGS=$EXTRA_PKGS" >> $GITHUB_ENV echo "CONFIG_FLAGS=$CONFIG_FLAGS" >> $GITHUB_ENV - name: Install Dependencies if: env.EXTRA_PKGS != '' run: | sudo apt-get update sudo apt-get -q=2 install ${{ env.EXTRA_PKGS }} - name: Build run: | ./bootstrap ./configure ${{ env.CONFIG_FLAGS }} make -j"$(nproc)" distcheck \ DISTCHECK_CONFIGURE_FLAGS="${{ env.CONFIG_FLAGS }}"