summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2002-12-04 15:57:11 +0000
committerobrien <obrien@FreeBSD.org>2002-12-04 15:57:11 +0000
commit663dcc27f05d324b59c49ef8410ee15ee65ed2e3 (patch)
tree74673071ad9bb5dafb9621b05a9e545cc27609b9
parent3f4eb16912dc1f9a1ca722a79e205db835bbb7c8 (diff)
downloadFreeBSD-src-663dcc27f05d324b59c49ef8410ee15ee65ed2e3.zip
FreeBSD-src-663dcc27f05d324b59c49ef8410ee15ee65ed2e3.tar.gz
Merge revs 1.{2,15} (FREEBSD_NATIVE); 1.21 ("GCC_OPTIONS"); 1.{16,25,27}
(cross compiling issues) into GCC 3.2.1 release. Note revs 1.{5,13} (ELF and objformat support) are OBE with the a.out dike-out.
-rw-r--r--contrib/gcc/gcc.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/contrib/gcc/gcc.c b/contrib/gcc/gcc.c
index 5b8d94a..c1e8bf9 100644
--- a/contrib/gcc/gcc.c
+++ b/contrib/gcc/gcc.c
@@ -676,12 +676,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}\
OpenPOWER on IntegriCloud