From e37b065ae19c998f8819d7f1c5cf7eb1ce53c348 Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Mon, 14 Oct 2002 21:55:26 +0000 Subject: [PATCH] re PR preprocessor/7862 (Interrupting gcc -MD removes .d file but not .o) 2002-10-14 Neil Booth PR preprocessor/7862 PR preprocessor/8190 * gcc.c (cpp_unique_options): Don't delete .d files. Remove stray whitespace. From-SVN: r58140 --- gcc/ChangeLog | 7 +++++++ gcc/gcc.c | 9 ++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7f6c7fb2a1c9..bc48fcf5d882 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2002-10-14 Neil Booth + + PR preprocessor/7862 + PR preprocessor/8190 + * gcc.c (cpp_unique_options): Don't delete .d files. + Remove stray whitespace. + 2002-10-14 Jakub Jelinek * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): diff --git a/gcc/gcc.c b/gcc/gcc.c index cf86f9bc2f22..8a5bfeeb67cb 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -674,12 +674,15 @@ static const char *link_libgcc_spec = LINK_LIBGCC_SPEC; static const char *trad_capable_cpp = "%{traditional|ftraditional|traditional-cpp:trad}cpp0"; +/* 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}}\ %{nostdinc*} %{C} %{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 -D__GXX_ABI_VERSION=102}\ %{!undef:%{!ansi:%{!std=*:%p}%{std=gnu*:%p}} %P} %{trigraphs}\ -- 2.47.2