commit:     c25d9356f654ace52c021c8b139d851ac14aefa5
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Wed May 17 21:46:11 2017 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Wed May 17 21:46:11 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c25d9356

dev-java/gcj-jdk: Version bump to 5.4.0

Package-Manager: Portage-2.3.5, Repoman-2.3.2

 dev-java/gcj-jdk/files/gcj-jdk.env.sh |  17 ++++++
 dev-java/gcj-jdk/gcj-jdk-5.4.0.ebuild | 107 ++++++++++++++++++++++++++++++++++
 2 files changed, 124 insertions(+)

diff --git a/dev-java/gcj-jdk/files/gcj-jdk.env.sh 
b/dev-java/gcj-jdk/files/gcj-jdk.env.sh
new file mode 100644
index 00000000000..97ef10ed596
--- /dev/null
+++ b/dev-java/gcj-jdk/files/gcj-jdk.env.sh
@@ -0,0 +1,17 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+VERSION="GCJ ${PV}"
+JAVA_HOME="${EPREFIX}/usr/lib/${P}"
+JDK_HOME="${EPREFIX}/usr/lib/${P}"
+JAVAC="\${JAVA_HOME}/bin/javac"
+PATH="\${JAVA_HOME}/bin"
+ROOTPATH="\${JAVA_HOME}/bin"
+LDPATH="\${JAVA_HOME}/lib"
+INFOPATH="\${JAVA_HOME}/info"
+MANPATH="\${JAVA_HOME}/man"
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="1.5"
+BOOTCLASSPATH="\${JAVA_HOME}/jre/lib/rt.jar"
+GENERATION="2"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH INFOPATH MANPATH"

diff --git a/dev-java/gcj-jdk/gcj-jdk-5.4.0.ebuild 
b/dev-java/gcj-jdk/gcj-jdk-5.4.0.ebuild
new file mode 100644
index 00000000000..13821c4840e
--- /dev/null
+++ b/dev-java/gcj-jdk/gcj-jdk-5.4.0.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit java-vm-2 multilib
+
+DESCRIPTION="Java wrappers around GCJ"
+HOMEPAGE="https://www.gentoo.org/";
+SRC_URI=""
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x86-linux"
+SLOT="0"
+IUSE="awt"
+
+API_DIFF_PV="4.9.2"
+
+# perl is needed for javac wrapper
+RDEPEND="
+       dev-java/ecj-gcj:*
+       dev-lang/perl
+       ~sys-devel/gcc-${PV}[awt?,gcj]"
+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 gcjprefix="${EPREFIX}${gcjhome}"
+       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 awt && 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
+
+       exeinto ${gcjhome}/bin
+       sed -e "s#@JAVA@#${gcjprefix}/bin/java#" \
+               -e "s#@ECJ_JAR@#${EPREFIX}/usr/share/eclipse-ecj/ecj.jar#" \
+               -e "s#@RT_JAR@#${gcjprefix}/jre/lib/rt.jar#" \
+               -e "s#@TOOLS_JAR@#${gcjprefix}/lib/tools.jar#" \
+               "${FILESDIR}"/javac.in \
+       | newexe - javac
+       assert
+
+       java-vm_install-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 https://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"
+}

Reply via email to