/* lang-specs.h file for Fortran
- Copyright (C) 1995-1997 Free Software Foundation, Inc.
- Contributed by James Craig Burley (burley@gnu.org).
+ Copyright (C) 1995, 1996, 1997, 1999, 2000, 2002, 2003
+ Free Software Foundation, Inc.
+ Contributed by James Craig Burley.
This file is part of GNU Fortran.
/* This is the contribution to the `default_compilers' array in gcc.c for
g77. */
-#ifdef __STDC__ /* Else stringizing of OO below won't work, but in
- K&R case we're not building the f77 language. */
-
-#ifdef OBJECT_SUFFIX /* Not defined compiling gcc.c prior to 2.7.0. */
-#define OO "%O"
-#else
-#define OO ".o"
-#endif
-
- {".F", {"@f77-cpp-input"}},
- {".fpp", {"@f77-cpp-input"}},
+ {".F", "@f77-cpp-input", 0},
+ {".fpp", "@f77-cpp-input", 0},
+ {".FPP", "@f77-cpp-input", 0},
{"@f77-cpp-input",
- /* For f77 we want -traditional to avoid errors with, for
- instance, mismatched '. Also, we avoid unpleasant surprises
- with substitution of names not prefixed by `_' by using %P
- rather than %p (although this isn't consistent with SGI and
- Sun f77, at least) so you test `__unix' rather than `unix'.
- -D_LANGUAGE_FORTRAN is used by some compilers like SGI and
- might as well be in there. */
- {"cpp -lang-c %{nostdinc*} %{C} %{v} %{A*} %{I*} %{P} %I\
- %{C:%{!E:%eGNU C does not support -C without using -E}}\
- %{M} %{MM} %{MD:-MD %b.d} %{MMD:-MMD %b.d} %{MG}\
- -undef -D__GNUC__=%v1 -D__GNUC_MINOR__=%v2\
- %{ansi:-trigraphs -$ -D__STRICT_ANSI__}\
- %{!undef:%P} -D_LANGUAGE_FORTRAN %{trigraphs} \
- %c %{Os:-D__OPTIMIZE_SIZE__} %{O*:%{!O0:-D__OPTIMIZE__}} -traditional\
- %{g*} %{W*} %{w} %{pedantic*} %{H} %{d*} %C %{D*} %{U*} %{i*} %Z\
- %i %{!M:%{!MM:%{!E:%{!pipe:%g.i}}}}%{E:%W{o*}}%{M:%W{o*}}%{MM:%W{o*}} |\n",
- "%{!M:%{!MM:%{!E:f771 %{!pipe:%g.i} %(f771) \
- %{!Q:-quiet} -dumpbase %b.F %{d*} %{m*} %{a}\
- %{g*} %{O*} %{W*} %{w} %{pedantic*} \
- %{v:-version -fversion} %{pg:-p} %{p} %{f*} %{I*}\
- %{aux-info*}\
- %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
- %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}} |\n\
- %{!S:as %a %Y\
- %{c:%W{o*}%{!o*:-o %w%b" OO "}}%{!c:-o %d%w%u" OO "}\
- %{!pipe:%g.s} %A\n }}}}"}},
- {".r", {"@ratfor"}},
+ "cc1 -E -traditional-cpp -D_LANGUAGE_FORTRAN %(cpp_options) \
+ %{E|M|MM:%(cpp_debug_options)}\
+ %{!M:%{!MM:%{!E: -o %|.f |\n\
+ f771 %|.f %(cc1_options) %{I*} %{!fsyntax-only:%(invoke_as)}}}}", 0},
+ {".r", "@ratfor", 0},
{"@ratfor",
- {"ratfor %{C} %{v}\
- %{C:%{!E:%eGNU C does not support -C without using -E}}\
- %{!E:%{!pipe:-o %g.f}}%{E:%W{o*}} %i |\n",
- "%{!E:f771 %{!pipe:%g.f} %(f771) \
- %{!Q:-quiet} -dumpbase %b.r %{d*} %{m*} %{a}\
- %{g*} %{O*} %{W*} %{w} %{pedantic*} \
- %{v:-version -fversion} %{pg:-p} %{p} %{f*} %{I*}\
- %{aux-info*}\
- %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
- %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}} |\n\
- %{!S:as %a %Y\
- %{c:%W{o*}%{!o*:-o %w%b" OO "}}%{!c:-o %d%w%u" OO "}\
- %{!pipe:%g.s} %A\n }}"}},
- {".f", {"@f77"}},
- {".for", {"@f77"}},
+ "%{C:%{!E:%eGCC does not support -C without using -E}}\
+ %{CC:%{!E:%eGCC does not support -CC without using -E}}\
+ ratfor %{C} %{CC} %{v} %{E:%W{o*}} %{!E: %{!pipe:-o %g.f} %i |\n\
+ f771 %m.f %(cc1_options) %{I*} %{!fsyntax-only:%(invoke_as)}}", 0},
+ {".f", "@f77", 0},
+ {".for", "@f77", 0},
+ {".FOR", "@f77", 0},
{"@f77",
- {"%{!M:%{!MM:%{!E:f771 %i %(f771) \
- %{!Q:-quiet} -dumpbase %b.f %{d*} %{m*} %{a}\
- %{g*} %{O*} %{W*} %{w} %{pedantic*}\
- %{v:-version -fversion} %{pg:-p} %{p} %{f*} %{I*}\
- %{aux-info*}\
- %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
- %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}} |\n\
- %{!S:as %a %Y\
- %{c:%W{o*}%{!o*:-o %w%b" OO "}}%{!c:-o %d%w%u" OO "}\
- %{!pipe:%g.s} %A\n }}}}"}},
-
-#undef OO
-
-#endif
+ "%{!M:%{!MM:%{!E:f771 %i %(cc1_options) %{I*}\
+ %{!fsyntax-only:%(invoke_as)}}}}", 0},