[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Reproducible, precompiled .o files: what say policy+gpl?



Wouter Verhelst wrote:
> On Mon, Oct 18, 2004 at 06:55:30PM -0400, Raul Miller wrote:
>>>On Mon, Oct 18, 2004 at 07:51:00PM +0200, Josselin Mouette wrote:
>>>>Main must be built with only packages from main.
>>On Tue, Oct 19, 2004 at 12:37:45AM +0200, Wouter Verhelst wrote:
> As a side note, I think the comparison to Java-software someone made was
> a flawed one. There is a major difference between "it can be compiled,
> but it won't be as fast" and "it can be ran by free software, but not
> compiled". Some java software is in the latter category; what we are
> discussing is in the former.

There are pieces of Java software in several different categories; the
most common is certainly "it won't build with a Free compiler", but I
have also seen "I don't want to rebuild the .jar file because then the
checksum won't match upstream", as well as just plain "why should I
bother rebuilding".

Also, the original question was in the context of saying that the
software might well be unusably slow if compiled with GCC, and that
compiling with ICC would bring it to a usable speed; that implies ICC is
required to produce a usable binary, which sounds quite like the Java
situation: runnable on a Free system but requiring non-free tools to build.

>>I'm interested in your reasons for making this assertion.
>>
>>If your point is that it's possible build software whose source is
>>in main using compilers which are not in Main, I'd agree with you.
>>However, I don't see any reason to consider the resulting builds to be
>>a part of main.
> 
> I don't see any reason why we should not consider the resulting builds
> to be part of main.
> 
> I am fully aware that there are people who think that all non-free
> software should be banned from the face of the earth (Hi Richard!).
> However, the fact that some Free Software package is built using
> non-free Software, even though it could be built using only Free
> compilers, does not suddenly make the Free Software package non-free.

I agree with that statement: the resulting binary is not "non-free",
given that source is supplied.  You should note that all packages in
contrib are required to be Free Software, and that the only reason they
are in contrib is that they require non-free software for compilation or
execution.

> What is 'Free Software' is defined differently by both Debian and the
> Free Software Foundation; however, GPL'ed source code which is built
> using a non-free compiler does not, in my view, fail any test of either
> of those definitions.

Agreed, to the extent that it is meaningful to talk about the Freeness
of a binary.  The point in question is not whether the software is Free,
but whether it can go in main, which requires more than just being Free:
it also requires that packages in main be sufficient to build and run it.

Now, as for the argument that they are sufficent, though they aren't
actually used, I have two responses to that:
1) As I said in this message, it doesn't sound like a GCC-compiled
version would actually be capable of performing some of the tasks the
ICC-compiled version could, so GCC isn't sufficient.
2) You may well have found a bug in Policy, where it didn't cover one of
the corner cases; I suspect there are many such cases, given that I
don't think Policy is a legalistic "impossible to weasel out of"
document, but more a set of rules designed to document existing
practice for people who mostly _want_ to follow it.  I would therefore
suggest that this item in Policy should be corrected, to make it clear
that the package must not only be buildable using software from main,
but that it must actually be _built_ using software from main.

>>>Wesley's software can be built using software in main. It will not be as
>>>fast, but it will still do its job, flawlessly, without loss of
>>>features, with the ability to modify the software to better meet one's
>>>needs if so required.
>>
>>I have no disagreement with this statement.

I do.  Wesley suggested that the software could not do its job
flawlessly when compiled with GCC, because it was too slow to keep up
with "line speeds".  This is yet another reason why it is not acceptable
to ship a package in main built with a non-free compiler: if everyone is
using that compiled version, how do you even know the other version is
usable at all?  It sounds as though it would not be sufficient for many
applications.

- Josh Triplett

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: