> -----Original Message-----
> From: Bernard Dautrevaux [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, September 12, 2000 3:18 PM
> To: 'Akim Demaille'; Bernard Dautrevaux
> Cc: Autoconf mailing list (Adresse de messagerie)
> Subject: RE: Autoupdate test failing on Solaris7
>
>
> > -----Original Message-----
> > From: Akim Demaille [mailto:[EMAIL PROTECTED]]
> > Sent: Tuesday, September 12, 2000 12:11 PM
> > To: Bernard Dautrevaux
> > Cc: Autoconf mailing list (Adresse de messagerie)
> > Subject: Re: Autoupdate test failing on Solaris7
> >
> >
> > >>>>> "Bernard" == Bernard Dautrevaux
> > <[EMAIL PROTECTED]> writes:
> >
> > Bernard> There is one test that fails, the autoupdate test (test 111
> > Bernard> in my case).
> >
> > This is a known problem of autoupdate: it needs a powerful sed. I'm
> > thinking about rewriting it in Perl. Contribution are highly
> > appreciated :)
> >
> > I'll change autoupdate so that it checks sed is GNU sed, this is
> > catching way too many people. I apologize for not having
> > done this before.
>
> I think that OK.
>
> >
> > Bernard> There is two problems in this test:
> >
> > Bernard> First when creating "au.txt" using "autoconf --trace"
> > Bernard> autoconf was not able to find "acversion.m4"; I
> must say that
> > Bernard> I build autoconf in a subdirectory (name
> autoconf-native) of
> > Bernard> the autoconf directory; what seems to happen is that
> > Bernard> autoupdate is started with an autoconf_dir set to
> ../.., that
> > Bernard> is the source directory; however "acversion.m4" is in the
> > Bernard> build directory :-)
> >
> > This is bizarre: make distcheck works fine and it runs a
> very similar
> > layout. I just checked what you said:
> >
> > tar zxvf autoconf
> > cd autoconf
> > mkdir build
> > cd build
> > ../configure
> > make check
> >
> > and it works fine. It must be related to the other problem.
> >
>
> Did you actually check the au.txt file, or just check the
> test pass? this do
> not cause the test to fail, it just generate a bizarre line
> at the top of
> au.txt, then autoupdate runs correctly (it just would not be
> able to convert
> an old AC_VERSION to a new one I think, but as AC_VERSION is
> just define'd,
> not AC_DEFUN'edr AU_DEFUN'ed that should not cause any problem).
>
Aaaarrrrgggghhh... I was typing too fast; I just install gnu sed and restart
the test: It still fails due to acversion.m4 not being found. The problem is
that the first line of au.del.sed reads:
/../../autoconf.m4:26: /global/targets/V3/i386-unknown-solaris2.4/bin/m4:
Cannot open acversion.m4: No such file or directory/d
which of course is an invalid sed command that seems to crash autoupdate :-(
I don't know what I have different here but this seems perfectly normal for
me, as acversion.m4 is neither in $autoconf_dir nor in $local_dir...
Perhaps I get this as I, by mistake -- you know I make a few :-) -- I run
./configure in the source dir then run "make distclean" to correct my
mistake. Is it possible acversion.m4 was distributed but nevertheless
deleted by distclean?
Anyway, to avoid this I just copy ../acversion.ma4 in the temporary test
directory in the problematic test; I'm not sure this is the way to insert
this in the test suite, but this seems to work here and to correct the
problem.
Now the test succeeds, although I get an "expr" error when trying to use
"expr" to compute "optarg" line 128 of autoconf.sh and passing
"--autoconf-dir" as argument... It's seems to be only noise but using
echo|sed would avoid the error message... (again this could be solved by
installing expr form gnu shutils, I think, but correcting it seems so simple
I propose a patch for this).
I know you prefer using expr in this case (as this forks only once I think),
but this error message is a bit annoying and may be harmful (or at least
should be explained) :-)
With these two corrections (and gnu SED installed) the whole testsuite works
like a charm.
As allways all comments will be kindly welcommed,
Bernard
PS: to understand what was happening I had to look at autoupdate and read
the tiny comment at end :-). Congratulations: autoupdate was indeed a
wonderful achievement and I would not have think it was possible (although I
hardly understand the whole magic of it even after reading twice the
documentation).
Changelog:
2000-09-12 Bernard Dautrevaux <[EMAIL PROTECTED]>
* tests/tools.m4: copy acversion.m4 in the current directory to
allow autoconf.m4
to find it.
* autoupdate: don't use expr to strip '-opt=' from options as this
seems to break
on some "expr".
Patch:
*** old/tests/tools.m4�2000/09/11 08:54:27�1.1
--- new/tests/tools.m4�2000/09/12 19:24:09
***************
*** 163,166 ****
--- 163,169 ----
AT_SETUP(autoupdate)
+ # We need acversion.m4 either here or in the source dir...
+ cp ../acversion.m4 .
+
AT_DATA(configure.in,
[[AC_INIT
*** old/autoupdate.sh�2000/09/11 08:56:34�1.3
--- new/autoupdate.sh�2000/09/13 14:21:03
***************
*** 100,104 ****
# Parse command line
while test $# -gt 0 ; do
! optarg=`expr "$1" : '-[^=]*=\(.*\)'`
case $1 in
--version | --vers* | -V )
--- 100,104 ----
# Parse command line
while test $# -gt 0 ; do
! optarg=`echo "$1" | sed -e 's/^-[^=]*=//'`
case $1 in
--version | --vers* | -V )
--------------------------------------------
Bernard Dautrevaux
Microprocess Ingenierie
97 bis, rue de Colombes
92400 COURBEVOIE
FRANCE
Tel: +33 (0) 1 47 68 80 80
Fax: +33 (0) 1 47 88 97 85
e-mail: [EMAIL PROTECTED]
[EMAIL PROTECTED]
--------------------------------------------