Re: [PATCH guile-gnutls] maint: Fix MinGW cross-build by using alloca from gnulib.

Simon Josefsson <[email protected]> Fri, 16 May 2025 18:31:58 +0200
Newsgroups gmane.network.gnutls.general
Message-ID <[email protected]>
--===============5425918746506074711==
Content-Type: multipart/signed; boundary="=-=-=";
	micalg=pgp-sha256; protocol="application/pgp-signature"

--=-=-=
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable

Thanks!  Is there any simple way to test your usage mode in CI?  I
looked into getting a MinGW build environment suitable for guile-gnutls
up but didn't have the required amount of patience to get all
dependencies in a usable form...  are there any supported container
images with a MinGW environment available?

I think there were some resistance to increase gnulib usage before, but
maybe this increase is possible to justify...

/Simon

Janneke Nieuwenhuizen <[email protected]> writes:

> [resend b/o reject; removed CC: [email protected]]
> Hi,
>
> Attached is a patch to include the gnulib's alloca-opt module to support
> cross-building to MinGW.  As guile-websocket-0.2 added a dependency on
> guile-gnutls, it's nice to have guile-gnutls.
>
> For gnutls I'm using a gnutls-minimal, attached as tls.scm.
>
> Greetings,
> Janneke
>
>>From 5541ba021e31e418a7b345996ada481505074f1c Mon Sep 17 00:00:00 2001
> From: Janneke Nieuwenhuizen <[email protected]>
> Date: Fri, 16 May 2025 10:47:18 +0200
> Subject: [PATCH] maint: Fix MinGW cross-build by using alloca from gnulib.
>
> ---
>  .gitignore            | 9 +++++++++
>  Makefile.am           | 6 +++---
>  bootstrap             | 3 +--
>  configure.ac          | 5 ++++-
>  guile/src/Makefile.am | 3 ++-
>  5 files changed, 19 insertions(+), 7 deletions(-)
>
> diff --git a/.gitignore b/.gitignore
> index 7a068b4..716b07b 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -51,9 +51,18 @@
>  /guile/tests/*.trs
>  /lib
>  /libtool
> +/m4/00gnulib.m4
> +/m4/alloca.m4
> +/m4/gnulib-cache.m4
> +/m4/gnulib-common.m4
> +/m4/gnulib-comp.m4
> +/m4/gnulib-tool.m4
> +/m4/init-package-version.m4
>  /m4/libtool.m4
>  /m4/ltoptions.m4
>  /m4/ltsugar.m4
>  /m4/ltversion.m4
>  /m4/lt~obsolete.m4
> +/m4/zzgnulib.m4
> +/gl
>  /stamp-h1
> diff --git a/Makefile.am b/Makefile.am
> index 43c5de7..6a39f24 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -1,5 +1,5 @@
>  ## Process this file with automake to produce Makefile.in
> -# Copyright (C) 2007-2023 Free Software Foundation, Inc.
> +# Copyright (C) 2007-2025 Free Software Foundation, Inc.
>  #
>  # Author: Ludovic Court=E8s
>  #
> @@ -23,9 +23,9 @@ AM_DISTCHECK_CONFIGURE_FLAGS =3D \
>  	--with-guile-site-ccache-dir=3D'$$(libdir)/guile/$$(GUILE_EFFECTIVE_VER=
SION)/site-ccache' \
>  	--with-guile-extension-dir=3D'$$(libdir)/guile/$$(GUILE_EFFECTIVE_VERSI=
ON)/extensions'
>=20=20
> -SUBDIRS =3D guile doc
> +SUBDIRS =3D gl guile doc
>=20=20
> -EXTRA_DIST =3D cfg.mk CONTRIBUTING.md
> +EXTRA_DIST =3D cfg.mk CONTRIBUTING.md m4/gnulib-cache.m4
>=20=20
>  # git-version-gen
>  EXTRA_DIST +=3D $(top_srcdir)/.version
> diff --git a/bootstrap b/bootstrap
> index 99d5d29..0adf250 100755
> --- a/bootstrap
> +++ b/bootstrap
> @@ -1,8 +1,7 @@
>  #! /bin/sh
>=20=20
>  if test -x gnulib/gnulib-tool; then
> -    gnulib/gnulib-tool --no-changelog --aux-dir=3Dbuild-aux --doc-base=
=3Ddoc --lib=3Dlibgl --m4-base=3Dm4/ --source-base=3Dgl/ --tests-base=3Dtes=
ts --local-dir=3Dgl --no-vc-files --libtool --import git-version-gen haveli=
b gitlog-to-changelog readme-release update-copyright version-stamp
> -    rm -fv gl/* m4/00gnulib.m4 m4/gnulib-common.m4 m4/zzgnulib.m4 m4/gnu=
lib-cache.m4  m4/gnulib-comp.m4  m4/gnulib-tool.m4 m4/init-package-version.=
m4
> +    gnulib/gnulib-tool --no-changelog --aux-dir=3Dbuild-aux --doc-base=
=3Ddoc --lib=3Dlibgl --m4-base=3Dm4/ --source-base=3Dgl/ --tests-base=3Dtes=
ts --local-dir=3Dgl --no-vc-files --libtool --import git-version-gen haveli=
b gitlog-to-changelog readme-release update-copyright version-stamp alloca-=
opt
>  fi
>=20=20
>  autoreconf -vif
> diff --git a/configure.ac b/configure.ac
> index 16e793c..8f7d3db 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -1,5 +1,5 @@
>  dnl Process this file with autoconf to produce a configure script.
> -# Copyright (C) 2000-2023 Free Software Foundation, Inc.
> +# Copyright (C) 2000-2025 Free Software Foundation, Inc.
>  #
>  # Author: Ludovic Court=E8s, Simon Josefsson, Nikos Mavrogiannopoulos
>  #
> @@ -35,6 +35,8 @@ AC_CONFIG_HEADERS([config.h])
>=20=20
>  dnl Checks for programs.
>  AC_PROG_CC
> +gl_EARLY
> +gl_INIT
>  AC_PROG_CPP
>  AM_PROG_AR
>  LT_INIT([disable-static])
> @@ -522,6 +524,7 @@ AC_CONFIG_FILES([
>    Makefile
>    doc/Makefile
>    doc/abs-top-srcdir.texi
> +  gl/Makefile
>    guile/Makefile
>    guile/src/Makefile
>  ])
> diff --git a/guile/src/Makefile.am b/guile/src/Makefile.am
> index e54d896..65e04b0 100644
> --- a/guile/src/Makefile.am
> +++ b/guile/src/Makefile.am
> @@ -1,5 +1,5 @@
>  # Guile-GnuTLS --- Guile bindings for GnuTLS.
> -# Copyright (C) 2007-2023 Free Software Foundation, Inc.
> +# Copyright (C) 2007-2025 Free Software Foundation, Inc.
>  #
>  # This file is part of Guile-GnuTLS.
>  #
> @@ -50,6 +50,7 @@ guile_gnutls_v_2_la_LIBADD =3D \
>  	$(GUILE_LDFLAGS)
>=20=20
>  AM_CPPFLAGS =3D \
> +	-I$(top_srcdir)/gl \
>  	-I$(top_srcdir)/lib/includes \
>  	-I$(top_builddir)/lib/includes	\
>  	-I$(top_srcdir)/extra/includes \
> --=20
> 2.49.0

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQNoBAEWCAMQFiEEo8ychwudMQq61M8vUXIrCP5HRaIFAmgnaH4UHHNpbW9uQGpv
c2Vmc3Nvbi5vcmfCHCYAmDMEXJLOtBYJKwYBBAHaRw8BAQdACIcrZIvhrxDBkK9f
V+QlTmXxo2naObDuGtw58YaxlOu0JVNpbW9uIEpvc2Vmc3NvbiA8c2ltb25Aam9z
ZWZzc29uLm9yZz6IlgQTFggAPgIbAwULCQgHAgYVCAkKCwIEFgIDAQIeAQIXgBYh
BLHSvRN1vst4TPT4xNc89jjFPAa+BQJn0XQkBQkNZGbwAAoJENc89jjFPAa+BtIA
/iR73CfBurG9y8pASh3cbGOMHpDZfMAtosu6jbpO69GHAP4p7l57d+iVty2VQMsx
+3TCSAvZkpr4P/FuTzZ8JZe8BrgzBFySz4EWCSsGAQQB2kcPAQEHQOxTCIOaeXAx
I2hIX4HK9bQTpNVei708oNr1Klm8qCGKiPUEGBYIACYCGwIWIQSx0r0Tdb7LeEz0
+MTXPPY4xTwGvgUCZ9F0SgUJDWRmSQCBdiAEGRYIAB0WIQSjzJyHC50xCrrUzy9R
cisI/kdFogUCXJLPgQAKCRBRcisI/kdFoqdMAQCgH45aseZgIrwKOvUOA9QfsmeE
8GZHYNuFHmM9FEQS6AD6A4x5aYvoY6lo98pgtw2HPDhmcCXFItjXCrV4A0GmJA4J
ENc89jjFPAa+wUUBAO64fbZek6FPlRK0DrlWsrjCXuLi6PUxyzCAY6lG2nhUAQC6
qobB9mkZlZ0qihy1x4JRtflqFcqqT9n7iUZkCDIiDbg4BFySz2oSCisGAQQBl1UB
BQEBB0AxlRumDW6nZY7A+VCfek9VpEx6PJmdJyYPt3lNHMd6HAMBCAeIfgQYFggA
JgIbDBYhBLHSvRN1vst4TPT4xNc89jjFPAa+BQJn0XTSBQkNZGboAAoJENc89jjF
PAa+0M0BAPPRq73kLnHYNDMniVBOzUdi2XeF32idjEWWfjvyIJUOAP4wZ+ALxIeh
is3Uw2BzGZE6ttXQ2Q+DeCJO3TPpIqaXDAAKCRBRcisI/kdFotvUAP0TDuB6FiIj
B5bSzmeHhz2MdQcQxgpUGNF3vbe5uhTxjAEA2IbJ3PLYetZDWhiPxH6wMsu6Uz4f
NejjnXm7ErGSWgE=
=7LAd
-----END PGP SIGNATURE-----
--=-=-=--


--===============5425918746506074711==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Gnutls-help mailing list
[email protected]
http://lists.gnupg.org/mailman/listinfo/gnutls-help

--===============5425918746506074711==--