mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
build: Provide a replacement (srfi srfi-37) when the user's one is broken.
* srfi/srfi-37.scm.in: New file, taken from Guile 2.0.9. * m4/guix.m4: New macro. * configure.ac: Use it. Define Automake conditional `INSTALL_SRFI_37'. * Makefile.am (nobase_nodist_guilemodule_DATA)[INSTALL_SRFI_37]: Add srfi/srfi-37.scm. (GOBJECTS)[INSTALL_SRFI_37]: Add srfi/srfi-37.go. (srfi/srfi-37.scm)[INSTALL_SRFI_37]: New target. (EXTRA_DIST): Add srfi/srfi-37.scm.in.
This commit is contained in:
19
m4/guix.m4
19
m4/guix.m4
@@ -115,3 +115,22 @@ AC_DEFUN([GUIX_ASSERT_GUILE_FEATURES], [
|
||||
fi
|
||||
done
|
||||
])
|
||||
|
||||
dnl GUIX_CHECK_SRFI_37
|
||||
dnl
|
||||
dnl Check whether SRFI-37 suffers from <http://bugs.gnu.org/13176>.
|
||||
dnl This bug was fixed in Guile 2.0.9.
|
||||
AC_DEFUN([GUIX_CHECK_SRFI_37], [
|
||||
AC_CACHE_CHECK([whether (srfi srfi-37) is affected by http://bugs.gnu.org/13176],
|
||||
[ac_cv_guix_srfi_37_broken],
|
||||
[if "$GUILE" -c "(use-modules (srfi srfi-37)) \
|
||||
(sigaction SIGALRM (lambda _ (primitive-exit 1))) \
|
||||
(alarm 1) \
|
||||
(define opts (list (option '(#\I) #f #t (lambda _ #t)))) \
|
||||
(args-fold '(\"-I\") opts (lambda _ (error)) (lambda _ #f) '())"
|
||||
then
|
||||
ac_cv_guix_srfi_37_broken=no
|
||||
else
|
||||
ac_cv_guix_srfi_37_broken=yes
|
||||
fi])
|
||||
])
|
||||
|
||||
Reference in New Issue
Block a user