On Sun, 2006-09-17 at 11:43 -0700, Toshio Kuratomi wrote: > On Sun, 2006-09-17 at 07:53 +0200, Ralf Corsepius wrote: > > On Sat, 2006-09-16 at 22:08 -0700, Toshio Kuratomi wrote: > > > Hey guys, > > > It's come to my attention that we don't have a "Packages must be built > > > from source, no precompiled binaries" rule in the current guidelines. I > > > think this is an oversight as the Binary Firmware section: > > > http://www.fedoraproject.org/wiki/Packaging/Guidelines#BinaryFirmware > > > > > > implies this for the specific case of firmware. > > > > > > How about something like: > > > > > > "Packages must be built from source code. Including pre-built programs > > > or libraries is strictly forbidden. A select few exceptions are made > > > for binary firmware. Please see > > > http://www.fedoraproject.org/wiki/Packaging/Guidelines#BinaryFirmware > > > for details." > > > > > > And on ReviewGuidelines: > > > "Must: The package must be built from source. No pre-built programs or > > > libraries are acceptable." > > -1 > > > > > Thoughts, opinions welcome. > > > > IMO, both rules above are a mistake. > > > By both, do you mean the sections for Packaging/Guidelines and for > Packaging/ReviewGuidelines or the new proposal and the pre-existing > BinaryFirmware Guidelines? I meant the old and the new version to be a mistake. > > In my understanding the original intend was to force "rebuildability" on > > LINUX code, i.e. all Linux code to be open-sourced. > > > > I.e. you'd first have to define what you understand as "Linux code". > > > > A native firmware to be applied by a running Linux kernel would > > definitely qualify as such. But a firmware (as being applied by > > emulators) > > I'd place this under the BinaryFirmware Guidelines so it's not covered > in this new guideline. IMO, the BinaryFirmware Guideline is a special case from the more general case. I don't see any sense in the BinaryFirmware Guideline to exist. > > or foreign libraries (as being required by cross compilers) > > are cornercases. > > > Meaning the libraries built for the foreign architecture? So these do > not execute on the host OS? Yes, except when using emulators/simulators, they typically they are not executed on the host. An example for such a case is a (cross-) target's libc. In general, you need it to be able to build a (cross-) GCC and to use this (cross-) GCC. In some cases you can address this by bootstrapping the target OS/kernel, libc and GCC at once, but this is magnitudes more difficult than using (repackaging a target's binary files) a target's libc binaries directly. Consider building a i386-redhat-gcc -> ppc-redhat-GCC. Everything is free, but building a ppc-glibc/GCC from scratch is magnitudes more difficult and error-prone than repackaging Fedora's ppc-rpms for such purposes. The same applies to other opensource cross-GCC targets, such as FreeBSDs, MinGW, Cygwin or other Linuxes. > If that's the case, then it could be > considered data for the cross-toolchain rather than a library or > program. I haven't thought about that case enough to know if that's a > good idea or not, though. > > If it's a special build of a library that the cross toolchain uses to > run on the host OS, then I think it does need to be rebuilt from source. ACK, but ... when to stop "requiring to build from source"? I don't have an answer to this question. If I think your proposal's and the current guidelines to an end, * it is required each and every binary to be rebuild and NOT to use ANY pre-built binary. * you don't define what a binary is. Ralf -- Fedora-packaging mailing list Fedora-packaging@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-packaging