[OE-core] [PATCH 00/14] Fix support for Icecream
Tomas Novotny
tomas at novotny.cz
Wed Feb 7 20:59:13 UTC 2018
Hi Joshua,
On Tue, 6 Feb 2018 16:01:19 -0600
Joshua Watt <jpewhacker at gmail.com> wrote:
> Fix up support for using Icecream to do distributed builds, which
> appears to have been broken for some time.
we were using icecream a year ago and we set ICECC_CARET_WORKAROUND env
variable to 0 (in set_icecc_env() in icecc.bbclass). The default is 1 and it
causes a local rebuild when any warning is emitted.
I don't have exact numbers, but the extreme case was opencv. There was so
many warnings that distributed build on ~10 threads was slower than local
build on 4 threads.
I know that it is some kind of configuration, but I would set the default to
0. Or do it at least configurable.
> In addition, Icecream support can now be enabled in the SDK. When
> enabled, the SDK install process will check if the host supports icecc
> and if so will construct a proper environment tarball and use it when
> compiling.
Thanks for work on that, I'm keen to use it in our environment.
Tomas
> Most of the changes should be straightforward. icecc-create-env has
> been almost completely re-written but the changes were broken up into
> hopefully logical chunks.
>
> The following changes since commit 385944254d0ef88bd6450a221a54cbcb40020b42:
>
> tcmode-default.inc: drop preferred version of gzip-native (2018-01-31 17:01:20 +0000)
>
> are available in the Git repository at:
>
> git://push.yoctoproject.org/poky-contrib jpew/icecream
>
> Joshua Watt (14):
> icecc.bbclass: Move to shared work directory
> icecc.bbclass: Fix STAGING_BINDIR_TOOLCHAIN usage
> icecc.bbclass: Skip canadian-cross compiles
> icecc-create-env: Reformat
> icecc-create-env: Add /bin/true to environment
> icecc-create-env: Use program interpreter for deps
> icecc-create-env: Symlink alternate names
> icecc-create-env: Archive directory
> icecc-create-env: Fix executable rpaths
> icecc-create-env: Add support for nativesdk
> icecc-create-env: Allow multiple tool aliases
> toolchain-shar-extract: Add post-relocate scripts
> icecc-toolchain: Add SDK icecream setup
> icecc.bbclass: Add IceCream support to SDK
>
> meta/classes/icecc.bbclass | 37 ++-
> meta/classes/toolchain-scripts.bbclass | 15 +
> meta/files/toolchain-shar-extract.sh | 8 +
> meta/recipes-core/meta/meta-environment.bb | 2 +
> .../icecc-create-env/icecc-create-env | 328 ++++++++++++++-------
> ...e-env-native_0.1.bb => icecc-create-env_0.1.bb} | 4 +-
> .../icecc-toolchain/icecc-toolchain/icecc-env.sh | 37 +++
> .../icecc-toolchain/icecc-toolchain/icecc-setup.sh | 43 +++
> .../nativesdk-icecc-toolchain_0.1.bb | 38 +++
> 9 files changed, 390 insertions(+), 122 deletions(-)
> rename meta/recipes-devtools/icecc-create-env/{icecc-create-env-native_0.1.bb => icecc-create-env_0.1.bb} (98%)
> create mode 100644 meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-env.sh
> create mode 100644 meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
> create mode 100644 meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
>
More information about the Openembedded-core
mailing list