[Buildroot] [PATCH RESEND] core: enhance printvars for variables with newlines

Stefan Becker chemobejk at gmail.com
Sun Dec 16 14:57:02 UTC 2018


On Sun, Dec 16, 2018 at 3:54 PM Thomas Petazzoni
<thomas.petazzoni at bootlin.com> wrote:
> I'm jumping back to this very old thread. Could you explain (perhaps
> re-explain) what you're trying to do ?

Modular builds to enable usable CI builds, i.e. any change a developer
pushes to one of the internal components will be available as a
flash-able image in less than 5 minutes. CI builds are not possible
with a monolithic mega meta build system approach like buildroot.

> If you need to just re-run a specific step of a specific package, why
> don't you use "make foo-build", "make foo-rebuild", etc. ?

buildroot meta build system assumes that the *whole* source code &
build tree is available. In a modular build approach that is not the
case for the "combining" build, e.g. the flash image build, as it only
receives the build artefacts from the module builds.

> It seems very hackish to extract the commands that Buildroot executes
> to execute them outside the context of Buildroot. This doesn't really
> help to make a case for accepting a patch like you're proposing. Could
> you first convince us that there is a valid and reasonable use-case,
> and then we can discuss how to support this use-case with Buildroot.

Understandable from the PoV of monolithic meta build system advocates
like buildroot, yocto, Android, ...

But I live in the real world and simply can''t ignore Amdahl's law.
Furthermore I can't, or management doesn't allow me, to spend huge
amounts of money on build machines that can run monolithic mega meta
build systems within time spans acceptable for CI (which in the end is
futile anyway due to Amdahl's law as SW only ever grows in size. Trust
me, I've been there...). Hence I've chosen a modular build approach to
address the issue.

As it became clear that this patch would not be accepted any time
soon, I reverted it and implemented a different approach based on
quoted var printout and sed post-processing. While not 100%
fool-proof, it does work for the few build variables that are required
for the modular build approach.

Anyway, I no longer work for the company that is using buildroot, so I
don't really care if you accept this patch or not.

Regards, Stefan

More information about the buildroot mailing list