--- ./rpmUtils/arch.py.orig	2014-06-02 11:02:45.000000000 +0600
+++ ./rpmUtils/arch.py	2014-06-02 13:17:59.000000000 +0600
@@ -1,15 +1,15 @@
-#!/usr/bin/python
+#!/opt/freeware/bin/python
 #
 
 import os
-
+import pdb
 # dict mapping arch -> ( multicompat, best personality, biarch personality )
 multilibArches = { "x86_64":  ( "athlon", "x86_64", "athlon" ),
                    "sparc64v": ( "sparcv9v", "sparcv9v", "sparc64v" ),
                    "sparc64": ( "sparcv9", "sparcv9", "sparc64" ),
                    "ppc64":   ( "ppc", "ppc", "ppc64" ),
                    "s390x":   ( "s390", "s390x", "s390" ),
-                   }
+                 }
 
 arches = {
     # ia32
@@ -29,6 +29,7 @@
     "ppc64pseries": "ppc64",
     "ppc64iseries": "ppc64",    
     "ppc64": "ppc",
+    "powerpc": "ppc", 
     "ppc": "noarch",
     
     # s390{,x}
@@ -69,7 +70,7 @@
     #itanium
     "ia64": "noarch",
     }
-
+#pdb.set_trace()
 def legitMultiArchesInSameLib(arch=None):
     # this is completely crackrock - if anyone has a better way I
     # am all ears
@@ -234,8 +235,7 @@
 def getCanonPPCArch(arch):
     # FIXME: should I do better handling for mac, etc?
     if arch != "ppc64":
-        return arch
-
+        return arch 
     machine = None
     for line in _try_read_cpuinfo():
         if line.find("machine") != -1:
@@ -246,9 +246,9 @@
 
     if machine.find("CHRP IBM") != -1:
         return "ppc64pseries"
-    if machine.find("iSeries") != -1:
-        return "ppc64iseries"
-    return arch
+    if machine.find("iSeries") != -1: 
+        return "ppc64series"
+    return arch 
 
 def getCanonSPARCArch(arch):
     # Deal with sun4v, sun4u, sun4m cases
@@ -293,9 +293,9 @@
     return arch
         
 def getCanonArch(skipRpmPlatform = 0):
-    if not skipRpmPlatform and os.access("/etc/rpm/platform", os.R_OK):
+    if not skipRpmPlatform and os.access("/opt/freeware/etc/rpm/platform", os.R_OK):
         try:
-            f = open("/etc/rpm/platform", "r")
+            f = open("/opt/freeware/etc/rpm/platform", "r")
             line = f.readline()
             f.close()
             (arch, vendor, opersys) = line.split("-", 2)
@@ -303,8 +303,11 @@
         except:
             pass
         
-    arch = os.uname()[4]
-
+    operatingsys= os.uname()[0]
+    if (operatingsys == "AIX"): 
+        arch= "powerpc"
+    else: 
+        arch= os.uname()[3] 
     if (len(arch) == 4 and arch[0] == "i" and arch[2:4] == "86"):
         return getCanonX86Arch(arch)
 
