---- 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 @@
+--- gcc-4.0-20040919/gcc/ada/link.c.orig 2004-09-13 12:18:40.000000000 +0200
++++ gcc-4.0-20040919/gcc/ada/link.c 2004-09-26 12:24:29.079704096 +0200
+@@ -164,9 +164,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 @@
+ const char *__gnat_object_file_option = "";
+-const char *__gnat_run_path_option = "-Wl,-rpath,";
+-char __gnat_shared_libgnat_default = STATIC;
+-int __gnat_link_max = 8192;
++const char *__gnat_run_path_option = "";
++char __gnat_shared_libgnat_default = SHARED;
++int __gnat_link_max = 131072;
+ unsigned char __gnat_objlist_file_supported = 1;
+ unsigned char __gnat_using_gnu_linker = 1;
+ const char *__gnat_object_library_extension = ".a";
+--- gcc-4.0-20040919/gcc/ada/Make-lang.in.orig 2004-09-01 12:46:47.000000000 +0200
++++ gcc-4.0-20040919/gcc/ada/Make-lang.in 2004-09-26 12:21:15.135188144 +0200
+@@ -378,7 +378,7 @@
+ ada/doctools/xgnatugn$(build_exeext): ada/xgnatugn.adb
+ -$(MKDIR) ada/doctools
+ $(CP) $^ ada/doctools
+- cd ada/doctools && gnatmake -q xgnatugn
++ cd ada/doctools && gnatmake -q xgnatugn -a0../rts
+
+ # Note that gnat_ugn_unw.texi does not depend on xgnatugn
+ # being built so we can distribute a pregenerated gnat_ugn_unw.info
+--- gcc-4.1-20050522/gcc/ada/Makefile.in.orig 2005-05-26 10:48:40.000000000 +0000
++++ gcc-4.1-20050522/gcc/ada/Makefile.in 2005-05-26 10:59:25.000000000 +0000
+@@ -139,7 +139,7 @@
objext = .o
exeext =
arext = .a
-soext = .so
+soext = .so.1
shext =
+ hyphen = -
- # Define this as & to perform parallel make on a Sequent.
-@@ -1269,6 +1269,46 @@
- LIBRARY_VERSION := $(LIB_VERSION)
- endif
+@@ -1364,7 +1414,7 @@
+ s-[a-o]*.adb s-[p-z]*.adb s-[a-o]*.ads s-[p-z]*.ads
-+ifeq ($(strip $(filter-out alpha% 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 sparc% 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 ppc% 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 powerpc% 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 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 +1807,9 @@
- # is guaranteed to overflow the buffer.
+ LIBGNAT=../rts/libgnat.a
+-GCC_LINK=$(CC) -static-libgcc $(ADA_INCLUDES)
++GCC_LINK=$(CC) $(ADA_INCLUDES)
- 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 +1822,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 +1936,15 @@
+ # when compiling the tools, the runtime has to be first on the path so that
+ # it hides the runtime files lying with the rest of the sources
+@@ -1644,7 +1694,8 @@
+ -o libgnarl$(hyphen)$(LIBRARY_VERSION)$(soext) \
+ $(GNATRTL_TASKING_OBJS) \
+ $(SO_OPTS)libgnarl$(hyphen)$(LIBRARY_VERSION)$(soext) \
+- $(THREADSLIB)
++ $(THREADSLIB) \
++ ./libgnat-$(LIBRARY_VERSION)$(soext)
+ cd rts; $(LN_S) libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
+ libgnat$(soext)
+ cd rts; $(LN_S) libgnarl$(hyphen)$(LIBRARY_VERSION)$(soext) \
+@@ -1691,7 +1742,7 @@
THREAD_KIND="$(THREAD_KIND)" \
gnatlib
- $(RM) rts/libgnat$(soext) rts/libgnarl$(soext)
+ $(RM) rts/libgna*$(soext)
- cd rts; ../../xgcc -B../../ -shared $(TARGET_LIBGCC2_CFLAGS) \
+ cd rts; ../../xgcc -B../../ -shared -shared-libgcc $(TARGET_LIBGCC2_CFLAGS) \
- -o libgnat-$(LIBRARY_VERSION)$(soext) \
+ -o libgnat$(hyphen)$(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)
-
+ $(SO_OPTS)libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) $(MISCLIB)