fix(guix): keep guile-gcrypt check semantics unchanged

This commit is contained in:
vxtls 2026-03-05 22:04:10 -05:00
parent 913ebb3ba8
commit f8122121c7

View file

@ -1,47 +1,25 @@
--- guix-1.5.0/m4/guix.m4
+++ guix-1.5.0/m4/guix.m4
@@ -206,9 +206,17 @@
@@ -206,9 +206,10 @@
AC_CACHE_CHECK([whether Guile-Gcrypt is available and recent enough],
[guix_cv_have_recent_guile_gcrypt],
[GUILE_CHECK([retval],
- [(use-modules (gcrypt hash))
- (equal? (hash-algorithm sha256)
- (lookup-hash-algorithm 'sha256))])
+ [(eval-when (expand load eval)
+ (use-modules (gcrypt hash)
+ (rnrs bytevectors)))
+ (let ((algorithm (lookup-hash-algorithm 'sha256)))
+ (and algorithm
+ (eq? 'sha256 (hash-algorithm-name algorithm))
+ (= 32 (hash-size algorithm))
+ (bytevector=?
+ (sha256 #vu8(97 98 99))
+ #vu8(186 120 22 191 143 1 207 234
+ 65 65 64 222 93 174 34 35
+ 176 3 97 163 150 23 122 156
+ 180 16 255 97 242 0 21 173))))])
+ (use-modules (gcrypt hash)))
(equal? (hash-algorithm sha256)
(lookup-hash-algorithm 'sha256))])
if test "$retval" = 0; then
guix_cv_have_recent_guile_gcrypt="yes"
else
--- guix-1.5.0/configure
+++ guix-1.5.0/configure
@@ -8378,7 +8378,15 @@
@@ -8378,7 +8378,8 @@
- $GUILE -c "(use-modules (gcrypt hash))
- (equal? (hash-algorithm sha256)
- (lookup-hash-algorithm 'sha256))" > /dev/null 2>&1
+ $GUILE -c "(eval-when (expand load eval)
+ (use-modules (gcrypt hash)
+ (rnrs bytevectors)))
+ (let ((algorithm (lookup-hash-algorithm 'sha256)))
+ (and algorithm
+ (eq? 'sha256 (hash-algorithm-name algorithm))
+ (= 32 (hash-size algorithm))
+ (bytevector=?
+ (sha256 #vu8(97 98 99))
+ #vu8(186 120 22 191 143 1 207 234
+ 65 65 64 222 93 174 34 35
+ 176 3 97 163 150 23 122 156
+ 180 16 255 97 242 0 21 173))))" > /dev/null 2>&1
+ (use-modules (gcrypt hash)))
(equal? (hash-algorithm sha256)
(lookup-hash-algorithm 'sha256))" > /dev/null 2>&1
retval=$?