Recent versions of OVMF now need a version of NASM that is newer
than the one available on Debian oldstable/buster. They want to use
NASM 2.15.05 [1], which is available in Debian stable/bullseye. The
need to use a newer version started with d3febfd9ade3 ("MdePkg:
Replace Opcode with the corresponding instructions.").

There is no backport package available but the nasm package from
Debian Bullseye can easily be installed on Buster as it has few
dependencies and are already satisfied.

[1] 
https://github.com/tianocore/edk2/commit/6a890db161cd6d378bec3499a1e774db3f5a27a7
    ("BaseTools: Upgrade the version of NASM tool")

Signed-off-by: Anthony PERARD <anthony.per...@citrix.com>
---
 ts-xen-build-prep | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index 67b3eae62155..38d4a8e79451 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -250,6 +250,15 @@ END
     if ($ho->{Arch} eq 'amd64' && $ho->{Suite} !~ m/squeeze|lenny/) {
         target_install_packages($ho, 'libc6-dev-i386');
     }
+
+    # Use newer version of NASM, for OVMF
+    if ($ho->{Suite} =~ m/buster/) {
+        my $nasm_pkg = "nasm_2.15.05-1_$ho->{Arch}.deb";
+        my $nasm_url = debian_mirror_url_suite_arch("bullseye", $ho->{Arch})
+                       ."/pool/main/n/nasm/$nasm_pkg";
+        target_fetchurl($ho, $nasm_url, "/tmp/$nasm_pkg");
+        target_install_packages($ho, "/tmp/$nasm_pkg");
+    }
 }
 
 sub ccache_setup () {
-- 
Anthony PERARD


Reply via email to