fix(guile-gnutls): make static profile build-system native by disabling extension target and extension loading path

This commit is contained in:
vxtls 2026-03-05 14:00:10 -05:00
parent 56f515400d
commit 2cb4ec57b4
2 changed files with 30 additions and 12 deletions

View file

@ -15,16 +15,26 @@ Do not patch Scheme sources; rewrite generated gnutls.scm at build time.
AM_CONDITIONAL(HAVE_GCC_GNU89_INLINE_OPTION, test "$gnu89_inline" = "yes"])
--- guile-gnutls-v5.0.1/guile/Makefile.am
+++ guile-gnutls-v5.0.1/guile/Makefile.am
@@ -46,6 +46,8 @@
@@ -43,9 +43,18 @@
CLEANFILES = modules/gnutls.scm
+if ENABLE_SHARED
+scm_static_fixup =
+else
+scm_static_fixup = \
+ -e "1,/(unless (getenv \"GNUTLS_GUILE_CROSS_COMPILING\")/s|(unless (getenv \"GNUTLS_GUILE_CROSS_COMPILING\")|(when #f|" \
+ -e "s|(unless (getenv \"GNUTLS_GUILE_CROSS_COMPILING\")|(when (module-variable (current-module) 'protocol/ssl3)|"
+endif
+
.in.scm:
$(AM_V_GEN)$(MKDIR_P) "`dirname "$@"`" ; cat "$^" | \
$(SED) -e's|[@]maybe_guileextensiondir[@]|$(maybe_guileextensiondir)|g' \
+ -e "1,/(unless (getenv \"GNUTLS_GUILE_CROSS_COMPILING\")/s|(unless (getenv \"GNUTLS_GUILE_CROSS_COMPILING\")|(unless (or (false-if-exception (dynamic-call \"scm_init_gnutls\" (dynamic-link #f))) (getenv \"GNUTLS_GUILE_CROSS_COMPILING\"))|" \
+ -e "s|(unless (getenv \"GNUTLS_GUILE_CROSS_COMPILING\")|(when (module-variable (current-module) 'protocol/ssl3)|" \
+ $(scm_static_fixup) \
> "$@.tmp"
$(AM_V_at)mv "$@.tmp" "$@"
@@ -56,6 +58,7 @@
@@ -56,6 +65,7 @@
if HAVE_GUILD
@ -32,7 +42,7 @@ Do not patch Scheme sources; rewrite generated gnutls.scm at build time.
guilesiteccachesubdir = $(guilesiteccachedir)/gnutls
nodist_guilesiteccache_DATA = modules/gnutls.go
nodist_guilesiteccachesub_DATA = modules/gnutls/extra.go
@@ -94,6 +97,7 @@
@@ -94,6 +104,7 @@
-o "$@" "$<" >&$$out
SUFFIXES = .go