From 3ba25ca3991d480d845b0f36911e0ba4c6361edb Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Wed, 5 Sep 2007 16:11:04 +0300 Subject: [PATCH] Add Sparc Niagara support (rhbz#263521) Patch from Dennis Gilmore. --- Makefile.am | 2 ++ installplatform | 5 ++++- lib/rpmts.c | 4 ++-- rpmrc.in | 17 ++++++++++++++--- 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/Makefile.am b/Makefile.am index 233f6ad..0fba7ec 100644 --- a/Makefile.am +++ b/Makefile.am @@ -136,7 +136,9 @@ install-data-local: sparc*) $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc ;\ $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv8 ;\ $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv9 ;\ + $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv9v ;\ $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc64 ;;\ + $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc64v ;;\ ia64*) $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/ia64 ;;\ s390*) $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/s390 ;;\ mipsel*) $(MKDIR_P) $(DESTDIR)$(pkgsrcdir)/RPMS/mipsel ;;\ diff --git a/installplatform b/installplatform index 9fff180..3198793 100755 --- a/installplatform +++ b/installplatform @@ -33,7 +33,7 @@ case "$arch" in i[3456]86|pentium[34]|athlon) SUBSTS='s_i386_i386_ s_i386_i486_ s_i386_i586_ s_i386_i686_ s_i386_pentium3_ s_i386_pentium4_ s_i386_athlon_' ;; alpha*) SUBSTS='s_alpha_alpha_ s_alpha_alphaev5_ s_alpha_alphaev56_ s_alpha_alphapca56_ s_alpha_alphaev6_ s_alpha_alphaev67_' ;; arm*) SUBSTS='s_arm_armv3l_ s_arm_armv4l_ s_arm_armv4tl_ s_arm_armv5tel_ s_arm_armv5tejl_ s_arm_armv6l_' ;; - sparc*) SUBSTS='s_sparc\(64\|v9\)_sparc_ s_sparc64_sparcv9_;s_sparc\([^v]\|$\)_sparcv9\1_ s_sparcv9_sparc64_;s_sparc\([^6]\|$\)_sparc64\1_' ;; + sparc*) SUBSTS='s_sparc\(64\|64v\|v9v\|v9\)_sparc_ s_sparc64_sparcv9_;s_sparc\([^v]\|$\)_sparcv9\1_ s_sparcv9_sparc64_;s_sparc\([^6]\|$\)_sparc64\1_' ;; powerpc*|ppc*) SUBSTS='s_ppc64_ppc_ s_ppc\([^6ip]\|$\)_ppc64\1_ s_ppc\([^6ip]\|$\)_ppciseries_ s_ppc\([^6ip]\|$\)_ppcpseries_ s_ppc\([^6ip]\|$\)_ppc64iseries_ s_ppc\([^6ip]\|$\)_ppc64pseries_' ;; s390*) SUBSTS='s_s390x_s390_ s_s390\([^x]\|$\)_s390x\1_' ;; x86_64|amd64|ia32e) SUBSTS='s,x86_64,x86_64, s,x86_64,ia32e, s,x86_64,amd64,' ;; @@ -61,8 +61,11 @@ for SUBST in $SUBSTS ; do MULTILIBNO= case "${ARCH}-${OS}" in sparc-linux) MULTILIBNO=1 ;; + sparcv8-linux) MULTILIBNO=1 ;; sparcv9-linux) MULTILIBNO=1 ;; + sparcv9v-linux) MULTILIBNO=1 ;; sparc64-linux) ARCH_INSTALL_POST=${pkglibdir}/brp-sparc64-linux; LIB=lib64; MULTILIBNO=2 ;; + sparc64v-linux) ARCH_INSTALL_PORT=${pkglibdir}/brp-sparc64-linux; LIB=lib64; MULTILIBNO=2 ;; s390-linux) MULTILIBNO=1 ;; s390x-linux) LIB=lib64; MULTILIBNO=2 ;; ppc-linux) MULTILIBNO=1 ;; diff --git a/lib/rpmts.c b/lib/rpmts.c index a456c98..bebbec9 100644 --- a/lib/rpmts.c +++ b/lib/rpmts.c @@ -219,8 +219,8 @@ static int isArch(const char * arch) static const char *arches[] = { "i386", "i486", "i586", "i686", "athlon", "pentium3", "pentium4", "x86_64", "amd64", "ia32e", "alpha", "alphaev5", "alphaev56", "alphapca56", "alphaev6", "alphaev67", - "sparc", "sun4", "sun4m", "sun4c", "sun4d", "sparcv8", "sparcv9", - "sparc64", "sun4u", + "sparc", "sun4", "sun4m", "sun4c", "sun4d", "sparcv8", "sparcv9", "sparcv9v", + "sparc64", "sparc64v", "sun4u", "mips", "mipsel", "IP", "ppc", "ppciseries", "ppcpseries", "ppc64", "ppc64iseries", "ppc64pseries", diff --git a/rpmrc.in b/rpmrc.in index f59f882..f9a0c20 100644 --- a/rpmrc.in +++ b/rpmrc.in @@ -34,7 +34,9 @@ optflags: alphaev67 -O2 -g -mieee -mcpu=ev67 optflags: sparc -O2 -g -m32 -mtune=ultrasparc optflags: sparcv8 -O2 -g -m32 -mtune=ultrasparc -mv8 optflags: sparcv9 -O2 -g -m32 -mcpu=ultrasparc +optflags: sparcv9v -O2 -g -m32 -mcpu=niagara optflags: sparc64 -O2 -g -m64 -mcpu=ultrasparc +optflags: sparc64v -O2 -g -m64 -mcpu=niagara optflags: m68k -O2 -g -fomit-frame-pointer @@ -97,6 +99,7 @@ arch_canon: alphaev67: alphaev67 2 # We always want to prefer sparc to sparc64. arch_canon: sparc64:sparc64 2 arch_canon: sun4u: sparc64 2 +arch_canon: sparc64v: sparc64v 2 arch_canon: sparc: sparc 3 arch_canon: sun4: sparc 3 @@ -105,6 +108,7 @@ arch_canon: sun4c: sparc 3 arch_canon: sun4d: sparc 3 arch_canon: sparcv8: sparcv8 3 arch_canon: sparcv9: sparcv9 3 +arch_canon: sparcv9v: sparcv9v 3 # This is really a place holder for MIPS. arch_canon: mips: mips 4 @@ -209,7 +213,9 @@ buildarchtranslate: sun4d: sparc buildarchtranslate: sun4m: sparc buildarchtranslate: sparcv8: sparc buildarchtranslate: sparcv9: sparc +buildarchtranslate: sparcv9v: sparc buildarchtranslate: sun4u: sparc64 +buildarchtranslate: sparc64v: sparc64 buildarchtranslate: osfmach3_ppc: ppc buildarchtranslate: powerpc: ppc @@ -288,8 +294,10 @@ arch_compat: sun4c: sparc arch_compat: sun4d: sparc arch_compat: sun4m: sparc arch_compat: sun4u: sparc64 +arch_compat: sparc64v: sparc64 arch_compat: sparc64: sparcv9 -arch_compat: sparcv9: sparc +arch_compat: sparcv9v: sparcv9 +arch_compat: sparcv9: sparcv8 arch_compat: sparcv8: sparc arch_compat: sparc: noarch @@ -371,8 +379,11 @@ buildarch_compat: sun4c: noarch buildarch_compat: sun4d: noarch buildarch_compat: sun4m: noarch buildarch_compat: sun4u: noarch -buildarch_compat: sparc64: noarch -buildarch_compat: sparcv9: sparc +buildarch_compat: sparc64v: sparc64 +buildarch_compat: sparc64: sparcv9v +buildarch_compat: sparcv9v: sparcv9 +buildarch_compat: sparcv9: sparcv8 +buildarch_compat: sparcv8: sparc buildarch_compat: sparc: noarch buildarch_compat: alphaev67: alphaev6 -- 2.7.4