[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] raisin: enable ovmf build for arm64



Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

diff --git a/components/ovmf b/components/ovmf
index ffdde19..d2ed96c 100644
--- a/components/ovmf
+++ b/components/ovmf
@@ -1,7 +1,7 @@
 #!/usr/bin/env bash
 
 function ovmf_skip() {
-    if [[ $RAISIN_ARCH != "x86_64" && $RAISIN_ARCH != "x86_32" ]]
+    if [[ $RAISIN_ARCH = "arm32" ]]
     then
         return 0
     else
@@ -10,15 +10,23 @@ function ovmf_skip() {
 }
 
 function ovmf_check_package() {
-    local DEP_Debian_common="build-essential nasm uuid-dev python iasl"
-    local DEP_Debian_x86_32="$DEP_Debian_common"
-    local DEP_Debian_x86_64="$DEP_Debian_common"
+    local DEP_Debian_common="build-essential uuid-dev python iasl"
+    local DEP_Debian_x86_32="$DEP_Debian_common nasm"
+    local DEP_Debian_x86_64="$DEP_Debian_common nasm"
     local DEP_Debian_arm32="$DEP_Debian_common"
     local DEP_Debian_arm64="$DEP_Debian_common"
 
-    local DEP_Fedora_common="make gcc gcc-c++ nasm libuuid-devel python 
acpica-tools"
-    local DEP_Fedora_x86_32="$DEP_Fedora_common"
-    local DEP_Fedora_x86_64="$DEP_Fedora_common"
+    local DEP_Fedora_common="make gcc gcc-c++ libuuid-devel python 
acpica-tools"
+    local DEP_Fedora_x86_32="$DEP_Fedora_common nasm"
+    local DEP_Fedora_x86_64="$DEP_Fedora_common nasm"
+    local DEP_Fedora_arm32="$DEP_Debian_common"
+    local DEP_Fedora_arm64="$DEP_Debian_common"
+
+    local DEP_CentOS_common="$DEP_Fedora_common"
+    local DEP_CentOS_x86_32="$DEP_Fedora_x86_32"
+    local DEP_CentOS_x86_64="$DEP_Fedora_x86_64"
+    local DEP_CentOS_arm32="$DEP_Fedora_arm32"
+    local DEP_CentOS_arm64="$DEP_Fedora_arm64"
 
     verbose_echo Checking OVMF dependencies
     eval check-package \$DEP_"$DISTRO"_"$RAISIN_ARCH"
@@ -30,9 +38,18 @@ function ovmf_build() {
     git-checkout $OVMF_URL $OVMF_REVISION ovmf-dir
     cd ovmf-dir
 
-    make -C BaseTools/Source/C
-    OvmfPkg/build.sh -a X64 -b RELEASE -n 4
-    cp Build/OvmfX64/RELEASE_GCC*/FV/OVMF.fd ovmf.bin
+    make -C BaseTools
+
+    if [[ $RAISIN_ARCH = "arm64" ]]
+    then
+        export GCC48_AARCH64_PREFIX=
+        bash -c "source edksetup.sh && build -a AARCH64 -t GCC48 -p 
ArmVirtPkg/ArmVirtXen.dsc -b RELEASE"
+        mkdir -p "$INST_DIR"/$PREFIX/lib/xen/boot
+        cp Build/ArmVirtXen-AARCH64/RELEASE_GCC*/FV/XEN_EFI.fd 
"$INST_DIR"/$PREFIX/lib/xen/boot/XEN_EFI.fd
+    else
+        OvmfPkg/build.sh -a X64 -b RELEASE -n 4
+        cp Build/OvmfX64/RELEASE_GCC*/FV/OVMF.fd ovmf.bin
+    fi
 
     cd "$BASEDIR"
 }

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.