This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: gcj to assist in porting java applet to activex control?


Tom Tromey wrote

>Adam> Is it possible to create ActiveX (basically COM, AFAIK) DLL's using
>Adam> gcj/MinGW? If not, would adding this functionality to gcj be a
>Adam> gargantuan undertaking?
>
>No one has ever tried this before.  I don't know how much work it will
>be.  For instance, if ActiveX controls are expected to run in some
>arbitrary process, then it might be impossible (I don't know).  If
>they run as their own processes then I imagine it is doable.
>

You can do pretty much anything from an ActiveX control. Sun used to 
have an ActiveX Java control, so if they can start the JVM from ActiveX 
then I don't see any reason why you can't start the GCJ runtime. 
Assuming GCC supports COM, which I heard it does, though I've never used it.

Now, once upon a time, libgcj did partially work on MinGW. You can see 
reminents of that port in win32-threads.cc, natFileDescriptorWin32.cc, 
bits of natSystem.cc, etc. Unfortunatly there is no chance that it still 
works out-of-the-box today since GCJ has evolved and nobody has been 
testing or working on the windows code, but for someone with reasonable 
knowledge of both windows and java it shouldn't be too hard to bring it 
back to life and finish it.

There is one serious bug you are going to run into however: The GCJ 
compiler itself does not work  on case-insensive file systems, including 
Cygwin. I want to fix this to get it working on Mac OS X as well, but 
havn't yet made any real progress on the problem...

BTW: if you got the windows port working again (and libgcj building on 
cygwin...), I suspect you'd find a few grateful people showing up to 
help with it. The demand is out there!

regards

Bryce.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]