[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: patch: stamp-h? files in subdirs
From: |
Derek R. Price |
Subject: |
Re: patch: stamp-h? files in subdirs |
Date: |
Wed, 31 Jan 2001 17:58:14 -0500 |
Tom Tromey wrote:
> >>>>> "Derek" == Derek R Price <address@hidden> writes:
>
> Derek> by an automake configure script. The problem was in
> Derek> AM_CONFIG_HEADERS. I fixed it, but is dependent on the
> Derek> autoconf beta.
>
> The next automake must be compatible with the old autoconf. So this
> patch can't go in as-is.
>
> Tom
Ok. This new patch (attached) does the same thing in shell. It's not
quite as robust since a configure.in is limited to a single call to
AM_CONFIG_HEADER and no COMMANDS or INIT-CMDS instead of the multiple
calls and shell script hooks like AC_CONFIG_HEADER now allows.
Derek
--
Derek Price CVS Solutions Architect ( http://CVSHome.org )
mailto:address@hidden OpenAvenue ( http://OpenAvenue.com )
--
File not found. Should I fake it? (Y/N)
? automake-1.4c-stamph.diff
? automake-1.4c-stamph2.diff
? m4/acheader.m4.sav
? tests/stamph2.test
? tests/dirname.test
Index: ChangeLog
===================================================================
RCS file: /cvs/automake/ChangeLog,v
retrieving revision 1.963
diff -u -r1.963 ChangeLog
--- ChangeLog 2001/01/31 04:05:43 1.963
+++ ChangeLog 2001/01/31 22:51:19
@@ -1,3 +1,8 @@
+2001-01-31 Derek Price <address@hidden>
+
+ * m4/header.m4 (AM_CONFIG_HEADER): This macro was broken due to
+ unescaped shell metachars. also fix stamp-h placement
+
2001-01-30 Tom Tromey <address@hidden>
* automake.in (scan_one_autoconf_file): Don't mention
Index: m4/header.m4
===================================================================
RCS file: /cvs/automake/m4/header.m4,v
retrieving revision 1.7
diff -u -r1.7 header.m4
--- m4/header.m4 2000/08/06 12:36:53 1.7
+++ m4/header.m4 2001/01/31 22:51:19
@@ -16,13 +16,23 @@
[],
[test -z "$CONFIG_HEADERS" || echo timestamp >dnl
patsubst([$1], [^\([^:]*/\)?.*], [\1])stamp-h]),
- [am_indx=1
- for am_file in $1; do
- case " $CONFIG_HEADERS " in
- *" $am_file "*)
- echo timestamp > `echo $am_file | sed
's%:.*%%;s%[^/]*$%%'`stamp-h$am_indx
- ;;
- esac
- am_indx=\`expr \$am_indx + 1\`
- done])
-])
+[am_indx=1
+for am_file in $1; do
+ case " \$CONFIG_HEADERS " in
+ *" \$am_file "*)
+ am_dir=\`echo \$am_file |sed 's%:.*%%;s%[^/]*\$%%'\`
+ if test -n "\$am_dir"; then
+ am_tmpdir=\`echo \$am_dir |sed 's%^\(/*\).*\$%\1%'\`
+ for am_subdir in \`echo \$am_dir |sed 's%/% %'\`; do
+ am_tmpdir=\$am_tmpdir\$am_subdir/
+ if test ! -d \$am_tmpdir; then
+ mkdir \$am_tmpdir
+ fi
+ done
+ fi
+ echo timestamp > "\$am_dir"stamp-h\$am_indx
+ ;;
+ esac
+ am_indx=\`expr \$am_indx + 1\`
+done])
+]) # AM_CONFIG_HEADER
Index: tests/ChangeLog
===================================================================
RCS file: /cvs/automake/tests/ChangeLog,v
retrieving revision 1.326
diff -u -r1.326 ChangeLog
--- tests/ChangeLog 2001/01/29 09:41:43 1.326
+++ tests/ChangeLog 2001/01/31 22:51:20
@@ -1,3 +1,8 @@
+2001-01-31 Derek Price <address@hidden>
+
+ * stamph2.test: new file
+ * Makefile.am (TESTS): Added stamph2.test
+
2001-01-29 Akim Demaille <address@hidden>
* check.test: New.
Index: tests/Makefile.am
===================================================================
RCS file: /cvs/automake/tests/Makefile.am,v
retrieving revision 1.247
diff -u -r1.247 Makefile.am
--- tests/Makefile.am 2001/01/29 09:41:43 1.247
+++ tests/Makefile.am 2001/01/31 22:51:20
@@ -226,6 +226,7 @@
spell3.test \
spelling.test \
stamph.test \
+stamph2.test \
stdlib.test \
subdir.test \
subdir2.test \
Index: tests/Makefile.in
===================================================================
RCS file: /cvs/automake/tests/Makefile.in,v
retrieving revision 1.311
diff -u -r1.311 Makefile.in
--- tests/Makefile.in 2001/01/29 09:41:43 1.311
+++ tests/Makefile.in 2001/01/31 22:51:20
@@ -295,6 +295,7 @@
spell3.test \
spelling.test \
stamph.test \
+stamph2.test \
stdlib.test \
subdir.test \
subdir2.test \
@@ -492,7 +493,7 @@
info-am install install-am install-data install-data-am install-exec \
install-exec-am install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
-mostlyclean-generic tags uninstall uninstall-am
+mostlyclean-generic uninstall uninstall-am
distclean-local:
--- /dev/null Thu Aug 24 05:00:32 2000
+++ tests/stamph2.test Wed Jan 31 16:14:56 2001
@@ -0,0 +1,29 @@
+#! /bin/sh
+
+# Make sure stamp-h* files are created where we expect
+
+. $srcdir/defs || exit 1
+
+cat > configure.in << 'END'
+AC_INIT(Makefile.am)
+AM_INIT_AUTOMAKE(nonesuch, nonesuch)
+AM_CONFIG_HEADER(firstfile.h sdir/secondfile.h thirdfile.h)
+AC_OUTPUT(Makefile)
+END
+
+: > Makefile.am
+mkdir sdir
+: > firstfile.h.in
+: > sdir/secondfile.h.in
+: > thirdfile.h.in
+
+# Fail gracefully if no autoconf.
+(autoconf --version) > /dev/null 2>&1 || exit 77
+
+$ACLOCAL || exit 1
+autoconf || exit 1
+$AUTOMAKE || exit 1
+./configure || exit 1
+
+(test -f stamp-h1 && test -f sdir/stamp-h2 && test -f stamp-h3) || exit 1
+exit 0