[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/2] configure: use pkg-config for obtaining xen version
On 24/03/17 16:51, Juergen Gross wrote: > On 24/03/17 16:44, Paul Durrant wrote: >>> -----Original Message----- >>> From: Juergen Gross [mailto:jgross@xxxxxxxx] >>> Sent: 24 March 2017 15:35 >>> To: Paul Durrant <Paul.Durrant@xxxxxxxxxx>; 'Stefano Stabellini' >>> <sstabellini@xxxxxxxxxx> >>> Cc: Anthony Perard <anthony.perard@xxxxxxxxxx>; xen- >>> devel@xxxxxxxxxxxxxxxxxxxx; qemu-devel@xxxxxxxxxx; kraxel@xxxxxxxxxx >>> Subject: Re: [Xen-devel] [PATCH 2/2] configure: use pkg-config for obtaining >>> xen version >>> >>> On 24/03/17 16:12, Paul Durrant wrote: >>>>> -----Original Message----- >>>>> From: Stefano Stabellini [mailto:sstabellini@xxxxxxxxxx] >>>>> Sent: 22 March 2017 18:22 >>>>> To: Juergen Gross <jgross@xxxxxxxx> >>>>> Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>; qemu- >>> devel@xxxxxxxxxx; >>>>> xen-devel@xxxxxxxxxxxxxxxxxxxx; Anthony Perard >>>>> <anthony.perard@xxxxxxxxxx>; kraxel@xxxxxxxxxx; Paul Durrant >>>>> <Paul.Durrant@xxxxxxxxxx> >>>>> Subject: Re: [PATCH 2/2] configure: use pkg-config for obtaining xen >>> version >>>>> >>>>> On Wed, 22 Mar 2017, Juergen Gross wrote: >>>>>> On 21/03/17 19:54, Stefano Stabellini wrote: >>>>>>> On Tue, 21 Mar 2017, Juergen Gross wrote: >>>>>>>> On 17/03/17 19:33, Stefano Stabellini wrote: >>>>>>>>> On Fri, 17 Mar 2017, Juergen Gross wrote: >>>>>>>>>> On 16/03/17 21:20, Stefano Stabellini wrote: >>>>>>>>>>> On Thu, 16 Mar 2017, Juergen Gross wrote: >>>>>>>>>>>> Instead of trying to guess the Xen version to use by compiling >>>>> various >>>>>>>>>>>> test programs first just ask the system via pkg-config. Only if it >>>>>>>>>>>> can't return the version fall back to the test program scheme. >>>>>>>>>>> >>>>>>>>>>> That's OK, but why did you remove the Xen unstable test? >>>>>>>>>> >>>>>>>>>> >From Xen 4.9 on pkg-config will return the needed information. >>>>> There is >>>>>>>>>> no longer a need for a test program to determine the Xen version. >>>>> After >>>>>>>>>> all this was the main objective of my series adding the pkg-config >>>>>>>>>> files to Xen. >>>>>>>>> >>>>>>>>> I was going to say something like "yeah, but is pkg-config always >>>>>>>>> available?" In reality, QEMU already has pkg-config as build >>>>>>>>> dependency, so I guess there is no problem with that. >>>>>>>>> >>>>>>>>> Please add a note about this to the commit message. >>>>>>>>> >>>>>>>> >>>>>>>> Okay. >>>>>>> >>>>>>> Sorry to point this out only now, and I realize that it might be >>>>>>> unimportant for production builds, but it is important to me, and >>>>>>> developers in general, to be able to test a single QEMU tree against a >>>>>>> number of Xen trees (all releases from 4.3 onward). >>>>>>> >>>>>>> With this change (specifically dropping the 4.9 build test), out of tree >>>>>>> builds don't work anymore. I would like to be able to do: >>>>>>> >>>>>>> ./configure --enable-xen --target-list=i386-softmmu \ >>>>>>> --extra-cflags="-I$DIR/tools/include \ >>>>>>> -I$DIR/tools/libs/toollog/include \ >>>>>>> -I$DIR/tools/libs/evtchn/include \ >>>>>>> -I$DIR/tools/libs/gnttab/include \ >>>>>>> -I$DIR/tools/libs/foreignmemory/include \ >>>>>>> -I$DIR/tools/libs/devicemodel/include \ >>>>>>> -I$DIR/tools/libxc/include \ >>>>>>> -I$DIR/tools/xenstore/include \ >>>>>>> -I$DIR/tools/xenstore/compat/include" \ >>>>>>> --extra-ldflags="-L$DIR/tools/libxc \ >>>>>>> -L$DIR/tools/xenstore \ >>>>>>> -L$DIR/tools/libs/evtchn \ >>>>>>> -L$DIR/tools/libs/gnttab \ >>>>>>> -L$DIR/tools/libs/foreignmemory \ >>>>>>> -L$DIR/tools/libs/devicemodel \ >>>>>>> -Wl,-rpath-link=$DIR/tools/libs/toollog \ >>>>>>> -Wl,-rpath-link=$DIR/tools/libs/evtchn \ >>>>>>> -Wl,-rpath-link=$DIR/tools/libs/gnttab \ >>>>>>> -Wl,-rpath-link=$DIR/tools/libs/call \ >>>>>>> -Wl,-rpath-link=$DIR/tools/libs/foreignmemory \ >>>>>>> -Wl,-rpath-link=$DIR/tools/libs/devicemodel" \ >>>>>>> --disable-kvm >>>>>>> make >>>>>>> >>>>>>> And the make should succeed. Is there a way to do that with pkg- >>> config? >>>>>> >>>>>> Sure, for Xen 4.9 just do: >>>>>> >>>>>> PKG_CONFIG_PATH=$(DIR)/tools/pkg-config ./configure \ >>>>>> --enable-xen --target-list=i386-softmmu \ >>>>>> --disable-kvm >>>>>> make >>>>> >>>>> Yes, that works, thanks! I committed it to my next branch adding >>>>> "pkg-config, which is already a build dependency of QEMU, will be used >>>>> exclusively to determine the Xen version from Xen 4.9 onward." to the >>>>> commit message. >>>> >>>> A further question... >>>> >>>> I have a xen tree which I've been using to build and install master against >>> my own checked out QEMU repo. No problem with that. I've now reverted >>> my tree to 4.7.0 and cannot build tools (even after a make distclean) >>> because >>> QEMU's configure is still getting up a xen_ctrl_version of 40900. This is >>> because pkg-config is still finding a 4.9.0 xencontrol package? Where is it >>> getting this from? >>> >>> Hmm, could it be you have Xen unstable installed on your machine? >> >> I do indeed. I build on my test machine. >> >>> >>> Didn't think of this problem. I can think of 3 solutions: >>> >>> a) delete the xencontrol.pc file (on my system under >>> /usr/share/pkgconfig/ ) >>> >> >> I just found mine using pkg-config --debug... /usr/local/share/pkgconfig for >> me >> >>> b) we add a patch to qemu to test an environment variable whether >>> pkg-config should be ignored for Xen version detection >>> >>> c) set the environment variable PKG_CONFIG_LIBDIR to a local directory >>> and copy all but the xen*.pc files from /usr/share/pkgconfig/ (or >>> your correct directory) to it (or link them to avoid missing updates) >>> >>> OTOH this is something you have to be aware of for other packages as >>> well: mixing the build environment and the target environment can lead >>> to bad results. Now Xen has been added to the list. >>> >> >> That's a change in behaviour that I, and probably others, have long been >> used to. What we really want, presumably, is to have pkg-config just look >> under tools/pkgconfig when querying for the version of xencontrol. Could >> that not be done by simply setting PKG_CONFIG_LIBDIR in QEMU's configure >> script, or would it still mean picking up installed libraries before ones >> just built? > > I guess this would break qemu's configure badly as it wouldn't find all > the other library informations it is looking for via pkg-config. Aah, wait, you mean just for the Xen query? This might complicate things for my qemu stubdom plans... Juergen _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |