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).
This commit is contained in:
parent
109483d9ee
commit
890e97902a
|
@ -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>
|
2017-10-09 Pedro Alves <palves@redhat.com>
|
||||||
|
|
||||||
* cp-support.c (cp_remove_params): Return a gdb::unique_xmalloc_ptr.
|
* cp-support.c (cp_remove_params): Return a gdb::unique_xmalloc_ptr.
|
||||||
|
|
|
@ -2952,12 +2952,13 @@ ifeq ($(DEPMODE),depmode=gcc3)
|
||||||
# into place if the compile succeeds. We need this because gcc does
|
# into place if the compile succeeds. We need this because gcc does
|
||||||
# not atomically write the dependency output file.
|
# not atomically write the dependency output file.
|
||||||
override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
|
override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
|
||||||
-MF $(@D)/$(DEPDIR)/$(@F).Tpo
|
-MF $(@D)/$(DEPDIR)/$(basename $(@F)).Tpo
|
||||||
override POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(@F).Tpo \
|
override POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(basename $(@F)).Tpo \
|
||||||
$(@D)/$(DEPDIR)/$(@F).Po
|
$(@D)/$(DEPDIR)/$(basename $(@F)).Po
|
||||||
else
|
else
|
||||||
override COMPILE.pre = source='$<' object='$@' libtool=no \
|
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
|
# depcomp handles atomicity for us, so we don't need a postcompile
|
||||||
# step.
|
# step.
|
||||||
override POSTCOMPILE =
|
override POSTCOMPILE =
|
||||||
|
|
Loading…
Reference in New Issue