sera 14/07/14 18:45:53
Modified: ChangeLog
Added: gcj-jdk-4.7.3-r1.ebuild gcj-jdk-4.8.3.ebuild
gcj-jdk-4.8.2.ebuild gcj-jdk-4.7.4.ebuild
Removed: gcj-jdk-4.7.2.ebuild gcj-jdk-4.6.1.ebuild
gcj-jdk-4.6.3-r1.ebuild gcj-jdk-4.5.4.ebuild
gcj-jdk-4.6.3-r2.ebuild gcj-jdk-4.5.2-r1.ebuild
gcj-jdk-4.6.3-r3.ebuild gcj-jdk-4.6.0.ebuild
gcj-jdk-4.5.4-r1.ebuild gcj-jdk-4.6.3.ebuild
gcj-jdk-4.5.3.ebuild gcj-jdk-4.5.1-r1.ebuild
gcj-jdk-4.6.2-r1.ebuild
Log:
Add missing versions for 4.7 and 4.8
Fix 4.7.3 to be able to build ant-core-1.9 #489266
Thanks to Andrew John Hughes <[email protected]> for the javac
wrapper und for providing new API diffs
Drop 4.5 and 4.6 as they are to old to build current icedtea:7
Drop ia64 ppc ppc64 on 4.8 as the correspondig gcc is missing those keywords
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key
3C5CF75A)
Revision Changes Path
1.16 dev-java/gcj-jdk/ChangeLog
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/ChangeLog?rev=1.16&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/ChangeLog?rev=1.16&content-type=text/plain
diff :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/ChangeLog?r1=1.15&r2=1.16
Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/ChangeLog,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- ChangeLog 18 Jan 2014 09:30:11 -0000 1.15
+++ ChangeLog 14 Jul 2014 18:45:53 -0000 1.16
@@ -1,6 +1,25 @@
# ChangeLog for dev-java/gcj-jdk
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/ChangeLog,v 1.15
2014/01/18 09:30:11 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/ChangeLog,v 1.16
2014/07/14 18:45:53 sera Exp $
+
+*gcj-jdk-4.8.3 (14 Jul 2014)
+*gcj-jdk-4.8.2 (14 Jul 2014)
+*gcj-jdk-4.7.4 (14 Jul 2014)
+*gcj-jdk-4.7.3-r1 (14 Jul 2014)
+
+ 14 Jul 2014; Ralph Sennhauser <[email protected]> -gcj-jdk-4.5.1-r1.ebuild,
+ -gcj-jdk-4.5.2-r1.ebuild, -gcj-jdk-4.5.3.ebuild, -gcj-jdk-4.5.4.ebuild,
+ -gcj-jdk-4.5.4-r1.ebuild, -gcj-jdk-4.6.0.ebuild, -gcj-jdk-4.6.1.ebuild,
+ -gcj-jdk-4.6.2-r1.ebuild, -gcj-jdk-4.6.3.ebuild, -gcj-jdk-4.6.3-r1.ebuild,
+ -gcj-jdk-4.6.3-r2.ebuild, -gcj-jdk-4.6.3-r3.ebuild, -gcj-jdk-4.7.2.ebuild,
+ +gcj-jdk-4.7.3-r1.ebuild, +gcj-jdk-4.7.4.ebuild, +gcj-jdk-4.8.2.ebuild,
+ +gcj-jdk-4.8.3.ebuild, +files/javac.in:
+ Add missing versions for 4.7 and 4.8
+ Fix 4.7.3 to be able to build ant-core-1.9 #489266
+ Thanks to Andrew John Hughes <[email protected]> for the javac
+ wrapper und for providing new API diffs
+ Drop 4.5 and 4.6 as they are to old to build current icedtea:7
+ Drop ia64 ppc ppc64 on 4.8 as the correspondig gcc is missing those keywords
18 Jan 2014; Lars Wendler <[email protected]> -gcj-jdk-4.4.4-r1.ebuild,
-gcj-jdk-4.4.5-r1.ebuild, -gcj-jdk-4.4.6.ebuild:
1.1 dev-java/gcj-jdk/gcj-jdk-4.7.3-r1.ebuild
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.7.3-r1.ebuild?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.7.3-r1.ebuild?rev=1.1&content-type=text/plain
Index: gcj-jdk-4.7.3-r1.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.7.3-r1.ebuild,v
1.1 2014/07/14 18:45:53 sera Exp $
EAPI="5"
inherit java-vm-2 multilib
DESCRIPTION="Java wrappers around GCJ"
HOMEPAGE="http://www.gentoo.org/"
SRC_URI=""
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~x86-linux"
SLOT="0"
IUSE="X"
ECJ_GCJ_SLOT="3.6"
API_DIFF_PV="4.8.2"
# perl is needed for javac wrapper
RDEPEND="
dev-java/ecj-gcj:${ECJ_GCJ_SLOT}
dev-lang/perl
~sys-devel/gcc-${PV}[gcj]
X? ( ~sys-devel/gcc-${PV}[awt] )"
DEPEND="${RDEPEND}"
S="${WORKDIR}"
src_install() {
# jre lib paths ...
local libarch="$(get_system_arch)"
local gcc_version=${PV}
local gccbin=$(gcc-config -B ${gcc_version})
gccbin=${gccbin#"${EPREFIX}"}
local gcclib=$(gcc-config -L ${gcc_version} | cut -d':' -f1)
gcclib=${gcclib#"${EPREFIX}"}
local gcjhome="/usr/$(get_libdir)/${P}"
local gccchost="${CHOST}"
local gcjlibdir=$(echo
"${EPREFIX}"/usr/$(get_libdir)/gcj-${gcc_version}-*)
gcjlibdir=${gcjlibdir#"${EPREFIX}"}
# links
dodir ${gcjhome}/bin
dodir ${gcjhome}/jre/bin
dosym ${gccbin}/gij ${gcjhome}/bin/java
dosym ${gccbin}/gij ${gcjhome}/jre/bin/java
dosym ${gccbin}/gjar ${gcjhome}/bin/jar
dosym ${gccbin}/gjdoc ${gcjhome}/bin/javadoc
dosym ${gccbin}/grmic ${gcjhome}/bin/rmic
dosym ${gccbin}/gjavah ${gcjhome}/bin/javah
dosym ${gccbin}/jcf-dump ${gcjhome}/bin/javap
dosym ${gccbin}/gappletviewer ${gcjhome}/bin/appletviewer
dosym ${gccbin}/gjarsigner ${gcjhome}/bin/jarsigner
dosym ${gccbin}/grmiregistry ${gcjhome}/bin/rmiregistry
dosym ${gccbin}/grmiregistry ${gcjhome}/jre/bin/rmiregistry
dosym ${gccbin}/gkeytool ${gcjhome}/bin/keytool
dosym ${gccbin}/gkeytool ${gcjhome}/jre/bin/keytool
dosym ${gccbin}/gnative2ascii ${gcjhome}/bin/native2ascii
dosym ${gccbin}/gorbd ${gcjhome}/bin/orbd
dosym ${gccbin}/gorbd ${gcjhome}/jre/bin/orbd
dosym ${gccbin}/grmid ${gcjhome}/bin/rmid
dosym ${gccbin}/grmid ${gcjhome}/jre/bin/rmid
dosym ${gccbin}/gserialver ${gcjhome}/bin/serialver
dosym ${gccbin}/gtnameserv ${gcjhome}/bin/tnameserv
dosym ${gccbin}/gtnameserv ${gcjhome}/jre/bin/tnameserv
dodir ${gcjhome}/jre/lib/${libarch}/client
dodir ${gcjhome}/jre/lib/${libarch}/server
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/client/libjvm.so
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/server/libjvm.so
use X && dosym ${gcjlibdir}/libjawt.so
${gcjhome}/jre/lib/${libarch}/libjawt.so
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-${gcc_version/_/-}.jar
\
${gcjhome}/jre/lib/rt.jar
dodir ${gcjhome}/lib
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-tools-${gcc_version/_/-}.jar
\
${gcjhome}/lib/tools.jar
dosym ${gcclib}/include ${gcjhome}/include
local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
exeinto ${gcjhome}/bin
sed -e "s#@JAVA@#${gcjhome}/bin/java#" \
-e "s#@ECJ_JAR@#${ecj_jar}#" \
-e "s#@RT_JAR@#${gcjhome}/jre/lib/rt.jar#" \
-e "s#@TOOLS_JAR@#${gcjhome}/lib/tools.jar#" \
"${FILESDIR}"/javac.in \
| newexe - javac
assert
set_java_env
}
pkg_postinst() {
# Do not set as system VM (see below)
# java-vm-2_pkg_postinst
ewarn "gcj does not currently provide all the 1.5 or 1.6 APIs."
ewarn "See http://fuseyism.com/japi/ibmjdk15-libgcj-${API_DIFF_PV}.html"
ewarn "and http://fuseyism.com/japi/icedtea6-libgcj-${API_DIFF_PV}.html"
ewarn "Check for existing bugs relating to missing APIs and file"
ewarn "new ones at http://gcc.gnu.org/bugzilla/"
ewarn
ewarn "Due to this and limited manpower, we currently cannot support"
ewarn "using gcj-jdk as a system VM. Its main purpose is to bootstrap"
ewarn "IcedTea without prior binary VM installation. To do that,
execute:"
ewarn
ewarn "emerge -o icedtea && emerge icedtea"
}
1.1 dev-java/gcj-jdk/gcj-jdk-4.8.3.ebuild
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.8.3.ebuild?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.8.3.ebuild?rev=1.1&content-type=text/plain
Index: gcj-jdk-4.8.3.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.8.3.ebuild,v 1.1
2014/07/14 18:45:53 sera Exp $
EAPI="5"
inherit java-vm-2 multilib
DESCRIPTION="Java wrappers around GCJ"
HOMEPAGE="http://www.gentoo.org/"
SRC_URI=""
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm ~x86 ~x86-linux"
SLOT="0"
IUSE="X"
ECJ_GCJ_SLOT="4.2"
API_DIFF_PV="4.8.2"
# perl is needed for javac wrapper
RDEPEND="
dev-java/ecj-gcj:${ECJ_GCJ_SLOT}
dev-lang/perl
~sys-devel/gcc-${PV}[gcj]
X? ( ~sys-devel/gcc-${PV}[awt] )"
DEPEND="${RDEPEND}"
S="${WORKDIR}"
src_install() {
# jre lib paths ...
local libarch="$(get_system_arch)"
local gcc_version=${PV}
local gccbin=$(gcc-config -B ${gcc_version})
gccbin=${gccbin#"${EPREFIX}"}
local gcclib=$(gcc-config -L ${gcc_version} | cut -d':' -f1)
gcclib=${gcclib#"${EPREFIX}"}
local gcjhome="/usr/$(get_libdir)/${P}"
local gccchost="${CHOST}"
local gcjlibdir=$(echo
"${EPREFIX}"/usr/$(get_libdir)/gcj-${gcc_version}-*)
gcjlibdir=${gcjlibdir#"${EPREFIX}"}
# links
dodir ${gcjhome}/bin
dodir ${gcjhome}/jre/bin
dosym ${gccbin}/gij ${gcjhome}/bin/java
dosym ${gccbin}/gij ${gcjhome}/jre/bin/java
dosym ${gccbin}/gjar ${gcjhome}/bin/jar
dosym ${gccbin}/gjdoc ${gcjhome}/bin/javadoc
dosym ${gccbin}/grmic ${gcjhome}/bin/rmic
dosym ${gccbin}/gjavah ${gcjhome}/bin/javah
dosym ${gccbin}/jcf-dump ${gcjhome}/bin/javap
dosym ${gccbin}/gappletviewer ${gcjhome}/bin/appletviewer
dosym ${gccbin}/gjarsigner ${gcjhome}/bin/jarsigner
dosym ${gccbin}/grmiregistry ${gcjhome}/bin/rmiregistry
dosym ${gccbin}/grmiregistry ${gcjhome}/jre/bin/rmiregistry
dosym ${gccbin}/gkeytool ${gcjhome}/bin/keytool
dosym ${gccbin}/gkeytool ${gcjhome}/jre/bin/keytool
dosym ${gccbin}/gnative2ascii ${gcjhome}/bin/native2ascii
dosym ${gccbin}/gorbd ${gcjhome}/bin/orbd
dosym ${gccbin}/gorbd ${gcjhome}/jre/bin/orbd
dosym ${gccbin}/grmid ${gcjhome}/bin/rmid
dosym ${gccbin}/grmid ${gcjhome}/jre/bin/rmid
dosym ${gccbin}/gserialver ${gcjhome}/bin/serialver
dosym ${gccbin}/gtnameserv ${gcjhome}/bin/tnameserv
dosym ${gccbin}/gtnameserv ${gcjhome}/jre/bin/tnameserv
dodir ${gcjhome}/jre/lib/${libarch}/client
dodir ${gcjhome}/jre/lib/${libarch}/server
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/client/libjvm.so
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/server/libjvm.so
use X && dosym ${gcjlibdir}/libjawt.so
${gcjhome}/jre/lib/${libarch}/libjawt.so
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-${gcc_version/_/-}.jar
\
${gcjhome}/jre/lib/rt.jar
dodir ${gcjhome}/lib
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-tools-${gcc_version/_/-}.jar
\
${gcjhome}/lib/tools.jar
dosym ${gcclib}/include ${gcjhome}/include
local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
exeinto ${gcjhome}/bin
sed -e "s#@JAVA@#${gcjhome}/bin/java#" \
-e "s#@ECJ_JAR@#${ecj_jar}#" \
-e "s#@RT_JAR@#${gcjhome}/jre/lib/rt.jar#" \
-e "s#@TOOLS_JAR@#${gcjhome}/lib/tools.jar#" \
"${FILESDIR}"/javac.in \
| newexe - javac
assert
set_java_env
}
pkg_postinst() {
# Do not set as system VM (see below)
# java-vm-2_pkg_postinst
ewarn "gcj does not currently provide all the 1.5 or 1.6 APIs."
ewarn "See http://fuseyism.com/japi/ibmjdk15-libgcj-${API_DIFF_PV}.html"
ewarn "and http://fuseyism.com/japi/icedtea6-libgcj-${API_DIFF_PV}.html"
ewarn "Check for existing bugs relating to missing APIs and file"
ewarn "new ones at http://gcc.gnu.org/bugzilla/"
ewarn
ewarn "Due to this and limited manpower, we currently cannot support"
ewarn "using gcj-jdk as a system VM. Its main purpose is to bootstrap"
ewarn "IcedTea without prior binary VM installation. To do that,
execute:"
ewarn
ewarn "emerge -o icedtea && emerge icedtea"
}
1.1 dev-java/gcj-jdk/gcj-jdk-4.8.2.ebuild
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.8.2.ebuild?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.8.2.ebuild?rev=1.1&content-type=text/plain
Index: gcj-jdk-4.8.2.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.8.2.ebuild,v 1.1
2014/07/14 18:45:53 sera Exp $
EAPI="5"
inherit java-vm-2 multilib
DESCRIPTION="Java wrappers around GCJ"
HOMEPAGE="http://www.gentoo.org/"
SRC_URI=""
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm ~x86 ~x86-linux"
SLOT="0"
IUSE="X"
ECJ_GCJ_SLOT="4.2"
API_DIFF_PV="${PV}"
# perl is needed for javac wrapper
RDEPEND="
dev-java/ecj-gcj:${ECJ_GCJ_SLOT}
dev-lang/perl
~sys-devel/gcc-${PV}[gcj]
X? ( ~sys-devel/gcc-${PV}[awt] )"
DEPEND="${RDEPEND}"
S="${WORKDIR}"
src_install() {
# jre lib paths ...
local libarch="$(get_system_arch)"
local gcc_version=${PV}
local gccbin=$(gcc-config -B ${gcc_version})
gccbin=${gccbin#"${EPREFIX}"}
local gcclib=$(gcc-config -L ${gcc_version} | cut -d':' -f1)
gcclib=${gcclib#"${EPREFIX}"}
local gcjhome="/usr/$(get_libdir)/${P}"
local gccchost="${CHOST}"
local gcjlibdir=$(echo
"${EPREFIX}"/usr/$(get_libdir)/gcj-${gcc_version}-*)
gcjlibdir=${gcjlibdir#"${EPREFIX}"}
# links
dodir ${gcjhome}/bin
dodir ${gcjhome}/jre/bin
dosym ${gccbin}/gij ${gcjhome}/bin/java
dosym ${gccbin}/gij ${gcjhome}/jre/bin/java
dosym ${gccbin}/gjar ${gcjhome}/bin/jar
dosym ${gccbin}/gjdoc ${gcjhome}/bin/javadoc
dosym ${gccbin}/grmic ${gcjhome}/bin/rmic
dosym ${gccbin}/gjavah ${gcjhome}/bin/javah
dosym ${gccbin}/jcf-dump ${gcjhome}/bin/javap
dosym ${gccbin}/gappletviewer ${gcjhome}/bin/appletviewer
dosym ${gccbin}/gjarsigner ${gcjhome}/bin/jarsigner
dosym ${gccbin}/grmiregistry ${gcjhome}/bin/rmiregistry
dosym ${gccbin}/grmiregistry ${gcjhome}/jre/bin/rmiregistry
dosym ${gccbin}/gkeytool ${gcjhome}/bin/keytool
dosym ${gccbin}/gkeytool ${gcjhome}/jre/bin/keytool
dosym ${gccbin}/gnative2ascii ${gcjhome}/bin/native2ascii
dosym ${gccbin}/gorbd ${gcjhome}/bin/orbd
dosym ${gccbin}/gorbd ${gcjhome}/jre/bin/orbd
dosym ${gccbin}/grmid ${gcjhome}/bin/rmid
dosym ${gccbin}/grmid ${gcjhome}/jre/bin/rmid
dosym ${gccbin}/gserialver ${gcjhome}/bin/serialver
dosym ${gccbin}/gtnameserv ${gcjhome}/bin/tnameserv
dosym ${gccbin}/gtnameserv ${gcjhome}/jre/bin/tnameserv
dodir ${gcjhome}/jre/lib/${libarch}/client
dodir ${gcjhome}/jre/lib/${libarch}/server
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/client/libjvm.so
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/server/libjvm.so
use X && dosym ${gcjlibdir}/libjawt.so
${gcjhome}/jre/lib/${libarch}/libjawt.so
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-${gcc_version/_/-}.jar
\
${gcjhome}/jre/lib/rt.jar
dodir ${gcjhome}/lib
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-tools-${gcc_version/_/-}.jar
\
${gcjhome}/lib/tools.jar
dosym ${gcclib}/include ${gcjhome}/include
local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
exeinto ${gcjhome}/bin
sed -e "s#@JAVA@#${gcjhome}/bin/java#" \
-e "s#@ECJ_JAR@#${ecj_jar}#" \
-e "s#@RT_JAR@#${gcjhome}/jre/lib/rt.jar#" \
-e "s#@TOOLS_JAR@#${gcjhome}/lib/tools.jar#" \
"${FILESDIR}"/javac.in \
| newexe - javac
assert
set_java_env
}
pkg_postinst() {
# Do not set as system VM (see below)
# java-vm-2_pkg_postinst
ewarn "gcj does not currently provide all the 1.5 or 1.6 APIs."
ewarn "See http://fuseyism.com/japi/ibmjdk15-libgcj-${API_DIFF_PV}.html"
ewarn "and http://fuseyism.com/japi/icedtea6-libgcj-${API_DIFF_PV}.html"
ewarn "Check for existing bugs relating to missing APIs and file"
ewarn "new ones at http://gcc.gnu.org/bugzilla/"
ewarn
ewarn "Due to this and limited manpower, we currently cannot support"
ewarn "using gcj-jdk as a system VM. Its main purpose is to bootstrap"
ewarn "IcedTea without prior binary VM installation. To do that,
execute:"
ewarn
ewarn "emerge -o icedtea && emerge icedtea"
}
1.1 dev-java/gcj-jdk/gcj-jdk-4.7.4.ebuild
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.7.4.ebuild?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.7.4.ebuild?rev=1.1&content-type=text/plain
Index: gcj-jdk-4.7.4.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/gcj-jdk-4.7.4.ebuild,v 1.1
2014/07/14 18:45:53 sera Exp $
EAPI="5"
inherit java-vm-2 multilib
DESCRIPTION="Java wrappers around GCJ"
HOMEPAGE="http://www.gentoo.org/"
SRC_URI=""
LICENSE="GPL-2"
KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~x86-linux"
SLOT="0"
IUSE="X"
ECJ_GCJ_SLOT="3.6"
API_DIFF_PV="4.8.2"
# perl is needed for javac wrapper
RDEPEND="
dev-java/ecj-gcj:${ECJ_GCJ_SLOT}
dev-lang/perl
~sys-devel/gcc-${PV}[gcj]
X? ( ~sys-devel/gcc-${PV}[awt] )"
DEPEND="${RDEPEND}"
S="${WORKDIR}"
src_install() {
# jre lib paths ...
local libarch="$(get_system_arch)"
local gcc_version=${PV}
local gccbin=$(gcc-config -B ${gcc_version})
gccbin=${gccbin#"${EPREFIX}"}
local gcclib=$(gcc-config -L ${gcc_version} | cut -d':' -f1)
gcclib=${gcclib#"${EPREFIX}"}
local gcjhome="/usr/$(get_libdir)/${P}"
local gccchost="${CHOST}"
local gcjlibdir=$(echo
"${EPREFIX}"/usr/$(get_libdir)/gcj-${gcc_version}-*)
gcjlibdir=${gcjlibdir#"${EPREFIX}"}
# links
dodir ${gcjhome}/bin
dodir ${gcjhome}/jre/bin
dosym ${gccbin}/gij ${gcjhome}/bin/java
dosym ${gccbin}/gij ${gcjhome}/jre/bin/java
dosym ${gccbin}/gjar ${gcjhome}/bin/jar
dosym ${gccbin}/gjdoc ${gcjhome}/bin/javadoc
dosym ${gccbin}/grmic ${gcjhome}/bin/rmic
dosym ${gccbin}/gjavah ${gcjhome}/bin/javah
dosym ${gccbin}/jcf-dump ${gcjhome}/bin/javap
dosym ${gccbin}/gappletviewer ${gcjhome}/bin/appletviewer
dosym ${gccbin}/gjarsigner ${gcjhome}/bin/jarsigner
dosym ${gccbin}/grmiregistry ${gcjhome}/bin/rmiregistry
dosym ${gccbin}/grmiregistry ${gcjhome}/jre/bin/rmiregistry
dosym ${gccbin}/gkeytool ${gcjhome}/bin/keytool
dosym ${gccbin}/gkeytool ${gcjhome}/jre/bin/keytool
dosym ${gccbin}/gnative2ascii ${gcjhome}/bin/native2ascii
dosym ${gccbin}/gorbd ${gcjhome}/bin/orbd
dosym ${gccbin}/gorbd ${gcjhome}/jre/bin/orbd
dosym ${gccbin}/grmid ${gcjhome}/bin/rmid
dosym ${gccbin}/grmid ${gcjhome}/jre/bin/rmid
dosym ${gccbin}/gserialver ${gcjhome}/bin/serialver
dosym ${gccbin}/gtnameserv ${gcjhome}/bin/tnameserv
dosym ${gccbin}/gtnameserv ${gcjhome}/jre/bin/tnameserv
dodir ${gcjhome}/jre/lib/${libarch}/client
dodir ${gcjhome}/jre/lib/${libarch}/server
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/client/libjvm.so
dosym ${gcjlibdir}/libjvm.so
${gcjhome}/jre/lib/${libarch}/server/libjvm.so
use X && dosym ${gcjlibdir}/libjawt.so
${gcjhome}/jre/lib/${libarch}/libjawt.so
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-${gcc_version/_/-}.jar
\
${gcjhome}/jre/lib/rt.jar
dodir ${gcjhome}/lib
dosym
/usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-tools-${gcc_version/_/-}.jar
\
${gcjhome}/lib/tools.jar
dosym ${gcclib}/include ${gcjhome}/include
local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
exeinto ${gcjhome}/bin
sed -e "s#@JAVA@#${gcjhome}/bin/java#" \
-e "s#@ECJ_JAR@#${ecj_jar}#" \
-e "s#@RT_JAR@#${gcjhome}/jre/lib/rt.jar#" \
-e "s#@TOOLS_JAR@#${gcjhome}/lib/tools.jar#" \
"${FILESDIR}"/javac.in \
| newexe - javac
assert
set_java_env
}
pkg_postinst() {
# Do not set as system VM (see below)
# java-vm-2_pkg_postinst
ewarn "gcj does not currently provide all the 1.5 or 1.6 APIs."
ewarn "See http://fuseyism.com/japi/ibmjdk15-libgcj-${API_DIFF_PV}.html"
ewarn "and http://fuseyism.com/japi/icedtea6-libgcj-${API_DIFF_PV}.html"
ewarn "Check for existing bugs relating to missing APIs and file"
ewarn "new ones at http://gcc.gnu.org/bugzilla/"
ewarn
ewarn "Due to this and limited manpower, we currently cannot support"
ewarn "using gcj-jdk as a system VM. Its main purpose is to bootstrap"
ewarn "IcedTea without prior binary VM installation. To do that,
execute:"
ewarn
ewarn "emerge -o icedtea && emerge icedtea"
}