GNU bug report logs - #36504
asdf build system: Add support for component-less .asd

Previous Next

Package: guix;

Reported by: Pierre Neidhardt <mail <at> ambrevar.xyz>

Date: Thu, 4 Jul 2019 17:34:02 UTC

Severity: normal

Done: Guillaume Le Vaillant <glv <at> posteo.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Pierre Neidhardt <mail <at> ambrevar.xyz>
Subject: bug#36504: closed (Re: [bug#36504] asdf build system: Add support
 for component-less .asd)
Date: Sun, 29 Nov 2020 15:11:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#36504: asdf build system: Add support for component-less .asd

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 36504 <at> debbugs.gnu.org.

-- 
36504: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=36504
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Guillaume Le Vaillant <glv <at> posteo.net>
To: Pierre Neidhardt <mail <at> ambrevar.xyz>        
Cc: 36504-done <at> debbugs.gnu.org
Subject: Re: [bug#36504] asdf build system: Add support for component-less .asd
Date: Sun, 29 Nov 2020 16:10:47 +0100
[Message part 3 (text/plain, inline)]
This is now fixed in the master branch (since
4dadb4977908028bb0651d43ed4813cc988db92d).
[signature.asc (application/pgp-signature, inline)]
[Message part 5 (message/rfc822, inline)]
From: Pierre Neidhardt <mail <at> ambrevar.xyz>
To: bug-guix <at> gnu.org
Cc: Katherine Cox-Buday <cox.katherine.e <at> gmail.com>,
 Andy Patterson <ajpatter <at> uwaterloo.ca>
Subject: asdf build system: Add support for component-less .asd
Date: Thu, 04 Jul 2019 19:33:23 +0200
[Message part 6 (text/plain, inline)]
I've just packaged sbcl-trivia (hooray!), which implied packaging the
component-less trivia.trivial subsystem.

If you look at the package definition, I had to do this in order to
compile successfully:

--8<---------------cut here---------------start------------->8---
(replace 'create-asd-file
           (lambda* (#:key outputs inputs #:allow-other-keys)
             (let* ((out (assoc-ref outputs "out"))
                    (lib (string-append out "/lib/sbcl"))
                    (level2 (assoc-ref inputs "trivia.level2")))
               (mkdir-p lib)
               (install-file "trivia.trivial.asd" lib)
               ;; XXX: This .asd does not have any component and the build
               ;; system fails to work in this case.  We should update the
               ;; build system to handle component-less .asd.
               ;; TODO: How do we append to file in Guile?  It seems that
               ;; (open-file ... "a") gets a "Permission denied".
               (substitute* (string-append lib "/trivia.trivial.asd")
                 (("\"\\)")
                  (string-append "\")

(progn (asdf/source-registry:ensure-source-registry)
       (setf (gethash
               \"trivia.level2\"
               asdf/source-registry:*source-registry*)
             #p\""
                                 level2
                                 "/share/common-lisp/sbcl-bundle-systems/trivia.level2.asd\"))"))))))
--8<---------------cut here---------------end--------------->8---

Basically our build system fails when the .asd has no component, which
is done sometime in Common Lisp packages where a system is only used as an
indirection of a union of other systems.

I suggest we update `make-asd-file' file in `lisp-utils.scm' to take
that into account.

Thoughts?

-- 
Pierre Neidhardt
https://ambrevar.xyz/
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 4 years and 174 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.