zsh-workers
 help / color / mirror / code / Atom feed
* Re: zsh and autoconf-2.50
@ 2001-05-30 23:15 Jos Backus
  0 siblings, 0 replies; 45+ messages in thread
From: Jos Backus @ 2001-05-30 23:15 UTC (permalink / raw)
  To: zsh-workers

>Looks like $target is not being expanded.

That isn't it. It appears that yodl is required because Doc/Makefile tries to
build the manpages with it (using the .yo.1 rule). True?

-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-06-01  8:55               ` Andrej Borsenkow
  2001-06-01 11:00                 ` Akim Demaille
@ 2001-06-01 16:48                 ` Tim Van Holder
  1 sibling, 0 replies; 45+ messages in thread
From: Tim Van Holder @ 2001-06-01 16:48 UTC (permalink / raw)
  To: Andrej Borsenkow, Akim Demaille; +Cc: zsh-workers, Au List

> > | % autoconf2.50
> > | configure.in:55: error: undefine: undefined: zsh-debug
> > | configure.in:55: the top level
> > |
> > | The offending construct is here.
> > |
> > | undefine([zsh-debug])dnl
> > | AC_ARG_ENABLE(zsh-debug,
> > | [  --enable-zsh-debug         compile with debug code and
> > debugger symbols],
> > | [if test x$enableval = xyes; then
> > |   AC_DEFINE(DEBUG)
> > | fi])
> >
> 
> I have started with updating and am staring at this with some 
> surprise. Why
> do we need this undefine at all? Is not AC_ARG_ENABLE([zsh-debug],...)
> enough?
> 
Yes it is.  I have seen such undefines before; basically it's a
bit paranoid: 'zsh-debug' is passed to AC_ARG_ENABLE unquoted, so
they wanted to avoid it being a macro (and getting expanded).
As you say, simply drop the undefine, and quote zsh-debug.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 14:36                               ` Andrej Borsenkow
@ 2001-06-01 15:05                                 ` Clint Adams
  0 siblings, 0 replies; 45+ messages in thread
From: Clint Adams @ 2001-06-01 15:05 UTC (permalink / raw)
  To: Andrej Borsenkow; +Cc: Zsh hackers list

> BTW anybody else working on 2.50? Else I hope to produce new configure.ac
> next week. I cannot promise to resolve this issue with current configure.in
> though (unless it happens as a side effect).

If you remove the hunk beginning with

dnl The standard config.status is missing some essential features.
dnl So add them now.  See the comment at the end of Src/mkmakemod.sh.

config.status will be happier.  I haven't looked into why.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-06-01 14:25                             ` Peter Stephenson
@ 2001-06-01 14:36                               ` Andrej Borsenkow
  2001-06-01 15:05                                 ` Clint Adams
  0 siblings, 1 reply; 45+ messages in thread
From: Andrej Borsenkow @ 2001-06-01 14:36 UTC (permalink / raw)
  To: Zsh hackers list


