--- /dev/null
+--- gcc-3.4.0/gcc/ada/link.c.orig Mon Jan 12 12:45:24 2004
++++ gcc-3.4.0/gcc/ada/link.c Tue Jun 1 15:57:42 2004
+@@ -165,9 +165,9 @@
+
+ #elif defined (linux)
+ const char *object_file_option = "";
+-const char *run_path_option = "-Wl,-rpath,";
+-char shared_libgnat_default = STATIC;
+-int link_max = 8192;
++const char *run_path_option = "";
++char shared_libgnat_default = SHARED;
++int link_max = 131072;
+ unsigned char objlist_file_supported = 1;
+ unsigned char using_gnu_linker = 1;
+ const char *object_library_extension = ".a";
+--- gcc-3.4.0/gcc/ada/Makefile.in.orig Mon Apr 26 11:19:09 2004
++++ gcc-3.4.0/gcc/ada/Makefile.in Tue Jun 1 15:58:33 2004
+@@ -142,7 +142,7 @@
+ objext = .o
+ exeext =
+ arext = .a
+-soext = .so
++soext = .so.1
+ shext =
+
+ # Define this as & to perform parallel make on a Sequent.
+@@ -1269,6 +1269,90 @@
+ LIBRARY_VERSION := $(LIB_VERSION)
+ endif
+
++ifeq ($(strip $(filter-out alpha% linux%,$(arch) $(osys))),)
++ LIBGNAT_TARGET_PAIRS = \
++ a-intnam.ads<4lintnam.ads \
++ s-inmaop.adb<7sinmaop.adb \
++ s-intman.adb<7sintman.adb \
++ s-osinte.ads<5iosinte.ads \
++ s-osinte.adb<5iosinte.adb \
++ s-osprim.adb<7sosprim.adb \
++ s-taprop.adb<5itaprop.adb \
++ s-tpopsp.adb<5atpopsp.adb \
++ s-taspri.ads<5itaspri.ads \
++ system.ads<5nsystem.ads
++ TOOLS_TARGET_PAIRS=mlib-tgt.adb<5lml-tgt.adb
++ THREADSLIB=-lpthread
++ GNATLIB_SHARED=gnatlib-shared-dual
++ PREFIX_OBJS=$(PREFIX_REAL_OBJS)
++ LIBRARY_VERSION := $(LIB_VERSION)
++endif
++
++ifeq ($(strip $(filter-out sparc% linux%,$(arch) $(osys))),)
++ LIBGNAT_TARGET_PAIRS = \
++ a-intnam.ads<4lintnam.ads \
++ s-inmaop.adb<7sinmaop.adb \
++ s-intman.adb<7sintman.adb \
++ s-osinte.ads<5iosinte.ads \
++ s-osinte.adb<5iosinte.adb \
++ s-osprim.adb<7sosprim.adb \
++ s-taprop.adb<5itaprop.adb \
++ s-tpopsp.adb<5atpopsp.adb \
++ s-taspri.ads<5itaspri.ads
++# system.ads<5ssystem.ads (Tick and Stack_Check_Probes differ)
++ TOOLS_TARGET_PAIRS=mlib-tgt.adb<5lml-tgt.adb
++ THREADSLIB=-lpthread
++ GNATLIB_SHARED=gnatlib-shared-dual
++ PREFIX_OBJS=$(PREFIX_REAL_OBJS)
++ LIBRARY_VERSION := $(LIB_VERSION)
++endif
++
++ifeq ($(strip $(filter-out ppc% linux%,$(arch) $(osys))),)
++ LIBGNAT_TARGET_PAIRS = \
++ a-intnam.ads<4lintnam.ads \
++ s-inmaop.adb<7sinmaop.adb \
++ s-intman.adb<7sintman.adb \
++ s-osinte.ads<5iosinte.ads \
++ s-osinte.adb<5iosinte.adb \
++ s-osprim.adb<7sosprim.adb \
++ s-taprop.adb<5itaprop.adb \
++ s-tpopsp.adb<5atpopsp.adb \
++ s-taspri.ads<5itaspri.ads
++# system.ads<59system.ads (???)
++ TOOLS_TARGET_PAIRS=mlib-tgt.adb<5lml-tgt.adb
++ THREADSLIB=-lpthread
++ GNATLIB_SHARED=gnatlib-shared-dual
++ PREFIX_OBJS=$(PREFIX_REAL_OBJS)
++ LIBRARY_VERSION := $(LIB_VERSION)
++endif
++
++ifeq ($(strip $(filter-out powerpc% linux%,$(arch) $(osys))),)
++ LIBGNAT_TARGET_PAIRS = \
++ a-intnam.ads<4lintnam.ads \
++ s-inmaop.adb<7sinmaop.adb \
++ s-intman.adb<7sintman.adb \
++ s-osinte.ads<5iosinte.ads \
++ s-osinte.adb<5iosinte.adb \
++ s-osprim.adb<7sosprim.adb \
++ s-taprop.adb<5itaprop.adb \
++ s-tpopsp.adb<5atpopsp.adb \
++ s-taspri.ads<5itaspri.ads
++# system.ads<59system.ads (???)
++ TOOLS_TARGET_PAIRS=mlib-tgt.adb<5lml-tgt.adb
++ THREADSLIB=-lpthread
++ GNATLIB_SHARED=gnatlib-shared-dual
++ PREFIX_OBJS=$(PREFIX_REAL_OBJS)
++ LIBRARY_VERSION := $(LIB_VERSION)
++endif
++
++ifeq ($(strip $(filter-out s390% linux%,$(arch) $(osys))),)
++ TOOLS_TARGET_PAIRS=mlib-tgt.adb<5lml-tgt.adb
++ THREADSLIB=-lpthread
++ GNATLIB_SHARED=gnatlib-shared-dual
++ PREFIX_OBJS=$(PREFIX_REAL_OBJS)
++ LIBRARY_VERSION := $(LIB_VERSION)
++endif
++
+ ifeq ($(strip $(filter-out %x86_64 linux%,$(arch) $(osys))),)
+ LIBGNAT_TARGET_PAIRS = \
+ a-intnam.ads<4lintnam.ads \
+@@ -1767,6 +1840,9 @@
+ # is guaranteed to overflow the buffer.
+
+ gnatlib: ../stamp-gnatlib1 ../stamp-gnatlib2
++ $(RMDIR) save
++ $(MKDIR) save
++ $(MV) *.o save/
+ $(MAKE) -C rts CC="../../xgcc -B../../" \
+ INCLUDES="$(INCLUDES_FOR_SUBDIR) -I./../.." \
+ CFLAGS="$(GNATLIBCFLAGS_FOR_C)" \
+@@ -1779,6 +1855,8 @@
+ srcdir=$(fsrcdir) \
+ -f ../Makefile \
+ $(GNATRTL_OBJS)
++ $(MV) save/*.o .
++ $(RMDIR) save
+ $(RM) rts/libgnat$(arext) rts/libgnarl$(arext)
+ $(AR) $(AR_FLAGS) rts/libgnat$(arext) \
+ $(addprefix rts/,$(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS))
+@@ -1891,14 +1969,15 @@
+ THREAD_KIND="$(THREAD_KIND)" \
+ gnatlib
+ $(RM) rts/libgnat$(soext) rts/libgnarl$(soext)
+- cd rts; ../../xgcc -B../../ -shared $(TARGET_LIBGCC2_CFLAGS) \
++ cd rts; ../../xgcc -B../../ -shared -shared-libgcc $(TARGET_LIBGCC2_CFLAGS) \
+ -o libgnat-$(LIBRARY_VERSION)$(soext) \
+ $(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS) \
+ $(SO_OPTS)libgnat-$(LIBRARY_VERSION)$(soext) $(MISCLIB) -lm
+ cd rts; ../../xgcc -B../../ -shared $(TARGET_LIBGCC2_CFLAGS) \
+ -o libgnarl-$(LIBRARY_VERSION)$(soext) \
+ $(GNATRTL_TASKING_OBJS) \
+- $(SO_OPTS)libgnarl-$(LIBRARY_VERSION)$(soext) $(THREADSLIB)
++ $(SO_OPTS)libgnarl-$(LIBRARY_VERSION)$(soext) $(THREADSLIB) \
++ ./libgnat-$(LIBRARY_VERSION)$(soext)
+ cd rts; $(LN_S) libgnat-$(LIBRARY_VERSION)$(soext) libgnat$(soext)
+ cd rts; $(LN_S) libgnarl-$(LIBRARY_VERSION)$(soext) libgnarl$(soext)
+
--- /dev/null
+--- gcc-3.3.3/gcc/Makefile.in.orig 2004-02-16 18:57:42.824016056 +0100
++++ gcc-3.3.3/gcc/Makefile.in 2004-02-16 18:59:52.167352880 +0100
+@@ -65,9 +65,9 @@
+ # TCFLAGS is used for compilations with the GCC just built.
+ XCFLAGS =
+ TCFLAGS =
+-CFLAGS = -g
+-STAGE1_CFLAGS = -g @stage1_cflags@
+-BOOT_CFLAGS = -g -O2
++CFLAGS =
++STAGE1_CFLAGS = @stage1_cflags@
++BOOT_CFLAGS = -O2
+
+ # Flags to determine code coverage. When coverage is disabled, this will
+ # contain the optimization flags, as you normally want code coverage
+@@ -390,7 +390,7 @@
+
+ # Options to use when compiling libgcc2.a.
+ #
+-LIBGCC2_DEBUG_CFLAGS = -g
++LIBGCC2_DEBUG_CFLAGS =
+ LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(TARGET_LIBGCC2_CFLAGS) $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED @inhibit_libc@
+
+ # Additional options to use when compiling libgcc2.a.
+--- gcc-3.3.3/gcc/ada/Makefile.in.orig 2004-02-16 08:29:33.000000000 +0100
++++ gcc-3.3.3/gcc/ada/Makefile.in 2004-02-16 19:04:55.708207656 +0100
+@@ -73,7 +73,7 @@
+ # to the stage2 and stage3 compilations
+ # XCFLAGS is used for most compilations but not when using the GCC just built.
+ XCFLAGS =
+-CFLAGS = -g
++CFLAGS =
+ BOOT_CFLAGS = -O $(CFLAGS)
+ # These exists to be overridden by the x-* and t-* files, respectively.
+ X_CFLAGS =
+@@ -127,7 +127,7 @@
+ SOME_ADAFLAGS =-gnata
+ FORCE_DEBUG_ADAFLAGS = -g
+ GNATLIBFLAGS = -gnatpg
+-GNATLIBCFLAGS = -g -O2
++GNATLIBCFLAGS = -O2
+ GNATLIBCFLAGS_FOR_C = $(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS) -fexceptions \
+ -DIN_RTS
+ ALL_ADA_CFLAGS = $(X_ADA_CFLAGS) $(T_ADA_CFLAGS) $(ADA_CFLAGS)
+--- gcc-3.3.3/libjava/Makefile.am.orig 2004-02-16 08:29:34.000000000 +0100
++++ gcc-3.3.3/libjava/Makefile.am 2004-02-16 19:02:25.582030304 +0100
+@@ -95,7 +95,7 @@
+ AM_CFLAGS = @LIBGCJ_CFLAGS@
+ endif
+
+-JCFLAGS = -g
++JCFLAGS =
+ JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS)
+
+ LIBFFIINCS = @LIBFFIINCS@
+--- gcc-3.3.3/libjava/Makefile.in.orig 2004-02-16 08:29:34.000000000 +0100
++++ gcc-3.3.3/libjava/Makefile.in 2004-02-16 19:02:31.196176824 +0100
+@@ -180,7 +180,7 @@
+ @USING_GCC_TRUE@AM_CFLAGS = @USING_GCC_TRUE@@LIBGCJ_CFLAGS@ $(WARNINGS)
+ @USING_GCC_FALSE@AM_CFLAGS = @USING_GCC_FALSE@@LIBGCJ_CFLAGS@
+
+-JCFLAGS = -g
++JCFLAGS =
+ JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS)
+
+ LIBFFIINCS = @LIBFFIINCS@