STAGE1-*: Moving config args to recipes & fixing FTBFS

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.
This commit is contained in:
Jaromir Capik 2015-06-24 13:15:28 +02:00
parent 99f1530af5
commit 274d6185bd
4 changed files with 82 additions and 6 deletions

View File

@ -1,11 +1,32 @@
srpm gcc srpm gcc
mcd $BUILDDIR/gcc mcd $BUILDDIR/gcc
# 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 # prefill gcc cache
echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache
echo 'gcc_cv_libc_provides_ssp=yes' >> config.cache echo 'gcc_cv_libc_provides_ssp=yes' >> config.cache
$SRC/gcc-*/configure $GCC_CONFIGARGS --with-headers=$ROOTFS/usr/include --cache-file=config.cache if [ ! "$BUILDER_ARCH" = "$TARGET_ARCH" ]; then
WITH_HEADERS="--with-headers=$ROOTFS/usr/include"
fi
$SRC/gcc-*/configure $GCC_CONFIGARGS $WITH_HEADERS
notparallel notparallel
make $J make $J
make $J install make $J install

View File

@ -1,5 +1,22 @@
srpm gcc srpm gcc
mcd $BUILDDIR/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 # prefill gcc cache
echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache
@ -9,7 +26,7 @@ if [ ! "$BUILDER_ARCH" = "$TARGET_ARCH" ]; then
WITH_HEADERS="--with-headers=$ROOTFS/usr/include" WITH_HEADERS="--with-headers=$ROOTFS/usr/include"
fi fi
$SRC/gcc-*/configure $GCC_CONFIGARGS $WITH_HEADERS --cache-file=config.cache $SRC/gcc-*/configure $GCC_CONFIGARGS $WITH_HEADERS
notparallel notparallel
# Pass gcc_cv_libc_provides_ssp down, because the config.cache # Pass gcc_cv_libc_provides_ssp down, because the config.cache

View File

@ -1,11 +1,32 @@
srpm gcc srpm gcc
mcd $BUILDDIR/gcc mcd $BUILDDIR/gcc-libgcc
# 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 # prefill gcc cache
echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache echo 'lt_cv_shlibpath_overrides_runpath=no' > config.cache
echo 'gcc_cv_libc_provides_ssp=yes' >> config.cache echo 'gcc_cv_libc_provides_ssp=yes' >> config.cache
$SRC/gcc-*/configure $GCC_CONFIGARGS --with-headers=$ROOTFS/usr/include --cache-file=config.cache if [ ! "$BUILDER_ARCH" = "$TARGET_ARCH" ]; then
WITH_HEADERS="--with-headers=$ROOTFS/usr/include"
fi
$SRC/gcc-*/configure $GCC_CONFIGARGS $WITH_HEADERS
notparallel notparallel
# Pass gcc_cv_libc_provides_ssp down, because the config.cache # Pass gcc_cv_libc_provides_ssp down, because the config.cache
# version is not passed down to the gcc subdir. # version is not passed down to the gcc subdir.

View File

@ -1,6 +1,23 @@
srpm gcc srpm gcc
mcd $BUILDDIR/t-gcc mcd $BUILDDIR/t-gcc
$SRC/gcc-*/configure $GCC_TCONFIGARGS --enable-linker-build-id
GCC_TCONFIGARGS="--prefix=/usr
--libdir=/usr/lib${SUFFIX}
--with-sysroot=/
--with-build-sysroot=$ROOTFS
--build=$BUILD
--host=$TARGET
--target=$TARGET
--disable-bootstrap
--enable-werror=no
--enable-cxx
${GCC_CONFIG_EXTRA}
--enable-languages=c,c++
--enable-threads=posix
--enable-linker-build-id
"
$SRC/gcc-*/configure $GCC_TCONFIGARGS
notparallel notparallel
make $J make $J
make $J install DESTDIR=${ROOTFS} make $J install DESTDIR=${ROOTFS}