[OE-core] [PATCH 00/14] Fix support for Icecream
Joshua Watt
jpewhacker at gmail.com
Wed Feb 7 21:19:12 UTC 2018
On Wed, 2018-02-07 at 21:59 +0100, Tomas Novotny wrote:
> 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.
Ok, that make sense. I'll add a patch to default to
ICECC_CARET_WORKAROUND to my patch series. Thanks for the heads up!
>
> 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