util/crossgcc: Add buildgcc -G and --skip-gdb options
Change-Id: Ic31130774ad56abf0b5498b04b4890348352a621 Signed-off-by: Peter Stuge <peter@stuge.se> Reviewed-on: http://review.coreboot.org/15 Tested-by: build bot (Jenkins) Reviewed-by: Marshall Buschman <mbuschman@lucidmachines.com>
This commit is contained in:
		@@ -59,6 +59,7 @@ W32API_DIR="w32api-${W32API_VERSION}-mingw32"
 | 
				
			|||||||
MINGWRT_DIR="mingwrt-${MINGWRT_VERSION}-mingw32"
 | 
					MINGWRT_DIR="mingwrt-${MINGWRT_VERSION}-mingw32"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SAVETEMPS=0
 | 
					SAVETEMPS=0
 | 
				
			||||||
 | 
					SKIPGDB=0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
red='\e[0;31m'
 | 
					red='\e[0;31m'
 | 
				
			||||||
RED='\e[1;31m'
 | 
					RED='\e[1;31m'
 | 
				
			||||||
@@ -100,7 +101,7 @@ cleanup()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
myhelp()
 | 
					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 [-V|--version]\n"
 | 
				
			||||||
	printf "       $0 [-h|--help]\n\n"
 | 
						printf "       $0 [-h|--help]\n\n"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -116,6 +117,7 @@ myhelp()
 | 
				
			|||||||
	printf "                                  (defaults to $TARGETDIR)\n\n"
 | 
						printf "                                  (defaults to $TARGETDIR)\n\n"
 | 
				
			||||||
	printf "    [-D|--destdir <dest dir>]     destination directory to install cross compiler to\n"
 | 
						printf "    [-D|--destdir <dest dir>]     destination directory to install cross compiler to\n"
 | 
				
			||||||
	printf "                                  (for RPM builds, default unset)\n\n"
 | 
						printf "                                  (for RPM builds, default unset)\n\n"
 | 
				
			||||||
 | 
						printf "    [-G|--skip-gdb]               don't build GNU debugger\n"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
myversion()
 | 
					myversion()
 | 
				
			||||||
@@ -147,11 +149,11 @@ getopt - > /dev/null 2>/dev/null || gcc -o getopt getopt.c
 | 
				
			|||||||
getoptbrand="`getopt -V`"
 | 
					getoptbrand="`getopt -V`"
 | 
				
			||||||
if [ "${getoptbrand:0:6}" == "getopt" ]; then
 | 
					if [ "${getoptbrand:0:6}" == "getopt" ]; then
 | 
				
			||||||
	# Detected GNU getopt that supports long options.
 | 
						# 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"
 | 
						eval set "$args"
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
	# Detected non-GNU getopt
 | 
						# Detected non-GNU getopt
 | 
				
			||||||
	args=`getopt Vhcd:p:j:D:t $*`
 | 
						args=`getopt Vhcd:p:j:D:tG $*`
 | 
				
			||||||
	set -- $args
 | 
						set -- $args
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -170,12 +172,19 @@ while true ; do
 | 
				
			|||||||
		-p|--platform)	shift; TARGETARCH="$1"; shift;;
 | 
							-p|--platform)	shift; TARGETARCH="$1"; shift;;
 | 
				
			||||||
		-D|--destdir)	shift; DESTDIR="$1"; shift;;
 | 
							-D|--destdir)	shift; DESTDIR="$1"; shift;;
 | 
				
			||||||
		-j|--jobs)	shift; JOBS="-j $1"; shift;;
 | 
							-j|--jobs)	shift; JOBS="-j $1"; shift;;
 | 
				
			||||||
 | 
							-G|--skip-gdb)	shift; SKIPGDB=1;;
 | 
				
			||||||
		--)		shift; break;;
 | 
							--)		shift; break;;
 | 
				
			||||||
		-*)		printf "Invalid option\n\n"; myhelp; exit 1;;
 | 
							-*)		printf "Invalid option\n\n"; myhelp; exit 1;;
 | 
				
			||||||
		*)		break;;
 | 
							*)		break;;
 | 
				
			||||||
	esac
 | 
						esac
 | 
				
			||||||
done
 | 
					done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					GDB_PACKAGE="GDB"
 | 
				
			||||||
 | 
					if [ $SKIPGDB -eq 1 ]; then
 | 
				
			||||||
 | 
						printf "Will skip GDB ... ${green}ok${NC}\n"
 | 
				
			||||||
 | 
						GDB_PACKAGE=""
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
MINGW_ARCHIVES=""
 | 
					MINGW_ARCHIVES=""
 | 
				
			||||||
if [ "$TARGETARCH" = "i386-mingw32" ]; then
 | 
					if [ "$TARGETARCH" = "i386-mingw32" ]; then
 | 
				
			||||||
	MINGW_ARCHIVES="$W32API_ARCHIVE $MINGWRT_ARCHIVE"
 | 
						MINGW_ARCHIVES="$W32API_ARCHIVE $MINGWRT_ARCHIVE"
 | 
				
			||||||
@@ -228,7 +237,7 @@ if [ "$TARGETARCH" = "i386-mingw32" ]; then
 | 
				
			|||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
printf "Unpacking and patching ... \n"
 | 
					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=$PACKAGE"_ARCHIVE"
 | 
				
			||||||
	archive=${!archive}
 | 
						archive=${!archive}
 | 
				
			||||||
	dir=$PACKAGE"_DIR"
 | 
						dir=$PACKAGE"_DIR"
 | 
				
			||||||
@@ -275,7 +284,10 @@ if [ `uname` = "Darwin" ]; then
 | 
				
			|||||||
	#rm .architecture_check.c .architecture_check.o
 | 
						#rm .architecture_check.c .architecture_check.o
 | 
				
			||||||
fi
 | 
					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
 | 
					if [ -f build-gmp/.success ]; then
 | 
				
			||||||
	printf "Skipping GMP as it is already built\n"
 | 
						printf "Skipping GMP as it is already built\n"
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
@@ -415,6 +427,8 @@ fi
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
if [ -f build-gdb/.success ]; then
 | 
					if [ -f build-gdb/.success ]; then
 | 
				
			||||||
	printf "Skipping GDB as it is already built\n"
 | 
						printf "Skipping GDB as it is already built\n"
 | 
				
			||||||
 | 
					elif [ $SKIPGDB -eq 1 ]; then
 | 
				
			||||||
 | 
						printf "Skipping GDB as requested by command line\n"
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
printf "Building GDB ${GDB_VERSION} ... "
 | 
					printf "Building GDB ${GDB_VERSION} ... "
 | 
				
			||||||
(
 | 
					(
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user