autoconf-patches
[Top][All Lists]
Advanced

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

Workaround for zsh


From: Pavel Roskin
Subject: Workaround for zsh
Date: Sun, 15 Oct 2000 00:14:41 -0400 (EDT)

Hello!

It's understandable why nobody has run the testsuite under zsh. Not all of
the scripts are careful enough to call "set -o posix" so it will fail.
It's probably not a big deal, since zsh doesn't pretend to work as sh.

However, zsh does pretend to work in a posix-compliant way when called
under the name "sh". This means that /bin/sh may be a link to zsh, and we
should be concerned about this case much more than about calling zsh under
its own name.

Even when zsh-3.0.7 is run as "sh" its "set" shows some weird variables
that change while configure is being executed. I tend to take a
minimalistic approach and only ignore the variables that prevent the
testsuite from passing, namely:

@
'*'
'?'
'#'

In my opinion, it's better to extend the pattern later if needed than to
ignore another weird variable set due to a bug in Autoconf.

However, I replaced single quotes in the pattern with dots to avoid shell
quoting problems and to be prepared to deal with e.g. double quotes.

Besides from that, no problems with zsh, which is great.

ChangeLog:
        * tests/aclocal.m4: Skip @, '*', '?' and '#', modified by zsh.

========================
--- tests/aclocal.m4    Tue Sep 19 23:00:32 2000
+++ tests/aclocal.m4    Sun Oct 15 00:08:01 2000
@@ -23,7 +23,7 @@
 #   AC_FUNCs from acspecific.
 # - AWK|LEX|LEXLIB|LEX_OUTPUT_ROOT|LN_S|M4|RANLIB|SET_MAKE|YACC
 #   AC_PROGs from acspecific
-# - _|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS
+# - _|@|.[*#?].|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS
 #   Some variables some shells use and change
 # - POW_LIB
 #   From acfunctions.m4.
@@ -43,7 +43,7 @@
       [^(f77_(case|underscore))=],
       [^(ALLOCA|GETLOADAVG_LIBS|KMEM_GROUP|NEED_SETGID|POW_LIB)=],
       [^(AWK|LEX|LEXLIB|LEX_OUTPUT_ROOT|LN_S|M4|RANLIB|SET_MAKE|YACC)=],
-      [^(_|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS)=])' |
+      [^(_|@|.[*#?].|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS)=])' |
   # There maybe variables spread on several lines, eg IFS, remove the dead
   # lines
   fgrep = >$1
========================

Regards,
Pavel Roskin




reply via email to

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