(not subscribed to rpm-list@, please CC on replies) Hi all, Attached are two patches for rpm 4.4.2 (one against the package itself, one against its spec file) which slightly extend rpm's arm support, on which I would love to get some feedback, as I'm not entirely sure whether I Did The Right Thing in every place. Any comments? Should these patches be discussed on the 'upstream' (i.e. @rpm.org) rpm mailing lists instead? If they look OK, can they make it into F8? (Please don't apply this version as-is yet, though..) Thanks in advance for your time. thanks, Lennert === rpm-4.4.2-arm.diff > Index: rpm-4.4.2/Makefile.am > =================================================================== > --- rpm-4.4.2.orig/Makefile.am > +++ rpm-4.4.2/Makefile.am > @@ -165,6 +165,12 @@ install-data-local: > $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\ > alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\ > $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\ > + arm*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv3l ;\ > + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv4l ;\ > + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv4tl ;\ > + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv5tel ;\ > + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv5tejl ;\ > + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv6l ;;\ Add creation of RPMS dirs for the various ARM sub-archs. This seems pretty straightforward. > Index: rpm-4.4.2/config.guess > =================================================================== > --- rpm-4.4.2.orig/config.guess > +++ rpm-4.4.2/config.guess > @@ -809,7 +809,14 @@ EOF > echo ${UNAME_MACHINE}-pc-minix > exit 0 ;; > arm*:Linux:*:*) > - echo ${UNAME_MACHINE}-unknown-linux-gnu > + eval $set_cc_for_build > + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ > + | grep __ARM_EABI__ >/dev/null > + then > + echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnu > + else > + echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnueabi > + fi There are two different ABIs for ARM systems, the 'legacy' ABI (old-ABI) and the newer-and-preferred ABI, EABI. EABI is selected by configuring using a target triple ending in *-gnueabi (this is a slightly odd convention, but it's an upstream-imposed convention, and followed by binutils, gcc, glibc, etc.) There isn't an easier way of detecting EABI than to check whether gcc defines __ARM_EABI__, as far as I know. > Index: rpm-4.4.2/configure.ac > =================================================================== > --- rpm-4.4.2.orig/configure.ac > +++ rpm-4.4.2/configure.ac > @@ -1206,6 +1206,9 @@ fi > if echo "$build_os" | grep '.*-gnulibc1' > /dev/null ; then > build_os=`echo "${build_os}" | sed 's/-gnulibc1$//'` > fi > +if echo "$build_os" | grep '.*-gnueabi' > /dev/null ; then > + build_os=`echo "${build_os}" | sed 's/-gnueabi$//'` > +fi > if echo "$build_os" | grep '.*-gnu' > /dev/null ; then > build_os=`echo "${build_os}" | sed 's/-gnu$//'` > fi Strip -gnueabi off the target triple like we do with -gnulibc1 and -gnu. > @@ -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=arm ;; Make 'arm' the canon arch for all possible sub-archs. > 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[^-]*_arm_;s_\(powerpc\|ppc\)[^-]*_ppc_' Idem. > -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"`" (Note that this isn't ARM-specific.) For some reason, it seems necessary to undefine _gnu twice here to really undefine it. (Same thing happens on my x86 boxes.) Not exactly sure what's happening here. > + arm*) SUBSTS='s_arm_armv3l_ s_arm_arm4l_ s_arm_armv4tl_ s_arm_armv5tel_ s_arm_armv5tejl_ s_arm_armv6l_' ;; Create /u/s/r/RPMS/$foo dirs for all possible sub-archs. > 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", > + "armv3l", "armv4b", "armv4l", "armv4tl", "armv5tel", "armv5tejl", "armv6l", Include all sub-archs. > 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 armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l Add %arm macro so that we can check whether we are building for an ARM box by checking %ifarch %{arm}, to make it easier to add sub-archs without having to patch every single spec file that has some ARM- dependent logic in it. > 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* Check for ARM archs by checking against %{arm}, and just include all arm* dirs in /u/l/rpm in the package. > Index: rpm-4.4.2/rpmrc.in > =================================================================== > --- rpm-4.4.2.orig/rpmrc.in > +++ rpm-4.4.2/rpmrc.in > @@ -61,6 +61,10 @@ 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: armv4tl -O2 -g -march=armv4t > +optflags: armv5tel -O2 -g -march=armv5te > +optflags: armv5tejl -O2 -g -march=armv5te > +optflags: armv6l -O2 -g -march=armv6 Add optflags for the newer ARM sub-archs. I don't think we need -fsigned-char anymore, and maybe we should remove it from the other sub-archs as well. (chars are unsigned on ARM by default, and I think that doing -fsigned-char by default was meant to work around buggy userland software that assumes that chars are always signed. I don't think this should be needed anymore.) > @@ -124,6 +128,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 Add more sub-archs.. === rpm-4.4.2-spec-arm.diff > Index: SPECS/rpm.spec > =================================================================== > --- SPECS.orig/rpm.spec > +++ SPECS/rpm.spec > @@ -68,6 +68,7 @@ Patch41: rpm-4.4.2-cdiff.patch > Patch42: rpm-4.4.2-docflags.patch > Patch43: rpm-debugedit-incremental-fix.patch > Patch44: rpm-4.4.2-prefer-elf32.patch > +Patch45: rpm-4.4.2-arm.diff > License: GPL > Requires: patch > 2.5 > Prereq: shadow-utils > @@ -214,6 +215,8 @@ shell-like rules. > %patch42 -p1 -b .docflags > %patch43 -p1 -b .debugcan2 > %patch44 -p1 -b .elfprefer > +%patch45 -p1 -b .arm Add ARM patch. > +perl -pi -e "s/-gnu$/%{_gnu}/" macros.in This is a hack to make sure that %{_gnu} ends up as -gnueabi on EABI targets. Ideally this should perhaps be hacked into the macros.in -> macros generation step itself. Ideas? > # rebuild configure for ipv6 > autoconf > @@ -410,8 +413,8 @@ exit 0 > %ifarch s390 s390x > %attr(-, rpm, rpm) %{__prefix}/lib/rpm/s390* > %endif > -%ifarch armv3l armv4l > -%attr(-, rpm, rpm) %{__prefix}/lib/rpm/armv[34][lb]* > +%ifarch %{arm} > +%attr(-, rpm, rpm) %{__prefix}/lib/rpm/arm* Same modification as to rpm.spec.in -- check %{arm} instead of a hardcoded list of sub-archs, and pick up all /u/l/rpm/arm* dirs. Thanks!
Index: rpm-4.4.2/Makefile.am =================================================================== --- rpm-4.4.2.orig/Makefile.am +++ rpm-4.4.2/Makefile.am @@ -165,6 +165,12 @@ install-data-local: $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\ alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\ + arm*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv3l ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv4l ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv4tl ;\ + $(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,12 @@ install-data-local: $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\ alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\ $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\ + arm*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv3l ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv4l ;\ + $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/armv4tl ;\ + $(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,14 @@ EOF echo ${UNAME_MACHINE}-pc-minix exit 0 ;; arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ARM_EABI__ >/dev/null + then + echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnu + else + echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnueabi + fi 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 @@ -1206,6 +1206,9 @@ fi if echo "$build_os" | grep '.*-gnulibc1' > /dev/null ; then build_os=`echo "${build_os}" | sed 's/-gnulibc1$//'` fi +if echo "$build_os" | grep '.*-gnueabi' > /dev/null ; then + build_os=`echo "${build_os}" | sed 's/-gnueabi$//'` +fi if echo "$build_os" | grep '.*-gnu' > /dev/null ; then build_os=`echo "${build_os}" | sed 's/-gnu$//'` fi @@ -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=arm ;; 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[^-]*_arm_;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_arm_armv3l_ s_arm_arm4l_ 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_' ;; 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", + "armv3l", "armv4b", "armv4l", "armv4tl", "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 armv3l armv4b armv4l armv4tl 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 @@ -61,6 +61,10 @@ 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: armv4tl -O2 -g -march=armv4t +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 @@ -124,6 +128,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 +225,14 @@ buildarchtranslate: ppcpseries: ppc buildarchtranslate: ppc64iseries: ppc64 buildarchtranslate: ppc64pseries: ppc64 +buildarchtranslate: armv3l: armv3l +buildarchtranslate: armv4b: armv4b +buildarchtranslate: armv4l: armv4l +buildarchtranslate: armv4tl: armv4tl +buildarchtranslate: armv5tel: armv5tel +buildarchtranslate: armv5tejl: armv4tejl +buildarchtranslate: armv6l: armv6l + buildarchtranslate: atarist: m68kmint buildarchtranslate: atariste: m68kmint buildarchtranslate: ataritt: m68kmint @@ -291,6 +306,10 @@ arch_compat: hppa1.0: parisc arch_compat: parisc: noarch arch_compat: armv4b: noarch +arch_compat: armv6l: armv5tejl +arch_compat: armv5tejl: armv5tel +arch_compat: armv5tel: armv4tl +arch_compat: armv4tl: armv4l arch_compat: armv4l: armv3l arch_compat: armv3l: noarch @@ -381,9 +400,13 @@ 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: armv4tl +buildarch_compat: armv4tl: armv4l +buildarch_compat: armv4l: armv3l +buildarch_compat: armv3l: noarch buildarch_compat: hppa2.0: hppa1.2 buildarch_compat: hppa1.2: hppa1.1
Index: SPECS/rpm.spec =================================================================== --- SPECS.orig/rpm.spec +++ SPECS/rpm.spec @@ -17,7 +17,7 @@ Summary: The RPM package management syst Name: rpm Version: 4.4.2 %{expand: %%define rpm_version %{version}} -Release: 46%{?dist} +Release: 46.fa2%{?dist} Group: System Environment/Base Url: http://www.rpm.org/ Source: rpm-%{rpm_version}.tar.gz @@ -68,6 +68,7 @@ Patch41: rpm-4.4.2-cdiff.patch Patch42: rpm-4.4.2-docflags.patch Patch43: rpm-debugedit-incremental-fix.patch Patch44: rpm-4.4.2-prefer-elf32.patch +Patch45: rpm-4.4.2-arm.diff License: GPL Requires: patch > 2.5 Prereq: shadow-utils @@ -214,6 +215,8 @@ shell-like rules. %patch42 -p1 -b .docflags %patch43 -p1 -b .debugcan2 %patch44 -p1 -b .elfprefer +%patch45 -p1 -b .arm +perl -pi -e "s/-gnu$/%{_gnu}/" macros.in # rebuild configure for ipv6 autoconf @@ -410,8 +413,8 @@ exit 0 %ifarch s390 s390x %attr(-, rpm, rpm) %{__prefix}/lib/rpm/s390* %endif -%ifarch armv3l armv4l -%attr(-, rpm, rpm) %{__prefix}/lib/rpm/armv[34][lb]* +%ifarch %{arm} +%attr(-, rpm, rpm) %{__prefix}/lib/rpm/arm* %endif %ifarch mips mipsel %attr(-, rpm, rpm) %{__prefix}/lib/rpm/mips*
_______________________________________________ Rpm-list mailing list Rpm-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/rpm-list