From: "Eric Bénard" <eric@eukrea.com>
To: Otavio Salvador <otavio@ossystems.com.br>
Cc: meta-freescale Mailing List <meta-freescale@yoctoproject.org>
Subject: Re: [meta-fsl-arm PATCH 01/23] fsl-dynamic-packagearch.bbclass: Dynamically set package architecture
Date: Tue, 24 Sep 2013 01:04:45 +0200 [thread overview]
Message-ID: <20130924010445.45f71815@e6520eb> (raw)
In-Reply-To: <1379966158-18179-2-git-send-email-otavio@ossystems.com.br>
H Otavio,
Le Mon, 23 Sep 2013 16:55:36 -0300,
Otavio Salvador <otavio@ossystems.com.br> a écrit :
> This allow to easy reuse of binary packages among similar SoCs. The
> usual use for this is to share SoC specific packages among different
> boards. The class can be used to share GPU packages for i.MX53 boards
> (as all them share the AMD GPU) and i.MX6 based boards (as all them
> share Vivante GPU).
>
> It inspects the database and identify if the package provides or
> depends on one of subarch provided values and if it does, it sets the
> PACKAGE_ARCH for MACHINE_SUBARCH value otherwise if it matches in the
> machine specific filter, it sets it to MACHINE_ARCH.
>
> Change-Id: Icb0a8060e862c8eeb166c45d1b39c40de07b01d8
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
> classes/fsl-dynamic-packagearch.bbclass | 37 +++++++++++++++++++++++++++++++++
> 1 file changed, 37 insertions(+)
> create mode 100644 classes/fsl-dynamic-packagearch.bbclass
>
> diff --git a/classes/fsl-dynamic-packagearch.bbclass b/classes/fsl-dynamic-packagearch.bbclass
> new file mode 100644
> index 0000000..2778885
> --- /dev/null
> +++ b/classes/fsl-dynamic-packagearch.bbclass
> @@ -0,0 +1,37 @@
> +# Automatically set PACKAGE_ARCH for MACHINE_SUBARCH
> +#
> +# This allow to easy reuse of binary packages among similar SoCs. The
> +# usual use for this is to share SoC specific packages among different
> +# boards.
> +#
> +# For example, in meta-fsl-arm, this is used to share GPU packages for
> +# i.MX53 boards (as all them share the AMD GPU) and i.MX6 based boards
> +# (as all them share Vivante GPU).
> +#
> +# To use the class, specify:
> +#
> +# SUBARCH_FILTER = "foo"
> +# MACHINE_ARCH_FILTER = "bar"
> +#
> +# Copyright 2013 (C) O.S. Systems Software LTDA.
> +
> +python __anonymous () {
> + machine_arch_filter = set((d.getVar("MACHINE_ARCH_FILTER", True) or "").split())
> + subarch_filter = set((d.getVar("SUBARCH_FILTER", True) or "").split())
> + if subarch_filter or machine_arch_filter:
> + provides = set((d.getVar("PROVIDES", True) or "").split())
> + depends = set((d.getVar("DEPENDS", True) or "").split())
> + PN = d.getVar("PN", True)
> +
> + package_arch = None
> + if list(machine_arch_filter & (provides | depends)):
> + package_arch = d.getVar("MACHINE_ARCH", True)
> + elif list(subarch_filter & (provides | depends)):
> + package_arch = d.getVar("MACHINE_SUBARCH", True)
> + if not package_arch:
> + bb.parse.SkipPackage("You must set MACHINE_SUBARCH as SUBARCH_FILTER is set for this SoC.")
> +
> + if package_arch:
> + bb.debug(1, "Use '%s' as package archictecture for '%s'" % (package_arch, PN))
> + d.setVar("PACKAGE_ARCH", package_arch)
> +}
what is the time cost of this dynamic setting vs the static one ?
Eric
next prev parent reply other threads:[~2013-09-23 23:04 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-23 19:55 [meta-fsl-arm PATCH 00/23] Dynamically choose of package architecture Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 01/23] fsl-dynamic-packagearch.bbclass: Dynamically set " Otavio Salvador
2013-09-23 23:04 ` Eric Bénard [this message]
2013-09-24 1:04 ` Otavio Salvador
2013-09-24 11:21 ` Daiane Angolini
2013-09-24 11:58 ` Otavio Salvador
2013-09-24 17:02 ` Eric Bénard
2013-09-24 17:36 ` Otavio Salvador
2013-09-24 18:16 ` Eric Bénard
2013-09-24 18:26 ` Otavio Salvador
2013-09-24 18:40 ` Eric Bénard
2013-09-23 19:55 ` [meta-fsl-arm PATCH 02/23] xf86-input-evdev: Drop PACKAGE_ARCH override Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 03/23] imx-base.inc: Use 'fsl-dynamic-packagearch' class Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 04/23] mxs-base.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 05/23] qt4: Remove redundant PACKAGE_ARCH setting Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 06/23] qt5: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 07/23] mesa-demos: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 08/23] mesa: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 09/23] amd-gpu-mx51.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 10/23] gpu-viv-bin-mx6q.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 11/23] gpu-viv-g2d.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 12/23] imx-test: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 13/23] imx-lib: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 14/23] fsl-alsa-plugins: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 15/23] gst-fsl-plugin.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 16/23] firmware-imx: Use MACHINE_SUBARCH for PACKAGE_ARCH Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 17/23] libdrm: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 18/23] xf86-video-imxfb-vivante: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 19/23] gst-plugins-gl: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 20/23] gst-plugins-base: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 21/23] libfslcodec.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 22/23] libfslparser.inc: " Otavio Salvador
2013-09-23 19:55 ` [meta-fsl-arm PATCH 23/23] libfslvpuwrap: " Otavio Salvador
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130924010445.45f71815@e6520eb \
--to=eric@eukrea.com \
--cc=meta-freescale@yoctoproject.org \
--cc=otavio@ossystems.com.br \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.