Resolve build-deps / shlibs issues

Mostly due to the inter-dependency between glibc & libgcc

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
This commit is contained in:
Christopher Larson
2015-07-29 12:56:25 -07:00
parent 140fed8a83
commit 362d20fac7
4 changed files with 24 additions and 5 deletions

View File

@@ -2,3 +2,9 @@ python () {
if d.getVar('TCMODE', True).startswith('external-sourcery'):
d.setVar('INHIBIT_PACKAGE_DEBUG_SPLIT', '1')
}
# localedef needs libgcc & libc
do_package[depends] += "${MLPREFIX}libgcc:do_packagedata virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_ipk[depends] += "${MLPREFIX}libgcc:do_packagedata virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_deb[depends] += "${MLPREFIX}libgcc:do_packagedata virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_rpm[depends] += "${MLPREFIX}libgcc:do_packagedata virtual/${MLPREFIX}libc:do_packagedata"

View File

@@ -55,3 +55,9 @@ FILES_libstdc++-dev = "\
${libdir}/libsupc++.la \
"
BBCLASSEXTEND = ""
# libstdc++ needs glibc
do_package[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata"

View File

@@ -9,6 +9,12 @@ inherit external-toolchain
LICENSE = "GPL-3.0-with-GCC-exception"
PACKAGES =+ "libgcov-dev"
# libgcc needs libc, but glibc's utilities need libgcc, so short-circuit the
# interdependency here by manually specifying it rather than depending on the
# libc packagedata.
RDEPENDS_${PN} += "${TCLIBC}"
INSANE_SKIP_${PN} += "build-deps"
external_libroot = "${@os.path.realpath('${EXTERNAL_TOOLCHAIN_LIBROOT}').replace(os.path.realpath('${EXTERNAL_TOOLCHAIN}') + '/', '/')}"
FILES_MIRRORS =. "${libdir}/gcc/${TARGET_SYS}/${GCC_VERSION}/|${external_libroot}/\n"
@@ -29,8 +35,3 @@ INSANE_SKIP_${PN}-dev += "staticdev"
FILES_${PN}-dbg += "${base_libdir}/.debug/libgcc_s.so.*.debug"
FILES_libgcov-dev = "${libdir}/gcc/${TARGET_SYS}/${GCC_VERSION}/libgcov.a"
INSANE_SKIP_libgcov-dev += "staticdev"
do_package[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata"

View File

@@ -208,3 +208,9 @@ FILES_${PN}-dev[file-checksums] += "${libc_headers_file}"
# Currently, ldd and tzcode from Sourcery G++ still have #!/bin/bash
RDEPENDS_ldd += "bash"
RDEPENDS_tzcode += "bash"
# glibc's utils need libgcc
do_package[depends] += "${MLPREFIX}libgcc:do_packagedata"
do_package_write_ipk[depends] += "${MLPREFIX}libgcc:do_packagedata"
do_package_write_deb[depends] += "${MLPREFIX}libgcc:do_packagedata"
do_package_write_rpm[depends] += "${MLPREFIX}libgcc:do_packagedata"