Question about autoreconf to regenerate configuration files

Mike Frysinger vapier@gentoo.org
Wed Jan 26 10:02:37 GMT 2022


On 21 Jan 2022 17:09, Mike Frysinger wrote:
> On 21 Jan 2022 17:09, R. Diez via Newlib wrote:
> > > [...]
> > > The bootstrap time was large enough to
> > > negatively impact our ability to do automated regression testing.
> > 
> > A very long bootstrap time could be an issue.
> > 
> > However, compilation time normally outweighs by far the Autotools regeneration step. Is that a problem in Newlib at the moment?
> 
> autotools (autoreconf really) doesn't run in parallel, so every subdir
> with a configure script needs a separate serialized run of all the tools.
> newlib has many many of these (arguably, too many).
> 
> on my quad core 4.2GHz AMD that is otherwise idle ...
> 
> $ time (cd newlib && autoreconf)
> real    5m22.170s
> user    3m13.709s
> sys     0m12.332s
> 
> $ time (cd libgloss && autoreconf)
> real    1m41.754s
> user    0m43.505s
> sys     0m3.618s
> <this errored out, not sure why, so it might normally take even longer :p>
> 
> # Blackfin builds 8 copies (multilib) of newlib+libgloss by default.
> $ time (cd build; ../configure --host=bfin-elf; make -j4)
> real    1m40.950s
> user    0m58.032s
> sys     0m30.968s

updated timings on my system after recent work to delete many configure scripts
$ time (cd newlib && autoreconf)
real    1m0.619s
user    0m45.249s
sys     0m1.535s

$ time (cd libgloss && autoreconf -I$PWD -I$PWD/.. -I$PWD/../config)
real    0m32.662s
user    0m15.858s
sys     0m1.205s

$ time (cd build; ../configure --host=bfin-elf; make -j4)
real    1m2.337s
user    0m44.987s
sys     0m26.708s

so it's def better, but autotool generation still takes longer than actually
compiling newlib+libgloss 8 times :).
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/newlib/attachments/20220126/1e327fae/attachment.sig>


More information about the Newlib mailing list