[PATCH] ppc64le is its own arch treat it as such.

Dennis Gilmore dennis at ausil.us
Sat Feb 8 13:07:32 UTC 2014


ppc64le is ppc64 little endian, it is a completely incompatable arch to all other
64 bit power builds and can not be multilibbed with ppc. while it works okay in
the default Fedora setup its because Fedora patches _ppc64_native_is_best to True
as soon as its False you get unexpected results. This patch covers things in both
setups and makes it clear how it works

Signed-off-by: Dennis Gilmore <dennis at ausil.us>
---
 rpmUtils/arch.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/rpmUtils/arch.py b/rpmUtils/arch.py
index 3638d82..6c02597 100644
--- a/rpmUtils/arch.py
+++ b/rpmUtils/arch.py
@@ -31,7 +31,10 @@ arches = {
     "x86_64": "athlon",
     "amd64": "x86_64",
     "ia32e": "x86_64",
-    
+
+    #ppc64le
+    "ppc64le":  "noarch",
+
     # ppc
     "ppc64p7": "ppc64",
     "ppc64pseries": "ppc64",
@@ -412,7 +415,7 @@ def getBestArch(myarch=None):
     if arch.startswith("sparc64"):
         arch = multilibArches[arch][1]
 
-    if arch.startswith("ppc64") and not _ppc64_native_is_best:
+    if arch.startswith("ppc64") and not _ppc64_native_is_best and arch != "ppc64le":
         arch = 'ppc'
 
     return arch
@@ -430,6 +433,8 @@ def getBaseArch(myarch=None):
 
     if myarch.startswith("sparc64"):
         return "sparc"
+    elif myarch == "ppc64le":
+        return "ppc64le"
     elif myarch.startswith("ppc64") and not _ppc64_native_is_best:
         return "ppc"
     elif myarch.startswith("armv7h"):
-- 
1.8.5.3



More information about the Yum-devel mailing list