summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-04-08 13:53:35 +0200
committerMarius Bakke <mbakke@fastmail.com>2020-04-08 13:53:35 +0200
commit3a32940bfb2d7f4ce8f34cfeb1a3432d3d4ae241 (patch)
tree48ab91a55026f04c0c1cd3416c86d4db96ac83b1
parentbcdd279a5fe561c0908f46d3ef4af5629bf60d47 (diff)
downloadguix-3a32940bfb2d7f4ce8f34cfeb1a3432d3d4ae241.tar.gz
gnu: ecl: Fix build with LibFFI >= 3.3.
* gnu/packages/lisp.scm (ecl)[source](modules, snippet): New fields.
-rw-r--r--gnu/packages/lisp.scm12
1 files changed, 11 insertions, 1 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 709ea88ae0..cc40f58e6e 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
 ;;; Copyright © 2019 Jesse Gildersleve <jessejohngildersleve@protonmail.com>
 ;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -230,7 +231,16 @@ interface to the Tk widget system.")
              "https://common-lisp.net/project/ecl/static/files/release/"
              name "-" version ".tgz"))
        (sha256
-        (base32 "0m0j24w5d5a9dwwqyrg0d35c0nys16ijb4r0nyk87yp82v38b9bn"))))
+        (base32 "0m0j24w5d5a9dwwqyrg0d35c0nys16ijb4r0nyk87yp82v38b9bn"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; Adjust for ABI change in LibFFI 3.3.  See:
+           ;; https://gitlab.com/embeddable-common-lisp/ecl/-/issues/302
+           ;; https://gitlab.com/embeddable-common-lisp/ecl/-/merge_requests/171
+           (substitute* "src/c/ffi.d"
+             (("FFI_SYSV") "FFI_UNIX64"))
+           #t))))
     (build-system gnu-build-system)
     ;; src/configure uses 'which' to confirm the existence of 'gzip'.
     (native-inputs `(("cl-asdf" ,cl-asdf)