Re: [OE-core] [PATCH] gcc-cross: Clean up fixed-includes
On Fri, Aug 30, 2019 at 9:55 AM wrote: > > On Fri, 2019-08-30 at 09:51 -0700, Khem Raj wrote: > > On Fri, Aug 30, 2019 at 8:54 AM Richard Purdie > > wrote: > > > We had interesting failures where building gcc-cross-powerpc with > > > 5.0 kernel > > > headers, then building eudev after moving to 5.2 headers failed. > > > > > > gcc-cross doesn't rebuild when linux-libc-headers changes due to > > > its > > > listing in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS. This shouldn't matter > > > but > > > fixincludes as adding asm-generic/socket.h to its filtered list > > > which > > > was then replacing the real header with an older version. This > > > mismatch > > > lead to build failures. > > > > > > We trust the Linux kernel headers to be ANSI safe so lets just > > > clear out > > > any headers and trust the originals to be correct. > > > > > > Signed-off-by: Richard Purdie > > > --- > > > meta/recipes-devtools/gcc/gcc-cross.inc | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc > > > b/meta/recipes-devtools/gcc/gcc-cross.inc > > > index 6222c2e8c91..e417b898734 100644 > > > --- a/meta/recipes-devtools/gcc/gcc-cross.inc > > > +++ b/meta/recipes-devtools/gcc/gcc-cross.inc > > > @@ -196,6 +196,8 @@ do_install () { > > > # We use libiberty from binutils > > > find ${D}${exec_prefix}/lib -name libiberty.a | xargs rm -f > > > find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f > > > + > > > + find ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include-fixed > > > -type f -not -name "README" -not -name limits.h -not -name > > > syslimits.h | xargs rm -f > > > > Whats different for limits.h and syslimits.h as compared to standard > > headers from libc, Maybe we should just get that sorted as well while > > here > > limits.h looks to be gcc specific additions/fallback. syslimits.h is > just a passthrough. I decided to go with less risk in the patch and > leave those as is but am open to more investigation. > fixed limits.h needs syslimits.h so either both go or both stay > I suspect limits.h is there for pre glibc bootstrap? thats right. > > Cheers, > > Richard > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] gcc-cross: Clean up fixed-includes
On Fri, 2019-08-30 at 09:51 -0700, Khem Raj wrote: > On Fri, Aug 30, 2019 at 8:54 AM Richard Purdie > wrote: > > We had interesting failures where building gcc-cross-powerpc with > > 5.0 kernel > > headers, then building eudev after moving to 5.2 headers failed. > > > > gcc-cross doesn't rebuild when linux-libc-headers changes due to > > its > > listing in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS. This shouldn't matter > > but > > fixincludes as adding asm-generic/socket.h to its filtered list > > which > > was then replacing the real header with an older version. This > > mismatch > > lead to build failures. > > > > We trust the Linux kernel headers to be ANSI safe so lets just > > clear out > > any headers and trust the originals to be correct. > > > > Signed-off-by: Richard Purdie > > --- > > meta/recipes-devtools/gcc/gcc-cross.inc | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc > > b/meta/recipes-devtools/gcc/gcc-cross.inc > > index 6222c2e8c91..e417b898734 100644 > > --- a/meta/recipes-devtools/gcc/gcc-cross.inc > > +++ b/meta/recipes-devtools/gcc/gcc-cross.inc > > @@ -196,6 +196,8 @@ do_install () { > > # We use libiberty from binutils > > find ${D}${exec_prefix}/lib -name libiberty.a | xargs rm -f > > find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f > > + > > + find ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include-fixed > > -type f -not -name "README" -not -name limits.h -not -name > > syslimits.h | xargs rm -f > > Whats different for limits.h and syslimits.h as compared to standard > headers from libc, Maybe we should just get that sorted as well while > here limits.h looks to be gcc specific additions/fallback. syslimits.h is just a passthrough. I decided to go with less risk in the patch and leave those as is but am open to more investigation. I suspect limits.h is there for pre glibc bootstrap? Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] gcc-cross: Clean up fixed-includes
On Fri, Aug 30, 2019 at 8:54 AM Richard Purdie wrote: > > We had interesting failures where building gcc-cross-powerpc with 5.0 kernel > headers, then building eudev after moving to 5.2 headers failed. > > gcc-cross doesn't rebuild when linux-libc-headers changes due to its > listing in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS. This shouldn't matter but > fixincludes as adding asm-generic/socket.h to its filtered list which > was then replacing the real header with an older version. This mismatch > lead to build failures. > > We trust the Linux kernel headers to be ANSI safe so lets just clear out > any headers and trust the originals to be correct. > > Signed-off-by: Richard Purdie > --- > meta/recipes-devtools/gcc/gcc-cross.inc | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc > b/meta/recipes-devtools/gcc/gcc-cross.inc > index 6222c2e8c91..e417b898734 100644 > --- a/meta/recipes-devtools/gcc/gcc-cross.inc > +++ b/meta/recipes-devtools/gcc/gcc-cross.inc > @@ -196,6 +196,8 @@ do_install () { > # We use libiberty from binutils > find ${D}${exec_prefix}/lib -name libiberty.a | xargs rm -f > find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f > + > + find ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include-fixed -type f > -not -name "README" -not -name limits.h -not -name syslimits.h | xargs rm -f Whats different for limits.h and syslimits.h as compared to standard headers from libc, Maybe we should just get that sorted as well while here > } > > do_package[noexec] = "1" > -- > 2.20.1 > > -- > ___ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] gcc-cross: Clean up fixed-includes
We had interesting failures where building gcc-cross-powerpc with 5.0 kernel headers, then building eudev after moving to 5.2 headers failed. gcc-cross doesn't rebuild when linux-libc-headers changes due to its listing in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS. This shouldn't matter but fixincludes as adding asm-generic/socket.h to its filtered list which was then replacing the real header with an older version. This mismatch lead to build failures. We trust the Linux kernel headers to be ANSI safe so lets just clear out any headers and trust the originals to be correct. Signed-off-by: Richard Purdie --- meta/recipes-devtools/gcc/gcc-cross.inc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc b/meta/recipes-devtools/gcc/gcc-cross.inc index 6222c2e8c91..e417b898734 100644 --- a/meta/recipes-devtools/gcc/gcc-cross.inc +++ b/meta/recipes-devtools/gcc/gcc-cross.inc @@ -196,6 +196,8 @@ do_install () { # We use libiberty from binutils find ${D}${exec_prefix}/lib -name libiberty.a | xargs rm -f find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f + + find ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include-fixed -type f -not -name "README" -not -name limits.h -not -name syslimits.h | xargs rm -f } do_package[noexec] = "1" -- 2.20.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core