summary refs log tree commit diff
path: root/Makefile.am
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-07-17 11:05:19 +0200
committerLudovic Courtès <ludo@gnu.org>2013-07-17 11:05:19 +0200
commit1959fb04dc4608206bdcc6908ca3f0d71a43eda8 (patch)
tree849d93fbb2103afe254c1ad13b71bf1387187a82 /Makefile.am
parent4a328f7342ade8dd8536638e19bc8a5b33bb89fe (diff)
downloadguix-1959fb04dc4608206bdcc6908ca3f0d71a43eda8.tar.gz
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.
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am15
1 files changed, 14 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index ecda21c77f..ed3607300f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -74,12 +74,24 @@ MODULES =					\
 # first to avoid errors on systems where (gnutls) is unavailable.
 guix/scripts/download.go: guix/build/download.go
 
+
 GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go
 
 nobase_dist_guilemodule_DATA = $(MODULES)
+nobase_nodist_guilemodule_DATA = $(GOBJECTS) guix/config.scm
 
+# Do we need to provide our own non-broken (srfi srfi-37) module?
+if INSTALL_SRFI_37
+
+nobase_nodist_guilemodule_DATA += srfi/srfi-37.scm
+GOBJECTS += srfi/srfi-37.go
+
+srfi/srfi-37.scm: srfi/srfi-37.scm.in
+	$(MKDIR_P) srfi
+	cp "$<" "$@"
+
+endif INSTALL_SRFI_37
 
-nobase_nodist_guilemodule_DATA = $(GOBJECTS) guix/config.scm
 
 SCM_TESTS =					\
   tests/base32.scm				\
@@ -133,6 +145,7 @@ EXTRA_DIST =					\
   build-aux/download.scm			\
   build-aux/list-packages.scm			\
   build-aux/sync-synopses.scm			\
+  srfi/srfi-37.scm.in				\
   srfi/srfi-64.scm				\
   srfi/srfi-64.upstream.scm			\
   tests/test.drv				\