all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#55813] autogen: Use guile-3.0
@ 2022-06-06  0:46 Vagrant Cascadian
  2022-06-10 21:13 ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Vagrant Cascadian @ 2022-06-06  0:46 UTC (permalink / raw)
  To: 55813


[-- Attachment #1.1: Type: text/plain, Size: 518 bytes --]

Some relatively simply patches make autogen build with guile-3.0. Used
by both Debian an openSUSE, so already has a bit of field testing.

I'm not 100% sure that it wasn't just dumb luck, but it seemed like
building autogen with guile-3.0 was more likely to build reproducibly.

It did require adding automake and autoconf to inputs, seeming to detect
that something changed since configure was generated. Not sure if that
could be avoided by being cleverer, or if that is an acceptible change.


live well,
  vagrant

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0003-gnu-autogen-Build-with-guile-3.0.patch --]
[-- Type: text/x-diff, Size: 2367 bytes --]

From 9745d65234b70115a07d324f5514b125ad97369a Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Sun, 5 Jun 2022 16:05:02 -0700
Subject: [PATCH 3/3] gnu: autogen: Build with guile 3.0.

* gnu/packages/autogen.scm (autogen)[arguments]: Add 'support-guile-3.0 phase.
  [inputs]: Remove guile-2.2 and add automake, autoconf and guile-3.0.
---
 gnu/packages/autogen.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/autogen.scm b/gnu/packages/autogen.scm
index d0c8df17ec..7e22167be5 100644
--- a/gnu/packages/autogen.scm
+++ b/gnu/packages/autogen.scm
@@ -25,6 +25,7 @@ (define-module (gnu packages autogen)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages base)
@@ -49,7 +50,7 @@ (define-public autogen
             "def_bf[MAXNAMELEN + 10]")))))
     (build-system gnu-build-system)
     (native-inputs (list pkg-config which))
-    (inputs (list guile-2.2 perl))          ; for doc generator mdoc
+    (inputs (list automake autoconf guile-3.0 perl))          ; for doc generator mdoc
     (arguments
      '(#:configure-flags
        ;; XXX Needed to build 5.18.16.  ./configure fails without it:
@@ -62,6 +63,21 @@ (define-public autogen
 
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'support-guile-3.0
+           ;; Upstream bug:
+           ;; https://sourceforge.net/p/autogen/bugs/196/
+           ;;
+           ;; Supported in Debian and openSUSE:
+           ;; https://salsa.debian.org/debian/autogen/-/blob/master/debian/patches/40_suse_04-guile-version.patch
+           (lambda _
+             (substitute*
+                 "agen5/guile-iface.h"
+               (("#elif GUILE_VERSION < 203000") "#elif GUILE_VERSION < 301000"))
+             (substitute*
+                 (list
+                  "configure"
+                  "config/guile.m4")
+               (("2.2 2.0 1.8") "3.0 2.2 2.0 1.8"))))
          (add-before 'build 'set-man-page-date
            ;; Avoid embedding the current date for reproducible builds
            (lambda _
-- 
2.35.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-06-14  4:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-06  0:46 [bug#55813] autogen: Use guile-3.0 Vagrant Cascadian
2022-06-10 21:13 ` Ludovic Courtès
2022-06-14  4:02   ` bug#55813: " Vagrant Cascadian

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.