>
> > It (I mean, the whole configure.in)  does not work with 2.50
> anyway, so I
> > won't commit it:
>
> You might as well, since it's better than my attempt which I've already
> committed (I was only worried that it didn't break the old autoconf).
>

Makes no sense (unless 2.13 is broken aas well). I will remove these undefs
anyway. Let's finally release 4.0.1 :-)

BTW anybody else working on 2.50? Else I hope to produce new configure.ac
next week. I cannot promise to resolve this issue with current configure.in
though (unless it happens as a side effect).

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 14:19                           ` Andrej Borsenkow
@ 2001-06-01 14:25                             ` Peter Stephenson
  2001-06-01 14:36                               ` Andrej Borsenkow
  0 siblings, 1 reply; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01 14:25 UTC (permalink / raw)
  To: Zsh hackers list

> It (I mean, the whole configure.in)  does not work with 2.50 anyway, so I
> won't commit it:

You might as well, since it's better than my attempt which I've already
committed (I was only worried that it didn't break the old autoconf).

> Peter, does it make sense to put a word about it? Probably, in
> zsh-devleopment-guide?

Index: Etc/zsh-development-guide
===================================================================
RCS file: /cvsroot/zsh/zsh/Etc/zsh-development-guide,v
retrieving revision 1.6
diff -u -r1.6 zsh-development-guide
--- Etc/zsh-development-guide	2001/04/14 16:34:15	1.6
+++ Etc/zsh-development-guide	2001/06/01 14:24:41
@@ -23,6 +23,10 @@
   of the config.status files that get generated.  See the comments in
   configure.in and at the end of Src/mkmakemod.sh for an explanation.)
 
+  Note that configure.in has not yet been modified to work with autoconf
+  2.50.  Use version 2.13 until configure.in and associated files have
+  been updated.
+
 * GNU m4.  (Required by autoconf.)
 
 * yodl.

-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 14:05                       ` Andrej Borsenkow
  2001-06-01 14:08                         ` Clint Adams
@ 2001-06-01 14:19                         ` Peter Stephenson
  1 sibling, 0 replies; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01 14:19 UTC (permalink / raw)
  To: Zsh hackers list

> Quoting, quoting ...
> 
> ifdef([zsh-debug],[undefine([zsh-debug])])dnl

OK, go ahead and commit this will I'm fiddling around.

-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-06-01 14:08                         ` Clint Adams
@ 2001-06-01 14:19                           ` Andrej Borsenkow
  2001-06-01 14:25                             ` Peter Stephenson
  0 siblings, 1 reply; 45+ messages in thread
From: Andrej Borsenkow @ 2001-06-01 14:19 UTC (permalink / raw)
  To: Clint Adams; +Cc: Peter Stephenson, Zsh hackers list

>
> > Quoting, quoting ...
> >
> > ifdef([zsh-debug],[undefine([zsh-debug])])dnl
> >
> > Please, PLEASE, test it this still works with 2.13. I do not
> have it anymore
> > :-)
>
> It does.
>

It (I mean, the whole configure.in)  does not work with 2.50 anyway, so I
won't commit it:

cd . && \
  CONFIG_FILES=Config/defs.mk CONFIG_HEADERS= /bin/sh ./config.status
./config.status: syntax error at line 1021: `end of file' unexpected
cd . && \
  CONFIG_FILES=./Makefile CONFIG_HEADERS= /bin/sh ./config.status
./config.status: syntax error at line 1021: `end of file' unexpected
cd /tools/src/zsh && autoheader
echo > /tools/src/zsh/stamp-h.in
cd . && \
  CONFIG_FILES= CONFIG_HEADERS=./config.h /bin/sh ./config.status
./config.status: syntax error at line 1021: `end of file' unexpected
...


Peter, does it make sense to put a word about it? Probably, in
zsh-devleopment-guide?

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 13:57                     ` Andrej Borsenkow
  2001-06-01 14:05                       ` Andrej Borsenkow
@ 2001-06-01 14:11                       ` Peter Stephenson
  1 sibling, 0 replies; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01 14:11 UTC (permalink / raw)
  To: Zsh hackers list

"Andrej Borsenkow" wrote:
> > Gag.  OK, here's a full paranoid replacement just for now, instead of the
> > previous two attempts.  It produces an identical configure, which is all
> > I'm really worried about.
> 
> I must be stupid, but it does not work foe mr:

Urgh.  Well, it's harmless (and anyway I'm not using the latest autoconf
for the 4.0.1 distribution).  It can simply disappear without trace when
the present nightmare is over.  Might be something to do with quoting, but
what I wrote seems to agree with what the info pages for M4 suggest.

-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 14:05                       ` Andrej Borsenkow
@ 2001-06-01 14:08                         ` Clint Adams
  2001-06-01 14:19                           ` Andrej Borsenkow
  2001-06-01 14:19                         ` Peter Stephenson
  1 sibling, 1 reply; 45+ messages in thread
From: Clint Adams @ 2001-06-01 14:08 UTC (permalink / raw)
  To: Andrej Borsenkow; +Cc: Peter Stephenson, Zsh hackers list

> Quoting, quoting ...
> 
> ifdef([zsh-debug],[undefine([zsh-debug])])dnl
> 
> Please, PLEASE, test it this still works with 2.13. I do not have it anymore
> :-)

It does.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-06-01 13:57                     ` Andrej Borsenkow
@ 2001-06-01 14:05                       ` Andrej Borsenkow
  2001-06-01 14:08                         ` Clint Adams
  2001-06-01 14:19                         ` Peter Stephenson
  2001-06-01 14:11                       ` Peter Stephenson
  1 sibling, 2 replies; 45+ messages in thread
From: Andrej Borsenkow @ 2001-06-01 14:05 UTC (permalink / raw)
  To: Peter Stephenson, Zsh hackers list

[-- Attachment #1: Type: text/plain, Size: 423 bytes --]


>
> I must be stupid, but it does not work foe mr:
>
> bor@itsrm2% autoconf
> configure.in:55: error: undefine: undefined: zsh-debug
> configure.in:55: the top level
>
> even with
>
> dnl Do you want to debug zsh?
> ifdef([zsh-debug],undefine([zsh-debug]))dnl
>

Quoting, quoting ...

ifdef([zsh-debug],[undefine([zsh-debug])])dnl

Please, PLEASE, test it this still works with 2.13. I do not have it anymore
:-)

-andrej

[-- Attachment #2: ac-2.50.diff --]
[-- Type: application/octet-stream, Size: 7048 bytes --]

Index: configure.in
===================================================================
RCS file: /cvsroot/zsh/zsh/configure.in,v
retrieving revision 1.59
diff -u -r1.59 configure.in
--- configure.in	2001/06/01 13:38:46	1.59
+++ configure.in	2001/06/01 14:03:20
@@ -52,7 +52,7 @@
 zsh_COMPILE_FLAGS($CPPFLAGS, $CFLAGS, $LDFLAGS, $LIBS)
 
 dnl Do you want to debug zsh?
-ifdef([zsh-debug],undefine([zsh-debug]))dnl
+ifdef([zsh-debug],[undefine([zsh-debug])])dnl
 AC_ARG_ENABLE(zsh-debug,
 [  --enable-zsh-debug         compile with debug code and debugger symbols],
 [if test x$enableval = xyes; then
@@ -60,7 +60,7 @@
 fi])
 
 dnl Do you want zsh memory allocation routines.
-ifdef([zsh-mem],undefine([zsh-mem]))dnl
+ifdef([zsh-mem],[undefine([zsh-mem])])dnl
 AC_ARG_ENABLE(zsh-mem,
 [  --enable-zsh-mem           compile with zsh memory allocation routines],
 [if test x$enableval = xyes; then
@@ -68,7 +68,7 @@
 fi])
 
 dnl Do you want to debug zsh memory allocation routines.
-ifdef([zsh-mem-debug],undefine([zsh-mem-debug]))dnl
+ifdef([zsh-mem-debug],[undefine([zsh-mem-debug])])dnl
 AC_ARG_ENABLE(zsh-mem-debug,
 [  --enable-zsh-mem-debug     debug zsh memory allocation routines],
 [if test x$enableval = xyes; then
@@ -76,7 +76,7 @@
 fi])
 
 dnl Do you want to print warnings when errors in memory allocation.
-ifdef([zsh-mem-warning],undefine([zsh-mem-warning]))dnl
+ifdef([zsh-mem-warning],[undefine([zsh-mem-warning])])dnl
 AC_ARG_ENABLE(zsh-mem-warning,
 [  --enable-zsh-mem-warning   print warnings for errors in memory allocation],
 [if test x$enableval = xyes; then
@@ -84,7 +84,7 @@
 fi])
 
 dnl Do you want to turn on error checking for free().
-ifdef([zsh-secure-free],undefine([zsh-secure-free]))dnl
+ifdef([zsh-secure-free],[undefine([zsh-secure-free])])dnl
 AC_ARG_ENABLE(zsh-secure-free,
 [  --enable-zsh-secure-free   turn on error checking for free()],
 [if test x$enableval = xyes; then
@@ -93,7 +93,7 @@
 
 dnl Do you want debugging information on internal hash tables.
 dnl This turns on the `hashinfo' builtin command.
-ifdef([zsh-hash-debug],undefine([zsh-hash-debug]))dnl
+ifdef([zsh-hash-debug],[undefine([zsh-hash-debug])])dnl
 AC_ARG_ENABLE(zsh-hash-debug,
 [  --enable-zsh-hash-debug    turn on debugging of internal hash tables],
 [if test x$enableval = xyes; then
@@ -101,12 +101,12 @@
 fi])
 
 dnl Pathnames for global zsh scripts
-ifdef([etcdir],undefine([etcdir]))dnl
+ifdef([etcdir],[undefine([etcdir])])dnl
 AC_ARG_ENABLE(etcdir,
 [  --enable-etcdir=DIR        the default directory for global zsh scripts],
 [etcdir="$enableval"], [etcdir=/etc])
 
-ifdef([zshenv],undefine([zshenv]))dnl
+ifdef([zshenv],[undefine([zshenv])])dnl
 AC_ARG_ENABLE(zshenv,
 [  --enable-zshenv=FILE       the full pathname of the global zshenv script],
 [zshenv="$enableval"],
@@ -119,7 +119,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZSHENV, "$zshenv")
 fi
 
-ifdef([zshrc],undefine([zshrc]))dnl
+ifdef([zshrc],[undefine([zshrc])])dnl
 AC_ARG_ENABLE(zshrc,
 [  --enable-zshrc=FILE        the full pathname of the global zshrc script],
 [zshrc="$enableval"],
@@ -132,7 +132,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZSHRC, "$zshrc")
 fi
 
-ifdef([zprofile],undefine([zprofile]))dnl
+ifdef([zprofile],[undefine([zprofile])])dnl
 AC_ARG_ENABLE(zprofile,
 [  --enable-zprofile=FILE     the full pathname of the global zprofile script],
 [zprofile="$enableval"],
@@ -145,7 +145,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZPROFILE, "$zprofile")
 fi
 
-ifdef([zlogin],undefine([zlogin]))dnl
+ifdef([zlogin],[undefine([zlogin])])dnl
 AC_ARG_ENABLE(zlogin,
 [  --enable-zlogin=FILE       the full pathname of the global zlogin script],
 [zlogin="$enableval"],
@@ -158,7 +158,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZLOGIN, "$zlogin")
 fi
 
-ifdef([zlogout],undefine([zlogout]))dnl
+ifdef([zlogout],[undefine([zlogout])])dnl
 AC_ARG_ENABLE(zlogout,
 [  --enable-zlogout=FILE      the full pathname of the global zlogout script],
 [zlogout="$enableval"],
@@ -178,19 +178,19 @@
 AC_SUBST(zlogout)dnl
 
 dnl Do you want large file support, if available?
-ifdef([lfs],undefine([lfs]))dnl
+ifdef([lfs],[undefine([lfs])])dnl
 AC_ARG_ENABLE(lfs,
 [  --disable-lfs              turn off support for large files],
 [lfs="$enableval"], [lfs=yes])
 
 dnl Do you want dynamically loaded binary modules.
-ifdef([dynamic],undefine([dynamic]))dnl
+ifdef([dynamic],[undefine([dynamic])])dnl
 AC_ARG_ENABLE(dynamic,
 [  --disable-dynamic          turn off dynamically loaded binary modules],
 [dynamic="$enableval"], [dynamic=yes])
 
 dnl Do you want to disable restricted on r* commands
-ifdef([restricted-r],undefine([restricted-r]))dnl
+ifdef([restricted-r],[undefine([restricted-r])])dnl
 AC_ARG_ENABLE(restricted-r,
 [  --disable-restricted-r     turn off r* invocation for restricted shell],
 [if test x$enableval = xyes; then
@@ -213,7 +213,7 @@
 [  --enable-ansi2knr          translate source to K&R C before compiling],
 [ansi2knr="$enableval"], [ansi2knr=default])
 
-ifdef([fndir],undefine([fndir]))dnl
+ifdef([fndir],[undefine([fndir])])dnl
 AC_ARG_ENABLE(fndir,
 [  --enable-fndir=DIR         the directory in which to install functions],
 dnl ${VERSION} to be determined at compile time.
@@ -223,7 +223,7 @@
   fndir="$enableval"
 fi], [fndir=${datadir}/${tzsh_name}/'${VERSION}'/functions])
 
-ifdef([sitefndir],undefine([sitefndir]))dnl
+ifdef([sitefndir],[undefine([sitefndir])])dnl
 AC_ARG_ENABLE(sitefndir,
 [  --enable-site-fndir=DIR    same for site functions (not version specific)],
 [if test $enableval = yes; then
@@ -232,7 +232,7 @@
   sitefndir="$enableval"
 fi], [sitefndir=${datadir}/${tzsh_name}/site-functions])
 
-ifdef([function_subdirs],undefine([function_subdirs]))
+ifdef([function_subdirs],[undefine([function_subdirs])])
 AC_ARG_ENABLE(function-subdirs,
 [  --enable-function-subdirs  install functions in subdirectories])
 
@@ -248,7 +248,7 @@
 AC_SUBST(FUNCTIONS_SUBDIRS)dnl
 
 dnl Do you want maildir support?
-ifdef([maildir_support],undefine([maildir_support]))dnl
+ifdef([maildir_support],[undefine([maildir_support])])dnl
 AC_ARG_ENABLE(maildir-support,
 [  --enable-maildir-support   enable maildir support in MAIL and MAILPATH],
 [if test x$enableval = xyes; then
@@ -256,7 +256,7 @@
 fi])
 
 dnl Do you want to set a maximum function depth?
-ifdef([max_function_depth],undefine([max_function_depth]))dnl
+ifdef([max_function_depth],[undefine([max_function_depth])])dnl
 AC_ARG_ENABLE(max-function-depth,
 [  --enable-max-function-depth=MAX   limit function depth to MAX],
 [if test x$enableval = xyes; then
@@ -419,7 +419,7 @@
 
 AC_MSG_CHECKING(what to set MAXJOB to)
 dnl Do you want to alter the maximum job table size?
-ifdef([max_jobtable_size],undefine([max_jobtable_size]))dnl
+ifdef([max_jobtable_size],[undefine([max_jobtable_size])])dnl
 AC_ARG_ENABLE(max-jobtable-size,
 [  --enable-max-jobtable-size=MAX    limit job table size to MAX],
 

^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-06-01 13:33                   ` Peter Stephenson
  2001-06-01 13:47                     ` Bart Schaefer
@ 2001-06-01 13:57                     ` Andrej Borsenkow
  2001-06-01 14:05                       ` Andrej Borsenkow
  2001-06-01 14:11                       ` Peter Stephenson
  1 sibling, 2 replies; 45+ messages in thread
From: Andrej Borsenkow @ 2001-06-01 13:57 UTC (permalink / raw)
  To: Peter Stephenson, Zsh hackers list

> 
> Gag.  OK, here's a full paranoid replacement just for now, instead of the
> previous two attempts.  It produces an identical configure, which is all
> I'm really worried about.

I must be stupid, but it does not work foe mr:

bor@itsrm2% autoconf         
configure.in:55: error: undefine: undefined: zsh-debug
configure.in:55: the top level

even with

dnl Do you want to debug zsh?
ifdef([zsh-debug],undefine([zsh-debug]))dnl

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 13:47                     ` Bart Schaefer
@ 2001-06-01 13:56                       ` Peter Stephenson
  0 siblings, 0 replies; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01 13:56 UTC (permalink / raw)
  To: Zsh hackers list

"Bart Schaefer" wrote:
> On Jun 1,  2:33pm, Peter Stephenson wrote:
> } Subject: Re: zsh and autoconf-2.50
> }
> } I'm just putting in the finishing touches (I hope), so it would help if
> } non-urgent patches could be kept out until everything's tagged.
> 
> Do we want 14578?

I'd say leave it out for now, then put it in after the release --- it
doesn't seem to be that urgent.

