This is the mail archive of the
mailing list for the GCC project.
adding a directory on a branch
- From: Tom Tromey <tromey at redhat dot com>
- To: GCC Mailing List <gcc at gcc dot gnu dot org>
- Date: 07 Oct 2004 13:14:03 -0600
- Subject: adding a directory on a branch
- Reply-to: tromey at redhat dot com
As some of you know, I've been rewriting the java front end in C++.
While it is still not ready for the mainline, and won't be for some
time, I think it is finally ready to be checked in on a branch on
gcc.gnu.org . Ordinarily I would just make a branch and go to it, but
I wanted to make some new directories; and since that is globally
visible in cvs I thought I would give people a chance to object first.
This front end is a little strange in that it is written as a library.
The core of the compiler doesn't use any gcc internals at all. I
wanted to be able to use it in non-gcc contexts (e.g., dlopen() it
into ant, or use it to implement the java compiler API). I plan to
LGPL this part .
The parts that lower the internal representation to trees are pretty
small (10% of the compiler) and are one implementation of an abstract
code generation API. The tree-lowering code will, naturally, be GPL.
What I'd like to do is make a new top-level directory, which would
hold the compiler core. The contents of gcc/java would be replaced by
the tree-specific back end. I think a top-level directory is best
since it clearly separates the LGPL module from everything else .
I'm not sure what to name this directory. "libgcj" seems really
confusing, given that the libjava directory makes a library named
libgcj. I've called my sourceforge project "gcjx" (x = experimental);
in the absence of suggestions I will call it "gcjx".
 Got my first .s output recently.
 One or two little bits, derived from GPL code, need to be
rewritten first. The files on sourceforge all say GPL, but I'll
change that before moving them over.
 I hope this message inspires a simultaneous flame war about C++,
licensing, and source tree layout. Next up: how this front end
relates to line-map.[ch] :-)