[libvirt] [libvirt-python PATCH] setup: Make libvirt API XML path configurable

Martin Kletzander mkletzan at redhat.com
Tue Nov 26 14:38:33 UTC 2013


On Tue, Nov 26, 2013 at 10:14:36AM +0000, Daniel P. Berrange wrote:
> On Tue, Nov 26, 2013 at 10:58:25AM +0100, Martin Kletzander wrote:
> > Adding a support for LIBVIRT_API_PATH evironment variable, which can
> > control where the script should look for the 'libvirt-api.xml' file.
> > This allows building libvirt-python against different libvirt than the
> > one installed in the system.  This may be used for example in autotest
> > or by packagers without the need to install libvirt into the system.
> > 
> > Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
> > ---
> >  setup.py | 12 +++++++++++-
> >  1 file changed, 11 insertions(+), 1 deletion(-)
> > 
> > diff --git a/setup.py b/setup.py
> > index 17b4722..566c210 100755
> > --- a/setup.py
> > +++ b/setup.py
> > @@ -109,7 +109,17 @@ class my_build(build):
> >          """Check with pkg-config that libvirt is present and extract
> >          the API XML file paths we need from it"""
> > 
> > -        libvirt_api = get_pkgconfig_data(["--variable", "libvirt_api"], "libvirt")
> > +        libvirt_api = os.getenv("LIBVIRT_API_PATH")
> > +
> > +        if libvirt_api:
> > +            if not libvirt_api.endswith("-api.xml"):
> > +                raise ValueError("Invalid path '%s' for API XML" % libvirt_api)
> > +            if not os.path.exists(libvirt_api):
> > +                raise ValueError("API XML '%s' does not exist, "
> > +                                 "have you built libvirt?" % libvirt_api)
> > +        else:
> > +            libvirt_api = get_pkgconfig_data(["--variable", "libvirt_api"],
> > +                                             "libvirt")
> > 
> >          offset = libvirt_api.index("-api.xml")
> >          libvirt_qemu_api = libvirt_api[0:offset] + "-qemu-api.xml"
> 
> NACK, setting pkg-config already takes care of this. See the
> build-many.sh scrpit attached to this mail which demonstrates
> use of PKG_CONFIG_PATH to build against every version of libvirt
> back to 0.9.11
> 

This still means you have to configure libvirt with different prefix,
install it and then you can use PKG_CONFIG_PATH.  This variable (which
is unused if unset) makes it easier to use in case you have it built
with default prefix etc.  It would help me a lot, but if everyone else
is OK with installing libvirt in order to build python bindings just
to test something, I'll keep this in my git.

Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20131126/f2b4172a/attachment-0001.sig>


More information about the libvir-list mailing list