diff options
author | Juergen Pfeifer <juergen.pfeifer@gmx.net> | 2001-09-30 22:06:23 +0000 |
---|---|---|
committer | Toon Moene <toon@gcc.gnu.org> | 2001-09-30 22:06:23 +0000 |
commit | dedc4a53c184f08a438cad9df5aa8c178e436966 (patch) | |
tree | d3f879a8c94cf574d2fa727c7a2c1ebdf8065cf3 /gcc/f | |
parent | e94494014fef2515bfd80f8cea773ab8a4a6c3a5 (diff) | |
download | gcc-dedc4a53c184f08a438cad9df5aa8c178e436966.zip gcc-dedc4a53c184f08a438cad9df5aa8c178e436966.tar.gz gcc-dedc4a53c184f08a438cad9df5aa8c178e436966.tar.bz2 |
Make libf2c a shared library (gcc/f directory).
2001-09-29 Juergen Pfeifer <juergen.pfeifer@gmx.net>
Make libf2c a shared library (gcc/f directory).
* Make-lang.in: Pass define of frtbegin.o to compilation of g77spec.c.
* g77spec.c (lang_specific_driver): Treat linking in of frtbegin.o.
2001-09-29 Juergen Pfeifer <juergen.pfeifer@gmx.net>
Toon Moene <toon@moene.indiv.nluug.nl>
Make libf2c a shared library (libf2c directory).
* aclocal.m4: Get definition of libtool.
* Makefile.in: Use libtool.
* configure.in: Use libtool.
* configure: Regenerated.
* libF77/Makefile.in: Use libtool; treat main program contained in
libF77/main.c specially.
* libF77/configure.in: Use libtool.
* libF77/configure: Regenerated.
* libI77/Makefile.in: Use libtool.
* libI77/configure.in: Use libtool.
* libI77/configure: Regenerated.
* libU77/Makefile.in: Use libtool.
* libU77/configure.in: Use libtool.
* libU77/configure: Regenerated.
* libU77/date_.c: Adapt for -fPIC compiling.
* libU77/vxtidate_.c: Ditto.
From-SVN: r45913
Diffstat (limited to 'gcc/f')
-rw-r--r-- | gcc/f/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/f/Make-lang.in | 1 | ||||
-rw-r--r-- | gcc/f/g77spec.c | 17 |
3 files changed, 24 insertions, 1 deletions
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog index dbeab8f..98009f9 100644 --- a/gcc/f/ChangeLog +++ b/gcc/f/ChangeLog @@ -1,3 +1,10 @@ +2001-09-29 Juergen Pfeifer <juergen.pfeifer@gmx.net> + + Make libf2c a shared library. + + * Make-lang.in: Pass define of frtbegin.o to compilation of g77spec.c. + * g77spec.c (lang_specific_driver): Treat linking in of frtbegin.o. + 2001-09-28 Robert Anderson <rwa@alumni.princeton.edu> * expr.c (ffeexpr_sym_rhs_dimlist_): Allow array elements diff --git a/gcc/f/Make-lang.in b/gcc/f/Make-lang.in index df0a4d1..b3034ca 100644 --- a/gcc/f/Make-lang.in +++ b/gcc/f/Make-lang.in @@ -73,6 +73,7 @@ g77spec.o: $(srcdir)/f/g77spec.c $(srcdir)/f/version.h $(SYSTEM_H) $(GCC_H) \ esac if [ -f lang-f77 ]; then \ $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ + -DFORTRAN_INIT=\"$(libsubdir)/frtbegin.o\" \ $(srcdir)/f/g77spec.c $(OUTPUT_OPTION); \ else true; fi diff --git a/gcc/f/g77spec.c b/gcc/f/g77spec.c index b096dc6..70d4fac 100644 --- a/gcc/f/g77spec.c +++ b/gcc/f/g77spec.c @@ -286,6 +286,9 @@ lang_specific_driver (in_argc, in_argv, in_added_libraries) 2 => last two args were -l<library> -lm. */ int saw_library = 0; + /* 0 => initial/reset state + 1 => FORTRAN_INIT linked in */ + int use_init = 0; /* By default, we throw on the math library if we have one. */ int need_math = (MATH_LIBRARY[0] != '\0'); @@ -518,7 +521,14 @@ For bug reporting instructions, please see:\n\ if (saw_library == 1) saw_library = 2; /* -l<library> -lm. */ else - append_arg (FORTRAN_LIBRARY); + { + if (0 == use_init) + { + append_arg (FORTRAN_INIT); + use_init = 1; + } + append_arg (FORTRAN_LIBRARY); + } } else if (strcmp (argv[i], FORTRAN_LIBRARY) == 0) saw_library = 1; /* -l<library>. */ @@ -542,6 +552,11 @@ For bug reporting instructions, please see:\n\ switch (saw_library) { case 0: + if (0 == use_init) + { + append_arg (FORTRAN_INIT); + use_init = 1; + } append_arg (library); case 1: if (need_math) |