From 1dc2cc1443ef106bf8fd5ec26a0861b5e4cd0e83 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 12 Jul 2015 01:04:12 +0100 Subject: first draft of our sanely splitted gcc, it works, but there is still some work to do --- .../gcc/files/3.3.4/libffi-without-libgcj.patch | 22 -------- .../files/3.4.3/libffi-nogcj-lib-path-fix.patch | 40 -------------- .../gcc/files/3.4.3/libffi-without-libgcj.patch | 40 -------------- .../gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch | 63 --------------------- .../gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch | 40 -------------- .../gcc-4.1.0-fast-math-i386-Os-workaround.patch | 64 ---------------------- 6 files changed, 269 deletions(-) delete mode 100644 sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch delete mode 100644 sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch delete mode 100644 sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch delete mode 100644 sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch delete mode 100644 sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch delete mode 100644 sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch (limited to 'sys-devel/gcc/files') diff --git a/sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch b/sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch deleted file mode 100644 index 507d42f0..00000000 --- a/sys-devel/gcc/files/3.3.4/libffi-without-libgcj.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- configure.in.old 2004-06-26 07:01:06.000000000 +0200 -+++ configure.in 2004-06-26 07:02:55.000000000 +0200 -@@ -52,8 +52,7 @@ - host_tools="texinfo byacc flex bison binutils ld gas gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool grep diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils snavigator libtool gettext zip fastjar" - - # libgcj represents the runtime libraries only used by gcj. --libgcj="target-libffi \ -- target-boehm-gc \ -+libgcj="target-boehm-gc \ - target-zlib \ - target-qthreads \ - target-libjava" -@@ -66,7 +65,8 @@ - target-newlib \ - ${libstdcxx_version} \ - target-libf2c \ -- ${libgcj} -+ ${libgcj} \ -+ target-libffi \ - target-libobjc" - - # these tools are built using the target libs, and are intended to run only diff --git a/sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch b/sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch deleted file mode 100644 index b5195e4e..00000000 --- a/sys-devel/gcc/files/3.4.3/libffi-nogcj-lib-path-fix.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -ur gcc-3.4.3/libffi/Makefile.in gcc-3.4.3-ffi-fixes/libffi/Makefile.in ---- gcc-3.4.3/libffi/Makefile.in 2003-11-22 08:41:32.000000000 -0500 -+++ gcc-3.4.3-ffi-fixes/libffi/Makefile.in 2004-11-28 17:31:50.000000000 -0500 -@@ -89,7 +89,7 @@ - libffi_basedir = @libffi_basedir@ - tool_include_dir = @tool_include_dir@ - toolexecdir = @toolexecdir@ --toolexeclibdir = @toolexeclibdir@ -+toolexeclibdir = @toolexeclibdir@/@gcc_version@ - - AUTOMAKE_OPTIONS = cygnus - -diff -ur gcc-3.4.3/libffi/configure gcc-3.4.3-ffi-fixes/libffi/configure ---- gcc-3.4.3/libffi/configure 2004-05-18 05:08:39.000000000 -0400 -+++ gcc-3.4.3-ffi-fixes/libffi/configure 2004-11-28 17:48:19.000000000 -0500 -@@ -3800,8 +3800,8 @@ - toolexecdir='$(exec_prefix)/$(target_alias)' - toolexeclibdir='$(toolexecdir)/lib' - else -- toolexecdir='$(libdir)/gcc-lib/$(target_alias)' -- toolexeclibdir='$(libdir)' -+ toolexecdir='$(libdir)/gcc/$(target_alias)' -+ toolexeclibdir='$(libdir)/gcc/$(target_alias)/$(gcc-version)' - fi - multi_os_directory=`$CC -print-multi-os-directory` - case $multi_os_directory in -diff -ur gcc-3.4.3/libffi/configure.in gcc-3.4.3-ffi-fixes/libffi/configure.in ---- gcc-3.4.3/libffi/configure.in 2004-04-27 01:10:19.000000000 -0400 -+++ gcc-3.4.3-ffi-fixes/libffi/configure.in 2004-11-28 17:40:30.000000000 -0500 -@@ -225,8 +225,8 @@ - toolexecdir='$(exec_prefix)/$(target_alias)' - toolexeclibdir='$(toolexecdir)/lib' - else -- toolexecdir='$(libdir)/gcc-lib/$(target_alias)' -- toolexeclibdir='$(libdir)' -+ toolexecdir='$(libdir)/gcc/$(target_alias)' -+ toolexeclibdir='$(libdir)/gcc/$(target_alias)/$(gcc_version)' - fi - multi_os_directory=`$CC -print-multi-os-directory` - case $multi_os_directory in diff --git a/sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch b/sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch deleted file mode 100644 index b270a06a..00000000 --- a/sys-devel/gcc/files/3.4.3/libffi-without-libgcj.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- configure.in.orig 2004-08-03 00:53:36.000000000 +0200 -+++ configure.in 2004-08-03 00:52:35.000000000 +0200 -@@ -136,8 +136,7 @@ - host_tools="texinfo byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar" - - # libgcj represents the runtime libraries only used by gcj. --libgcj="target-libffi \ -- target-boehm-gc \ -+libgcj="target-boehm-gc \ - target-zlib \ - target-qthreads \ - target-libjava" -@@ -150,6 +150,7 @@ - target-libstdc++-v3 \ - target-libf2c \ - ${libgcj} \ -+ target-libffi \ - target-libobjc" - - # these tools are built using the target libraries, and are intended to ---- configure~ 2004-08-28 02:31:04.000000000 +0200 -+++ configure 2004-08-28 10:55:28.000000000 +0200 -@@ -876,8 +876,7 @@ - host_tools="texinfo byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar" - - # libgcj represents the runtime libraries only used by gcj. --libgcj="target-libffi \ -- target-boehm-gc \ -+libgcj="target-boehm-gc \ - target-zlib \ - target-qthreads \ - target-libjava" -@@ -891,6 +890,7 @@ - target-libstdc++-v3 \ - target-libf2c \ - ${libgcj} \ -+ target-libffi \ - target-libobjc" - - # these tools are built using the target libraries, and are intended to diff --git a/sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch b/sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch deleted file mode 100644 index 03895434..00000000 --- a/sys-devel/gcc/files/3.4.4/gcc-3.4.4-cross-compile.patch +++ /dev/null @@ -1,63 +0,0 @@ -Some notes on the 'bootstrap with or without libc headers' debate: -http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html -http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html - ---- gcc/config/sh/linux.h -+++ gcc/config/sh/linux.h -@@ -145,6 +145,7 @@ - /* Do code reading to identify a signal frame, and set the frame - state data appropriately. See unwind-dw2.c for the structs. */ - -+#ifndef inhibit_libc - #ifdef IN_LIBGCC2 - #include - #include -@@ -295,6 +296,7 @@ - - #endif /* defined (__SH5__) */ - #endif /* IN_LIBGCC2 */ -+#endif /* inhibit_libc */ - - /* For SH3 and SH4, we use a slot of the unwind frame which correspond - to a fake register number 16 as a placeholder for the return address ---- gcc/config/i386/linux.h -+++ gcc/config/i386/linux.h -@@ -208,6 +208,7 @@ - /* Do code reading to identify a signal frame, and set the frame - state data appropriately. See unwind-dw2.c for the structs. */ - -+#ifndef inhibit_libc - #ifdef IN_LIBGCC2 - /* There's no sys/ucontext.h for some (all?) libc1, so no - signal-turned-exceptions for them. There's also no configure-run for -@@ -272,3 +273,4 @@ - } while (0) - #endif /* not USE_GNULIBC_1 */ - #endif /* IN_LIBGCC2 */ -+#endif /* inhibit_libc */ ---- gcc/config/alpha/linux.h -+++ gcc/config/alpha/linux.h -@@ -73,6 +73,7 @@ - /* Do code reading to identify a signal frame, and set the frame - state data appropriately. See unwind-dw2.c for the structs. */ - -+#ifndef inhibit_libc - #ifdef IN_LIBGCC2 - #include - #include -@@ -122,3 +123,4 @@ - (FS)->retaddr_column = 64; \ - goto SUCCESS; \ - } while (0) -+#endif /* inhibit_libc */ ---- gcc/config.gcc -+++ gcc/config.gcc -@@ -321,7 +321,7 @@ - need_64bit_hwint=yes - ;; - # Note the 'l'; we need to be able to match e.g. "shle" or "shl". --sh[123456789l]*-*-*) -+sh[123456789lbe]*-*-*) - cpu_type=sh - need_64bit_hwint=yes - ;; diff --git a/sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch b/sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch deleted file mode 100644 index 523caa48..00000000 --- a/sys-devel/gcc/files/4.1.0/gcc-4.1.0-cross-compile.patch +++ /dev/null @@ -1,40 +0,0 @@ -Some notes on the 'bootstrap with or without libc headers' debate: -http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html -http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html - ---- gcc/unwind-dw2.c -+++ gcc/unwind-dw2.c -@@ -253,9 +253,11 @@ - } - #endif - -+#ifndef inhibit_libc - #ifdef MD_UNWIND_SUPPORT - #include MD_UNWIND_SUPPORT - #endif -+#endif - - /* Extract any interesting information from the CIE for the translation - unit F belongs to. Return a pointer to the byte after the augmentation, ---- gcc/configure -+++ gcc/configure -@@ -12857,7 +12857,7 @@ then - | powerpc*-*-*,powerpc64*-*-*) - CROSS="$CROSS -DNATIVE_CROSS" ;; - esac --elif test "x$TARGET_SYSTEM_ROOT" != x; then -+elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then - SYSTEM_HEADER_DIR=$build_system_header_dir - fi - ---- gcc/configure.ac -+++ gcc/configure.ac -@@ -1717,7 +1717,7 @@ then - | powerpc*-*-*,powerpc64*-*-*) - CROSS="$CROSS -DNATIVE_CROSS" ;; - esac --elif test "x$TARGET_SYSTEM_ROOT" != x; then -+elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then - SYSTEM_HEADER_DIR=$build_system_header_dir - fi - diff --git a/sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch b/sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch deleted file mode 100644 index 6090d66d..00000000 --- a/sys-devel/gcc/files/4.1.0/gcc-4.1.0-fast-math-i386-Os-workaround.patch +++ /dev/null @@ -1,64 +0,0 @@ -workaround for lame stack packing on i386 ... - - - build gcc with -Os (crtfastmath.o to be specific) - - crtfastmath.o is installed into gcc libdir - - run gcc with -ffast-math and get crtfastmath.o linked in - - resulting compiled app segfaults due to init code in - crtfastmath.o that has mis-aligned structure on stack - -http://bugs.gentoo.org/147020 -http://gcc.gnu.org/PR28621 - -this is supposed to be fixed in current 4.1 branch, but i'm unable to get -the fix to work so until i can figure out what i'm doing wrong, we'll use -this workaround for now. - ---- gcc-4.1.1/gcc/config/i386/crtfastmath.c -+++ gcc-4.1.1/gcc/config/i386/crtfastmath.c -@@ -37,6 +37,23 @@ - #define FXSAVE (1 << 24) - #define SSE (1 << 25) - -+struct -+{ -+ unsigned short int cwd; -+ unsigned short int swd; -+ unsigned short int twd; -+ unsigned short int fop; -+ long int fip; -+ long int fcs; -+ long int foo; -+ long int fos; -+ long int mxcsr; -+ long int mxcsr_mask; -+ long int st_space[32]; -+ long int xmm_space[32]; -+ long int padding[56]; -+} __attribute__ ((aligned (16))) fxsave; -+ - static void __attribute__((constructor)) - set_fast_math (void) - { -@@ -75,22 +92,6 @@ - if (edx & FXSAVE) - { - /* Check if DAZ is available. */ -- struct -- { -- unsigned short int cwd; -- unsigned short int swd; -- unsigned short int twd; -- unsigned short int fop; -- long int fip; -- long int fcs; -- long int foo; -- long int fos; -- long int mxcsr; -- long int mxcsr_mask; -- long int st_space[32]; -- long int xmm_space[32]; -- long int padding[56]; -- } __attribute__ ((aligned (16))) fxsave; - - __builtin_memset (&fxsave, 0, sizeof (fxsave)); - -- cgit v1.2.3