On Wed, 2017-11-29 at 09:23 -0500, Bruce Ashfield wrote:
> On 11/28/2017 10:28 PM, Saul Wold wrote:
> > When using KBUILD_DEFCONFIG, $sccs should be set to the
> > $WORKDIR/defconfig
> > regardless if it compares or is copied. Otherwise $sccs is not set
> > and the
> > defconfig is not found correctly.
> 
> Actually, looking at this more today, and this morning in my testing.
> This shouldn't be necessary .. it doesn't hurt anything (well,
> actually
> it could end up with two defconfigs in the variable, but that also
> should be ok).
> 
Ok, I understand, it's in find_sccs() where if you have "defconfig" in
the SRC_URI then with my change you could end up with two defconfigs.

The problem I saw was if one just sets KBUILD_DEFCONFIG and does not
set any config info on the SRC_URI then it's possible for $sccs to be
empty, which was bad.

Maybe a cleaning of multiple "defconfig" entries on $sccs is needed?

Sau!


> > 
> > Part of
> > [YOCTO #12162]
> > 
> > Signed-off-by: Saul Wold <[email protected]>
> > ---
> >   meta/classes/kernel-yocto.bbclass | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/meta/classes/kernel-yocto.bbclass
> > b/meta/classes/kernel-yocto.bbclass
> > index 1d447951c49..98ec78fb768 100644
> > --- a/meta/classes/kernel-yocto.bbclass
> > +++ b/meta/classes/kernel-yocto.bbclass
> > @@ -110,8 +110,8 @@ do_kernel_metadata() {
> >                             fi
> >                     else
> >                             cp -f
> > ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${WORKDIR}/defconfig
> > -                           sccs="${WORKDIR}/defconfig"
> >                     fi
> > +                   sccs="${WORKDIR}/defconfig"
> 
> The test that was protecting this assignment is:
> 
>     if [ -f "${WORKDIR}/defconfig" ]; then
> 
> and then:
> 
>    cmp "${WORKDIR}/defconfig" 
> "${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}"
> 
> The only way that a defconfig can be in ${WORKDIR}/defconfig by
> the time this runs, is if the fetcher puts it there. Which means
> it is on the SRC_URI and comes from the recipe writer's layer.
> 
> There is existing code that already picks this up and adds it
> to the configuration queue:
> 
>          sccs="$sccs ${@" ".join(find_sccs(d))}"
> 
> So that defconfig, is already going to be picked up directly
> from the SRC_URI.
> 
> Bruce
> 
> 
> >             else
> >                     bbfatal "A KBUILD_DEFCONFIG
> > '${KBUILD_DEFCONFIG}' was specified, but not present in the source
> > tree"
> >             fi
> > 
> 
> 
-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to