libgc fork

Tom Tromey tromey@cygnus.com
Thu Aug 5 17:10:00 GMT 1999


>>>>> "David" == David Starner <dstarner98@aasaa.ofe.org> writes:

David> http://lwn.net/1999/0805/backpage.phtml (Linux Weekly News's
David> letter page) has a letter about code fragmentation using
David> libgcj's libgc as a primary example. He seemed to have a good
David> question about why a fork was need for improvements that looked
David> small to him. Someone might want to write a responce to
David> letters@lwn.net, or at least think about what he's saying.

I did write a response.  I was CC'd on the original message.

Here is the gist of my reply:

* We needed to autoconfiscate the GC in order to make it fit into our
build system.  (Not just the configure/make thing, but also
cross-compilation capability.)

* We routinely forward all our GC patches to the GC maintainer.

* Unlike zlib, using a system GC library in response to a user config
option is not advisable, as we require Java finalization semantics --
a *compile* time option of the GC.  This is a critical point.

* While we do sometimes lag the latest GC, this is just a side effect
of wanting to provide an easy build to our users.  We do import new GC
versions as time allows.

* We have no desire to maintain a separate branch; that is why we
forward patches to Boehm.  Sometimes we do apply patches before he
does, but that is merely a temporary arrangement (until the next
import).  (Today Boehm wrote & asked me about getting our
autoconfiscation work, too.  That might happen if he likes it.  He's
also interested in turning some compile-time options into runtime ones
to avoid problems.)

* We rename our library to avoid clashes with system libraries.

* Finally, we are accepting patches to make the situation better.

I don't think we've done anything wrong in our approach.  In fact,
humbleness aside, I think our approach is the model approach when
small divergence (ie: the build system) is unavoidable.

Everybody agrees that forks are bad.  Luckily, we aren't doing that.

Tom


More information about the Java mailing list