-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 13:33                   ` Peter Stephenson
@ 2001-06-01 13:47                     ` Bart Schaefer
  2001-06-01 13:56                       ` Peter Stephenson
  2001-06-01 13:57                     ` Andrej Borsenkow
  1 sibling, 1 reply; 45+ messages in thread
From: Bart Schaefer @ 2001-06-01 13:47 UTC (permalink / raw)
  To: Peter Stephenson, Zsh hackers list

On Jun 1,  2:33pm, Peter Stephenson wrote:
} Subject: Re: zsh and autoconf-2.50
}
} I'm just putting in the finishing touches (I hope), so it would help if
} non-urgent patches could be kept out until everything's tagged.

Do we want 14578?

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com

Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net   


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 12:54                 ` Andrej Borsenkow
@ 2001-06-01 13:33                   ` Peter Stephenson
  2001-06-01 13:47                     ` Bart Schaefer
  2001-06-01 13:57                     ` Andrej Borsenkow
  0 siblings, 2 replies; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01 13:33 UTC (permalink / raw)
  To: Zsh hackers list

"Andrej Borsenkow" wrote:
> > > reads `there is an error declared by undefine: zsh-debug is
> > > undefined'.
> >
> 
> There are a dozen more. Moreover, half of parameters do use this undefine
> half do not. I believe, it is totally redundant - should I just remove them?

Gag.  OK, here's a full paranoid replacement just for now, instead of the
previous two attempts.  It produces an identical configure, which is all
I'm really worried about.  As soon as 4.0.1 is out of the way, configure.in
can be tidied up.  I'm quite happy for these to go then.

I'm just putting in the finishing touches (I hope), so it would help if
non-urgent patches could be kept out until everything's tagged.

Index: configure.in
===================================================================
RCS file: /cvsroot/zsh/zsh/configure.in,v
retrieving revision 1.58
diff -u -r1.58 configure.in
--- configure.in	2001/05/20 10:59:27	1.58
+++ configure.in	2001/06/01 13:29:48
@@ -52,7 +52,7 @@
 zsh_COMPILE_FLAGS($CPPFLAGS, $CFLAGS, $LDFLAGS, $LIBS)
 
 dnl Do you want to debug zsh?
-undefine([zsh-debug])dnl
+ifdef([zsh-debug],undefine([zsh-debug]))dnl
 AC_ARG_ENABLE(zsh-debug,
 [  --enable-zsh-debug         compile with debug code and debugger symbols],
 [if test x$enableval = xyes; then
@@ -60,7 +60,7 @@
 fi])
 
 dnl Do you want zsh memory allocation routines.
-undefine([zsh-mem])dnl
+ifdef([zsh-mem],undefine([zsh-mem]))dnl
 AC_ARG_ENABLE(zsh-mem,
 [  --enable-zsh-mem           compile with zsh memory allocation routines],
 [if test x$enableval = xyes; then
@@ -68,7 +68,7 @@
 fi])
 
 dnl Do you want to debug zsh memory allocation routines.
-undefine([zsh-mem-debug])dnl
+ifdef([zsh-mem-debug],undefine([zsh-mem-debug]))dnl
 AC_ARG_ENABLE(zsh-mem-debug,
 [  --enable-zsh-mem-debug     debug zsh memory allocation routines],
 [if test x$enableval = xyes; then
@@ -76,7 +76,7 @@
 fi])
 
 dnl Do you want to print warnings when errors in memory allocation.
-undefine([zsh-mem-warning])dnl
+ifdef([zsh-mem-warning],undefine([zsh-mem-warning]))dnl
 AC_ARG_ENABLE(zsh-mem-warning,
 [  --enable-zsh-mem-warning   print warnings for errors in memory allocation],
 [if test x$enableval = xyes; then
@@ -84,7 +84,7 @@
 fi])
 
 dnl Do you want to turn on error checking for free().
-undefine([zsh-secure-free])dnl
+ifdef([zsh-secure-free],undefine([zsh-secure-free]))dnl
 AC_ARG_ENABLE(zsh-secure-free,
 [  --enable-zsh-secure-free   turn on error checking for free()],
 [if test x$enableval = xyes; then
@@ -93,7 +93,7 @@
 
 dnl Do you want debugging information on internal hash tables.
 dnl This turns on the `hashinfo' builtin command.
-undefine([zsh-hash-debug])dnl
+ifdef([zsh-hash-debug],undefine([zsh-hash-debug]))dnl
 AC_ARG_ENABLE(zsh-hash-debug,
 [  --enable-zsh-hash-debug    turn on debugging of internal hash tables],
 [if test x$enableval = xyes; then
@@ -101,12 +101,12 @@
 fi])
 
 dnl Pathnames for global zsh scripts
-undefine([etcdir])dnl
+ifdef([etcdir],undefine([etcdir]))dnl
 AC_ARG_ENABLE(etcdir,
 [  --enable-etcdir=DIR        the default directory for global zsh scripts],
 [etcdir="$enableval"], [etcdir=/etc])
 
-undefine([zshenv])dnl
+ifdef([zshenv],undefine([zshenv]))dnl
 AC_ARG_ENABLE(zshenv,
 [  --enable-zshenv=FILE       the full pathname of the global zshenv script],
 [zshenv="$enableval"],
@@ -119,7 +119,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZSHENV, "$zshenv")
 fi
 
-undefine([zshrc])dnl
+ifdef([zshrc],undefine([zshrc]))dnl
 AC_ARG_ENABLE(zshrc,
 [  --enable-zshrc=FILE        the full pathname of the global zshrc script],
 [zshrc="$enableval"],
@@ -132,7 +132,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZSHRC, "$zshrc")
 fi
 
-undefine([zprofile])dnl
+ifdef([zprofile],undefine([zprofile]))dnl
 AC_ARG_ENABLE(zprofile,
 [  --enable-zprofile=FILE     the full pathname of the global zprofile script],
 [zprofile="$enableval"],
@@ -145,7 +145,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZPROFILE, "$zprofile")
 fi
 
