"libtool" performance... / was: Re: Announcing Dolt, a drop-inLibtool replacement which cuts build timesin half

Roland Mainz roland.mainz at nrubsig.org
Fri Apr 11 12:08:55 PDT 2008


Roland Mainz wrote:
> Daniel Stone wrote:
> > On Fri, Apr 11, 2008 at 04:23:52PM +0200, Roland Mainz wrote:
> > > Uhm... a while ago we hit the same problem and did some research on the
> > > issue and  a diffent route by switching the shell used by libtool from
> > > "bash" to "ksh93" and did some minor modifications (e.g. enable more
> > > ksh93 builtin commands, replace some of the "sed" usage by
> > > builtin-string operators (which are common between "bash" and "ksh93"
> > > but libtool didn't use them) etc. (the resulting script no longer does
> > > unneccesary |fork()|+|exec()| calls (since ksh93 doesn't |fork()| for
> > > subshells&co.))) ... and as a result we hit a similar performance
> > > improvement as seen with the "dolt" tool...
> >
> > Thanks for the suggestion, but given the choice between forking a
> > multi-thousand-line shell script
> 
> Erm.. I didn't really attempt to fork it, I just replaced the shell
> which is used by libtool. The remaining changes, e.g. stuff like...
> -- snip --
> #!/usr/bin/ksh93
> builtin basename
> builtin dirname
> builtin mkdir
> builtin rmdir
> # etc.
> -- snip --
> ... was done to squish more performance out of the script.
[snip]

BTW: I forgot one optimisation: The whole libtool script can be compiled
using ksh93's shell script compiler ("shcomp") to squish even more
performance out of the script (the performace will come closer to what
someone would expect some an implementation in native JAVA/C++ code
then...).

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 7950090
 (;O/ \/ \O;)



More information about the xorg mailing list