diff options
| author | jgart <jgart@dismail.de> | 2025-06-27 11:03:13 -0400 |
|---|---|---|
| committer | jgart <jgart@dismail.de> | 2025-06-27 11:18:36 -0400 |
| commit | 4f5cf07f1837d0665aa8239bb25e8f4677ff0236 (patch) | |
| tree | 3f826a3d5497d1bb281a4540cb503749b3194501 | |
| parent | d563bf6178fd71f6d768c4bf3be7ccc18c188c04 (diff) | |
guix: asdf: Add asdf-build-system/abcl.lisp-team-asdf-build-system/abcl
* guix/build-system/asdf.scm (asdf-build-system/abcl): New variable.
Change-Id: Ifdf2a395f78f9bbb2aabe60b8cd584729666a526
| -rw-r--r-- | guix/build-system/asdf.scm | 30 | ||||
| -rw-r--r-- | guix/build/asdf-build-system.scm | 1 | ||||
| -rw-r--r-- | guix/build/lisp-utils.scm | 3 |
3 files changed, 32 insertions, 2 deletions
diff --git a/guix/build-system/asdf.scm b/guix/build-system/asdf.scm index 5ce63d106fd..6c34b829529 100644 --- a/guix/build-system/asdf.scm +++ b/guix/build-system/asdf.scm | |||
| @@ -44,7 +44,8 @@ | |||
| 44 | asdf-build-system/source | 44 | asdf-build-system/source |
| 45 | sbcl-package->cl-source-package | 45 | sbcl-package->cl-source-package |
| 46 | sbcl-package->ecl-package | 46 | sbcl-package->ecl-package |
| 47 | sbcl-package->clasp-package)) | 47 | sbcl-package->clasp-package |
| 48 | sbcl-package->abcl-package)) | ||
| 48 | 49 | ||
| 49 | ;; Commentary: | 50 | ;; Commentary: |
| 50 | ;; | 51 | ;; |
| @@ -70,7 +71,11 @@ | |||
| 70 | (define (default-lisp implementation) | 71 | (define (default-lisp implementation) |
| 71 | "Return the default package for the lisp IMPLEMENTATION." | 72 | "Return the default package for the lisp IMPLEMENTATION." |
| 72 | ;; Lazily resolve the binding to avoid a circular dependency. | 73 | ;; Lazily resolve the binding to avoid a circular dependency. |
| 73 | (let ((lisp-module (resolve-interface '(gnu packages lisp)))) | 74 | (let ((lisp-module |
| 75 | (resolve-interface | ||
| 76 | (if (eq? implementation 'abcl) | ||
| 77 | '(gnu packages java) | ||
| 78 | '(gnu packages lisp))))) | ||
| 74 | (module-ref lisp-module implementation))) | 79 | (module-ref lisp-module implementation))) |
| 75 | 80 | ||
| 76 | (define* (lower/source name | 81 | (define* (lower/source name |
| @@ -254,6 +259,7 @@ set up using CL source package conventions." | |||
| 254 | ("sbcl" 'sbcl) | 259 | ("sbcl" 'sbcl) |
| 255 | ("ecl" 'ecl) | 260 | ("ecl" 'ecl) |
| 256 | ("clasp" 'clasp-cl) | 261 | ("clasp" 'clasp-cl) |
| 262 | ("abcl" 'abcl) | ||
| 257 | (_ error "The LISP provided is not supported at this time.")))) | 263 | (_ error "The LISP provided is not supported at this time.")))) |
| 258 | #:allow-other-keys | 264 | #:allow-other-keys |
| 259 | #:rest arguments) | 265 | #:rest arguments) |
| @@ -353,6 +359,12 @@ set up using CL source package conventions." | |||
| 353 | (description "The build system for ASDF binary packages using Clasp") | 359 | (description "The build system for ASDF binary packages using Clasp") |
| 354 | (lower (lower "clasp")))) | 360 | (lower (lower "clasp")))) |
| 355 | 361 | ||
| 362 | (define asdf-build-system/abcl | ||
| 363 | (build-system | ||
| 364 | (name 'asdf/abcl) | ||
| 365 | (description "The build system for ASDF binary packages using ABCL") | ||
| 366 | (lower (lower "abcl")))) | ||
| 367 | |||
| 356 | (define asdf-build-system/source | 368 | (define asdf-build-system/source |
| 357 | (build-system | 369 | (build-system |
| 358 | (name 'asdf/source) | 370 | (name 'asdf/source) |
| @@ -401,4 +413,18 @@ set up using CL source package conventions." | |||
| 401 | (transformer | 413 | (transformer |
| 402 | (strip-variant-as-necessary property pkg))))) | 414 | (strip-variant-as-necessary property pkg))))) |
| 403 | 415 | ||
| 416 | (define sbcl-package->abcl-package | ||
| 417 | (let* ((property 'abcl-variant) | ||
| 418 | (transformer | ||
| 419 | (package-with-build-system asdf-build-system/sbcl | ||
| 420 | asdf-build-system/abcl | ||
| 421 | "sbcl-" | ||
| 422 | "abcl-" | ||
| 423 | #:variant-property property | ||
| 424 | #:phases-transformer | ||
| 425 | 'identity))) | ||
| 426 | (lambda (pkg) | ||
| 427 | (transformer | ||
| 428 | (strip-variant-as-necessary property pkg))))) | ||
| 429 | |||
| 404 | ;;; asdf.scm ends here | 430 | ;;; asdf.scm ends here |
diff --git a/guix/build/asdf-build-system.scm b/guix/build/asdf-build-system.scm index 92154e7d348..11f39aaaaef 100644 --- a/guix/build/asdf-build-system.scm +++ b/guix/build/asdf-build-system.scm | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca> | 2 | ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca> |
| 3 | ;;; Copyright © 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net> | 3 | ;;; Copyright © 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net> |
| 4 | ;;; Copyright © 2022 Pierre Neidhardt <mail@ambrevar.xyz> | 4 | ;;; Copyright © 2022 Pierre Neidhardt <mail@ambrevar.xyz> |
| 5 | ;;; Copyright © 2025 jgart <jgart@dismail.de> | ||
| 5 | ;;; | 6 | ;;; |
| 6 | ;;; This file is part of GNU Guix. | 7 | ;;; This file is part of GNU Guix. |
| 7 | ;;; | 8 | ;;; |
diff --git a/guix/build/lisp-utils.scm b/guix/build/lisp-utils.scm index 793ee3e1635..0354990b671 100644 --- a/guix/build/lisp-utils.scm +++ b/guix/build/lisp-utils.scm | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca> | 2 | ;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca> |
| 3 | ;;; Copyright © 2020, 2022 Guillaume Le Vaillant <glv@posteo.net> | 3 | ;;; Copyright © 2020, 2022 Guillaume Le Vaillant <glv@posteo.net> |
| 4 | ;;; Copyright © 2022 Pierre Neidhardt <mail@ambrevar.xyz> | 4 | ;;; Copyright © 2022 Pierre Neidhardt <mail@ambrevar.xyz> |
| 5 | ;;; Copyright © 2025 jgart <jgart@dismail.de> | ||
| 5 | ;;; | 6 | ;;; |
| 6 | ;;; This file is part of GNU Guix. | 7 | ;;; This file is part of GNU Guix. |
| 7 | ;;; | 8 | ;;; |
| @@ -108,6 +109,8 @@ with PROGRAM." | |||
| 108 | "--eval" "(quit)")) | 109 | "--eval" "(quit)")) |
| 109 | ("clasp" `(,(%lisp) "--non-interactive" | 110 | ("clasp" `(,(%lisp) "--non-interactive" |
| 110 | ,@(spread-statements program "--eval"))) | 111 | ,@(spread-statements program "--eval"))) |
| 112 | ("abcl" `(,(%lisp) "--batch" | ||
| 113 | ,@(spread-statements program "--eval"))) | ||
| 111 | (_ (error "The LISP provided is not supported at this time.")))) | 114 | (_ (error "The LISP provided is not supported at this time.")))) |
| 112 | 115 | ||
| 113 | (define (compile-systems systems directory operation) | 116 | (define (compile-systems systems directory operation) |