-undefine([zlogin])dnl
+ifdef([zlogin],undefine([zlogin]))dnl
 AC_ARG_ENABLE(zlogin,
 [  --enable-zlogin=FILE       the full pathname of the global zlogin script],
 [zlogin="$enableval"],
@@ -158,7 +158,7 @@
   AC_DEFINE_UNQUOTED(GLOBAL_ZLOGIN, "$zlogin")
 fi
 
-undefine([zlogout])dnl
+ifdef([zlogout],undefine([zlogout]))dnl
 AC_ARG_ENABLE(zlogout,
 [  --enable-zlogout=FILE      the full pathname of the global zlogout script],
 [zlogout="$enableval"],
@@ -178,19 +178,19 @@
 AC_SUBST(zlogout)dnl
 
 dnl Do you want large file support, if available?
-undefine([lfs])dnl
+ifdef([lfs],undefine([lfs]))dnl
 AC_ARG_ENABLE(lfs,
 [  --disable-lfs              turn off support for large files],
 [lfs="$enableval"], [lfs=yes])
 
 dnl Do you want dynamically loaded binary modules.
-undefine([dynamic])dnl
+ifdef([dynamic],undefine([dynamic]))dnl
 AC_ARG_ENABLE(dynamic,
 [  --disable-dynamic          turn off dynamically loaded binary modules],
 [dynamic="$enableval"], [dynamic=yes])
 
 dnl Do you want to disable restricted on r* commands
-undefine([restricted-r])dnl
+ifdef([restricted-r],undefine([restricted-r]))dnl
 AC_ARG_ENABLE(restricted-r,
 [  --disable-restricted-r     turn off r* invocation for restricted shell],
 [if test x$enableval = xyes; then
@@ -213,7 +213,7 @@
 [  --enable-ansi2knr          translate source to K&R C before compiling],
 [ansi2knr="$enableval"], [ansi2knr=default])
 
-undefine([fndir])dnl
+ifdef([fndir],undefine([fndir]))dnl
 AC_ARG_ENABLE(fndir,
 [  --enable-fndir=DIR         the directory in which to install functions],
 dnl ${VERSION} to be determined at compile time.
@@ -223,7 +223,7 @@
   fndir="$enableval"
 fi], [fndir=${datadir}/${tzsh_name}/'${VERSION}'/functions])
 
-undefine([sitefndir])dnl
+ifdef([sitefndir],undefine([sitefndir]))dnl
 AC_ARG_ENABLE(sitefndir,
 [  --enable-site-fndir=DIR    same for site functions (not version specific)],
 [if test $enableval = yes; then
@@ -232,7 +232,7 @@
   sitefndir="$enableval"
 fi], [sitefndir=${datadir}/${tzsh_name}/site-functions])
 
-undefine([function_subdirs])
+ifdef([function_subdirs],undefine([function_subdirs]))
 AC_ARG_ENABLE(function-subdirs,
 [  --enable-function-subdirs  install functions in subdirectories])
 
@@ -248,7 +248,7 @@
 AC_SUBST(FUNCTIONS_SUBDIRS)dnl
 
 dnl Do you want maildir support?
-undefine([maildir_support])dnl
+ifdef([maildir_support],undefine([maildir_support]))dnl
 AC_ARG_ENABLE(maildir-support,
 [  --enable-maildir-support   enable maildir support in MAIL and MAILPATH],
 [if test x$enableval = xyes; then
@@ -256,7 +256,7 @@
 fi])
 
 dnl Do you want to set a maximum function depth?
-undefine([max_function_depth])dnl
+ifdef([max_function_depth],undefine([max_function_depth]))dnl
 AC_ARG_ENABLE(max-function-depth,
 [  --enable-max-function-depth=MAX   limit function depth to MAX],
 [if test x$enableval = xyes; then
@@ -419,7 +419,7 @@
 
 AC_MSG_CHECKING(what to set MAXJOB to)
 dnl Do you want to alter the maximum job table size?
-undefine([max_jobtable_size])dnl
+ifdef([max_jobtable_size],undefine([max_jobtable_size]))dnl
 AC_ARG_ENABLE(max-jobtable-size,
 [  --enable-max-jobtable-size=MAX    limit job table size to MAX],
 
-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-06-01  9:37               ` Peter Stephenson
  2001-06-01 12:27                 ` Clint Adams
@ 2001-06-01 12:54                 ` Andrej Borsenkow
  2001-06-01 13:33                   ` Peter Stephenson
  1 sibling, 1 reply; 45+ messages in thread
From: Andrej Borsenkow @ 2001-06-01 12:54 UTC (permalink / raw)
  To: Peter Stephenson, Zsh hackers list

> > reads `there is an error declared by undefine: zsh-debug is
> > undefined'.
>

There are a dozen more. Moreover, half of parameters do use this undefine
half do not. I believe, it is totally redundant - should I just remove them?

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01 12:27                 ` Clint Adams
@ 2001-06-01 12:45                   ` Peter Stephenson
  0 siblings, 0 replies; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01 12:45 UTC (permalink / raw)
  To: Zsh hackers list

Clint Adams wrote:
> > +ifdef([zsh-debug],,undefine([zsh-debug]))dnl
> 
> Is that not backwards?

Oh, you're expecting to work...

This can probably go if configure.in gets rewritten, but it should be
safe for now.

Index: configure.in
===================================================================
RCS file: /cvsroot/zsh/zsh/configure.in,v
retrieving revision 1.58
diff -u -r1.58 configure.in
--- configure.in	2001/05/20 10:59:27	1.58
+++ configure.in	2001/06/01 12:42:57
@@ -52,7 +52,7 @@
 zsh_COMPILE_FLAGS($CPPFLAGS, $CFLAGS, $LDFLAGS, $LIBS)
 
 dnl Do you want to debug zsh?
-undefine([zsh-debug])dnl
+ifdef([zsh-debug],undefine([zsh-debug]))dnl
 AC_ARG_ENABLE(zsh-debug,
 [  --enable-zsh-debug         compile with debug code and debugger symbols],
 [if test x$enableval = xyes; then

-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01  9:37               ` Peter Stephenson
@ 2001-06-01 12:27                 ` Clint Adams
  2001-06-01 12:45                   ` Peter Stephenson
  2001-06-01 12:54                 ` Andrej Borsenkow
  1 sibling, 1 reply; 45+ messages in thread
From: Clint Adams @ 2001-06-01 12:27 UTC (permalink / raw)
  To: Peter Stephenson; +Cc: Zsh hackers list

> +ifdef([zsh-debug],,undefine([zsh-debug]))dnl

Is that not backwards?


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-06-01  8:55               ` Andrej Borsenkow
@ 2001-06-01 11:00                 ` Akim Demaille
  2001-06-01 16:48                 ` Tim Van Holder
  1 sibling, 0 replies; 45+ messages in thread
From: Akim Demaille @ 2001-06-01 11:00 UTC (permalink / raw)
  To: Andrej Borsenkow; +Cc: zsh-workers, Au List

>>>>> "Andrej" == Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru> writes:

Andrej> I have started with updating and am staring at this with some
Andrej> surprise. Why do we need this undefine at all? Is not
Andrej> AC_ARG_ENABLE([zsh-debug],...)  enough?

Andrej> Akim?

I have no idea why you had this undefine.  In addition it's an
``impure'' macro name, i.e., you can only use this macro via defn, or
indir, but not as is.

To me it is useless (but I have not read your configure.in).  autoconf
thinks its useless too as it complains about undefining something not
defined.



I believe you, zsh people, should find some simplifications to your
configure.in.  In particular, note that you no longer have to perform
tricks to have AC_OUTPUT work on builddir/srcdir files, it's now
built in Autoconf.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31 18:01             ` Akim Demaille
  2001-06-01  8:55               ` Andrej Borsenkow
@ 2001-06-01  9:37               ` Peter Stephenson
  2001-06-01 12:27                 ` Clint Adams
  2001-06-01 12:54                 ` Andrej Borsenkow
  1 sibling, 2 replies; 45+ messages in thread
From: Peter Stephenson @ 2001-06-01  9:37 UTC (permalink / raw)
  To: Zsh hackers list

Akim Demaille wrote:
> | The offending construct is here.
> | 
> | undefine([zsh-debug])dnl
> | AC_ARG_ENABLE(zsh-debug,
> | [  --enable-zsh-debug         compile with debug code and debugger symbols]
> ,
> | [if test x$enableval = xyes; then
> |   AC_DEFINE(DEBUG)
> | fi])
> 
> This 
> 
> | configure.in:55: error: undefine: undefined: zsh-debug
> 
> reads `there is an error declared by undefine: zsh-debug is
> undefined'.

Index: configure.in
===================================================================
RCS file: /cvsroot/zsh/zsh/configure.in,v
retrieving revision 1.58
diff -u -r1.58 configure.in
--- configure.in	2001/05/20 10:59:27	1.58
+++ configure.in	2001/06/01 09:35:43
@@ -52,7 +52,7 @@
 zsh_COMPILE_FLAGS($CPPFLAGS, $CFLAGS, $LDFLAGS, $LIBS)
 
 dnl Do you want to debug zsh?
-undefine([zsh-debug])dnl
+ifdef([zsh-debug],,undefine([zsh-debug]))dnl
 AC_ARG_ENABLE(zsh-debug,
 [  --enable-zsh-debug         compile with debug code and debugger symbols],
 [if test x$enableval = xyes; then

-- 
Peter Stephenson <pws@csr.com>                  Software Engineer
CSR Ltd., Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK                          Tel: +44 (0)1223 392070


**********************************************************************
The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
prohibited.  
If you received this in error, please contact the sender and 
delete the material from any computer.
**********************************************************************


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-05-31 18:01             ` Akim Demaille
@ 2001-06-01  8:55               ` Andrej Borsenkow
  2001-06-01 11:00                 ` Akim Demaille
  2001-06-01 16:48                 ` Tim Van Holder
  2001-06-01  9:37               ` Peter Stephenson
  1 sibling, 2 replies; 45+ messages in thread
From: Andrej Borsenkow @ 2001-06-01  8:55 UTC (permalink / raw)
  To: Akim Demaille; +Cc: zsh-workers, Au List

> |
> | % autoconf2.50
> | configure.in:55: error: undefine: undefined: zsh-debug
> | configure.in:55: the top level
> |
> | The offending construct is here.
> |
> | undefine([zsh-debug])dnl
> | AC_ARG_ENABLE(zsh-debug,
> | [  --enable-zsh-debug         compile with debug code and
> debugger symbols],
> | [if test x$enableval = xyes; then
> |   AC_DEFINE(DEBUG)
> | fi])
>

I have started with updating and am staring at this with some surprise. Why
do we need this undefine at all? Is not AC_ARG_ENABLE([zsh-debug],...)
enough?

Akim?

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31 17:51           ` Clint Adams
@ 2001-05-31 18:01             ` Akim Demaille
  2001-06-01  8:55               ` Andrej Borsenkow
  2001-06-01  9:37               ` Peter Stephenson
  0 siblings, 2 replies; 45+ messages in thread
From: Akim Demaille @ 2001-05-31 18:01 UTC (permalink / raw)
  To: Clint Adams; +Cc: Bart Schaefer, Jos Backus, zsh-workers, Au List


| > So yes, define and undefine are undefined (in M4sh and M4sugar), but
| > no, you should not know about this (in Autoconf), you should not be
| > aware of it.
| > 
| > What happens?
| 
| % autoconf2.50
| configure.in:55: error: undefine: undefined: zsh-debug
| configure.in:55: the top level
| 
| The offending construct is here.
| 
| undefine([zsh-debug])dnl
| AC_ARG_ENABLE(zsh-debug,
| [  --enable-zsh-debug         compile with debug code and debugger symbols],
| [if test x$enableval = xyes; then
|   AC_DEFINE(DEBUG)
| fi])

This 

| configure.in:55: error: undefine: undefined: zsh-debug

reads `there is an error declared by undefine: zsh-debug is
undefined'.

I agree the original `undefine' from M4 does not do that.  I agree the
message should be

| configure.in:55: error: undefine: undefined macro: zsh-debug

But by experience I know we need to be stricter to catch asap bad
bugs, so I definitely prefer the 2.50 behavior.  I'd use
ifdef(,,undefine()).


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31 17:34         ` Akim Demaille
@ 2001-05-31 17:51           ` Clint Adams
  2001-05-31 18:01             ` Akim Demaille
  0 siblings, 1 reply; 45+ messages in thread
From: Clint Adams @ 2001-05-31 17:51 UTC (permalink / raw)
  To: Akim Demaille; +Cc: Bart Schaefer, Jos Backus, zsh-workers, Au List

> So yes, define and undefine are undefined (in M4sh and M4sugar), but
> no, you should not know about this (in Autoconf), you should not be
> aware of it.
> 
> What happens?

% autoconf2.50
configure.in:55: error: undefine: undefined: zsh-debug
configure.in:55: the top level

The offending construct is here.

undefine([zsh-debug])dnl
AC_ARG_ENABLE(zsh-debug,
[  --enable-zsh-debug         compile with debug code and debugger symbols],
[if test x$enableval = xyes; then
  AC_DEFINE(DEBUG)
fi])


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31 13:40       ` Clint Adams
  2001-05-31 13:53         ` Oliver Kiddle
@ 2001-05-31 17:34         ` Akim Demaille
  2001-05-31 17:51           ` Clint Adams
  1 sibling, 1 reply; 45+ messages in thread
From: Akim Demaille @ 2001-05-31 17:34 UTC (permalink / raw)
  To: Clint Adams; +Cc: Bart Schaefer, Jos Backus, zsh-workers, Autoconf List

>>>>> "Clint" == Clint Adams <clint@zsh.org> writes:

>> > Yes, autoconf 2.50 undefines `define' and `undefine'.
>> 
>> Whatever for?

Clint> It "renames" them to m4_define and m4_undefine.  I don't know
Clint> why.  Akim, can you enlighten us?

Err, this is both right and wrong :)

Autoconf is on top of M4sh, a pure sh layer, itself on top of M4sugar,
a pure M4 layer.  It is today considered bad design to have kept some
primitive such as define etc. out of any pseudo name space.  That's
why M4sugar moves all the builtins (but dnl) into the `m4_' pseudo
name space.

Nevertheless, for backward compatibility, autoconf.m4 restores these:

     # We discourage the use of the non prefixed macro names: M4sugar maps
     # all the builtins into `m4_'.  Autoconf has been converted to these
     # names too.  But users may still depend upon these, so reestablish
     # them.
     
     m4_copy_unm4([m4_builtin])
     m4_copy_unm4([m4_changequote])
     m4_copy_unm4([m4_decr])
     m4_copy_unm4([m4_define])
     m4_copy_unm4([m4_defn])
     m4_copy_unm4([m4_divert])
     m4_copy_unm4([m4_divnum])
     m4_copy_unm4([m4_errprint])
     m4_copy_unm4([m4_esyscmd])
     m4_copy_unm4([m4_ifdef])
     m4_copy([m4_if], [ifelse])
     m4_copy_unm4([m4_incr])
     m4_copy_unm4([m4_index])
     m4_copy_unm4([m4_indir])
     m4_copy_unm4([m4_len])
     m4_copy_unm4([m4_patsubst])
     m4_copy_unm4([m4_popdef])
     m4_copy_unm4([m4_pushdef])
     m4_copy_unm4([m4_regexp])
     m4_copy_unm4([m4_sinclude])
     m4_copy_unm4([m4_syscmd])
     m4_copy_unm4([m4_sysval])
     m4_copy_unm4([m4_traceoff])
     m4_copy_unm4([m4_traceon])
     m4_copy_unm4([m4_translit])
     m4_copy_unm4([m4_undefine])
     m4_copy_unm4([m4_undivert])

So yes, define and undefine are undefined (in M4sh and M4sugar), but
no, you should not know about this (in Autoconf), you should not be
aware of it.

What happens?


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31 13:53         ` Oliver Kiddle
@ 2001-05-31 14:24           ` Clint Adams
  0 siblings, 0 replies; 45+ messages in thread
From: Clint Adams @ 2001-05-31 14:24 UTC (permalink / raw)
  To: Oliver Kiddle; +Cc: zsh-workers

> Is it using the --prefix-builtins (-P) option to m4 for this then? If
> so, that sounds quite sensible because it can be quite annoying in m4
> having to remember to quote any builtins. Anyway, that sounds like it
> will be a fairly trivial fix to configure.in when we come to switch to
> autoconf 2.5.

No, this is what it does:

## ------------------------------- ##
## 1. Simulate --prefix-builtins.  ##
## ------------------------------- ##

# m4_define
# m4_defn
# m4_undefine
define([m4_define],   defn([define]))
define([m4_defn],     defn([defn]))
define([m4_undefine], defn([undefine]))

m4_undefine([define])
m4_undefine([defn])
m4_undefine([undefine])

> Why out of interest? What would autoconf 2.5 have it replaced by then?

configure.ac is the new canonical name.  Something about "configure.in"
being too vague, I think.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* RE: zsh and autoconf-2.50
  2001-05-31 13:44   ` Clint Adams
@ 2001-05-31 13:59     ` Andrej Borsenkow
  0 siblings, 0 replies; 45+ messages in thread
From: Andrej Borsenkow @ 2001-05-31 13:59 UTC (permalink / raw)
  To: Zsh workers list

>
> > I wait for 4.0.1 release before starting hacking configure.in.
>
> We might want to send configure.in to the Attic and name it configure.ac
> after 4.0 gets branched off.
>

Yes, that is what I intended to do. Still, it may be impossible to maintain
both configure.in and configure.ac so I prefer to not disturb things until
release.

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31 13:40       ` Clint Adams
@ 2001-05-31 13:53         ` Oliver Kiddle
  2001-05-31 14:24           ` Clint Adams
  2001-05-31 17:34         ` Akim Demaille
  1 sibling, 1 reply; 45+ messages in thread
From: Oliver Kiddle @ 2001-05-31 13:53 UTC (permalink / raw)
  To: zsh-workers

Clint Adams wrote:

> It "renames" them to m4_define and m4_undefine.  I don't know why.
> Akim, can you enlighten us?

Is it using the --prefix-builtins (-P) option to m4 for this then? If
so, that sounds quite sensible because it can be quite annoying in m4
having to remember to quote any builtins. Anyway, that sounds like it
will be a fairly trivial fix to configure.in when we come to switch to
autoconf 2.5.

> We might want to send configure.in to the Attic and name it configure.ac
> after 4.0 gets branched off.

Why out of interest? What would autoconf 2.5 have it replaced by then?

Oliver


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  8:25 ` Andrej Borsenkow
@ 2001-05-31 13:44   ` Clint Adams
  2001-05-31 13:59     ` Andrej Borsenkow
  0 siblings, 1 reply; 45+ messages in thread
From: Clint Adams @ 2001-05-31 13:44 UTC (permalink / raw)
  To: Andrej Borsenkow; +Cc: Jos Backus, Zsh workers list

> It is pretty useless as of now (BTW 2.50 is known to break some packages).

Mainly those that use autoconf-internal functions.

> I wait for 4.0.1 release before starting hacking configure.in.

We might want to send configure.in to the Attic and name it configure.ac
after 4.0 gets branched off.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  0:08     ` Bart Schaefer
@ 2001-05-31 13:40       ` Clint Adams
  2001-05-31 13:53         ` Oliver Kiddle
  2001-05-31 17:34         ` Akim Demaille
  0 siblings, 2 replies; 45+ messages in thread
From: Clint Adams @ 2001-05-31 13:40 UTC (permalink / raw)
  To: Bart Schaefer; +Cc: Jos Backus, zsh-workers, akim

> > Yes, autoconf 2.50 undefines `define' and `undefine'.
> 
> Whatever for?

It "renames" them to m4_define and m4_undefine.  I don't know why.
Akim, can you enlighten us?


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  7:22             ` Bart Schaefer
@ 2001-05-31  9:34               ` Sven Wischnowsky
  0 siblings, 0 replies; 45+ messages in thread
From: Sven Wischnowsky @ 2001-05-31  9:34 UTC (permalink / raw)
  To: zsh-workers

Bart Schaefer wrote:

> On May 30, 11:22pm, Jos Backus wrote:
> }
> } I have attached the Purify results of a ``gmake check'', hopefully that's OK
> 
> Grepping "leaked" from all those files shows a whopping 3 bytes lost from 
> parse_cadef() during the entire testing process.  I'd say we're doing
> pretty well.  Thanks, Josh.

Yes, thanks.

That memory leak happened with a _arguments-spec of the form `-+foo'.

> There are a few array over-reads:
> 
> purify.zsh.8428.out:ABR: Array bounds read:
> purify.zsh.8428.out-  * This is occurring while in:
> purify.zsh.8428.out-    parse_class    [complete.c:405]
> purify.zsh.8428.out-    parse_pattern  [complete.c:358]
> --
> purify.zsh.8428.out:ABR: Array bounds read:
> purify.zsh.8428.out-  * This is occurring while in:
> purify.zsh.8428.out-    parse_pattern  [complete.c:359]
> purify.zsh.8428.out-    parse_cmatcher [complete.c:298]

These two are actually the same.  parse_pattern() uses the out-of-bound
pointer returned by parse_class().  The test in the latter was wrong for
badly formed classes like "{0-".

> purify.zsh.8841.out:ABR: Array bounds read:
> purify.zsh.8841.out-  * This is occurring while in:
> purify.zsh.8841.out-    get_cadef      [computil.c:1032]
> purify.zsh.8841.out-    bin_comparguments [computil.c:1789]

Oops, better first test the counter and then `*p'.

> No over-writes.  Also a few uninitialized reads, all in the same place:
> 
> purify.zsh.7241.out:UMR: Uninitialized memory read:
> purify.zsh.7241.out-  * This is occurring while in:
> purify.zsh.7241.out-    paramsubst     [subst.c:1183]
> purify.zsh.7241.out-    stringsubst    [subst.c:129]
>
> ...
> 
> The uninitialized memory is deep in a zsh heap block, so the data about
> where it was allocated doesn't help at all.

That line is:

		fwidth = v->pm->ct ? v->pm->ct : strlen(val);

So I guess someone was heap-allocating a param struct without fully
initialising it.

The patch contains some hunks for defensive programming for this.

And there was another leak:

purify.zsh.7649.out:MLK: 5 bytes leaked at 0x39dc38
  * This memory was allocated from:
	malloc         [rtlib.o]
	zalloc         [mem.c:490]
	ztrdup         [string.c:52]
	addvars        [exec.c:1536]

It's the line that ztrdup()s a string before calling the assignment
function, so I guess one of the set-functions doesn't free the string it
gets when not using it.  I found only one such functions, the one for
$USERNAME, but that isn't assigned in the test suite.  Hm.


Bye
  Sven

Index: Src/params.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/params.c,v
retrieving revision 1.47
diff -u -r1.47 params.c
--- Src/params.c	2001/05/20 09:20:46	1.47
+++ Src/params.c	2001/05/31 09:29:17
@@ -704,7 +704,7 @@
 	if (isset(ALLEXPORT) && !(flags & PM_HASHELEM))
 	    flags |= PM_EXPORTED;
     } else {
-	pm = (Param) zhalloc(sizeof *pm);
+	pm = (Param) hcalloc(sizeof *pm);
 	pm->nam = nulstring;
     }
     pm->flags = flags & ~PM_LOCAL;
@@ -727,6 +727,7 @@
      * with sets.?fn() usage).
      */
     tpm->flags = pm->flags;
+    tpm->ct = pm->ct;
     if (!toplevel)
 	tpm->flags &= ~PM_SPECIAL;
     switch (PM_TYPE(pm->flags)) {
@@ -2551,6 +2552,7 @@
 	}
     }
 #endif /* HAVE_SETUID && HAVE_GETPWNAM */
+    zsfree(x);
 }
 
 /* Function to get value for special parameter `UID' */
