Panu Matilainen 31171a
diff --git a/lib/rpmrc.c b/lib/rpmrc.c
Panu Matilainen 31171a
index ba156fe..96f05ce 100644
Panu Matilainen 31171a
--- a/lib/rpmrc.c
Panu Matilainen 31171a
+++ b/lib/rpmrc.c
Panu Matilainen 31171a
@@ -1093,8 +1093,11 @@ static void defaultMachine(const char ** arch,
Panu Matilainen 31171a
 #	if defined(__linux__) && defined(__powerpc__)
Panu Matilainen 31171a
 	{
Panu Matilainen 31171a
             int powerlvl;
Panu Matilainen 31171a
-            if (sscanf(rpmat.platform, "power%d", &powerlvl) == 1 && powerlvl > 6)
Panu Matilainen 31171a
+            if (!rstreq(un.machine, "ppc") &&
Panu Matilainen 31171a
+		    sscanf(rpmat.platform, "power%d", &powerlvl) == 1 &&
Panu Matilainen 31171a
+		    powerlvl > 6) {
Panu Matilainen 31171a
                 strcpy(un.machine, "ppc64p7");
Panu Matilainen 31171a
+	    }
Panu Matilainen 31171a
         }
Panu Matilainen 31171a
 #	endif	/* ppc64*-linux */
Panu Matilainen 31171a
 
Panu Matilainen 31171a
diff --git a/macros.in b/macros.in
Panu Matilainen 31171a
index 4c77bbb..4a4a1e4 100644
Panu Matilainen 31171a
--- a/macros.in
Panu Matilainen 31171a
+++ b/macros.in
Panu Matilainen 31171a
@@ -998,6 +998,10 @@ done \
Panu Matilainen 31171a
 # arch macro for all supported Alpha processors
Panu Matilainen 31171a
 %alpha	alpha alphaev56 alphaev6 alphaev67
Panu Matilainen 31171a
 
Panu Matilainen 31171a
+#------------------------------------------------------------------------------
Panu Matilainen 31171a
+# arch macro for all supported PowerPC 64 processors
Panu Matilainen 31171a
+%power64	ppc64 ppc64p7
Panu Matilainen 31171a
+
Panu Matilainen 31171a
 #------------------------------------------------------------------------
Panu Matilainen 31171a
 # Use in %install to generate locale specific file lists. For example,
Panu Matilainen 31171a
 #