From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: [PATCH XEN v7 01/29] stubdom: recurse into tools/include in mk-headers-$(XEN_TARGET_ARCH) rule Date: Wed, 16 Dec 2015 12:31:08 +0000 Message-ID: <1450269096-27598-2-git-send-email-ian.campbell@citrix.com> References: <1450269007.4053.48.camel@citrix.com> <1450269096-27598-1-git-send-email-ian.campbell@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1450269096-27598-1-git-send-email-ian.campbell@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: ian.jackson@eu.citrix.com, wei.liu2@citrix.com, xen-devel@lists.xen.org Cc: samuel.thibault@ens-lyon.org, Ian Campbell List-Id: xen-devel@lists.xenproject.org ... rather than in the libxc rule. This puts all the header dependencies in one place and will allow us to avoid races when more libraries which need these headers are introduced. I observed issues with the xen-foreign/tmp.size file getting deleted in parallel with another process trying to use it. The mini-os links are already created in the mk-headers-$(XEN_TARGET_ARCH) target so the other places which do so are redundant, in the case of polarssl and vtpmmgr indirectly through their eventual dependency on newlib which in turn depends on mk-headers-$(XEN_TARGET_ARCH). Signed-off-by: Ian Campbell Cc: samuel.thibault@ens-lyon.org --- v7: New patch. --- stubdom/Makefile | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/stubdom/Makefile b/stubdom/Makefile index e1359cf..fd84024 100644 --- a/stubdom/Makefile +++ b/stubdom/Makefile @@ -304,6 +304,7 @@ ioemu/linkfarm.stamp: endif mk-headers-$(XEN_TARGET_ARCH): $(IOEMU_LINKFARM_TARGET) + $(MAKE) -C $(XEN_ROOT)/tools/include mkdir -p include/xen && \ ln -sf $(wildcard $(XEN_ROOT)/xen/include/public/*.h) include/xen && \ ln -sf $(addprefix $(XEN_ROOT)/xen/include/public/,arch-x86 hvm io xsm) include/xen && \ @@ -341,9 +342,7 @@ $(TARGETS_MINIOS): mini-os-%: .PHONY: libxc libxc: libxc-$(XEN_TARGET_ARCH)/libxenctrl.a libxc-$(XEN_TARGET_ARCH)/libxenguest.a -libxc-$(XEN_TARGET_ARCH)/libxenctrl.a: cross-zlib - $(MAKE) -C $(XEN_ROOT)/tools/include - $(MAKE) DESTDIR= -C $(MINI_OS) links +libxc-$(XEN_TARGET_ARCH)/libxenctrl.a: mk-headers-$(XEN_TARGET_ARCH) cross-zlib CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= CONFIG_LIBXC_MINIOS=y -C libxc-$(XEN_TARGET_ARCH) libxc-$(XEN_TARGET_ARCH)/libxenguest.a: libxc-$(XEN_TARGET_ARCH)/libxenctrl.a @@ -386,7 +385,6 @@ c: $(CROSS_ROOT) .PHONY: vtpm vtpm: cross-polarssl cross-tpmemu - make -C $(MINI_OS) links XEN_TARGET_ARCH="$(XEN_TARGET_ARCH)" CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) -C $@ ###### @@ -395,7 +393,6 @@ vtpm: cross-polarssl cross-tpmemu .PHONY: vtpmmgr vtpmmgr: cross-polarssl - make -C $(MINI_OS) links XEN_TARGET_ARCH="$(XEN_TARGET_ARCH)" CPPFLAGS="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) -C $@ ###### -- 2.1.4