On 01/07/2016 10:23 PM, Burton, Ross wrote:

On 24 December 2015 at 05:51, <fupan...@windriver.com> wrote:
+            #add the compatible arch extracted from TARGET_SYS.
+            #TARGET_SYS usually values as "arm-poky-linux-gnueabi",
+            #so the arch is 'arm'
+            target_sys = self.d.getVar("TARGET_SYS", True)
+            if target_sys:
+                target_arch = target_sys.split('-')[0]
+            if target_arch not in package_archs['default']:
+                package_archs['default'].append(target_arch)
+

Isn't this a long-winded way of getting ${TARGET_ARCH}?
Hi, Ross

You are right, actually TARGET_SYS's arch substring comes from
TARGET_ARCH.
Thanks for pointing it out.

I formated a V2 patch using
TARGET_ARCH directly!


Fupan

Ross

>From 705e8b05d97b23aec40d5b84208531f0d5b8391e Mon Sep 17 00:00:00 2001
From: fli <fupan...@windriver.com>
Date: Thu, 17 Dec 2015 22:19:27 -0800
Subject: [PATCH] V2 oe-core:package_manager add TARGET_ARCH into package_archs

Since the rpmbuild on the target will use TARGET_SYS as the
'target' to build the source rpm packages, which will extracted
the target arch from TARGET_SYS, such as if TARGET_SYS values
'arm-wrs-linux-gnueabi', the target arch will be 'arm'.

And TARGET_SYS's arch substring comes from 'TARGET_ARCH', thus
in order to make the rpm pkgs built out on the target compatilbe
with target, add 'TARGET_ARCH' into package archs which will be
write into the rootfs's /etc/rpm/platform.

Signed-off-by: fli <fupan...@windriver.com>
---
 meta/lib/oe/package_manager.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 30f998a..fbd4563 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -55,6 +55,12 @@ class RpmIndexer(Indexer):
             target_os['default'] = self.d.getVar(os_var, True).strip()
         else:
             package_archs['default'] = self.d.getVar("PACKAGE_ARCHS", True).split()
+
+            #add the TARGET_ARCH to target package archs.
+            target_arch = self.d.getVar("TARGET_ARCH", True)
+            if target_arch not in package_archs['default']:
+                package_archs['default'].append(target_arch)
+                
             # arch order is reversed.  This ensures the -best- match is
             # listed first!
             package_archs['default'].reverse()
-- 
1.9.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to