There exists packages that are written in say python, but are used for arch specific task. Consider python scripts that deal with grub (i386/x86_64), or other such things. Do we want to continue considering these 'noarch' packages, or do we want to mark them as arch specific? They'll already have the ExclusiveArch: i386 x86_64 or ExcludeArch in the spec. The reason I bring this up as it has tickled a possible bug in Brew, Red Hat's build software. Currently brew will look at BuildArch and ExclusiveArch / ExcludeArch, and the configured arches for a build target to decide where to build the package at. In one package case, it has BuildArch: noarch, and ExclusiveArch: i386 x86_64. Combining the two, brew is complaining that Architecture is not included 'noarch'. A (ugly) work around was to add 'noarch' to the ExclusiveArch list, or use ExcludeArch and list a bunch of arches this package wouldn't work for, but this can break distribution composes that query ExclusiveArch to figure out what packages should be included in which arches for composes or produce very ugly spec files with a ton of arches listed under ExcludeArch. An ExclusiveArch of noarch would mean that the package gets included on EVERY arch when we compose the distribution. There are two camps here, one is that "If your package only WORKS on a particular arch, it should be BuildArch'd there as to be tagged as such". The other camp is "If your package is comprised of noarch files (scripts), it must be marked as such." (and really a third workaround camp that is "You should use ExcludeArch rather than ExclusiveArch.) The build software team is on the fence about this, especially as it echos to packaging guidelines and we'd like to see some discussion out in the community regarding this issue, and hopefully some policy that we can follow. The way I see it, if your package is comprised of non-compiled arch independent content, it MUST be noarch. We can make our build system honor BuildArch: noarch and ExclusiveArch: i386 x86_64. This would be somewhat inline with doing BuildArch: noarch, ExcludeArch: foo bar baz baal, because ExcludeArch would still have 'noarch' in the list. I just don't want to see either A) having to list out every single possible arch this package may be built for, or B) screwing over folks like Aurora by only ExcludeArching the arches our build system would attempt, forcing folks like Aurora to edit spec files to do their rebuilds. A side question is, what does plague do in this scenario? -- Jesse Keating Release Engineer: Fedora
Attachment:
pgpKYu8ZBu1hT.pgp
Description: PGP signature
-- Fedora-packaging mailing list Fedora-packaging@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-packaging