automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Extend checks on remake rules.


From: Stefano Lattarini
Subject: Re: [PATCH] Extend checks on remake rules.
Date: Tue, 24 Aug 2010 12:58:09 +0200
User-agent: KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; )

Also, I'd like to squash in the attached patches.

Regards,
   Stefano 
From 3ba9c134769dfb8cd7f55576ad08fd74d290b5f1 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Tue, 24 Aug 2010 11:14:34 +0200
Subject: [PATCH 2/4] SquashMe1

---
 ChangeLog           |    1 +
 tests/Makefile.am   |    1 +
 tests/Makefile.in   |    1 +
 tests/remake12.test |  121 +++++++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 124 insertions(+), 0 deletions(-)
 create mode 100755 tests/remake12.test

diff --git a/ChangeLog b/ChangeLog
index 17c4d9d..f14380b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -33,6 +33,7 @@
        * tests/remake10b.test: Likewise.
        * tests/remake10c.test: Likewise.
        * tests/remake11.test: Likewise.
+       * tests/remake12.test: Likewise.
        * tests/Makefile.am (TESTS): Updated.
 
 2010-08-21  Ralf Wildenhues  <address@hidden>
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 54234c2..63e6869 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -615,6 +615,7 @@ remake10a.test \
 remake10b.test \
 remake10c.test \
 remake11.test \
+remake12.test \
 regex.test \
 req.test \
 reqd.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 73188be..9a27638 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -853,6 +853,7 @@ remake10a.test \
 remake10b.test \
 remake10c.test \
 remake11.test \
+remake12.test \
 regex.test \
 req.test \
 reqd.test \
