ts-xen-build-prep | 9 +++++++++ 1 file changed, 9 insertions(+)
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.perard@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
Anthony PERARD writes ("[OSSTEST PATCH] ts-xen-build-prep: Grab newer NASM version, to build OVMF"): > 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. I think this is a quite fine bodge. > + target_fetchurl($ho, $nasm_url, "/tmp/$nasm_pkg"); > + target_install_packages($ho, "/tmp/$nasm_pkg"); I don't think this use of /tmp is very nice. ts-xen-build-prep runs with the host all to itself, so I think you can use /root ? Ian. -- Ian Jackson <ijackson@chiark.greenend.org.uk> These opinions are my own. Pronouns: they/he. If I emailed you from @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.
On Fri, May 13, 2022 at 02:35:34PM +0100, Anthony PERARD wrote: > 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.perard@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"); I think this is likely too fragile, what will happen when the package gets bumped to a newer version? I think we need to store a local copy in osstest and install from there instead of trying to fetch from the upstream Debian mirror. I guess we could use something similar to DebianExtraPackages? DebianExtraPackages_build_$arch_$suite nasm_2.15.05-1_$ho->{Arch}.deb And fetch those using the some_extradebs method. Thanks, Roger.
Roger Pau Monné writes ("Re: [OSSTEST PATCH] ts-xen-build-prep: Grab newer NASM version, to build OVMF"): > I guess we could use something similar to DebianExtraPackages? > > DebianExtraPackages_build_$arch_$suite nasm_2.15.05-1_$ho->{Arch}.deb > > And fetch those using the some_extradebs method. Yes, I think this is better. -- Ian Jackson <ijackson@chiark.greenend.org.uk> These opinions are my own. Pronouns: they/he. If I emailed you from @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.
On Fri, May 13, 2022 at 02:35:34PM +0100, Anthony PERARD wrote: > 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.perard@citrix.com> A flight with my change: http://logs.test-lab.xenproject.org/osstest/logs/170388/ (ignore the failing "libvirt-build" jobs which shouldn't be part of the flight ;-) ) -- Anthony PERARD
© 2016 - 2024 Red Hat, Inc.