summaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2002-10-12 17:10:20 +0000
committerneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2002-10-12 17:10:20 +0000
commiteb95e7f79a0692ecac4289d6db91b83d1b4c349d (patch)
tree4c5bb40c8243c8d81d98f8077368efdfb23e77f5 /gcc/gcc.c
parent9f280fe9060330b090b5765927df80c46b38f392 (diff)
downloadgcc-eb95e7f79a0692ecac4289d6db91b83d1b4c349d.tar.gz
PR preprocessor/7862
PR preprocessor/8190 * gcc.c (cpp_unique_options): Don't delete .d files. Remove stray whitespace. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@58088 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 4f360c86b69..1018513f5c7 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -673,13 +673,16 @@ static const char *startfile_prefix_spec = STARTFILE_PREFIX_SPEC;
static const char *trad_capable_cpp =
"cc1 -E %{traditional|ftraditional|traditional-cpp:-traditional-cpp}";
+/* We don't wrap .d files in %W{} since a missing .d file, and
+ therefore no dependency entry, confuses make into thinking a .o
+ file that happens to exist is up-to-date. */
static const char *cpp_unique_options =
"%{C:%{!E:%eGNU C does not support -C without using -E}}\
%{CC:%{!E:%eGNU C does not support -CC without using -E}}\
%{!Q:-quiet} %{nostdinc*} %{C} %{CC} %{v} %{I*} %{P} %I\
- %{MD:-MD %W{!o: %b.d}%W{o*:%.d%*}}\
- %{MMD:-MMD %W{!o: %b.d}%W{o*:%.d%*}}\
- %{M} %{MM} %W{MF*} %{MG} %{MP} %{MQ*} %{MT*}\
+ %{MD:-MD %{!o:%b.d}%{o*:%.d%*}}\
+ %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}}\
+ %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*}\
%{!E:%{!M:%{!MM:%{MD|MMD:%{o*:-MQ %*}}}}}\
%{!no-gcc:-D__GNUC__=%v1 -D__GNUC_MINOR__=%v2 -D__GNUC_PATCHLEVEL__=%v3}\
%{!undef:%{!ansi:%{!std=*:%p}%{std=gnu*:%p}} %P} %{trigraphs}\