Currently, bitbake isn't always using the finalized configuration metadata to
get the value of this variable, so the _append isn't always applied.
JIRA: MEIBPADIT-811
Signed-off-by: Christopher Larson <kergoth@gmail.com>
Work around the bad interaction between cs-license and pseudo by shoving all
the temporary files into a subdir by the user's original logname.
JIRA: SB-1905
Signed-off-by: Christopher Larson <kergoth@gmail.com>
This caused all manner of breakage due to the toolchain writing out files with
wrong ownership, then those files would end up leaking into the rootfs.
JIRA: INTAMDDET-129, SB-2725
This reverts commit 6bd4ec919a.
This ensures that they don't affect our checksums/signatures. These affect the
behavior of the toolchain licensing, not the output.
Signed-off-by: Christopher Larson <kergoth@gmail.com>
This locale doesn't seem to be available in the external toolchain, so make
sure it isn't included in this variable, otherwise locale-base will depend
upon a non-existant package.
JIRA: SB-2602
Signed-off-by: Christopher Larson <kergoth@gmail.com>
The sourcery toolchain writes temporary files to /tmp, and includes the
username. If multiple users are doing builds with pseudo enabled, it'll try to
write to the other user's file, since both will use 'root', and the build will
fail as a result.
Initially, I attempted to alter CC, KERNEL_CC, LD, etc to prepend with 'env
PSEUDO_UNLOAD=1 ', but this isn't ideal, as it seems there are cases where our
vars aren't obeyed. For example, the kernel build runs gcc -E, but it seems it
gets that from the cross-compiler prefix, not from CC, and we aren't passing
anything in for CPP. So, for now, use wrappers to deal with it, to ensure that
absolutely any call to any of the toolchain binaries will unload pseudo.
JIRA: MEIP-393, SB-1905
Signed-off-by: Christopher Larson <kergoth@gmail.com>
This means we won't be able to build meta-toolchain with an external
toolchain, but it does mean we don't screw up buildtools-tarball. If we need
a functional meta-toolchain in the future, we can resurrect a superior
implementation of this.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Now that KERNEL_LD uses ld.bfd, we need to ensure that it exists when using an
external toolchain.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
* mel/master:
external-sourcery-toolchain: kill more bits we don't want in eglibc-utils
Work around upstream FILESDIR/FILESPATH changes
external-sourcery-toolchain: fix dev vs staticdev packaging issue
external-sourcery-toolchain: kill oprofile bits
external-sourcery-toolchain: silence GNU_HASH warning for libquadmath
tcmode: prefer a matching gcc version for target recipes
external-sourcery-toolchain: add libquadmath packages
external-sourcery-toolchain: kill ${exec_prefix}/lib/locale in do_install_locale
external-sourcery-toolchain: also package ${prefix}/libexec
external-sourcery-toolchain: forgot to rstrip the trailing newline
Conflicts:
recipes/meta/external-sourcery-toolchain.bb
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Long term, may want to add the ability to ship the cross-canadian content from
the external toolchain.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
To avoid issues when a user installed a Sourcery toolchain to the default path
and let it modify their PATH, we iterate over PATH and remove the problematic
elements. Unfortunately, in doing so, we inadvertently forced an early
expansion of PATH due to getting it in its expanded form, then setting PATH
based on that form. Instead, operate against the unexpanded PATH.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
The toolchain installer can end up modifying the user's PATH via their
dotfiles, but if the ia32 sourcery g++ toolchain is always in the user's path,
things can fail to build, as the ia32 toolchain provides non-prefixed binaries
(e.g. 'gcc', 'ld').
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
BitBake doesn't run event handlers in registration order, which means there's
no way to know if a given bit of code (e.g. the tcmode set of
EXTERNAL_TOOLCHAIN_SYSROOT) has been set, from a different event handler. So
go back to using ${@}.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>