diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-03-25 23:36:47 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-03-25 23:36:47 +0000 |
commit | cdf76fe244a22ed695019de870e3fe50bb4d37e3 (patch) | |
tree | 82a107672c18cff842e14926be68dcfac406ad19 /gcc/gcc.c | |
parent | eb9c87056742170e383f87e5c5bfefb4dfb0855c (diff) | |
download | gcc-cdf76fe244a22ed695019de870e3fe50bb4d37e3.tar.gz |
* gcc.c: Compile unconditionally all code formerly dependent
on #ifdef LANG_SPECIFIC_DRIVER.
* gccspec.c: New file with stub lang_specific_driver,
lang_specific_pre_link.
* Makefile.in: Link gccspec.o into xgcc. Add rule to compile
gccspec.c.
* cp/Make-lang.in: Remove all references to g++.o/g++.c.
Link g++ from gcc.o.
* f/Make-lang.in: Remove all references to g77.o/g77.c.
Link g77 from gcc.o.
* java/Make-lang.in: Remove all references to gcj.o/gcj.c.
Link gcj from gcc.o.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25989 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r-- | gcc/gcc.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/gcc/gcc.c b/gcc/gcc.c index 5a9f37bc6f0..a56cf114505 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -214,16 +214,15 @@ static void fatal_error PROTO ((int)); void fancy_abort PROTO((void)) ATTRIBUTE_NORETURN; -#ifdef LANG_SPECIFIC_DRIVER /* Called before processing to change/add/remove arguments. */ -extern void lang_specific_driver PROTO ((void (*) PVPROTO((const char *, ...)), int *, char ***, int *)); +extern void lang_specific_driver PROTO ((void (*) PVPROTO((const char *, ...)), + int *, char ***, int *)); /* Called before linking. Returns 0 on success and -1 on failure. */ extern int lang_specific_pre_link (); /* Number of extra output files that lang_specific_pre_link may generate. */ extern int lang_specific_extra_outfiles; -#endif /* Specs are strings containing lines, each of which (if not blank) is made up of a program name, and arguments separated by spaces. @@ -2379,7 +2378,7 @@ static struct infile *infiles; static int n_infiles; -/* This counts the number of libraries added by LANG_SPECIFIC_DRIVER, so that +/* This counts the number of libraries added by lang_specific_driver, so that we can tell if there were any user supplied any files or libraries. */ static int added_libraries; @@ -2719,10 +2718,8 @@ process_command (argc, argv) /* Convert new-style -- options to old-style. */ translate_options (&argc, &argv); -#ifdef LANG_SPECIFIC_DRIVER /* Do language-specific adjustment/addition of flags. */ lang_specific_driver (fatal, &argc, &argv, &added_libraries); -#endif /* Scan argv twice. Here, the first time, just count how many switches there will be in their vector, and how many input files in theirs. @@ -3747,9 +3744,8 @@ do_spec_1 (spec, inswitch, soft_matched_part) case 'o': { int max = n_infiles; -#ifdef LANG_SPECIFIC_DRIVER max += lang_specific_extra_outfiles; -#endif + for (i = 0; i < max; i++) if (outfiles[i]) store_arg (outfiles[i], 0, 0); @@ -5008,9 +5004,7 @@ main (argc, argv) that correspond to the input files. */ i = n_infiles; -#ifdef LANG_SPECIFIC_DRIVER i += lang_specific_extra_outfiles; -#endif outfiles = (const char **) xmalloc (i * sizeof (char *)); bzero ((char *) outfiles, i * sizeof (char *)); @@ -5109,7 +5103,6 @@ main (argc, argv) clear_failure_queue (); } -#ifdef LANG_SPECIFIC_DRIVER if (error_count == 0) { /* Make sure INPUT_FILE_NUMBER points to first available open @@ -5118,7 +5111,6 @@ main (argc, argv) if (lang_specific_pre_link ()) error_count++; } -#endif /* Run ld to link all the compiler output files. */ |