diff mbox series

tools: fix linking hypervisor includes to tools include directory

Message ID 20190911060203.25202-1-jgross@suse.com (mailing list archive)
State New, archived
Headers show
Series tools: fix linking hypervisor includes to tools include directory | expand

Commit Message

Jürgen Groß Sept. 11, 2019, 6:02 a.m. UTC
An incremental build of tools/include won't pickup new hypervisor
headers in tools/include/xen. Fix that.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 tools/include/Makefile | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

Comments

Ian Jackson Sept. 11, 2019, 10:39 a.m. UTC | #1
Juergen Gross writes ("[PATCH] tools: fix linking hypervisor includes to tools include directory"):
> An incremental build of tools/include won't pickup new hypervisor
> headers in tools/include/xen. Fix that.

I personally I think trying to get this kind of thing to work properly
with recursive make is too hard to be worth trying.  But I won't stand
in your way.

Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Ian Jackson Sept. 20, 2019, 11:18 a.m. UTC | #2
Ian Jackson writes ("Re: [PATCH] tools: fix linking hypervisor includes to tools include directory"):
> Juergen Gross writes ("[PATCH] tools: fix linking hypervisor includes to tools include directory"):
> > An incremental build of tools/include won't pickup new hypervisor
> > headers in tools/include/xen. Fix that.
> 
> I personally I think trying to get this kind of thing to work properly
> with recursive make is too hard to be worth trying.  But I won't stand
> in your way.
> 
> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>

And committed.

Ian.
diff mbox series

Patch

diff --git a/tools/include/Makefile b/tools/include/Makefile
index 71538e1ce2..3d0192fbad 100644
--- a/tools/include/Makefile
+++ b/tools/include/Makefile
@@ -12,11 +12,14 @@  all-y:
 xen-foreign:
 	$(MAKE) -C xen-foreign
 
-xen/.dir:
+XEN_PUBLIC_INCLUDES = $(wildcard $(XEN_ROOT)/xen/include/public/*.h)
+XEN_LIB_X86_INCLUDES = $(filter-out %autogen.h, $(XEN_ROOT)/xen/include/xen/lib/x86/Makefile $(wildcard $(XEN_ROOT)/xen/include/xen/lib/x86/*.h))
+
+xen/.dir: $(XEN_PUBLIC_INCLUDES) $(XEN_LIB_X86_INCLUDES)
 	@rm -rf xen
 	mkdir -p xen/libelf
 	ln -sf $(XEN_ROOT)/xen/include/public/COPYING xen
-	ln -sf $(wildcard $(XEN_ROOT)/xen/include/public/*.h) xen
+	ln -sf $(XEN_PUBLIC_INCLUDES) xen
 	ln -sf $(addprefix $(XEN_ROOT)/xen/include/public/,arch-x86 arch-arm hvm io xsm) xen
 	ln -sf ../xen-sys/$(XEN_OS) xen/sys
 	ln -sf $(addprefix $(XEN_ROOT)/xen/include/xen/,libelf.h elfstructs.h) xen/libelf/
@@ -25,7 +28,7 @@  xen/.dir:
 ifeq ($(CONFIG_X86),y)
 	ln -sf $(XEN_ROOT)/xen/include/asm-x86 xen/asm
 	mkdir -p xen/lib/x86
-	for f in $(filter-out %autogen.h,$(patsubst $(XEN_ROOT)/xen/include/xen/lib/x86/%,%,Makefile $(wildcard $(XEN_ROOT)/xen/include/xen/lib/x86/*.h))); do \
+	for f in $(patsubst $(XEN_ROOT)/xen/include/xen/lib/x86/%,%,$(XEN_LIB_X86_INCLUDES)); do \
 		ln -sf $(XEN_ROOT)/xen/include/xen/lib/x86/$$f xen/lib/x86/$$f; \
 	done
 endif