Index: Src/Modules/parameter.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Modules/parameter.c,v
retrieving revision 1.19
diff -u -r1.19 parameter.c
--- Src/Modules/parameter.c	2000/11/02 08:12:45	1.19
+++ Src/Modules/parameter.c	2001/05/31 09:29:17
@@ -60,6 +60,7 @@
     pm->sets.hfn = hashsetfn;
     pm->unsetfn = stdunsetfn;
     pm->u.hash = ht = newhashtable(0, name, NULL);
+    pm->ct = 0;
 
     ht->hash        = hasher;
     ht->emptytable  = (TableFunc) shempty;
Index: Src/Zle/complete.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/complete.c,v
retrieving revision 1.15
diff -u -r1.15 complete.c
--- Src/Zle/complete.c	2001/01/11 10:06:50	1.15
+++ Src/Zle/complete.c	2001/05/31 09:29:18
@@ -403,7 +403,7 @@
 
     n = !n;
     while (*s && (k || *s != e)) {
-	if (s[1] == '-' && s[2] != e) {
+	if (s[1] == '-' && s[2] && s[2] != e) {
 	    /* a run of characters */
 	    for (j = (int) *s; j <= (int) s[2]; j++)
 		p->tab[j] = (eq ? i++ : n);
Index: Src/Zle/computil.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/computil.c,v
retrieving revision 1.55
diff -u -r1.55 computil.c
--- Src/Zle/computil.c	2001/05/10 08:52:31	1.55
+++ Src/Zle/computil.c	2001/05/31 09:29:19
@@ -819,8 +819,9 @@
 	    if (!multi) {
 		if (!xor) {
 		    xor = (char **) zalloc(2 * sizeof(char *));
-		    xor[1] = NULL;
+		    xor[0] = xor[1] = NULL;
 		}
+                zsfree(xor[xnum]);
 		xor[xnum] = ztrdup(rembslashcolon(name));
 	    }
 	    if (c == ':') {
@@ -1029,7 +1030,7 @@
     Cadef *p, *min, new;
     int i, na = arrlen(args);
 
-    for (i = MAX_CACACHE, p = cadef_cache, min = NULL; *p && i; p++, i--)
+    for (i = MAX_CACACHE, p = cadef_cache, min = NULL; i && *p; p++, i--)
 	if (*p && na == (*p)->ndefs && arrcmp(args, (*p)->defs)) {
 	    (*p)->lastt = time(0);
 
Index: Src/Zle/zleparameter.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/zleparameter.c,v
retrieving revision 1.1.1.10
diff -u -r1.1.1.10 zleparameter.c
--- Src/Zle/zleparameter.c	2000/02/23 15:18:49	1.1.1.10
+++ Src/Zle/zleparameter.c	2001/05/31 09:29:19
@@ -55,6 +55,7 @@
     pm->sets.hfn = hashsetfn;
     pm->unsetfn = stdunsetfn;
     pm->u.hash = ht = newhashtable(0, name, NULL);
+    pm->ct = 0;
 
     ht->hash        = hasher;
     ht->emptytable  = (TableFunc) shempty;

-- 
Sven Wischnowsky                         wischnow@informatik.hu-berlin.de


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 21:48 Jos Backus
  2001-05-30 22:02 ` Bart Schaefer
  2001-05-30 22:34 ` Clint Adams
@ 2001-05-31  8:25 ` Andrej Borsenkow
  2001-05-31 13:44   ` Clint Adams
  2 siblings, 1 reply; 45+ messages in thread
From: Andrej Borsenkow @ 2001-05-31  8:25 UTC (permalink / raw)
  To: Jos Backus; +Cc: Zsh workers list


It is pretty useless as of now (BTW 2.50 is known to break some packages).
I wait for 4.0.1 release before starting hacking configure.in.

-andrej


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  6:22           ` Jos Backus
@ 2001-05-31  7:22             ` Bart Schaefer
  2001-05-31  9:34               ` Sven Wischnowsky
  0 siblings, 1 reply; 45+ messages in thread
From: Bart Schaefer @ 2001-05-31  7:22 UTC (permalink / raw)
  To: Jos Backus; +Cc: zsh-workers

On May 30, 11:22pm, Jos Backus wrote:
}
} I have attached the Purify results of a ``gmake check'', hopefully that's OK

Grepping "leaked" from all those files shows a whopping 3 bytes lost from 
parse_cadef() during the entire testing process.  I'd say we're doing
pretty well.  Thanks, Josh.

There are a few array over-reads:

purify.zsh.8428.out:ABR: Array bounds read:
purify.zsh.8428.out-  * This is occurring while in:
purify.zsh.8428.out-    parse_class    [complete.c:405]
purify.zsh.8428.out-    parse_pattern  [complete.c:358]
--
purify.zsh.8428.out:ABR: Array bounds read:
purify.zsh.8428.out-  * This is occurring while in:
purify.zsh.8428.out-    parse_pattern  [complete.c:359]
purify.zsh.8428.out-    parse_cmatcher [complete.c:298]
--
purify.zsh.8841.out:ABR: Array bounds read:
purify.zsh.8841.out-  * This is occurring while in:
purify.zsh.8841.out-    get_cadef      [computil.c:1032]
purify.zsh.8841.out-    bin_comparguments [computil.c:1789]

No over-writes.  Also a few uninitialized reads, all in the same place:

purify.zsh.7241.out:UMR: Uninitialized memory read:
purify.zsh.7241.out-  * This is occurring while in:
purify.zsh.7241.out-    paramsubst     [subst.c:1183]
purify.zsh.7241.out-    stringsubst    [subst.c:129]
--
purify.zsh.7241.out:UMR: Uninitialized memory read:
purify.zsh.7241.out-  * This is occurring while in:
purify.zsh.7241.out-    paramsubst     [subst.c:1183]
purify.zsh.7241.out-    stringsubst    [subst.c:129]
--
purify.zsh.8350.out:UMR: Uninitialized memory read:
purify.zsh.8350.out-  * This is occurring while in:
purify.zsh.8350.out-    paramsubst     [subst.c:1183]
purify.zsh.8350.out-    stringsubst    [subst.c:129]

The uninitialized memory is deep in a zsh heap block, so the data about
where it was allocated doesn't help at all.

If there's anything else useful in there, it was lost in all the spew about
file descriptors being opened and duplicated.

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com

Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net   


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  4:52         ` Bart Schaefer
@ 2001-05-31  6:22           ` Jos Backus
  2001-05-31  7:22             ` Bart Schaefer
  0 siblings, 1 reply; 45+ messages in thread
From: Jos Backus @ 2001-05-31  6:22 UTC (permalink / raw)
  To: Bart Schaefer; +Cc: zsh-workers

[-- Attachment #1: Type: text/plain, Size: 1025 bytes --]

On Thu, May 31, 2001 at 04:51:50AM +0000, Bart Schaefer wrote:
> You really can't use purify very well on a program that does its own
> dynamic loading.  You will need --disable-dynamic.

That's what I thought; thanks for confirming this.
 
> Have you tried reading the INSTALL file?

I have now, sorry :-/

> There's a large section titled "Adding and removing modules".  The short
> answer is that you edit the config.modules file and change the values  of
> `link' and `auto' on the line for the zpty module to be `static' and `no'
> respectively.

Got it, thanks.

I have attached the Purify results of a ``gmake check'', hopefully that's OK
(it's not that big).  Please let me know if there is anything else I can do.

-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;

[-- Attachment #2: zsh-purify.tar.gz --]
[-- Type: application/x-tar-gz, Size: 8108 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  1:15       ` Jos Backus
@ 2001-05-31  4:52         ` Bart Schaefer
  2001-05-31  6:22           ` Jos Backus
  0 siblings, 1 reply; 45+ messages in thread
From: Bart Schaefer @ 2001-05-31  4:52 UTC (permalink / raw)
  To: Jos Backus; +Cc: zsh-workers

On May 30,  6:15pm, Jos Backus wrote:
} Subject: Re: zsh and autoconf-2.50
}
} OK, I have to get it built first without the shell coredumping, which
} it wasn't doing earlier when I built it used --disable-dynamic

You really can't use purify very well on a program that does its own
dynamic loading.  You will need --disable-dynamic.

} but then the zpty tests failed during ``gmake check''. I guess I may
} have to go back to using --disable-dynamic and force zpty to be loaded
} statically (somehow).

