> On Jul 1, 2015, at 5:57 AM, [email protected] wrote: > > From: Leonardo Sandoval <[email protected]> > > Without this patch, the D's include_fixed folder may change after building it > (due to the gcc's fixinc.sh script, executed on the do_compile task) and > changes > depend on the current sysroot headers, making the gcc's builds > non-deterministic. > > [YOCTO #7882]
I am good with this patch. > > Signed-off-by: Leonardo Sandoval <[email protected]> > --- > meta/recipes-devtools/gcc/gcc-target.inc | 31 +++++++++++++++++++++++++++++++ > 1 file changed, 31 insertions(+) > > diff --git a/meta/recipes-devtools/gcc/gcc-target.inc > b/meta/recipes-devtools/gcc/gcc-target.inc > index 5d31446..1f91107 100644 > --- a/meta/recipes-devtools/gcc/gcc-target.inc > +++ b/meta/recipes-devtools/gcc/gcc-target.inc > @@ -168,6 +168,37 @@ do_install () { > chown -R root:root ${D} > } > > +do_install_append () { > + # > + # Thefixinc.sh script, run on the gcc's compile phase, looks into > sysroot header > + # files and places the modified files into > + # {D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include-fixed folder. This > makes the > + # build not deterministic. The following code prunes all those > headers > + # except those under include-fixed/linux, *limits.h and README, > yielding > + # the same include-fixed folders no matter what sysroot > + > + include_fixed="${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include-fixed" > + for f in $(find ${include_fixed} -type f); do > + case $f in > + */include-fixed/linux/*) > + continue > + ;; > + */include-fixed/*limits.h) > + continue > + ;; > + */include-fixed/README) > + continue > + ;; > + *) > + # remove file and directory if empty > + bbdebug 2 "Pruning $f" > + rm $f > + find $(dirname $f) -maxdepth 0 -empty -exec rmdir {} \; > + ;; > + esac > + done > +} > + > # Installing /usr/lib/gcc/* means we'd have two copies, one from gcc-cross > # and one from here. These can confuse gcc cross where includes use > #include_next > # and builds track file dependencies (e.g. perl and its makedepends code). > -- > 1.8.4.5 >
signature.asc
Description: Message signed with OpenPGP using GPGMail
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
