From 9c4dbdff1d56da18453fbaba03c9969a298376ef Mon Sep 17 00:00:00 2001 From: Laszlo Ersek Date: Thu, 14 Jul 2016 13:29:10 +0200 Subject: [PATCH] BaseTools/tools_def.template: bump minimum required NASM versions NASM had been unable to assemble segment register operations before the following git commit: http://repo.or.cz/nasm.git/commitdiff/21d4ccc3c338 That commit was first released in NASM 2.10: http://repo.or.cz/nasm.git/commitdiff/ff62f33da0a2 This makes NASM 2.07 unusable for edk2 in general, because now we have a lot of X64 assembly code that works with segment registers. For example in: UefiCpuPkg/Library/CpuExceptionHandlerLib/X64/ExceptionHandlerAsm.nasm Bump the minimum required version to 2.10, for use with GCC toolchains. Furthermore, list NASM 2.12.01 as a requirement for all other toolchains. In particular, for source level debugging, VS20xx requires CodeView 8 debug symbols, and only NASM 2.12.01 and later produce those. (Suggested by Liming, Mike, and Andrew.) Cc: Andrew Fish Cc: Liming Gao Cc: Michael Kinney Cc: Yonghong Zhu Ref: http://thread.gmane.org/gmane.comp.bios.edk2.devel/14612 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek Reviewed-by: Liming Gao --- BaseTools/Conf/tools_def.template | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index 2065fa3499..95304fbebd 100644 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -708,7 +708,9 @@ DEFINE SOURCERY_CYGWIN_TOOLS = /cygdrive/c/Program Files/CodeSourcery/Sourcery G # # Other Supported Tools # ===================== -# NASM 2.07 or later http://www.nasm.us/ +# NASM -- http://www.nasm.us/ +# - NASM 2.10 or later for use with the GCC toolchain family +# - NASM 2.12.01 or later for use with all other toolchain families # #################################################################################### ####################################################################################