Index: rpm-4.4.2/Makefile.am =================================================================== --- rpm-4.4.2.orig/Makefile.am +++ rpm-4.4.2/Makefile.am @@ -165,6 +165,9 @@ install-data-local: $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\ alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\ + arm*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv5tel ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv5tejl ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv6l ;;\ sparc*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv8 ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv9 ;\ Index: rpm-4.4.2/Makefile.in =================================================================== --- rpm-4.4.2.orig/Makefile.in +++ rpm-4.4.2/Makefile.in @@ -1224,6 +1224,9 @@ install-data-local: $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\ alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\ + arm*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv5tel ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv5tejl ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv6l ;;\ sparc*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv8 ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv9 ;\ Index: rpm-4.4.2/config.guess =================================================================== --- rpm-4.4.2.orig/config.guess +++ rpm-4.4.2/config.guess @@ -809,7 +809,7 @@ EOF echo ${UNAME_MACHINE}-pc-minix exit 0 ;; arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnueabi exit 0 ;; cris:Linux:*:*) echo cris-axis-linux-gnu Index: rpm-4.4.2/configure.ac =================================================================== --- rpm-4.4.2.orig/configure.ac +++ rpm-4.4.2/configure.ac @@ -1209,6 +1209,9 @@ fi if echo "$build_os" | grep '.*-gnu' > /dev/null ; then build_os=`echo "${build_os}" | sed 's/-gnu$//'` fi +if echo "$build_os" | grep '.*-gnueabi' > /dev/null ; then + build_os=`echo "${build_os}" | sed 's/-gnueabi$//'` +fi changequote(<, >) build_os_exact="${build_os}" @@ -1277,10 +1280,7 @@ s390x*) RPMCANONCOLOR=3; RPMCANONARCH=s s390*) RPMCANONCOLOR=0; RPMCANONARCH=s390 ;; powerpc64*|ppc64*) RPMCANONCOLOR=3; RPMCANONARCH=ppc64 ;; powerpc*|ppc*) RPMCANONCOLOR=0; RPMCANONARCH=ppc ;; -armv3l*) RPMCANONCOLOR=0; RPMCANONARCH=armv3l ;; -armv4l*) RPMCANONCOLOR=0; RPMCANONARCH=armv4l ;; -armv4b*) RPMCANONCOLOR=0; RPMCANONARCH=armv4b ;; -arm*) RPMCANONCOLOR=0; RPMCANONARCH="${build_cpu}" ;; +arm*) RPMCANONCOLOR=0; RPMCANONARCH=armv5tel ;; mipsel*) RPMCANONCOLOR=0; RPMCANONARCH=mipsel ;; mips*) RPMCANONCOLOR=0; RPMCANONARCH=mips ;; m68k*) RPMCANONCOLOR=0; RPMCANONARCH=m68k ;; Index: rpm-4.4.2/installplatform =================================================================== --- rpm-4.4.2.orig/installplatform +++ rpm-4.4.2/installplatform @@ -21,17 +21,18 @@ E_O_F RPM="./rpm --rcfile $TEMPRC" -canonarch_sed='s_i.86_i386_;s_pentium[34]_i386_;s_athlon_i386_;s_sparc[^-]*_sparc_;s_alpha[^-]*_alpha_;s_\(powerpc\|ppc\)[^-]*_ppc_' +canonarch_sed='s_i.86_i386_;s_pentium[34]_i386_;s_athlon_i386_;s_sparc[^-]*_sparc_;s_alpha[^-]*_alpha_;s_arm[^-]*_armv5tel_;s_\(powerpc\|ppc\)[^-]*_ppc_' arch="`$RPM --eval '%{_arch}'|sed -e "$canonarch_sed"`" VENDOR="`$RPM --eval '%{_vendor}'`" OS="`$RPM --eval '%{_os}'`" RPMRC_GNU="`$RPM --eval '%{_gnu}'`" -target_platform="`$RPM --eval '%{?_gnu:%undefine _gnu}%{_target_platform}'|sed -e "$canonarch_sed"`" +target_platform="`$RPM --eval '%{?_gnu:%undefine _gnu}%{?_gnu:%undefine _gnu}%{_target_platform}'|sed -e "$canonarch_sed"`" target="`$RPM --eval '%{_target}'|sed -e "$canonarch_sed"`" 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_armv5tel_armv5tel_ s_armv5tel_armv5tejl_ s_armv5tel_armv6l_' ;; sparc*) SUBSTS='s_sparc\(64\|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_' ;; Index: rpm-4.4.2/lib/rpmts.c =================================================================== --- rpm-4.4.2.orig/lib/rpmts.c +++ rpm-4.4.2/lib/rpmts.c @@ -236,7 +236,7 @@ static int isArch(const char * arch) "m68k", "rs6000", "ia64", - "armv3l", "armv4b", "armv4l", + "armv5tel", "armv5tejl", "armv6l", "s390", "i370", "s390x", "sh", "xtensa", "noarch", Index: rpm-4.4.2/macros.in =================================================================== --- rpm-4.4.2.orig/macros.in +++ rpm-4.4.2/macros.in @@ -1260,6 +1260,10 @@ done \ # %ix86 i386 i486 i586 i686 pentium3 pentium4 athlon +#------------------------------------------------------------------------------ +# arch macro for all supported ARM processors +%arm armv5tel armv5tejl armv6l + #------------------------------------------------------------------------ # Use in %install to generate locale specific file lists. For example, # Index: rpm-4.4.2/rpm.spec.in =================================================================== --- rpm-4.4.2.orig/rpm.spec.in +++ rpm-4.4.2/rpm.spec.in @@ -331,8 +331,8 @@ exit 0 %ifarch s390 s390x %attr(-, @RPMUSER@, @RPMGROUP@) %{__prefix}/lib/rpm/s390* %endif -%ifarch armv3l armv4l -%attr(-, @RPMUSER@, @RPMGROUP@) %{__prefix}/lib/rpm/armv[34][lb]* +%ifarch %{arm} +%attr(-, @RPMUSER@, @RPMGROUP@) %{__prefix}/lib/rpm/arm* %endif %ifarch mips mipsel %attr(-, @RPMUSER@, @RPMGROUP@) %{__prefix}/lib/rpm/mips* Index: rpm-4.4.2/rpmrc.in =================================================================== --- rpm-4.4.2.orig/rpmrc.in +++ rpm-4.4.2/rpmrc.in @@ -58,9 +58,9 @@ optflags: hppa2.0 -O2 -g -mpa-risc-1-0 optflags: mips -O2 -g optflags: mipsel -O2 -g -optflags: armv3l -O2 -g -fsigned-char -fomit-frame-pointer -march=armv3 -optflags: armv4b -O2 -g -fsigned-char -fomit-frame-pointer -march=armv4 -optflags: armv4l -O2 -g -fsigned-char -fomit-frame-pointer -march=armv4 +optflags: armv5tel -O2 -g -march=armv5te +optflags: armv5tejl -O2 -g -march=armv5te +optflags: armv6l -O2 -g -march=armv6 optflags: atarist -O2 -g -fomit-frame-pointer optflags: atariste -O2 -g -fomit-frame-pointer @@ -121,9 +121,9 @@ arch_canon: ia64: ia64 9 arch_canon: mipsel: mipsel 11 -arch_canon: armv3l: armv3l 12 -arch_canon: armv4b: armv4b 12 -arch_canon: armv4l: armv4l 12 +arch_canon: armv5tel: armv5tel 12 +arch_canon: armv5tejl: armv5tejl 12 +arch_canon: armv6l: armv6l 12 arch_canon: m68kmint: m68kmint 13 arch_canon: atarist: m68kmint 13 @@ -218,6 +218,10 @@ buildarchtranslate: ppcpseries: ppc buildarchtranslate: ppc64iseries: ppc64 buildarchtranslate: ppc64pseries: ppc64 +buildarchtranslate: armv5tel: armv5tel +buildarchtranslate: armv5tejl: armv5tel +buildarchtranslate: armv6l: armv5tel + buildarchtranslate: atarist: m68kmint buildarchtranslate: atariste: m68kmint buildarchtranslate: ataritt: m68kmint @@ -290,9 +294,9 @@ arch_compat: hppa1.1: hppa1.0 arch_compat: hppa1.0: parisc arch_compat: parisc: noarch -arch_compat: armv4b: noarch -arch_compat: armv4l: armv3l -arch_compat: armv3l: noarch +arch_compat: armv6l: armv5tejl +arch_compat: armv5tejl: armv5tel +arch_compat: armv5tel: noarch arch_compat: atarist: m68kmint noarch arch_compat: atariste: m68kmint noarch @@ -381,9 +385,9 @@ buildarch_compat: ppc64iseries: ppc64 buildarch_compat: mips: noarch buildarch_compat: mipsel: noarch -buildarch_compat: armv3l: noarch -buildarch_compat: armv4b: noarch -buildarch_compat: armv4l: noarch +buildarch_compat: armv6l: armv5tejl +buildarch_compat: armv5tejl: armv5tel +buildarch_compat: armv5tel: noarch buildarch_compat: hppa2.0: hppa1.2 buildarch_compat: hppa1.2: hppa1.1