1{ lib, buildPythonPackage, fetchFromGitHub
2, cython
3, libxml2
4, libxslt
5, zlib
6}:
7
8buildPythonPackage rec {
9 pname = "lxml";
10 version = "4.5.2";
11
12 src = fetchFromGitHub {
13 owner = pname;
14 repo = pname;
15 rev = "${pname}-${version}";
16 sha256 = "1d0cpwdjxfzwjzmnz066ibzicyj2vhx15qxmm775l8hxqi65xps4";
17 };
18
19 # setuptoolsBuildPhase needs dependencies to be passed through nativeBuildInputs
20 nativeBuildInputs = [ libxml2.dev libxslt.dev cython ];
21 buildInputs = [ libxml2 libxslt zlib ];
22
23 # tests are meant to be ran "in-place" in the same directory as src
24 doCheck = false;
25
26 pythonImportsCheck = [ "lxml" "lxml.etree" ];
27
28 meta = with lib; {
29 description = "Pythonic binding for the libxml2 and libxslt libraries";
30 homepage = "https://lxml.de";
31 license = licenses.bsd3;
32 maintainers = with maintainers; [ jonringer sjourdois ];
33 };
34}