diff options
author | Marc Jones <marc.jones@amd.com> | 2008-09-30 17:09:44 +0000 |
---|---|---|
committer | Marc Jones <marc.jones@amd.com> | 2008-09-30 17:09:44 +0000 |
commit | dc65196f8f18c28085d40ccbeb45bba3bfe28294 (patch) | |
tree | b7dff88f7a5f885537cc90a76265bca05fc8cf73 /util/abuild | |
parent | 336935c378a865feffe09033c34b6a7790d8a99b (diff) |
Add an abuild command line option for -fno-stack-protect for toolchains that might require it.
Signed-off-by: Marc Jones <marc.jones@amd.com>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3623 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/abuild')
-rwxr-xr-x | util/abuild/abuild | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/util/abuild/abuild b/util/abuild/abuild index 2d1382acca..19476dfbec 100755 --- a/util/abuild/abuild +++ b/util/abuild/abuild @@ -43,6 +43,9 @@ mode=text # this is disabled per default but can be enabled with -s silent= +# stackprotect mode enabled by -ns option. +stackprotect=false + ARCH=`uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ -e "s/Power Macintosh/ppc/"` @@ -322,8 +325,13 @@ function build_target CC='$(CROSS_COMPILE)gcc' CROSS_COMPILE='' fi - HOSTCC='gcc' + + if [ "$stackprotect" = "true" ]; then + CC="$CC -fno-stack-protector" + fi + HOSTCC='gcc' + printf "Processing mainboard/$VENDOR/$MAINBOARD" xml "<mainboard>" @@ -468,6 +476,7 @@ function myhelp printf " [-T|--test] submit image(s) to automated test system\n" printf " [-c|--cpus <numcpus>] build on <numcpus> at the same time\n" printf " [-s|--silent] omit compiler calls in logs\n" + printf " [-ns|--nostackprotect] use gcc -fno-stack-protector option\n" printf " [lbroot] absolute path to coreboot sources\n" printf " (defaults to $LBROOT)\n\n" } @@ -524,6 +533,7 @@ while true ; do -T|--test) shift; hwtest=true;; -c|--cpus) shift; cpus="$1"; test "$cpus" == "max" && cpus=""; shift;; -s|--silent) shift; silent="-s";; + -ns|--nostackprotect) shift; stackprotect=true;; --) shift; break;; -*) printf "Invalid option\n\n"; myhelp; exit 1;; *) break;; |