RFC: micro-libgcj merge proposal
David Daney
ddaney@avtrex.com
Fri Jan 13 18:29:00 GMT 2006
Joel Dice wrote:
> Hi all.
>> The following is a brief proposal for merging micro-libgcj into the GCC
> source tree. Comments and suggestions are welcome.
>> - Joel
>>> Proposed Changes
> ----------------
>> * Add two new build options:
> --[enable|disable]-micro-libgcj
> Enable/disable lightweight libgcj build.
>> --[enable|disable]-micro-synchronization
> Enable/disable lightweight, nonstandard synchronization based
> on java.lang.Syncronizable interface. This option is enabled
> by default when --enable-micro-libgcj is specified, but may
> be enabled or disabled independent of that option.
>> * Add preprocessor directives to various native source files (*.cc) under
> the libjava directory of the following forms:
>> #ifndef ULIBGCJ
> ... // code that should not be included in the micro-libgcj build
> #endif
>> #ifdef ULIBGCJ
> ... // simplified version of code for micro-libgcj build
> #else
> ... // full-featured and/or high-performance version for normal
> // build
> #endif
>> Note that these directives would not need to appear in any Java source
> files, nor in any files not included in the micro-libgcj build at all.
> Also, few if any header files should require any such directives. I'm
> afraid I can't provide an exact list of files affected until I've
> actually done the merge.
>> * Add a new subdirectory under libgjava called micro-libgcj which will
> contain a separately-maintained set of Java files representing
> micro-libgcj's classpath (a subset of java.lang.* and java.util.*).
>
Q: Who gets to decide what is in micro-libgcj?
For libgcj it is clear: We try to duplicate the Sun runtime APIs.
For micro-libgcj, I already have a preliminary set of patches. Should I
be the one who decides?
I cannot use micro-libgcj if it contains too small a sub-set of libgcj.
Likewise I don't want it to be too big. My requirements do not
cleanly fit into any of Sun's J2ME profiles so I don't want that either.
Before adding this to GCC, I think there should be some consensus as to
exactly what we are trying to do.
David Daney
More information about the Java
mailing list