[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: automake 1.7.2 & DJGPP: tests and make SHELL=/bin/sh
From: |
Alexandre Duret-Lutz |
Subject: |
Re: automake 1.7.2 & DJGPP: tests and make SHELL=/bin/sh |
Date: |
Fri, 10 Jan 2003 19:10:47 +0100 |
User-agent: |
Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2 (i386-pc-linux-gnu) |
>>> "Richard" == Richard Dawe <address@hidden> writes:
[...]
Richard> I am not suggesting that this patch should below be
Richard> included. How can this problem be solved in a portable
Richard> manner? Perhaps they could use ${SHELL} from
Richard> tests/defs. Actually, why do the tests override the
Richard> setting of SHELL on the make command-line?
Some do because they are attempting to run parts of Makefile.in
directly (so they need to override the address@hidden@ statement
in Makefile.in). I've changed these to use SHELL=$SHELL.
Other did because some Make implementations inherit SHELL from
the environment when `make -e' is used. However tests/defs now
overrides SHELL so that isn't an issue anymore.
Here is the patch I'm installing on HEAD and branch-1-7.
2003-01-10 Alexandre Duret-Lutz <address@hidden>
* Makefile.am (maintainer-check): Do not require SHELL=/bin/sh
after $MAKE -e.
* tests/ansi3.test, tests/ansi5.test, tests/cond22.test,
tests/man2.test, tests/subobj3.test, tests/suffix8.test,
tests/suffix11.test: Do not set SHELL=/bin/sh after $MAKE -e.
$SHELL is overridden by tests/defs, so it won't hurt even
if $MAKE -e uses the $SHELL envvar.
* tests/ansi.test, tests/insh2.test, tests/texinfo.test,
tests/texinfo8.test: Use SHELL=$SHELL, not SHELL=/bin/sh.
Reported by Richard Dawe.
Index: Makefile.am
===================================================================
RCS file: /cvs/automake/automake/Makefile.am,v
retrieving revision 1.205.2.1
diff -u -r1.205.2.1 Makefile.am
--- Makefile.am 27 Sep 2002 14:18:52 -0000 1.205.2.1
+++ Makefile.am 10 Jan 2003 18:06:09 -0000
@@ -2,8 +2,8 @@
## Makefile for Automake.
-## Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002 Free
-## Software Foundation, Inc.
+## Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003
+## 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
@@ -213,24 +213,17 @@
## recursive targets are used. Better use an envvar. SHELL is an exception,
## POSIX says it can't come from the environment.
@if grep -E '\$$MAKE .*(SHELL=.*=|=.*SHELL=)' $(srcdir)/tests/*.test;
then \
- echo 'Rewrite "$$MAKE foo=bar SHELL=/bin/sh" as "foo=bar $$MAKE -e
SHELL=/bin/sh"' 1>&2; \
+ echo 'Rewrite "$$MAKE foo=bar SHELL=$$SHELL" as "foo=bar $$MAKE -e
SHELL=$$SHELL"' 1>&2; \
echo ' in the above lines, it is more portable.' 1>&2; \
exit 1; \
fi
@if grep -v SHELL $(srcdir)/tests/*.test | grep '\$$MAKE .*=' ; then \
- echo 'Rewrite "$$MAKE foo=bar" as "foo=bar $$MAKE -e SHELL=/bin/sh"
in the above lines,' 1>&2; \
+ echo 'Rewrite "$$MAKE foo=bar" as "foo=bar $$MAKE -e" in the above
lines,' 1>&2; \
echo 'it is more portable.' 1>&2; \
exit 1; \
fi
-## On NetBSD (1.5) and OSF, the $SHELL variable is still inherited from
-## the environment.
- @if grep '$$MAKE.* -e' $(srcdir)/tests/*.test | grep -v '-e.*SHELL' ;
then \
- echo 'Always overwrite SHELL when using "$$MAKE -e".' 1>&2; \
- echo 'Use "$$MAKE -e SHELL=/bin/sh" in the above lines.' 1>&2; \
- exit 1; \
- fi
@if grep 'SHELL=.*\$$MAKE' $(srcdir)/tests/*.test; then \
- echo '$$MAKE ignores the SHELL envvar, use "$$MAKE SHELL=/bin/sh" in'
1>&2; \
+ echo '$$MAKE ignores the SHELL envvar, use "$$MAKE SHELL=$$SHELL" in'
1>&2; \
echo 'the above lines.' 1>&2; \
exit 1; \
fi
Index: THANKS
===================================================================
RCS file: /cvs/automake/automake/THANKS,v
retrieving revision 1.186.2.13
diff -u -r1.186.2.13 THANKS
--- THANKS 5 Jan 2003 22:40:41 -0000 1.186.2.13
+++ THANKS 10 Jan 2003 18:06:14 -0000
@@ -173,6 +173,7 @@
Ramón García Fernández address@hidden
Rich Wales address@hidden
Richard Boulton address@hidden
+Richard Dawe address@hidden
Rob Savoye address@hidden
Robert Bihlmeyer address@hidden
Robert Boehne address@hidden
Index: tests/ansi.test
===================================================================
RCS file: /cvs/automake/automake/tests/ansi.test,v
retrieving revision 1.8
diff -u -r1.8 ansi.test
--- tests/ansi.test 8 Sep 2002 13:07:55 -0000 1.8
+++ tests/ansi.test 10 Jan 2003 18:06:14 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002
+# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003
# Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
@@ -41,4 +41,4 @@
$AUTOMAKE || exit 1
$FGREP -v @SET_MAKE@ Makefile.in > Makefile.sed
-$MAKE -s -f Makefile.sed SHELL=/bin/sh magic | grep 'ansi2knr\.c'
+$MAKE -s -f Makefile.sed SHELL=$SHELL magic | grep 'ansi2knr\.c'
Index: tests/ansi3.test
===================================================================
RCS file: /cvs/automake/automake/tests/ansi3.test,v
retrieving revision 1.11
diff -u -r1.11 ansi3.test
--- tests/ansi3.test 8 Sep 2002 13:07:55 -0000 1.11
+++ tests/ansi3.test 10 Jan 2003 18:06:14 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1998, 1999, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1998, 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -57,5 +57,5 @@
&& $AUTOCONF \
&& $AUTOMAKE -a \
&& CC='gcc' ./configure \
- && ANSI2KNR=./ansi2knr U=_ $MAKE -e SHELL=/bin/sh \
+ && ANSI2KNR=./ansi2knr U=_ $MAKE -e \
&& ./hello
Index: tests/ansi5.test
===================================================================
RCS file: /cvs/automake/automake/tests/ansi5.test,v
retrieving revision 1.7
diff -u -r1.7 ansi5.test
--- tests/ansi5.test 8 Sep 2002 13:07:55 -0000 1.7
+++ tests/ansi5.test 10 Jan 2003 18:06:15 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -90,6 +90,6 @@
mv one/Makefile one/Makefile.old
sed -e 's,ANSI2KNR =,ANSI2KNR = ./ansi2knr,' < one/Makefile.old > one/Makefile
-U=_ $MAKE -e SHELL=/bin/sh
+U=_ $MAKE -e
./one/joe
./two/maude
Index: tests/cond22.test
===================================================================
RCS file: /cvs/automake/automake/tests/cond22.test,v
retrieving revision 1.3
diff -u -r1.3 cond22.test
--- tests/cond22.test 8 Sep 2002 13:07:55 -0000 1.3
+++ tests/cond22.test 10 Jan 2003 18:06:15 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -68,6 +68,6 @@
$AUTOCONF
$AUTOMAKE
./configure
-OBJEXT=oo $MAKE -e SHELL=/bin/sh echo > output
+OBJEXT=oo $MAKE -e echo > output
cat output
$FGREP 'BEG: one.oo two.oo three.oo three2.oo :END' output
Index: tests/insh2.test
===================================================================
RCS file: /cvs/automake/automake/tests/insh2.test,v
retrieving revision 1.7
diff -u -r1.7 insh2.test
--- tests/insh2.test 8 Sep 2002 13:07:55 -0000 1.7
+++ tests/insh2.test 10 Jan 2003 18:06:15 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002
+# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003
# Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
@@ -33,4 +33,4 @@
$AUTOMAKE || exit 1
$FGREP -v @SET_MAKE@ Makefile.in > Makefile.sed
-$MAKE -s -f Makefile.sed SHELL=/bin/sh magic | grep install-sh
+$MAKE -s -f Makefile.sed SHELL=$SHELL magic | grep install-sh
Index: tests/man2.test
===================================================================
RCS file: /cvs/automake/automake/tests/man2.test,v
retrieving revision 1.3.2.1
diff -u -r1.3.2.1 man2.test
--- tests/man2.test 4 Dec 2002 17:46:35 -0000 1.3.2.1
+++ tests/man2.test 10 Jan 2003 18:06:15 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -42,13 +42,13 @@
# Let's play with $DESTDIR too, it shouldn't hurt.
./configure --prefix=''
-DESTDIR="`pwd`/=inst" $MAKE -e SHELL=/bin/sh install
+DESTDIR="`pwd`/=inst" $MAKE -e install
test -f ./=inst/man/man2/foo.2
test -f ./=inst/man/man4/foo.4
test -f ./=inst/man/man4/bar.4
-DESTDIR="`pwd`/=inst" $MAKE -e SHELL=/bin/sh uninstall
+DESTDIR="`pwd`/=inst" $MAKE -e uninstall
test ! -f ./=inst/man/man2/foo.2
test ! -f ./=inst/man/man4/foo.4
Index: tests/subobj3.test
===================================================================
RCS file: /cvs/automake/automake/tests/subobj3.test,v
retrieving revision 1.13
diff -u -r1.13 subobj3.test
--- tests/subobj3.test 8 Sep 2002 13:07:56 -0000 1.13
+++ tests/subobj3.test 10 Jan 2003 18:06:15 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -61,5 +61,5 @@
&& $AUTOCONF \
&& $AUTOMAKE -a \
&& ./configure \
- && ANSI2KNR=./ansi2knr U=_ $MAKE -e SHELL=/bin/sh \
+ && ANSI2KNR=./ansi2knr U=_ $MAKE -e \
&& ./hello
Index: tests/suffix11.test
===================================================================
RCS file: /cvs/automake/automake/tests/suffix11.test,v
retrieving revision 1.1.2.1
diff -u -r1.1.2.1 suffix11.test
--- tests/suffix11.test 29 Nov 2002 17:53:03 -0000 1.1.2.1
+++ tests/suffix11.test 10 Jan 2003 18:06:15 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -56,7 +56,7 @@
# But this should work anyway.
$AUTOMAKE -a -Wno-portability
./configure
-env OBJEXT=foo $MAKE -e SHELL=/bin/sh print >stdout
+env OBJEXT=foo $MAKE -e print >stdout
cat stdout
grep 'BEGIN: foo.foo :END' stdout
grep 'BEGIN: bar.foo :END' stdout
Index: tests/suffix8.test
===================================================================
RCS file: /cvs/automake/automake/tests/suffix8.test,v
retrieving revision 1.5
diff -u -r1.5 suffix8.test
--- tests/suffix8.test 19 Sep 2002 09:16:05 -0000 1.5
+++ tests/suffix8.test 10 Jan 2003 18:06:16 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -73,7 +73,7 @@
$AUTOCONF
$AUTOMAKE -a
./configure
-env OBJEXT=foo $MAKE -e SHELL=/bin/sh print >stdout
+env OBJEXT=foo $MAKE -e print >stdout
cat stdout
grep 'BEGIN: foo.foo :END' stdout
grep 'BEGIN: bar.lo :END' stdout
Index: tests/texinfo.test
===================================================================
RCS file: /cvs/automake/automake/tests/texinfo.test,v
retrieving revision 1.8
diff -u -r1.8 texinfo.test
--- tests/texinfo.test 8 Sep 2002 13:07:56 -0000 1.8
+++ tests/texinfo.test 10 Jan 2003 18:06:16 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002
+# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003
# Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
@@ -37,4 +37,4 @@
$AUTOMAKE || exit 1
$FGREP -v @SET_MAKE@ Makefile.in > Makefile.sed
-$MAKE -s -f Makefile.sed SHELL=/bin/sh magic | grep 'texinfo\.tex'
+$MAKE -s -f Makefile.sed SHELL=$SHELL magic | grep 'texinfo\.tex'
Index: tests/texinfo8.test
===================================================================
RCS file: /cvs/automake/automake/tests/texinfo8.test,v
retrieving revision 1.11
diff -u -r1.11 texinfo8.test
--- tests/texinfo8.test 8 Sep 2002 13:07:56 -0000 1.11
+++ tests/texinfo8.test 10 Jan 2003 18:06:16 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -49,7 +49,7 @@
$FGREP -v @SET_MAKE@ sub/Makefile.in > sub/Makefile.sed
test -f sub/texinfo.tex &&
-$MAKE -s -f sub/Makefile.sed SHELL=/bin/sh magic | grep 'texinfo\.tex'
+$MAKE -s -f sub/Makefile.sed SHELL=$SHELL magic | grep 'texinfo\.tex'
stat=$?
exit $stat
--
Alexandre Duret-Lutz
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: automake 1.7.2 & DJGPP: tests and make SHELL=/bin/sh,
Alexandre Duret-Lutz <=