mirror of
https://git.yoctoproject.org/poky
synced 2026-09-14 21:49:33 +02:00
eglibc: Fix eglibc-initial and let eglibc depend on it
eglibc-initial does not need to install fake shared libs anymore so drop it. eglibc now should depend on eglibc-initial so that bootstrap sysroot gets populated properly. Drop references to gcc intermediate from glibc testing scripts. (From OE-Core rev: bddc141e7cec18744902787ab53c21bf28e71f78) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -32,6 +32,9 @@ do_install () {
|
|||||||
install-bootstrap-headers=yes install-headers
|
install-bootstrap-headers=yes install-headers
|
||||||
|
|
||||||
oe_runmake csu/subdir_lib
|
oe_runmake csu/subdir_lib
|
||||||
|
mkdir -p ${D}${libdir}/
|
||||||
|
install -m 644 csu/crt[1in].o ${D}${libdir}
|
||||||
|
|
||||||
# Two headers -- stubs.h and features.h -- aren't installed by install-headers,
|
# Two headers -- stubs.h and features.h -- aren't installed by install-headers,
|
||||||
# so do them by hand. We can tolerate an empty stubs.h for the moment.
|
# so do them by hand. We can tolerate an empty stubs.h for the moment.
|
||||||
# See e.g. http://gcc.gnu.org/ml/gcc/2002-01/msg00900.html
|
# See e.g. http://gcc.gnu.org/ml/gcc/2002-01/msg00900.html
|
||||||
@@ -42,15 +45,10 @@ do_install () {
|
|||||||
if [ -e ${B}/bits/stdio_lim.h ]; then
|
if [ -e ${B}/bits/stdio_lim.h ]; then
|
||||||
cp ${B}/bits/stdio_lim.h ${D}${includedir}/bits/
|
cp ${B}/bits/stdio_lim.h ${D}${includedir}/bits/
|
||||||
fi
|
fi
|
||||||
mkdir -p ${D}${libdir}/
|
# add links to linux-libc-headers: final eglibc build need this.
|
||||||
install -m 644 csu/crt[1in].o ${D}${libdir}
|
for t in linux asm asm-generic; do
|
||||||
${CC} -nostdlib -nostartfiles -shared -x c /dev/null \
|
ln -s ${STAGING_DIR_TARGET}${includedir}/$t ${D}${includedir}/
|
||||||
-o ${D}${libdir}/libc.so
|
done
|
||||||
|
|
||||||
# add links to linux-libc-headers: gcc-{cross,crossdk}-intermediate need this.
|
|
||||||
for t in linux asm asm-generic; do
|
|
||||||
ln -s ${STAGING_DIR_TARGET}${includedir}/$t ${D}${includedir}/
|
|
||||||
done
|
|
||||||
}
|
}
|
||||||
|
|
||||||
do_install_locale() {
|
do_install_locale() {
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ do_compile_append () {
|
|||||||
sed -i -e "s/\-tcbootstrap//g" ${B}/${HOST_PREFIX}testeglibc
|
sed -i -e "s/\-tcbootstrap//g" ${B}/${HOST_PREFIX}testeglibc
|
||||||
|
|
||||||
# use the final cross-gcc to test since some tests need libstdc++
|
# use the final cross-gcc to test since some tests need libstdc++
|
||||||
sed -i -e "s/^PATH=.*\.gcc-cross-intermediate\:/PATH=/g" ${B}/${HOST_PREFIX}testeglibc
|
sed -i -e "s/^PATH=.*\.gcc-cross-initial\:/PATH=/g" ${B}/${HOST_PREFIX}testeglibc
|
||||||
|
|
||||||
# append execution part script
|
# append execution part script
|
||||||
cat >> ${B}/${HOST_PREFIX}testeglibc << STOP
|
cat >> ${B}/${HOST_PREFIX}testeglibc << STOP
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ require eglibc-common.inc
|
|||||||
require eglibc-ld.inc
|
require eglibc-ld.inc
|
||||||
require eglibc-testing.inc
|
require eglibc-testing.inc
|
||||||
|
|
||||||
STAGINGCC = "gcc-cross-intermediate"
|
STAGINGCC = "gcc-cross-initial"
|
||||||
STAGINGCC_virtclass-nativesdk = "gcc-crosssdk-intermediate"
|
STAGINGCC_virtclass-nativesdk = "gcc-crosssdk-initial"
|
||||||
PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:"
|
PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:"
|
||||||
|
|
||||||
TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
|
TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
|
||||||
@@ -22,7 +22,7 @@ siteconfig_do_siteconfig_gencache_prepend = " \
|
|||||||
"
|
"
|
||||||
|
|
||||||
# nptl needs unwind support in gcc, which can't be built without glibc.
|
# nptl needs unwind support in gcc, which can't be built without glibc.
|
||||||
DEPENDS = "virtual/${TARGET_PREFIX}gcc-intermediate linux-libc-headers"
|
DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers virtual/${TARGET_PREFIX}libc-initial"
|
||||||
# nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this
|
# nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this
|
||||||
#RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"
|
#RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"
|
||||||
PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
|
PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
|
||||||
@@ -33,7 +33,10 @@ require eglibc-options.inc
|
|||||||
LEAD_SONAME = "libc.so"
|
LEAD_SONAME = "libc.so"
|
||||||
|
|
||||||
CACHED_CONFIGUREVARS += "ac_cv_path_KSH=${base_bindir}/bash \
|
CACHED_CONFIGUREVARS += "ac_cv_path_KSH=${base_bindir}/bash \
|
||||||
ac_cv_path_BASH_SHELL=${base_bindir}/bash"
|
ac_cv_path_BASH_SHELL=${base_bindir}/bash \
|
||||||
|
libc_cv_ssp=no \
|
||||||
|
"
|
||||||
|
|
||||||
GLIBC_EXTRA_OECONF ?= ""
|
GLIBC_EXTRA_OECONF ?= ""
|
||||||
GLIBC_EXTRA_OECONF_virtclass-nativesdk = ""
|
GLIBC_EXTRA_OECONF_virtclass-nativesdk = ""
|
||||||
INHIBIT_DEFAULT_DEPS = "1"
|
INHIBIT_DEFAULT_DEPS = "1"
|
||||||
|
|||||||
Reference in New Issue
Block a user