From: Tom Tromey Date: Sun, 8 Oct 2017 23:12:19 +0000 (-0600) Subject: Fix automatic dependency tracking X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=890e97902a21a3b88f9b6028852736b813303029;p=binutils-gdb.git 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 * Makefile.in (COMPILE.post, POSTCOMPILE): Restore $(basename). (COMPILE.pre): Use $(CXX). --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9bf5f6e149f..0688f95e64e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2017-10-09 Tom Tromey + + * Makefile.in (COMPILE.post, POSTCOMPILE): Restore $(basename). + (COMPILE.pre): Use $(CXX). + 2017-10-09 Pedro Alves * cp-support.c (cp_remove_params): Return a gdb::unique_xmalloc_ptr. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index da4095d4a25..18e7750abaf 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 =