diff options
Diffstat (limited to 'pkgs/development/libraries/libvirt-glib/default.nix')
-rw-r--r-- | pkgs/development/libraries/libvirt-glib/default.nix | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/development/libraries/libvirt-glib/default.nix b/pkgs/development/libraries/libvirt-glib/default.nix new file mode 100644 index 00000000000..afce119e396 --- /dev/null +++ b/pkgs/development/libraries/libvirt-glib/default.nix @@ -0,0 +1,48 @@ +{ stdenv, fetchurl, pkgconfig, libvirt, glib, libxml2, intltool, libtool, yajl +, nettle, libgcrypt, python, pygobject, gobjectIntrospection, libcap_ng +}: + +stdenv.mkDerivation rec { + name = "libvirt-glib-0.1.8"; + + src = fetchurl { + url = "http://libvirt.org/sources/glib/${name}.tar.gz"; + sha256 = "0ld7g9vlpdzx8rm90i8y1gnpygkn20x5z12gvsgms7dy5nala3ns"; + }; + + buildInputs = [ + pkgconfig libvirt glib libxml2 intltool libtool yajl nettle libgcrypt + python pygobject gobjectIntrospection libcap_ng + ]; + + # Compiler flag -fstack-protector-all fixes this build error: + # + # ./.libs/libvirt-glib-1.0.so: undefined reference to `__stack_chk_guard' + # + # And the extra include path fixes this build error: + # + # In file included from ../libvirt-gobject/libvirt-gobject-domain-device.h:30:0, + # from /tmp/nix-build-libvirt-glib-0.1.7.drv-2/libvirt-glib-0.1.7/libvirt-gobject/libvirt-gobject.h:33, + # from <stdin>:4: + # ../libvirt-gobject/libvirt-gobject-domain.h:33:29: fatal error: libvirt/libvirt.h: No such file or directory + # compilation terminated. + # make[3]: *** [LibvirtGObject-1.0.gir] Error 1 + preConfigure = '' + export NIX_CFLAGS_COMPILE="-fstack-protector-all -I${libvirt}/include" + ''; + + meta = with stdenv.lib; { + description = "Library for working with virtual machines"; + longDescription = '' + libvirt-glib wraps libvirt to provide a high-level object-oriented API better + suited for glib-based applications, via three libraries: + + - libvirt-glib - GLib main loop integration & misc helper APIs + - libvirt-gconfig - GObjects for manipulating libvirt XML documents + - libvirt-gobject - GObjects for managing libvirt objects + ''; + homepage = http://libvirt.org/; + license = licenses.lgpl2Plus; + platforms = platforms.linux; + }; +} |