Richard Purdie wrote on 2012-01-17: > On Mon, 2012-01-16 at 19:43 +0800, Lianhao Lu wrote: >> [YOCTO #1555] >> Adding new mechanism to allow multiple gcc related recipes sharing the >> same src directory when using the basichash as the signature handler. >> >> Using the same stamp file for multiple gcc related recipes to share the >> same src directory is no longer working when using the basichash >> signature. >> >> Signed-off-by: Lianhao Lu <[email protected]> >> --- >> meta/recipes-devtools/gcc/gcc-common.inc | 56 >> ++++++++++++++++++++++++++++++ >> 1 files changed, 56 insertions(+), 0 deletions(-) > > Can you please check if this can be fixed by: > > diff --git a/meta/recipes-devtools/gcc/gcc-configure-common.inc > b/meta/recipes-devtools/gcc/gcc-configure-common.inc > index d014980..3a82720 100644 > --- a/meta/recipes-devtools/gcc/gcc-configure-common.inc > +++ b/meta/recipes-devtools/gcc/gcc-configure-common.inc > @@ -77,6 +77,9 @@ do_headerfix () { > > addtask headerfix after do_unpack before do_patch > +CROSS_TARGET_SYS_DIR[vardepsexclude] = "PN" > +CROSS_TARGET_SYS_DIR[vardepvalue] = "1" > + > do_configure_prepend () { > # teach gcc to find correct target includedir when checking libc ssp > support > mkdir -p ${B}/gcc > as discussed in the "sstate info" thread? >
By using this patch, gcc-cross-initial, gcc-cross-intermediate, gcc-cross would have the same signatures for tasks like do_fetch, do_unpack, do_headerfix, do_patch. But libgcc still has different signature with gcc-cross-initial for task do_patch. By bitbake-diffsigs the do_patch signature files between gcc-cross-initial and libgcc, it says: Dependency on task gcc-cross-initial_4.6.bb.do_unpack was added Dependency on task gcc-cross-initial_4.6.bb.do_headerfix was added Dependency on task libgcc_4.6.bb.do_unpack was removed Besides, gcc-runtime seems have an additional patch file "fortran-cross-compile-hack.patch" which was never got be used. This would results all the signature difference between gcc-cross-initial and gcc-runtime. After I remove that unused patch file, the signatures begin to differ in task do_headerfix and do_patch. By bitbake-diffsigs the do_headerfix sigangure files between gcc-cross-initial and gcc-runtime, we could see tons of variable values, variable dependencies, task dependencies difference. So I think this patch alone is not enough to solve all the problems here. Best Regards, Lianhao _______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
