Subject: [PATCH] clisp compilation error.

From: Massimo Zaniboni <[email-masked]>
Date: Fri, 14 Feb 2025 23:40:43 +0100

If I insert a dummy function in `guix/build/lisp-utils.scm` the clisp package defined in `gnu/packages/lisp.scm` is rebuild, despite it does not depend (apparently) to the modified code. The rebuild does not pass the check phase.

So I have these doubts:

- why the `clisp` packages is rebuilt;
- why there is an (hidden) error not signaled in the original `clisp` package (i.e. I can download it).

If I execute

```
./pre-inst-env guix build -K clisp
```

I obtain these errors during the package `check` phase:

```
finished  57 files:               6 errors out of  11,960 tests
  1                   alltest:    0 errors out of     636 tests
  2                     array:    0 errors out of     290 tests
  3                  backquot:    0 errors out of      89 tests
  4                    bin-io:    0 errors out of      15 tests
  5                characters:    0 errors out of     221 tests
  6                      clos:    0 errors out of     496 tests
  7                   defhash:    0 errors out of       6 tests
  8                  encoding:    0 errors out of      36 tests
  9                    eval20:    0 errors out of      50 tests
 10                 ext-clisp:    1 error out of      118 tests
 11                       ffi:    0 errors out of     263 tests
 12                    floeps:    0 errors out of      20 tests
 13                    format:    0 errors out of     307 tests
 14                 genstream:    0 errors out of      14 tests
 15                      hash:    0 errors out of      48 tests
 16                  hashlong:    0 errors out of      14 tests
 17                 hashtable:    0 errors out of      10 tests
 18                    iofkts:    0 errors out of     228 tests
 19                    lambda:    0 errors out of      90 tests
 20                  lists151:    0 errors out of     201 tests
 21                  lists152:    0 errors out of     255 tests
 22                  lists153:    0 errors out of       1 test
 23                  lists154:    0 errors out of      46 tests
 24                  lists155:    0 errors out of      25 tests
 25                  lists156:    0 errors out of      20 tests
 26                  list-set:    0 errors out of      10 tests
 27                      loop:    0 errors out of     151 tests
 28                    macro8:    0 errors out of     253 tests
 29                       map:    0 errors out of      64 tests
 30                       mop:    0 errors out of     225 tests
 31                    number:    0 errors out of   3,655 tests
 32                   number2:    0 errors out of     331 tests
 33                    pack11:    0 errors out of     211 tests
 34                      path:    0 errors out of     179 tests
 35                 readtable:    0 errors out of      27 tests
 36                      setf:    0 errors out of     197 tests
 37                    socket:    0 errors out of      92 tests
 38                   steele7:    0 errors out of      86 tests
 39                   streams:    2 errors out of     388 tests
 40               streamslong:    1 error out of       25 tests
 41                   strings:    0 errors out of     409 tests
 42                  symbol10:    0 errors out of     152 tests
 43                   symbols:    0 errors out of       6 tests
 44                      time:    0 errors out of      22 tests
 45                     tread:    0 errors out of     395 tests
 46                      type:    0 errors out of     289 tests
 47                unportable:    0 errors out of      31 tests
 48                        mt:    2 errors out of     102 tests
 49                      weak:    0 errors out of     120 tests
 50                  weakhash:    0 errors out of      26 tests
 51                 weakhash2:    0 errors out of      47 tests
 52                 bind-eval:    0 errors out of      72 tests
 53              bind-compile:    0 errors out of      72 tests
 54                conditions:    0 errors out of      98 tests
 55                  restarts:    0 errors out of      71 tests
 56                  excepsit:    0 errors out of     395 tests
 57                   weakptr:    0 errors out of     260 tests
Real time: 53.327896 sec.
Run time: 37.756466 sec.
Space: 1421370168 Bytes
GC: 1246, GC time: 11.758442 sec.
6
Bye.
make[2]: Leaving directory '/tmp/guix-build-clisp-2.49-92.drv-0/source/src/tests'
make[1]: Leaving directory '/tmp/guix-build-clisp-2.49-92.drv-0/source/src'
make: *** [Makefile:28: check] Error 2
```

In the buid log there are the details about the failed tests.

Change-Id: Id2639c9a4f64e9547cd845ef5f6a87a7207a362a
---
 guix/build/lisp-utils.scm | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/guix/build/lisp-utils.scm b/guix/build/lisp-utils.scm
index 646d4a33..14084777 100644
--- a/guix/build/lisp-utils.scm
+++ b/guix/build/lisp-utils.scm
@@ -43,7 +43,11 @@ (define-module (guix build lisp-utils)
             make-asdf-configuration
             valid-char-set
             normalize-string
-            library-output))
+            library-output
+            dummy?))
+
+(define (dummy? x)
+  (odd? x))
 
 ;;; Commentary:
 ;;;

base-commit: 3a916935311568b742d734cf76be8a45737f9382
-- 
2.48.1