From a13f45c1505fb4cf02dcbd3a80df90cc3edbb9ca Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Mon, 7 Sep 2020 14:57:57 +0200 Subject: build-system: asdf: Switch from bundles to regular compilation. * gnu/packages/lisp.scm (sbcl, ecl)[native-search-paths]: Add 'XDG_CONFIG_DIRS'. * guix/build-system/asdf.scm (asdf-build): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. * guix/build/asdf-build-system.scm (%object-prefix, %lisp-source-install-prefix): Update variables. (install): Update variable. (main-system-name): New variable. (copy-source): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. (configure): New variable. (build, check): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. (create-asd-file, symlink-asd-files): Remove variables. (create-asdf-configuration): New variable. (cleanup-files): Update variable. (%standard-phases): Remove 'create-asd-file' and 'symlink-asd-files' phases. Add 'configure' and 'create-asdf-configuration' phases. * guix/build/lisp-utils.scm (%bundle-install-prefix, normalize-dependency, inputs->asd-file-map, asdf-load-all, compile-system): Remove variables. (compile-systems): New variable. (system-dependencies, compiled-system, generate-system-definition): Remove variable. (test-system): Replace 'asd-file' parameter by 'asd-files'. (generate-executable-for-system): Update variable. (generate-dependency-links, make-asd-file, bundle-asd-file): Remove variables. (make-asdf-configuration): New variable. (build-program, build-image): Set 'XDG_CONFIG_DIRS'. (generate-executable): Update variable. --- gnu/packages/lisp.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'gnu/packages/lisp.scm') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index df901aa34f..d2730f3bda 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -298,7 +298,10 @@ interface to the Tk widget system.") (native-search-paths (list (search-path-specification (variable "XDG_DATA_DIRS") - (files '("share"))))) + (files '("share"))) + (search-path-specification + (variable "XDG_CONFIG_DIRS") + (files '("etc"))))) (home-page "http://ecls.sourceforge.net/") (synopsis "Embeddable Common Lisp") (description "ECL is an implementation of the Common Lisp language as @@ -546,7 +549,10 @@ an interpreter, a compiler, a debugger, and much more.") (native-search-paths (list (search-path-specification (variable "XDG_DATA_DIRS") - (files '("share"))))) + (files '("share"))) + (search-path-specification + (variable "XDG_CONFIG_DIRS") + (files '("etc"))))) (home-page "http://www.sbcl.org/") (synopsis "Common Lisp implementation") (description "Steel Bank Common Lisp (SBCL) is a high performance Common -- cgit v1.2.3 From 4136736b52f757ef8ee9e40cd138c7cf7f619bba Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Sat, 12 Sep 2020 00:02:06 +0200 Subject: 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'. --- gnu/packages/lisp.scm | 48 ++++++++++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 22 deletions(-) (limited to 'gnu/packages/lisp.scm') 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) -- cgit v1.2.3 From 7b554d690fc12b5011fe168cafaa2447f7d0b304 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Tue, 13 Oct 2020 13:41:37 +0200 Subject: gnu: txr: Update to 244. * gnu/packages/lisp.scm (txr): Update to 244. [native-inputs]: Remove bison and flex. --- gnu/packages/lisp.scm | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'gnu/packages/lisp.scm') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index df901aa34f..aa6d7c12fd 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -51,10 +51,8 @@ #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module (gnu packages bdw-gc) - #:use-module (gnu packages bison) #:use-module (gnu packages compression) #:use-module (gnu packages ed) - #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) @@ -801,7 +799,7 @@ enough to play the original mainframe Zork all the way through.") (define-public txr (package (name "txr") - (version "243") + (version "244") (source (origin (method git-fetch) @@ -810,7 +808,7 @@ enough to play the original mainframe Zork all the way through.") (commit (string-append "txr-" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "08rrl7ac6jnx0zfchzbpvs3qidrbjrl9c7p8s1wms90lp10i18ak")))) + (base32 "1bzhb1pms6gjzphbsimhwdyq46ik1m7sgldigg5l1q7bppg9r3i0")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -832,9 +830,6 @@ enough to play the original mainframe Zork all the way through.") "tests/017/realpath.expected") (("/usr/bin") "/")) #t))))) - (native-inputs - `(("bison" ,bison) - ("flex" ,flex))) (inputs `(("libffi" ,libffi))) (synopsis "General-purpose, multi-paradigm programming language") -- cgit v1.2.3