Patchwork New patch to review: 063683f util/crossgcc: Skip gdb by running buildgcc with -G or --skip-gdb

login
register
about
Submitter gerrit@coreboot.org
Date 2011-06-09 03:02:22
Message ID <E1QUVVm-0007ct-Kl@ra.coresystems.de>
Download mbox | patch
Permalink /patch/3090/
State New, archived
Headers show

Comments

gerrit@coreboot.org - 2011-06-09 03:02:22
Peter Stuge (peter@stuge.se) just uploaded a new patch set to gerrit, which you can find at
http://review.coreboot.org/15

-gerrit

Patch

commit 063683f5d7fa0bf77a7d9c87cf65014cec401017
Author: Peter Stuge <peter@stuge.se>
Date:   Thu Jun 9 04:54:16 2011 +0200

    util/crossgcc: Skip gdb by running buildgcc with -G or --skip-gdb
    
    Change-Id: Ic31130774ad56abf0b5498b04b4890348352a621
    Signed-off-by: Peter Stuge <peter@stuge.se>

diff --git a/util/crossgcc/buildgcc b/util/crossgcc/buildgcc
index 26fbc66..9211cfd 100755
--- a/util/crossgcc/buildgcc
+++ b/util/crossgcc/buildgcc
@@ -59,6 +59,7 @@  W32API_DIR="w32api-${W32API_VERSION}-mingw32"
 MINGWRT_DIR="mingwrt-${MINGWRT_VERSION}-mingw32"
 
 SAVETEMPS=0
+SKIPGDB=0
 
 red='\e[0;31m'
 RED='\e[1;31m'
@@ -100,7 +101,7 @@  cleanup()
 
 myhelp()
 {
-	printf "Usage: $0 [-V] [-c] [-p <platform>] [-d <target directory>] [-D <dest dir>]\n"
+	printf "Usage: $0 [-V] [-c] [-p <platform>] [-d <target directory>] [-D <dest dir>] [-G]\n"
 	printf "       $0 [-V|--version]\n"
 	printf "       $0 [-h|--help]\n\n"
 
@@ -116,6 +117,7 @@  myhelp()
 	printf "                                  (defaults to $TARGETDIR)\n\n"
 	printf "    [-D|--destdir <dest dir>]     destination directory to install cross compiler to\n"
 	printf "                                  (for RPM builds, default unset)\n\n"
+	printf "    [-G|--skip-gdb]               don't build GNU debugger\n"
 }
 
 myversion()
@@ -147,11 +149,11 @@  getopt - > /dev/null 2>/dev/null || gcc -o getopt getopt.c
 getoptbrand="`getopt -V`"
 if [ "${getoptbrand:0:6}" == "getopt" ]; then
 	# Detected GNU getopt that supports long options.
-	args=`getopt -l version,help,clean,directory:,platform:,jobs:,destdir:,savetemps Vhcd:p:j:D:t -- "$@"`
+	args=`getopt -l version,help,clean,directory:,platform:,jobs:,destdir:,savetemps,skip-gdb Vhcd:p:j:D:tG -- "$@"`
 	eval set "$args"
 else
 	# Detected non-GNU getopt
-	args=`getopt Vhcd:p:j:D:t $*`
+	args=`getopt Vhcd:p:j:D:tG $*`
 	set -- $args
 fi
 
@@ -170,12 +172,19 @@  while true ; do
 		-p|--platform)	shift; TARGETARCH="$1"; shift;;
 		-D|--destdir)	shift; DESTDIR="$1"; shift;;
 		-j|--jobs)	shift; JOBS="-j $1"; shift;;
+		-G|--skip-gdb)	shift; SKIPGDB=1;;
 		--)		shift; break;;
 		-*)		printf "Invalid option\n\n"; myhelp; exit 1;;
 		*)		break;;
 	esac
 done
 
+GDB_PACKAGE="GDB"
+if [ $SKIPGDB -eq 1 ]; then
+	printf "Will skip GDB ... ${green}ok${NC}\n"
+	GDB_PACKAGE=""
+fi
+
 MINGW_ARCHIVES=""
 if [ "$TARGETARCH" = "i386-mingw32" ]; then
 	MINGW_ARCHIVES="$W32API_ARCHIVE $MINGWRT_ARCHIVE"
@@ -228,7 +237,7 @@  if [ "$TARGETARCH" = "i386-mingw32" ]; then
 fi
 
 printf "Unpacking and patching ... \n"
-for PACKAGE in GMP MPFR MPC LIBELF GCC BINUTILS GDB $MINGW_PACKAGES; do
+for PACKAGE in GMP MPFR MPC LIBELF GCC BINUTILS $GDB_PACKAGE $MINGW_PACKAGES; do
 	archive=$PACKAGE"_ARCHIVE"
 	archive=${!archive}
 	dir=$PACKAGE"_DIR"
@@ -275,7 +284,10 @@  if [ `uname` = "Darwin" ]; then
 	#rm .architecture_check.c .architecture_check.o
 fi
 
-mkdir -p build-gmp build-mpfr build-mpc build-libelf build-binutils build-gcc build-gdb
+mkdir -p build-gmp build-mpfr build-mpc build-libelf build-binutils build-gcc
+if [ $SKIPGDB -eq 0 ]; then
+	mkdir -p build-gdb
+fi
 if [ -f build-gmp/.success ]; then
 	printf "Skipping GMP as it is already built\n"
 else
@@ -415,6 +427,8 @@  fi
 
 if [ -f build-gdb/.success ]; then
 	printf "Skipping GDB as it is already built\n"
+elif [ $SKIPGDB -eq 1 ]; then
+	printf "Skipping GDB as requested by command line\n"
 else
 printf "Building GDB ${GDB_VERSION} ... "
 (