From c44d1e2c7c5a609e7ea3893ddd6baf25ef3f5293 Mon Sep 17 00:00:00 2001
From: Jacob Garber <jgarber1@ualberta.ca>
Date: Wed, 2 Oct 2019 13:37:45 -0600
Subject: xcompile: Use GCC wrappers for ar, nm

When compiling with GCC, use the special wrappers around ar and nm that
provide the path to the plugin they need to understand LTO object files.
These wrappers forward all other functionality to the underlying
programs, so they should otherwise be equivalent.

Change-Id: Ibdae4faabf67bf6a4bb8c38970f6189646ee74b3
Signed-off-by: Jacob Garber <jgarber1@ualberta.ca>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38290
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
---
 util/xcompile/xcompile | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

(limited to 'util/xcompile')

diff --git a/util/xcompile/xcompile b/util/xcompile/xcompile
index a116407b8b..3203d71899 100755
--- a/util/xcompile/xcompile
+++ b/util/xcompile/xcompile
@@ -293,12 +293,17 @@ EOF
 	fi # if [ "${TARCH}" = "arm64" ]...
 
 	cat <<EOF
-NM_${TARCH}:=${GCCPREFIX}nm
+ifeq (\$(CONFIG_COMPILER_GCC)\$(CONFIG_LP_COMPILER_GCC),y)
+	NM_${TARCH}:=${GCCPREFIX}gcc-nm
+	AR_${TARCH}:=${GCCPREFIX}gcc-ar
+else
+	NM_${TARCH}:=${GCCPREFIX}nm
+	AR_${TARCH}:=${GCCPREFIX}ar
+endif
 OBJCOPY_${TARCH}:=${GCCPREFIX}objcopy
 OBJDUMP_${TARCH}:=${GCCPREFIX}objdump
 READELF_${TARCH}:=${GCCPREFIX}readelf
 STRIP_${TARCH}:=${GCCPREFIX}strip
-AR_${TARCH}:=${GCCPREFIX}ar
 GNATBIND_${TARCH}:=${GCCPREFIX}gnatbind
 CROSS_COMPILE_${TARCH}:=${GCCPREFIX}
 
-- 
cgit v1.2.3