rpm/rpm-4.11.1-ppc64le.patch
Panu Matilainen 0bacf1cba5 - add support for ppc64le architecture
- adjust armhftp-logic patch to apply without fuzz due to above
2013-10-01 15:13:51 +03:00

97 lines
2.8 KiB
Diff

diff --git a/installplatform b/installplatform
index 9a11bc3..6908f02 100755
--- a/installplatform
+++ b/installplatform
@@ -54,12 +54,18 @@ for ARCH in noarch `grep ^arch_canon $RPMRC | cut -d: -f2`; do
CANONARCH=s390x
CANONCOLOR=3
;;
- ppc64*)
+ ppc64|ppc64p7)
ISANAME=ppc
ISABITS=64
CANONARCH=ppc64
CANONCOLOR=3
;;
+ ppc64le)
+ ISANAME=ppc
+ ISABITS=64
+ CANONARCH=ppc64le
+ CANONCOLOR=3
+ ;;
ppc*)
ISANAME=ppc
ISABITS=32
diff --git a/lib/rpmrc.c b/lib/rpmrc.c
index 794d028..f209851 100644
--- a/lib/rpmrc.c
+++ b/lib/rpmrc.c
@@ -1125,6 +1125,7 @@ static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
# endif /* sparc*-linux */
# if defined(__linux__) && defined(__powerpc__)
+# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
{
int powerlvl;
if (!rstreq(un.machine, "ppc") &&
@@ -1133,6 +1134,7 @@ static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
strcpy(un.machine, "ppc64p7");
}
}
+# endif /* __ORDER_BIG_ENDIAN__ */
# endif /* ppc64*-linux */
# if defined(__GNUC__) && defined(__alpha__)
diff --git a/rpmrc.in b/rpmrc.in
index 55ff25f..affb736 100644
--- a/rpmrc.in
+++ b/rpmrc.in
@@ -48,6 +48,7 @@ optflags: ppc32dy4 -O2 -g -fsigned-char
optflags: ppciseries -O2 -g -fsigned-char
optflags: ppcpseries -O2 -g -fsigned-char
optflags: ppc64 -O2 -g -fsigned-char
+optflags: ppc64le -O2 -g -fsigned-char
optflags: ppc64p7 -O3 -mtune=power7 -mcpu=power7 -g -fsigned-char
optflags: parisc -O2 -g -mpa-risc-1-0
@@ -96,6 +97,7 @@ archcolor: sparc64 2
archcolor: sparcv9 2
archcolor: ppc 1
archcolor: ppc64 2
+archcolor: ppc64le 2
archcolor: armv3l 1
archcolor: armv4b 1
@@ -194,6 +196,7 @@ arch_canon: i370: i370 14
arch_canon: s390x: s390x 15
arch_canon: ppc64: ppc64 16
+arch_canon: ppc64le: ppc64le 16
arch_canon: ppc64pseries: ppc64pseries 16
arch_canon: ppc64iseries: ppc64iseries 16
arch_canon: ppc64p7: ppc64p7 16
@@ -281,6 +284,7 @@ buildarchtranslate: ppcpseries: ppc
buildarchtranslate: ppc64iseries: ppc64
buildarchtranslate: ppc64pseries: ppc64
buildarchtranslate: ppc64p7: ppc64
+buildarchtranslate: ppc64le: ppc64le
buildarchtranslate: armv3l: armv3l
buildarchtranslate: armv4b: armv4b
@@ -352,6 +356,7 @@ arch_compat: rs6000: noarch fat
arch_compat: ppc64pseries: ppc64
arch_compat: ppc64iseries: ppc64
arch_compat: ppc64p7: ppc64
+arch_compat: ppc64le: noarch fat
arch_compat: sun4c: sparc
arch_compat: sun4d: sparc
@@ -475,6 +480,7 @@ buildarch_compat: ppciseries: noarch
buildarch_compat: ppcpseries: noarch
buildarch_compat: ppc: noarch fat
buildarch_compat: ppc64: noarch fat
+buildarch_compat: ppc64le: noarch fat
buildarch_compat: ppc64pseries: ppc64
buildarch_compat: ppc64iseries: ppc64
buildarch_compat: ppc64p7: ppc64