[bug#75365] : Add info manual to sbcl-alexandria

Message ID 875xmdcevr.fsf@gmail.com
State New
Headers
Series [bug#75365] : Add info manual to sbcl-alexandria |

Commit Message

André A. Gomes Jan. 17, 2025, 9:24 p.m. UTC
  Guillaume Le Vaillant <glv@posteo.net> writes:

> Hi.
> The new 'build-doc' phase doesn't work for ecl-alexandria.
> Could you take a look at it, or disable building the doc for
> ecl-alexandria if it can't be fixed easily?

Thanks for taking a look and noticing the issue.

I've disabled the doc phrase for ecl-alexandria.  The issue lies
somewhere at package-with-build-system (asdf.scm) but I would need to
take a deeper look.  Basically, it fails to assume asdf-build-system/ecl
in case a new phase is added to the sbcl package.  I still need to learn
how to use geiser.  For some reason, it always seemed harder than
Slime/Sly.

Patch attached, thanks.
  

Patch

From e38323e88ed370a1e077bc193f7f3986c1e3d794 Mon Sep 17 00:00:00 2001
From: "Andre A. Gomes" <andremegafone@gmail.com>
Date: Fri, 17 Jan 2025 23:17:50 +0200
Subject: [PATCH] gnu: sbcl-alexandria: Add info manual.

* gnu/packages/lisp-xyz.scm (sbcl-alexandria): Add info manual.
---
 gnu/packages/lisp-xyz.scm | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index ab6ec76a5f..7f8c5df99f 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -23,7 +23,7 @@ 
 ;;; Copyright © 2020-2024 Sharlatan Hellseher <sharlatanus@gmail.com>
 ;;; Copyright © 2021, 2022 Aurora <rind38@disroot.org>
 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
-;;; Copyright © 2021-2024 André A. Gomes <andremegafone@gmail.com>
+;;; Copyright © 2021-2025 André A. Gomes <andremegafone@gmail.com>
 ;;; Copyright © 2021, 2022, 2023 Cage <cage-dev@twistfold.it>
 ;;; Copyright © 2021 Cameron Chaparro <cameron@cameronchaparro.com>
 ;;; Copyright © 2021, 2024 Charles Jackson <charles.b.jackson@protonmail.com>
@@ -126,6 +126,7 @@  (define-module (gnu packages lisp-xyz)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages statistics)
   #:use-module (gnu packages tcl)
+  #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages video)
@@ -933,8 +934,17 @@  (define-public sbcl-alexandria
          (sha256
           (base32 "0pdj779j3nwzn8f1661vf00rrjrbks1xgiq0rvwjw6qyxsfqfnl9"))))
       (build-system asdf-build-system/sbcl)
+      (arguments
+       (list #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'build 'build-doc
+                   (lambda _
+                     (with-directory-excursion "doc"
+                       (invoke "make" "info")
+                       (install-file "alexandria.info"
+                                     (string-append #$output "/share/info"))))))))
       (native-inputs
-       (list sbcl-rt))
+       (list sbcl-rt texinfo))
       (synopsis "Collection of portable utilities for Common Lisp")
       (description
        "Alexandria is a collection of portable utilities.  It does not contain
@@ -947,7 +957,15 @@  (define-public cl-alexandria
   (sbcl-package->cl-source-package sbcl-alexandria))
 
 (define-public ecl-alexandria
-  (sbcl-package->ecl-package sbcl-alexandria))
+  (let ((pkg (sbcl-package->ecl-package sbcl-alexandria)))
+    (package
+      (inherit pkg)
+      (outputs '("out"))
+      (arguments
+       (substitute-keyword-arguments (package-arguments pkg)
+         ((#:phases phases)
+          `(modify-phases ,phases
+             (delete 'build-doc))))))))
 
 (define-public sbcl-alexandria-plus
   (let ((commit "adafb09838a84895bedb119f8253b89b6a04a2c5")
-- 
2.47.1