summary refs log tree commit diff
path: root/gnu/packages/guile-xyz.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-06-07 18:13:55 +0200
committerLudovic Courtès <ludo@gnu.org>2022-06-07 18:29:12 +0200
commit71388e1fda056ed607fa1d994ddcce09fa07f881 (patch)
treea428f152d60e7aeff3bd85cb767a9ac40df8b3e9 /gnu/packages/guile-xyz.scm
parent413b85ad4f033354038ba3a65948de029a5e638d (diff)
downloadguix-71388e1fda056ed607fa1d994ddcce09fa07f881.tar.gz
gnu: guile-fibers: Update to 1.1.1.
* gnu/packages/guile-xyz.scm (guile-fibers-1.1): Update to 1.1.1.
Diffstat (limited to 'gnu/packages/guile-xyz.scm')
-rw-r--r--gnu/packages/guile-xyz.scm103
1 files changed, 33 insertions, 70 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 577f28cf2f..c6f73a38e9 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -607,73 +607,36 @@ Unix-style DSV format and RFC 4180 format.")
     (propagated-inputs `(("guile-lib" ,guile2.2-lib)))))
 
 (define-public guile-fibers-1.1
-  ;; Pick one commit above 1.1.0, which fixes a bug that's critical for the
-  ;; Shepherd: <https://github.com/wingo/fibers/pull/57>.
-  (let ((commit "c25dcb9cc4b5b977474ffe555b40ce2f1d0d1edc")
-        (revision "0"))
-   (package
-     (name "guile-fibers")
-     (version (git-version "1.1.0" revision commit))
-     (source (origin
-               (method git-fetch)
-               (uri (git-reference
-                     (url "https://github.com/wingo/fibers")
-                     (commit commit)))
-               (file-name (git-file-name name version))
-               (sha256
-                (base32
-                 "1jwr0y5x8mv8fm4df2vc3ll38fwwbkrm2iwfsfxa8l783a1a6143"))
-               (patches
-                (search-patches "guile-fibers-wait-for-io-readiness.patch"))))
-     (build-system gnu-build-system)
-     (arguments
-      '(#:phases (modify-phases %standard-phases
-                   (add-after 'unpack 'support-cross-compilation
-                     (lambda* (#:key target #:allow-other-keys)
-                       ;; Support cross-compilation.  These issues are fixed in
-                       ;; Fibers commit c4756b9c336374546a41ac90a4431fcc8f7e98ee
-                       ;; and this phase can be removed for 1.1.1.
-                       (when target
-                         (substitute* "build-aux/guile.am"
-                           (("\\$\\(AM_V_GEN\\)" all)
-                            (string-append all " FIBERS_CROSS_COMPILING=yes "))
-                           (("compile")
-                            (string-append "compile --target=" target
-                                           " -L $(abs_top_srcdir)")))
-                         (substitute* "fibers/epoll.scm"
-                           (("\\(dynamic-call")
-                            "(unless (getenv \"FIBERS_CROSS_COMPILING\") (dynamic-call")
-                           (("\\(dynamic-link.*" all)
-                            (string-append all ")\n"))
-                           (("#,(%sizeof|%offsetof)" _ prefix)
-                            prefix)))))
-                   (add-after 'install 'mode-guile-objects
-                     (lambda* (#:key outputs #:allow-other-keys)
-                       ;; .go files are installed to "lib/guile/X.Y/cache".
-                       ;; This phase moves them to "…/site-ccache".
-                       (let* ((out (assoc-ref outputs "out"))
-                              (lib (string-append out "/lib/guile"))
-                              (old (car (find-files lib "^ccache$"
-                                                    #:directories? #t)))
-                              (new (string-append (dirname old)
-                                                  "/site-ccache")))
-                         (rename-file old new)
-                         #t))))))
-     (native-inputs
-      (list texinfo pkg-config autoconf automake libtool
-            guile-3.0           ;for 'guild compile
-            ;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'
-            gettext-minimal))
-     (inputs
-      (list guile-3.0))                           ;for libguile-3.0.so
-     (supported-systems
-      ;; This version requires 'epoll' and is thus limited to Linux-based
-      ;; systems, but this may change soon:
-      ;; <https://github.com/wingo/fibers/pull/53>.
-      (filter (cut string-suffix? "-linux" <>) %supported-systems))
-     (synopsis "Lightweight concurrency facility for Guile")
-     (description
-      "Fibers is a Guile library that implements a a lightweight concurrency
+  (package
+    (name "guile-fibers")
+    (version "1.1.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/wingo/fibers")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0ll63d7202clapg1k4bilbnlmfa4qvpjnsd7chbkka4kxf5klilc"))
+              (patches
+               (search-patches "guile-fibers-wait-for-io-readiness.patch"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     (list texinfo pkg-config autoconf automake libtool
+           guile-3.0            ;for 'guild compile
+           ;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'
+           gettext-minimal))
+    (inputs
+     (list guile-3.0))                            ;for libguile-3.0.so
+    (supported-systems
+     ;; This version requires 'epoll' and is thus limited to Linux-based
+     ;; systems, but this may change soon:
+     ;; <https://github.com/wingo/fibers/pull/53>.
+     (filter (cut string-suffix? "-linux" <>) %supported-systems))
+    (synopsis "Lightweight concurrency facility for Guile")
+    (description
+     "Fibers is a Guile library that implements a a lightweight concurrency
 facility, inspired by systems like Concurrent ML, Go, and Erlang.  A fiber is
 like a \"goroutine\" from the Go language: a lightweight thread-like
 abstraction.  Systems built with Fibers can scale up to millions of concurrent
@@ -683,9 +646,9 @@ communication between fibers.
 
 Note that Fibers makes use of some Guile 2.1/2.2-specific features and
 is not available for Guile 2.0.")
-     (home-page "https://github.com/wingo/fibers")
-     (properties '((upstream-name . "fibers")))
-     (license license:lgpl3+))))
+    (home-page "https://github.com/wingo/fibers")
+    (properties '((upstream-name . "fibers")))
+    (license license:lgpl3+)))
 
 (define-public guile-fibers
   (package