python-cffi: fix clang build

This commit is contained in:
Daiderd Jordan 2017-10-29 01:47:46 +02:00
parent 0767d2984b
commit 3f3eb6ca64
No known key found for this signature in database
GPG Key ID: D02435D05B810C96
2 changed files with 17 additions and 2 deletions

View 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

View File

@ -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 {
pname = "cffi";
@ -10,13 +10,15 @@ if isPyPy then null else buildPythonPackage rec {
sha256 = "ab87dd91c0c4073758d07334c1e5f712ce8fe48f007b86f8238773963ee700a6";
};
patches = stdenv.lib.optional (isPy27 && stdenv.cc.isClang) ./clang.patch;
outputs = [ "out" "dev" ];
propagatedBuildInputs = [ libffi pycparser ];
buildInputs = [ pytest ];
# 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 = ''
py.test