| Submitter | McClintock Matthew-B29882 |
|---|---|
| Date | March 22, 2012, 3:32 p.m. |
| Message ID | <CAEsOVNecKdJhVFN0SRuR+1-MyecD-1Uyk+zR+C855NEaPo2n4g@mail.gmail.com> |
| Download | mbox | patch |
| Permalink | /patch/24165/ |
| State | New |
| Headers | show |
Comments
On Thu, Mar 22, 2012 at 8:32 AM, McClintock Matthew-B29882 <B29882@freescale.com> wrote: > On Thu, Mar 22, 2012 at 10:27 AM, Chris Larson <clarson@kergoth.com> wrote: >> On Thu, Mar 22, 2012 at 8:21 AM, McClintock Matthew-B29882 >> <B29882@freescale.com> wrote: >>> On Thu, Mar 22, 2012 at 10:08 AM, Chris Larson <kergoth@gmail.com> wrote: >>>> On Thu, Mar 22, 2012 at 8:00 AM, Christopher Larson <kergoth@gmail.com> wrote: >>>>> From: Christopher Larson <chris_larson@mentor.com> >>>>> >>>>> There's a problem in arch-powerpc.inc today, wherein it directly sets >>>>> TUNE_PKGARCH, rather than setting TUNE_PKGARCH_tune-<tuning>. As a result, >>>>> more specific tuning files (e.g. ppce500mc) then see their >>>>> TUNE_PKGARCH_tune-<tuning> variable definitions no longer obeyed. As >>>>> a consequence, the TUNE_PKGARCH ends up as 'powerpc' or 'powerpc-nf' rather >>>>> than 'ppce500mc', which in turn causes a 'TUNE_PKGARCH not in PACKAGE_ARCHS' >>>>> failure in the build. >>>>> >>>>> To fix, the .inc now sets TUNE_PKGARCH_tune-powerpc and >>>>> TUNE_PKGARCH_tune-powerpc-nf rather than TUNE_PKGARCH. >>>>> >>>>> Signed-off-by: Christopher Larson <chris_larson@mentor.com> >>>>> --- >>>>> meta/conf/machine/include/powerpc/arch-powerpc.inc | 5 +++-- >>>>> 1 files changed, 3 insertions(+), 2 deletions(-) >>>>> >>>>> diff --git a/meta/conf/machine/include/powerpc/arch-powerpc.inc b/meta/conf/machine/include/powerpc/arch-powerpc.inc >>>>> index c9b2829..f811a3e 100644 >>>>> --- a/meta/conf/machine/include/powerpc/arch-powerpc.inc >>>>> +++ b/meta/conf/machine/include/powerpc/arch-powerpc.inc >>>>> @@ -21,13 +21,14 @@ ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-e >>>>> PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" >>>>> >>>>> PPCPKGARCH = "${TUNE_ARCH}${PPCPKGSFX_FPU}" >>>>> -TUNE_PKGARCH ?= "${PPCPKGARCH}" >>>>> >>>>> # Basic tune definitions >>>>> -AVAILTUNES += "powerpc powerpc-nf" >>>>> +AVAILTUNES += "powerpc powerpc-nf" >>>>> TUNE_FEATURES_tune-powerpc-nf ?= "m32 fpu-soft" >>>>> +TUNE_PKGARCH_tune-powerpc-nf = "${PPCPKGARCH}" >>>>> BASE_LIB_tune-powerpc-nf = "lib" >>>>> PACKAGE_EXTRA_ARCHS_tune-powerpc-nf = "powerpc-nf" >>>>> TUNE_FEATURES_tune-powerpc ?= "m32 fpu-hard" >>>>> +TUNE_PKGARCH_tune-powerpc = "${PPCPKGARCH}" >>>>> BASE_LIB_tune-powerpc = "lib" >>>>> PACKAGE_EXTRA_ARCHS_tune-powerpc = "powerpc >>>> >>>> Hmm, actually, there's no reason these can't just set >>>> TUNE_PKGARCH_tune-powerpc = "powerpc", etc rather than using the >>>> PPCPKGARCH indirection. Anyone more familiar with the tuning code have >>>> an opinion here? >>> >>> I thought this was already fixed in my patch. Seems like it was not applied? >>> >>> -M >>> >>> commit 216b54e23a995aea79499b88a99f606bb65579af >>> Author: Matthew McClintock <msm@freescale.com> >>> Date: Mon Feb 27 10:58:45 2012 -0600 >>> >>> arch-powerpc.inc: use default value of TUNE_PKGARCH >>> >>> We can use the default value for TUNE_PKGARCH, and now we just >>> append "-nf" if TARGET_FPU is fpu-soft >>> >>> Signed-off-by: Matthew McClintock <msm@freescale.com> >> >> Ah, indeed, apparently it was not. That said, it looks like your >> version will end up with TUNE_PKGARCH like ppce500mc-nf, is that >> correct? You know this stuff better than I do. > > Ugh. I pasted an old version of my patch the correct version is here: > > commit 216b54e23a995aea79499b88a99f606bb65579af > Author: Matthew McClintock <msm@freescale.com> > Date: Mon Feb 27 10:58:45 2012 -0600 > > arch-powerpc.inc: use default value of TUNE_PKGARCH > > We can use the default value for TUNE_PKGARCH, and now we just > append "-nf" if TARGET_FPU is fpu-soft > > Signed-off-by: Matthew McClintock <msm@freescale.com> > > diff --git a/meta/conf/machine/include/powerpc/arch-powerpc.inc > b/meta/conf/machine/include/powerpc/arch-powerpc.inc > index c9b2829..9f588e8 100644 > --- a/meta/conf/machine/include/powerpc/arch-powerpc.inc > +++ b/meta/conf/machine/include/powerpc/arch-powerpc.inc > @@ -18,10 +18,8 @@ TARGET_FPU .= > "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)} > > ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in > ['ppc-efd', 'ppc-efs']]}" > > -PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , > "", "-nf", d)}" > - > -PPCPKGARCH = "${TUNE_ARCH}${PPCPKGSFX_FPU}" > -TUNE_PKGARCH ?= "${PPCPKGARCH}" > > +PPCPKGSFX_FPU = "${@['', '-nf'][d.getVar('TARGET_FPU',d,1) in ['fpu-soft']]}" > +TUNE_PKGARCH_append = "${PPCPKGSFX_FPU}" Cool, thanks. For what it's worth, oe-core folk, this has my ack, as Mentor is going to need this fix also in the long term :)
On Thu, 2012-03-22 at 08:33 -0700, Chris Larson wrote: > On Thu, Mar 22, 2012 at 8:32 AM, McClintock Matthew-B29882 > <B29882@freescale.com> wrote: > > On Thu, Mar 22, 2012 at 10:27 AM, Chris Larson <clarson@kergoth.com> wrote: > >> On Thu, Mar 22, 2012 at 8:21 AM, McClintock Matthew-B29882 > >> <B29882@freescale.com> wrote: > >>> On Thu, Mar 22, 2012 at 10:08 AM, Chris Larson <kergoth@gmail.com> wrote: > >>>> On Thu, Mar 22, 2012 at 8:00 AM, Christopher Larson <kergoth@gmail.com> wrote: > >>>>> From: Christopher Larson <chris_larson@mentor.com> > >>>>> > >>>>> There's a problem in arch-powerpc.inc today, wherein it directly sets > >>>>> TUNE_PKGARCH, rather than setting TUNE_PKGARCH_tune-<tuning>. As a result, > >>>>> more specific tuning files (e.g. ppce500mc) then see their > >>>>> TUNE_PKGARCH_tune-<tuning> variable definitions no longer obeyed. As > >>>>> a consequence, the TUNE_PKGARCH ends up as 'powerpc' or 'powerpc-nf' rather > >>>>> than 'ppce500mc', which in turn causes a 'TUNE_PKGARCH not in PACKAGE_ARCHS' > >>>>> failure in the build. > >>>>> > >>>>> To fix, the .inc now sets TUNE_PKGARCH_tune-powerpc and > >>>>> TUNE_PKGARCH_tune-powerpc-nf rather than TUNE_PKGARCH. > >>>>> > >>>>> Signed-off-by: Christopher Larson <chris_larson@mentor.com> > >>>>> --- > >>>>> meta/conf/machine/include/powerpc/arch-powerpc.inc | 5 +++-- > >>>>> 1 files changed, 3 insertions(+), 2 deletions(-) > >>>>> > >>>>> diff --git a/meta/conf/machine/include/powerpc/arch-powerpc.inc b/meta/conf/machine/include/powerpc/arch-powerpc.inc > >>>>> index c9b2829..f811a3e 100644 > >>>>> --- a/meta/conf/machine/include/powerpc/arch-powerpc.inc > >>>>> +++ b/meta/conf/machine/include/powerpc/arch-powerpc.inc > >>>>> @@ -21,13 +21,14 @@ ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-e > >>>>> PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" > >>>>> > >>>>> PPCPKGARCH = "${TUNE_ARCH}${PPCPKGSFX_FPU}" > >>>>> -TUNE_PKGARCH ?= "${PPCPKGARCH}" > >>>>> > >>>>> # Basic tune definitions > >>>>> -AVAILTUNES += "powerpc powerpc-nf" > >>>>> +AVAILTUNES += "powerpc powerpc-nf" > >>>>> TUNE_FEATURES_tune-powerpc-nf ?= "m32 fpu-soft" > >>>>> +TUNE_PKGARCH_tune-powerpc-nf = "${PPCPKGARCH}" > >>>>> BASE_LIB_tune-powerpc-nf = "lib" > >>>>> PACKAGE_EXTRA_ARCHS_tune-powerpc-nf = "powerpc-nf" > >>>>> TUNE_FEATURES_tune-powerpc ?= "m32 fpu-hard" > >>>>> +TUNE_PKGARCH_tune-powerpc = "${PPCPKGARCH}" > >>>>> BASE_LIB_tune-powerpc = "lib" > >>>>> PACKAGE_EXTRA_ARCHS_tune-powerpc = "powerpc > >>>> > >>>> Hmm, actually, there's no reason these can't just set > >>>> TUNE_PKGARCH_tune-powerpc = "powerpc", etc rather than using the > >>>> PPCPKGARCH indirection. Anyone more familiar with the tuning code have > >>>> an opinion here? > >>> > >>> I thought this was already fixed in my patch. Seems like it was not applied? > >>> > >>> -M > >>> > >>> commit 216b54e23a995aea79499b88a99f606bb65579af > >>> Author: Matthew McClintock <msm@freescale.com> > >>> Date: Mon Feb 27 10:58:45 2012 -0600 > >>> > >>> arch-powerpc.inc: use default value of TUNE_PKGARCH > >>> > >>> We can use the default value for TUNE_PKGARCH, and now we just > >>> append "-nf" if TARGET_FPU is fpu-soft > >>> > >>> Signed-off-by: Matthew McClintock <msm@freescale.com> > >> > >> Ah, indeed, apparently it was not. That said, it looks like your > >> version will end up with TUNE_PKGARCH like ppce500mc-nf, is that > >> correct? You know this stuff better than I do. > > > > Ugh. I pasted an old version of my patch the correct version is here: > > > > commit 216b54e23a995aea79499b88a99f606bb65579af > > Author: Matthew McClintock <msm@freescale.com> > > Date: Mon Feb 27 10:58:45 2012 -0600 > > > > arch-powerpc.inc: use default value of TUNE_PKGARCH > > > > We can use the default value for TUNE_PKGARCH, and now we just > > append "-nf" if TARGET_FPU is fpu-soft > > > > Signed-off-by: Matthew McClintock <msm@freescale.com> > > > > diff --git a/meta/conf/machine/include/powerpc/arch-powerpc.inc > > b/meta/conf/machine/include/powerpc/arch-powerpc.inc > > index c9b2829..9f588e8 100644 > > --- a/meta/conf/machine/include/powerpc/arch-powerpc.inc > > +++ b/meta/conf/machine/include/powerpc/arch-powerpc.inc > > @@ -18,10 +18,8 @@ TARGET_FPU .= > > "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)} > > > > ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in > > ['ppc-efd', 'ppc-efs']]}" > > > > -PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , > > "", "-nf", d)}" > > - > > -PPCPKGARCH = "${TUNE_ARCH}${PPCPKGSFX_FPU}" > > -TUNE_PKGARCH ?= "${PPCPKGARCH}" > > > > +PPCPKGSFX_FPU = "${@['', '-nf'][d.getVar('TARGET_FPU',d,1) in ['fpu-soft']]}" > > +TUNE_PKGARCH_append = "${PPCPKGSFX_FPU}" > > Cool, thanks. For what it's worth, oe-core folk, this has my ack, as > Mentor is going to need this fix also in the long term :) d.getVar('TARGET_FPU',d,1) is not valid. Can someone please send me a correct version of this patch! :) Cheers, Richard
Patch
diff --git a/meta/conf/machine/include/powerpc/arch-powerpc.inc b/meta/conf/machine/include/powerpc/arch-powerpc.inc index c9b2829..9f588e8 100644 --- a/meta/conf/machine/include/powerpc/arch-powerpc.inc +++ b/meta/conf/machine/include/powerpc/arch-powerpc.inc @@ -18,10 +18,8 @@ TARGET_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "fpu-soft", "soft", "", d)} ABIEXTENSION = "${@['','spe'][d.getVar('TARGET_FPU', True) in ['ppc-efd', 'ppc-efs']]}" -PPCPKGSFX_FPU = "${@bb.utils.contains("TUNE_FEATURES", "fpu-hard" , "", "-nf", d)}" - -PPCPKGARCH = "${TUNE_ARCH}${PPCPKGSFX_FPU}" -TUNE_PKGARCH ?= "${PPCPKGARCH}" +PPCPKGSFX_FPU = "${@['', '-nf'][d.getVar('TARGET_FPU',d,1) in ['fpu-soft']]}" +TUNE_PKGARCH_append = "${PPCPKGSFX_FPU}"