[coreboot-gerrit] New patch to review for coreboot: crossgcc: Add option to build gcc for specific languages

Nico Huber (nico.h@gmx.de) gerrit at coreboot.org
Tue Sep 8 14:40:37 CET 2015


Nico Huber (nico.h at gmx.de) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11589

-gerrit

commit c71944add3b3881fa52416eb476182e94213862a
Author: Nico Huber <nico.huber at secunet.com>
Date:   Tue Sep 8 12:30:27 2015 +0200

    crossgcc: Add option to build gcc for specific languages
    
    Add an option `--languages` which takes a list of target languages to
    buildgcc. That list gets passed through to the configure step for
    building gcc.
    
    Also alter the Makefile to pass $(BUILD_LANGUAGES) to that option, if
    this variable is set.
    
    Change-Id: I6a74ab2c75871ea8d03a499cca33d88938b59c8d
    Signed-off-by: Nico Huber <nico.huber at secunet.com>
---
 util/crossgcc/Makefile |  3 ++-
 util/crossgcc/buildgcc | 10 +++++++---
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/util/crossgcc/Makefile b/util/crossgcc/Makefile
index b1fba4a..262f4d2 100644
--- a/util/crossgcc/Makefile
+++ b/util/crossgcc/Makefile
@@ -19,7 +19,8 @@ build_tools_without_gdb: build_gcc build_iasl
 ### targets to do buildgcc builds
 
 build_gcc:
-	bash ./buildgcc -p $(BUILD_PLATFORM) $(if $(BUILDJOBS),-j $(BUILDJOBS)) $(BUILDGCC_OPTIONS)
+	bash ./buildgcc -p $(BUILD_PLATFORM) $(if $(BUILDJOBS),-j $(BUILDJOBS)) $(BUILDGCC_OPTIONS) \
+			$(if $(BUILD_LANGUAGES),-l $(BUILD_LANGUAGES))
 
 build_gdb:
 	bash ./buildgcc -p $(BUILD_PLATFORM) -P gdb $(if $(BUILDJOBS),-j $(BUILDJOBS)) $(BUILDGCC_OPTIONS)
diff --git a/util/crossgcc/buildgcc b/util/crossgcc/buildgcc
index 49e41e5..049ace4 100755
--- a/util/crossgcc/buildgcc
+++ b/util/crossgcc/buildgcc
@@ -29,6 +29,7 @@ CROSSGCC_VERSION="1.32"
 PACKAGE=GCC
 TARGETDIR=$(pwd)/xgcc
 TARGETARCH=i386-elf
+LANGUAGES=c
 DESTDIR=
 SAVETEMPS=0
 SKIPPYTHON=1
@@ -310,6 +311,8 @@ myhelp()
 	printf "GCC specific options:\n"
 	printf "    [-p|--platform <platform>]    target platform to build cross compiler for\n"
 	printf "                                  (defaults to $TARGETARCH)\n"
+	printf "    [-l|--languages <languages>]  comma separated list of target languages\n"
+	printf "                                  (defaults to $LANGUAGES)\n"
 	printf "GDB specific options:\n"
 	printf "    [-p|--platform <platform>]    target platform to build cross compiler for\n"
 	printf "                                  (defaults to $TARGETARCH)\n"
@@ -416,7 +419,7 @@ build_GCC() {
 		--enable-lto --enable-plugins --enable-gold --enable-ld=default \
 		--disable-libssp --disable-bootstrap --disable-nls \
 		--disable-libquadmath --without-headers \
-		${GCC_OPTIONS} --enable-languages="c" \
+		${GCC_OPTIONS} --enable-languages="${LANGUAGES}" \
 		--with-gmp=$DESTDIR$TARGETDIR --with-mpfr=$DESTDIR$TARGETDIR \
 		--with-mpc=$DESTDIR$TARGETDIR --with-libelf=$DESTDIR$TARGETDIR \
 		--with-pkgversion="coreboot toolchain v$CROSSGCC_VERSION $CROSSGCC_DATE" \
@@ -508,11 +511,11 @@ getopt - > /dev/null 2>/dev/null || gcc -o getopt getopt.c
 getoptbrand="$(getopt -V | sed -e '1!d' -e 's,^\(......\).*,\1,')"
 if [ "${getoptbrand}" = "getopt" ]; then
 	# Detected GNU getopt that supports long options.
-	args=$(getopt -l version,help,clean,directory:,platform:,package:,jobs:,destdir:,savetemps,scripting,ccache Vhcd:p:P:j:D:tSy -- "$@")
+	args=$(getopt -l version,help,clean,directory:,platform:,languages:,package:,jobs:,destdir:,savetemps,scripting,ccache Vhcd:p:l:P:j:D:tSy -- "$@")
 	eval set "$args"
 else
 	# Detected non-GNU getopt
-	args=$(getopt Vhcd:p:P:j:D:tSy $*)
+	args=$(getopt Vhcd:p:l:P:j:D:tSy $*)
 	set -- $args
 fi
 
@@ -529,6 +532,7 @@ while true ; do
 		-t|--savetemps)	shift; SAVETEMPS=1;;
 		-d|--directory)	shift; TARGETDIR="$1"; shift;;
 		-p|--platform)	shift; TARGETARCH="$1"; shift;;
+		-l|--languages)	shift; LANGUAGES="$1"; shift;;
 		-D|--destdir)	shift; DESTDIR="$1"; shift;;
 		-j|--jobs)	shift; JOBS="-j $1"; shift;;
 		-P|--package)   shift; PACKAGE="$1"; shift;;



More information about the coreboot-gerrit mailing list