summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRalph Sennhauser <sera@gentoo.org>2012-09-28 18:37:53 +0000
committerRalph Sennhauser <sera@gentoo.org>2012-09-28 18:37:53 +0000
commit5c8b6a2831e71be37a12d5c78a2bb35c290de377 (patch)
tree8c9995c46038d279949f22e3b819f5cd80e689b2 /dev-java/gcj-jdk
parentDev channel bump. Add experimental tcmalloc USE flag. Remove old. (diff)
downloadgentoo-2-5c8b6a2831e71be37a12d5c78a2bb35c290de377.tar.gz
gentoo-2-5c8b6a2831e71be37a12d5c78a2bb35c290de377.tar.bz2
gentoo-2-5c8b6a2831e71be37a12d5c78a2bb35c290de377.zip
No longer install symlinks in /usr/bin to work with recent gcc-config. #431930
Add missing dodir for server vm. Use get_libdir for vm home. (Portage version: 2.1.11.13/cvs/Linux x86_64)
Diffstat (limited to 'dev-java/gcj-jdk')
-rw-r--r--dev-java/gcj-jdk/ChangeLog10
-rw-r--r--dev-java/gcj-jdk/gcj-jdk-4.6.3-r1.ebuild110
2 files changed, 119 insertions, 1 deletions
diff --git a/dev-java/gcj-jdk/ChangeLog b/dev-java/gcj-jdk/ChangeLog
index f4f1650f93fd..2be2898d8e15 100644
--- a/dev-java/gcj-jdk/ChangeLog
+++ b/dev-java/gcj-jdk/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-java/gcj-jdk
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/ChangeLog,v 1.7 2012/09/16 13:16:05 chithanh Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-java/gcj-jdk/ChangeLog,v 1.8 2012/09/28 18:37:53 sera Exp $
+
+*gcj-jdk-4.6.3-r1 (28 Sep 2012)
+
+ 28 Sep 2012; Ralph Sennhauser <sera@gentoo.org> +gcj-jdk-4.6.3-r1.ebuild:
+ No longer install symlinks in /usr/bin to work with recent gcc-config.
+ #431930
+ Add missing dodir for server vm.
+ Use get_libdir for vm home.
16 Sep 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
gcj-jdk-4.6.3.ebuild:
diff --git a/dev-java/gcj-jdk/gcj-jdk-4.6.3-r1.ebuild b/dev-java/gcj-jdk/gcj-jdk-4.6.3-r1.ebuild
new file mode 100644
index 000000000000..29c2da672187
--- /dev/null
+++ b/dev-java/gcj-jdk/gcj-jdk-4.6.3-r1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2012 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.6.3-r1.ebuild,v 1.1 2012/09/28 18:37:53 sera Exp $
+
+EAPI="4"
+
+inherit java-vm-2 toolchain-funcs multilib versionator
+
+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=""
+
+ECJ_GCJ_SLOT="3.6"
+
+RDEPEND="
+ ~sys-devel/gcc-${PV}[gcj,gtk]
+ dev-java/ecj-gcj:${ECJ_GCJ_SLOT}"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}"
+
+pkg_setup() {
+ if [[ $(gcc-fullversion) != ${PV} ]]; then
+ eerror "Your current GCC version is not set to ${PV} via gcc-config"
+ eerror "Please read http://www.gentoo.org/doc/en/gcc-upgrading.xml before you set it"
+ echo "$(gcc-fullversion) != ${PV}"
+ die "gcc ${PV} must be selected via gcc-config"
+ fi
+
+ java-vm-2_pkg_setup
+}
+
+src_install() {
+ # jre lib paths ...
+ local libarch="$(get_system_arch)"
+ local gccbin=$(gcc-config -B)
+ gccbin=${gccbin#"${EPREFIX}"}
+ local gcclib=$(gcc-config -L|cut -d':' -f1)
+ gcclib=${gcclib#"${EPREFIX}"}
+ local gcjhome="/usr/$(get_libdir)/${P}"
+ local gcc_version=$(gcc-fullversion)
+ 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
+ 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}
+
+ dosym /usr/bin/ecj-gcj-${ECJ_GCJ_SLOT} ${gcjhome}/bin/javac
+
+ 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 APIs."
+ ewarn "See http://builder.classpath.org/japi/libgcj-jdk15.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"
+
+}