[yocto] [meta-linaro][PATCH] external-linaro-toolchain: Fix for 32bit armhf build

Kazuya Nishimura kazuya.nisimura at gmail.com
Thu Apr 10 20:11:52 PDT 2014


Hi Khem,

> why is chown needed here ?
It is copied from original implementation.
Please check do_install() in meta/recipes-core/eglibc/eglibc-locale.inc

> secondly, this piece should go into OE-Core
maybe.

Best regards,
Kaz


2014-04-11 3:36 GMT+09:00 Khem Raj <raj.khem at gmail.com>:

> On Thu, Apr 10, 2014 at 12:49 AM, Kazuya Nishimura
> <kazuya.nisimura at gmail.com> wrote:
> > 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}
> > +}
>
> why is chown needed here ?
> secondly, this piece should go into OE-Core
>
> > diff --git
> > 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
> > 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
> >
> >
> > --
> > _______________________________________________
> > yocto mailing list
> > yocto at yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/yocto
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20140411/8c1377f1/attachment.html>


More information about the yocto mailing list