Subject: [bug#61790] [PATCH core-updates 2/5] gnu: gnutls: Remove Guile dependency.

From: Ludovic Courtès <[email-masked]>
Date: Sat, 25 Feb 2023 20:00:27 +0100

* gnu/packages/tls.scm (gnutls)[arguments]: Remove --with-guile-*
configure flags.
[native-inputs]: Remove GUILE-3.0.
[inputs]: Likewise, and add LIBUNISTRING.
(gnutls-latest)[inputs, native-inputs]: Remove.
(guile2.2-gnutls): Rewrite as a variant of GUILE-GNUTLS.
---
 gnu/packages/tls.scm | 42 +++++++++++++-----------------------------
 1 file changed, 13 insertions(+), 29 deletions(-)

diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 9b2669e095..7a85cfe5bc 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012-2017, 2019-2022 Ludovic Courtès <[email-masked]>
+;;; Copyright © 2012-2017, 2019-2023 Ludovic Courtès <[email-masked]>
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2021 Mark H Weaver <[email-masked]>
 ;;; Copyright © 2014 Ian Denhardt <[email-masked]>
 ;;; Copyright © 2013, 2015 Andreas Enge <[email-masked]>
@@ -232,15 +232,6 @@ (define-public gnutls
               ;; independently.  This seems suboptimal.
               "--with-default-trust-store-dir=/etc/ssl/certs"
 
-              ;; Tell the build system that we want Guile bindings installed to
-              ;; the output instead of Guiles own module directory.
-              (string-append "--with-guile-site-dir="
-                             "$(datarootdir)/guile/site/$(GUILE_EFFECTIVE_VERSION)")
-              (string-append "--with-guile-site-ccache-dir="
-                             "$(libdir)/guile/$(GUILE_EFFECTIVE_VERSION)/site-ccache")
-              (string-append "--with-guile-extension-dir="
-                             "$(libdir)/guile/$(GUILE_EFFECTIVE_VERSION)/extensions")
-
               (let ((system #$(or (%current-target-system)
                                   (%current-system))))
                 (if (string-prefix? "mips64el" system)
@@ -276,17 +267,13 @@ (define-public gnutls
     (native-inputs
      (append (list pkg-config texinfo which
                    util-linux)                    ;one test needs 'setsid'
-             (if (%current-target-system)         ;for cross-build
-                 (list guile-3.0)                 ;to create .go files
-                 '())
              (if (hurd-target?)
                  '()
                  (list net-tools
                        iproute                    ;for 'ss'
                        socat                      ;several tests rely on it
                        datefudge))))              ;tests rely on 'datefudge'
-    (inputs
-     (list guile-3.0))
+    (inputs (list libunistring))
     (propagated-inputs
      ;; These are all in the 'Requires.private' field of gnutls.pc.
      (append (list libtasn1 libidn2 nettle zlib)
@@ -319,14 +306,7 @@ (define-public gnutls-latest
                                        "gnutls-cross.patch"))
               (sha256
                (base32
-                "01i1gl15k6qwvxmxx0by1mn9nlmcmym18wdpm7dn9awfsp8474dy"))))
-
-    ;; Disable Guile bindings: they are now provided by Guile-GnuTLS.
-    (inputs (modify-inputs (package-inputs gnutls)
-              (delete "guile")
-              (append libunistring)))             ;GnuTLS depends on it
-    (native-inputs (modify-inputs (package-native-inputs gnutls)
-                     (delete "guile")))))
+                "01i1gl15k6qwvxmxx0by1mn9nlmcmym18wdpm7dn9awfsp8474dy"))))))
 
 (define-public gnutls/dane
   ;; GnuTLS with build libgnutls-dane, implementing DNS-based
@@ -338,12 +318,6 @@ (define-public gnutls/dane
     (inputs (modify-inputs (package-inputs gnutls)
               (prepend unbound)))))
 
-(define-public guile2.2-gnutls
-  (package/inherit gnutls
-    (name "guile2.2-gnutls")
-    (inputs (modify-inputs (package-inputs gnutls)
-              (replace "guile" guile-2.2)))))
-
 (define-public guile-gnutls
   (package
     ;; This package supersedes the Guile bindings that came with GnuTLS until
@@ -407,6 +381,16 @@ (define-public guile-gnutls
 bindings that were formerly provided as part of GnuTLS.")
     (license license:lgpl2.1+)))
 
+(define-public guile2.2-gnutls
+  (package/inherit guile-gnutls
+    (name "guile2.2-gnutls")
+    (native-inputs
+     (modify-inputs (package-native-inputs guile-gnutls)
+       (replace "guile" guile-2.2)))
+    (inputs
+     (modify-inputs (package-inputs guile-gnutls)
+       (replace "guile" guile-2.2)))))
+
 (define (target->openssl-target target)
   "Return the value to set CONFIGURE_TARGET_ARCH to when cross-compiling
 OpenSSL for TARGET."
-- 
2.39.1