Skip to content

Commit

Permalink
Attempt to build libddwaf on arm64 runner (#270)
Browse files Browse the repository at this point in the history
  • Loading branch information
Anilm3 authored Mar 4, 2024
1 parent d438b4e commit a6352db
Showing 1 changed file with 44 additions and 17 deletions.
61 changes: 44 additions & 17 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -206,17 +206,12 @@ jobs:
/tmp/packages/*.tar.gz
/tmp/packages/*.sha256
linux-musl-build:
linux-musl-build-amd64:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
target:
- name: aarch64
arch: aarch64
qemu_action_arch: arm64
platform: linux/arm64
package: libddwaf-aarch64-linux-musl
- name: x86_64
arch: x86_64
qemu_action_arch: amd64
Expand All @@ -227,11 +222,6 @@ jobs:
qemu_action_arch: i386
platform: linux/386
package: libddwaf-i386-linux-musl
- name: armv7
arch: armv7
qemu_action_arch: arm
platform: linux/arm/v7
package: libddwaf-armv7-linux-musl
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -240,10 +230,6 @@ jobs:
id: buildx
with:
install: true
- uses: docker/setup-qemu-action@v3
if: matrix.target.qemu_action_arch == 'arm64'
with:
platforms: ${{ matrix.target.qemu_action_arch }}
- run: docker build --progress=plain --build-arg "ARCH=${{ matrix.target.arch }}" -f docker/libddwaf/build/Dockerfile -o packages .
- name: Smoketest musl (gcc)
run: docker build --progress=plain --platform ${{ matrix.target.platform }} --build-arg "ARCH=${{ matrix.target.arch }}" -f docker/libddwaf/smoketest/musl/Dockerfile .
Expand All @@ -264,8 +250,49 @@ jobs:
packages/*.tar.gz
packages/*.sha256
linux-musl-build-arm64:
runs-on: arm-4core-linux
strategy:
fail-fast: false
matrix:
target:
- name: aarch64
arch: aarch64
qemu_action_arch: arm64
platform: linux/arm64
package: libddwaf-aarch64-linux-musl
- name: armv7
arch: armv7
qemu_action_arch: arm
platform: linux/arm/v7
package: libddwaf-armv7-linux-musl
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install docker
run: |
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
- run: sudo docker build --progress=plain --build-arg "ARCH=${{ matrix.target.arch }}" -f docker/libddwaf/build/Dockerfile -o packages .
- name: Smoketest musl (gcc)
run: sudo docker build --progress=plain --platform ${{ matrix.target.platform }} --build-arg "ARCH=${{ matrix.target.arch }}" -f docker/libddwaf/smoketest/musl/Dockerfile .
- name: Smoketest musl (clang)
run: sudo docker build --progress=plain --platform ${{ matrix.target.platform }} --build-arg "ARCH=${{ matrix.target.arch }}" -f docker/libddwaf/smoketest/musl_llvm/Dockerfile .
- name: Smoketest gnu (gcc)
run: sudo docker build --progress=plain --platform ${{ matrix.target.platform }} --build-arg "ARCH=${{ matrix.target.arch }}" -f docker/libddwaf/smoketest/gnu/Dockerfile .
- name: Generate Package sha256
working-directory: packages
run: for file in *.tar.gz; do sha256sum "$file" > "$file.sha256"; done
- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.target.package }}
path: |
packages/*.tar.gz
packages/*.sha256
package-nuget:
needs: [ windows-builds, macos-universal-package, linux-musl-build]
needs: [ windows-builds, macos-universal-package, linux-musl-build-amd64, linux-musl-build-arm64]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -321,7 +348,7 @@ jobs:
path: ${{ github.workspace }}/output-packages

release:
needs: [ windows-builds, macos-build, macos-cross-build, docker-builds, linux-musl-build, package-nuget]
needs: [ windows-builds, macos-build, macos-cross-build, docker-builds, linux-musl-build-amd64, linux-musl-build-arm64, package-nuget]
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
steps:
Expand Down

0 comments on commit a6352db

Please sign in to comment.