aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <fxcoudert@gcc.gnu.org>2007-06-27 22:58:37 +0000
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2007-06-27 22:58:37 +0000
commit86db887aa6ae4c19c134d909899d3fc92781f737 (patch)
treea925f05a83569d4de9cc60c8b6dcf3ff583b607b /gcc/gcc.c
parent99920b6fbb5bb6006955dd497d40b666fb502216 (diff)
downloadgcc-86db887aa6ae4c19c134d909899d3fc92781f737.zip
gcc-86db887aa6ae4c19c134d909899d3fc92781f737.tar.gz
gcc-86db887aa6ae4c19c134d909899d3fc92781f737.tar.bz2
re PR other/31400 (enable static linking of support libraries through -static-libXY)
PR other/31400 * gcc.c (process_command): Recognize the new -static-libgfortran option. * lang.opt (static-libgfortran): New option. * gfortranspec.c (ADD_ARG_LIBGFORTRAN): New macro. (Option): Add OPTION_static and OPTION_static_libgfortran. (lookup_option): Handle the new -static-libgfortran option. (lang_specific_driver): Check whether -static is passed. Handle the new -static-libgfortran option. * options.c (gfc_handle_option): If -static-libgfortran is passed and isn't supported on this configuration, error out. From-SVN: r126068
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 11b6b08..32fb21b 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -4214,11 +4214,13 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"
switches[n_switches].live_cond = SWITCH_OK;
switches[n_switches].validated = 0;
switches[n_switches].ordering = 0;
- /* These are always valid, since gcc.c itself understands them. */
+ /* These are always valid, since gcc.c itself understands the
+ first four and gfortranspec.c understands -static-libgfortran. */
if (!strcmp (p, "save-temps")
|| !strcmp (p, "static-libgcc")
|| !strcmp (p, "shared-libgcc")
- || !strcmp (p, "pipe"))
+ || !strcmp (p, "pipe")
+ || !strcmp (p, "static-libgfortran"))
switches[n_switches].validated = 1;
else
{