[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Use getopt.m4sh to generate libtool option parser.
From: |
Ralf Wildenhues |
Subject: |
Re: [PATCH] Use getopt.m4sh to generate libtool option parser. |
Date: |
Tue, 22 Jun 2010 07:48:12 +0200 |
User-agent: |
Mutt/1.5.20 (2010-04-22) |
* Gary V. Vaughan wrote on Tue, Jun 22, 2010 at 07:42:27AM CEST:
> On 22 Jun 2010, at 00:59, Ralf Wildenhues wrote:
> > However, this makes me more cautious
> > about your other patch for using this machinery for the libtool script
> > itself: that is created in packages using Libtool,
>
> Not true. We distribute libtoolize.in and ltmain.sh, for both of which
> the bootstrap time m4sh expansions have already been made. The only
> time users will notice any difference is if they want to bootstrap from
> the repository using a more than 4 year old Autoconf.
Ah, thinko of mine. Thanks for explaining to me.
> > If it can be made 2.59-compatible (and the other issues noted in that
> > thread are fixed) then ok, otherwise I would suggest bumping required
> > Autoconf for libtool.m4 to 2.62 before the Libtool 2.2.14 release and
> > using the getopt machinery for ltmain then, so that with 2.2.12, users
> > still have a 2.62-buildable Libtool with cautious requirement on their
> > own packages. Does that make sense?
>
> Actually I was thinking of adding m4_version_prereq(2.61) to just
> getopt.m4sh, since that will at least give a useful diagnostic to libtool
> bootstrap users who want bleeding edge libtool and ancient autoconf to
> work together.
Good idea!
> As long as other users are content with the libtoolize.in and ltmain.sh
> that come with the libtool release tarballs (or are in the habit of
> updating their Autotools within a few years of each other before they
> bootstrap git clones), they won't notice anything.
>
> WDYT?
Agreed.
> On 12 Jun 2010, at 17:45, Ralf Wildenhues wrote:
> > * Gary V. Vaughan wrote on Sat, Jun 12, 2010 at 12:34:04PM CEST:
> >> On 12 Jun 2010, at 15:48, Ralf Wildenhues wrote:
> >>> The handling of --dlopen=..., --mode=..., --tag=..., now increased by
> >>> two forks and one exec per such flag on systems with decent shells, and
> >>> it doesn't use safe $ECHO any more even on systems with indecent shells,
> >>> because you don't use func_opt_split any more. My guess is that this
> >>> would increase libtool execution time for typical compile commands by
> >>> a noticeable amount, since we got them down to about half a dozen forks.
> >>> Please fix this.
> >>
> >> That's quite an invasive change, since the core of the M4SH_GETOPTS
> >> generated code will then rely on the XSI functions you add to libtool at
> >> configure time. I suppose we need to put them in, say,
> >> libltd/config/xsi.m4sh where libtoolize, commit, announce-gen,
> >> mailnotify and any future m4sh scripts can reap the benefits. This
> >> in turn means we need to move it into a separate macro to contribute
> >> back to Autoconf when we move getopt.m4sh and supporting code.
> >
> > I'm fine with not using XSI for all other scripts; the func_opt_split
> > could be trivial forwarders for the sed scripts there; that would avoid
> > having to beef up infrastructure here, IIUC. But the libtool command
> > line parsing really was one of the time critical issues in user builds,
> > and --mode and --tag are pervasive, so this would be a real regression.
>
> I'm still not clear on how to implement this cleanly. I'd like to be
> able to figure it all out at bootstrap time:
That works portably only if you put the XSI-relevant tests in a
subshell, otherwise an old shell may spew errors and even die due to
syntax errors. But a subshell regresses on time again. Can't you
optionally allow to specify to the machinery "the functions X and Y
have already been specified for you externally"?
Cheers,
Ralf
- [PATCH] Use getopt.m4sh to generate libtool option parser., Gary V. Vaughan, 2010/06/11
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser., Ralf Wildenhues, 2010/06/12
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser., Gary V. Vaughan, 2010/06/12
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser., Ralf Wildenhues, 2010/06/12
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser., Gary V. Vaughan, 2010/06/22
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser.,
Ralf Wildenhues <=
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser., Gary V. Vaughan, 2010/06/22
- [PATCH] getopt.m4sh generated libtool option parser, and XSI improvements., Gary V. Vaughan, 2010/06/22
- Re: [PATCH] getopt.m4sh generated libtool option parser, and XSI improvements., Gary V. Vaughan, 2010/06/23
- Re: [PATCH] getopt.m4sh generated libtool option parser, and XSI improvements., Ralf Wildenhues, 2010/06/26
- Re: [PATCH] getopt.m4sh generated libtool option parser, and XSI improvements., Gary V. Vaughan, 2010/06/27
- Re: [PATCH] getopt.m4sh generated libtool option parser, and XSI improvements., Ralf Wildenhues, 2010/06/26
- Re: [PATCH] getopt.m4sh generated libtool option parser, and XSI improvements., Gary V. Vaughan, 2010/06/27
- Re: [PATCH] Use getopt.m4sh to generate libtool option parser., Ralf Wildenhues, 2010/06/22