[Buildroot] autoconf caching

Fabio Porcedda fabio.porcedda at gmail.com
Wed Jun 18 12:37:09 UTC 2014


On Sat, Jun 14, 2014 at 2:52 AM, Dallas Clement
<dallas.a.clement at gmail.com> wrote:
<snip>
> Fabio, I have some good news!  I had commented out the .NOTPARALLEL in the
> top-level
> makefile earlier, but I was not setting BR2_JLEVEL correctly, as I was doing
> so from
> a wrapper makefile.  Anyhow, parallel building is working for me now after
> fixing my mistake.
> When I started this journey, my build times were about 1 hour and 50
> minutes.  After
> enabling ccache they were reduced to about 1 hour.  With parallel package
> building,
> all 8 of my CPU cores are near 100% the whole time, and build times are now
> only 14 minutes!!!

That's great!

> You are a beautiful man!  Thank you for all you have done to get this
> working.

Thank you very much for your kind words.
I'm glad to hear that you like it.

> p.s.  If you still want me to collect the graphs, and time comparison for
> parallel vs
> not parallel, please let me know.  I also have more testing to do to verify
> that there
> are no unexpected run-time errors due to parallel building.

I've asked for for those graphs just to use correctly the parallel
make so I don't need it anymore.

If you encounter build problems related to the reordering of targets,
there is a way to replicate almost the same ordering (excluding
interleaving targets).
Given a "build-time.log" you can generate the list of targets:

grep :start: < output/build/build-time.log  | perl -F: -ane '$s =
"$F[3]"; $s =~ s/^\s+|\s+$//g; print "$s-$F[2]\n"' > targets.log

Now you can use that list to build following the same order:
xargs make < targets.log

This is useful to be able to reproduce the problems and debug it.

I will send a patch to add that script or to document it, I'm not sure
what is the best thing to do.

Best regards
-- 
Fabio Porcedda


More information about the buildroot mailing list