Fix dependency tracking for objects in subdirectories
On irc, Pedro pointed out that dependencies for objects in subdirectories didn't seem to be working. The bug was that the "-include" for .deps files was using the wrong file name for subdirectory objects; e.g., for cli/cli-decode.o it was trying to open .deps/cli/cli-decode.o, whereas the correct file is cli/.deps/cli-decode.o. This patch changes how the dep files are found. Tested by touching a source file and rebuilding cli/cli-decode.o. 2017-12-01 Tom Tromey <tom@tromey.com> * Makefile.in (all_deps_files): New variable. Include .Po files using all_deps_files.
This commit is contained in:
parent
2ee0c9b3ee
commit
d0df06af9b
|
@ -1,3 +1,8 @@
|
||||||
|
2017-12-01 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
|
* Makefile.in (all_deps_files): New variable.
|
||||||
|
Include .Po files using all_deps_files.
|
||||||
|
|
||||||
2017-12-01 Joel Brobecker <brobecker@adacore.com>
|
2017-12-01 Joel Brobecker <brobecker@adacore.com>
|
||||||
|
|
||||||
* MAINTAINERS: Update list of maintainers, moving those who
|
* MAINTAINERS: Update list of maintainers, moving those who
|
||||||
|
|
|
@ -2644,6 +2644,10 @@ endif
|
||||||
all_object_files = gdb.o $(LIBGDB_OBS) gdbtk-main.o \
|
all_object_files = gdb.o $(LIBGDB_OBS) gdbtk-main.o \
|
||||||
test-cp-name-parser.o
|
test-cp-name-parser.o
|
||||||
|
|
||||||
|
# All the .deps files to include.
|
||||||
|
all_deps_files = $(foreach dep,$(patsubst %.o,%.Po,$(all_object_files)),\
|
||||||
|
$(dir $(dep))/$(DEPDIR)/$(notdir $(dep)))
|
||||||
|
|
||||||
# Ensure that generated files are created early. Use order-only
|
# Ensure that generated files are created early. Use order-only
|
||||||
# dependencies if available. They require GNU make 3.80 or newer,
|
# dependencies if available. They require GNU make 3.80 or newer,
|
||||||
# and the .VARIABLES variable was introduced at the same time.
|
# and the .VARIABLES variable was introduced at the same time.
|
||||||
|
@ -2654,7 +2658,7 @@ $(all_object_files) : $(generated_files)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Dependencies.
|
# Dependencies.
|
||||||
-include $(patsubst %.o, $(DEPDIR)/%.Po, $(all_object_files))
|
-include $(all_deps_files)
|
||||||
|
|
||||||
# Disable implicit make rules.
|
# Disable implicit make rules.
|
||||||
include $(srcdir)/disable-implicit-rules.mk
|
include $(srcdir)/disable-implicit-rules.mk
|
||||||
|
|
Loading…
Reference in New Issue