mirror of
https://git.yoctoproject.org/poky
synced 2026-02-13 12:13:02 +01:00
Currently there is a race where if you build -cross-canadian without building gcc (target)
you see QA errors about RPATHS. I've tracked this down to this manipulation where the
target gcc recipe changes libcc1 in the shared sources directory. As long as you build
things in the right order, the problem doesn't occur.
Since its changing ${S} move it to gcc-source and avoid the race, saving RP
some head scratching about why unrelated changes failed to build cleanly.
(From OE-Core rev: 626064c69b6fd1b5cead6995097f99e5fbda3f19)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
38 lines
1.4 KiB
PHP
38 lines
1.4 KiB
PHP
deltask do_configure
|
|
deltask do_compile
|
|
deltask do_install
|
|
deltask do_populate_sysroot
|
|
deltask do_populate_lic
|
|
RM_WORK_EXCLUDE += "${PN}"
|
|
|
|
inherit nopackages
|
|
|
|
PN = "gcc-source-${PV}"
|
|
WORKDIR = "${TMPDIR}/work-shared/gcc-${PV}-${PR}"
|
|
SSTATE_SWSPEC = "sstate:gcc::${PV}:${PR}::${SSTATE_VERSION}:"
|
|
|
|
STAMP = "${STAMPS_DIR}/work-shared/gcc-${PV}-${PR}"
|
|
STAMPCLEAN = "${STAMPS_DIR}/work-shared/gcc-${PV}-*"
|
|
|
|
INHIBIT_DEFAULT_DEPS = "1"
|
|
DEPENDS = ""
|
|
PACKAGES = ""
|
|
|
|
python do_preconfigure () {
|
|
import subprocess
|
|
cmd = d.expand('cd ${S} && PATH=${PATH} gnu-configize')
|
|
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
|
# See 0044-gengtypes.patch, we need to regenerate this file
|
|
bb.utils.remove(d.expand("${S}/gcc/gengtype-lex.c"))
|
|
cmd = d.expand("sed -i 's/BUILD_INFO=info/BUILD_INFO=/' ${S}/gcc/configure")
|
|
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
|
|
|
# Easiest way to stop bad RPATHs getting into the library since we have a
|
|
# broken libtool here (breaks cross-canadian and target at least)
|
|
cmd = d.expand("sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure")
|
|
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
|
}
|
|
addtask do_preconfigure after do_patch
|
|
do_preconfigure[depends] += "gnu-config-native:do_populate_sysroot autoconf-native:do_populate_sysroot"
|
|
|