[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v4 3/3] enable QEMU for ARM builds



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@xxxxxxxxxxxxx>
> 
> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> 
> 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
> >  
> 
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.