[OE-core] Submission of 'emit-buildvars' class?
Enrico Scholz
enrico.scholz at sigma-chemnitz.de
Mon Aug 20 17:09:24 UTC 2018
Alexander Kanavin <alex.kanavin at gmail.com> writes:
>> I do not know, how this can be done with plain OE. As said, SDKs are too
>> heavy weighted, 'devshell' too slow and can not be scripted, 'externalsrc'
>> is broken, slow and can not be scripted.
>
> For better or worse, Yocto Project has standardized on devtool (not
> devshell!)
'devtool' is for writing recipes, not for writing software.
> and externalsrc for these kind of local development workflows. You are
> very welcome to improve and add to them, so they are not broken
I tried 'externalsrc' after the per-package sysroot changes but just run
into bugs (class tried to write into read-only mounted source dir, every
2nd 'do_fetch' failed because sysroot was already populated).
Doing a 'make -f ../Makefile.common install' which writes data directly
into the NFS root is much faster than doing all the steps of the dev*
tools.
> or slow,
They *are* slow.
| $ cd workspace/kernel
|
| $ git commit -m 'empty' --allow-empty
|
| $ time bitbake linux-mainline
| real 4m7.417s
| user 0m0.763s
| sys 0m0.110s
vs.
| time make -f ../Makefile.kernel -j12
| real 0m13.204s
| user 0m54.888s
| sys 0m17.970s
Even a plain 'bitbake' is takes 0.5 sec:
| $ time bitbake
| Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.
|
| real 0m0.588s
| user 0m0.255s
| sys 0m0.023s
vs.
| $ time make
| real 0m0.007s
| user 0m0.002s
| sys 0m0.005s
And some things are impossible because they are not supported by the
design. E.g. how would would you implement the flymake 'check-syntax'
target[1]
| check-syntax:
| gcc -o /dev/null -S ${CHK_SOURCES} || true
with devtool/devshell/externalsrc?
Deciding which task to execute (compile, do_compile_kernelmodules) and
installation into NFS root is not supported by dev* either.
Enrico
Footnotes:
[1] https://www.gnu.org/software/emacs/manual/html_mono/flymake.html#Example_002d_002d_002dConfiguring-a-tool-called-via-make
--
SIGMA Chemnitz GmbH Registergericht: Amtsgericht Chemnitz HRB 1750
Am Erlenwald 13 Geschaeftsfuehrer: Grit Freitag, Frank Pyritz
09128 Chemnitz
More information about the Openembedded-core
mailing list