[yocto] [meta-linaro][PATCH] external-linaro-toolchain: Fix for 32bit armhf build
Kazuya Nishimura
kazuya.nisimura at gmail.com
Thu Apr 10 00:49:27 PDT 2014
From: Kazuya Nishimura <kazuya.nisimura at gmail.com>
Use ld-linux-armhf.so.3 if call convention hard.
Fix QA issue errors by packaging approprieately.
Add eglibc-locale_2.19.bbappend to fix QA issue error.
An empty directory is created while do_install.
Signed-off-by: Kazuya Nishimura <kazuya.nisimura at gmail.com>
---
.../conf/distro/include/tcmode-external-linaro.inc | 1 +
.../eglibc/eglibc-locale_2.19.bbappend | 23 ++++++++++++
.../external-linaro-toolchain.bb | 38
++++++++++++++++----
3 files changed, 56 insertions(+), 6 deletions(-)
create mode 100755
meta-linaro-toolchain/recipes-core/eglibc/eglibc-locale_2.19.bbappend
diff --git
a/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
b/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
index 1d9fd59..26d464c 100644
--- a/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
+++ b/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
@@ -41,6 +41,7 @@ DISTRO_FEATURES_LIBC = "ipv4 ipv6 libc-backtrace
libc-big-macros libc-bsd libc-c
libc-getlogin libc-idn libc-inet-anl libc-libm libc-libm-big \
libc-memusage libc-nis libc-nsswitch libc-rcmd libc-rtld-debug libc-spawn
libc-streams libc-sunrpc \
libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar
libc-posix-regexp libc-posix-regexp-glibc \
+ libc-charsets libc-locales libc-locale-code \
libc-posix-wchar-io"
ENABLE_BINARY_LOCALE_GENERATION = "0"
diff --git
a/meta-linaro-toolchain/recipes-core/eglibc/eglibc-locale_2.19.bbappend
b/meta-linaro-toolchain/recipes-core/eglibc/eglibc-locale_2.19.bbappend
new file mode 100755
index 0000000..3e91e74
--- /dev/null
+++ b/meta-linaro-toolchain/recipes-core/eglibc/eglibc-locale_2.19.bbappend
@@ -0,0 +1,23 @@
+do_install () {
+ mkdir -p ${D}${datadir}
+ if [ -n "$(ls ${LOCALETREESRC}/${bindir})" ]; then
+ mkdir -p ${D}${bindir}
+ cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
+ fi
+ if [ -n "$(ls ${LOCALETREESRC}/${localedir})" ]; then
+ mkdir -p ${D}${localedir}
+ cp -fpPR ${LOCALETREESRC}/${localedir}/* ${D}${localedir}
+ fi
+ if [ -e ${LOCALETREESRC}/${libdir}/gconv ]; then
+ mkdir -p ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
+ fi
+ if [ -e ${LOCALETREESRC}/${datadir}/i18n ]; then
+ cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
+ fi
+ if [ -e ${LOCALETREESRC}/${datadir}/locale ]; then
+ cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
+ fi
+ chown root.root -R ${D}
+ cp -fpPR ${LOCALETREESRC}/SUPPORTED ${WORKDIR}
+}
diff --git
a/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/
external-linaro-toolchain.bbb/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/
external-linaro-toolchain.bb
index 240d550..47fd4ca 100644
--- a/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/
external-linaro-toolchain.bb
+++ b/meta-linaro-toolchain/recipes-devtools/external-linaro-toolchain/
external-linaro-toolchain.bb
@@ -41,6 +41,12 @@ PROVIDES += "\
libitm \
libitm-dev \
libitm-staticdev \
+ libasan \
+ libasan-dev \
+ libasan-staticdev \
+ libatomic \
+ libatomic-dev \
+ libatomic-staticdev \
virtual/linux-libc-headers \
"
@@ -50,12 +56,11 @@ PR = "r2"
# https://launchpad.net/linaro-toolchain-binaries
SRC_URI = "file://SUPPORTED"
+LDLINUX32 = "${@base_contains("TUNE_FEATURES", "callconvention-hard",
"ld-linux-armhf.so.3", "ld-linux.so.3",d)}"
+
do_install() {
install -d ${D}${base_libdir}
- install -d ${D}${bindir}
- install -d ${D}${sbindir}
install -d ${D}${libdir}
- install -d ${D}${libexecdir}
install -d ${D}${datadir}
install -d ${D}${includedir}
@@ -79,7 +84,7 @@ do_install() {
fi
# fix up the copied symlinks (they are still pointing to the multiarch
directory)
- linker_name="${@base_contains("TUNE_FEATURES", "aarch64",
"ld-linux-aarch64.so.1", "ld-linux.so.3",d)}"
+ linker_name="${@base_contains("TUNE_FEATURES", "aarch64",
"ld-linux-aarch64.so.1", "${LDLINUX32}",d)}"
ln -sf ld-${ELT_VER_LIBC}.so ${D}${base_libdir}/${linker_name}
ln -sf ../../lib/libnsl.so.1 ${D}${libdir}/libnsl.so
ln -sf ../../lib/librt.so.1 ${D}${libdir}/librt.so
@@ -144,6 +149,12 @@ PACKAGES =+ "\
libitm \
libitm-dev \
libitm-staticdev \
+ libasan \
+ libasan-dev \
+ libasan-staticdev \
+ libatomic \
+ libatomic-dev \
+ libatomic-staticdev \
"
INSANE_SKIP_${PN}-dbg = "staticdev"
@@ -282,14 +293,16 @@ FILES_libssp-staticdev = " \
FILES_libgfortran = "${base_libdir}/libgfortran.so.*"
FILES_libgfortran-dev = " \
- ${base_libdir}/libgfortran.so"
+ ${base_libdir}/libgfortran.so \
+ ${base_libdir}/libgfortran.spec"
FILES_libgfortran-staticdev = " \
${base_libdir}/libgfortran.a \
${base_libdir}/libgfortranbegin.a"
FILES_libmudflap = "${base_libdir}/libmudflap*.so.*"
FILES_libmudflap-dev = "\
- ${base_libdir}/libmudflap*.so \
+ ${base_libdir}/libmudflap*.so"
+FILES_libmudflap-staticdev = "\
${base_libdir}/libmudflap*.a \
${base_libdir}/libmudflap*.la"
@@ -313,6 +326,19 @@ FILES_libgomp-dev = "\
FILES_libgomp-staticdev = "\
${base_libdir}/libgomp*.a \
"
+
+FILES_libasan = "\
+ ${base_libdir}/libasan.so.* \
+ "
+FILES_libasan-dev = "\
+ ${base_libdir}/libasan.so \
+ "
+FILES_libatomic ="\
+ ${base_libdir}/libatomic.so.* \
+ "
+FILES_libatomic-dev = "\
+ ${base_libdir}/libatomic.so \
+ "
ELT_VER_MAIN ??= ""
python () {
--
1.7.9.5
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20140410/b68ba3ff/attachment.html>
More information about the yocto
mailing list