* Build problem & unrelated patch
@ 2010-06-04 1:45 No Itisnt
2010-06-04 4:37 ` No Itisnt
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: No Itisnt @ 2010-06-04 1:45 UTC (permalink / raw)
To: guile-devel
Recently I get a build failure on libguile/guile-procedures.texi:
guile: uncaught throw to misc-error: (dynamic-link file: ~S, message:
~S (libguile-srfi-srfi-1-v-4 file not found) #f)
Which would appear to be because srfi/ is not yet built. Anyone get
the same problem? I'm not sure how to go about fixing it.
Here is a patch that uses AM_SILENT_RULES
(http://www.flameeyes.eu/autotools-mythbuster/automake/silent.html) to
pare down build output, and also adds some files to .gitignore. I
think it's a good idea.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-04 1:45 Build problem & unrelated patch No Itisnt
@ 2010-06-04 4:37 ` No Itisnt
2010-06-06 19:41 ` Andy Wingo
2010-06-06 14:13 ` Ludovic Courtès
2010-06-06 20:42 ` Ludovic Courtès
2 siblings, 1 reply; 9+ messages in thread
From: No Itisnt @ 2010-06-04 4:37 UTC (permalink / raw)
To: guile-devel
[-- Attachment #1: Type: text/plain, Size: 642 bytes --]
Whoops! Here's the patch
On Thu, Jun 3, 2010 at 8:45 PM, No Itisnt <theseaisinhere@gmail.com> wrote:
> Recently I get a build failure on libguile/guile-procedures.texi:
>
> guile: uncaught throw to misc-error: (dynamic-link file: ~S, message:
> ~S (libguile-srfi-srfi-1-v-4 file not found) #f)
>
> Which would appear to be because srfi/ is not yet built. Anyone get
> the same problem? I'm not sure how to go about fixing it.
>
> Here is a patch that uses AM_SILENT_RULES
> (http://www.flameeyes.eu/autotools-mythbuster/automake/silent.html) to
> pare down build output, and also adds some files to .gitignore. I
> think it's a good idea.
>
[-- Attachment #2: build.patch --]
[-- Type: application/octet-stream, Size: 9456 bytes --]
diff --git a/.gitignore b/.gitignore
index db02d0f..2a1e51c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,6 +26,7 @@ missing
mdate-sh
install-sh
texinfo.tex
+.#*
*~
,*
BUGS
@@ -113,6 +114,9 @@ INSTALL
/lib/sys/stat.h
/lib/arg-nonnull.h
/lib/link-warning.h
+/lib/c++defs.h
+/lib/iconv.h
+/lib/netdb.h
/GPATH
/GRTAGS
/GSYMS
@@ -121,6 +125,7 @@ INSTALL
/meta/guile-config
/lib/locale.h
/module/ice-9/eval.go.stamp
+/module/ice-9/psyntax-pp.go.*
/doc/ref/standard-library.texi
/doc/ref/standard-libraryscmfiles
/lib/wchar.h
diff --git a/am/guilec b/am/guilec
index fec1d36..b7b3e6c 100644
--- a/am/guilec
+++ b/am/guilec
@@ -30,8 +30,15 @@ install-data-hook:
touch -r "$$d$$p" "$(DESTDIR)$(ccachedir)/$$f"; \
done
+
+GUILE_SNARF = $(top_builddir)/libguile/guile-snarf
+
+AM_V_GUILEC = $(AM_V_GUILEC_$(V))
+AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
+AM_V_GUILEC_0 = @echo " GUILEC" $@;
+
SUFFIXES = .scm .go
.scm.go:
- GUILE_AUTO_COMPILE=0 \
+ $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
$(top_builddir)/meta/uninstalled-env \
guile-tools compile $(GUILE_WARNINGS) -o "$@" "$<"
diff --git a/am/snarf b/am/snarf
new file mode 100644
index 0000000..74d0ad2
--- /dev/null
+++ b/am/snarf
@@ -0,0 +1,7 @@
+# -*- makefile -*-
+
+GUILE_SNARF = $(top_builddir)/libguile/guile-snarf
+
+AM_V_SNARF = $(AM_V_SNARF_$(V))
+AM_V_SNARF_ = $(AM_V_SNARF_$(AM_DEFAULT_VERBOSITY))
+AM_V_SNARF_0 = @echo " SNARF " $@;
diff --git a/configure.ac b/configure.ac
index 1cdb471..b6de681 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,6 +37,7 @@ AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR(GUILE-VERSION)
AM_INIT_AUTOMAKE([gnu no-define -Wall -Wno-override])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_COPYRIGHT(GUILE_CONFIGURE_COPYRIGHT)
AC_CONFIG_SRCDIR([GUILE-VERSION])
diff --git a/guile-readline/Makefile.am b/guile-readline/Makefile.am
index 8d22b24..e749ce8 100644
--- a/guile-readline/Makefile.am
+++ b/guile-readline/Makefile.am
@@ -19,6 +19,8 @@
## to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
## Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
+
## Prevent automake from adding extra -I options
DEFS = @DEFS@ @EXTRA_DEFS@
@@ -38,8 +40,6 @@ AM_CPPFLAGS = -I. -I.. -I$(srcdir)/.. \
AM_CFLAGS = $(GCC_CFLAGS)
-GUILE_SNARF = ../libguile/guile-snarf
-
lib_LTLIBRARIES = libguilereadline-v-@LIBGUILEREADLINE_MAJOR@.la
libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_SOURCES = readline.c
@@ -60,7 +60,7 @@ modinclude_HEADERS = readline.h
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x
.c.x:
- $(GUILE_SNARF) -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
EXTRA_DIST += LIBGUILEREADLINE-VERSION ChangeLog-2008
diff --git a/libguile/Makefile.am b/libguile/Makefile.am
index 90d8b61..9020a6d 100644
--- a/libguile/Makefile.am
+++ b/libguile/Makefile.am
@@ -19,6 +19,8 @@
## write to the Free Software Foundation, Inc., 51 Franklin Street,
## Fifth Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
+
AUTOMAKE_OPTIONS = gnu
## Prevent automake from adding extra -I options
@@ -53,6 +55,7 @@ gen_scmconfig_SOURCES = gen-scmconfig.c
## Override default rule; this should be compiled for BUILD host.
## For some reason, OBJEXT does not include the dot
gen-scmconfig.$(OBJEXT): gen-scmconfig.c
+ $(AM_V_GEN) \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) -c -o $@ $<; \
else \
@@ -61,7 +64,8 @@ gen-scmconfig.$(OBJEXT): gen-scmconfig.c
## Override default rule; this should run on BUILD host.
gen-scmconfig$(EXEEXT): $(gen_scmconfig_OBJECTS) $(gen_scmconfig_DEPENDENCIES)
- @rm -f gen-scmconfig$(EXEEXT)
+ $(AM_V_GEN) \
+ rm -f gen-scmconfig$(EXEEXT); \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CCLD_FOR_BUILD) -o $@ $(gen_scmconfig_OBJECTS); \
else \
@@ -69,18 +73,20 @@ gen-scmconfig$(EXEEXT): $(gen_scmconfig_OBJECTS) $(gen_scmconfig_DEPENDENCIES)
fi
scmconfig.h: ${top_builddir}/config.h gen-scmconfig$(EXEEXT)
- rm -f scmconfig.h.tmp
- cat $(srcdir)/scmconfig.h.top > scmconfig.h.tmp
- ./gen-scmconfig$(EXEEXT) >> scmconfig.h.tmp
- chmod 444 scmconfig.h.tmp
- rm -f scmconfig.h
- mv scmconfig.h.tmp scmconfig.h
+ $(AM_V_GEN)(rm -f scmconfig.h.tmp; \
+ cat $(srcdir)/scmconfig.h.top > scmconfig.h.tmp; \
+ ./gen-scmconfig$(EXEEXT) >> scmconfig.h.tmp; \
+ chmod 444 scmconfig.h.tmp; \
+ rm -f scmconfig.h; \
+ mv scmconfig.h.tmp scmconfig.h)
+
guile_filter_doc_snarfage_SOURCES = c-tokenize.c
## Override default rule; this should be compiled for BUILD host.
## For some reason, OBJEXT does not include the dot
c-tokenize.$(OBJEXT): c-tokenize.c
+ $(AM_V_GEN) \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CC_FOR_BUILD) $(DEFS) $(AM_CPPFLAGS) -c -o $@ $<; \
else \
@@ -89,7 +95,8 @@ c-tokenize.$(OBJEXT): c-tokenize.c
## Override default rule; this should run on BUILD host.
guile_filter_doc_snarfage$(EXEEXT): $(guile_filter_doc_snarfage_OBJECTS) $(guile_filter_doc_snarfage_DEPENDENCIES)
- @rm -f guile_filter_doc_snarfage$(EXEEXT)
+ $(AM_V_GEN) \
+ rm -f guile_filter_doc_snarfage$(EXEEXT); \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CCLD_FOR_BUILD) -o $@ $(guile_filter_doc_snarfage_OBJECTS); \
else \
@@ -406,7 +413,7 @@ EXTRA_DOT_DOC_FILES = @EXTRA_DOT_DOC_FILES@
DOT_I_FILES = vm-i-system.i vm-i-scheme.i vm-i-loader.i
.c.i:
- $(GREP) '^VM_DEFINE' $< > $@
+ $(AM_V_GEN)$(GREP) '^VM_DEFINE' $< > $@
BUILT_SOURCES = cpp_err_symbols.c cpp_sig_symbols.c libpath.h \
version.h scmconfig.h \
@@ -601,16 +608,14 @@ EXTRA_DIST = ChangeLog-scm ChangeLog-threads \
## usual @...@, so autoconf doesn't go and substitute the values
## directly into the left-hand sides of the sed substitutions. *sigh*
version.h: version.h.in $(top_builddir)/config.status
- sed < $(srcdir)/version.h.in > $@.tmp \
+ $(AM_V_GEN)sed < $(srcdir)/version.h.in > $@.tmp \
-e s:@-GUILE_MAJOR_VERSION-@:${GUILE_MAJOR_VERSION}: \
-e s:@-GUILE_MINOR_VERSION-@:${GUILE_MINOR_VERSION}: \
-e s:@-GUILE_MICRO_VERSION-@:${GUILE_MICRO_VERSION}: \
- -e s:@-GUILE_EFFECTIVE_VERSION-@:${GUILE_EFFECTIVE_VERSION}:
- mv $@.tmp $@
+ -e s:@-GUILE_EFFECTIVE_VERSION-@:${GUILE_EFFECTIVE_VERSION}: && mv $@.tmp $@
## FIXME: Consider using timestamp file, to avoid unnecessary rebuilds.
libpath.h: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @echo "Generating libpath.h..."
@rm -f libpath.tmp
@echo '/* generated by Makefile */' > libpath.tmp
@echo '#define SCM_PKGDATA_DIR "$(pkgdatadir)"' >> libpath.tmp
@@ -649,18 +654,21 @@ libpath.h: $(srcdir)/Makefile.in $(top_builddir)/config.status
@echo ' { "CFLAGS", "@GUILE_CFLAGS@" }, \' >> libpath.tmp
@echo ' { "buildstamp", "'"`date`"'" }, \' >> libpath.tmp
@echo '}' >> libpath.tmp
- @mv libpath.tmp libpath.h
+ $(AM_V_GEN)mv libpath.tmp libpath.h
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x .doc
+
+AM_V_FILTER = $(AM_V_FILTER_$(V))
+AM_V_FILTER_ = $(AM_V_FILTER_$(AM_DEFAULT_VERBOSITY))
+AM_V_FILTER_0 = @echo " FILTER" $@;
+
.c.x:
- ./guile-snarf -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
.c.doc:
- -$(AWK) -f ./guile-func-name-check $<
- (./guile-snarf-docs $(snarfcppopts) $< | \
- ./guile_filter_doc_snarfage$(EXEEXT) --filter-snarfage) > $@ || { rm $@; false; }
+ -$(AM_V_FILTER)$(AWK) -f ./guile-func-name-check $< && (./guile-snarf-docs $(snarfcppopts) $< | ./guile_filter_doc_snarfage$(EXEEXT) --filter-snarfage) > $@ || { rm $@; false; }
$(DOT_X_FILES) $(EXTRA_DOT_X_FILES): scmconfig.h snarf.h guile-snarf.in
@@ -678,7 +686,7 @@ guile.texi: $(alldotdocfiles) guile$(EXEEXT)
$(dotdoc2texi) --manual > $@ || { rm $@; false; }
guile-procedures.texi: $(alldotdocfiles) guile$(EXEEXT)
- $(dotdoc2texi) > $@ || { rm $@; false; }
+ $(AM_V_GEN)$(dotdoc2texi) > $@ || { rm $@; false; }
if HAVE_MAKEINFO
diff --git a/srfi/Makefile.am b/srfi/Makefile.am
index bb91268..0f0c4ac 100644
--- a/srfi/Makefile.am
+++ b/srfi/Makefile.am
@@ -19,6 +19,8 @@
## write to the Free Software Foundation, Inc., 51 Franklin Street,
## Fifth Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
+
AUTOMAKE_OPTIONS = gnu
## Prevent automake from adding extra -I options
@@ -68,14 +70,13 @@ libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_LDFLAGS = -no-undefined
EXTRA_DIST = ChangeLog-2008
-GUILE_SNARF = ../libguile/guile-snarf
-
MKDEP = gcc -M -MG $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x
+
.c.x:
- $(GUILE_SNARF) -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
CLEANFILES = *.x
diff --git a/test-suite/standalone/Makefile.am b/test-suite/standalone/Makefile.am
index 806245c..573e4e0 100644
--- a/test-suite/standalone/Makefile.am
+++ b/test-suite/standalone/Makefile.am
@@ -19,6 +19,7 @@
## write to the Free Software Foundation, Inc., 51 Franklin Street,
## Fifth Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
# initializations so we can use += below.
TESTS =
@@ -49,7 +50,7 @@ snarfcppopts = \
SUFFIXES = .x
.c.x:
- ${top_builddir}/libguile/guile-snarf -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
CLEANFILES = *.x
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-04 1:45 Build problem & unrelated patch No Itisnt
2010-06-04 4:37 ` No Itisnt
@ 2010-06-06 14:13 ` Ludovic Courtès
2010-06-06 20:42 ` Ludovic Courtès
2 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2010-06-06 14:13 UTC (permalink / raw)
To: guile-devel
Hi!
No Itisnt <theseaisinhere@gmail.com> writes:
> Recently I get a build failure on libguile/guile-procedures.texi:
>
> guile: uncaught throw to misc-error: (dynamic-link file: ~S, message:
> ~S (libguile-srfi-srfi-1-v-4 file not found) #f)
>
> Which would appear to be because srfi/ is not yet built. Anyone get
> the same problem? I'm not sure how to go about fixing it.
If you type “make” at the top-level things get built in the right order,
so you shouldn’t get this message.
If you --disable-shared you’ll get this message because we don’t
currently do the right Libtool magic to make static builds work.
> Here is a patch that uses AM_SILENT_RULES
> (http://www.flameeyes.eu/autotools-mythbuster/automake/silent.html) to
> pare down build output, and also adds some files to .gitignore. I
> think it's a good idea.
I can live without it, FWIW, but if others want it, I won’t oppose to it.
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-04 4:37 ` No Itisnt
@ 2010-06-06 19:41 ` Andy Wingo
2010-06-06 21:37 ` No Itisnt
0 siblings, 1 reply; 9+ messages in thread
From: Andy Wingo @ 2010-06-06 19:41 UTC (permalink / raw)
To: No Itisnt; +Cc: guile-devel
On Fri 04 Jun 2010 06:37, No Itisnt <theseaisinhere@gmail.com> writes:
>> Here is a patch that uses AM_SILENT_RULES
>> (http://www.flameeyes.eu/autotools-mythbuster/automake/silent.html) to
>> pare down build output, and also adds some files to .gitignore. I
>> think it's a good idea.
Given that Ludovic is OK with it, and I would like to be able to do
silent rules, cool. Please repost as git commits via git-format-patch,
so we get changelogs. Some comments:
> --- a/.gitignore
> +++ b/.gitignore
> +.#*
When do you get these?
> +/lib/c++defs.h
> +/lib/iconv.h
> +/lib/netdb.h
I don't see these in my tree
> +/module/ice-9/psyntax-pp.go.*
This is a temp file, if you have it it's junk and you have to delete
manually. Not appropriate for .gitignore IMO
> +++ b/am/guilec
> @@ -30,8 +30,15 @@ install-data-hook:
> touch -r "$$d$$p" "$(DESTDIR)$(ccachedir)/$$f"; \
> done
>
> +
> +GUILE_SNARF = $(top_builddir)/libguile/guile-snarf
Why GUILE_SNARF here? Shouldn't that be in am/snarf ?
The rest looks fine to me :)
Andy
--
http://wingolog.org/
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-04 1:45 Build problem & unrelated patch No Itisnt
2010-06-04 4:37 ` No Itisnt
2010-06-06 14:13 ` Ludovic Courtès
@ 2010-06-06 20:42 ` Ludovic Courtès
2010-06-06 22:44 ` Andy Wingo
2 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2010-06-06 20:42 UTC (permalink / raw)
To: guile-devel
Hi,
No Itisnt <theseaisinhere@gmail.com> writes:
> Recently I get a build failure on libguile/guile-procedures.texi:
>
> guile: uncaught throw to misc-error: (dynamic-link file: ~S, message:
> ~S (libguile-srfi-srfi-1-v-4 file not found) #f)
Actually it’s what’s been causing build failures on Hydra for the last
few days. If you look at the first failed ‘tarball’ job at
<http://hydra.nixos.org/build/431996>, it points to the changes at
<http://git.savannah.gnu.org/cgit/guile.git/diff/?id=9a598c47f748c7369e622cdb491ee225b0b97767&id2=22cf27c815b756cac6893b5b239898767e6cb498>.
They seem harmless at first sight, but it’s probably an obscure reason
such as the fact that we’re suddenly loading srfi-1 earlier than before
as a side effect of changes to the ‘use-modules’ clauses.
(And I was wrong: the ‘srfi’ subdir is built after ‘libguile’, of
course.)
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-06 19:41 ` Andy Wingo
@ 2010-06-06 21:37 ` No Itisnt
2010-06-08 21:27 ` Ludovic Courtès
2010-06-17 15:30 ` No Itisnt
0 siblings, 2 replies; 9+ messages in thread
From: No Itisnt @ 2010-06-06 21:37 UTC (permalink / raw)
To: Andy Wingo; +Cc: guile-devel
[-- Attachment #1: Type: text/plain, Size: 245 bytes --]
>> +/lib/c++defs.h
>> +/lib/iconv.h
>> +/lib/netdb.h
>
> I don't see these in my tree
So where would they come from? Obviously I'm not an autotools pro.
autoconf (GNU Autoconf) 2.65
automake (GNU automake) 1.11.1
Revised patch attached also.
[-- Attachment #2: 0001-Use-AM_SILENT_RULES-to-pare-down-build-output-ignore.patch --]
[-- Type: application/octet-stream, Size: 10159 bytes --]
From 98357499a152da0f7a45de3c175e8568d5c3a2cd Mon Sep 17 00:00:00 2001
From: No Itisnt <theseaisinhere+git@gmail.com>
Date: Thu, 3 Jun 2010 20:38:01 -0500
Subject: [PATCH] Use AM_SILENT_RULES to pare down build output, ignore auto-generated files
* .gitignore: Ignore extra gnulib headers.
* am/snarf: Silent SNARF command
* am/guilec: Silent GUILEC command
* configure.ac: Use AM_SILENT_RULES when available
* guile-readline/Makefile.am:
* libguile/Makefile.am:
* srfi/Makefile.am:
* test-suite/standalone/Makefile.am: Silence snarf output
---
.gitignore | 3 ++
am/guilec | 6 ++++-
am/snarf | 7 +++++
configure.ac | 1 +
guile-readline/Makefile.am | 6 ++--
libguile/Makefile.am | 46 +++++++++++++++++++++---------------
srfi/Makefile.am | 7 +++--
test-suite/standalone/Makefile.am | 3 +-
8 files changed, 52 insertions(+), 27 deletions(-)
create mode 100644 am/snarf
diff --git a/.gitignore b/.gitignore
index aab89fc..e3ccf28 100644
--- a/.gitignore
+++ b/.gitignore
@@ -113,6 +113,9 @@ INSTALL
/lib/sys/stat.h
/lib/arg-nonnull.h
/lib/link-warning.h
+/lib/c++defs.h
+/lib/iconv.h
+/lib/netdb.h
/GPATH
/GRTAGS
/GSYMS
diff --git a/am/guilec b/am/guilec
index fec1d36..824f105 100644
--- a/am/guilec
+++ b/am/guilec
@@ -30,8 +30,12 @@ install-data-hook:
touch -r "$$d$$p" "$(DESTDIR)$(ccachedir)/$$f"; \
done
+AM_V_GUILEC = $(AM_V_GUILEC_$(V))
+AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
+AM_V_GUILEC_0 = @echo " GUILEC" $@;
+
SUFFIXES = .scm .go
.scm.go:
- GUILE_AUTO_COMPILE=0 \
+ $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
$(top_builddir)/meta/uninstalled-env \
guile-tools compile $(GUILE_WARNINGS) -o "$@" "$<"
diff --git a/am/snarf b/am/snarf
new file mode 100644
index 0000000..74d0ad2
--- /dev/null
+++ b/am/snarf
@@ -0,0 +1,7 @@
+# -*- makefile -*-
+
+GUILE_SNARF = $(top_builddir)/libguile/guile-snarf
+
+AM_V_SNARF = $(AM_V_SNARF_$(V))
+AM_V_SNARF_ = $(AM_V_SNARF_$(AM_DEFAULT_VERBOSITY))
+AM_V_SNARF_0 = @echo " SNARF " $@;
diff --git a/configure.ac b/configure.ac
index 1cdb471..b6de681 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,6 +37,7 @@ AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR(GUILE-VERSION)
AM_INIT_AUTOMAKE([gnu no-define -Wall -Wno-override])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_COPYRIGHT(GUILE_CONFIGURE_COPYRIGHT)
AC_CONFIG_SRCDIR([GUILE-VERSION])
diff --git a/guile-readline/Makefile.am b/guile-readline/Makefile.am
index 8d22b24..e749ce8 100644
--- a/guile-readline/Makefile.am
+++ b/guile-readline/Makefile.am
@@ -19,6 +19,8 @@
## to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
## Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
+
## Prevent automake from adding extra -I options
DEFS = @DEFS@ @EXTRA_DEFS@
@@ -38,8 +40,6 @@ AM_CPPFLAGS = -I. -I.. -I$(srcdir)/.. \
AM_CFLAGS = $(GCC_CFLAGS)
-GUILE_SNARF = ../libguile/guile-snarf
-
lib_LTLIBRARIES = libguilereadline-v-@LIBGUILEREADLINE_MAJOR@.la
libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_SOURCES = readline.c
@@ -60,7 +60,7 @@ modinclude_HEADERS = readline.h
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x
.c.x:
- $(GUILE_SNARF) -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
EXTRA_DIST += LIBGUILEREADLINE-VERSION ChangeLog-2008
diff --git a/libguile/Makefile.am b/libguile/Makefile.am
index 90d8b61..9020a6d 100644
--- a/libguile/Makefile.am
+++ b/libguile/Makefile.am
@@ -19,6 +19,8 @@
## write to the Free Software Foundation, Inc., 51 Franklin Street,
## Fifth Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
+
AUTOMAKE_OPTIONS = gnu
## Prevent automake from adding extra -I options
@@ -53,6 +55,7 @@ gen_scmconfig_SOURCES = gen-scmconfig.c
## Override default rule; this should be compiled for BUILD host.
## For some reason, OBJEXT does not include the dot
gen-scmconfig.$(OBJEXT): gen-scmconfig.c
+ $(AM_V_GEN) \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) -c -o $@ $<; \
else \
@@ -61,7 +64,8 @@ gen-scmconfig.$(OBJEXT): gen-scmconfig.c
## Override default rule; this should run on BUILD host.
gen-scmconfig$(EXEEXT): $(gen_scmconfig_OBJECTS) $(gen_scmconfig_DEPENDENCIES)
- @rm -f gen-scmconfig$(EXEEXT)
+ $(AM_V_GEN) \
+ rm -f gen-scmconfig$(EXEEXT); \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CCLD_FOR_BUILD) -o $@ $(gen_scmconfig_OBJECTS); \
else \
@@ -69,18 +73,20 @@ gen-scmconfig$(EXEEXT): $(gen_scmconfig_OBJECTS) $(gen_scmconfig_DEPENDENCIES)
fi
scmconfig.h: ${top_builddir}/config.h gen-scmconfig$(EXEEXT)
- rm -f scmconfig.h.tmp
- cat $(srcdir)/scmconfig.h.top > scmconfig.h.tmp
- ./gen-scmconfig$(EXEEXT) >> scmconfig.h.tmp
- chmod 444 scmconfig.h.tmp
- rm -f scmconfig.h
- mv scmconfig.h.tmp scmconfig.h
+ $(AM_V_GEN)(rm -f scmconfig.h.tmp; \
+ cat $(srcdir)/scmconfig.h.top > scmconfig.h.tmp; \
+ ./gen-scmconfig$(EXEEXT) >> scmconfig.h.tmp; \
+ chmod 444 scmconfig.h.tmp; \
+ rm -f scmconfig.h; \
+ mv scmconfig.h.tmp scmconfig.h)
+
guile_filter_doc_snarfage_SOURCES = c-tokenize.c
## Override default rule; this should be compiled for BUILD host.
## For some reason, OBJEXT does not include the dot
c-tokenize.$(OBJEXT): c-tokenize.c
+ $(AM_V_GEN) \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CC_FOR_BUILD) $(DEFS) $(AM_CPPFLAGS) -c -o $@ $<; \
else \
@@ -89,7 +95,8 @@ c-tokenize.$(OBJEXT): c-tokenize.c
## Override default rule; this should run on BUILD host.
guile_filter_doc_snarfage$(EXEEXT): $(guile_filter_doc_snarfage_OBJECTS) $(guile_filter_doc_snarfage_DEPENDENCIES)
- @rm -f guile_filter_doc_snarfage$(EXEEXT)
+ $(AM_V_GEN) \
+ rm -f guile_filter_doc_snarfage$(EXEEXT); \
if [ "$(cross_compiling)" = "yes" ]; then \
$(CCLD_FOR_BUILD) -o $@ $(guile_filter_doc_snarfage_OBJECTS); \
else \
@@ -406,7 +413,7 @@ EXTRA_DOT_DOC_FILES = @EXTRA_DOT_DOC_FILES@
DOT_I_FILES = vm-i-system.i vm-i-scheme.i vm-i-loader.i
.c.i:
- $(GREP) '^VM_DEFINE' $< > $@
+ $(AM_V_GEN)$(GREP) '^VM_DEFINE' $< > $@
BUILT_SOURCES = cpp_err_symbols.c cpp_sig_symbols.c libpath.h \
version.h scmconfig.h \
@@ -601,16 +608,14 @@ EXTRA_DIST = ChangeLog-scm ChangeLog-threads \
## usual @...@, so autoconf doesn't go and substitute the values
## directly into the left-hand sides of the sed substitutions. *sigh*
version.h: version.h.in $(top_builddir)/config.status
- sed < $(srcdir)/version.h.in > $@.tmp \
+ $(AM_V_GEN)sed < $(srcdir)/version.h.in > $@.tmp \
-e s:@-GUILE_MAJOR_VERSION-@:${GUILE_MAJOR_VERSION}: \
-e s:@-GUILE_MINOR_VERSION-@:${GUILE_MINOR_VERSION}: \
-e s:@-GUILE_MICRO_VERSION-@:${GUILE_MICRO_VERSION}: \
- -e s:@-GUILE_EFFECTIVE_VERSION-@:${GUILE_EFFECTIVE_VERSION}:
- mv $@.tmp $@
+ -e s:@-GUILE_EFFECTIVE_VERSION-@:${GUILE_EFFECTIVE_VERSION}: && mv $@.tmp $@
## FIXME: Consider using timestamp file, to avoid unnecessary rebuilds.
libpath.h: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @echo "Generating libpath.h..."
@rm -f libpath.tmp
@echo '/* generated by Makefile */' > libpath.tmp
@echo '#define SCM_PKGDATA_DIR "$(pkgdatadir)"' >> libpath.tmp
@@ -649,18 +654,21 @@ libpath.h: $(srcdir)/Makefile.in $(top_builddir)/config.status
@echo ' { "CFLAGS", "@GUILE_CFLAGS@" }, \' >> libpath.tmp
@echo ' { "buildstamp", "'"`date`"'" }, \' >> libpath.tmp
@echo '}' >> libpath.tmp
- @mv libpath.tmp libpath.h
+ $(AM_V_GEN)mv libpath.tmp libpath.h
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x .doc
+
+AM_V_FILTER = $(AM_V_FILTER_$(V))
+AM_V_FILTER_ = $(AM_V_FILTER_$(AM_DEFAULT_VERBOSITY))
+AM_V_FILTER_0 = @echo " FILTER" $@;
+
.c.x:
- ./guile-snarf -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
.c.doc:
- -$(AWK) -f ./guile-func-name-check $<
- (./guile-snarf-docs $(snarfcppopts) $< | \
- ./guile_filter_doc_snarfage$(EXEEXT) --filter-snarfage) > $@ || { rm $@; false; }
+ -$(AM_V_FILTER)$(AWK) -f ./guile-func-name-check $< && (./guile-snarf-docs $(snarfcppopts) $< | ./guile_filter_doc_snarfage$(EXEEXT) --filter-snarfage) > $@ || { rm $@; false; }
$(DOT_X_FILES) $(EXTRA_DOT_X_FILES): scmconfig.h snarf.h guile-snarf.in
@@ -678,7 +686,7 @@ guile.texi: $(alldotdocfiles) guile$(EXEEXT)
$(dotdoc2texi) --manual > $@ || { rm $@; false; }
guile-procedures.texi: $(alldotdocfiles) guile$(EXEEXT)
- $(dotdoc2texi) > $@ || { rm $@; false; }
+ $(AM_V_GEN)$(dotdoc2texi) > $@ || { rm $@; false; }
if HAVE_MAKEINFO
diff --git a/srfi/Makefile.am b/srfi/Makefile.am
index cb36dda..655d214 100644
--- a/srfi/Makefile.am
+++ b/srfi/Makefile.am
@@ -19,6 +19,8 @@
## write to the Free Software Foundation, Inc., 51 Franklin Street,
## Fifth Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
+
AUTOMAKE_OPTIONS = gnu
## Prevent automake from adding extra -I options
@@ -68,14 +70,13 @@ libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_LDFLAGS = -no-undefined
EXTRA_DIST = ChangeLog-2008
-GUILE_SNARF = ../libguile/guile-snarf
-
MKDEP = gcc -M -MG $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
snarfcppopts = $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS)
SUFFIXES = .x
+
.c.x:
- $(GUILE_SNARF) -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
CLEANFILES = *.x
diff --git a/test-suite/standalone/Makefile.am b/test-suite/standalone/Makefile.am
index 34266b7..4582c9e 100644
--- a/test-suite/standalone/Makefile.am
+++ b/test-suite/standalone/Makefile.am
@@ -19,6 +19,7 @@
## write to the Free Software Foundation, Inc., 51 Franklin Street,
## Fifth Floor, Boston, MA 02110-1301 USA
+include $(top_srcdir)/am/snarf
# initializations so we can use += below.
TESTS =
@@ -49,7 +50,7 @@ snarfcppopts = \
SUFFIXES = .x
.c.x:
- ${top_builddir}/libguile/guile-snarf -o $@ $< $(snarfcppopts)
+ $(AM_V_SNARF)$(GUILE_SNARF) -o $@ $< $(snarfcppopts)
CLEANFILES = *.x
--
1.7.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-06 20:42 ` Ludovic Courtès
@ 2010-06-06 22:44 ` Andy Wingo
0 siblings, 0 replies; 9+ messages in thread
From: Andy Wingo @ 2010-06-06 22:44 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guile-devel
On Sun 06 Jun 2010 22:42, ludo@gnu.org (Ludovic Courtès) writes:
> No Itisnt <theseaisinhere@gmail.com> writes:
>
>> Recently I get a build failure on libguile/guile-procedures.texi:
>>
>> guile: uncaught throw to misc-error: (dynamic-link file: ~S, message:
>> ~S (libguile-srfi-srfi-1-v-4 file not found) #f)
>
> Actually it’s what’s been causing build failures on Hydra for the last
> few days. If you look at the first failed ‘tarball’ job at
> <http://hydra.nixos.org/build/431996>, it points to the changes at
> <http://git.savannah.gnu.org/cgit/guile.git/diff/?id=9a598c47f748c7369e622cdb491ee225b0b97767&id2=22cf27c815b756cac6893b5b239898767e6cb498>.
>
> They seem harmless at first sight, but it’s probably an obscure reason
> such as the fact that we’re suddenly loading srfi-1 earlier than before
> as a side effect of changes to the ‘use-modules’ clauses.
Ew, well that would be me I think. Gross. I'll poke later, unless
someone gets to it first.
A
--
http://wingolog.org/
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-06 21:37 ` No Itisnt
@ 2010-06-08 21:27 ` Ludovic Courtès
2010-06-17 15:30 ` No Itisnt
1 sibling, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2010-06-08 21:27 UTC (permalink / raw)
To: guile-devel
Hi,
No Itisnt <theseaisinhere@gmail.com> writes:
>>> +/lib/c++defs.h
>>> +/lib/iconv.h
>>> +/lib/netdb.h
>>
>> I don't see these in my tree
>
> So where would they come from?
Gnulib (Guile commit ca4353f4).
Ludo’.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Build problem & unrelated patch
2010-06-06 21:37 ` No Itisnt
2010-06-08 21:27 ` Ludovic Courtès
@ 2010-06-17 15:30 ` No Itisnt
1 sibling, 0 replies; 9+ messages in thread
From: No Itisnt @ 2010-06-17 15:30 UTC (permalink / raw)
To: Andy Wingo; +Cc: guile-devel
ping -- could someone take a look at this?
Thanks.
On Sun, Jun 6, 2010 at 4:37 PM, No Itisnt <theseaisinhere@gmail.com> wrote:
>>> +/lib/c++defs.h
>>> +/lib/iconv.h
>>> +/lib/netdb.h
>>
>> I don't see these in my tree
>
> So where would they come from? Obviously I'm not an autotools pro.
>
> autoconf (GNU Autoconf) 2.65
> automake (GNU automake) 1.11.1
>
> Revised patch attached also.
>
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2010-06-17 15:30 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-04 1:45 Build problem & unrelated patch No Itisnt
2010-06-04 4:37 ` No Itisnt
2010-06-06 19:41 ` Andy Wingo
2010-06-06 21:37 ` No Itisnt
2010-06-08 21:27 ` Ludovic Courtès
2010-06-17 15:30 ` No Itisnt
2010-06-06 14:13 ` Ludovic Courtès
2010-06-06 20:42 ` Ludovic Courtès
2010-06-06 22:44 ` Andy Wingo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).