nixpkgs/pkgs/development/libraries/gupnp/default.nix
2021-01-21 19:11:02 -08:00

95 lines
2 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ lib, stdenv
, fetchurl
, fetchpatch
, meson
, ninja
, pkg-config
, gobject-introspection
, vala
, gtk-doc
, docbook_xsl
, docbook_xml_dtd_412
, docbook_xml_dtd_44
, glib
, gssdp
, libsoup
, libxml2
, libuuid
, gnome3
}:
stdenv.mkDerivation rec {
pname = "gupnp";
version = "1.2.0";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gupnp/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0911lv1bivsyv9wwdxm0i1w4r89j0vyyqp200gsfdnzk6v1a4x7x";
};
patches = [
# Nixs 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
# fix deadlock in gupnp-igd tests
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gupnp/commit/d208562657f62b34759896ca9e974bd582d1f963.patch";
sha256 = "02kzsb4glxhgb1npf6qqgafiki0ws75sly5h470431mihc6sgp4f";
})
# fix breakage in gupnp-igd tests
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gupnp/commit/0648399acb989473119fe59d0b9f65c923e69483.patch";
sha256 = "0ba0rngk3a4n3z4dmq06wzgh0n3q9la1nr25qdxqbwlszmxfxpjf";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
gobject-introspection
vala
gtk-doc
docbook_xsl
docbook_xml_dtd_412
docbook_xml_dtd_44
];
buildInputs = [
libuuid
];
propagatedBuildInputs = [
glib
gssdp
libsoup
libxml2
];
mesonFlags = [
"-Dgtk_doc=true"
];
doCheck = true;
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
};
};
meta = with lib; {
homepage = "http://www.gupnp.org/";
description = "An implementation of the UPnP specification";
license = licenses.lgpl2Plus;
platforms = platforms.linux;
};
}