diff options
Diffstat (limited to 'development/gcc5/gcc5.SlackBuild')
-rw-r--r-- | development/gcc5/gcc5.SlackBuild | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/development/gcc5/gcc5.SlackBuild b/development/gcc5/gcc5.SlackBuild index f8181187cb..502a79cd7c 100644 --- a/development/gcc5/gcc5.SlackBuild +++ b/development/gcc5/gcc5.SlackBuild @@ -150,6 +150,8 @@ LANGS=${LANGS:-'c,c++,java'} echo "Building these compilers: $LANGS" +set -e + case "$ARCH" in arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; *) TARGET=$ARCH-slackware-linux ;; @@ -212,6 +214,12 @@ ANTLJAR=$(echo $CWD/antlr-*.jar | tail -1) # Fix build with glibc 2.28, which no longer makes available header file <sys/ustat.h> cat $CWD/patches/glibc2.28-ustat.diff | patch -p0 --verbose || exit 1 + # Fix build with glibc 2.30 + cat $CWD/patches/glibc2.30-ipc_perm.diff | patch -p0 --verbose || exit 1 + + # Recent linux kernels have romved the Cyclades driver + cat $CWD/patches/kernel-5.12.diff | patch -p1 --verbose || exit 1 + # Fix perms/owners chown -R root:root . find . -perm 777 -exec chmod 755 {} \; @@ -220,9 +228,9 @@ ANTLJAR=$(echo $CWD/antlr-*.jar | tail -1) find . -perm 664 -exec chmod 644 {} \; mkdir -p $PKG/usr/doc/gcc-$VERSION cp -a \ - COPYING* ChangeLog* FAQ INSTALL \ + COPYING* ChangeLog* INSTALL \ LAST_UPDATED MAINTAINERS NEWS \ - README* *.html \ + README* \ $PKG/usr/doc/gcc-$VERSION # We will keep part of these, but they are really big... @@ -428,7 +436,8 @@ ANTLJAR=$(echo $CWD/antlr-*.jar | tail -1) $GCC_ARCHOPTS \ --target=${TARGET} \ --build=${TARGET} \ - --host=${TARGET} || exit 1 + --host=${TARGET} \ + CXX='g++ -std=c++14' || exit 1 #--enable-java-awt=gtk \ #--disable-gtktest \ @@ -540,12 +549,12 @@ ln -s ../../../bin/ecj $PKG/usr/lib$LIBDIRSUFFIX/jvm/bin/javac # Don't package libffi stuff anymore. GCC will link the internal version # statically, and we'll need a newer one elsewhere. find . -name "ffi*.h" | xargs rm -f -find . -name "libffi*" | xargs rm -f -rm -f usr/man/man3/ffi* -rm -f usr/info/libffi* +find . -name "libffi*" | xargs rm -fR +rm -f usr/man/man3/ffi* || true +rm -f usr/info/libffi* || true # Install a proper pkgconfig file for libgcj: -rm $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/pkgconfig/libgcj*pc -rm $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/32/pkgconfig/libgcj*pc +rm -f $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/pkgconfig/libgcj*pc +rm -f $PKG/usr/lib${LIBDIRSUFFIX}/gcc/${TARGET}/${VERSION}/32/pkgconfig/libgcj*pc || true mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig cat $CWD/libgcj-5.pc \ | sed -e "s,@LIBDIRSUFFIX@,${LIBDIRSUFFIX}," \ @@ -569,7 +578,7 @@ cat $CWD/libgcj-5.pc \ strip --strip-unneeded usr/bin/* 2> /dev/null find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -) +) || true # Remove localizations overlapping with Slackware's gcc rm -rf $PKG/usr/share/locale |