nixpkgs/pkgs/development/tools/documentation/gtk-doc/default.nix
Frederik Rietdijk 4ece345970 gtk-doc: dont recompile bytecode
Would not build otherwise. The hooks needs to be fixed.
https://github.com/NixOS/nixpkgs/pull/90208#issuecomment-644051108
2020-06-15 12:43:04 +02:00

91 lines
2.1 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.

{ stdenv
, fetchFromGitLab
, meson
, ninja
, pkg-config
, python3
, docbook_xml_dtd_43
, docbook_xsl
, libxslt
, gettext
, gnome3
, withDblatex ? false, dblatex
}:
python3.pkgs.buildPythonApplication rec {
pname = "gtk-doc";
version = "1.32";
format = "other";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = pname;
rev = "GTK_DOC_${stdenv.lib.replaceStrings ["."] ["_"] version }";
sha256 = "14fihxj662gg4ln1ngff6s52zzkpbcc58qa0nxysxypnhp0h4ypk";
};
patches = [
passthru.respect_xml_catalog_files_var_patch
];
outputDevdoc = "out";
nativeBuildInputs = [
pkg-config
gettext
meson
ninja
libxslt # for xsltproc
];
buildInputs = [
docbook_xml_dtd_43
docbook_xsl
libxslt
] ++ stdenv.lib.optionals withDblatex [
dblatex
];
pythonPath = with python3.pkgs; [
pygments # Needed for https://gitlab.gnome.org/GNOME/gtk-doc/blob/GTK_DOC_1_32/meson.build#L42
(anytree.override { withGraphviz = false; })
lxml
];
mesonFlags = [
"-Dtests=false"
"-Dyelp_manual=false"
];
doCheck = false; # requires a lot of stuff
doInstallCheck = false; # fails
postFixup = ''
# Do not propagate Python
substituteInPlace $out/nix-support/propagated-build-inputs \
--replace "${python3}" ""
'';
# find: ...-gtk-doc-1.32/lib/python3.8/site-packages: No such file or directory
# https://github.com/NixOS/nixpkgs/pull/90208#issuecomment-644051108
dontUsePythonRecompileBytecode = true;
passthru = {
# Consumers are expected to copy the m4 files to their source tree, let them reuse the patch
respect_xml_catalog_files_var_patch = ./respect-xml-catalog-files-var.patch;
updateScript = gnome3.updateScript {
packageName = pname;
versionPolicy = "none";
};
};
meta = with stdenv.lib; {
description = "Tools to extract documentation embedded in GTK and GNOME source code";
homepage = "https://www.gtk.org/gtk-doc";
license = licenses.gpl2;
maintainers = with maintainers; [ pSub worldofpeace ];
};
}