diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libmodulemd')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libmodulemd/default.nix | 76 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libmodulemd/glib-devdoc.patch | 13 |
2 files changed, 89 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix b/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix new file mode 100644 index 000000000000..79f590af5ffd --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libmodulemd/default.nix @@ -0,0 +1,76 @@ +{ lib, stdenv +, substituteAll +, fetchFromGitHub +, pkg-config +, meson +, ninja +, gobject-introspection +, python3 +, libyaml +, rpm +, file +, gtk-doc +, docbook-xsl-nons +, help2man +, docbook_xml_dtd_412 +, glib +}: + +stdenv.mkDerivation rec { + pname = "libmodulemd"; + version = "2.13.0"; + + outputs = [ "bin" "out" "dev" "devdoc" "man" "py" ]; + + src = fetchFromGitHub { + owner = "fedora-modularity"; + repo = pname; + rev = "${pname}-${version}"; + sha256 = "sha256-hg/it3pHUnEYsmKcLzQKcZNthHZZwdXBjzTlOS1Losk="; + }; + + patches = [ + # Use proper glib devdoc path. + (substituteAll { + src = ./glib-devdoc.patch; + glib_devdoc = glib.devdoc; + }) + ]; + + nativeBuildInputs = [ + pkg-config + meson + ninja + gtk-doc + docbook-xsl-nons + help2man + docbook_xml_dtd_412 + gobject-introspection + ]; + + buildInputs = [ + libyaml + rpm + file # for libmagic + glib + ]; + + mesonFlags = [ + "-Ddeveloper_build=false" + "-Dgobject_overrides_dir_py3=${placeholder "py"}/${python3.sitePackages}/gi/overrides" + ]; + + postFixup = '' + # Python overrides depend our own typelibs and other packages + mkdir -p "$py/nix-support" + echo "$out ${python3.pkgs.pygobject3} ${python3.pkgs.six}" > "$py/nix-support/propagated-build-inputs" + ''; + + meta = with lib; { + description = "C Library for manipulating module metadata files"; + homepage = "https://github.com/fedora-modularity/libmodulemd"; + license = licenses.mit; + maintainers = with maintainers; [ ]; + platforms = platforms.linux ++ platforms.darwin ; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/libmodulemd/glib-devdoc.patch b/nixpkgs/pkgs/development/libraries/libmodulemd/glib-devdoc.patch new file mode 100644 index 000000000000..cde42d8e0b2e --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libmodulemd/glib-devdoc.patch @@ -0,0 +1,13 @@ +diff --git a/meson.build b/meson.build +index a8b02b4..dd31a76 100644 +--- a/meson.build ++++ b/meson.build +@@ -67,7 +67,7 @@ test = find_program('test') + with_docs = get_option('with_docs') + if with_docs + gtkdoc = dependency('gtk-doc') +- glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html') ++ glib_docpath = join_paths('@glib_devdoc@', 'share', 'gtk-doc', 'html') + + ret = run_command ([test, '-e', join_paths(glib_docpath, 'glib/index.html')]) + if ret.returncode() != 0 |