summary refs log tree commit diff
path: root/gnu/packages/lisp.scm
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2020-09-12 00:02:06 +0200
committerGuillaume Le Vaillant <glv@posteo.net>2020-09-12 11:18:57 +0200
commit4136736b52f757ef8ee9e40cd138c7cf7f619bba (patch)
tree7bb4bca078562d09b53f861e3b783461cee1d0db /gnu/packages/lisp.scm
parent2ff8b5bafc80b559d4da94562371f69fe1d364aa (diff)
downloadguix-4136736b52f757ef8ee9e40cd138c7cf7f619bba.tar.gz
gnu: cl-asdf: Update to 3.3.4.
* gnu/packages/lisp.scm (cl-asdf): Update to 3.3.4.
  [arguments]: Add small patch for default ASDF configuration.
  (asdf-substitutions): Remove variable.
  (sbcl, ecl)[arguments]: Remove call to 'asdf-substitutions'.
Diffstat (limited to 'gnu/packages/lisp.scm')
-rw-r--r--gnu/packages/lisp.scm48
1 files changed, 26 insertions, 22 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index d2730f3bda..c2a3fa49b7 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -78,21 +78,10 @@
   #:use-module (gnu packages xorg)
   #:use-module (ice-9 match))
 
-(define (asdf-substitutions lisp)
-  ;; Prepend XDG_DATA_DIRS/LISP-bundle-systems to ASDF's
-  ;; 'default-system-source-registry'.
-  `((("\\(,dir \"systems/\"\\)\\)")
-     (format #f
-             "(,dir \"~a-bundle-systems\")))
-
-      ,@(loop :for dir :in (xdg-data-dirs \"common-lisp/\")
-              :collect `(:directory (,dir \"systems\"))"
-             ,lisp))))
-
 (define-public cl-asdf
   (package
     (name "cl-asdf")
-    (version "3.3.3")
+    (version "3.3.4")
     (source
      (origin
        (method url-fetch)
@@ -100,7 +89,7 @@
         (string-append "https://common-lisp.net/project/asdf/archives/asdf-"
                        version ".lisp"))
        (sha256
-        (base32 "18lr6kxvzhr79c9rx3sdricz30aby866fj0m24w27zxsqlyvn3rd"))))
+        (base32 "1hpx30f6yrak15nw992k7x3pn75ahvjs04n4f134k68mhgs62km2"))))
     (build-system trivial-build-system)
     (arguments
      `(#:modules ((guix build utils)
@@ -112,9 +101,29 @@
          (let* ((out (string-append (assoc-ref %outputs "out")))
                 (asdf-install (string-append out %source-install-prefix
                                              "/source/asdf/"))
-                (asdf (string-append (assoc-ref %build-inputs "source"))))
+                (src-asdf (string-append (assoc-ref %build-inputs "source")))
+                (dst-asdf (string-append asdf-install "asdf.lisp")))
            (mkdir-p asdf-install)
-           (copy-file asdf (string-append asdf-install "asdf.lisp"))))))
+           (copy-file src-asdf dst-asdf)
+           ;; Patch ASDF to make it read the configuration files in all
+           ;; the direcories listed in '$XDG_CONFIG_DIRS' instead of just
+           ;; the first.
+           (substitute* dst-asdf
+             (("\\(xdg-config-pathname \\*source-registry-directory\\* direction\\)")
+              "`(:source-registry
+                 ,@(loop
+                      for dir in (xdg-config-dirs
+                                  \"common-lisp/source-registry.conf.d/\")
+                      collect `(:include ,dir))
+                 :inherit-configuration)")
+             (("\\(xdg-config-pathname \\*output-translations-directory\\* direction\\)")
+              "`(:output-translations
+                 ,@(loop
+                      for dir in (xdg-config-dirs
+                                  \"common-lisp/asdf-output-translations.conf.d/\")
+                      collect `(:include ,dir))
+                 :inherit-configuration)")))
+         #t)))
     (home-page "https://common-lisp.net/project/asdf/")
     (synopsis "Another System Definition Facility")
     (description
@@ -261,10 +270,7 @@ interface to the Tk widget system.")
                                 "/share/common-lisp/source/asdf/asdf.lisp"))
                     (out (string-append (assoc-ref outputs "out")))
                     (contrib-asdf "contrib/asdf/asdf.lisp"))
-               (copy-file guix-asdf contrib-asdf)
-               ;; Add ecl-bundle-systems to 'default-system-source-registry'.
-               (substitute* contrib-asdf
-                 ,@(asdf-substitutions name)))
+               (copy-file guix-asdf contrib-asdf))
              #t))
          (add-after 'install 'wrap
            (lambda* (#:key inputs outputs #:allow-other-keys)
@@ -440,9 +446,7 @@ an interpreter, a compiler, a debugger, and much more.")
                                 "/share/common-lisp/source/asdf/asdf.lisp"))
                     (out (string-append (assoc-ref outputs "out")))
                     (contrib-asdf "contrib/asdf/asdf.lisp"))
-               (copy-file guix-asdf contrib-asdf)
-               (substitute* contrib-asdf
-                 ,@(asdf-substitutions name)))
+               (copy-file guix-asdf contrib-asdf))
              #t))
          (add-before 'build 'patch-unix-tool-paths
            (lambda* (#:key outputs inputs #:allow-other-keys)