From 4644a4c482ef66ac54d5860629cfd1b8f1820537 Mon Sep 17 00:00:00 2001 From: Maxim Krivchikov Date: Sat, 22 Feb 2020 22:29:49 +0000 Subject: [PATCH 1/2] pythonPackages.pyfribidi: fix build --- pkgs/development/python-modules/pyfribidi/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyfribidi/default.nix b/pkgs/development/python-modules/pyfribidi/default.nix index 50a0bfa1e22..6e9e56eee33 100644 --- a/pkgs/development/python-modules/pyfribidi/default.nix +++ b/pkgs/development/python-modules/pyfribidi/default.nix @@ -1,14 +1,14 @@ { stdenv , buildPythonPackage , fetchPypi -, isPy3k , isPyPy +, six }: buildPythonPackage rec { version = "0.12.0"; pname = "pyfribidi"; - disabled = isPy3k || isPyPy; + disabled = isPyPy; src = fetchPypi { inherit pname version; @@ -16,6 +16,8 @@ buildPythonPackage rec { sha256 = "64726a4a56783acdc79c6b9b3a15f16e6071077c897a0b999f3b43f744bc621c"; }; + propagatedBuildInputs = [ six ]; + meta = with stdenv.lib; { description = "A simple wrapper around fribidi"; homepage = https://github.com/pediapress/pyfribidi; From a517238f9f165429d53531074f91a5c7a53426d7 Mon Sep 17 00:00:00 2001 From: Maxim Krivchikov Date: Sun, 23 Feb 2020 07:21:10 +0000 Subject: [PATCH 2/2] Add patch for python2 build with clang --- .../python-modules/pyfribidi/default.nix | 2 ++ .../pyfribidi/pyfribidi-clang.patch | 17 +++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 pkgs/development/python-modules/pyfribidi/pyfribidi-clang.patch diff --git a/pkgs/development/python-modules/pyfribidi/default.nix b/pkgs/development/python-modules/pyfribidi/default.nix index 6e9e56eee33..fcb201c0311 100644 --- a/pkgs/development/python-modules/pyfribidi/default.nix +++ b/pkgs/development/python-modules/pyfribidi/default.nix @@ -16,6 +16,8 @@ buildPythonPackage rec { sha256 = "64726a4a56783acdc79c6b9b3a15f16e6071077c897a0b999f3b43f744bc621c"; }; + patches = stdenv.lib.optional stdenv.cc.isClang ./pyfribidi-clang.patch; + propagatedBuildInputs = [ six ]; meta = with stdenv.lib; { diff --git a/pkgs/development/python-modules/pyfribidi/pyfribidi-clang.patch b/pkgs/development/python-modules/pyfribidi/pyfribidi-clang.patch new file mode 100644 index 00000000000..c570843f7e8 --- /dev/null +++ b/pkgs/development/python-modules/pyfribidi/pyfribidi-clang.patch @@ -0,0 +1,17 @@ +diff --git a/pyfribidi.c b/pyfribidi.c +index 9a0120d..238134a 100644 +--- a/pyfribidi.c ++++ b/pyfribidi.c +@@ -148,10 +148,11 @@ init_pyfribidi (void) + { + #if PY_MAJOR_VERSION >= 3 + PyObject *module = PyModule_Create (&pyfribidi_moduledef); ++ if (module == NULL) return NULL; + #else + PyObject *module = Py_InitModule ("_pyfribidi", PyfribidiMethods); ++ if (module == NULL) return; + #endif +- if (module == NULL) return NULL; + + PyModule_AddIntConstant (module, "RTL", (long) FRIBIDI_TYPE_RTL); + PyModule_AddIntConstant (module, "LTR", (long) FRIBIDI_TYPE_LTR);