summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2023-01-03 16:02:41 +0100
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2023-01-04 09:45:06 +0000
commit12e4043bd61a67d9cab423aa48dc45adce1769cc (patch)
tree1990b7e22850bbe79fa9d44bdb72dfe444a2dc58
parent992d5451d19b93635d52db293bab680e32142776 (diff)
downloadedk2-12e4043bd61a67d9cab423aa48dc45adce1769cc.zip
edk2-12e4043bd61a67d9cab423aa48dc45adce1769cc.tar.gz
edk2-12e4043bd61a67d9cab423aa48dc45adce1769cc.tar.bz2
OvmfPkg/QemuVideoDxe/VbeShim.sh: remove end-of-options delimiter for nasm
Per my bisection: nasm broke the parsing of the "--" end-of-options delimiter in commit 55568c1193df ("nasm: scan the command line twice", 2016-10-03), part of the nasm-2.13 release. The parsing remains broken in at least nasm-2.15.03. The (invalid) error message is: "more than one input file specified". I've filed the following ticket for upstream nasm (and ndisasm): <https://bugzilla.nasm.us/show_bug.cgi?id=3392829>. Since the delimiter is not necessary in practice (due to $STEM being "VbeShim", i.e., not starting with a hyphen), simply remove the delimiter. Tested by enabling DEBUG in "VbeShim.asm", running the script, building OVMF, booting Windows 7, and checking the firmware log (debug console). Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3876 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
-rwxr-xr-xOvmfPkg/QemuVideoDxe/VbeShim.sh7
1 files changed, 5 insertions, 2 deletions
diff --git a/OvmfPkg/QemuVideoDxe/VbeShim.sh b/OvmfPkg/QemuVideoDxe/VbeShim.sh
index aea28be..7a0095a 100755
--- a/OvmfPkg/QemuVideoDxe/VbeShim.sh
+++ b/OvmfPkg/QemuVideoDxe/VbeShim.sh
@@ -27,12 +27,15 @@ trap exit_handler EXIT
#
# Assemble the source file.
+# (nasm doesn't recognize the "--" end-of-options delimiter;
+# <https://bugzilla.nasm.us/show_bug.cgi?id=3392829>.)
#
-nasm -o "$STEM".bin -- "$STEM".asm
+nasm -o "$STEM".bin "$STEM".asm
#
# Disassemble it, in order to get a binary dump associated with the source.
-# (ndisasm doesn't recognize the "--" end-of-options delimiter.)
+# (ndisasm doesn't recognize the "--" end-of-options delimiter;
+# <https://bugzilla.nasm.us/show_bug.cgi?id=3392829>.)
#
ndisasm "$STEM".bin >"$STEM".disasm