[Buildroot] [PATCH RFC] core: enable per-package log files
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Tue Oct 17 19:03:54 UTC 2017
Hello,
On Tue, 17 Oct 2017 16:44:04 +0200, Arnout Vandecappelle wrote:
> > Therefore, you end up in a situation where a lot of things have been
> > displayed, and then nothing happens (because foo is being built). So
> > you're wondering "what the heck is going on in here". And once "foo"
> > has finished building, everything is displayed, and you understand what
> > was going on. Perhaps this can be solved by having the message
> > displayed as part of a separate target. Or perhaps we don't need to
> > solve this problem at all?
>
> I think we do need to do something about it, but it could be as simple as
> letting MESSAGE print to /dev/tty instead of stdout.
True. I had some code doing that as part of my experiments, so I could
revive this.
>
> > Another thing is that I'd ideally want this to be done automatically by
> > Buildroot, which is something we can do as part of the
> > "make-calls-itself" in the main Makefile. Except that at this point, we
> > don't have the Buildroot configuration available, and I wanted to make
> > this conditional on some BR2_PARALLEL_BUILD=y option. Or we make
> > -Orecurse the default, but that is going to significantly change the
> > visible behavior even for people not using top-level parallel build.
>
> Ah, you would make top-level parallel build a config option?
Yes, my idea was to have a BR2_PARALLEL_BUILD like we have
BR2_REPRODUCIBLE, mainly to guard the feature while it is being
developed/validated. Fully reliable top-level parallel build is not
going to arrive over night, so initially I would prefer to keep the
current behavior totally unchanged, except for users that opt-in by
enabling BR2_PARALLEL_BUILD. Once we agree that the feature is
reasonably safe, we can drop that option and make it the default.
> Isn't it enough to observe the -j in MAKEFLAGS?
Interestingly:
all:
@echo $(MAKEFLAGS)
ifneq ($(filter -j%,$(MAKEFLAGS)),)
@echo "BINGO"
endif
Never shows BINGO when called with "make -j2" even if the echo
$(MAKEFLAGS) does show that -j2 has been passed. Also a:
$(warning $(MAKEFLAGS))
shows an empty value.
> I'm not convinced we want to add this option automatically, however, because it
> makes it more difficult for people who don't want it. Why not add it to
> utils/brmake, for example, and point people there in the documentation of
> top-level parallel build?
Sorry I lost you here :/
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
More information about the buildroot
mailing list