From 34806eda305c2da75ef89f0c88f9003ebc50a272 Mon Sep 17 00:00:00 2001 From: Geoffrey Keating Date: Tue, 20 Nov 2001 04:03:52 +0000 Subject: [PATCH] Index: f/ChangeLog * g77spec.c (lang_specific_driver) [ENABLE_SHARED_LIBGCC]: Add libgcc_s.so if libf2c is used. * Make-lang.in (g77spec.o): Use DRIVER_DEFINES. Index: testsuite/ChangeLog * lib/g77.exp: Don't specify --rpath-link. From-SVN: r47195 --- gcc/f/ChangeLog | 6 ++++++ gcc/f/Make-lang.in | 6 ++++-- gcc/f/g77spec.c | 17 +++++++++++++++++ gcc/testsuite/ChangeLog | 2 ++ gcc/testsuite/lib/g77.exp | 1 - 5 files changed, 29 insertions(+), 3 deletions(-) diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog index 065329396c1..f09a115a784 100644 --- a/gcc/f/ChangeLog +++ b/gcc/f/ChangeLog @@ -1,3 +1,9 @@ +2001-11-19 Geoffrey Keating + + * g77spec.c (lang_specific_driver) [ENABLE_SHARED_LIBGCC]: Add + libgcc_s.so if libf2c is used. + * Make-lang.in (g77spec.o): Use DRIVER_DEFINES. + 2001-11-19 Toon Moene * .cvsignore: Ignore g77.1 diff --git a/gcc/f/Make-lang.in b/gcc/f/Make-lang.in index e3f40849e21..db74f28d2f6 100644 --- a/gcc/f/Make-lang.in +++ b/gcc/f/Make-lang.in @@ -67,8 +67,10 @@ F77 f77: f771$(exeext) g77spec.o: $(srcdir)/f/g77spec.c $(srcdir)/f/version.h $(SYSTEM_H) $(GCC_H) \ $(CONFIG_H) - $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ - $(srcdir)/f/g77spec.c $(OUTPUT_OPTION) + (SHLIB_LINK='$(SHLIB_LINK)' \ + SHLIB_MULTILIB='$(SHLIB_MULTILIB)'; \ + $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \ + $(INCLUDES) $(srcdir)/f/g77spec.c) g77version.o: $(srcdir)/f/version.c $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -o g77version.o \ diff --git a/gcc/f/g77spec.c b/gcc/f/g77spec.c index 9b826209663..9c1faef87a1 100644 --- a/gcc/f/g77spec.c +++ b/gcc/f/g77spec.c @@ -523,6 +523,23 @@ or type the command `info -f g77 Copying'.\n\ } } +#ifdef ENABLE_SHARED_LIBGCC + if (library) + { + int i; + + for (i = 1; i < g77_newargc; i++) + if (g77_newargv[i][0] == '-') + if (strcmp (g77_newargv[i], "-static-libgcc") == 0 + || strcmp (g77_newargv[i], "-static") == 0) + break; + + if (i == g77_newargc) + append_arg ("-shared-libgcc"); + } + +#endif + if (verbose && g77_newargv != g77_xargv) { diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 447e36f82a4..750e1aa5500 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,7 @@ 2001-11-19 Geoffrey Keating + * lib/g77.exp: Don't specify --rpath-link. + * gcc.dg/cpp/cpp.exp: For testing on a remote host, copy across all the headers. * gcc.dg/format/format.exp: For testing on a remote host, diff --git a/gcc/testsuite/lib/g77.exp b/gcc/testsuite/lib/g77.exp index 0dd403dd202..2a08f15fef6 100644 --- a/gcc/testsuite/lib/g77.exp +++ b/gcc/testsuite/lib/g77.exp @@ -84,7 +84,6 @@ proc g77_link_flags { paths } { if [file exists "${gccpath}/libf2c/.libs/libg2c.a"] { append flags "-L${gccpath}/libf2c/.libs " if [file exists "${gccpath}/libf2c/.libs/libg2c.so"] { - append flags "-Wl,--rpath-link,${rootme} " append ld_library_path ":${gccpath}/libf2c/.libs" } } -- 2.30.2