aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2017-10-08 17:12:19 -0600
committerTom Tromey <tom@tromey.com>2017-10-09 09:23:22 -0600
commit890e97902a21a3b88f9b6028852736b813303029 (patch)
tree7e74c540e4f8f7239432eb017160c69ee90b9625
parent109483d9eec3f0d0c3eaafd5d829435059167c52 (diff)
downloadfsf-binutils-gdb-890e97902a21a3b88f9b6028852736b813303029.zip
fsf-binutils-gdb-890e97902a21a3b88f9b6028852736b813303029.tar.gz
fsf-binutils-gdb-890e97902a21a3b88f9b6028852736b813303029.tar.bz2
Fix automatic dependency tracking
Commit f38307f5 changed COMPILE.post and POSTCOMPILE to remove $(basename) from the dependency file name computation. However, it did not update the `-include' at the end of the Makefile.in; this in effect disabled automatic dependency tracking. This patch restores the $(basename) wrapper so that the dependency files are named "file.Po" rather than "file.o.Po". I also tested the non-gcc3 dependency mode, which pointed out that this case hadn't been working since the switch to C++. This is also fixed in this patch. Tested by rebuilding. ChangeLog 2017-10-09 Tom Tromey <tom@tromey.com> * Makefile.in (COMPILE.post, POSTCOMPILE): Restore $(basename). (COMPILE.pre): Use $(CXX).
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/Makefile.in9
2 files changed, 10 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 9bf5f6e..0688f95 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2017-10-09 Tom Tromey <tom@tromey.com>
+
+ * Makefile.in (COMPILE.post, POSTCOMPILE): Restore $(basename).
+ (COMPILE.pre): Use $(CXX).
+
2017-10-09 Pedro Alves <palves@redhat.com>
* cp-support.c (cp_remove_params): Return a gdb::unique_xmalloc_ptr.
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index da4095d..18e7750 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -2952,12 +2952,13 @@ ifeq ($(DEPMODE),depmode=gcc3)
# into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file.
override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
- -MF $(@D)/$(DEPDIR)/$(@F).Tpo
-override POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(@F).Tpo \
- $(@D)/$(DEPDIR)/$(@F).Po
+ -MF $(@D)/$(DEPDIR)/$(basename $(@F)).Tpo
+override POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(basename $(@F)).Tpo \
+ $(@D)/$(DEPDIR)/$(basename $(@F)).Po
else
override COMPILE.pre = source='$<' object='$@' libtool=no \
- DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
+ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) \
+ $(CXX) -x c++ $(CXX_DIALECT)
# depcomp handles atomicity for us, so we don't need a postcompile
# step.
override POSTCOMPILE =