summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/libffi.scm16
-rw-r--r--gnu/packages/patches/python-cffi-x87-stack-clean.patch29
3 files changed, 4 insertions, 42 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 4f1385d73b..88ce141c13 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1312,7 +1312,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-axolotl-AES-fix.patch		\
   %D%/packages/patches/python-cairocffi-dlopen-path.patch	\
   %D%/packages/patches/python-cross-compile.patch		\
-  %D%/packages/patches/python-cffi-x87-stack-clean.patch	\
   %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
   %D%/packages/patches/python-configobj-setuptools.patch	\
   %D%/packages/patches/python-faker-fix-build-32bit.patch	\
diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm
index 52654ddf3f..b0098389c0 100644
--- a/gnu/packages/libffi.scm
+++ b/gnu/packages/libffi.scm
@@ -76,14 +76,13 @@ conversions for values passed between the two languages.")
 (define-public python-cffi
   (package
     (name "python-cffi")
-    (version "1.11.5")
+    (version "1.13.2")
     (source
      (origin
       (method url-fetch)
       (uri (pypi-uri "cffi" version))
       (sha256
-       (base32 "1x3lrj928dcxx1k8k9gf3s4s3jwvzv8mc3kkyg1g7c3a1sc1f3z9"))
-      (patches (search-patches "python-cffi-x87-stack-clean.patch"))))
+       (base32 "0iikq5rn9a405n94c7s2j6kq3jv5qs9q4xyik8657b2py27ix6jr"))))
     (build-system python-build-system)
     (inputs
      `(("libffi" ,libffi)))
@@ -116,7 +115,7 @@ conversions for values passed between the two languages.")
                                "compiler_so='gcc',linker_exe='gcc',"
                                "linker_so='gcc -shared')")))
              (substitute* "testing/cffi0/test_ownlib.py"
-               (("'cc testownlib") "'gcc testownlib"))
+               (("\"cc testownlib") "\"gcc testownlib"))
              (invoke "py.test" "-v" "c/" "testing/")
              #t))
          (add-before 'check 'patch-paths-of-dynamically-loaded-libraries
@@ -142,14 +141,7 @@ conversions for values passed between the two languages.")
                (substitute* "c/test_c.py"
                  (("find_and_load_library\\(['\"]{1}c['\"]{1}")
                   (format #f "find_and_load_library('~a'" libc)))
-               #t)))
-         (add-before 'check 'disable-failing-test
-           ;; This is assumed to be a libffi issue:
-           ;; https://bitbucket.org/cffi/cffi/issues/312/tests-failed-with-armv8
-           (lambda _
-             (substitute* "testing/cffi0/test_ownlib.py"
-               (("ret.left") "ownlib.left"))
-             #t)))))
+               #t))))))
     (home-page "https://cffi.readthedocs.io/")
     (synopsis "Foreign function interface for Python")
     (description "Foreign Function Interface for Python calling C code.")
diff --git a/gnu/packages/patches/python-cffi-x87-stack-clean.patch b/gnu/packages/patches/python-cffi-x87-stack-clean.patch
deleted file mode 100644
index 50243505ee..0000000000
--- a/gnu/packages/patches/python-cffi-x87-stack-clean.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Fix test that fails on i686:
-
-https://bitbucket.org/cffi/cffi/issues/382
-
-This is a squashed version of these commits:
-https://bitbucket.org/cffi/cffi/commits/ef09637b2314
-https://bitbucket.org/cffi/cffi/commits/7a76a3815340
-
-diff -r 99940f1f5402 testing/cffi0/test_function.py
---- a/testing/cffi0/test_function.py	Tue Feb 27 21:18:33 2018 +0100
-+++ b/testing/cffi0/test_function.py	Sun Nov 11 16:26:23 2018 +0100
-@@ -45,14 +45,14 @@
-         assert x != math.sin(1.23)    # rounding effects
-         assert abs(x - math.sin(1.23)) < 1E-6
- 
--    def test_sin_no_return_value(self):
-+    def test_lround_no_return_value(self):
-         # check that 'void'-returning functions work too
-         ffi = FFI(backend=self.Backend())
-         ffi.cdef("""
--            void sin(double x);
-+            void lround(double x);
-         """)
-         m = ffi.dlopen(lib_m)
--        x = m.sin(1.23)
-+        x = m.lround(1.23)
-         assert x is None
- 
-     def test_dlopen_filename(self):