From 3491ed652e0af484b8357ba67e45af17a0e54173 Mon Sep 17 00:00:00 2001 From: John Baldwin Date: Thu, 9 Jun 2022 10:20:03 -0700 Subject: [PATCH] .github: Cross-build aarch64 as well as amd64 kernels. This required adding an explicit os list to the matrix. Reviewed by: uqs Pull Request: https://github.com/freebsd/freebsd-src/pull/599 --- .github/workflows/cross-bootstrap-tools.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cross-bootstrap-tools.yml b/.github/workflows/cross-bootstrap-tools.yml index fbe8fc93670..3388cc91858 100644 --- a/.github/workflows/cross-bootstrap-tools.yml +++ b/.github/workflows/cross-bootstrap-tools.yml @@ -8,11 +8,13 @@ on: jobs: build: - name: ${{ matrix.os }} (${{ matrix.compiler }}) + name: ${{ matrix.target_arch }} ${{ matrix.os }} (${{ matrix.compiler }}) runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: + target_arch: [ amd64, aarch64 ] + os: [ ubuntu-20.04, macos-latest ] include: # TODO: both Ubuntu and macOS have bmake packages, we should try them instead of bootstrapping our own copy. - os: ubuntu-20.04 @@ -23,6 +25,10 @@ jobs: compiler: clang-13 cross-bindir: /usr/local/opt/llvm/bin pkgs: bmake libarchive + - target_arch: amd64 + target: amd64 + - target_arch: aarch64 + target: arm64 steps: - uses: actions/checkout@v2 - name: install packages (Ubuntu) @@ -46,8 +52,8 @@ jobs: # heh, works on Linux/BSD/macOS ... echo "NPROC=`getconf _NPROCESSORS_ONLN 2>/dev/null || getconf NPROCESSORS_ONLN 2>/dev/null || echo 1`" >> $GITHUB_ENV - name: bootstrap bmake - run: ./tools/build/make.py --debug $EXTRA_BUILD_ARGS TARGET=amd64 TARGET_ARCH=amd64 -n + run: ./tools/build/make.py --debug $EXTRA_BUILD_ARGS TARGET=${{ matrix.target }} TARGET_ARCH=${{ matrix.target_arch }} -n - name: make kernel-toolchain - run: ./tools/build/make.py --debug $EXTRA_BUILD_ARGS TARGET=amd64 TARGET_ARCH=amd64 kernel-toolchain -s -j$NPROC + run: ./tools/build/make.py --debug $EXTRA_BUILD_ARGS TARGET=${{ matrix.target }} TARGET_ARCH=${{ matrix.target_arch }} kernel-toolchain -s -j$NPROC - name: make buildkernel - run: ./tools/build/make.py --debug $EXTRA_BUILD_ARGS TARGET=amd64 TARGET_ARCH=amd64 KERNCONF=GENERIC NO_MODULES=yes buildkernel -s -j$NPROC $EXTRA_MAKE_ARGS + run: ./tools/build/make.py --debug $EXTRA_BUILD_ARGS TARGET=${{ matrix.target }} TARGET_ARCH=${{ matrix.target_arch }} KERNCONF=GENERIC NO_MODULES=yes buildkernel -s -j$NPROC $EXTRA_MAKE_ARGS