Have you tried reading the INSTALL file?  There's a large section titled
"Adding and removing modules".  The short answer is that you edit the
config.modules file and change the values  of `link' and `auto' on the
line for the zpty module to be `static' and `no' respectively.

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com

Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net   


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-31  0:12     ` Bart Schaefer
@ 2001-05-31  1:15       ` Jos Backus
  2001-05-31  4:52         ` Bart Schaefer
  0 siblings, 1 reply; 45+ messages in thread
From: Jos Backus @ 2001-05-31  1:15 UTC (permalink / raw)
  To: Bart Schaefer; +Cc: zsh-workers

On Wed, May 30, 2001 at 05:12:11PM -0700, Bart Schaefer wrote:
> "make check", but it runs several sub-shells, some of them on zpty terminals,
> so it may be hard to consolidate the purify output sensibly.

I'm using

    PURIFYOPTIONS="-log-file='purify.%v.%p.out' -chain-length=20"

which causes each shell to get its own log file. That should make things
easier.

> If you distill it down a bit first, you can send it to zsh-workers.

OK, I have to get it built first without the shell coredumping, which it
wasn't doing earlier when I built it used --disable-dynamic, but then the zpty
tests failed during ``gmake check''. I guess I may have to go back to using
--disable-dynamic and force zpty to be loaded statically (somehow).

This is what I see after

    ./configure --enable-zsh-debug
    gmake
    gmake install

taiko:/depot/src/zsh-4.0.1% Src/zsh
Purify 5.3 Solaris 2 (32-bit), Copyright (C) 1992-2001 Rational Software Corp. All rights reserved. 
Instrumenting: parameter.so Done.
Purify 5.3 Solaris 2 (32-bit), Copyright (C) 1992-2001 Rational Software Corp. All rights reserved. 
Instrumenting: zle.so Done.
Purify 5.3 Solaris 2 (32-bit), Copyright (C) 1992-2001 Rational Software Corp. All rights reserved. 
Instrumenting: complete.so Done.
Purify 5.3 Solaris 2 (32-bit), Copyright (C) 1992-2001 Rational Software Corp. All rights reserved. 
Instrumenting: zutil.so Done.
zsh: segmentation fault (core dumped)  Src/zsh
taiko:/depot/src/zsh-4.0.1% gdb Src/zsh core
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.7"...
Core was generated by `Src/zsh'.
Program terminated with signal 11, Segmentation Fault.
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/lib32/libpure_solaris2_init.so.1...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/lib32/libpure_solaris2_init.so.1
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libsocket.so_pure_p3_c0_530_57_32_56988...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libsocket.so_pure_p3_c0_530_57_32_56988
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libdl.so.1_pure_p3_c0_530_57_32_4572...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libdl.so.1_pure_p3_c0_530_57_32_4572
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libnsl.so_pure_p3_c0_530_57_32_831560...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libnsl.so_pure_p3_c0_530_57_32_831560
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libcurses.so.1_pure_p3_c0_530_57_32_459136...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libcurses.so.1_pure_p3_c0_530_57_32_459136
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libm.so.1_pure_p3_c0_530_57_32_106368...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libm.so.1_pure_p3_c0_530_57_32_106368
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libc.so.1_pure_p3_c0_530_57_32_1115336...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libc.so.1_pure_p3_c0_530_57_32_1115336
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/lib32/libinternal_stubs.so.1...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/lib32/libinternal_stubs.so.1
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libnsl.so.1_pure_p3_c0_530_57_32_831560...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libnsl.so.1_pure_p3_c0_530_57_32_831560
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libmp.so.2_pure_p3_c0_530_57_32_19876...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libmp.so.2_pure_p3_c0_530_57_32_19876
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/platform/SUNW,UltraAX-MP/lib/libc_psr.so.1_pure_p3_c0_530_57_32...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/platform/SUNW,UltraAX-MP/lib/libc_psr.so.1_pure_p3_c0_530_57_32
Reading symbols from /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/parameter.so_pure_p3_c0_530_57_32...done.
Loaded symbols for /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/parameter.so_pure_p3_c0_530_57_32
Reading symbols from /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libsocket.so.1_pure_p3_c0_530_57_32_56988...done.
Loaded symbols for /depot/pkg/rational/releases/purify-5.3-solaris2/cache/usr/lib/libsocket.so.1_pure_p3_c0_530_57_32_56988
Reading symbols from /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/zle.so_pure_p3_c0_530_57_32...done.
Loaded symbols for /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/zle.so_pure_p3_c0_530_57_32
re_p3_c0_530_57_32...done.
Loaded symbols for /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/complete.so_pure_p3_c0_530_57_32
Reading symbols from /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/zutil.so_pure_p3_c0_530_57_32...done.
Loaded symbols for /depot/pkg/zsh-4.0.1/lib/zsh/4.0.1-pre-5/zsh/zutil.so_pure_p3_c0_530_57_32
#0  0x69040 in _p888static ()
(gdb) bt
#0  0x69040 in _p888static ()
#1  0x48718 in pure_signal_handler_wrapper ()
#2  0x66208 in pure_sigtramp ()
#3  0x6e51c in execbuiltin (args=0x1f4df8, bn=0xfe4ed754) at builtin.c:367
#4  0xa40e8 in execcmd (state=0xffbeee30, input=0, output=0, how=2, last1=2)
    at exec.c:2287
