summaryrefslogtreecommitdiffstats
path: root/gnu
diff options
context:
space:
mode:
authorRemko van der Vossen2019-05-19 20:52:27 +0200
committerRemko van der Vossen2019-05-19 20:52:27 +0200
commitb1feed823f4d65b706ad75902977a1174e74648c (patch)
treec464212a31816e8b2799f982e6ad1cedb8b421b9 /gnu
parentfffb6c53136c7c41ace448dd572a291f9a08166b (diff)
gnu/gcc49: new spell, 4.9.x branch of gcc
Diffstat (limited to 'gnu')
-rw-r--r--gnu/gcc49/0001-remove-libffi.patch160
-rwxr-xr-xgnu/gcc49/BUILD61
-rwxr-xr-xgnu/gcc49/CONFIGURE2
-rwxr-xr-xgnu/gcc49/DEPENDS38
-rwxr-xr-xgnu/gcc49/DETAILS22
-rwxr-xr-xgnu/gcc49/FINAL2
-rw-r--r--gnu/gcc49/HISTORY2
-rwxr-xr-xgnu/gcc49/INSTALL5
-rwxr-xr-xgnu/gcc49/PRE_BUILD10
-rwxr-xr-xgnu/gcc49/SOLO0
-rw-r--r--gnu/gcc49/python-gdb.patch22
11 files changed, 324 insertions, 0 deletions
diff --git a/gnu/gcc49/0001-remove-libffi.patch b/gnu/gcc49/0001-remove-libffi.patch
new file mode 100644
index 0000000000..31d69fd24b
--- /dev/null
+++ b/gnu/gcc49/0001-remove-libffi.patch
@@ -0,0 +1,160 @@
+From 1974f57c22229823dcde081f49e7d30e3fe4cd48 Mon Sep 17 00:00:00 2001
+From: Florian Franzmann <siflfran@hawo.stw.uni-erlangen.de>
+Date: Wed, 20 Mar 2013 11:25:28 +0100
+Subject: [PATCH] remove libffi
+
+---
+ Makefile.in | 18 ------------------
+ 1 file changed, 18 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 08049de..895b3ac 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -936,7 +936,6 @@ configure-target: \
+ maybe-configure-target-libtermcap \
+ maybe-configure-target-winsup \
+ maybe-configure-target-libgloss \
+- maybe-configure-target-libffi \
+ maybe-configure-target-libjava \
+ maybe-configure-target-zlib \
+ maybe-configure-target-boehm-gc \
+@@ -1089,7 +1088,6 @@ all-target: maybe-all-target-libgo
+ all-target: maybe-all-target-libtermcap
+ all-target: maybe-all-target-winsup
+ all-target: maybe-all-target-libgloss
+-all-target: maybe-all-target-libffi
+ all-target: maybe-all-target-libjava
+ all-target: maybe-all-target-zlib
+ all-target: maybe-all-target-boehm-gc
+@@ -1178,7 +1176,6 @@ info-target: maybe-info-target-libgo
+ info-target: maybe-info-target-libtermcap
+ info-target: maybe-info-target-winsup
+ info-target: maybe-info-target-libgloss
+-info-target: maybe-info-target-libffi
+ info-target: maybe-info-target-libjava
+ info-target: maybe-info-target-zlib
+ info-target: maybe-info-target-boehm-gc
+@@ -1260,7 +1257,6 @@ dvi-target: maybe-dvi-target-libgo
+ dvi-target: maybe-dvi-target-libtermcap
+ dvi-target: maybe-dvi-target-winsup
+ dvi-target: maybe-dvi-target-libgloss
+-dvi-target: maybe-dvi-target-libffi
+ dvi-target: maybe-dvi-target-libjava
+ dvi-target: maybe-dvi-target-zlib
+ dvi-target: maybe-dvi-target-boehm-gc
+@@ -1342,7 +1338,6 @@ pdf-target: maybe-pdf-target-libgo
+ pdf-target: maybe-pdf-target-libtermcap
+ pdf-target: maybe-pdf-target-winsup
+ pdf-target: maybe-pdf-target-libgloss
+-pdf-target: maybe-pdf-target-libffi
+ pdf-target: maybe-pdf-target-libjava
+ pdf-target: maybe-pdf-target-zlib
+ pdf-target: maybe-pdf-target-boehm-gc
+@@ -1424,7 +1419,6 @@ html-target: maybe-html-target-libgo
+ html-target: maybe-html-target-libtermcap
+ html-target: maybe-html-target-winsup
+ html-target: maybe-html-target-libgloss
+-html-target: maybe-html-target-libffi
+ html-target: maybe-html-target-libjava
+ html-target: maybe-html-target-zlib
+ html-target: maybe-html-target-boehm-gc
+@@ -1506,7 +1500,6 @@ TAGS-target: maybe-TAGS-target-libgo
+ TAGS-target: maybe-TAGS-target-libtermcap
+ TAGS-target: maybe-TAGS-target-winsup
+ TAGS-target: maybe-TAGS-target-libgloss
+-TAGS-target: maybe-TAGS-target-libffi
+ TAGS-target: maybe-TAGS-target-libjava
+ TAGS-target: maybe-TAGS-target-zlib
+ TAGS-target: maybe-TAGS-target-boehm-gc
+@@ -1588,7 +1581,6 @@ install-info-target: maybe-install-info-target-libgo
+ install-info-target: maybe-install-info-target-libtermcap
+ install-info-target: maybe-install-info-target-winsup
+ install-info-target: maybe-install-info-target-libgloss
+-install-info-target: maybe-install-info-target-libffi
+ install-info-target: maybe-install-info-target-libjava
+ install-info-target: maybe-install-info-target-zlib
+ install-info-target: maybe-install-info-target-boehm-gc
+@@ -1670,7 +1662,6 @@ install-pdf-target: maybe-install-pdf-target-libgo
+ install-pdf-target: maybe-install-pdf-target-libtermcap
+ install-pdf-target: maybe-install-pdf-target-winsup
+ install-pdf-target: maybe-install-pdf-target-libgloss
+-install-pdf-target: maybe-install-pdf-target-libffi
+ install-pdf-target: maybe-install-pdf-target-libjava
+ install-pdf-target: maybe-install-pdf-target-zlib
+ install-pdf-target: maybe-install-pdf-target-boehm-gc
+@@ -1752,7 +1743,6 @@ install-html-target: maybe-install-html-target-libgo
+ install-html-target: maybe-install-html-target-libtermcap
+ install-html-target: maybe-install-html-target-winsup
+ install-html-target: maybe-install-html-target-libgloss
+-install-html-target: maybe-install-html-target-libffi
+ install-html-target: maybe-install-html-target-libjava
+ install-html-target: maybe-install-html-target-zlib
+ install-html-target: maybe-install-html-target-boehm-gc
+@@ -1834,7 +1824,6 @@ installcheck-target: maybe-installcheck-target-libgo
+ installcheck-target: maybe-installcheck-target-libtermcap
+ installcheck-target: maybe-installcheck-target-winsup
+ installcheck-target: maybe-installcheck-target-libgloss
+-installcheck-target: maybe-installcheck-target-libffi
+ installcheck-target: maybe-installcheck-target-libjava
+ installcheck-target: maybe-installcheck-target-zlib
+ installcheck-target: maybe-installcheck-target-boehm-gc
+@@ -1916,7 +1905,6 @@ mostlyclean-target: maybe-mostlyclean-target-libgo
+ mostlyclean-target: maybe-mostlyclean-target-libtermcap
+ mostlyclean-target: maybe-mostlyclean-target-winsup
+ mostlyclean-target: maybe-mostlyclean-target-libgloss
+-mostlyclean-target: maybe-mostlyclean-target-libffi
+ mostlyclean-target: maybe-mostlyclean-target-libjava
+ mostlyclean-target: maybe-mostlyclean-target-zlib
+ mostlyclean-target: maybe-mostlyclean-target-boehm-gc
+@@ -1998,7 +1986,6 @@ clean-target: maybe-clean-target-libgo
+ clean-target: maybe-clean-target-libtermcap
+ clean-target: maybe-clean-target-winsup
+ clean-target: maybe-clean-target-libgloss
+-clean-target: maybe-clean-target-libffi
+ clean-target: maybe-clean-target-libjava
+ clean-target: maybe-clean-target-zlib
+ clean-target: maybe-clean-target-boehm-gc
+@@ -2080,7 +2067,6 @@ distclean-target: maybe-distclean-target-libgo
+ distclean-target: maybe-distclean-target-libtermcap
+ distclean-target: maybe-distclean-target-winsup
+ distclean-target: maybe-distclean-target-libgloss
+-distclean-target: maybe-distclean-target-libffi
+ distclean-target: maybe-distclean-target-libjava
+ distclean-target: maybe-distclean-target-zlib
+ distclean-target: maybe-distclean-target-boehm-gc
+@@ -2162,7 +2148,6 @@ maintainer-clean-target: maybe-maintainer-clean-target-libgo
+ maintainer-clean-target: maybe-maintainer-clean-target-libtermcap
+ maintainer-clean-target: maybe-maintainer-clean-target-winsup
+ maintainer-clean-target: maybe-maintainer-clean-target-libgloss
+-maintainer-clean-target: maybe-maintainer-clean-target-libffi
+ maintainer-clean-target: maybe-maintainer-clean-target-libjava
+ maintainer-clean-target: maybe-maintainer-clean-target-zlib
+ maintainer-clean-target: maybe-maintainer-clean-target-boehm-gc
+@@ -2299,7 +2284,6 @@ check-target: \
+ maybe-check-target-libtermcap \
+ maybe-check-target-winsup \
+ maybe-check-target-libgloss \
+- maybe-check-target-libffi \
+ maybe-check-target-libjava \
+ maybe-check-target-zlib \
+ maybe-check-target-boehm-gc \
+@@ -2454,7 +2438,6 @@ install-target: \
+ maybe-install-target-libtermcap \
+ maybe-install-target-winsup \
+ maybe-install-target-libgloss \
+- maybe-install-target-libffi \
+ maybe-install-target-libjava \
+ maybe-install-target-zlib \
+ maybe-install-target-boehm-gc \
+@@ -2556,7 +2539,6 @@ install-strip-target: \
+ maybe-install-strip-target-libtermcap \
+ maybe-install-strip-target-winsup \
+ maybe-install-strip-target-libgloss \
+- maybe-install-strip-target-libffi \
+ maybe-install-strip-target-libjava \
+ maybe-install-strip-target-zlib \
+ maybe-install-strip-target-boehm-gc \
+--
+1.8.1.3
+
diff --git a/gnu/gcc49/BUILD b/gnu/gcc49/BUILD
new file mode 100755
index 0000000000..3a0e0707fc
--- /dev/null
+++ b/gnu/gcc49/BUILD
@@ -0,0 +1,61 @@
+# using -pipe causes spurious test-suite failures
+# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48565
+CFLAGS=${CFLAGS/-pipe/} &&
+CXXFLAGS=${CXXFLAGS/-pipe/} &&
+
+persistent_read gmp GMP_BUILD_ARCH GMP_BUILD_ARCH &&
+persistent_read mpfr MPFR_BUILD_ARCH MPFR_BUILD_ARCH &&
+
+if [[ $GMP_BUILD_ARCH != ${SMGL_COMPAT_ARCHS[4]}
+ || $MPFR_BUILD_ARCH != ${SMGL_COMPAT_ARCHS[4]} ]]; then
+ message "${PROBLEM_COLOR}" 1>&2 &&
+ message "gmp and/or mpfr have been built with a different archspec, building gcc now" 1>&2 &&
+ message "would result in a broken compiler" 1>&2 &&
+ message "${DEFAULT_COLOR}" 1>&2
+ return 1
+fi &&
+
+# install gcc libraries to /lib instead of /lib64
+sedit "s/lib64/lib/" gcc/config/i386/linux64.h &&
+# tell gcc to target binaries to expect the linker in /lib instead of /lib64
+sedit "s/lib64/lib/" gcc/config/i386/t-linux64 &&
+
+if [[ "$ARCHITECTURE" == "pentium4" ||
+ "$ARCHITECTURE" == "pentium-m" ]]; then
+ CFLAGS=${CFLAGS//-ffast-math/}
+ CXXFLAGS=${CXXFLAGS//-ffast-math/}
+fi &&
+
+if [[ $CROSS_INSTALL == on ]]; then
+ OPTS="--host=$HOST $OPTS"
+else
+ OPTS="--build=$HOST $OPTS"
+fi &&
+
+OPTS+=" --prefix=${INSTALL_ROOT}/opt/gcc49" &&
+OPTS+=" --mandir=${INSTALL_ROOT}/opt/gcc49/share/man" &&
+OPTS+=" --infodir=${INSTALL_ROOT}/opt/gcc49/share/info" &&
+
+OPTS+=" --enable-bootstrap" &&
+OPTS+=" --enable-checking=release" &&
+OPTS+=" --enable-clocale=gnu" &&
+OPTS+=" --enable-gnu-unique-object" &&
+OPTS+=" --enable-languages=c,c++,lto" &&
+OPTS+=" --enable-linker-build-id" &&
+OPTS+=" --enable-lto" &&
+OPTS+=" --enable-plugin" &&
+OPTS+=" --enable-shared" &&
+OPTS+=" --enable-threads=posix" &&
+OPTS+=" --enable-__cxa_atexit" &&
+OPTS+=" --disable-libgcj" &&
+OPTS+=" --disable-libquadmath" &&
+OPTS+=" --disable-libstdcxx-pch" &&
+OPTS+=" --disable-werror" &&
+OPTS+=" --with-bugurl=http://bugs.sourcemage.org" &&
+OPTS+=" --with-linker-hash-style=gnu" &&
+OPTS+=" --without-cloog" &&
+OPTS+=" $GCC_MULTILIB" &&
+
+cd $SOURCE_DIRECTORY.bld &&
+$SOURCE_DIRECTORY/configure $OPTS &&
+make CFLAGS="$CFLAGS" BOOT_CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" bootstrap-lean
diff --git a/gnu/gcc49/CONFIGURE b/gnu/gcc49/CONFIGURE
new file mode 100755
index 0000000000..5544747120
--- /dev/null
+++ b/gnu/gcc49/CONFIGURE
@@ -0,0 +1,2 @@
+. $SECTION_DIRECTORY/FUNCTIONS &&
+default_configure_gcc
diff --git a/gnu/gcc49/DEPENDS b/gnu/gcc49/DEPENDS
new file mode 100755
index 0000000000..a7bf7b422e
--- /dev/null
+++ b/gnu/gcc49/DEPENDS
@@ -0,0 +1,38 @@
+. $GRIMOIRE/libcompat &&
+depends perl &&
+depends diffutils &&
+depends gmp &&
+depends gnupg &&
+depends libmpc &&
+depends mpfr &&
+depends smgl-fhs &&
+depends smgl-archspecs &&
+depends zlib "--with-system-zlib" &&
+
+optional_depends gettext \
+ "--enable-nls" \
+ "--disable-nls" \
+ "for Native Language Support" &&
+
+if [[ "$(installed_version gmp|sed 's:\.::g')" < 432 ]]
+then
+ force_depends gmp
+fi &&
+
+if [[ "$(installed_version mpfr|sed 's:\.::g')" < 242 ]]
+then
+ force_depends mpfr
+fi &&
+
+if spell_ok gmp; then
+ persistent_read gmp GMP_BUILD_ARCH GMP_BUILD_ARCH || true
+fi &&
+if spell_ok mpfr; then
+ persistent_read mpfr MPFR_BUILD_ARCH MPFR_BUILD_ARCH || true
+fi &&
+
+if [[ $GMP_BUILD_ARCH != ${SMGL_COMPAT_ARCHS[4]}
+ || $MPFR_BUILD_ARCH != ${SMGL_COMPAT_ARCHS[4]} ]]; then
+ force_depends gmp &&
+ force_depends mpfr
+fi
diff --git a/gnu/gcc49/DETAILS b/gnu/gcc49/DETAILS
new file mode 100755
index 0000000000..181875487d
--- /dev/null
+++ b/gnu/gcc49/DETAILS
@@ -0,0 +1,22 @@
+ SPELL=gcc49
+ VERSION=4.9.4
+ BASE_SOURCE_URL="ftp://ftp.gnu.org/pub/gnu/gcc/gcc-$VERSION"
+ SOURCE=gcc-$VERSION.tar.bz2
+ SOURCE2=$SOURCE.sig
+SOURCE_DIRECTORY=$BUILD_DIRECTORY/gcc-$VERSION
+ SOURCE_URL[0]=$GNU_URL/gcc/gcc-$VERSION/$SOURCE
+ SOURCE_URL[1]=${BASE_SOURCE_URL}/$SOURCE
+ SOURCE2_URL[0]=${SOURCE_URL[0]}.sig
+ SOURCE_GPG=gnu.gpg:$SOURCE.sig:UPSTREAM_KEY
+ SOURCE2_IGNORE=signature
+
+ LICENSE[0]=GPL
+ TMPFS=off
+ WEB_SITE=http://gcc.gnu.org/
+ ENTERED=20190519
+ KEYWORDS="compiler"
+ SHORT="the 4.9.x release of the GNU Compiler Collection"
+ DOCS="$DOCS INSTALL"
+cat << EOF
+The 4.9.x release of the GNU Compiler Collection.
+EOF
diff --git a/gnu/gcc49/FINAL b/gnu/gcc49/FINAL
new file mode 100755
index 0000000000..dd67fe02a0
--- /dev/null
+++ b/gnu/gcc49/FINAL
@@ -0,0 +1,2 @@
+default_final &&
+rm_source_dir $SOURCE_DIRECTORY.bld
diff --git a/gnu/gcc49/HISTORY b/gnu/gcc49/HISTORY
new file mode 100644
index 0000000000..61861c58ea
--- /dev/null
+++ b/gnu/gcc49/HISTORY
@@ -0,0 +1,2 @@
+2019-05-19 Remko van der Vossen <wich@sourcemage.org>
+ * ALL: Created spell
diff --git a/gnu/gcc49/INSTALL b/gnu/gcc49/INSTALL
new file mode 100755
index 0000000000..a1a4ab04b6
--- /dev/null
+++ b/gnu/gcc49/INSTALL
@@ -0,0 +1,5 @@
+cd $SOURCE_DIRECTORY.bld &&
+
+make_single &&
+make prefix="${INSTALL_ROOT}/opt/gcc49" CFLAGS="$CFLAGS" BOOT_CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" install-no-fixedincludes &&
+make_normal
diff --git a/gnu/gcc49/PRE_BUILD b/gnu/gcc49/PRE_BUILD
new file mode 100755
index 0000000000..94e06cbd7c
--- /dev/null
+++ b/gnu/gcc49/PRE_BUILD
@@ -0,0 +1,10 @@
+default_pre_build &&
+cd ${SOURCE_DIRECTORY} &&
+mk_source_dir $SOURCE_DIRECTORY.bld &&
+cd $SOURCE_DIRECTORY &&
+
+sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in &&
+sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in &&
+
+patch -p0 < "$SPELL_DIRECTORY/python-gdb.patch" &&
+patch -p1 < "$SPELL_DIRECTORY/0001-remove-libffi.patch"
diff --git a/gnu/gcc49/SOLO b/gnu/gcc49/SOLO
new file mode 100755
index 0000000000..e69de29bb2
--- /dev/null
+++ b/gnu/gcc49/SOLO
diff --git a/gnu/gcc49/python-gdb.patch b/gnu/gcc49/python-gdb.patch
new file mode 100644
index 0000000000..b95d611e1e
--- /dev/null
+++ b/gnu/gcc49/python-gdb.patch
@@ -0,0 +1,22 @@
+--- libstdc++-v3/python/Makefile.in.orig 2011-03-08 03:04:05.000000000 +0300
++++ libstdc++-v3/python/Makefile.in 2011-09-10 18:09:36.692249020 +0400
+@@ -493,7 +493,7 @@
+ -e 's,@toolexeclibdir@,$(toolexeclibdir),' < $(srcdir)/hook.in > $@
+
+ install-data-local: gdb.py
+- @$(mkdir_p) $(DESTDIR)$(toolexeclibdir)
++ @$(mkdir_p) $(DESTDIR)$(datadir)/gdb/auto-load
+ @here=`pwd`; cd $(DESTDIR)$(toolexeclibdir); \
+ for file in libstdc++*; do \
+ case $$file in \
+@@ -506,8 +506,8 @@
+ esac; \
+ done; \
+ cd $$here; \
+- echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
+- $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py
++ echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(datadir)/gdb/auto-load/$$libname-gdb.py"; \
++ $(INSTALL_DATA) gdb.py $(DESTDIR)$(datadir)/gdb/auto-load/$$libname-gdb.py
+
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.