[OE-core] [PATCH] gcc-runtime: Move content from gcclibdir into libdir

Khem Raj raj.khem at gmail.com
Tue Aug 13 14:36:15 UTC 2019


On Tue, Aug 13, 2019 at 7:23 AM Richard Purdie
<richard.purdie at linuxfoundation.org> wrote:
>
> On Mon, 2019-08-12 at 16:22 -0700, Khem Raj wrote:
> > OE does not use the traditional /usr/lib/gcc prefix to store gcc-
> > runtime
> > it basically is moved into libdir, however some newer files were
> > installed by newer versions of gcc especially libgomp ( omp.h
> > openacc.h )
> > into gcclibdir, so we have content in both directories, this confuses
> > other tools which are trying to guess the gcc installation and its
> > runtime location, since now we have two directories, the tools either
> > choose one or other and we get inconsistent behavior, e.g. clang for
> > aarch64 uses /usr/lib but same clang for riscv64 chose /usr/lib/gcc
> >
> > This change ensures that OE ends up with single valid location for
> > gcc
> > runtime files
> >
> > Signed-off-by: Khem Raj <raj.khem at gmail.com>
> > ---
> >  meta/recipes-devtools/gcc/gcc-runtime.inc    | 5 +++++
> >  meta/recipes-devtools/gcc/gcc-runtime_8.3.bb | 3 ++-
> >  meta/recipes-devtools/gcc/gcc-runtime_9.1.bb | 3 ++-
> >  3 files changed, 9 insertions(+), 2 deletions(-)
>
> This appears to break mingw:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/89/builds/925
>

seems   virtual:nativesdk:/home/pokybuild/yocto-worker/meta-mingw/build/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb:do_package

but I cant see which files can you help

> Cheers,
>
> Richard
>
>
> > diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc
> > b/meta/recipes-devtools/gcc/gcc-runtime.inc
> > index a5c2600d7f..ebba774108 100644
> > --- a/meta/recipes-devtools/gcc/gcc-runtime.inc
> > +++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
> > @@ -77,6 +77,11 @@ do_install () {
> >               cd ${B}/${TARGET_SYS}/$d/
> >               oe_runmake 'DESTDIR=${D}'
> > MULTIBUILDTOP=${B}/${TARGET_SYS}/$d/ install
> >       done
> > +     if [ -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include ]; then
> > +             install -d ${D}${libdir}/${TARGET_SYS}/${BINV}/include
> > +             mv ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/*
> > ${D}${libdir}/${TARGET_SYS}/${BINV}/include
> > +             rmdir --ignore-fail-on-non-empty -p
> > ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include
> > +     fi
> >       rm -rf ${D}${infodir}/libgomp.info ${D}${infodir}/dir
> >       rm -rf ${D}${infodir}/libitm.info ${D}${infodir}/dir
> >       rm -rf ${D}${infodir}/libquadmath.info ${D}${infodir}/dir
> > diff --git a/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
> > b/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
> > index a1c7a76d0b..172af4e7e1 100644
> > --- a/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
> > +++ b/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
> > @@ -5,7 +5,8 @@ require gcc-runtime.inc
> >  EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
> >
> >  FILES_libgomp-dev += "\
> > -    ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/openacc.h \
> > +    ${libdir}/${TARGET_SYS}/${BINV}/include/omp.h \
> > +    ${libdir}/${TARGET_SYS}/${BINV}/include/openacc.h \
> >  "
> >
> >  # Building with thumb enabled on armv6t fails
> > diff --git a/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
> > b/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
> > index a1c7a76d0b..172af4e7e1 100644
> > --- a/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
> > +++ b/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
> > @@ -5,7 +5,8 @@ require gcc-runtime.inc
> >  EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
> >
> >  FILES_libgomp-dev += "\
> > -    ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/openacc.h \
> > +    ${libdir}/${TARGET_SYS}/${BINV}/include/omp.h \
> > +    ${libdir}/${TARGET_SYS}/${BINV}/include/openacc.h \
> >  "
> >
> >  # Building with thumb enabled on armv6t fails
> > --
> > 2.22.0
> >
>


More information about the Openembedded-core mailing list