Alan Eliasen wrote:
Dalibor Topic wrote:
On a side note, Andrew Hughes has just cleaned up and merged in Raif's
patch, so it would be nice if you & Alan could give Classpath's CVS head
a shot and see if it works for you.
Thanks very much! I had hoped to be able to test it out, but I might
not have time for a while. Dalibor, I appreciate your thoughtful
discussion of the tradeoffs of keeping or removing GMP from Kaffe, and I
agree that integrating it into Classpath is a good solution, if we can
test it and keep it up-to-date, and make sure it can be built for a
variety of platforms.
Great, thanks for kicking off the discussion, Alan, and providing the
final drop of incentive for the patch to get merged in.
I have been contributing performance enhancements to the OpenJDK
project for the java.math.BigInteger class, but I haven't looked to see
how my algorithms compare to those in Classpath. Is there any problem
with me contributing patches to both projects?
I've seen your patches on the OpenJDK lists, so I'd like to say thanks
for improving OpenJDK. There is no problem with contributing to both
OpenJDK and Classpath, as long as the code you are contributing is
different, which should be trivial to comply with, as Classpath's and
OpenJDK implementations are written by different people, so they should
be reasonably different internally.
That's the easy part.
If you for some reason want to contribute the same code to both
projects, then you need to be aware of a slight quirk in the different
ways the GNU Classpath operates and OpenJDK operates: While FSF's
contributor agreement insists on exclusive FSF ownership of code
contributed to GNU Classpath, requiring you to transfer your authorship
rights to the FSF, Sun uses the SCA for the OpenJDK project, which only
requires sharing those rights with Sun.
Since Sun reserves the right to license the OpenJDK code out to
proprietary software vendors under non-free licenses, and FSF's
contributor agreement does not let the FSF do such a thing, letting the
FSF have exclusive rights onand the code you wrote and afterwards
wanting to see it enter into OpenJDK, too, is a good way to make a lot
of work for Mark Wielaard, the GNU Classpath maintainer, to try to
figure out a way to make it happen using FSF's grantback provisions from
the FSF contributor agreement, for example.
Since Mark is a very busy man, I'd rather not spend his time on
licensing discussions with the FSF, as those can take quite a while, and
the FSF is quite busy at the moment working out other legalese, like
updating the GPL exception language for V3 for the autotools projects,
who've been forced to keep using v2 for their last releases ... so we
haven't actually had a piece of code within GNU Classpath that someone
pushed hard enough yet to have to try to figure out a way to deal with
FSF's exclusive ownership of code in GNU Classpath and use the grantback
procedure to make it work ouandt for OpenJDK. I assume that a lot of us
in GNU Classpath would like to avoid that discussion as long as
possible, as it is about boring legalese, and the amount of code it
would concern directly seems to be fairly small and shrinking as
OpenJDK's binary encumbrances shrink away.
If the FSF moved away in the future from requiring exclusive ownership
of the code to sharing rights on the code with the contributors, it
would be a lot easier, of course, as then the order of contributions
wouldn't matter. But that's another longish discussion about legalese
and free software idealism, for which the GNU Classpath lists aren't the
perfect forum.
As far as I can tell from FSF's contributor agreement, the safe & easy
way to get the same code in both projects is to contribute it to OpenJDK
first, sharing the copyright with Sun, so that they can do whatever
things they feel the need to do (like update the license to v3), letting
you keep your authorship rights, and afterwards pushing the patch to GNU
Classpath, assigning your authorship rights to the FSF, so the FSF can
do whatever things it feels the need to do (like update the license to v3).
Complicated? You bet. That's presumably why no one really pushed hard
for it. ;)
cheers,
dalibor topic