[oe] [PATCH] bitbake.conf: Add one recipe identifying OVERRIDE based on recipe type

Frans Meulenbroeks fransmeulenbroeks at gmail.com
Sat Oct 23 07:18:51 UTC 2010


2010/10/22 Khem Raj <raj.khem at gmail.com>:
> It adds an override based on type of recipe
> e.g. recipes ending with usual suffixes like -native -cross, -sdk
> add the same to overrides with out leading '-'
> It also add the same override for BBCLASSEXTEND
> For normal recipes we add 'target' to overrides
>
> This will give up better control over defining and combining
> recipes into using BBCLASSEXTEND and still have finer control
> if needed. We wont require to have virtclass-xxx overrides
> anymore
>
> Signed-off-by: Khem Raj <raj.khem at gmail.com>
> ---
>  classes/utils.bbclass |    3 +++
>  conf/bitbake.conf     |    2 ++
>  lib/oe/utils.py       |    8 ++++++++
>  3 files changed, 13 insertions(+), 0 deletions(-)
>
> diff --git a/classes/utils.bbclass b/classes/utils.bbclass
> index 10d49ce..7c96509 100644
> --- a/classes/utils.bbclass
> +++ b/classes/utils.bbclass
> @@ -36,6 +36,9 @@ def base_both_contain(variable1, variable2, checkvalue, d):
>  def base_prune_suffix(var, suffixes, d):
>     return oe.utils.prune_suffix(var, suffixes, d)
>
> +def base_get_suffix(var, suffixes, d):
> +    return oe.utils.get_suffix(var, suffixes, d)
> +
>  def oe_filter(f, str, d):
>     return oe.utils.str_filter(f, str, d)
>
> diff --git a/conf/bitbake.conf b/conf/bitbake.conf
> index 539ab3d..2f3dd6b 100644
> --- a/conf/bitbake.conf
> +++ b/conf/bitbake.conf
> @@ -195,6 +195,8 @@ MACHINE_KERNEL_PR = ""
>  # otherwise it is the same as PN and P
>  SPECIAL_PKGSUFFIX = "-native -cross -initial -intermediate -nativesdk -crosssdk -cross-canadian -sdk"
>  BPN = "${@base_prune_suffix('${PN}', '${SPECIAL_PKGSUFFIX}'.split(), d)}"
> +# Add a _target override so we can do target specific overrides when using BBCLASSEXTEND
> +OVERRIDES_prepend = "${@base_get_suffix('${PN}', '${SPECIAL_PKGSUFFIX}'.split(), d)}:"
>  BP = "${BPN}-${PV}"
>
>  # Package info.
> diff --git a/lib/oe/utils.py b/lib/oe/utils.py
> index 2169ed2..4822864 100644
> --- a/lib/oe/utils.py
> +++ b/lib/oe/utils.py
> @@ -67,6 +67,14 @@ def prune_suffix(var, suffixes, d):
>             return var.replace(suffix, "")
>     return var
>
> +def get_suffix(var, suffixes, d):
> +    # See if var ends with any of the suffixes listed and
> +    # if found return it otherwise return "target'
> +    for suffix in suffixes:
> +        if var.endswith(suffix):
> +           return suffix[1:]
> +    return "target"
> +
>  def str_filter(f, str, d):
>     from re import match
>     return " ".join(filter(lambda x: match(f, x, 0), str.split()))
> --
> 1.7.1

Cool. I felt we need -target for quite a while, but could not add it myself.

Acked-by: Frans Meulenbroeks <fransmeulenbroeks at gmail.com>

Next question/proposal:
A big patch to replace things like virtclass-natve to -native ?
And then a patch to remove that functionality ?

Seems liek the way forward.

Frans




More information about the Openembedded-devel mailing list