cppfiles.c (_cpp_read_file): Add to dependencies if requested.
authorJakub Jelinek <jakub@redhat.com>
Wed, 24 Jan 2001 18:44:40 +0000 (19:44 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 24 Jan 2001 18:44:40 +0000 (19:44 +0100)
* cppfiles.c (_cpp_read_file): Add to dependencies if requested.
* cppinit.c (cpp_start_read): Remove deps_add_dep call.
* tradcpp.c (main): Add -imacros or -include'd dependencies
for -M*.
* cpp.texi (-M, -MM): Document -M -include behaviour.

From-SVN: r39240

gcc/ChangeLog
gcc/cpp.texi
gcc/cppfiles.c
gcc/cppinit.c
gcc/tradcpp.c

index 64847977187e1f3bd9c9cfef077cc264ea844d88..e0b5617d658ad9354fd35b70e5b74a0784c6d18f 100644 (file)
@@ -1,3 +1,11 @@
+2001-01-24  Jakub Jelinek  <jakub@redhat.com>
+
+       * cppfiles.c (_cpp_read_file): Add to dependencies if requested.
+       * cppinit.c (cpp_start_read): Remove deps_add_dep call.
+       * tradcpp.c (main): Add -imacros or -include'd dependencies
+       for -M*.
+       * cpp.texi (-M, -MM): Document -M -include behaviour.
+
 2001-01-24  Roger Collins <roger@ProProject.com>
          
         * config/i386/xm-i386.h: Make __i386__ a boolean macro.
index 253d6ee6cba56c91037b7c7085026817da0c7088..19e95667d2b33cc499ab427ba123a5bc641b5e17 100644 (file)
@@ -3453,14 +3453,16 @@ Instead of outputting the result of preprocessing, output a rule
 suitable for @code{make} describing the dependencies of the main source
 file.  The preprocessor outputs one @code{make} rule containing the
 object file name for that source file, a colon, and the names of all the
-included files.  If there are many included files then the rule is split
-into several lines using @samp{\}-newline.
+included files, including those coming from @samp{-include} or
+@samp{-imacros} command line options.  If there are many included files
+then the rule is split into several lines using @samp{\}-newline.
 
 @item -MM
 @findex -MM
 Like @samp{-M}, but mention only the files included with @samp{#include
-"@var{file}"}.  System header files included with @samp{#include
-<@var{file}>} are omitted.
+"@var{file}"} or with @samp{-include} or @samp{-imacros} command line
+options.  System header files included with @samp{#include <@var{file}>}
+are omitted.
 
 @item -MF @var{file}
 @findex -MF
index c480cb456c034ff1bbdce4c013cdb9aecb6c169f..01b8d5fb6ae89f573c5f35c399b46889ef0084b8 100644 (file)
@@ -765,6 +765,9 @@ _cpp_read_file (pfile, fname)
       return 0;
     }
 
+  if (CPP_OPTION (pfile, print_deps))
+    deps_add_dep (pfile->deps, f->name);
+
   stack_include_file (pfile, f);
   return 1;
 }
index 93568f4b1fccca336502b8d184b5f63c3e33850f..ff4cdb38bbb7709abda21d534cda0e3cbdb82064 100644 (file)
@@ -911,13 +911,8 @@ cpp_start_read (pfile, fname)
     CPP_OPTION (pfile, out_fname) = "";
 
   if (CPP_OPTION (pfile, print_deps))
-    {
-      /* Set the default target (if there is none already), and
-        the dependency on the main file.  */
-      deps_add_default_target (pfile->deps, CPP_OPTION (pfile, in_fname));
-
-      deps_add_dep (pfile->deps, CPP_OPTION (pfile, in_fname));
-    }
+    /* Set the default target (if there is none already).  */
+    deps_add_default_target (pfile->deps, CPP_OPTION (pfile, in_fname));
 
   /* Open the main input file.  This must be done early, so we have a
      buffer to stand on.  */
index e5e0935b754ad7a49bea6f14c18802b9ae64d1ce..82de0bb7d693993b8645838ff7c543fcd70ec752 100644 (file)
@@ -848,6 +848,11 @@ main (argc, argv)
            perror_with_name (pend[i].arg);
            return FATAL_EXIT_CODE;
          }
+
+       /* For -M, add this file to the dependencies.  */
+       if (print_deps)
+         deps_add_dep (deps, pend[i].arg);
+
        finclude (fd, pend[i].arg, &outbuf);
       }
   indepth--;