diff --git a/tests/remake12.test b/tests/remake12.test
new file mode 100755
index 0000000..6614f50
--- /dev/null
+++ b/tests/remake12.test
@@ -0,0 +1,121 @@
+#! /bin/sh
+# Copyright (C) 2010 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Test basic remake rules for Makefiles with non-default names
+# and/or with multiple sources.
+
+required=GNUmake
+. ./defs || Exit 1
+
+set -e
+
+hash1=7532aa4708e8320c8c7098a5e3a1ec88aafb074f
+hash2=99368830db9954b4d9fecd04d3996d9acea7129f
+hash3=36fe4f389c0a835dfcdb0f58a8909eab43189af1
+
+cat > configure.in <<END
+AC_INIT([$me], [1.0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_FILES([zardoz])
+AC_CONFIG_LINKS([Makefile:Makefile])
+AC_OUTPUT
+END
+
+cat > zardoz.am <<END
+EXTRA_DIST = Makefile
+#H: $hash1
+END
+
+cat > Makefile <<END
+include zardoz
+nil:
+.PHONY: nil
+END
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+
+$MAKE nil
+grep '^#H:' zardoz.in # for debugging
+$FGREP $hash1 zardoz
+$FGREP $hash1 zardoz.in
+$MAKE distcheck
+$MAKE distclean # this shouldn't remove Makefile
+ls -l
+test -f Makefile
+
+./configure
+
+$sleep
+cat >> Makefile <<END
+my-check:
+       ls -l . \$(srcdir) # for debugging
+       test -f \$(srcdir)/quux.am
+       test -f \$(srcdir)/quux.in
+       test -f \$(srcdir)/bot.in
+       test -f \$(srcdir)/top.in
+       test ! -r \$(srcdir)/zardoz.am
+       test ! -r \$(srcdir)/zardoz.in
+       grep 'FOO' zardoz # for debugging
+       test x'\$(FOO)' = x'$hash3'
+test:
+       ls -l # for debugging
+       test x'\$(FOO)' = x'dummy'
+.PHONY: test my-check
+END
+sed "s/^#H:.*/#H: $hash2/" zardoz.am > t
+cat >> t <<'END'
+check-local: my-check ## used by "make distcheck" below
+END
+mv -f t zardoz.am
+cat zardoz.am # for debugging
+$MAKE nil
+$FGREP my-check zardoz # sanity check
+$FGREP $hash1 zardoz zardoz.in && Exit 1
+$FGREP $hash2 zardoz
+$FGREP $hash2 zardoz.in
+
+./configure
+
+$sleep
+sed 's/^\(AC_CONFIG_FILES\)(.*/\1([zardoz:top.in:quux.in:bot.in])/' \
+  <configure.in >t
+mv -f t configure.in
+cat configure.in # for debugging
+sed '/^#H:/d' zardoz.am > quux.am
+echo 'FOO = dummy' >> quux.am
+echo 'BAR = $(BAZ)' > top.in
+echo "BAZ = $hash3" > bot.in
+$MAKE test
+$FGREP my-check zardoz # sanity check
+$FGREP $hash3 quux.in && Exit 1
+$FGREP $hash3 zardoz
+$FGREP $hash1 zardoz && Exit 1
+$FGREP $hash2 zardoz && Exit 1
+# After the remake above, the files `zardoz.am' and `zardoz.in'
+# should be no more needed
+echo 'endif' > zardoz.am # put in syntax error
+$MAKE test
+rm -f zardoz.in zardoz.am # get rid of them
+$MAKE test
+
+echo 'FOO = $(BAR)' >> quux.am
+$MAKE distcheck
+
+:
-- 
1.7.1

From 3be3b78774460139c52cf965eccad6258fca8f84 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Tue, 24 Aug 2010 11:32:43 +0200
Subject: [PATCH 3/4] SquashMe2

---
 ChangeLog           |    1 +
 tests/Makefile.am   |    1 +
 tests/Makefile.in   |    1 +
 tests/remake9a.test |    2 +-
 tests/remake9b.test |    2 +-
 tests/remake9c.test |    7 ++-
 tests/remake9d.test |  109 +++++++++++++++++++++++++++++++++++++++++++++++++++
 7 files changed, 118 insertions(+), 5 deletions(-)
 create mode 100755 tests/remake9d.test

diff --git a/ChangeLog b/ChangeLog
index f14380b..51aac59 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -29,6 +29,7 @@
        * tests/remake9a.test: Likewise.
        * tests/remake9b.test: Likewise.
        * tests/remake9c.test: Likewise.
+       * tests/remake9d.test: Likewise.
        * tests/remake10a.test: Likewise.
        * tests/remake10b.test: Likewise.
        * tests/remake10c.test: Likewise.
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 63e6869..87fa092 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -611,6 +611,7 @@ remake8.test \
 remake9a.test \
 remake9b.test \
 remake9c.test \
+remake9d.test \
 remake10a.test \
 remake10b.test \
 remake10c.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 9a27638..0160be5 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -849,6 +849,7 @@ remake8.test \
 remake9a.test \
 remake9b.test \
 remake9c.test \
+remake9d.test \
 remake10a.test \
 remake10b.test \
 remake10c.test \
diff --git a/tests/remake9a.test b/tests/remake9a.test
index fcf03a9..94e111c 100755
--- a/tests/remake9a.test
+++ b/tests/remake9a.test
@@ -15,7 +15,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test remake rules when configure.in or its prerequisites change.
-# Keep in sync with sister tests `remake9b.test' and `remake9c.test'.
+# Keep in sync with the other sister tests `remake9*.test'.
 
 required=GNUmake
 . ./defs || Exit 1
diff --git a/tests/remake9b.test b/tests/remake9b.test
index 266c5c7..7a0d65c 100755
--- a/tests/remake9b.test
+++ b/tests/remake9b.test
@@ -15,7 +15,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test remake rules when Makefile.am or its prerequisites change.
-# Keep in sync with sister tests `remake9a.test' and `remake9c.test'.
+# Keep in sync with the other sister tests `remake9*.test'.
 
 required=GNUmake
 . ./defs || Exit 1
diff --git a/tests/remake9c.test b/tests/remake9c.test
index 75efd6e..914a42b 100755
--- a/tests/remake9c.test
+++ b/tests/remake9c.test
@@ -15,7 +15,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test remake rules when aclocal.m4 or its prerequisites change.
-# Keep in sync with sister tests `remake9a.test' and `remake9b.test'.
+# Keep in sync with the other sister tests `remake9*.test'.
 
 required=GNUmake
 . ./defs || Exit 1
@@ -36,7 +36,8 @@ cat > Makefile.am <<'END'
 nil:
 .PHONY: nil
 
-## The right way to extend aclocal.m4 is to provide an acinclude.m4 file.
+## The right way to extend an autogenerated aclocal.m4 is to provide
+## an acinclude.m4 file.
 $(srcdir)/acinclude.m4: $(srcdir)/tweak-acinclude-m4
        $(SHELL) $(srcdir)/tweak-acinclude-m4 <$@ >address@hidden
        mv -f address@hidden $@
@@ -56,7 +57,7 @@ END
 
 echo "AC_DEFUN([MY_FINGERPRINT], [BadBadBad])" > acinclude.m4
 
-echo cat > tweak-acinclude-m4 # no-op by default
+echo : > tweak-acinclude-m4 # no-op by default
 
 $sleep # so that generated autotools files will be older than prerequisites
 $ACLOCAL
diff --git a/tests/remake9d.test b/tests/remake9d.test
new file mode 100755
index 0000000..ad24da4
--- /dev/null
+++ b/tests/remake9d.test
@@ -0,0 +1,109 @@
+#! /bin/sh
+# Copyright (C) 2010 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Test remake rules when aclocal.m4 or its prerequisites change.
+# Keep in sync with the other sister tests `remake9*.test'.
+
+required=GNUmake
+. ./defs || Exit 1
+
+set -e
+
+hash1=7532aa4708e8320c8c7098a5e3a1ec88aafb074f
+hash2=99368830db9954b4d9fecd04d3996d9acea7129f
+
+cat >> configure.in <<END
+am_fingerprint='MY_FINGERPRINT'
+AC_SUBST([am_fingerprint])
+AC_CONFIG_FILES([foo.sh:foo.in], [chmod a+x foo.sh])
+AC_OUTPUT
+END
+
+cat > Makefile.am <<'END'
+nil:
+.PHONY: nil
+
+## A non-autogenerated aclocal.m4 can be extended by hand.
+$(srcdir)/aclocal.m4: $(srcdir)/tweak-aclocal-m4
+       $(SHELL) $(srcdir)/tweak-aclocal-m4 <$@ >address@hidden
+       mv -f address@hidden $@
+       touch $@
+EXTRA_DIST = $(srcdir)/tweak-aclocal-m4
+
+## Used by "make distcheck" later.
+check-local:
+       test x'$(am_fingerprint)' = x'DummyValue'
+       test x"`./foo.sh`" = x"DummyValue"
+END
+
+cat > foo.in <<END
+#!/bin/sh
+echo '@am_fingerprint@'
+END
+
+echo cat > tweak-aclocal-m4 # no-op by default
+
+$sleep # so that generated autotools files will be older than prerequisites
+$ACLOCAL
+# Mark aclocal.m4 as non auto-generated.
+sed '/#.*generated automatically/d' aclocal.m4 > t
+mv -f t aclocal.m4
+$AUTOCONF
+$AUTOMAKE
+
+for vpath in : false; do
+
+  if $vpath; then
+    mkdir build
+    cd build
+    srcdir=..
+  else
+    srcdir=.
+  fi
+
+  $srcdir/configure
+  $MAKE # should be no-op
+
+  $sleep
+  echo "AC_DEFUN([MY_FINGERPRINT], [$hash1])dnl %%%" >> $srcdir/aclocal.m4
+  $MAKE nil
+  $FGREP am_fingerprint Makefile # for debugging
+  $FGREP $hash1 Makefile
+  test x"`./foo.sh`" = x"$hash1"
+
+  $sleep
+  echo "sed 's/.*dnl *%%%.*/AC_DEFUN([MY_FINGERPRINT], [$hash2])/'" \
+    > $srcdir/tweak-aclocal-m4
+  $MAKE nil
+  $FGREP am_fingerprint Makefile # for debugging
+  $FGREP $hash1 Makefile && Exit 1
+  $FGREP $hash2 Makefile
+  test x"`./foo.sh`" = x"$hash2"
+
+  $sleep
+  echo cat > $srcdir/tweak-aclocal-m4 # no-op again
+  echo 'AC_DEFUN([MY_FINGERPRINT], [DummyValue])' >> $srcdir/aclocal.m4
+  $MAKE distcheck
+  $FGREP $hash1 Makefile && Exit 1 # sanity check
+  $FGREP $hash2 Makefile && Exit 1 # likewise
+
+  $MAKE distclean
+
+  cd $srcdir
+
+done
+
+:
-- 
1.7.1

From 22eebc5b1b635e133bee67c30007941c7cccfc69 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Tue, 24 Aug 2010 11:42:02 +0200
Subject: [PATCH 4/4] SquashMe3

---
 ChangeLog                             |    3 +-
 tests/Makefile.am                     |    3 +-
 tests/Makefile.in                     |    3 +-
 tests/{remake8.test => remake8a.test} |   51 +++++++++++++++++---------------
 tests/{remake8.test => remake8b.test} |   53 ++++++++++++++++++---------------
 5 files changed, 62 insertions(+), 51 deletions(-)
 copy tests/{remake8.test => remake8a.test} (68%)
 rename tests/{remake8.test => remake8b.test} (67%)

diff --git a/ChangeLog b/ChangeLog
index 51aac59..ce4ea7e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -25,7 +25,8 @@
        * tests/remake2b.test: New test, sister of remake2a.test.
        * tests/remake2c.test: Likewise.
        * tests/remake3a.test: New test, sister of remake3.test.
-       * tests/remake8.test: New test.
+       * tests/remake8a.test: New test.
+       * tests/remake8b.test: New test.
        * tests/remake9a.test: Likewise.
        * tests/remake9b.test: Likewise.
        * tests/remake9c.test: Likewise.
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 87fa092..c9b869a 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -607,7 +607,8 @@ remake4.test \
 remake5.test \
 remake6.test \
 remake7.test \
-remake8.test \
+remake8a.test \
+remake8b.test \
 remake9a.test \
 remake9b.test \
 remake9c.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 0160be5..dff05e6 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -845,7 +845,8 @@ remake4.test \
 remake5.test \
 remake6.test \
 remake7.test \
-remake8.test \
+remake8a.test \
+remake8b.test \
 remake9a.test \
 remake9b.test \
 remake9c.test \
diff --git a/tests/remake8.test b/tests/remake8a.test
similarity index 68%
copy from tests/remake8.test
copy to tests/remake8a.test
index 0783823..c94d151 100755
--- a/tests/remake8.test
+++ b/tests/remake8a.test
@@ -14,14 +14,15 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Test basic remake rules for Makefiles.
+# Test basic remake rules for Makefiles, for in-tree builds
+# Keep this in sync with sister test `remake8b.test'.
 
 required=GNUmake
 . ./defs || Exit 1
 
 set -e
 
-cat >> configure.in <<END
+cat >> configure.in <<'END'
 AC_OUTPUT
 END
 
@@ -39,7 +40,9 @@ $ACLOCAL
 $AUTOCONF
 $AUTOMAKE
 
-./configure
+srcdir='.' # to make syncing with remake8b.test easier.
+
+$srcdir/configure
 
 $MAKE
 cat foo
@@ -49,7 +52,7 @@ $MAKE distcheck
 rm -f foo
 $sleep
 
-cat > Makefile.am <<'END'
+cat > $srcdir/Makefile.am <<'END'
 all-local: bar
 bar:
        echo '!Baz!' >$@
@@ -70,7 +73,7 @@ $MAKE distcheck
 rm -f bar
 $sleep
 
-cat > Makefile.am <<'END'
+cat > $srcdir/Makefile.am <<'END'
 all-local: quux
 check-local:
        cat quux
@@ -79,14 +82,14 @@ check-local:
        test ! -r bar
 END
 
-mv -f configure.in configure.bak
+mv -f $srcdir/configure.in configure.bak
 
 sed '/^AC_OUTPUT$/i\
 AC_CONFIG_FILES([quux])\
-AC_SUBST([QUUX], [Zardoz])' configure.bak >configure.in
-cat configure.in # for debugging
+AC_SUBST([QUUX], [Zardoz])' configure.bak >$srcdir/configure.in
+cat $srcdir/configure.in # for debugging
 
-cat > quux.in <<END
+cat > $srcdir/quux.in <<'END'
 address@hidden@!
 END
 
@@ -99,10 +102,10 @@ $MAKE distcheck
 rm -f quux
 $sleep
 
-mkdir m4
-: > acinclude.m4
+mkdir $srcdir/m4
+: > $srcdir/acinclude.m4
 
-cat > Makefile.am <<'END'
+cat > $srcdir/Makefile.am <<'END'
 ACLOCAL_AMFLAGS = -I m4
 all-local: quux
 check-local:
@@ -117,10 +120,10 @@ grep '.*-I m4' Makefile # sanity check
 $sleep
 sed '/^AC_OUTPUT$/i\
 AC_CONFIG_FILES([quux])\
-MY_CUSTOM_MACRO' configure.bak >configure.in
-cat configure.in # for debugging
+MY_CUSTOM_MACRO' configure.bak >$srcdir/configure.in
+cat $srcdir/configure.in # for debugging
 
-cat >> aclocal.m4 <<'END'
+cat >> $srcdir/aclocal.m4 <<'END'
 AC_DEFUN([MY_CUSTOM_MACRO], [AC_SUBST([QUUX], [%Foo%])])
 END
 
@@ -130,11 +133,11 @@ grep '%Foo%' quux
 $MAKE distcheck
 
 $sleep
-sed 's/%Foo%/%Bar%/g' Makefile.am > t
-mv -f t Makefile.am
-cat Makefile.am
-rm -f aclocal.m4
-cat > m4/blah.m4 <<'END'
+sed 's/%Foo%/%Bar%/g' $srcdir/Makefile.am > t
+mv -f t $srcdir/Makefile.am
+cat $srcdir/Makefile.am
+rm -f $srcdir/aclocal.m4
+cat > $srcdir/m4/blah.m4 <<'END'
 AC_DEFUN([MY_CUSTOM_MACRO], [AC_SUBST([QUUX], [%Bar%])])
 END
 
@@ -145,10 +148,10 @@ $MAKE distcheck
 
 $sleep
 rm -f m4/*.m4
-sed 's/%Bar%/%Quux%/g' Makefile.am > t
-mv -f t Makefile.am
-cat Makefile.am
-cat > acinclude.m4 <<'END'
+sed 's/%Bar%/%Quux%/g' $srcdir/Makefile.am > t
+mv -f t $srcdir/Makefile.am
+cat $srcdir/Makefile.am
+cat > $srcdir/acinclude.m4 <<'END'
 AC_DEFUN([MY_CUSTOM_MACRO], [AC_SUBST([QUUX], [%Quux%])])
 END
 
diff --git a/tests/remake8.test b/tests/remake8b.test
similarity index 67%
rename from tests/remake8.test
rename to tests/remake8b.test
index 0783823..96a82ae 100755
--- a/tests/remake8.test
+++ b/tests/remake8b.test
@@ -14,14 +14,15 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Test basic remake rules for Makefiles.
+# Test basic remake rules for Makefiles, for in-tree builds
+# Keep this in sync with sister test `remake8a.test'.
 
 required=GNUmake
 . ./defs || Exit 1
 
 set -e
 
-cat >> configure.in <<END
+cat >> configure.in <<'END'
 AC_OUTPUT
 END
 
@@ -39,7 +40,11 @@ $ACLOCAL
 $AUTOCONF
 $AUTOMAKE
 
-./configure
+mkdir build
+cd build
+srcdir='..' # to make syncing with remake8a.test easier.
+
+$srcdir/configure
 
 $MAKE
 cat foo
@@ -49,7 +54,7 @@ $MAKE distcheck
 rm -f foo
 $sleep
 
-cat > Makefile.am <<'END'
+cat > $srcdir/Makefile.am <<'END'
 all-local: bar
 bar:
        echo '!Baz!' >$@
@@ -70,7 +75,7 @@ $MAKE distcheck
 rm -f bar
 $sleep
 
-cat > Makefile.am <<'END'
+cat > $srcdir/Makefile.am <<'END'
 all-local: quux
 check-local:
        cat quux
@@ -79,14 +84,14 @@ check-local:
        test ! -r bar
 END
 
-mv -f configure.in configure.bak
+mv -f $srcdir/configure.in configure.bak
 
 sed '/^AC_OUTPUT$/i\
 AC_CONFIG_FILES([quux])\
-AC_SUBST([QUUX], [Zardoz])' configure.bak >configure.in
-cat configure.in # for debugging
+AC_SUBST([QUUX], [Zardoz])' configure.bak >$srcdir/configure.in
+cat $srcdir/configure.in # for debugging
 
-cat > quux.in <<END
+cat > $srcdir/quux.in <<'END'
 address@hidden@!
 END
 
@@ -99,10 +104,10 @@ $MAKE distcheck
 rm -f quux
 $sleep
 
-mkdir m4
-: > acinclude.m4
+mkdir $srcdir/m4
+: > $srcdir/acinclude.m4
 
-cat > Makefile.am <<'END'
+cat > $srcdir/Makefile.am <<'END'
 ACLOCAL_AMFLAGS = -I m4
 all-local: quux
 check-local:
@@ -117,10 +122,10 @@ grep '.*-I m4' Makefile # sanity check
 $sleep
 sed '/^AC_OUTPUT$/i\
 AC_CONFIG_FILES([quux])\
-MY_CUSTOM_MACRO' configure.bak >configure.in
-cat configure.in # for debugging
+MY_CUSTOM_MACRO' configure.bak >$srcdir/configure.in
+cat $srcdir/configure.in # for debugging
 
-cat >> aclocal.m4 <<'END'
+cat >> $srcdir/aclocal.m4 <<'END'
 AC_DEFUN([MY_CUSTOM_MACRO], [AC_SUBST([QUUX], [%Foo%])])
 END
 
@@ -130,11 +135,11 @@ grep '%Foo%' quux
 $MAKE distcheck
 
 $sleep
-sed 's/%Foo%/%Bar%/g' Makefile.am > t
-mv -f t Makefile.am
-cat Makefile.am
-rm -f aclocal.m4
-cat > m4/blah.m4 <<'END'
+sed 's/%Foo%/%Bar%/g' $srcdir/Makefile.am > t
+mv -f t $srcdir/Makefile.am
+cat $srcdir/Makefile.am
+rm -f $srcdir/aclocal.m4
+cat > $srcdir/m4/blah.m4 <<'END'
 AC_DEFUN([MY_CUSTOM_MACRO], [AC_SUBST([QUUX], [%Bar%])])
 END
 
@@ -145,10 +150,10 @@ $MAKE distcheck
 
 $sleep
 rm -f m4/*.m4
-sed 's/%Bar%/%Quux%/g' Makefile.am > t
-mv -f t Makefile.am
-cat Makefile.am
-cat > acinclude.m4 <<'END'
+sed 's/%Bar%/%Quux%/g' $srcdir/Makefile.am > t
+mv -f t $srcdir/Makefile.am
+cat $srcdir/Makefile.am
+cat > $srcdir/acinclude.m4 <<'END'
 AC_DEFUN([MY_CUSTOM_MACRO], [AC_SUBST([QUUX], [%Quux%])])
 END
 
-- 
1.7.1

From 8a3cca5ca90ee76c5e7618d6fb67a863ea513d89 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Tue, 24 Aug 2010 12:01:47 +0200
Subject: [PATCH 5/5] SquashMe4

---
 tests/remake10c.test |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/tests/remake10c.test b/tests/remake10c.test
index 2981588..98c13c5 100755
--- a/tests/remake10c.test
+++ b/tests/remake10c.test
@@ -96,7 +96,8 @@ for vpath in : false; do
 
   $sleep
   echo "AC_DEFUN([AM_FINGERPRINT], [DummyValue])" > $top_srcdir/m4/foo.m4
-  : > $top_srcdir/m4/bar.m4 # yep, clobber, don't remove
+  echo "AC_DEFUN([AM_UNUSED], [NoSuchMacro])" > $top_srcdir/m4/bar.m4
+  $MAKE nil # required to work around limitation of GNU make 3.82
   $MAKE distcheck
   $FGREP $hash1 Makefile && Exit 1 # sanity check
   $FGREP $hash2 Makefile && Exit 1 # likewise
-- 
1.7.1


reply via email to

[Prev in Thread] Current Thread [Next in Thread]