* [PATCH v4 0/3] Move xenstore and libxc public headers to include subdir
@ 2014-08-01 15:30 Stefano Stabellini
2014-08-01 15:32 ` [PATCH v4 1/3] " Stefano Stabellini
` (2 more replies)
0 siblings, 3 replies; 23+ messages in thread
From: Stefano Stabellini @ 2014-08-01 15:30 UTC (permalink / raw)
To: xen-devel; +Cc: Ian Jackson, Ian Campbell, Stefano Stabellini
Hi all,
this small patch series creates an "include" subdirectory under
tools/libxc and another "include" subdirectory under tools/xenstore.
Then it moves the libxc and xenstore public headers under their new
subdirectories.
This way other Xen tools or external projects, such as QEMU, can add to
their include paths only the subdirectories with the public headers.
The first patch is for xen-unstable and it is the one making the move.
The second patch is for qemu-xen-traditional and makes the appropriate
changes to qemu-xen-traditional's Makefiles.
They should be applied together.
The third and last patch is for xen-unstable and enables the QEMU build
for ARM and ARMv8.
Changes in v4:
- rebased on a1ac4cf52e38386bac7ac3440c7da0099662ca5c.
Cheers,
Stefano
^ permalink raw reply [flat|nested] 23+ messages in thread* [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-01 15:30 [PATCH v4 0/3] Move xenstore and libxc public headers to include subdir Stefano Stabellini @ 2014-08-01 15:32 ` Stefano Stabellini 2014-08-06 14:53 ` Ian Jackson 2014-08-01 15:32 ` [PATCH v4 2/3] qemu-xen-trad: -I tools/libxc/include and tools/xenstore/include Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 3/3] enable QEMU for ARM builds Stefano Stabellini 2 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-08-01 15:32 UTC (permalink / raw) To: xen-devel; +Cc: Ian.Jackson, Ian.Campbell, Stefano Stabellini Also moves xc_dom.h to include as it is used often by other xen tools. Use the new include subdirectories to build Xen tools and qemu-xen. Add the old libxc include path to the programs that need it to build, on a case by case basis and commeting that they shouldn't require internal libxc headers to build. This patch should be applied at the same time at this patch for qemu-xen-traditional (also sent as part of this series): http://marc.info/?l=xen-devel&m=140500949902568 Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Also moves xc_dom.h to include as it is used often by other xen tools. Use the new include subdirectories to build Xen tools and qemu-xen. Add the old libxc include path to the programs that need it to build, on a case by case basis and commeting that they shouldn't require internal libxc headers to build. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> --- tools/Makefile | 6 +++--- tools/Rules.mk | 6 +++--- tools/blktap2/drivers/Makefile | 2 ++ tools/libxc/Makefile | 6 +++--- tools/libxc/{ => include}/xc_dom.h | 0 tools/libxc/{ => include}/xenctrl.h | 0 tools/libxc/{ => include}/xenctrlosdep.h | 0 tools/libxc/{ => include}/xenguest.h | 0 tools/libxc/{ => include}/xentoollog.h | 0 tools/misc/Makefile | 2 ++ tools/python/setup.py | 6 +++--- tools/xcutils/Makefile | 3 ++- tools/xenpaging/Makefile | 3 ++- tools/xenstore/Makefile | 9 +++++---- tools/xenstore/{ => include}/compat/xs.h | 0 tools/xenstore/{ => include}/compat/xs_lib.h | 0 tools/xenstore/{ => include}/xenstore.h | 0 tools/xenstore/{ => include}/xenstore_lib.h | 0 18 files changed, 25 insertions(+), 18 deletions(-) rename tools/libxc/{ => include}/xc_dom.h (100%) rename tools/libxc/{ => include}/xenctrl.h (100%) rename tools/libxc/{ => include}/xenctrlosdep.h (100%) rename tools/libxc/{ => include}/xenguest.h (100%) rename tools/libxc/{ => include}/xentoollog.h (100%) rename tools/xenstore/{ => include}/compat/xs.h (100%) rename tools/xenstore/{ => include}/compat/xs_lib.h (100%) rename tools/xenstore/{ => include}/xenstore.h (100%) rename tools/xenstore/{ => include}/xenstore_lib.h (100%) diff --git a/tools/Makefile b/tools/Makefile index b6476c9..1130369 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -192,9 +192,9 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find --includedir=$(PREFIX)/lib/xen/include \ --source-path=$$source \ --extra-cflags="-I$(XEN_ROOT)/tools/include \ - -I$(XEN_ROOT)/tools/libxc \ - -I$(XEN_ROOT)/tools/xenstore \ - -I$(XEN_ROOT)/tools/xenstore/compat \ + -I$(XEN_ROOT)/tools/libxc/include \ + -I$(XEN_ROOT)/tools/xenstore/include \ + -I$(XEN_ROOT)/tools/xenstore/compat/include \ $(EXTRA_CFLAGS_QEMU_XEN)" \ --extra-ldflags="-L$(XEN_ROOT)/tools/libxc \ -L$(XEN_ROOT)/tools/xenstore \ diff --git a/tools/Rules.mk b/tools/Rules.mk index 0aa1e6b..4e07e82 100644 --- a/tools/Rules.mk +++ b/tools/Rules.mk @@ -35,15 +35,15 @@ INSTALL_SHLIB = : install-shlib-unsupported-fail SYMLINK_SHLIB = : symlink-shlib-unsupported-fail endif -CFLAGS_libxenctrl = -I$(XEN_LIBXC) $(CFLAGS_xeninclude) +CFLAGS_libxenctrl = -I$(XEN_LIBXC)/include $(CFLAGS_xeninclude) LDLIBS_libxenctrl = $(XEN_LIBXC)/libxenctrl$(libextension) SHLIB_libxenctrl = -Wl,-rpath-link=$(XEN_LIBXC) -CFLAGS_libxenguest = -I$(XEN_LIBXC) $(CFLAGS_xeninclude) +CFLAGS_libxenguest = -I$(XEN_LIBXC)/include $(CFLAGS_xeninclude) LDLIBS_libxenguest = $(XEN_LIBXC)/libxenguest$(libextension) SHLIB_libxenguest = -Wl,-rpath-link=L$(XEN_LIBXC) -CFLAGS_libxenstore = -I$(XEN_XENSTORE) $(CFLAGS_xeninclude) +CFLAGS_libxenstore = -I$(XEN_XENSTORE)/include $(CFLAGS_xeninclude) LDLIBS_libxenstore = $(XEN_XENSTORE)/libxenstore$(libextension) SHLIB_libxenstore = -Wl,-rpath-link=$(XEN_XENSTORE) diff --git a/tools/blktap2/drivers/Makefile b/tools/blktap2/drivers/Makefile index 1129ca1..7df9bc4 100644 --- a/tools/blktap2/drivers/Makefile +++ b/tools/blktap2/drivers/Makefile @@ -16,6 +16,8 @@ CFLAGS += -I$(BLKTAP_ROOT)/include -I$(BLKTAP_ROOT)/drivers CFLAGS += $(CFLAGS_libxenctrl) CFLAGS += -D_GNU_SOURCE CFLAGS += -DUSE_NFS_LOCKS +# drivers/block-log.c incorrectly uses libxc internals +CFLAGS += -I$(XEN_ROOT)/tools/libxc ifeq ($(CONFIG_X86_64),y) CFLAGS += -fPIC diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile index 22eef8e..83fcd3c 100644 --- a/tools/libxc/Makefile +++ b/tools/libxc/Makefile @@ -89,7 +89,7 @@ OSDEP_SRCS-y += xenctrl_osdep_ENOSYS.c -include $(XEN_TARGET_ARCH)/Makefile CFLAGS += -Werror -Wmissing-prototypes -CFLAGS += -I. $(CFLAGS_xeninclude) +CFLAGS += -I. -I./include $(CFLAGS_xeninclude) # Needed for posix_fadvise64() in xc_linux.c CFLAGS-$(CONFIG_Linux) += -D_GNU_SOURCE @@ -140,12 +140,12 @@ install: build $(INSTALL_DATA) libxenctrl.a $(DESTDIR)$(LIBDIR) $(SYMLINK_SHLIB) libxenctrl.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR)/libxenctrl.so.$(MAJOR) $(SYMLINK_SHLIB) libxenctrl.so.$(MAJOR) $(DESTDIR)$(LIBDIR)/libxenctrl.so - $(INSTALL_DATA) xenctrl.h xenctrlosdep.h xentoollog.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/xenctrl.h include/xenctrlosdep.h include/xentoollog.h $(DESTDIR)$(INCLUDEDIR) $(INSTALL_SHLIB) libxenguest.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR) $(INSTALL_DATA) libxenguest.a $(DESTDIR)$(LIBDIR) $(SYMLINK_SHLIB) libxenguest.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR)/libxenguest.so.$(MAJOR) $(SYMLINK_SHLIB) libxenguest.so.$(MAJOR) $(DESTDIR)$(LIBDIR)/libxenguest.so - $(INSTALL_DATA) xenguest.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/xenguest.h $(DESTDIR)$(INCLUDEDIR) .PHONY: TAGS TAGS: diff --git a/tools/libxc/xc_dom.h b/tools/libxc/include/xc_dom.h similarity index 100% rename from tools/libxc/xc_dom.h rename to tools/libxc/include/xc_dom.h diff --git a/tools/libxc/xenctrl.h b/tools/libxc/include/xenctrl.h similarity index 100% rename from tools/libxc/xenctrl.h rename to tools/libxc/include/xenctrl.h diff --git a/tools/libxc/xenctrlosdep.h b/tools/libxc/include/xenctrlosdep.h similarity index 100% rename from tools/libxc/xenctrlosdep.h rename to tools/libxc/include/xenctrlosdep.h diff --git a/tools/libxc/xenguest.h b/tools/libxc/include/xenguest.h similarity index 100% rename from tools/libxc/xenguest.h rename to tools/libxc/include/xenguest.h diff --git a/tools/libxc/xentoollog.h b/tools/libxc/include/xentoollog.h similarity index 100% rename from tools/libxc/xentoollog.h rename to tools/libxc/include/xentoollog.h diff --git a/tools/misc/Makefile b/tools/misc/Makefile index 69b1817..266fd16 100644 --- a/tools/misc/Makefile +++ b/tools/misc/Makefile @@ -6,6 +6,8 @@ CFLAGS += -Werror CFLAGS += $(CFLAGS_libxenctrl) CFLAGS += $(CFLAGS_xeninclude) CFLAGS += $(CFLAGS_libxenstore) +# xen-hptool.c and xen-mfndump.c incorrectly use libxc internals +CFLAGS += -I$(XEN_ROOT)/tools/libxc HDRS = $(wildcard *.h) diff --git a/tools/python/setup.py b/tools/python/setup.py index 17ebb4a..439c429 100644 --- a/tools/python/setup.py +++ b/tools/python/setup.py @@ -13,7 +13,7 @@ PATH_XENSTORE = XEN_ROOT + "/tools/xenstore" xc = Extension("xc", extra_compile_args = extra_compile_args, - include_dirs = [ PATH_XEN, PATH_LIBXC, "xen/lowlevel/xc" ], + include_dirs = [ PATH_XEN, PATH_LIBXC + "/include", "xen/lowlevel/xc" ], library_dirs = [ PATH_LIBXC ], libraries = [ "xenctrl", "xenguest" ], depends = [ PATH_LIBXC + "/libxenctrl.so", PATH_LIBXC + "/libxenguest.so" ], @@ -21,7 +21,7 @@ xc = Extension("xc", xs = Extension("xs", extra_compile_args = extra_compile_args, - include_dirs = [ PATH_XEN, PATH_XENSTORE, "xen/lowlevel/xs" ], + include_dirs = [ PATH_XEN, PATH_XENSTORE + "/include", "xen/lowlevel/xs" ], library_dirs = [ PATH_XENSTORE ], libraries = [ "xenstore" ], depends = [ PATH_XENSTORE + "/libxenstore.so" ], @@ -29,7 +29,7 @@ xs = Extension("xs", xl = Extension("xl", extra_compile_args = extra_compile_args, - include_dirs = [ PATH_XEN, PATH_LIBXL, PATH_LIBXC, "xen/lowlevel/xl" ], + include_dirs = [ PATH_XEN, PATH_LIBXL, PATH_LIBXC + "/include", "xen/lowlevel/xl" ], library_dirs = [ PATH_LIBXL ], libraries = [ "xenlight" ], depends = [ PATH_LIBXL + "/libxenlight.so" ], diff --git a/tools/xcutils/Makefile b/tools/xcutils/Makefile index 98706bf..f71703d 100644 --- a/tools/xcutils/Makefile +++ b/tools/xcutils/Makefile @@ -15,7 +15,8 @@ PROGRAMS = readnotes lsevtchn CFLAGS += -Werror -CFLAGS_readnotes.o := $(CFLAGS_libxenctrl) $(CFLAGS_libxenguest) +# incorrectly uses libxc internals +CFLAGS_readnotes.o := $(CFLAGS_libxenctrl) $(CFLAGS_libxenguest) -I$(XEN_ROOT)/tools/libxc CFLAGS_lsevtchn.o := $(CFLAGS_libxenctrl) .PHONY: all diff --git a/tools/xenpaging/Makefile b/tools/xenpaging/Makefile index 548d9dd..054562d 100644 --- a/tools/xenpaging/Makefile +++ b/tools/xenpaging/Makefile @@ -1,7 +1,8 @@ XEN_ROOT=$(CURDIR)/../.. include $(XEN_ROOT)/tools/Rules.mk -CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenstore) $(PTHREAD_CFLAGS) +# xenpaging.c and file_ops.c incorrectly use libxc internals +CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenstore) $(PTHREAD_CFLAGS) -I$(XEN_ROOT)/tools/libxc LDLIBS += $(LDLIBS_libxenctrl) $(LDLIBS_libxenstore) $(PTHREAD_LIBS) LDFLAGS += $(PTHREAD_LDFLAGS) diff --git a/tools/xenstore/Makefile b/tools/xenstore/Makefile index 08460c8..d0ac949 100644 --- a/tools/xenstore/Makefile +++ b/tools/xenstore/Makefile @@ -7,6 +7,7 @@ MINOR = 3 CFLAGS += -Werror CFLAGS += -I. CFLAGS += -I$(XEN_ROOT)/tools/ +CFLAGS += -I./include CFLAGS += $(CFLAGS_libxenctrl) CLIENTS := xenstore-exists xenstore-list xenstore-read xenstore-rm xenstore-chmod @@ -135,10 +136,10 @@ endif ln -sf libxenstore.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR)/libxenstore.so.$(MAJOR) ln -sf libxenstore.so.$(MAJOR) $(DESTDIR)$(LIBDIR)/libxenstore.so $(INSTALL_DATA) libxenstore.a $(DESTDIR)$(LIBDIR) - $(INSTALL_DATA) xenstore.h $(DESTDIR)$(INCLUDEDIR) - $(INSTALL_DATA) xenstore_lib.h $(DESTDIR)$(INCLUDEDIR) - $(INSTALL_DATA) compat/xs.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs.h - $(INSTALL_DATA) compat/xs_lib.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs_lib.h + $(INSTALL_DATA) include/xenstore.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/xenstore_lib.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/compat/xs.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs.h + $(INSTALL_DATA) include/compat/xs_lib.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs_lib.h ln -sf xenstore-compat/xs.h $(DESTDIR)$(INCLUDEDIR)/xs.h ln -sf xenstore-compat/xs_lib.h $(DESTDIR)$(INCLUDEDIR)/xs_lib.h diff --git a/tools/xenstore/compat/xs.h b/tools/xenstore/include/compat/xs.h similarity index 100% rename from tools/xenstore/compat/xs.h rename to tools/xenstore/include/compat/xs.h diff --git a/tools/xenstore/compat/xs_lib.h b/tools/xenstore/include/compat/xs_lib.h similarity index 100% rename from tools/xenstore/compat/xs_lib.h rename to tools/xenstore/include/compat/xs_lib.h diff --git a/tools/xenstore/xenstore.h b/tools/xenstore/include/xenstore.h similarity index 100% rename from tools/xenstore/xenstore.h rename to tools/xenstore/include/xenstore.h diff --git a/tools/xenstore/xenstore_lib.h b/tools/xenstore/include/xenstore_lib.h similarity index 100% rename from tools/xenstore/xenstore_lib.h rename to tools/xenstore/include/xenstore_lib.h -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-01 15:32 ` [PATCH v4 1/3] " Stefano Stabellini @ 2014-08-06 14:53 ` Ian Jackson 2014-08-06 15:04 ` Stefano Stabellini 0 siblings, 1 reply; 23+ messages in thread From: Ian Jackson @ 2014-08-06 14:53 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Campbell Stefano Stabellini writes ("[Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > Also moves xc_dom.h to include as it is used often by other xen tools. > Use the new include subdirectories to build Xen tools and qemu-xen. > > Add the old libxc include path to the programs that need it to build, > on a case by case basis and commeting that they shouldn't require > internal libxc headers to build. > > This patch should be applied at the same time at this patch for > qemu-xen-traditional (also sent as part of this series): > > http://marc.info/?l=xen-devel&m=140500949902568 I still can't get this to apply with either git-am or git-apply. patch(1) doesn't do the renames, of course. Can you push it to a git branch somewhere ? Ian. ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-06 14:53 ` Ian Jackson @ 2014-08-06 15:04 ` Stefano Stabellini 2014-08-07 11:46 ` Ian Jackson 0 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-08-06 15:04 UTC (permalink / raw) To: Ian Jackson; +Cc: xen-devel, Ian.Campbell, Stefano Stabellini On Wed, 6 Aug 2014, Ian Jackson wrote: > Stefano Stabellini writes ("[Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > > Also moves xc_dom.h to include as it is used often by other xen tools. > > Use the new include subdirectories to build Xen tools and qemu-xen. > > > > Add the old libxc include path to the programs that need it to build, > > on a case by case basis and commeting that they shouldn't require > > internal libxc headers to build. > > > > This patch should be applied at the same time at this patch for > > qemu-xen-traditional (also sent as part of this series): > > > > http://marc.info/?l=xen-devel&m=140500949902568 > > I still can't get this to apply with either git-am or git-apply. > patch(1) doesn't do the renames, of course. > > Can you push it to a git branch somewhere ? certainly: git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v4 ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-06 15:04 ` Stefano Stabellini @ 2014-08-07 11:46 ` Ian Jackson 2014-08-07 14:07 ` Stefano Stabellini 0 siblings, 1 reply; 23+ messages in thread From: Ian Jackson @ 2014-08-07 11:46 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Campbell Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v4 sed 's/@VERSION@/4.1/g' < META.in >META.new && mv -f META.new META mkdir -p /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1 ocamlfind remove -destdir /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1 xenmmap ocamlfind: [WARNING] No such directory: /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap ocamlfind install -destdir /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1 -ldconf ignore xenmmap META xenmmap.cmi xenmmap.cma xenmmap.cmxa *.a *.so *.cmx Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cmx Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/dllxenmmap_stubs.so Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.a Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/libxenmmap_stubs.a Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cmxa Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cma Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cmi Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/META make[7]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs/mmap' make[6]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs' make[6]: Entering directory `/u/iwj/work/xen.git/tools/ocaml/libs' make -C xentoollog install make[6]: *** [subdir-install-xentoollog] Error 2 make[6]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs' make[5]: *** [subdirs-install] Error 2 make[5]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs' make[4]: *** [subdir-install-libs] Error 2 make[4]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml' make[3]: *** [subdirs-install] Error 2 make[3]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml' make[2]: *** [subdir-install-ocaml] Error 2 make[2]: Leaving directory `/u/iwj/work/xen.git/tools' make[1]: *** [subdirs-install] Error 2 make[1]: Leaving directory `/u/iwj/work/xen.git/tools' make: *** [install-tools] Error 2 ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-07 11:46 ` Ian Jackson @ 2014-08-07 14:07 ` Stefano Stabellini 2014-08-07 16:40 ` Ian Jackson 0 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-08-07 14:07 UTC (permalink / raw) To: Ian Jackson; +Cc: xen-devel, Ian.Campbell, Stefano Stabellini On Thu, 7 Aug 2014, Ian Jackson wrote: > Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > > git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v4 > > sed 's/@VERSION@/4.1/g' < META.in >META.new && mv -f META.new META > mkdir -p /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1 > ocamlfind remove -destdir /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1 xenmmap > ocamlfind: [WARNING] No such directory: /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap > ocamlfind install -destdir /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1 -ldconf ignore xenmmap META xenmmap.cmi xenmmap.cma xenmmap.cmxa *.a *.so *.cmx > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cmx > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/dllxenmmap_stubs.so > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.a > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/libxenmmap_stubs.a > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cmxa > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cma > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/xenmmap.cmi > Installed /u/iwj/work/xen.git/dist/install/usr/local/lib/ocaml/3.12.1/xenmmap/META > make[7]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs/mmap' > make[6]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs' > make[6]: Entering directory `/u/iwj/work/xen.git/tools/ocaml/libs' > make -C xentoollog install > make[6]: *** [subdir-install-xentoollog] Error 2 > make[6]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs' > make[5]: *** [subdirs-install] Error 2 > make[5]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml/libs' > make[4]: *** [subdir-install-libs] Error 2 > make[4]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml' > make[3]: *** [subdirs-install] Error 2 > make[3]: Leaving directory `/u/iwj/work/xen.git/tools/ocaml' > make[2]: *** [subdir-install-ocaml] Error 2 > make[2]: Leaving directory `/u/iwj/work/xen.git/tools' > make[1]: *** [subdirs-install] Error 2 > make[1]: Leaving directory `/u/iwj/work/xen.git/tools' > make: *** [install-tools] Error 2 I needed to make a couple of more libxc to libxc/include substitutions under tools/ocaml. The appended patch should work. I have also pushed: git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v5 --- >From 197699ff887967bf398b9b331c471eeebfa92d4c Mon Sep 17 00:00:00 2001 From: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Date: Thu, 10 Jul 2014 15:35:28 +0000 Subject: [PATCH v5] Move xenstore and libxc public headers to include subdir Also moves xc_dom.h to include as it is used often by other xen tools. Use the new include subdirectories to build Xen tools and qemu-xen. Add the old libxc include path to the programs that need it to build, on a case by case basis and commeting that they shouldn't require internal libxc headers to build. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> --- Changes in v5: - fix ocaml build. --- tools/Makefile | 6 +++--- tools/Rules.mk | 6 +++--- tools/blktap2/drivers/Makefile | 2 ++ tools/libxc/Makefile | 6 +++--- tools/libxc/{ => include}/xc_dom.h | 0 tools/libxc/{ => include}/xenctrl.h | 0 tools/libxc/{ => include}/xenctrlosdep.h | 0 tools/libxc/{ => include}/xenguest.h | 0 tools/libxc/{ => include}/xentoollog.h | 0 tools/misc/Makefile | 2 ++ tools/ocaml/libs/eventchn/xeneventchn.mli | 2 +- tools/ocaml/libs/xentoollog/Makefile | 2 +- tools/ocaml/libs/xentoollog/genlevels.py | 2 +- tools/python/setup.py | 6 +++--- tools/xcutils/Makefile | 3 ++- tools/xenpaging/Makefile | 3 ++- tools/xenstore/Makefile | 9 +++++---- tools/xenstore/{ => include}/compat/xs.h | 0 tools/xenstore/{ => include}/compat/xs_lib.h | 0 tools/xenstore/{ => include}/xenstore.h | 0 tools/xenstore/{ => include}/xenstore_lib.h | 0 21 files changed, 28 insertions(+), 21 deletions(-) rename tools/libxc/{ => include}/xc_dom.h (100%) rename tools/libxc/{ => include}/xenctrl.h (100%) rename tools/libxc/{ => include}/xenctrlosdep.h (100%) rename tools/libxc/{ => include}/xenguest.h (100%) rename tools/libxc/{ => include}/xentoollog.h (100%) rename tools/xenstore/{ => include}/compat/xs.h (100%) rename tools/xenstore/{ => include}/compat/xs_lib.h (100%) rename tools/xenstore/{ => include}/xenstore.h (100%) rename tools/xenstore/{ => include}/xenstore_lib.h (100%) diff --git a/tools/Makefile b/tools/Makefile index b6476c9..1130369 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -192,9 +192,9 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find --includedir=$(PREFIX)/lib/xen/include \ --source-path=$$source \ --extra-cflags="-I$(XEN_ROOT)/tools/include \ - -I$(XEN_ROOT)/tools/libxc \ - -I$(XEN_ROOT)/tools/xenstore \ - -I$(XEN_ROOT)/tools/xenstore/compat \ + -I$(XEN_ROOT)/tools/libxc/include \ + -I$(XEN_ROOT)/tools/xenstore/include \ + -I$(XEN_ROOT)/tools/xenstore/compat/include \ $(EXTRA_CFLAGS_QEMU_XEN)" \ --extra-ldflags="-L$(XEN_ROOT)/tools/libxc \ -L$(XEN_ROOT)/tools/xenstore \ diff --git a/tools/Rules.mk b/tools/Rules.mk index 0aa1e6b..4e07e82 100644 --- a/tools/Rules.mk +++ b/tools/Rules.mk @@ -35,15 +35,15 @@ INSTALL_SHLIB = : install-shlib-unsupported-fail SYMLINK_SHLIB = : symlink-shlib-unsupported-fail endif -CFLAGS_libxenctrl = -I$(XEN_LIBXC) $(CFLAGS_xeninclude) +CFLAGS_libxenctrl = -I$(XEN_LIBXC)/include $(CFLAGS_xeninclude) LDLIBS_libxenctrl = $(XEN_LIBXC)/libxenctrl$(libextension) SHLIB_libxenctrl = -Wl,-rpath-link=$(XEN_LIBXC) -CFLAGS_libxenguest = -I$(XEN_LIBXC) $(CFLAGS_xeninclude) +CFLAGS_libxenguest = -I$(XEN_LIBXC)/include $(CFLAGS_xeninclude) LDLIBS_libxenguest = $(XEN_LIBXC)/libxenguest$(libextension) SHLIB_libxenguest = -Wl,-rpath-link=L$(XEN_LIBXC) -CFLAGS_libxenstore = -I$(XEN_XENSTORE) $(CFLAGS_xeninclude) +CFLAGS_libxenstore = -I$(XEN_XENSTORE)/include $(CFLAGS_xeninclude) LDLIBS_libxenstore = $(XEN_XENSTORE)/libxenstore$(libextension) SHLIB_libxenstore = -Wl,-rpath-link=$(XEN_XENSTORE) diff --git a/tools/blktap2/drivers/Makefile b/tools/blktap2/drivers/Makefile index 1129ca1..7df9bc4 100644 --- a/tools/blktap2/drivers/Makefile +++ b/tools/blktap2/drivers/Makefile @@ -16,6 +16,8 @@ CFLAGS += -I$(BLKTAP_ROOT)/include -I$(BLKTAP_ROOT)/drivers CFLAGS += $(CFLAGS_libxenctrl) CFLAGS += -D_GNU_SOURCE CFLAGS += -DUSE_NFS_LOCKS +# drivers/block-log.c incorrectly uses libxc internals +CFLAGS += -I$(XEN_ROOT)/tools/libxc ifeq ($(CONFIG_X86_64),y) CFLAGS += -fPIC diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile index 22eef8e..83fcd3c 100644 --- a/tools/libxc/Makefile +++ b/tools/libxc/Makefile @@ -89,7 +89,7 @@ OSDEP_SRCS-y += xenctrl_osdep_ENOSYS.c -include $(XEN_TARGET_ARCH)/Makefile CFLAGS += -Werror -Wmissing-prototypes -CFLAGS += -I. $(CFLAGS_xeninclude) +CFLAGS += -I. -I./include $(CFLAGS_xeninclude) # Needed for posix_fadvise64() in xc_linux.c CFLAGS-$(CONFIG_Linux) += -D_GNU_SOURCE @@ -140,12 +140,12 @@ install: build $(INSTALL_DATA) libxenctrl.a $(DESTDIR)$(LIBDIR) $(SYMLINK_SHLIB) libxenctrl.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR)/libxenctrl.so.$(MAJOR) $(SYMLINK_SHLIB) libxenctrl.so.$(MAJOR) $(DESTDIR)$(LIBDIR)/libxenctrl.so - $(INSTALL_DATA) xenctrl.h xenctrlosdep.h xentoollog.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/xenctrl.h include/xenctrlosdep.h include/xentoollog.h $(DESTDIR)$(INCLUDEDIR) $(INSTALL_SHLIB) libxenguest.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR) $(INSTALL_DATA) libxenguest.a $(DESTDIR)$(LIBDIR) $(SYMLINK_SHLIB) libxenguest.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR)/libxenguest.so.$(MAJOR) $(SYMLINK_SHLIB) libxenguest.so.$(MAJOR) $(DESTDIR)$(LIBDIR)/libxenguest.so - $(INSTALL_DATA) xenguest.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/xenguest.h $(DESTDIR)$(INCLUDEDIR) .PHONY: TAGS TAGS: diff --git a/tools/libxc/xc_dom.h b/tools/libxc/include/xc_dom.h similarity index 100% rename from tools/libxc/xc_dom.h rename to tools/libxc/include/xc_dom.h diff --git a/tools/libxc/xenctrl.h b/tools/libxc/include/xenctrl.h similarity index 100% rename from tools/libxc/xenctrl.h rename to tools/libxc/include/xenctrl.h diff --git a/tools/libxc/xenctrlosdep.h b/tools/libxc/include/xenctrlosdep.h similarity index 100% rename from tools/libxc/xenctrlosdep.h rename to tools/libxc/include/xenctrlosdep.h diff --git a/tools/libxc/xenguest.h b/tools/libxc/include/xenguest.h similarity index 100% rename from tools/libxc/xenguest.h rename to tools/libxc/include/xenguest.h diff --git a/tools/libxc/xentoollog.h b/tools/libxc/include/xentoollog.h similarity index 100% rename from tools/libxc/xentoollog.h rename to tools/libxc/include/xentoollog.h diff --git a/tools/misc/Makefile b/tools/misc/Makefile index 69b1817..266fd16 100644 --- a/tools/misc/Makefile +++ b/tools/misc/Makefile @@ -6,6 +6,8 @@ CFLAGS += -Werror CFLAGS += $(CFLAGS_libxenctrl) CFLAGS += $(CFLAGS_xeninclude) CFLAGS += $(CFLAGS_libxenstore) +# xen-hptool.c and xen-mfndump.c incorrectly use libxc internals +CFLAGS += -I$(XEN_ROOT)/tools/libxc HDRS = $(wildcard *.h) diff --git a/tools/ocaml/libs/eventchn/xeneventchn.mli b/tools/ocaml/libs/eventchn/xeneventchn.mli index e4e02a4..e180145 100644 --- a/tools/ocaml/libs/eventchn/xeneventchn.mli +++ b/tools/ocaml/libs/eventchn/xeneventchn.mli @@ -14,7 +14,7 @@ * GNU Lesser General Public License for more details. *) -(** Event channel bindings: see tools/libxc/xenctrl.h *) +(** Event channel bindings: see tools/libxc/include/xenctrl.h *) type handle (** An initialised event channel interface. *) diff --git a/tools/ocaml/libs/xentoollog/Makefile b/tools/ocaml/libs/xentoollog/Makefile index 471b428..f2134b8 100644 --- a/tools/ocaml/libs/xentoollog/Makefile +++ b/tools/ocaml/libs/xentoollog/Makefile @@ -48,7 +48,7 @@ xentoollog.mli: xentoollog.mli.in _xtl_levels.mli.in libs: $(LIBS) -_xtl_levels.ml.in _xtl_levels.mli.in _xtl_levels.inc: genlevels.py $(XEN_ROOT)/tools/libxc/xentoollog.h +_xtl_levels.ml.in _xtl_levels.mli.in _xtl_levels.inc: genlevels.py $(XEN_ROOT)/tools/libxc/include/xentoollog.h $(PYTHON) genlevels.py _xtl_levels.mli.in _xtl_levels.ml.in _xtl_levels.inc .PHONY: install diff --git a/tools/ocaml/libs/xentoollog/genlevels.py b/tools/ocaml/libs/xentoollog/genlevels.py index 6b42f21..65d334f 100755 --- a/tools/ocaml/libs/xentoollog/genlevels.py +++ b/tools/ocaml/libs/xentoollog/genlevels.py @@ -3,7 +3,7 @@ import sys def read_levels(): - f = open('../../../libxc/xentoollog.h', 'r') + f = open('../../../libxc/include/xentoollog.h', 'r') levels = [] record = False diff --git a/tools/python/setup.py b/tools/python/setup.py index 17ebb4a..439c429 100644 --- a/tools/python/setup.py +++ b/tools/python/setup.py @@ -13,7 +13,7 @@ PATH_XENSTORE = XEN_ROOT + "/tools/xenstore" xc = Extension("xc", extra_compile_args = extra_compile_args, - include_dirs = [ PATH_XEN, PATH_LIBXC, "xen/lowlevel/xc" ], + include_dirs = [ PATH_XEN, PATH_LIBXC + "/include", "xen/lowlevel/xc" ], library_dirs = [ PATH_LIBXC ], libraries = [ "xenctrl", "xenguest" ], depends = [ PATH_LIBXC + "/libxenctrl.so", PATH_LIBXC + "/libxenguest.so" ], @@ -21,7 +21,7 @@ xc = Extension("xc", xs = Extension("xs", extra_compile_args = extra_compile_args, - include_dirs = [ PATH_XEN, PATH_XENSTORE, "xen/lowlevel/xs" ], + include_dirs = [ PATH_XEN, PATH_XENSTORE + "/include", "xen/lowlevel/xs" ], library_dirs = [ PATH_XENSTORE ], libraries = [ "xenstore" ], depends = [ PATH_XENSTORE + "/libxenstore.so" ], @@ -29,7 +29,7 @@ xs = Extension("xs", xl = Extension("xl", extra_compile_args = extra_compile_args, - include_dirs = [ PATH_XEN, PATH_LIBXL, PATH_LIBXC, "xen/lowlevel/xl" ], + include_dirs = [ PATH_XEN, PATH_LIBXL, PATH_LIBXC + "/include", "xen/lowlevel/xl" ], library_dirs = [ PATH_LIBXL ], libraries = [ "xenlight" ], depends = [ PATH_LIBXL + "/libxenlight.so" ], diff --git a/tools/xcutils/Makefile b/tools/xcutils/Makefile index 98706bf..f71703d 100644 --- a/tools/xcutils/Makefile +++ b/tools/xcutils/Makefile @@ -15,7 +15,8 @@ PROGRAMS = readnotes lsevtchn CFLAGS += -Werror -CFLAGS_readnotes.o := $(CFLAGS_libxenctrl) $(CFLAGS_libxenguest) +# incorrectly uses libxc internals +CFLAGS_readnotes.o := $(CFLAGS_libxenctrl) $(CFLAGS_libxenguest) -I$(XEN_ROOT)/tools/libxc CFLAGS_lsevtchn.o := $(CFLAGS_libxenctrl) .PHONY: all diff --git a/tools/xenpaging/Makefile b/tools/xenpaging/Makefile index 548d9dd..054562d 100644 --- a/tools/xenpaging/Makefile +++ b/tools/xenpaging/Makefile @@ -1,7 +1,8 @@ XEN_ROOT=$(CURDIR)/../.. include $(XEN_ROOT)/tools/Rules.mk -CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenstore) $(PTHREAD_CFLAGS) +# xenpaging.c and file_ops.c incorrectly use libxc internals +CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenstore) $(PTHREAD_CFLAGS) -I$(XEN_ROOT)/tools/libxc LDLIBS += $(LDLIBS_libxenctrl) $(LDLIBS_libxenstore) $(PTHREAD_LIBS) LDFLAGS += $(PTHREAD_LDFLAGS) diff --git a/tools/xenstore/Makefile b/tools/xenstore/Makefile index 08460c8..d0ac949 100644 --- a/tools/xenstore/Makefile +++ b/tools/xenstore/Makefile @@ -7,6 +7,7 @@ MINOR = 3 CFLAGS += -Werror CFLAGS += -I. CFLAGS += -I$(XEN_ROOT)/tools/ +CFLAGS += -I./include CFLAGS += $(CFLAGS_libxenctrl) CLIENTS := xenstore-exists xenstore-list xenstore-read xenstore-rm xenstore-chmod @@ -135,10 +136,10 @@ endif ln -sf libxenstore.so.$(MAJOR).$(MINOR) $(DESTDIR)$(LIBDIR)/libxenstore.so.$(MAJOR) ln -sf libxenstore.so.$(MAJOR) $(DESTDIR)$(LIBDIR)/libxenstore.so $(INSTALL_DATA) libxenstore.a $(DESTDIR)$(LIBDIR) - $(INSTALL_DATA) xenstore.h $(DESTDIR)$(INCLUDEDIR) - $(INSTALL_DATA) xenstore_lib.h $(DESTDIR)$(INCLUDEDIR) - $(INSTALL_DATA) compat/xs.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs.h - $(INSTALL_DATA) compat/xs_lib.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs_lib.h + $(INSTALL_DATA) include/xenstore.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/xenstore_lib.h $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_DATA) include/compat/xs.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs.h + $(INSTALL_DATA) include/compat/xs_lib.h $(DESTDIR)$(INCLUDEDIR)/xenstore-compat/xs_lib.h ln -sf xenstore-compat/xs.h $(DESTDIR)$(INCLUDEDIR)/xs.h ln -sf xenstore-compat/xs_lib.h $(DESTDIR)$(INCLUDEDIR)/xs_lib.h diff --git a/tools/xenstore/compat/xs.h b/tools/xenstore/include/compat/xs.h similarity index 100% rename from tools/xenstore/compat/xs.h rename to tools/xenstore/include/compat/xs.h diff --git a/tools/xenstore/compat/xs_lib.h b/tools/xenstore/include/compat/xs_lib.h similarity index 100% rename from tools/xenstore/compat/xs_lib.h rename to tools/xenstore/include/compat/xs_lib.h diff --git a/tools/xenstore/xenstore.h b/tools/xenstore/include/xenstore.h similarity index 100% rename from tools/xenstore/xenstore.h rename to tools/xenstore/include/xenstore.h diff --git a/tools/xenstore/xenstore_lib.h b/tools/xenstore/include/xenstore_lib.h similarity index 100% rename from tools/xenstore/xenstore_lib.h rename to tools/xenstore/include/xenstore_lib.h -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-07 14:07 ` Stefano Stabellini @ 2014-08-07 16:40 ` Ian Jackson 2014-08-13 11:37 ` Stefano Stabellini 0 siblings, 1 reply; 23+ messages in thread From: Ian Jackson @ 2014-08-07 16:40 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Campbell Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > I needed to make a couple of more libxc to libxc/include substitutions > under tools/ocaml. > The appended patch should work. > I have also pushed: > > git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v5 It seems that the 32-bit stubdom build is still broken: In file included from xc_core.c:64:0: xg_private.h:30:21: fatal error: xenctrl.h: No such file or directory Ian. ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-07 16:40 ` Ian Jackson @ 2014-08-13 11:37 ` Stefano Stabellini 2014-09-22 17:14 ` Ian Jackson 0 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-08-13 11:37 UTC (permalink / raw) To: Ian Jackson; +Cc: xen-devel, Ian.Campbell, Stefano Stabellini On Thu, 7 Aug 2014, Ian Jackson wrote: > Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > > I needed to make a couple of more libxc to libxc/include substitutions > > under tools/ocaml. > > The appended patch should work. > > I have also pushed: > > > > git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v5 > > It seems that the 32-bit stubdom build is still broken: > > In file included from xc_core.c:64:0: > xg_private.h:30:21: fatal error: xenctrl.h: No such file or directory Somehow I missed this email until today. I modified the stubdom and mini-os Makefiles (below is the incremental diff): diff --git a/extras/mini-os/Config.mk b/extras/mini-os/Config.mk index d61877b..4852443 100644 --- a/extras/mini-os/Config.mk +++ b/extras/mini-os/Config.mk @@ -46,7 +46,7 @@ DEF_CPPFLAGS += -D__MINIOS__ ifeq ($(libc),y) DEF_CPPFLAGS += -DHAVE_LIBC DEF_CPPFLAGS += -isystem $(MINI-OS_ROOT)/include/posix -DEF_CPPFLAGS += -isystem $(XEN_ROOT)/tools/xenstore +DEF_CPPFLAGS += -isystem $(XEN_ROOT)/tools/xenstore/include endif ifneq ($(LWIPDIR),) diff --git a/stubdom/Makefile b/stubdom/Makefile index 6bea68b..ffebc0d 100644 --- a/stubdom/Makefile +++ b/stubdom/Makefile @@ -306,12 +306,14 @@ mk-headers-$(XEN_TARGET_ARCH): $(IOEMU_LINKFARM_TARGET) mkdir -p libxc-$(XEN_TARGET_ARCH) [ -h libxc-$(XEN_TARGET_ARCH)/Makefile ] || ( cd libxc-$(XEN_TARGET_ARCH) && \ ln -sf $(XEN_ROOT)/tools/libxc/*.h . && \ + ln -sf $(XEN_ROOT)/tools/libxc/include/*.h . && \ ln -sf $(XEN_ROOT)/tools/libxc/*.c . && \ ln -sf $(XEN_ROOT)/tools/libxc/Makefile . ) mkdir -p xenstore [ -h xenstore/Makefile ] || ( cd xenstore && \ ln -sf $(XEN_ROOT)/tools/xenstore/*.c . && \ ln -sf $(XEN_ROOT)/tools/xenstore/*.h . && \ + ln -sf $(XEN_ROOT)/tools/xenstore/include/*.h . && \ ln -sf $(XEN_ROOT)/tools/xenstore/Makefile . ) $(MAKE) DESTDIR= -C $(MINI_OS) links touch mk-headers-$(XEN_TARGET_ARCH) diff --git a/stubdom/grub/Makefile b/stubdom/grub/Makefile index 6bd2c4c..934cc4c 100644 --- a/stubdom/grub/Makefile +++ b/stubdom/grub/Makefile @@ -5,7 +5,7 @@ vpath %.c ../grub-upstream BOOT=$(OBJ_DIR)/boot-$(XEN_TARGET_ARCH).o -DEF_CPPFLAGS += -I$(XEN_ROOT)/tools/libxc -I$(XEN_ROOT)/tools/include -I. +DEF_CPPFLAGS += -I$(XEN_ROOT)/tools/libxc/include -I$(XEN_ROOT)/tools/include -I. DEF_CPPFLAGS += -I../grub-upstream/stage1 DEF_CPPFLAGS += -I../grub-upstream/stage2 DEF_CPPFLAGS += -I../grub-upstream/netboot I have also pushed everything: git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v6 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-08-13 11:37 ` Stefano Stabellini @ 2014-09-22 17:14 ` Ian Jackson 2014-09-22 18:52 ` Ian Campbell 0 siblings, 1 reply; 23+ messages in thread From: Ian Jackson @ 2014-09-22 17:14 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Campbell Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > I have also pushed everything: > > git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v6 I rebased this (onto e01fa4e223fc077e18936d890dbd4813c3e7c9b1) and git was a bit grumbly and said it had to do a 3-way merge. After I did that, my build still failed - see below. The runes I use are: git-clean -xdff && cp ../.config . (./configure && make -j4 && echo ok.) 2>&1 | tee ../log and my .config is: CONFIG_QEMU=/u/iwj/work/1/qemu-iwj.git QEMU_UPSTREAM_URL=/u/iwj/work/1/qemu-upstream-unstable.git OVMF_UPSTREAM_URL=/u/iwj/work/1/ovmf.git Thanks, Ian. make[3]: Entering directory `/u/iwj/work/xen.git/tools/qemu-xen-traditional-dir' /u/iwj/work/1/qemu-iwj.git/xen-hooks.mak:63: === pciutils-dev package not found - missing /usr/include/pci /u/iwj/work/1/qemu-iwj.git/xen-hooks.mak:64: === PCI passthrough capability has been disabled CC qemu-nbd.o CC qemu-tool.o CC osdep.o CC cutils.o In file included from ./config-host.h:20:0, from /u/iwj/work/1/qemu-iwj.git/osdep.c:25: /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory compilation terminated. In file included from ./config-host.h:20:0, from /u/iwj/work/1/qemu-iwj.git/qemu-common.h:33, from /u/iwj/work/1/qemu-iwj.git/qemu-nbd.c:20: /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory compilation terminated. make[3]: *** [osdep.o] Error 1 make[3]: *** Waiting for unfinished jobs.... In file included from ./config-host.h:20:0, from /u/iwj/work/1/qemu-iwj.git/qemu-common.h:33, from /u/iwj/work/1/qemu-iwj.git/qemu-tool.c:14: /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory compilation terminated. In file included from ./config-host.h:20:0, from /u/iwj/work/1/qemu-iwj.git/qemu-common.h:33, from /u/iwj/work/1/qemu-iwj.git/cutils.c:24: /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory compilation terminated. make[3]: *** [qemu-nbd.o] Error 1 make[3]: *** [qemu-tool.o] Error 1 make[3]: *** [cutils.o] Error 1 make[3]: Leaving directory `/u/iwj/work/xen.git/tools/qemu-xen-traditional-dir' make[2]: *** [subdir-install-qemu-xen-traditional-dir] Error 2 make[2]: Leaving directory `/u/iwj/work/xen.git/tools' make[1]: *** [subdirs-install] Error 2 make[1]: Leaving directory `/u/iwj/work/xen.git/tools' make: *** [install-tools] Error 2 ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-09-22 17:14 ` Ian Jackson @ 2014-09-22 18:52 ` Ian Campbell 2014-09-23 13:15 ` Ian Jackson 0 siblings, 1 reply; 23+ messages in thread From: Ian Campbell @ 2014-09-22 18:52 UTC (permalink / raw) To: Ian Jackson; +Cc: xen-devel, Stefano Stabellini On Mon, 2014-09-22 at 18:14 +0100, Ian Jackson wrote: > Stefano Stabellini writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > > I have also pushed everything: > > > > git://xenbits.xen.org/people/sstabellini/xen-unstable.git public_headers_v6 > > I rebased this (onto e01fa4e223fc077e18936d890dbd4813c3e7c9b1) and git > was a bit grumbly and said it had to do a 3-way merge. After I did > that, my build still failed - see below. Looks like you've not applied the associated qemu-trad.git change to qemu-iwj.git, patch #2 in this series. As noted in the coverletter they should be applied together (with the corresponding Config.mk change folded in here) > The runes I use are: > > git-clean -xdff && cp ../.config . > (./configure && make -j4 && echo ok.) 2>&1 | tee ../log > and my .config is: > CONFIG_QEMU=/u/iwj/work/1/qemu-iwj.git > QEMU_UPSTREAM_URL=/u/iwj/work/1/qemu-upstream-unstable.git > OVMF_UPSTREAM_URL=/u/iwj/work/1/ovmf.git > > Thanks, > Ian. > > make[3]: Entering directory `/u/iwj/work/xen.git/tools/qemu-xen-traditional-dir' > /u/iwj/work/1/qemu-iwj.git/xen-hooks.mak:63: === pciutils-dev package not found - missing /usr/include/pci > /u/iwj/work/1/qemu-iwj.git/xen-hooks.mak:64: === PCI passthrough capability has been disabled > CC qemu-nbd.o > CC qemu-tool.o > CC osdep.o > CC cutils.o > In file included from ./config-host.h:20:0, > from /u/iwj/work/1/qemu-iwj.git/osdep.c:25: > /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory > compilation terminated. > In file included from ./config-host.h:20:0, > from /u/iwj/work/1/qemu-iwj.git/qemu-common.h:33, > from /u/iwj/work/1/qemu-iwj.git/qemu-nbd.c:20: > /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory > compilation terminated. > make[3]: *** [osdep.o] Error 1 > make[3]: *** Waiting for unfinished jobs.... > In file included from ./config-host.h:20:0, > from /u/iwj/work/1/qemu-iwj.git/qemu-common.h:33, > from /u/iwj/work/1/qemu-iwj.git/qemu-tool.c:14: > /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory > compilation terminated. > In file included from ./config-host.h:20:0, > from /u/iwj/work/1/qemu-iwj.git/qemu-common.h:33, > from /u/iwj/work/1/qemu-iwj.git/cutils.c:24: > /u/iwj/work/1/qemu-iwj.git/xen-config-host.h:19:21: fatal error: xenctrl.h: No such file or directory > compilation terminated. > make[3]: *** [qemu-nbd.o] Error 1 > make[3]: *** [qemu-tool.o] Error 1 > make[3]: *** [cutils.o] Error 1 > make[3]: Leaving directory `/u/iwj/work/xen.git/tools/qemu-xen-traditional-dir' > make[2]: *** [subdir-install-qemu-xen-traditional-dir] Error 2 > make[2]: Leaving directory `/u/iwj/work/xen.git/tools' > make[1]: *** [subdirs-install] Error 2 > make[1]: Leaving directory `/u/iwj/work/xen.git/tools' > make: *** [install-tools] Error 2 ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-09-22 18:52 ` Ian Campbell @ 2014-09-23 13:15 ` Ian Jackson 2014-09-23 13:22 ` Stefano Stabellini 0 siblings, 1 reply; 23+ messages in thread From: Ian Jackson @ 2014-09-23 13:15 UTC (permalink / raw) To: Ian Campbell; +Cc: xen-devel, Stefano Stabellini Ian Campbell writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > Looks like you've not applied the associated qemu-trad.git change to > qemu-iwj.git, patch #2 in this series. As noted in the coverletter they > should be applied together (with the corresponding Config.mk change > folded in here) You were right. I have now applied 1/3 and 2/3 together. (That is, I have applied 2/3 to qemu trad, and amended 1/3 to contain also a Config.mk update to mention the new qemu commit.) I'm about to push 3/3. Thanks, Ian. ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir 2014-09-23 13:15 ` Ian Jackson @ 2014-09-23 13:22 ` Stefano Stabellini 0 siblings, 0 replies; 23+ messages in thread From: Stefano Stabellini @ 2014-09-23 13:22 UTC (permalink / raw) To: Ian Jackson; +Cc: xen-devel, Ian Campbell, Stefano Stabellini On Tue, 23 Sep 2014, Ian Jackson wrote: > Ian Campbell writes ("Re: [Xen-devel] [PATCH v4 1/3] Move xenstore and libxc public headers to include subdir"): > > Looks like you've not applied the associated qemu-trad.git change to > > qemu-iwj.git, patch #2 in this series. As noted in the coverletter they > > should be applied together (with the corresponding Config.mk change > > folded in here) > > You were right. I have now applied 1/3 and 2/3 together. (That is, I > have applied 2/3 to qemu trad, and amended 1/3 to contain also a > Config.mk update to mention the new qemu commit.) > > I'm about to push 3/3. Thanks! ^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH v4 2/3] qemu-xen-trad: -I tools/libxc/include and tools/xenstore/include 2014-08-01 15:30 [PATCH v4 0/3] Move xenstore and libxc public headers to include subdir Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 1/3] " Stefano Stabellini @ 2014-08-01 15:32 ` Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 3/3] enable QEMU for ARM builds Stefano Stabellini 2 siblings, 0 replies; 23+ messages in thread From: Stefano Stabellini @ 2014-08-01 15:32 UTC (permalink / raw) To: xen-devel; +Cc: Ian.Jackson, Ian.Campbell, Stefano Stabellini The public libxc and xenstore headers have been moved to tools/libxc/include and tools/xenstore/include respectively: change the Makefiles accordingly. --- Makefile | 4 ++-- xen-hooks.mak | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 37c7066..c1900ca 100644 --- a/Makefile +++ b/Makefile @@ -46,9 +46,9 @@ $(filter %-user,$(SUBDIR_RULES)): libqemu_user.a recurse-all: $(SUBDIR_RULES) -CPPFLAGS += -I$(XEN_ROOT)/tools/libxc +CPPFLAGS += -I$(XEN_ROOT)/tools/libxc/include CPPFLAGS += -I$(XEN_ROOT)/tools/blktap/lib -CPPFLAGS += -I$(XEN_ROOT)/tools/xenstore +CPPFLAGS += -I$(XEN_ROOT)/tools/xenstore/include CPPFLAGS += -I$(XEN_ROOT)/tools/include tapdisk-ioemu: tapdisk-ioemu.c cutils.c block.c block-raw.c block-cow.c block-qcow.c aes.c block-vmdk.c block-cloop.c block-dmg.c block-bochs.c block-vpc.c block-vvfat.c block-qcow2.c hw/xen_blktap.c osdep.c diff --git a/xen-hooks.mak b/xen-hooks.mak index 58d61c9..9263892 100644 --- a/xen-hooks.mak +++ b/xen-hooks.mak @@ -1,5 +1,5 @@ -CPPFLAGS+= -I$(XEN_ROOT)/tools/libxc -CPPFLAGS+= -I$(XEN_ROOT)/tools/xenstore +CPPFLAGS+= -I$(XEN_ROOT)/tools/libxc/include +CPPFLAGS+= -I$(XEN_ROOT)/tools/xenstore/include CPPFLAGS+= -I$(XEN_ROOT)/tools/include SSE2 := $(call cc-option,-msse2,) -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* [PATCH v4 3/3] enable QEMU for ARM builds 2014-08-01 15:30 [PATCH v4 0/3] Move xenstore and libxc public headers to include subdir Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 1/3] " Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 2/3] qemu-xen-trad: -I tools/libxc/include and tools/xenstore/include Stefano Stabellini @ 2014-08-01 15:32 ` Stefano Stabellini 2014-09-23 12:56 ` Ian Campbell 2014-09-23 13:35 ` Ian Campbell 2 siblings, 2 replies; 23+ messages in thread From: Stefano Stabellini @ 2014-08-01 15:32 UTC (permalink / raw) To: xen-devel; +Cc: Ian.Jackson, Ian.Campbell, Stefano Stabellini Build qemu-xen on ARM and ARM64: it is used to provide the PV backends, disk and framebuffer in particular. Ideally we would also modify the configure options to only build what is necessary: a machine just for PV backends. However that is a work in progress and not yet available in QEMU (see http://marc.info/?l=qemu-devel&m=139082425718379&w=2). So we just build the usual i386 target, even though no i386 emulation is going to be done by qemu-xen on ARM. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> diff --git a/tools/configure b/tools/configure index a4aa8f1..ae60824 100755 --- a/tools/configure +++ b/tools/configure @@ -3876,6 +3876,8 @@ else case "$host_cpu" in i[3456]86|x86_64) qemu_xen=y;; + arm*|aarch64) + qemu_xen=y;; *) qemu_xen=n;; esac diff --git a/tools/configure.ac b/tools/configure.ac index 629d6a0..c595233 100644 --- a/tools/configure.ac +++ b/tools/configure.ac @@ -132,6 +132,8 @@ AC_ARG_WITH([system-qemu], case "$host_cpu" in i[[3456]]86|x86_64) qemu_xen=y;; + arm*|aarch64) + qemu_xen=y;; *) qemu_xen=n;; esac ]) ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-08-01 15:32 ` [PATCH v4 3/3] enable QEMU for ARM builds Stefano Stabellini @ 2014-09-23 12:56 ` Ian Campbell 2014-09-23 13:35 ` Ian Campbell 1 sibling, 0 replies; 23+ messages in thread From: Ian Campbell @ 2014-09-23 12:56 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Jackson On Fri, 2014-08-01 at 16:32 +0100, Stefano Stabellini wrote: > Build qemu-xen on ARM and ARM64: it is used to provide the PV backends, > disk and framebuffer in particular. > > Ideally we would also modify the configure options to only build what is > necessary: a machine just for PV backends. However that is a work in > progress and not yet available in QEMU (see > http://marc.info/?l=qemu-devel&m=139082425718379&w=2). So we just build > the usual i386 target, even though no i386 emulation is going to be done > by qemu-xen on ARM. > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-08-01 15:32 ` [PATCH v4 3/3] enable QEMU for ARM builds Stefano Stabellini 2014-09-23 12:56 ` Ian Campbell @ 2014-09-23 13:35 ` Ian Campbell 2014-09-23 14:56 ` Stefano Stabellini 1 sibling, 1 reply; 23+ messages in thread From: Ian Campbell @ 2014-09-23 13:35 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Jackson On Fri, 2014-08-01 at 16:32 +0100, Stefano Stabellini wrote: > Build qemu-xen on ARM and ARM64: it is used to provide the PV backends, > disk and framebuffer in particular. > > Ideally we would also modify the configure options to only build what is > necessary: a machine just for PV backends. However that is a work in > progress and not yet available in QEMU (see > http://marc.info/?l=qemu-devel&m=139082425718379&w=2). So we just build > the usual i386 target, even though no i386 emulation is going to be done > by qemu-xen on ARM. > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> This doesn't build for arm64: if test -d git://xenbits.xen.org/qemu-upstream-unstable.git ; then \ source=git://xenbits.xen.org/qemu-upstream-unstable.git; \ else \ source=.; \ fi; \ cd qemu-xen-dir; \ $source/configure --enable-xen --target-list=i386-softmmu \ --enable-debug --enable-trace-backend=stderr \ --prefix=/usr/local/lib/xen \ --libdir=/usr/local/lib/xen/lib \ --includedir=/usr/local/lib/xen/include \ --source-path=$source \ --extra-cflags="-I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/include \ -I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/libxc/include \ -I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/xenstore/include \ -I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/xenstore/compat/include \ " \ --extra-ldflags="-L/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/libxc \ -L/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/xenstore \ -Wl,-rpath=/usr/local/lib/xen/lib" \ --bindir=/usr/local/lib/xen/bin \ --datadir=/usr/local/share/qemu-xen \ --localstatedir=/var \ --disable-kvm \ --disable-docs \ --disable-guest-agent \ --python=python \ \ --cpu=arm64 --cross-prefix=aarch64-linux-gnu- --interp-prefix=/usr/aarch64-linux-gnu/sys-root; \ make all ERROR: Unsupported CPU = arm64, try --enable-tcg-interpreter make[3]: Entering directory `/local/scratch/ianc/devel/committer-arm64.git/tools/qemu-xen-dir-remote' make[3]: *** No rule to make target `/qemu-options.hx', needed by `qemu-options.def'. Stop. I think upstream calls arm64 aarch64, or maybe our qemu isn't new enough yet? Since osstest doesn't yet include arm64 we aren't going to block staging->master over this but we should still fix. Either by removing aarch64 from the configure test or by making it actually build (by adjusting --cpu=?). Ian. ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 13:35 ` Ian Campbell @ 2014-09-23 14:56 ` Stefano Stabellini 2014-09-23 15:21 ` Ian Campbell 0 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-09-23 14:56 UTC (permalink / raw) To: Ian Campbell; +Cc: xen-devel, Ian.Jackson, Stefano Stabellini On Tue, 23 Sep 2014, Ian Campbell wrote: > On Fri, 2014-08-01 at 16:32 +0100, Stefano Stabellini wrote: > > Build qemu-xen on ARM and ARM64: it is used to provide the PV backends, > > disk and framebuffer in particular. > > > > Ideally we would also modify the configure options to only build what is > > necessary: a machine just for PV backends. However that is a work in > > progress and not yet available in QEMU (see > > http://marc.info/?l=qemu-devel&m=139082425718379&w=2). So we just build > > the usual i386 target, even though no i386 emulation is going to be done > > by qemu-xen on ARM. > > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > > This doesn't build for arm64: > if test -d git://xenbits.xen.org/qemu-upstream-unstable.git ; then \ > source=git://xenbits.xen.org/qemu-upstream-unstable.git; \ > else \ > source=.; \ > fi; \ > cd qemu-xen-dir; \ > $source/configure --enable-xen --target-list=i386-softmmu \ > --enable-debug --enable-trace-backend=stderr \ > --prefix=/usr/local/lib/xen \ > --libdir=/usr/local/lib/xen/lib \ > --includedir=/usr/local/lib/xen/include \ > --source-path=$source \ > --extra-cflags="-I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/include \ > -I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/libxc/include \ > -I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/xenstore/include \ > -I/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/xenstore/compat/include \ > " \ > --extra-ldflags="-L/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/libxc \ > -L/local/scratch/ianc/devel/committer-arm64.git/tools/../tools/xenstore \ > -Wl,-rpath=/usr/local/lib/xen/lib" \ > --bindir=/usr/local/lib/xen/bin \ > --datadir=/usr/local/share/qemu-xen \ > --localstatedir=/var \ > --disable-kvm \ > --disable-docs \ > --disable-guest-agent \ > --python=python \ > \ > --cpu=arm64 --cross-prefix=aarch64-linux-gnu- --interp-prefix=/usr/aarch64-linux-gnu/sys-root; \ > make all > > ERROR: Unsupported CPU = arm64, try --enable-tcg-interpreter > > make[3]: Entering directory `/local/scratch/ianc/devel/committer-arm64.git/tools/qemu-xen-dir-remote' > make[3]: *** No rule to make target `/qemu-options.hx', needed by `qemu-options.def'. Stop. > > I think upstream calls arm64 aarch64, or maybe our qemu isn't new enough yet? > > Since osstest doesn't yet include arm64 we aren't going to block > staging->master over this but we should still fix. Either by removing > aarch64 from the configure test or by making it actually build (by > adjusting --cpu=?). Does the following fix the issue for you? diff --git a/config/arm32.mk b/config/arm32.mk index aa79d22..5f056bd 100644 --- a/config/arm32.mk +++ b/config/arm32.mk @@ -18,3 +18,6 @@ HAS_NS16550 := y LDFLAGS_DIRECT += -EL CONFIG_LOAD_ADDRESS ?= 0x80000000 + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= arm diff --git a/config/arm64.mk b/config/arm64.mk index 15b57a4..f42ffe0 100644 --- a/config/arm64.mk +++ b/config/arm64.mk @@ -13,3 +13,6 @@ HAS_NS16550 := y LDFLAGS_DIRECT += -EL CONFIG_LOAD_ADDRESS ?= 0x80000000 + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= aarch64 diff --git a/config/x86_32.mk b/config/x86_32.mk index 7f76b25..0da63ed 100644 --- a/config/x86_32.mk +++ b/config/x86_32.mk @@ -12,3 +12,6 @@ CFLAGS += -m32 -march=i686 LDFLAGS_DIRECT_OpenBSD = _obsd LDFLAGS_DIRECT_FreeBSD = _fbsd LDFLAGS_DIRECT += -melf_i386$(LDFLAGS_DIRECT_$(XEN_OS)) + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= i386 diff --git a/config/x86_64.mk b/config/x86_64.mk index 11104bd..f5c32a2 100644 --- a/config/x86_64.mk +++ b/config/x86_64.mk @@ -25,3 +25,6 @@ else LDFLAGS_DIRECT += -melf_x86_64 endif endif + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= x86_64 diff --git a/tools/Makefile b/tools/Makefile index 1130369..57eaa17 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -106,7 +106,7 @@ distclean: subdirs-distclean config.cache autom4te.cache ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) -IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ +IOEMU_CONFIGURE_CROSS ?= --cpu=$(IOEMU_CPU_ARCH) \ --cross-prefix=$(CROSS_COMPILE) \ --interp-prefix=$(CROSS_SYS_ROOT) endif ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 14:56 ` Stefano Stabellini @ 2014-09-23 15:21 ` Ian Campbell 2014-09-23 16:29 ` Stefano Stabellini 0 siblings, 1 reply; 23+ messages in thread From: Ian Campbell @ 2014-09-23 15:21 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Jackson On Tue, 2014-09-23 at 15:56 +0100, Stefano Stabellini wrote: > Does the following fix the issue for you? I needed some new build-deps (pixman) but then it appeared to, yes. I'm in favour of moving the --cpu out from under the IOEMU_CONFIGURE_CROSS and into the normal configure rune. It should be harmless for native builds and will ensure that cross builds don't regress again. Maybe that is more complex with the qemu-trad side of things? > > diff --git a/config/arm32.mk b/config/arm32.mk > index aa79d22..5f056bd 100644 > --- a/config/arm32.mk > +++ b/config/arm32.mk > @@ -18,3 +18,6 @@ HAS_NS16550 := y > LDFLAGS_DIRECT += -EL > > CONFIG_LOAD_ADDRESS ?= 0x80000000 > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= arm > diff --git a/config/arm64.mk b/config/arm64.mk > index 15b57a4..f42ffe0 100644 > --- a/config/arm64.mk > +++ b/config/arm64.mk > @@ -13,3 +13,6 @@ HAS_NS16550 := y > LDFLAGS_DIRECT += -EL > > CONFIG_LOAD_ADDRESS ?= 0x80000000 > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= aarch64 > diff --git a/config/x86_32.mk b/config/x86_32.mk > index 7f76b25..0da63ed 100644 > --- a/config/x86_32.mk > +++ b/config/x86_32.mk > @@ -12,3 +12,6 @@ CFLAGS += -m32 -march=i686 > LDFLAGS_DIRECT_OpenBSD = _obsd > LDFLAGS_DIRECT_FreeBSD = _fbsd > LDFLAGS_DIRECT += -melf_i386$(LDFLAGS_DIRECT_$(XEN_OS)) > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= i386 > diff --git a/config/x86_64.mk b/config/x86_64.mk > index 11104bd..f5c32a2 100644 > --- a/config/x86_64.mk > +++ b/config/x86_64.mk > @@ -25,3 +25,6 @@ else > LDFLAGS_DIRECT += -melf_x86_64 > endif > endif > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= x86_64 > diff --git a/tools/Makefile b/tools/Makefile > index 1130369..57eaa17 100644 > --- a/tools/Makefile > +++ b/tools/Makefile > @@ -106,7 +106,7 @@ distclean: subdirs-distclean > config.cache autom4te.cache > > ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) > -IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ > +IOEMU_CONFIGURE_CROSS ?= --cpu=$(IOEMU_CPU_ARCH) \ > --cross-prefix=$(CROSS_COMPILE) \ > --interp-prefix=$(CROSS_SYS_ROOT) > endif ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 15:21 ` Ian Campbell @ 2014-09-23 16:29 ` Stefano Stabellini 2014-09-23 16:35 ` Ian Campbell 0 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-09-23 16:29 UTC (permalink / raw) To: Ian Campbell; +Cc: xen-devel, Ian.Jackson, Stefano Stabellini On Tue, 23 Sep 2014, Ian Campbell wrote: > On Tue, 2014-09-23 at 15:56 +0100, Stefano Stabellini wrote: > > Does the following fix the issue for you? > > I needed some new build-deps (pixman) but then it appeared to, yes. > > I'm in favour of moving the --cpu out from under the > IOEMU_CONFIGURE_CROSS and into the normal configure rune. It should be > harmless for native builds and will ensure that cross builds don't > regress again. Maybe that is more complex with the qemu-trad side of > things? I don't think so: qemu-trad is not used on arm or arm64. I think that the x86_32 tools build on x86_64 still has some other issues but this should be an improvement. --- Fix QEMU cross-compile build Introduce the per-arch IOEMU_CPU_ARCH variable. Always pass --configure=IOEMU_CPU_ARCH to QEMU's configure script. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> diff --git a/config/arm32.mk b/config/arm32.mk index aa79d22..5f056bd 100644 --- a/config/arm32.mk +++ b/config/arm32.mk @@ -18,3 +18,6 @@ HAS_NS16550 := y LDFLAGS_DIRECT += -EL CONFIG_LOAD_ADDRESS ?= 0x80000000 + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= arm diff --git a/config/arm64.mk b/config/arm64.mk index 15b57a4..f42ffe0 100644 --- a/config/arm64.mk +++ b/config/arm64.mk @@ -13,3 +13,6 @@ HAS_NS16550 := y LDFLAGS_DIRECT += -EL CONFIG_LOAD_ADDRESS ?= 0x80000000 + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= aarch64 diff --git a/config/x86_32.mk b/config/x86_32.mk index 7f76b25..0da63ed 100644 --- a/config/x86_32.mk +++ b/config/x86_32.mk @@ -12,3 +12,6 @@ CFLAGS += -m32 -march=i686 LDFLAGS_DIRECT_OpenBSD = _obsd LDFLAGS_DIRECT_FreeBSD = _fbsd LDFLAGS_DIRECT += -melf_i386$(LDFLAGS_DIRECT_$(XEN_OS)) + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= i386 diff --git a/config/x86_64.mk b/config/x86_64.mk index 11104bd..f5c32a2 100644 --- a/config/x86_64.mk +++ b/config/x86_64.mk @@ -25,3 +25,6 @@ else LDFLAGS_DIRECT += -melf_x86_64 endif endif + +#QEMU CPU arch +IOEMU_CPU_ARCH ?= x86_64 diff --git a/tools/Makefile b/tools/Makefile index 1130369..7b00a70 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -106,8 +106,7 @@ distclean: subdirs-distclean config.cache autom4te.cache ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) -IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ - --cross-prefix=$(CROSS_COMPILE) \ +IOEMU_CONFIGURE_CROSS ?= --cross-prefix=$(CROSS_COMPILE) \ --interp-prefix=$(CROSS_SYS_ROOT) endif @@ -146,7 +145,7 @@ subdir-all-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find set -e; \ $(buildmakevars2shellvars); \ cd qemu-xen-traditional-dir; \ - $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS); \ + $(QEMU_ROOT)/xen-setup --cpu=$(IOEMU_CPU_ARCH) $(IOEMU_CONFIGURE_CROSS); \ $(MAKE) all subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find @@ -155,6 +154,7 @@ subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find cd qemu-xen-traditional-dir; \ $(QEMU_ROOT)/xen-setup \ --extra-cflags="$(EXTRA_CFLAGS_QEMU_TRADITIONAL)" \ + --cpu=$(IOEMU_CPU_ARCH) \ $(IOEMU_CONFIGURE_CROSS); \ $(MAKE) install @@ -207,6 +207,7 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find --disable-guest-agent \ --python=$(PYTHON) \ $(CONFIG_QEMUU_EXTRA_ARGS) \ + --cpu=$(IOEMU_CPU_ARCH) \ $(IOEMU_CONFIGURE_CROSS); \ $(MAKE) all ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 16:29 ` Stefano Stabellini @ 2014-09-23 16:35 ` Ian Campbell 2014-09-23 16:35 ` Stefano Stabellini 0 siblings, 1 reply; 23+ messages in thread From: Ian Campbell @ 2014-09-23 16:35 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Jackson On Tue, 2014-09-23 at 17:29 +0100, Stefano Stabellini wrote: > On Tue, 23 Sep 2014, Ian Campbell wrote: > > On Tue, 2014-09-23 at 15:56 +0100, Stefano Stabellini wrote: > > > Does the following fix the issue for you? > > > > I needed some new build-deps (pixman) but then it appeared to, yes. > > > > I'm in favour of moving the --cpu out from under the > > IOEMU_CONFIGURE_CROSS and into the normal configure rune. It should be > > harmless for native builds and will ensure that cross builds don't > > regress again. Maybe that is more complex with the qemu-trad side of > > things? > > I don't think so: qemu-trad is not used on arm or arm64. > I think that the x86_32 tools build on x86_64 still has some other > issues but this should be an improvement. I wasn't sure if qemu-trad even had --cpu, seem it does? > --- > Fix QEMU cross-compile build > > Introduce the per-arch IOEMU_CPU_ARCH variable. > Always pass --configure=IOEMU_CPU_ARCH to QEMU's configure script. > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Although the comments in config/*.mk are a bit redundant (would you like me to drop as I apply?) > > diff --git a/config/arm32.mk b/config/arm32.mk > index aa79d22..5f056bd 100644 > --- a/config/arm32.mk > +++ b/config/arm32.mk > @@ -18,3 +18,6 @@ HAS_NS16550 := y > LDFLAGS_DIRECT += -EL > > CONFIG_LOAD_ADDRESS ?= 0x80000000 > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= arm > diff --git a/config/arm64.mk b/config/arm64.mk > index 15b57a4..f42ffe0 100644 > --- a/config/arm64.mk > +++ b/config/arm64.mk > @@ -13,3 +13,6 @@ HAS_NS16550 := y > LDFLAGS_DIRECT += -EL > > CONFIG_LOAD_ADDRESS ?= 0x80000000 > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= aarch64 > diff --git a/config/x86_32.mk b/config/x86_32.mk > index 7f76b25..0da63ed 100644 > --- a/config/x86_32.mk > +++ b/config/x86_32.mk > @@ -12,3 +12,6 @@ CFLAGS += -m32 -march=i686 > LDFLAGS_DIRECT_OpenBSD = _obsd > LDFLAGS_DIRECT_FreeBSD = _fbsd > LDFLAGS_DIRECT += -melf_i386$(LDFLAGS_DIRECT_$(XEN_OS)) > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= i386 > diff --git a/config/x86_64.mk b/config/x86_64.mk > index 11104bd..f5c32a2 100644 > --- a/config/x86_64.mk > +++ b/config/x86_64.mk > @@ -25,3 +25,6 @@ else > LDFLAGS_DIRECT += -melf_x86_64 > endif > endif > + > +#QEMU CPU arch > +IOEMU_CPU_ARCH ?= x86_64 > diff --git a/tools/Makefile b/tools/Makefile > index 1130369..7b00a70 100644 > --- a/tools/Makefile > +++ b/tools/Makefile > @@ -106,8 +106,7 @@ distclean: subdirs-distclean > config.cache autom4te.cache > > ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) > -IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ > - --cross-prefix=$(CROSS_COMPILE) \ > +IOEMU_CONFIGURE_CROSS ?= --cross-prefix=$(CROSS_COMPILE) \ > --interp-prefix=$(CROSS_SYS_ROOT) > endif > > @@ -146,7 +145,7 @@ subdir-all-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find > set -e; \ > $(buildmakevars2shellvars); \ > cd qemu-xen-traditional-dir; \ > - $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS); \ > + $(QEMU_ROOT)/xen-setup --cpu=$(IOEMU_CPU_ARCH) $(IOEMU_CONFIGURE_CROSS); \ > $(MAKE) all > > subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find > @@ -155,6 +154,7 @@ subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find > cd qemu-xen-traditional-dir; \ > $(QEMU_ROOT)/xen-setup \ > --extra-cflags="$(EXTRA_CFLAGS_QEMU_TRADITIONAL)" \ > + --cpu=$(IOEMU_CPU_ARCH) \ > $(IOEMU_CONFIGURE_CROSS); \ > $(MAKE) install > > @@ -207,6 +207,7 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find > --disable-guest-agent \ > --python=$(PYTHON) \ > $(CONFIG_QEMUU_EXTRA_ARGS) \ > + --cpu=$(IOEMU_CPU_ARCH) \ > $(IOEMU_CONFIGURE_CROSS); \ > $(MAKE) all > ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 16:35 ` Ian Campbell @ 2014-09-23 16:35 ` Stefano Stabellini 2014-09-23 16:41 ` Ian Campbell 0 siblings, 1 reply; 23+ messages in thread From: Stefano Stabellini @ 2014-09-23 16:35 UTC (permalink / raw) To: Ian Campbell; +Cc: xen-devel, Ian.Jackson, Stefano Stabellini On Tue, 23 Sep 2014, Ian Campbell wrote: > On Tue, 2014-09-23 at 17:29 +0100, Stefano Stabellini wrote: > > On Tue, 23 Sep 2014, Ian Campbell wrote: > > > On Tue, 2014-09-23 at 15:56 +0100, Stefano Stabellini wrote: > > > > Does the following fix the issue for you? > > > > > > I needed some new build-deps (pixman) but then it appeared to, yes. > > > > > > I'm in favour of moving the --cpu out from under the > > > IOEMU_CONFIGURE_CROSS and into the normal configure rune. It should be > > > harmless for native builds and will ensure that cross builds don't > > > regress again. Maybe that is more complex with the qemu-trad side of > > > things? > > > > I don't think so: qemu-trad is not used on arm or arm64. > > I think that the x86_32 tools build on x86_64 still has some other > > issues but this should be an improvement. > > I wasn't sure if qemu-trad even had --cpu, seem it does? > > > --- > > Fix QEMU cross-compile build > > > > Introduce the per-arch IOEMU_CPU_ARCH variable. > > Always pass --configure=IOEMU_CPU_ARCH to QEMU's configure script. > > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > > Acked-by: Ian Campbell <ian.campbell@citrix.com> > > Although the comments in config/*.mk are a bit redundant (would you like > me to drop as I apply?) Sure. Also please test as my cross-compiling environments are limited. > > diff --git a/config/arm32.mk b/config/arm32.mk > > index aa79d22..5f056bd 100644 > > --- a/config/arm32.mk > > +++ b/config/arm32.mk > > @@ -18,3 +18,6 @@ HAS_NS16550 := y > > LDFLAGS_DIRECT += -EL > > > > CONFIG_LOAD_ADDRESS ?= 0x80000000 > > + > > +#QEMU CPU arch > > +IOEMU_CPU_ARCH ?= arm > > diff --git a/config/arm64.mk b/config/arm64.mk > > index 15b57a4..f42ffe0 100644 > > --- a/config/arm64.mk > > +++ b/config/arm64.mk > > @@ -13,3 +13,6 @@ HAS_NS16550 := y > > LDFLAGS_DIRECT += -EL > > > > CONFIG_LOAD_ADDRESS ?= 0x80000000 > > + > > +#QEMU CPU arch > > +IOEMU_CPU_ARCH ?= aarch64 > > diff --git a/config/x86_32.mk b/config/x86_32.mk > > index 7f76b25..0da63ed 100644 > > --- a/config/x86_32.mk > > +++ b/config/x86_32.mk > > @@ -12,3 +12,6 @@ CFLAGS += -m32 -march=i686 > > LDFLAGS_DIRECT_OpenBSD = _obsd > > LDFLAGS_DIRECT_FreeBSD = _fbsd > > LDFLAGS_DIRECT += -melf_i386$(LDFLAGS_DIRECT_$(XEN_OS)) > > + > > +#QEMU CPU arch > > +IOEMU_CPU_ARCH ?= i386 > > diff --git a/config/x86_64.mk b/config/x86_64.mk > > index 11104bd..f5c32a2 100644 > > --- a/config/x86_64.mk > > +++ b/config/x86_64.mk > > @@ -25,3 +25,6 @@ else > > LDFLAGS_DIRECT += -melf_x86_64 > > endif > > endif > > + > > +#QEMU CPU arch > > +IOEMU_CPU_ARCH ?= x86_64 > > diff --git a/tools/Makefile b/tools/Makefile > > index 1130369..7b00a70 100644 > > --- a/tools/Makefile > > +++ b/tools/Makefile > > @@ -106,8 +106,7 @@ distclean: subdirs-distclean > > config.cache autom4te.cache > > > > ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) > > -IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \ > > - --cross-prefix=$(CROSS_COMPILE) \ > > +IOEMU_CONFIGURE_CROSS ?= --cross-prefix=$(CROSS_COMPILE) \ > > --interp-prefix=$(CROSS_SYS_ROOT) > > endif > > > > @@ -146,7 +145,7 @@ subdir-all-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find > > set -e; \ > > $(buildmakevars2shellvars); \ > > cd qemu-xen-traditional-dir; \ > > - $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS); \ > > + $(QEMU_ROOT)/xen-setup --cpu=$(IOEMU_CPU_ARCH) $(IOEMU_CONFIGURE_CROSS); \ > > $(MAKE) all > > > > subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find > > @@ -155,6 +154,7 @@ subdir-install-qemu-xen-traditional-dir: qemu-xen-traditional-dir-find > > cd qemu-xen-traditional-dir; \ > > $(QEMU_ROOT)/xen-setup \ > > --extra-cflags="$(EXTRA_CFLAGS_QEMU_TRADITIONAL)" \ > > + --cpu=$(IOEMU_CPU_ARCH) \ > > $(IOEMU_CONFIGURE_CROSS); \ > > $(MAKE) install > > > > @@ -207,6 +207,7 @@ subdir-all-qemu-xen-dir: qemu-xen-dir-find > > --disable-guest-agent \ > > --python=$(PYTHON) \ > > $(CONFIG_QEMUU_EXTRA_ARGS) \ > > + --cpu=$(IOEMU_CPU_ARCH) \ > > $(IOEMU_CONFIGURE_CROSS); \ > > $(MAKE) all > > > > ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 16:35 ` Stefano Stabellini @ 2014-09-23 16:41 ` Ian Campbell 2014-09-24 9:02 ` Ian Campbell 0 siblings, 1 reply; 23+ messages in thread From: Ian Campbell @ 2014-09-23 16:41 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Jackson On Tue, 2014-09-23 at 17:35 +0100, Stefano Stabellini wrote: > On Tue, 23 Sep 2014, Ian Campbell wrote: > > On Tue, 2014-09-23 at 17:29 +0100, Stefano Stabellini wrote: > > > On Tue, 23 Sep 2014, Ian Campbell wrote: > > > > On Tue, 2014-09-23 at 15:56 +0100, Stefano Stabellini wrote: > > > > > Does the following fix the issue for you? > > > > > > > > I needed some new build-deps (pixman) but then it appeared to, yes. > > > > > > > > I'm in favour of moving the --cpu out from under the > > > > IOEMU_CONFIGURE_CROSS and into the normal configure rune. It should be > > > > harmless for native builds and will ensure that cross builds don't > > > > regress again. Maybe that is more complex with the qemu-trad side of > > > > things? > > > > > > I don't think so: qemu-trad is not used on arm or arm64. > > > I think that the x86_32 tools build on x86_64 still has some other > > > issues but this should be an improvement. > > > > I wasn't sure if qemu-trad even had --cpu, seem it does? > > > > > --- > > > Fix QEMU cross-compile build > > > > > > Introduce the per-arch IOEMU_CPU_ARCH variable. > > > Always pass --configure=IOEMU_CPU_ARCH to QEMU's configure script. > > > > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > > > > Acked-by: Ian Campbell <ian.campbell@citrix.com> > > > > Although the comments in config/*.mk are a bit redundant (would you like > > me to drop as I apply?) > > Sure. ok, will look tomorrow. > Also please test as my cross-compiling environments are limited. My standard precommit builds are native apart from arm64 which is cross. I reckon that will do. Ian. ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH v4 3/3] enable QEMU for ARM builds 2014-09-23 16:41 ` Ian Campbell @ 2014-09-24 9:02 ` Ian Campbell 0 siblings, 0 replies; 23+ messages in thread From: Ian Campbell @ 2014-09-24 9:02 UTC (permalink / raw) To: Stefano Stabellini; +Cc: xen-devel, Ian.Jackson On Tue, 2014-09-23 at 17:41 +0100, Ian Campbell wrote: > On Tue, 2014-09-23 at 17:35 +0100, Stefano Stabellini wrote: > > On Tue, 23 Sep 2014, Ian Campbell wrote: > > > On Tue, 2014-09-23 at 17:29 +0100, Stefano Stabellini wrote: > > > > On Tue, 23 Sep 2014, Ian Campbell wrote: > > > > > On Tue, 2014-09-23 at 15:56 +0100, Stefano Stabellini wrote: > > > > > > Does the following fix the issue for you? > > > > > > > > > > I needed some new build-deps (pixman) but then it appeared to, yes. > > > > > > > > > > I'm in favour of moving the --cpu out from under the > > > > > IOEMU_CONFIGURE_CROSS and into the normal configure rune. It should be > > > > > harmless for native builds and will ensure that cross builds don't > > > > > regress again. Maybe that is more complex with the qemu-trad side of > > > > > things? > > > > > > > > I don't think so: qemu-trad is not used on arm or arm64. > > > > I think that the x86_32 tools build on x86_64 still has some other > > > > issues but this should be an improvement. > > > > > > I wasn't sure if qemu-trad even had --cpu, seem it does? > > > > > > > --- > > > > Fix QEMU cross-compile build > > > > > > > > Introduce the per-arch IOEMU_CPU_ARCH variable. > > > > Always pass --configure=IOEMU_CPU_ARCH to QEMU's configure script. > > > > > > > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > > > > > > Acked-by: Ian Campbell <ian.campbell@citrix.com> > > > > > > Although the comments in config/*.mk are a bit redundant (would you like > > > me to drop as I apply?) > > > > Sure. > > ok, will look tomorrow. > > > Also please test as my cross-compiling environments are limited. > > My standard precommit builds are native apart from arm64 which is cross. > I reckon that will do. These all passed, so I've pushed. Thanks! ^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2014-09-24 9:02 UTC | newest] Thread overview: 23+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-08-01 15:30 [PATCH v4 0/3] Move xenstore and libxc public headers to include subdir Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 1/3] " Stefano Stabellini 2014-08-06 14:53 ` Ian Jackson 2014-08-06 15:04 ` Stefano Stabellini 2014-08-07 11:46 ` Ian Jackson 2014-08-07 14:07 ` Stefano Stabellini 2014-08-07 16:40 ` Ian Jackson 2014-08-13 11:37 ` Stefano Stabellini 2014-09-22 17:14 ` Ian Jackson 2014-09-22 18:52 ` Ian Campbell 2014-09-23 13:15 ` Ian Jackson 2014-09-23 13:22 ` Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 2/3] qemu-xen-trad: -I tools/libxc/include and tools/xenstore/include Stefano Stabellini 2014-08-01 15:32 ` [PATCH v4 3/3] enable QEMU for ARM builds Stefano Stabellini 2014-09-23 12:56 ` Ian Campbell 2014-09-23 13:35 ` Ian Campbell 2014-09-23 14:56 ` Stefano Stabellini 2014-09-23 15:21 ` Ian Campbell 2014-09-23 16:29 ` Stefano Stabellini 2014-09-23 16:35 ` Ian Campbell 2014-09-23 16:35 ` Stefano Stabellini 2014-09-23 16:41 ` Ian Campbell 2014-09-24 9:02 ` Ian Campbell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).