crossgcc: Improve compatibility of the toolchain across host systems
crossgcc builds gmp, whose build system normally optimises for the hardware it's built on. That may give a minor performance boost but has the downside that the compiler becomes non-portable and may break on other systems due to illegal instructions. Setting CFLAGS to some reasonable value prevents gmp's configure script from choosing CPU specific -mtune flags (which may enable optimizations that only run on CPUs with the same feature set). Enabling "fat" builds make the build system add all optimized assembler routines and makes the selection of the right one a runtime decision instead of deciding at compile time. Change-Id: I72d20627270baa082cd02ebb4c9a09cd23f30f8c Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Reviewed-on: http://review.coreboot.org/10412 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
parent
580e7223bb
commit
31bf37eb32
|
@ -22,8 +22,8 @@
|
||||||
|
|
||||||
cd `dirname $0`
|
cd `dirname $0`
|
||||||
|
|
||||||
CROSSGCC_DATE="March 8th, 2015"
|
CROSSGCC_DATE="June 3th, 2015"
|
||||||
CROSSGCC_VERSION="1.27"
|
CROSSGCC_VERSION="1.28"
|
||||||
|
|
||||||
# default settings
|
# default settings
|
||||||
TARGETDIR=`pwd`/xgcc
|
TARGETDIR=`pwd`/xgcc
|
||||||
|
@ -418,7 +418,7 @@ printf "Building GMP ${GMP_VERSION} ... "
|
||||||
(
|
(
|
||||||
cd ${BUILDDIRPREFIX}-gmp
|
cd ${BUILDDIRPREFIX}-gmp
|
||||||
rm -f .failed
|
rm -f .failed
|
||||||
CC="$CC" ../${GMP_DIR}/configure --disable-shared --prefix=$TARGETDIR $OPTIONS \
|
CC="$CC" CFLAGS="-Os" ../${GMP_DIR}/configure --disable-shared --enable-fat --prefix=$TARGETDIR $OPTIONS \
|
||||||
|| touch .failed
|
|| touch .failed
|
||||||
$MAKE $JOBS || touch .failed
|
$MAKE $JOBS || touch .failed
|
||||||
$MAKE install DESTDIR=$DESTDIR || touch .failed
|
$MAKE install DESTDIR=$DESTDIR || touch .failed
|
||||||
|
|
Loading…
Reference in New Issue