python-cffi: fix clang build
This commit is contained in:
parent
0767d2984b
commit
3f3eb6ca64
2 changed files with 17 additions and 2 deletions
13
pkgs/development/python-modules/cffi/clang.patch
Normal file
13
pkgs/development/python-modules/cffi/clang.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
diff --git a/testing/cffi1/test_recompiler.py b/testing/cffi1/test_recompiler.py
|
||||||
|
index a3277b0..0d6e2c3 100644
|
||||||
|
--- a/testing/cffi1/test_recompiler.py
|
||||||
|
+++ b/testing/cffi1/test_recompiler.py
|
||||||
|
@@ -2270,7 +2270,7 @@ def test_char16_char32_type(no_cpp=False):
|
||||||
|
char32_t foo_4bytes(char32_t);
|
||||||
|
""")
|
||||||
|
lib = verify(ffi, "test_char16_char32_type" + no_cpp * "_nocpp", """
|
||||||
|
- #if !defined(__cplusplus) || __cplusplus < 201103L
|
||||||
|
+ #if !defined(__cplusplus)
|
||||||
|
typedef uint_least16_t char16_t;
|
||||||
|
typedef uint_least32_t char32_t;
|
||||||
|
#endif
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, buildPythonPackage, isPyPy, fetchPypi, libffi, pycparser, pytest }:
|
{ stdenv, buildPythonPackage, isPy27, isPyPy, fetchPypi, libffi, pycparser, pytest }:
|
||||||
|
|
||||||
if isPyPy then null else buildPythonPackage rec {
|
if isPyPy then null else buildPythonPackage rec {
|
||||||
pname = "cffi";
|
pname = "cffi";
|
||||||
|
@ -10,13 +10,15 @@ if isPyPy then null else buildPythonPackage rec {
|
||||||
sha256 = "ab87dd91c0c4073758d07334c1e5f712ce8fe48f007b86f8238773963ee700a6";
|
sha256 = "ab87dd91c0c4073758d07334c1e5f712ce8fe48f007b86f8238773963ee700a6";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = stdenv.lib.optional (isPy27 && stdenv.cc.isClang) ./clang.patch;
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
propagatedBuildInputs = [ libffi pycparser ];
|
propagatedBuildInputs = [ libffi pycparser ];
|
||||||
buildInputs = [ pytest ];
|
buildInputs = [ pytest ];
|
||||||
|
|
||||||
# The tests use -Werror but with python3.6 clang detects some unreachable code.
|
# The tests use -Werror but with python3.6 clang detects some unreachable code.
|
||||||
NIX_CFLAGS_COMPILE = stdenv.lib.optional stdenv.cc.isClang "-Wno-unreachable-code";
|
NIX_CFLAGS_COMPILE = stdenv.lib.optionals stdenv.cc.isClang [ "-Wno-unused-command-line-argument" "-Wno-unreachable-code" ];
|
||||||
|
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
py.test
|
py.test
|
||||||
|
|
Loading…
Reference in a new issue