From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by yocto-www.yoctoproject.org (Postfix, from userid 118) id 50E1EE00832; Thu, 26 Mar 2015 11:56:22 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on yocto-www.yoctoproject.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-HAM-Report: * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * (max.oss.09[at]gmail.com) * -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low * trust * [209.85.212.178 listed in list.dnswl.org] * -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's * domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) by yocto-www.yoctoproject.org (Postfix) with ESMTP id 94245E0056E for ; Thu, 26 Mar 2015 11:56:16 -0700 (PDT) Received: by wibg7 with SMTP id g7so546259wib.1 for ; Thu, 26 Mar 2015 11:56:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id; bh=FAa+0IiePOAftwWX7UVu7HFSN8JJ7L6dUcDffw3iNtc=; b=pDJd3JUOE8pExId6Vio9upNodAISQyWmzHWjmpsOfbaZAwLjGlRWHIZu9VcJbC9abB 6erEoPpnzHKsMkReh3rW3+2dnIa8CzoWqzypJaXna+na3dpo5aGFdFPui4sFql48je/t iCtqRIZmDToKPdUfXM1zcPyeqkxCkk0GDs1PD5+fZy4fO98pCSWjWkaMarCydPGohmx2 MI2O7IKFsGUKthSlMhqZrljL1wR8KnIUVbLtFItBxkg7EQtoH9sgbiSyXZKTyHY1vOI5 DAqLEFTlDNv7RuoE4/tCwqdggADhwaK5oZXNPEAt4yDpJvxg8rx80AJJGmRrA6b8KML6 1cYw== X-Received: by 10.180.77.199 with SMTP id u7mr50613592wiw.42.1427396176106; Thu, 26 Mar 2015 11:56:16 -0700 (PDT) Received: from linuxdev.toradex.int ([46.140.72.82]) by mx.google.com with ESMTPSA id r3sm9595942wjw.7.2015.03.26.11.56.14 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 26 Mar 2015 11:56:15 -0700 (PDT) From: Max Krummenacher To: meta-freescale@yoctoproject.org Date: Thu, 26 Mar 2015 19:55:55 +0100 Message-Id: <1427396155-12759-1-git-send-email-max.oss.09@gmail.com> X-Mailer: git-send-email 1.9.3 Cc: otavio@ossystems.com.br, Max Krummenacher Subject: [meta-fsl-arm][PATCH v2] fsl-dynamic-packagearch: on thumb builds, add MACHINE_SOCARCH arm feed X-BeenThere: meta-freescale@yoctoproject.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Usage and development list for the meta-fsl-* layers List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Mar 2015 18:56:22 -0000 This ensures that all MACHINE_SOCARCH feeds are part of PACKAGE_EXTRA_ARCHS. oe-core now puts packages into an arm feed dir when a recipe forces the ARM instruction set on a build configured to default to thumb. http://cgit.openembedded.org/openembedded-core/commit/?id=3e760031f91fb87c3e2f62b77a117eb41164f259 This is true also for packages in MACHINE_SOCARCH, i.e. we get in deploy/ipk for an angstrom based build: armv7ahf-vfp-neon-mx6qdl armv7at2hf-vfp-neon-mx6qdl so we must put both into PACKAGE_EXTRA_ARCHS. In theorie, but less likely, the opposite is also true. If a recipe explicitely sets thumb in a build configured for arm the resulting packages end up in a thumb feed. Signed-off-by: Max Krummenacher --- v2: - moved the functionality from imx-base.inc to fsl-dynamic-packagearch.bbclass - implements the'vice versa' recipe with thumb on default arm configuration - reads the datastore to construct the feed name rather than relying on "t2" classes/fsl-dynamic-packagearch.bbclass | 16 +++++++++++++++- conf/machine/include/imx-base.inc | 1 - 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/classes/fsl-dynamic-packagearch.bbclass b/classes/fsl-dynamic-packagearch.bbclass index 40eae6c..32930d0 100644 --- a/classes/fsl-dynamic-packagearch.bbclass +++ b/classes/fsl-dynamic-packagearch.bbclass @@ -29,6 +29,7 @@ python __anonymous () { machine_arch_filter = set((d.getVar("MACHINE_ARCH_FILTER", True) or "").split()) machine_socarch_filter = set((d.getVar("MACHINE_SOCARCH_FILTER", True) or "").split()) if machine_socarch_filter or machine_arch_filter: + socarch = d.getVar('MACHINE_SOCARCH', True) provides = set((d.getVar("PROVIDES", True) or "").split()) depends = set((d.getVar("DEPENDS", True) or "").split()) PN = d.getVar("PN", True) @@ -37,11 +38,24 @@ python __anonymous () { if list(machine_arch_filter & (provides | depends)): package_arch = d.getVar("MACHINE_ARCH", True) elif list(machine_socarch_filter & (provides | depends)): - package_arch = d.getVar("MACHINE_SOCARCH", True) + package_arch = socarch if not package_arch: bb.parse.SkipPackage("You must set MACHINE_SOCARCH as MACHINE_SOCARCH_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) + + suffix = socarch[len(d.getVar("TUNE_PKGARCH", True)):] + # If TUNE_PKGARCH is set for thumb allow also arm for package extra archs and vice versa + if d.getVar("ARM_INSTRUCTION_SET", True) == "thumb": + extrasocarch = d.getVar("ARMPKGARCH", True) + \ + d.getVar("ARMPKGSFX_DSP", True) + d.getVar("ARMPKGSFX_EABI", True) + \ + d.getVar("ARMPKGSFX_ENDIAN", True) + d.getVar("ARMPKGSFX_FPU", True) + suffix + else: + extrasocarch = d.getVar("ARMPKGARCH", True) + \ + d.getVar("ARM_THUMB_SUFFIX", True) + \ + d.getVar("ARMPKGSFX_DSP", True) + d.getVar("ARMPKGSFX_EABI", True) + \ + d.getVar("ARMPKGSFX_ENDIAN", True) + d.getVar("ARMPKGSFX_FPU", True) + suffix + d.appendVar("PACKAGE_EXTRA_ARCHS", " " + socarch + " " + extrasocarch) } diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index bb5539c..40b6f87 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc @@ -46,7 +46,6 @@ MACHINE_SOCARCH_mx6sx = "${TUNE_PKGARCH}-mx6sx" MACHINE_SOCARCH_mx6sl = "${TUNE_PKGARCH}-mx6sl" MACHINE_SOCARCH_vf60 = "${TUNE_PKGARCH}-vf60" MACHINE_SOCARCH_vf50 = "${TUNE_PKGARCH}-vf50" -PACKAGE_EXTRA_ARCHS_append = " ${MACHINE_SOCARCH}" MACHINE_ARCH_FILTER = "virtual/kernel" MACHINE_SOCARCH_FILTER = "libfslcodec libfslvpuwrap libfslparser gst-fsl-plugins" -- 1.9.3