aboutsummaryrefslogtreecommitdiff
path: root/rules.mak
diff options
context:
space:
mode:
authorVictor Kaplansky <victork@redhat.com>2015-08-09 12:39:53 +0300
committerMichael S. Tsirkin <mst@redhat.com>2015-08-13 14:08:24 +0300
commit998b7b1db4f61ee2784d8e9050c3dda15abd4425 (patch)
treedc56e6c221e78b42f2e5836f18ba205f323ddb9b /rules.mak
parent5c79ae3615d5dafdf1bb09b7a356a3a005714e3d (diff)
make: fix where dependency *.d are stored.
In rules like "bar/%.o: %.c" there is a difference between $(*D) and $(@D). $(*D) expands to '.', while $(@D) expands to 'bar'. It is cleaner to generate *.d in the same directory where appropriate *.o resides. This allows precise including of dependency info from .d files. As a hack, we also touch two sources for generated *.hex files. Without this hack, anyone doing "git pull; make" will not get *.hex rebuilt correctly since the dependency file would be missing. Signed-off-by: Victor Kaplansky <victork@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'rules.mak')
-rw-r--r--rules.mak2
1 files changed, 1 insertions, 1 deletions
diff --git a/rules.mak b/rules.mak
index aec27f81db..6e35c361bb 100644
--- a/rules.mak
+++ b/rules.mak
@@ -17,7 +17,7 @@ MAKEFLAGS += -rR
QEMU_CXXFLAGS = -D__STDC_LIMIT_MACROS $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wold-style-declaration -Wold-style-definition -Wredundant-decls, $(QEMU_CFLAGS))
# Flags for dependency generation
-QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d
+QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(@D)/$(*F).d
# Same as -I$(SRC_PATH) -I., but for the nested source/object directories
QEMU_INCLUDES += -I$(<D) -I$(@D)