about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2018-08-15 00:45:35 +0200
committerJan Tojnar <jtojnar@gmail.com>2018-09-08 05:45:23 +0200
commit1aaea3839b1ff01718d6a02407672a08406a5df5 (patch)
tree7babacb45d82b1eb36bc1b0b4d430cc71242018d
parentf0f8229ee398a5c4fbc1bef2d5074710ac7f4a71 (diff)
downloadnixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.tar
nixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.tar.gz
nixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.tar.bz2
nixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.tar.lz
nixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.tar.xz
nixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.tar.zst
nixlib-1aaea3839b1ff01718d6a02407672a08406a5df5.zip
gupnp: enable docs, gir and split outputs
-rw-r--r--pkgs/development/libraries/gupnp/default.nix39
-rw-r--r--pkgs/development/libraries/gupnp/fix-requires.patch9
2 files changed, 34 insertions, 14 deletions
diff --git a/pkgs/development/libraries/gupnp/default.nix b/pkgs/development/libraries/gupnp/default.nix
index 963b93ef6917..7ec6199dc076 100644
--- a/pkgs/development/libraries/gupnp/default.nix
+++ b/pkgs/development/libraries/gupnp/default.nix
@@ -1,28 +1,39 @@
-{ stdenv, fetchurl, pkgconfig, glib, gssdp, libsoup, libxml2, libuuid }:
- 
+{ stdenv, fetchurl, pkgconfig, gobjectIntrospection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_412, docbook_xml_dtd_44, glib, gssdp, libsoup, libxml2, libuuid }:
+
 stdenv.mkDerivation rec {
   name = "gupnp-${version}";
-  majorVersion = "1.0";
-  version = "${majorVersion}.2";
+  version = "1.0.2";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gupnp/${majorVersion}/gupnp-${version}.tar.xz";
+    url = "mirror://gnome/sources/gupnp/${stdenv.lib.versions.majorMinor version}/gupnp-${version}.tar.xz";
     sha256 = "043nqxlj030a3wvd6x4c9z8fjarjjjsl2pjarl0nn70ig6kzswsi";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  patches = [
+    # Nix’s pkg-config ignores Requires.private
+    # https://github.com/NixOS/nixpkgs/commit/1e6622f4d5d500d6e701bd81dd4a22977d10637d
+    # We are essentialy reverting the following patch for now
+    # https://bugzilla.gnome.org/show_bug.cgi?id=685477
+    # at least until Requires.internal or something is implemented
+    # https://gitlab.freedesktop.org/pkg-config/pkg-config/issues/7
+    ./fix-requires.patch
+  ];
+
+  nativeBuildInputs = [ pkgconfig gobjectIntrospection vala gtk-doc docbook_xsl docbook_xml_dtd_412 docbook_xml_dtd_44 ];
   propagatedBuildInputs = [ glib gssdp libsoup libxml2 libuuid ];
 
-  postInstall = ''
-    ln -sv ${libsoup.dev}/include/libsoup-2*/libsoup $out/include
-    ln -sv ${libxml2.dev}/include/*/libxml $out/include
-    ln -sv ${gssdp}/include/*/libgssdp $out/include
-  '';
+  configureFlags = [
+    "--enable-gtk-doc"
+  ];
+
+  doCheck = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.gupnp.org/;
     description = "An implementation of the UPnP specification";
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl2Plus;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/gupnp/fix-requires.patch b/pkgs/development/libraries/gupnp/fix-requires.patch
new file mode 100644
index 000000000000..4538fc55460f
--- /dev/null
+++ b/pkgs/development/libraries/gupnp/fix-requires.patch
@@ -0,0 +1,9 @@
+--- a/gupnp-1.0.pc.in
++++ b/gupnp-1.0.pc.in
+@@ -8,4 +8,5 @@
+ Version: @VERSION@
+ Libs: -L${libdir} -lgupnp-1.0
+ Cflags: -I${includedir}/gupnp-1.0
+-Requires.private: gssdp-1.0 libxml-2.0 libsoup-2.4 @UUID_LIBS@
++Requires: glib-2.0 gobject-2.0 gssdp-1.0 libxml-2.0 libsoup-2.4
++Requires.private: @UUID_LIBS@