why koji try to build on ppc when ExcludeArch ppc?

Michael Schwendt mschwendt at gmail.com
Sat Nov 15 00:44:26 UTC 2008


On Fri, 14 Nov 2008 23:25:07 +0100, Farkas Levente wrote:

> what the noarch means?
> - it should have to be run on any arch?
> or
> - it should have to be run _AND_ build on any arch?

The tag is "BuildArch", which refers to the target arch as in "build for".

"noarch" means the built package is not specific to a particular arch. It
may be used on any arch.

Imagine that any of your build requirements (including many core tools
like "install", "mkdir", "patch", "sed", "bash", "rpmbuild", "dos2unix",
"convert", "iconv") may break on any platform and temporarily make it
impossible to build your noarch pkg on that platform. Just that with
Java you cannot simply replace the build tool.

> this package is a pure java package which is noarch the the result
> gstreamer-java-1.0-1.fc10.noarch.rpm can be run on any arch,
> BUT as there is a bug in #468831 in     	
> java-1.6.0-openjdk on ppc it can't be compiled on ppc.
> so if eg. there is a bug in python compiler or in the python interpreter
> on ppc then the python packages no longer noarch packages?

Yes. Noarch packages with strict [build/run-time] dependencies on
arch-specific packages are contaminative ("poisonous"). Any
arch-specific package, which is needed to rebuild the noarch package,
must be available and must work on _any_ platform supported by the
buildsys. Even if you don't need an interpreter at build-time, you
likely need it at run-time. If you drop the run-time dependency, you
may win, and the package may become installable, but the package would
not work if the interpreter is missing/broken. Under the hood, the
noarch package becomes arch-specific -- in the worst-case, it becomes
unusable (or even uninstallable and not rebuildable).




More information about the fedora-devel-list mailing list