274d6185bd
This commit moves the *GCC_CONFIGARGS from the stage1 script to the *gcc* recipes so that the args can be tweaked by the gcc maintainers in the future. This adds a bit of redundancy, but still worthy. This commit also disables gcc bootstrap in stage1 and splits the build dir for gcc-host, gcc-libgcc and gcc so that it is clean prior starting each build. It resolves strange config issues that appear just under some combinations of build and target arch.
49 lines
1.4 KiB
Plaintext
49 lines
1.4 KiB
Plaintext
srpm gcc
|
|
mcd $BUILDDIR/gcc-host
|
|
|
|
# These are for gcc cross-tools (politics sometime result in slightly
|
|
# different arch names)
|
|
GCC_CONFIGARGS="--prefix=$PREFIX
|
|
--libdir=$PREFIX/lib${SUFFIX}
|
|
--target=$TARGET
|
|
${GCC_CONFIG_EXTRA}
|
|
--enable-languages=c,c++
|
|
--with-sysroot=$ROOTFS
|
|
--with-build-sysroot=$ROOTFS
|
|
--cache-file=config.cache
|
|
--disable-bootstrap
|
|
--enable-threads=posix
|
|
--enable-64-bit-bfd
|
|
--disable-lto
|
|
$WITHPPL
|
|
"
|
|
|
|
# prefill gcc cache
|
|
echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache
|
|
echo 'gcc_cv_libc_provides_ssp=yes' >> config.cache
|
|
|
|
if [ ! "$BUILDER_ARCH" = "$TARGET_ARCH" ]; then
|
|
WITH_HEADERS="--with-headers=$ROOTFS/usr/include"
|
|
fi
|
|
|
|
$SRC/gcc-*/configure $GCC_CONFIGARGS $WITH_HEADERS
|
|
notparallel
|
|
|
|
# Pass gcc_cv_libc_provides_ssp down, because the config.cache
|
|
# version is not passed down to the gcc subdir.
|
|
make $J all-host gcc_cv_libc_provides_ssp=yes
|
|
make $J install-host gcc_cv_libc_provides_ssp=yes
|
|
|
|
|
|
if false; then
|
|
mkdirp $ROOTFS/usr/lib${SUFFIX}
|
|
for o in crt Scrt1 crti crtbegin crtbeginS crtend crtendS crtn
|
|
do
|
|
$TARGET-gcc -nostdlib -nostartfiles -c -x c /dev/null -c -o $ROOTFS/usr/lib${SUFFIX}/$o.o
|
|
done
|
|
for so in gcc gcc_s c
|
|
do
|
|
$TARGET-gcc -nostdlib -nostartfiles -shared -x c /dev/null -o $ROOTFS/usr/lib${SUFFIX}/lib$so.so
|
|
done
|
|
fi
|