diff options
author | Michael Brown <mcb30@ipxe.org> | 2021-02-03 16:06:35 +0000 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2021-02-04 16:41:55 +0000 |
commit | eeca29a1e0e982870c00e82b2d2f19f379e675ce (patch) | |
tree | df81e8c2e22a9c4fd20856596d4c6e8db7f4f227 /.github | |
parent | e8393c3728bf7073d033410373ef6781549c7c3e (diff) | |
download | ipxe-eeca29a1e0e982870c00e82b2d2f19f379e675ce.tar.gz |
[ci] Add GitHub action for build testing
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/build.yml | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..d890dfb13 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,69 @@ +name: Build + +on: push + +jobs: + + x86: + name: x86 + runs-on: ubuntu-20.04 + steps: + - name: Check out code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Install packages + run: | + sudo apt update + sudo apt install -y -o Acquire::Retries=50 \ + mtools syslinux isolinux libc6-dev-i386 valgrind + - name: Build (BIOS) + run: | + make -j 4 -C src + - name: Build (Everything) + run: | + make -j 4 -C src everything + - name: Test + run: | + valgrind ./src/bin-i386-linux/tests.linux + valgrind ./src/bin-x86_64-linux/tests.linux + + arm32: + name: ARM32 + runs-on: ubuntu-20.04 + steps: + - name: Check out code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Install packages + run: | + sudo apt update + sudo apt install -y -o Acquire::Retries=50 \ + mtools syslinux isolinux gcc-arm-none-eabi + - name: Build + run: | + make -j 4 -C src CROSS=arm-none-eabi- \ + bin-arm32-efi/intel.efi \ + bin-arm32-efi/intel.usb \ + bin-arm32-efi/intel.iso + + arm64: + name: ARM64 + runs-on: ubuntu-20.04 + steps: + - name: Check out code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Install packages + run: | + sudo apt update + sudo apt install -y -o Acquire::Retries=50 \ + mtools syslinux isolinux gcc-aarch64-linux-gnu + - name: Build + run: | + make -j 4 -C src CROSS=aarch64-linux-gnu- \ + bin-arm64-efi/ipxe.efi \ + bin-arm64-efi/ipxe.usb \ + bin-arm64-efi/ipxe.iso |