Fedora 11 Hard-coded i386 in .spec Needs Fixing

Oliver Falk oliver at linux-kernel.at
Mon Mar 2 07:47:21 UTC 2009


Hi!

Please note, that in most cases it would be even better to use 
ExcludeArch and explicit exclude arches where you *KNOW* your package 
doesn't work.

-of

Warren Togami wrote:
> Attention All Package Maintainers
> 
> Since Fedora 11 switched from i386 to i586 default for x86 32bit 
> packages, a number of packages need fixing or inspection.  All cases 
> below of ExclusiveArch i386 need to be fixed.  If you hard-coded 
> ExclusiveArch i386 without i586, then koji will not build any i586 
> packages, and that package will be missing from the 32bit rawhide 
> repository.  In most cases if you really mean 32bit x86 archs, you 
> should use the %{ix86} macro instead.
> 
> Other cases that use %ifarch, %ifnarch, or define variables that contain 
> i386 might need manual inspection to decide if you need to fix it.  It 
> is possible that some packages hard-coded arch names into code or 
> directory paths and they might need fixing too.
> 
> Below is a listing of problematic or possibly problematic packages in 
> rawhide.
> 
> ##### cpuspeed.spec
> ExclusiveArch:    i386 x86_64 ppc ppc64 ia64 sparcv9 sparc64
> ##### irqbalance.spec
> ExclusiveArch:    i386 x86_64 ia64 ppc ppc64
> ##### gyachi.spec
> %ifnarch i386
> ##### redhat-lsb.spec
> ExclusiveArch: i386 ia64 x86_64 ppc ppc64 s390 s390x
> ##### kernel.spec
> %define hdrarch i386
> %define nobuildarches i386 s390 sparc
> ##### generic-release.spec
> for arch in i386 x86_64 ppc ppc64
> ##### elilo.spec
> ExclusiveArch: ia64 i386
> ##### java-1.6.0-openjdk.spec
> %define archinstall i386
> ##### procbench.spec
> ExclusiveArch:  i386 x86_64
> ##### haddock.spec
> ExclusiveArch:    i386 x86_64 ppc
> ##### lam.spec
> %ifarch i386 x86_64 ppc ppc64 s390 s390x
> %ifarch i386 ppc
> %ifarch i386 x86_64 ppc ppc64 s390 s390x
> %ifarch i386 s390 ppc
> %ifarch i386 s390 ppc
> %ifarch i386 s390 ppc
> ##### olpcsound.spec
> ExclusiveArch: i386
> ##### eclipse-slide.spec
> #ExclusiveArch: i386 x86_64
> ##### libibcm.spec
> ExclusiveArch: i386 x86_64 ia64 ppc ppc64
> ##### libvisual.spec
> %ifarch i386
> ##### openmpi.spec
> # is true of all the multilib arches, hence the non-default arch (aka i386
> # native-arch package (aka, when built on i386) so that it will work
> # properly on the non-native arch as a multilib package (aka i386 installed
> %ifarch i386 ppc
> %ifarch i386 ppc64 s390
> ##### gmp.spec
> basearch=i386
> ##### factory.spec
> %define multilib_arches i386 x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
> ##### microcode_ctl.spec
> ExclusiveArch:  i386 x86_64
> ##### openssl.spec
> basearch=i386
> ##### glibc.spec
> %ifarch i386
> %ifarch i386 i486 i586
> %ifarch i386 i486 i586
> - speed up pthread_rwlock_unlock on arches other than i386 and
> ##### i386 bi-arch installs
> ##### compat-gcc-32.spec
> %define multilib_32_arch i386
> ##### fence-agents.spec
> %ifarch i386 x86_64 ia64
> ##### samba.spec
> %ifarch i386 sparc
> ##### m2crypto.spec
> basearch=i386
> ##### udunits.spec
> basearch=i386
> ##### ntl.spec
> %define multilib_arches i386 x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
> ##### ppl.spec
> # architectures (e.g., i386 and x86_64), we rename the header files
> normalized_arch=i386
> ##### xen.spec
> ExclusiveArch: i386 i586 i686 x86_64 ia64
> ##### generic-logos.spec
> # should be ifarch i386
> # should be ifarch i386
> ##### rhm.spec
> ExclusiveArch: i386 x86_64
> - limit builds to i386 and x86_64 archs
> ##### compat-gcc-296.spec
> ##### '`
> ##### compat-gcc-34.spec
> %define multilib_32_arch i386
> ##### ghc-paths.spec
> ExclusiveArch:  i386 x86_64 ppc
> ##### libvisual-plugins.spec
> %ifarch i386
> ##### gauche.spec
> %ifarch i386 i586 i686
> ##### busybox.spec
> ##### '`
> ##### asterisk.spec
> # if we are building for i386 promote the CPU arch to i486 for atomic 
> operations support
> %ifarch i386
> - Use -march=i486 on i386 builds for atomic operations (GCC 4.3
> ##### alex.spec
> ExclusiveArch:  i386 x86_64 ppc
> ##### mknbi.spec
> ExclusiveArch:  i386 x86_64
> - Fix build and make ExclusiveArch: i386 x86_64
> ##### perl.spec
> %define arch32 i386
> ##### ghdl.spec
> %define multilib_32_arch i386
> %ifarch i386 i486 i586 i686
> ##### ohm.spec
> ExclusiveArch: i386
> - Add ExclusiveArch i386 so it builds for F-10
> ##### pcmciautils.spec
> ExclusiveArch: i386 x86_64 ia64 ppc ppc64 %{?arm}
> ##### nspluginwrapper.spec
> ExclusiveArch:    i386 x86_64 ppc
> ##### gnu-efi.spec
> ExclusiveArch: i386 x86_64
> ##### arts.spec
> %define multilib_arches i386 x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
> ##### anaconda.spec
> %ifarch i386 i486 i586 i686 x86_64
> - Translate i?86 into i386 as a base arch. (jkeating)
> ##### mkbootdisk.spec
> ExclusiveArch: i386 sparc x86_64
> ##### fftw2.spec
>     %ifarch i386
> ##### gcc.spec
> - when compiling with -march=i386, don't use __sync_* builtins in
>   -march=i586 -mtune=generic from -march=i386 -mtune=generic
> ##### libsigsegv.spec
> %define multilib_arches i386 x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
> ##### nfs-utils.spec
> %define all_32bit_archs i386 i686 athlon ppc sparcv9
> ##### efibootmgr.spec
> ExclusiveArch: i386 x86_64 ia64
> ##### ipw2100-firmware.spec
> ExclusiveArch: noarch i386 x86_64
> ##### etherboot.spec
> %define makeflags ARCH=i386 EXTRA_CFLAGS="%{extra_cflags} -m32" 
> EXTRA_ASFLAGS="--32" EXTRA_LDFLAGS="-m elf_i386"
> - Changed arch to i386 only
> ##### fedora-release.spec
> for arch in i386 x86_64 ppc ppc64
> ##### bolzplatz2006.spec
> export JAVA_ARCH=i386
> ##### libvirt.spec
> %ifnarch i386 i686 x86_64 ia64
> ##### grub.spec
> ExclusiveArch: i386 x86_64 ia64
> ##### cpphs.spec
> ExclusiveArch:  i386 x86_64 ppc
> ##### ghc-gtk2hs.spec
> ExclusiveArch:    i386 i686 x86_64 ppc
> ##### boinc-client.spec
> %ifarch i386
> ##### sdljava.spec
> export ARCH_DEFINE="-D__i386__"
> ##### tog-pegasus.spec
> %ifarch i386 x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
> ##### libunwind.spec
> ExclusiveArch: ia64 x86_64 i386 ppc64
> - Extend the supported architectures from ia64 also to x86_64, i386 and 
> ppc64.
> ##### ipw2200-firmware.spec
> ExclusiveArch: noarch i386 x86_64
> ##### muine-scrobbler.spec
> ExclusiveArch:  i386 x86_64
> - Add ExclusiveArch i386
> ##### openser.spec
> %ifnarch alpha i386 i486 i586 i686 pentium3 pentium4 athlon x86_64
> 
> Warren Togami
> wtogami at redhat.com
> 
> _______________________________________________
> Fedora-devel-announce mailing list
> Fedora-devel-announce at redhat.com
> https://www.redhat.com/mailman/listinfo/fedora-devel-announce
> 




More information about the fedora-devel-list mailing list