From c2462a1fcd6cf2224e05bc437cb8625a594d70fe Mon Sep 17 00:00:00 2001 From: Laszlo Ersek <lersek@redhat.com> Date: Wed, 29 Jan 2014 13:13:11 +0100 Subject: [PATCH] tools_def.template: take GCC4?_(IA32|X64) prefixes from the environment The default BaseTools compiler configuration hard-codes the prefix for gcc (== /usr/bin). While this matches the gcc-4.x installation path on most distributions, it prevents users from specifying gcc-4.x binaries in different locations. Replace the hard-coded prefixes with environment variables. Users can set the prefixes explicitly, or leave the variables unset, in which case PATH will be searched as usual. A practical use case for this patch is distcc, installed in "masquerade mode". edk2 supports parallel builds, and distcc can greatly speed it up. Signed-off-by: Laszlo Ersek <lersek@redhat.com> --- BaseTools/Conf/tools_def.template | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index c0f505c..53f3c8f 100644 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -165,23 +165,23 @@ DEFINE CYGWIN_BINIA32 = c:/cygwin/opt/tiano/i386-tiano-pe/i386-tiano-pe DEFINE CYGWIN_BINX64 = c:/cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin/ DEFINE CYGWIN_BINIPF = c:/cygwin/opt/tiano/gcc/ipf/bin/ia64-pc-elf- -DEFINE GCC44_IA32_PREFIX = ENV(GCC44_BIN) -DEFINE GCC44_X64_PREFIX = ENV(GCC44_BIN) +DEFINE GCC44_IA32_PREFIX = ENV(GCC44_BIN)ENV(GCC44_IA32_PREFIX) +DEFINE GCC44_X64_PREFIX = ENV(GCC44_BIN)ENV(GCC44_X64_PREFIX) -DEFINE GCC45_IA32_PREFIX = ENV(GCC45_BIN) -DEFINE GCC45_X64_PREFIX = ENV(GCC45_BIN) +DEFINE GCC45_IA32_PREFIX = ENV(GCC45_BIN)ENV(GCC45_IA32_PREFIX) +DEFINE GCC45_X64_PREFIX = ENV(GCC45_BIN)ENV(GCC45_X64_PREFIX) -DEFINE GCC46_IA32_PREFIX = ENV(GCC46_BIN) -DEFINE GCC46_X64_PREFIX = ENV(GCC46_BIN) +DEFINE GCC46_IA32_PREFIX = ENV(GCC46_BIN)ENV(GCC46_IA32_PREFIX) +DEFINE GCC46_X64_PREFIX = ENV(GCC46_BIN)ENV(GCC46_X64_PREFIX) -DEFINE GCC47_IA32_PREFIX = ENV(GCC47_BIN) -DEFINE GCC47_X64_PREFIX = ENV(GCC47_BIN) +DEFINE GCC47_IA32_PREFIX = ENV(GCC47_BIN)ENV(GCC47_IA32_PREFIX) +DEFINE GCC47_X64_PREFIX = ENV(GCC47_BIN)ENV(GCC47_X64_PREFIX) -DEFINE GCC48_IA32_PREFIX = ENV(GCC48_BIN) -DEFINE GCC48_X64_PREFIX = ENV(GCC48_BIN) +DEFINE GCC48_IA32_PREFIX = ENV(GCC48_BIN)ENV(GCC48_IA32_PREFIX) +DEFINE GCC48_X64_PREFIX = ENV(GCC48_BIN)ENV(GCC48_X64_PREFIX) -DEFINE GCC49_IA32_PREFIX = ENV(GCC49_BIN) -DEFINE GCC49_X64_PREFIX = ENV(GCC49_BIN) +DEFINE GCC49_IA32_PREFIX = ENV(GCC49_BIN)ENV(GCC49_IA32_PREFIX) +DEFINE GCC49_X64_PREFIX = ENV(GCC49_BIN)ENV(GCC49_X64_PREFIX) DEFINE UNIX_IASL_BIN = ENV(IASL_PREFIX)iasl DEFINE WIN_ASL_BIN_DIR = C:\ASL -- 1.8.3.1