[coreboot] r3477 - in trunk/payloads: coreinfo libpayload/bin

svn at coreboot.org svn at coreboot.org
Thu Aug 7 17:22:02 CEST 2008


Author: stepan
Date: 2008-08-07 17:22:01 +0200 (Thu, 07 Aug 2008)
New Revision: 3477

Modified:
   trunk/payloads/coreinfo/Makefile
   trunk/payloads/libpayload/bin/lpgcc
Log:
fix cross compilationor libpayload / coreinfo by honoring
the setting of CC in the payload (coreinfo) when calling
 
make CC=i386-elf-gcc AS=i386-elf-as AR=i386-elf-ar STRIP=i386-elf-strip

This still does not cope with the hardcoded -fno-stack-protector in
libpayload's Makefile.

Signed-off-by: Stefan Reinauer <stepan at coresystems.de>
Acked-by: Peter Stuge <peter at stuge.se>



Modified: trunk/payloads/coreinfo/Makefile
===================================================================
--- trunk/payloads/coreinfo/Makefile	2008-08-07 14:35:39 UTC (rev 3476)
+++ trunk/payloads/coreinfo/Makefile	2008-08-07 15:22:01 UTC (rev 3477)
@@ -45,8 +45,9 @@
 HOSTCXXFLAGS := -I$(srck) -I$(objk)
 
 LIBPAYLOAD_DIR := ../libpayload
-CC = $(LIBPAYLOAD_DIR)/bin/lpgcc
+XCC := CC=$(CC) $(LIBPAYLOAD_DIR)/bin/lpgcc
 AS = $(LIBPAYLOAD_DIR)/bin/lpas
+STRIP ?= strip
 
 INCLUDES = -Ibuild
 CFLAGS := -Wall -Werror -Os $(INCLUDES)
@@ -68,9 +69,9 @@
 
 $(TARGET): $(src)/.config $(OBJS)
 	$(Q)printf "  LD      $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(CC) -o $@ $(OBJS)
+	$(Q)$(XCC) -o $@ $(OBJS)
 	$(Q)printf "  STRIP   $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)strip -s $@
+	$(Q)$(STRIP) -s $@
 
 $(obj)/%.S.o: $(src)/%.S
 	$(Q)printf "  AS      $(subst $(shell pwd)/,,$(@))\n"
@@ -78,7 +79,7 @@
 
 $(obj)/%.o: $(src)/%.c
 	$(Q)printf "  CC      $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(CC) $(CFLAGS) -c -o $@ $<
+	$(Q)$(XCC) $(CFLAGS) -c -o $@ $<
 
 endif
 

Modified: trunk/payloads/libpayload/bin/lpgcc
===================================================================
--- trunk/payloads/libpayload/bin/lpgcc	2008-08-07 14:35:39 UTC (rev 3476)
+++ trunk/payloads/libpayload/bin/lpgcc	2008-08-07 15:22:01 UTC (rev 3477)
@@ -28,8 +28,11 @@
 
 # GCC wrapper for libpayload
 
-DEFAULT_PREFIX=/opt
+if [ "$CC" != "" ]; then
+DEFAULT_CC=$CC
+else
 DEFAULT_CC=gcc
+fi
 
 BASE=`dirname $0`
 
@@ -37,9 +40,10 @@
 . $BASE/lp.functions
 
 trygccoption() {
-	$DEFAULT_CC $1 -S -xc /dev/null -o .$$.tmp > /dev/null
+	$DEFAULT_CC $1 -S -xc /dev/null -o .$$.tmp &> /dev/null
+	RET=$?
 	rm -f .$$.tmp
-	return $?
+	return $RET
 }
 
 DEBUGME=0





More information about the coreboot mailing list