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

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



On Mon, Oct 18, 2004 at 07:51:00PM +0200, Josselin Mouette wrote:
> Le lundi 18 octobre 2004 à 19:22 +0200, Wesley W. Terpstra a écrit :
> > So, when it comes time to release this and include it in a .deb, I ask
> > myself: what would happen if I included (with the C source and ocaml
> > compiler) some precompiled object files for i386? As long as the build
> > target is i386, these object files could be linked in instead of using
> > gcc to produce (slower) object files. This would mean a 2* speedup for
> > users, which is vital in order to reach line-speed. Other platforms 
> > recompile as normal.

> > On the other hand, is this still open source?
> > Is this allowed by policy?
> > Can this go into main?

> Main must be built with only packages from main.

> If you really want to distribute a package built with icc, you should
> make a separate package in the contrib section, and have it conflict
> with the package in main.

> The GPL doesn't restrict anything you are describing, as long as the
> source is available alongside.

I didn't think you were right about this, but upon reflection I was
surprised to find that you are:

  The source code for a work means the preferred form of the work for
  making modifications to it.  For an executable work, complete source
  code means all the source code for all modules it contains, plus any
  associated interface definition files, plus the scripts used to
  control compilation and installation of the executable.  However, as a
  special exception, the source code distributed need not include
  anything that is normally distributed (in either source or binary
  form) with the major components (compiler, kernel, and so on) of the
  operating system on which the executable runs, unless that component
  itself accompanies the executable.

This seems to say that you can compile the GPL components of your operating
system with any binary-only compiler you want to, IFF you don't ship that
compiler with your operating system.

Still, such binaries don't belong in main; you can't claim that building
with a non-free compiler is philosophically equivalent to building with gcc
while at the same time insisting to take advantage of the functional
advantages of the non-free compiler.  It's important that main be entirely
self-hosting, even when this doesn't give the best benchmark figures.

-- 
Steve Langasek
postmodern programmer

Attachment: signature.asc
Description: Digital signature


Reply to: