summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2018-11-11 16:59:53 +0100
committerMarius Bakke <mbakke@fastmail.com>2018-11-11 17:18:05 +0100
commit8c5749f1b5255e37a6ef7b43e48fe0bbc57ce209 (patch)
tree2d2b639172381762662ecd8518567246255c4975 /gnu/packages
parent2bdca673517c566d55f5f3a540160b22fc51039e (diff)
downloadguix-8c5749f1b5255e37a6ef7b43e48fe0bbc57ce209.tar.gz
gnu: python-cffi: Fix test failure on i686.
* gnu/packages/patches/python-cffi-x87-stack-clean.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/libffi.scm (python-cffi)[source](patches): Add it.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/libffi.scm3
-rw-r--r--gnu/packages/patches/python-cffi-x87-stack-clean.patch29
2 files changed, 31 insertions, 1 deletions
diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm
index d1b910bd07..01a5ea2049 100644
--- a/gnu/packages/libffi.scm
+++ b/gnu/packages/libffi.scm
@@ -88,7 +88,8 @@ conversions for values passed between the two languages.")
       (method url-fetch)
       (uri (pypi-uri "cffi" version))
       (sha256
-       (base32 "1x3lrj928dcxx1k8k9gf3s4s3jwvzv8mc3kkyg1g7c3a1sc1f3z9"))))
+       (base32 "1x3lrj928dcxx1k8k9gf3s4s3jwvzv8mc3kkyg1g7c3a1sc1f3z9"))
+      (patches (search-patches "python-cffi-x87-stack-clean.patch"))))
     (build-system python-build-system)
     (outputs '("out" "doc"))
     (inputs
diff --git a/gnu/packages/patches/python-cffi-x87-stack-clean.patch b/gnu/packages/patches/python-cffi-x87-stack-clean.patch
new file mode 100644
index 0000000000..50243505ee
--- /dev/null
+++ b/gnu/packages/patches/python-cffi-x87-stack-clean.patch
@@ -0,0 +1,29 @@
+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):