[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: zsh variables
From: |
Eric Blake |
Subject: |
Re: zsh variables |
Date: |
Mon, 30 Mar 2009 22:18:36 -0600 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.21) Gecko/20090302 Thunderbird/2.0.0.21 Mnenhy/0.7.6.666 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
According to Ralf Wildenhues on 3/30/2009 12:58 PM:
Hi Ralf,
> * Eric Blake wrote on Mon, Mar 30, 2009 at 07:09:34PM CEST:
>> Double-check that zsh is always in sh mode:
>> http://lists.gnu.org/archive/html/autoconf-patches/2008-11/msg00116.html
>
> This one is easy: apparently zsh doesn't unset the $argv array nor the
> $ARGC variable when it encounters `emulate sh'. However, when sh is
> (symlinked to) zsh and started as sh, then it does not ever populate
> these variables, which may help explain why we haven't seen this before.
>
> One fix could be to just ignore those two variables in AT_CHECK_ENV.
Good idea. I'm pushing this. I'm also looking at a way to make
autoconf's testsuite much smaller, by factoring AT_CHECK_ENV and
AC_SAVE_STATE into reused contents rather than repeatedly emitting them.
- --
Don't work too hard, make some time for fun as well!
Eric Blake address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAknRmZwACgkQ84KuGfSFAYDDzwCeJYZEuLjCpglCwo/CwHaGWG16
SS8An0BxAV5hb6ZOmGvjmhNJ7Ob+Bkka
=lt7+
-----END PGP SIGNATURE-----
>From e7399cdcce9ef10d80bd010376c706358adf6fe5 Mon Sep 17 00:00:00 2001
From: Eric Blake <address@hidden>
Date: Mon, 30 Mar 2009 13:28:02 -0600
Subject: [PATCH] Fix testsuite failures under zsh.
* tests/local.at (AT_CHECK_ENV): Exempt $argv and $ARGC, which are
set by zsh -c 'emulate sh'.
Reported by Ralf Wildenhues.
Signed-off-by: Eric Blake <address@hidden>
---
ChangeLog | 5 +++++
tests/local.at | 5 +++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 43a2f56..ac19a64 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2009-03-30 Eric Blake <address@hidden>
+ Fix testsuite failures under zsh.
+ * tests/local.at (AT_CHECK_ENV): Exempt $argv and $ARGC, which are
+ set by zsh -c 'emulate sh'.
+ Reported by Ralf Wildenhues.
+
For now, skip parallel tests under less-tested shells.
* tests/autotest.at (AT_CHECK_AT): Add pre-test argument.
(Tested programs, Startup error messages, AT_CHECK_AT_TITLE)
diff --git a/tests/local.at b/tests/local.at
index dffeebf..fd451d1 100644
--- a/tests/local.at
+++ b/tests/local.at
@@ -295,7 +295,7 @@ m4_define([AT_CHECK_CONFIGURE],
# Set by AC_OUTPUT.
# - AC_SUBST'ed variables
# (FIXME: Generate a list of these automatically.)
-# - _|@|.[*#?$].|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS
+# - _|@|.[*#?$].|argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS
# Some variables some shells use and change.
# `.[*#?$].' catches `$#' etc. which are displayed like this:
# | '!'=18186
@@ -330,7 +330,8 @@ if test -f state-env.before && test -f state-env.after; then
[ALLOCA|GETLOADAVG_LIBS|KMEM_GROUP|NEED_SETGID|POW_LIB],
[AWK|LEX|LEXLIB|LEX_OUTPUT_ROOT|LN_S|M4|MKDIR_P|RANLIB|SET_MAKE|YACC],
[GREP|[EF]GREP|SED],
- address@hidden|.[*#?$].|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \
+ address@hidden|.[*#?$].],
+ [argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \
$act_file 2>/dev/null |
# There may be variables spread on several lines; remove latter lines.
$GREP '^m4_defn([m4_re_word])=' >clean-$act_file
--
1.6.1.2