Skip to content

ci: Allow EfiLoaderData code execution in AArch64 build #56

ci: Allow EfiLoaderData code execution in AArch64 build

ci: Allow EfiLoaderData code execution in AArch64 build #56

Workflow file for this run

name: Cloud Hypervisor edk2 release
on: [create, push]
jobs:
build-x64:
name: Build x86-64
runs-on: ubuntu-24.04
steps:
- name: Code checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install dependencies
run: sudo apt-get update && sudo apt-get -y install uuid-dev iasl build-essential git libbrotli-dev
- name: Install nasm
run: |
wget https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.xz
tar -xf nasm-2.15.05.tar.xz
pushd nasm-2.15.05/
./configure --prefix=/usr
make
sudo make install
popd
- name: Init submodules
run: git submodule update --init --recursive
- name: Build BaseTools and firmware
run: |
source edksetup.sh
make -C BaseTools
OvmfPkg/build.sh -p OvmfPkg/CloudHv/CloudHvX64.dsc -a X64 -b DEBUG
- name: Upload x86-64 artifact
if: github.event_name == 'create' && github.event.ref_type == 'tag'
uses: actions/upload-artifact@v4
with:
name: cloudhv-x64
path: Build/CloudHvX64/DEBUG_GCC5/FV/CLOUDHV.fd
build-aarch64:
name: Build AArch64
runs-on: ubuntu-24.04
steps:
- name: Code checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install dependencies
run: sudo apt-get update && sudo apt-get -y install uuid-dev iasl build-essential git libbrotli-dev gcc-aarch64-linux-gnu
- name: Init submodules
run: git submodule update --init --recursive
- name: Build BaseTools and firmware
run: |
source edksetup.sh
make -C BaseTools
export GCC5_AARCH64_PREFIX=aarch64-linux-gnu-
build -p ArmVirtPkg/ArmVirtCloudHv.dsc -a AARCH64 -t GCC5 -b DEBUG \
--pcd gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy=0xC000000000007FD1
- name: Upload AArch64 artifact
if: github.event_name == 'create' && github.event.ref_type == 'tag'
uses: actions/upload-artifact@v4
with:
name: cloudhv-aarch64
path: Build/ArmVirtCloudHv-AARCH64/DEBUG_GCC5/FV/CLOUDHV_EFI.fd
release:
name: Release
if: github.event_name == 'create' && github.event.ref_type == 'tag'
needs: [build-x64, build-aarch64]
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
- name: Create release
uses: softprops/action-gh-release@v2
with:
draft: true
files: |
cloudhv-x64/CLOUDHV.fd
cloudhv-aarch64/CLOUDHV_EFI.fd