#5  0x9c25c in execpline2 (state=0xffbeee30, pcode=31299, how=2, input=0, 
    output=0, last1=0) at exec.c:1192
#6  0x9a47c in execpline (state=0xffbeee30, slcode=7202, how=2, last1=0)
    at exec.c:982
#7  0x99298 in execlist (state=0xffbeee30, dont_change_job=1, exiting=0)
    at exec.c:833
#8  0xf91d0 in execif (state=0xffbeee30, do_exec=0) at loop.c:469
#9  0xa3b2c in execcmd (state=0xffbeee30, input=0, output=0, how=2, last1=2)
    at exec.c:2234
#10 0x9c25c in execpline2 (state=0xffbeee30, pcode=31235, how=2, input=0, 
    output=0, last1=0) at exec.c:1192
#11 0x9a47c in execpline (state=0xffbeee30, slcode=29698, how=2, last1=0)
    at exec.c:982
#12 0x991ec in execlist (state=0xffbeee30, dont_change_job=1, exiting=0)
    at exec.c:826
#13 0x98984 in execode (p=0x1e1500, dont_change_job=1, exiting=0) at exec.c:729
#14 0xaa170 in execautofn (state=0xffbef268, do_exec=0) at exec.c:3219
#15 0xa3b2c in execcmd (state=0xffbef268, input=0, output=0, how=18, last1=2)
    at exec.c:2234
#16 0x9c25c in execpline2 (state=0xffbef268, pcode=3, how=18, input=0, 
    output=0, last1=0) at exec.c:1192
#17 0x9a47c in execpline (state=0xffbef268, slcode=3074, how=18, last1=0)
    at exec.c:982
#18 0x991ec in execlist (state=0xffbef268, dont_change_job=1, exiting=0)
    at exec.c:826
#19 0x98984 in execode (p=0x1e9bb8, dont_change_job=1, exiting=0) at exec.c:729
#20 0xab768 in runshfunc (prog=0x1e9bb8, wrap=0x0, name=0x1f41f0 "compinit")
    at exec.c:3449
#21 0xab078 in doshfunc (name=0x1fa828 "compinit", prog=0x1e9bb8, 
    doshargs=0x1f41b8, flags=8704, noreturnval=0) at exec.c:3382
#22 0xa9f74 in execshfunc (shf=0x1fe488, args=0x1f41b8) at exec.c:3191
#23 0xa3f5c in execcmd (state=0xffbef868, input=0, output=0, how=18, last1=2)
    at exec.c:2276
#24 0x9c25c in execpline2 (state=0xffbef868, pcode=323, how=18, input=0, 
    output=0, last1=0) at exec.c:1192
#25 0x9a47c in execpline (state=0xffbef868, slcode=3074, how=18, last1=0)
    at exec.c:982
#26 0x991ec in execlist (state=0xffbef868, dont_change_job=0, exiting=0)
    at exec.c:826
#27 0x98984 in execode (p=0x1f4170, dont_change_job=0, exiting=0) at exec.c:729
#28 0xd5b24 in loop (toplevel=0, justonce=0) at init.c:160
#29 0xd9ea8 in source (s=0xffbefa18 "/depot-common/.zshrc") at init.c:999
#30 0xda674 in sourcehome (s=0x19f658 ".zshrc") at init.c:1044
#31 0xd96c8 in run_init_scripts () at init.c:908
#32 0xdb5f8 in zsh_main (argc=1, argv=0xffbefc44) at init.c:1204
#33 0x6ce20 in main (argc=1, argv=0xffbefc44) at ./main.c:37
(gdb) 

> By the way, folks, reminder again:  It's <zsh-workers@sunsite.dk> now (no
> "auc") so please update your aliases/addressbooks/etc.
 
Oops. The X-Mailing-List was throwing me off.

-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 23:50   ` Jos Backus
@ 2001-05-31  0:12     ` Bart Schaefer
  2001-05-31  1:15       ` Jos Backus
  0 siblings, 1 reply; 45+ messages in thread
From: Bart Schaefer @ 2001-05-31  0:12 UTC (permalink / raw)
  To: Jos Backus; +Cc: zsh-workers

On May 30,  4:50pm, Jos Backus wrote:
> 
> What is a goodway to stress-test the shell (``make test''?)

"make check", but it runs several sub-shells, some of them on zpty terminals,
so it may be hard to consolidate the purify output sensibly.

> and where do I send the Purify output? Is anybody interested?

If you distill it down a bit first, you can send it to zsh-workers.

By the way, folks, reminder again:  It's <zsh-workers@sunsite.dk> now (no
"auc") so please update your aliases/addressbooks/etc.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 22:40   ` Clint Adams
@ 2001-05-31  0:08     ` Bart Schaefer
  2001-05-31 13:40       ` Clint Adams
  0 siblings, 1 reply; 45+ messages in thread
From: Bart Schaefer @ 2001-05-31  0:08 UTC (permalink / raw)
  To: Clint Adams; +Cc: Jos Backus, zsh-workers

On May 30,  6:40pm, Clint Adams wrote:
> 
> Yes, autoconf 2.50 undefines `define' and `undefine'.

Whatever for?


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 23:23 ` Wayne Davison
@ 2001-05-30 23:50   ` Jos Backus
  2001-05-31  0:12     ` Bart Schaefer
  0 siblings, 1 reply; 45+ messages in thread
From: Jos Backus @ 2001-05-30 23:50 UTC (permalink / raw)
  To: Wayne Davison; +Cc: zsh-workers

On Wed, May 30, 2001 at 04:22:46PM -0700, Wayne Davison wrote:
> When you don't have yodl installed (and you don't have copies of the .1
> man pages copied over from somewhere else), this is how make exits.  You
> can simply ignore this, as it comes at the end of the make (so nothing
> is being missed except the ability to install man pages).

OK, thanks, I figured as much.

What is a goodway to stress-test the shell (``make test''?) and where do I
send the Purify output? Is anybody interested?

-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 22:53 Jos Backus
@ 2001-05-30 23:23 ` Wayne Davison
  2001-05-30 23:50   ` Jos Backus
  0 siblings, 1 reply; 45+ messages in thread
From: Wayne Davison @ 2001-05-30 23:23 UTC (permalink / raw)
  To: Jos Backus; +Cc: zsh-workers

On Wed, 30 May 2001, Jos Backus wrote:
> gmake[1]: *** [zsh.1] Error 1
> gmake[1]: Leaving directory `/depot/src/zsh-4.0.1/Doc'

