summaryrefslogtreecommitdiff
path: root/rules.mak
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2009-12-21 10:06:55 +0100
committerAnthony Liguori <aliguori@us.ibm.com>2010-01-08 09:58:40 -0600
commit076d247142c1ff1e4d618557fc0acc62f6eb2a7c (patch)
tree91ba69a991591e278ba72675b17fd95bbfd091bf /rules.mak
parente726fe7d60d46636c74c1c4a8fac7e4a05efb163 (diff)
Use vpath directive
The vpath directive has two advantages over the VPATH variable: 1) it allows to skip searching of .o files; 2) the default semantics are to append to the vpath, so there is no confusion between "VPATH=xyz" and "VPATH+=xyz". Since "vpath %.c %.h PATH" is not valid, I'm introducing a wrapper macro to append one or more directories to the vpath. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'rules.mak')
-rw-r--r--rules.mak2
1 files changed, 2 insertions, 0 deletions
diff --git a/rules.mak b/rules.mak
index 9bcf9af95..094dc0924 100644
--- a/rules.mak
+++ b/rules.mak
@@ -39,6 +39,8 @@ quiet-command = $(if $(V),$1,$(if $(2),@echo $2 && $1, @$1))
cc-option = $(if $(shell $(CC) $1 $2 -S -o /dev/null -xc /dev/null \
>/dev/null 2>&1 && echo OK), $2, $3)
+set-vpath = $(if $1,$(foreach PATTERN,%.c %.h %.S, $(eval vpath $(PATTERN) $1)))
+
# Generate timestamp files for .h include files
%.h: %.h-timestamp