This is the mail archive of the
mailing list for the GCC project.
Re: FSF Policy re. inclusion of source code from other projects in GCC
On 3/17/06, Mark Mitchell <email@example.com> wrote:
> Richard Guenther wrote:
> > On 3/17/06, Mark Mitchell <firstname.lastname@example.org> wrote:
> >> Because RMS has approved the use of GLIBC's software floating-point code
> >> in GCC's runtime libraries, using GPL + exception, the correct thing for
> >> Joseph Myers to do with his recent patch is to mark those files as not
> >> part of GCC, but rather as part of GLIBC, and adjust the copyright
> >> notice to be GPL + exception. Joseph should also document (in a README
> >> or similar) that these files are not to be changed, except by import
> >> from upstream GLIBC.
> > Do I understand this correctly that the upstream GLIBC versions of the
> > files will get their license changed, or will this happen only in the GCC
> > copy?
> Only in the GCC copy.
> I don't understand enough about libgcc-math to know what should happen
> there; I don't even know what bits of GLIBC you used. RMS has given
> explicit permission to use GPL + exception for the software
> floating-point emulation code, but not for any other part of GLIBC.
Remembering the patches from Joseph these were from a different part
of GLIBC than I imported. I imported parts of sysdeps/ieee754/flt-32 and
dbl-64 which contain C implementations of C99 math intrinsics such as
sin and cos. The flt-32 parts are public domain as in
* Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
* Developed at SunPro, a Sun Microsystems, Inc. business.
* Permission to use, copy, modify, and distribute this
* software is freely granted, provided that this notice
* is preserved.
while the dbl-64 parts are LGPL and so subject to the change to GPL
+ exception. I don't know if these parts of GLIBC are covered by RMS's
permission, it is probably advisable to ask.
Modifications local to GCC happened to fix issues with the build environment,
namely that the glibc files assume they are built in an environment which
has glibc available, while GCC needs to build on hosts with other C89
conforming environments. I think these changes are safe to be included
upstream and I will try to get them accepted.