When you don't have yodl installed (and you don't have copies of the .1
man pages copied over from somewhere else), this is how make exits.  You
can simply ignore this, as it comes at the end of the make (so nothing
is being missed except the ability to install man pages).

..wayne..


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
@ 2001-05-30 22:53 Jos Backus
  2001-05-30 23:23 ` Wayne Davison
  0 siblings, 1 reply; 45+ messages in thread
From: Jos Backus @ 2001-05-30 22:53 UTC (permalink / raw)
  To: zsh-workers

Next problem:

gmake[1]: Entering directory `/depot/src/zsh-4.0.1/Doc'
case zsh.1 in \
  */*) target=zsh.1 ;; \
  *) target=./zsh.1 ;; \
esac; \
case ': yodl' in :*) ;; *) \
    : yodl -I. -w zman.yo version.yo zsh.yo | sed -e '1s/\\-/-/g' -e '/^\.'\''/d' > $target \
;; esac; \
test -f $target
gmake[1]: *** [zsh.1] Error 1
gmake[1]: Leaving directory `/depot/src/zsh-4.0.1/Doc'
gmake: *** [all] Error 1

Looks like $target is not being expanded.

-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 22:34 ` Clint Adams
@ 2001-05-30 22:44   ` Jos Backus
  0 siblings, 0 replies; 45+ messages in thread
From: Jos Backus @ 2001-05-30 22:44 UTC (permalink / raw)
  To: Clint Adams; +Cc: zsh-workers

On Wed, May 30, 2001 at 06:33:38PM -0400, Clint Adams wrote:
> If you just delete the "undefine" lines it complains about, it
> will be happy.  However, if you run autoupdate, it will make
> a mess.

Right.

I just installed the previous version of autoconf, 2.13, and lo and behold:
both the m4 undefine and the config.status problem aren't there. So this looks
like some weird interaction between autoconf-2.50 and m4, no?

Off to building zsh with Purify... Has anybody done this before? Is it really
useful? Any tips?

Thanks,
-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 22:02 ` Bart Schaefer
  2001-05-30 22:28   ` Jos Backus
@ 2001-05-30 22:40   ` Clint Adams
  2001-05-31  0:08     ` Bart Schaefer
  1 sibling, 1 reply; 45+ messages in thread
From: Clint Adams @ 2001-05-30 22:40 UTC (permalink / raw)
  To: Bart Schaefer; +Cc: Jos Backus, zsh-workers

> That's pretty silly.  This is like C++ generating an error if you #undef
> a constant that has never been #define'd.  Did autoconf-2.50 redefine the
> m4 undefine function, or did something change in a new version of m4?

Yes, autoconf 2.50 undefines `define' and `undefine'.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 21:48 Jos Backus
  2001-05-30 22:02 ` Bart Schaefer
@ 2001-05-30 22:34 ` Clint Adams
  2001-05-30 22:44   ` Jos Backus
  2001-05-31  8:25 ` Andrej Borsenkow
  2 siblings, 1 reply; 45+ messages in thread
From: Clint Adams @ 2001-05-30 22:34 UTC (permalink / raw)
  To: Jos Backus; +Cc: zsh-workers

> This is with a just checked out copy. Am I doing something wrong?
> 
> taiko:/depot/src/zsh% ./Util/preconfig
> cd . && ./.preconfig
> configure.in:55: error: undefine: undefined: zsh-debug
> configure.in:55: the top level
> ./Util/preconfig: ./.preconfig failed (status 1)

If you just delete the "undefine" lines it complains about, it
will be happy.  However, if you run autoupdate, it will make
a mess.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 22:02 ` Bart Schaefer
@ 2001-05-30 22:28   ` Jos Backus
  2001-05-30 22:40   ` Clint Adams
  1 sibling, 0 replies; 45+ messages in thread
From: Jos Backus @ 2001-05-30 22:28 UTC (permalink / raw)
  To: Bart Schaefer; +Cc: zsh-workers

On Wed, May 30, 2001 at 03:01:46PM -0700, Bart Schaefer wrote:
> That's pretty silly.  This is like C++ generating an error if you #undef
> a constant that has never been #define'd.  Did autoconf-2.50 redefine the
> m4 undefine function, or did something change in a new version of m4?

It's strange indeed. This is with a freshly built m4-1.4 (haven't seen
anything newer).
 
> My m4 info page says:
> 
>    It is not an error for NAME to have no macro definition.  In that
> case, `undefine' does nothing.

So does mine.
 
> Anyway, those undefines are probably entirely extraneous anyway, so try
> just deleting them.
 
That fixes it (obviously).

Btw, running ``./configure'' yields

    configure: creating ./config.status
    ./config.status: syntax error at line 1063: `end of file' unexpected

before printing the configuration. That doesn't look normal. The file has
1062 lines and the end looks like

#
# CONFIG_COMMANDS section.
#
for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`

  case $ac_dest in
    default ) \
test -z "$CONFIG_HEADERS" || echo > stamp-h ;;
  esac
done

{ (exit 0); exit 0; }

As a result, some other files aren't being generated (e.g. the Makefile).

Thanks,
-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

* Re: zsh and autoconf-2.50
  2001-05-30 21:48 Jos Backus
@ 2001-05-30 22:02 ` Bart Schaefer
  2001-05-30 22:28   ` Jos Backus
  2001-05-30 22:40   ` Clint Adams
  2001-05-30 22:34 ` Clint Adams
  2001-05-31  8:25 ` Andrej Borsenkow
  2 siblings, 2 replies; 45+ messages in thread
From: Bart Schaefer @ 2001-05-30 22:02 UTC (permalink / raw)
  To: Jos Backus, zsh-workers

On May 30,  2:48pm, Jos Backus wrote:
> Subject: zsh and autoconf-2.50
> This is with a just checked out copy. Am I doing something wrong?

I don't think so ...

> taiko:/depot/src/zsh% ./Util/preconfig
> cd . && ./.preconfig
> configure.in:55: error: undefine: undefined: zsh-debug

That's pretty silly.  This is like C++ generating an error if you #undef
a constant that has never been #define'd.  Did autoconf-2.50 redefine the
m4 undefine function, or did something change in a new version of m4?

My m4 info page says:

   It is not an error for NAME to have no macro definition.  In that
case, `undefine' does nothing.

Anyway, those undefines are probably entirely extraneous anyway, so try
just deleting them.


^ permalink raw reply	[flat|nested] 45+ messages in thread

* zsh and autoconf-2.50
@ 2001-05-30 21:48 Jos Backus
  2001-05-30 22:02 ` Bart Schaefer
                   ` (2 more replies)
  0 siblings, 3 replies; 45+ messages in thread
From: Jos Backus @ 2001-05-30 21:48 UTC (permalink / raw)
  To: zsh-workers

This is with a just checked out copy. Am I doing something wrong?

taiko:/depot/src/zsh% ./Util/preconfig
cd . && ./.preconfig
configure.in:55: error: undefine: undefined: zsh-debug
configure.in:55: the top level
./Util/preconfig: ./.preconfig failed (status 1)

(I want to build this on Solaris using Purify.)

-- 
Jos Backus                 _/  _/_/_/        "Modularity is not a hack."
                          _/  _/   _/                -- D. J. Bernstein
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb@cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;


^ permalink raw reply	[flat|nested] 45+ messages in thread

end of thread, other threads:[~2001-06-01 16:48 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-05-30 23:15 zsh and autoconf-2.50 Jos Backus
  -- strict thread matches above, loose matches on Subject: below --
2001-05-30 22:53 Jos Backus
2001-05-30 23:23 ` Wayne Davison
2001-05-30 23:50   ` Jos Backus
2001-05-31  0:12     ` Bart Schaefer
2001-05-31  1:15       ` Jos Backus
2001-05-31  4:52         ` Bart Schaefer
2001-05-31  6:22           ` Jos Backus
2001-05-31  7:22             ` Bart Schaefer
2001-05-31  9:34               ` Sven Wischnowsky
2001-05-30 21:48 Jos Backus
2001-05-30 22:02 ` Bart Schaefer
2001-05-30 22:28   ` Jos Backus
2001-05-30 22:40   ` Clint Adams
2001-05-31  0:08     ` Bart Schaefer
2001-05-31 13:40       ` Clint Adams
2001-05-31 13:53         ` Oliver Kiddle
2001-05-31 14:24           ` Clint Adams
2001-05-31 17:34         ` Akim Demaille
2001-05-31 17:51           ` Clint Adams
2001-05-31 18:01             ` Akim Demaille
2001-06-01  8:55               ` Andrej Borsenkow
2001-06-01 11:00                 ` Akim Demaille
2001-06-01 16:48                 ` Tim Van Holder
2001-06-01  9:37               ` Peter Stephenson
2001-06-01 12:27                 ` Clint Adams
2001-06-01 12:45                   ` Peter Stephenson
2001-06-01 12:54                 ` Andrej Borsenkow
2001-06-01 13:33                   ` Peter Stephenson
2001-06-01 13:47                     ` Bart Schaefer
2001-06-01 13:56                       ` Peter Stephenson
2001-06-01 13:57                     ` Andrej Borsenkow
2001-06-01 14:05                       ` Andrej Borsenkow
2001-06-01 14:08                         ` Clint Adams
2001-06-01 14:19                           ` Andrej Borsenkow
2001-06-01 14:25                             ` Peter Stephenson
2001-06-01 14:36                               ` Andrej Borsenkow
2001-06-01 15:05                                 ` Clint Adams
2001-06-01 14:19                         ` Peter Stephenson
2001-06-01 14:11                       ` Peter Stephenson
2001-05-30 22:34 ` Clint Adams
2001-05-30 22:44   ` Jos Backus
2001-05-31  8:25 ` Andrej Borsenkow
2001-05-31 13:44   ` Clint Adams
2001-05-31 13:59     ` Andrej Borsenkow

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).