From: Joshua Nichols <nichoj@gentoo.org>
To: Gentoo Java <gentoo-java@lists.gentoo.org>
Cc: Hanno Meyer-Thurow <h.mth@web.de>
Subject: Re: [gentoo-java] work on gcj for gentoo
Date: Tue, 21 Feb 2006 10:45:58 -0500 [thread overview]
Message-ID: <43FB35B6.10105@gentoo.org> (raw)
In-Reply-To: <20060221160425.b1478bdc.h.mth@web.de>
Hanno Meyer-Thurow wrote:
> Hi list!
> I would like to work on gcj for Gentoo.
> I spoke with Andrew Cowie. He suggested me to send my ideas and
> questions to this list to discuss.
>
> I know gcj is tricky. It has various issues. Still, it is quite interesting
> to work on gcj. But as gcj is in portage right now it is hard to use for
> an ebuild writer like myself. Just two main issues:
>
> * dependency tracking
> * JDK-like environment
>
>
For JDK-like environment, redhat has done much work on this already. It
is, surprisingly enough, called java-gcj-compat. Take a look at the
jpackage rpm for it [1]. You can find other sites for java-gcj-compat,
but the jpackage rpm seems to have the highest version I was able to find.
> However, I may write my ideas and questions:
>
> I thought in a gcj-4.1 / ecj combination. Use ecj to bytecompile Java
> source to jar with gcj as backend. Then use gcj to create native
> executables or libraries out of that jar files. Creating a database
> via gcj-dbtool for jar / native code resolution. If possible Java to
> native.
>
>
java-gcj-compat actually uses ecj internally, along with some other magic.
> The steps to take to get there
>
> * get gcj-jdk in portage
> * use ecj as gcjs bytecompiler
> * handle it via Gentoos java config
> (gcj bytecompile is broken,
> see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18131)
>
> (later)
>
> * Java to native compilation
> * utilize gcj-dbtool for jar / native code resolution
> (Whatever way it is wanted.)
>
> To stay sane we want to hack the ant-core dependency out of
> eclipse-ecj package. Just try to compile ant-core with gcj. I have
> ugly hacks (gcc PR19870) for ant-core-1.6.2 to bytecompile with gcj.
>
>
This shouldn't be much of a problem. The build.xml is pretty trivial, so
you should be able to replicate it using javac and jar.
> No way.
>
> Then I have to get ant-core-1.6.5 to bytecompile with gcj / ecj which
> fails right now - did not yet investigate any further. After these steps
> are done we have the base (for interested ones to test gcj).
>
> I am no Java programmer.
> I do packaging stuff and ugly hacking. ;)
>
> I will try to integrate gcj into Gentoos next Java config utility.
> Just not to do the work of integration twice.
>
>
There really isn't much 'integration' involved per se. You mostly just
have to create an env file that contains information about JAVA_HOME,
PATH, etc. Take a look at existing jdk/jre packages.
> What I did already:
>
> * tweaked Andrew's gcj-jdk ebuild
> -> ebuild / eclass split
> * gcj-ecj ebuild
> -> Java to native: ecj binary
>
> The very next steps should be:
>
> * better gcj-jdk ebuild
> * fix ant-core issue with ecj
>
> Then, get back to plan.
>
> Reference - my overlay for these two ebuilds:
> http://geki.ath.cx/hacks/gcj-overlay-2.tar.bz2
>
>
> Thanks in advance for help!
>
>
> Regards,
> Hanno
>
A few other things...
I'm not fond of the name gcj-jdk. The ebuild Andrew made was just for
gcj itself, without the Java compatibility stuff, iirc. -jdk suggests
that it provides a usable JDK, which it doesn't as it was.
Speaking of which, I think the added compatibility layer (for javac,
java, etc) should be a separate package. I'm not sure if this was your
intention or not. Either way, it would make sense, since you would most
likely be able to use the same layer for different versions of gcj.
Hope this helps,
- Josh
--
gentoo-java@gentoo.org mailing list
next prev parent reply other threads:[~2006-02-21 15:47 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-21 15:04 [gentoo-java] work on gcj for gentoo Hanno Meyer-Thurow
2006-02-21 15:42 ` Karl Trygve Kalleberg
2006-02-21 18:14 ` Hanno Meyer-Thurow
2006-02-21 18:21 ` Karl Trygve Kalleberg
2006-02-21 15:45 ` Joshua Nichols [this message]
2006-02-21 15:55 ` Joshua Nichols
2006-02-21 17:53 ` Hanno Meyer-Thurow
2006-02-22 8:16 ` Andrew Cowie
2006-02-27 22:38 ` Hanno Meyer-Thurow
2006-03-01 12:30 ` Andrew Cowie
2006-03-01 14:38 ` Hanno Meyer-Thurow
2006-02-28 7:34 ` [RESEND] " Hanno Meyer-Thurow
2006-02-22 16:51 ` Hanno Meyer-Thurow
2006-02-23 2:09 ` Andrew Cowie
2006-02-23 11:25 ` Hanno Meyer-Thurow
2006-02-24 17:26 ` Hanno Meyer-Thurow
2006-02-25 14:43 ` Hanno Meyer-Thurow
2006-02-28 10:25 ` Hanno Meyer-Thurow
2006-02-28 20:37 ` Hanno Meyer-Thurow
2006-03-02 10:35 ` Hanno Meyer-Thurow
2006-03-11 20:51 ` Hanno Meyer-Thurow
2006-03-12 18:25 ` Hanno Meyer-Thurow
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43FB35B6.10105@gentoo.org \
--to=nichoj@gentoo.org \
--cc=gentoo-java@lists.gentoo.org \
--cc=h.mth@web.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox