diff options
author | Jean-Noël Rivasseau <elvanor@gentoo.org> | 2008-08-01 09:49:12 +0000 |
---|---|---|
committer | Jean-Noël Rivasseau <elvanor@gentoo.org> | 2008-08-01 09:49:12 +0000 |
commit | 0a6cc0b1e0db51123a164a3eb4f0919d2855595b (patch) | |
tree | 7e327d07c415914156f60ca9cfc5d7f9f4960cb9 /dev-java/eclipse-ecj | |
parent | No java6 for ia64, masked gcj flag for profiles without >=gcc-4.3.1 (diff) | |
download | gentoo-2-0a6cc0b1e0db51123a164a3eb4f0919d2855595b.tar.gz gentoo-2-0a6cc0b1e0db51123a164a3eb4f0919d2855595b.tar.bz2 gentoo-2-0a6cc0b1e0db51123a164a3eb4f0919d2855595b.zip |
eclipse-ecj-3.4 bump.
(Portage version: 2.1.4.4)
Diffstat (limited to 'dev-java/eclipse-ecj')
-rw-r--r-- | dev-java/eclipse-ecj/ChangeLog | 8 | ||||
-rw-r--r-- | dev-java/eclipse-ecj/eclipse-ecj-3.4-r2.ebuild | 123 | ||||
-rwxr-xr-x | dev-java/eclipse-ecj/files/ecj-3.4 | 8 |
3 files changed, 138 insertions, 1 deletions
diff --git a/dev-java/eclipse-ecj/ChangeLog b/dev-java/eclipse-ecj/ChangeLog index 9299ceaff458..54a0c8b929d1 100644 --- a/dev-java/eclipse-ecj/ChangeLog +++ b/dev-java/eclipse-ecj/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-java/eclipse-ecj # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/eclipse-ecj/ChangeLog,v 1.43 2008/07/21 22:07:25 betelgeuse Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/eclipse-ecj/ChangeLog,v 1.44 2008/08/01 09:49:11 elvanor Exp $ + +*eclipse-ecj-3.4-r2 (01 Aug 2008) + + 01 Aug 2008; Jean-Noël Rivasseau <elvanor@gentoo.org> +files/ecj-3.4, + +eclipse-ecj-3.4-r2.ebuild: + Bumping eclipse-ecj-3.4, moving from overlay to tree. *eclipse-ecj-3.3.0-r3 (21 Jul 2008) *eclipse-ecj-3.2.2-r1 (21 Jul 2008) diff --git a/dev-java/eclipse-ecj/eclipse-ecj-3.4-r2.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-3.4-r2.ebuild new file mode 100644 index 000000000000..0b6123a21e80 --- /dev/null +++ b/dev-java/eclipse-ecj/eclipse-ecj-3.4-r2.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-java/eclipse-ecj/eclipse-ecj-3.4-r2.ebuild,v 1.1 2008/08/01 09:49:11 elvanor Exp $ + +inherit java-pkg-2 + +MY_PN="ecj" +DMF="R-${PV}-200806172000" +S="${WORKDIR}" + +DESCRIPTION="Eclipse Compiler for Java" +HOMEPAGE="http://www.eclipse.org/" +SRC_URI="http://download.eclipse.org/eclipse/downloads/drops/${DMF}/${MY_PN}src-${PV}.zip" + +IUSE="gcj java6" + +LICENSE="EPL-1.0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~x86 ~x86-fbsd" +SLOT="3.4" + +CDEPEND=">=app-admin/eselect-ecj-0.3 + gcj? ( >=sys-devel/gcc-4.3.1 )" +DEPEND="${CDEPEND} + !gcj? ( !java6? ( >=virtual/jdk-1.4 ) + java6? ( >=virtual/jdk-1.6 ) )" +RDEPEND="${CDEPEND} + !gcj? ( !java6? ( >=virtual/jre-1.4 ) + java6? ( >=virtual/jre-1.6 ) )" + +pkg_setup() { + if use gcj ; then + if ! built_with_use sys-devel/gcc gcj ; then + eerror "Building with gcj requires that gcj was compiled as part of gcc."; + eerror "Please rebuild sys-devel/gcc with USE=\"gcj\""; + die "Rebuild sys-devel/gcc with gcj support" + fi + else + java-pkg-2_pkg_setup + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" || die + + # These have their own package. + rm -f org/eclipse/jdt/core/JDTCompilerAdapter.java || die + rm -fr org/eclipse/jdt/internal/antadapter || die + + if use gcj || ! use java6 ; then + rm -fr org/eclipse/jdt/internal/compiler/{apt,tool}/ || die + fi +} + +src_compile() { + local javac_opts javac java jar + + if use gcj ; then + local gccbin="$(gcc-config -B $(ls -1r /etc/env.d/gcc/${CHOST}-* | head -1) || die)" + local gcj="${gccbin}/gcj" + javac="${gcj} -C" + jar="${gccbin}/gjar" + java="${gccbin}/gij" + else + javac_opts="$(java-pkg_javac-args) -encoding ISO-8859-1" + javac="$(java-config -c)" + java="$(java-config -J)" + jar="$(java-config -j)" + fi + + mkdir -p bootstrap || die + cp -a org bootstrap || die + cd "${S}/bootstrap" || die + + einfo "bootstrapping ${MY_PN} with ${javac} ..." + ${javac} ${javac_opts} $(find org/ -name '*.java') || die + find org/ -name '*.class' -o -name '*.properties' -o -name '*.rsc' |\ + xargs ${jar} cf ${MY_PN}.jar + + cd "${S}" || die + einfo "building ${MY_PN} with bootstrapped ${MY_PN} ..." + ${java} -classpath bootstrap/${MY_PN}.jar \ + org.eclipse.jdt.internal.compiler.batch.Main \ + ${javac_opts} -nowarn org || die + find org/ -name '*.class' -o -name '*.properties' -o -name '*.rsc' |\ + xargs ${jar} cf ${MY_PN}.jar + + if use gcj ; then + einfo "Building native ${MY_PN} binary ..." + ${gcj} ${CFLAGS} -findirect-dispatch -Wl,-Bsymbolic -o native_${MY_PN}-${SLOT} \ + --main=org.eclipse.jdt.internal.compiler.batch.Main ${MY_PN}.jar || die + fi +} + +src_install() { + if use gcj ; then + dobin native_${MY_PN}-${SLOT} + newbin "${FILESDIR}/ecj-${SLOT}" ${MY_PN}-${SLOT} + + # Don't complain when doing dojar below. + JAVA_PKG_WANT_SOURCE=1.4 + JAVA_PKG_WANT_TARGET=1.4 + else + java-pkg_dolauncher ${MY_PN}-${SLOT} --main \ + org.eclipse.jdt.internal.compiler.batch.Main + fi + + java-pkg_dojar ${MY_PN}.jar +} + +pkg_postinst() { + einfo "To get the Compiler Adapter of ECJ for ANT..." + einfo " # emerge ant-eclipse-ecj" + echo + einfo "To select between slots of ECJ..." + einfo " # eselect ecj" + + eselect ecj update ecj-${SLOT} +} + +pkg_postrm() { + eselect ecj update +} diff --git a/dev-java/eclipse-ecj/files/ecj-3.4 b/dev-java/eclipse-ecj/files/ecj-3.4 new file mode 100755 index 000000000000..745391d325d4 --- /dev/null +++ b/dev-java/eclipse-ecj/files/ecj-3.4 @@ -0,0 +1,8 @@ +#! /bin/sh +# +# Copyright (C) 2008 Andrew John Hughes +# +# Licensed under the GNU General Public License, v2 + +LD_LIBRARY_PATH=$(gcc-config -L $(ls -1r /etc/env.d/gcc/*4.3.?|head -1)) /usr/bin/native_ecj-3.4 "${@}" + |