48 lines
1.8 KiB
Nix
48 lines
1.8 KiB
Nix
{ stdenv, fetchurl, pkgconfig, libvirt, glib, libxml2, intltool, libtool, yajl
|
|
, nettle, libgcrypt, python, pygobject, gobjectIntrospection, libcap_ng, numactl
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "libvirt-glib-0.2.0";
|
|
|
|
src = fetchurl {
|
|
url = "http://libvirt.org/sources/glib/${name}.tar.gz";
|
|
sha256 = "02saqkk4wzsimsan7s9yc5bx05xn7j00hnxhq4sczkgr4krf1drh";
|
|
};
|
|
|
|
buildInputs = [
|
|
pkgconfig libvirt glib libxml2 intltool libtool yajl nettle libgcrypt
|
|
python pygobject gobjectIntrospection libcap_ng numactl
|
|
];
|
|
|
|
# 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;
|
|
};
|
|
}
|