diff options
author | Petteri Räty <betelgeuse@gentoo.org> | 2008-07-21 22:07:25 +0000 |
---|---|---|
committer | Petteri Räty <betelgeuse@gentoo.org> | 2008-07-21 22:07:25 +0000 |
commit | 9a62b8ff8498c28f031e4ac41a1bc43fe85f3dec (patch) | |
tree | 7df25b75a9367d24e20c29d631a9c70787e9e768 /dev-java/eclipse-ecj | |
parent | Initial addition. Thanks to Chewi <chewi@aura-online.co.uk> for the work. (diff) | |
download | gentoo-2-9a62b8ff8498c28f031e4ac41a1bc43fe85f3dec.tar.gz gentoo-2-9a62b8ff8498c28f031e4ac41a1bc43fe85f3dec.tar.bz2 gentoo-2-9a62b8ff8498c28f031e4ac41a1bc43fe85f3dec.zip |
Add app-admin/eselect-ecj support.
(Portage version: 2.2_rc1/cvs/Linux 2.6.26-gentoo i686)
Diffstat (limited to 'dev-java/eclipse-ecj')
-rw-r--r-- | dev-java/eclipse-ecj/ChangeLog | 9 | ||||
-rw-r--r-- | dev-java/eclipse-ecj/eclipse-ecj-3.2.2-r1.ebuild | 65 | ||||
-rw-r--r-- | dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r3.ebuild | 86 |
3 files changed, 159 insertions, 1 deletions
diff --git a/dev-java/eclipse-ecj/ChangeLog b/dev-java/eclipse-ecj/ChangeLog index 67061ddb8299..9299ceaff458 100644 --- a/dev-java/eclipse-ecj/ChangeLog +++ b/dev-java/eclipse-ecj/ChangeLog @@ -1,6 +1,13 @@ # 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.42 2008/07/21 21:53:11 betelgeuse Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/eclipse-ecj/ChangeLog,v 1.43 2008/07/21 22:07:25 betelgeuse Exp $ + +*eclipse-ecj-3.3.0-r3 (21 Jul 2008) +*eclipse-ecj-3.2.2-r1 (21 Jul 2008) + + 21 Jul 2008; Petteri Räty <betelgeuse@gentoo.org> + +eclipse-ecj-3.2.2-r1.ebuild, +eclipse-ecj-3.3.0-r3.ebuild: + Add app-admin/eselect-ecj support. 21 Jul 2008; Petteri Räty <betelgeuse@gentoo.org> -eclipse-ecj-3.2.ebuild, -eclipse-ecj-3.3.0-r1.ebuild: diff --git a/dev-java/eclipse-ecj/eclipse-ecj-3.2.2-r1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-3.2.2-r1.ebuild new file mode 100644 index 000000000000..dfddad74db57 --- /dev/null +++ b/dev-java/eclipse-ecj/eclipse-ecj-3.2.2-r1.ebuild @@ -0,0 +1,65 @@ +# 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.2.2-r1.ebuild,v 1.1 2008/07/21 22:07:25 betelgeuse Exp $ + +inherit eutils java-pkg-2 + +DESCRIPTION="Eclipse Compiler for Java" +HOMEPAGE="http://www.eclipse.org/" +SRC_URI="mirror://gentoo/${P}.tar.bz2" +LICENSE="EPL-1.0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~x86 ~x86-fbsd" +SLOT="3.2" +IUSE="doc" + +RDEPEND=">=virtual/jre-1.4 + app-admin/eselect-ecj" +DEPEND="${RDEPEND} + >=virtual/jdk-1.4 + dev-java/ant-core" + +src_unpack() { + unpack ${A} + cd "${S}" + + # remove unzip, add javadoc target, put final ecj.jar and javadocs in dist/ and not ../ + epatch "${FILESDIR}/${PN}-${SLOT}-build-gentoo.patch" +} + +src_compile() { + # we don't use eant because the compile*.xml files specifically set -source -target and used compiler + + # bootstrap build with JDK's javac + ant -f compilejdtcorewithjavac.xml || die "Failed to bootstrap build with javac" + + local ant_flags="" + + # for some weird reason, with kaffe it fails the build.xml's check for ecj.jar present (which it is) + # which if successful sets this property, then checks if it was set and fails if not + java-pkg_current-vm-matches kaffe && ant_flags="-Dbuild.compiler=org.eclipse.jdt.core.JDTCompilerAdapter" + + # recompile with ecj.jar made in first step, to get dist/ecj.jar + ant ${ant_flags} -lib ecj.jar -f compilejdtcore.xml compile $(use_doc) || die "Failed to rebuild with ecj" +} + +src_install() { + java-pkg_dojar dist/ecj.jar + + java-pkg_dolauncher ecj-${SLOT} --main org.eclipse.jdt.internal.compiler.batch.Main + + use doc && java-pkg_dojavadoc dist/doc/api + + insinto /usr/share/java-config-2/compiler + newins "${FILESDIR}"/compiler-settings-${SLOT} ecj-${SLOT} +} + +pkg_postinst() { + 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/eclipse-ecj-3.3.0-r3.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r3.ebuild new file mode 100644 index 000000000000..6eb097273a66 --- /dev/null +++ b/dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r3.ebuild @@ -0,0 +1,86 @@ +# 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.3.0-r3.ebuild,v 1.1 2008/07/21 22:07:25 betelgeuse Exp $ + +inherit eutils java-pkg-2 + +MY_PN="ecj" +DMF="R-${PV}-200706251500" +S="${WORKDIR}" + +DESCRIPTION="Eclipse Compiler for Java" +HOMEPAGE="http://www.eclipse.org/" +SRC_URI="http://download.eclipse.org/eclipse/downloads/drops/${DMF/.0}/${MY_PN}src.zip" + +LICENSE="EPL-1.0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~x86 ~x86-fbsd" +SLOT="3.3" +IUSE="" + +COMMON_DEPEND="app-admin/eselect-ecj" +RDEPEND=">=virtual/jre-1.4 + ${COMMON_DEPEND}" +DEPEND=">=virtual/jdk-1.4 + sys-apps/findutils + app-arch/unzip + ${COMMON_DEPEND}" + +src_unpack() { + unpack ${A} + cd "${S}" + + # own package + rm -f org/eclipse/jdt/core/JDTCompilerAdapter.java + rm -fr org/eclipse/jdt/internal/antadapter + + # what the heck...?! java6 + rm -fr org/eclipse/jdt/internal/compiler/tool/ \ + org/eclipse/jdt/internal/compiler/apt/ + + # gcj feature + epatch "${FILESDIR}"/${P}-gcj.patch +} + +src_compile() { + local javac="javac" java="java" jar="jar" + + mkdir -p bootstrap + cp -a org bootstrap + + einfo "bootstrapping ${MY_PN} with javac" + + cd "${S}"/bootstrap + ${javac} $(find org/ -name '*.java') || die "${MY_PN} bootstrap failed!" + + find org/ -name '*.class' -o -name '*.properties' -o -name '*.rsc' | \ + xargs ${jar} cf ${MY_PN}.jar + + einfo "build ${MY_PN} with bootstrapped ${MY_PN}" + + cd "${S}" + ${java} -classpath bootstrap/${MY_PN}.jar \ + org.eclipse.jdt.internal.compiler.batch.Main -encoding ISO-8859-1 org \ + || die "${MY_PN} build failed!" + find org/ -name '*.class' -o -name '*.properties' -o -name '*.rsc' | \ + xargs ${jar} cf ${MY_PN}.jar +} + +src_install() { + java-pkg_dojar ${MY_PN}.jar + java-pkg_dolauncher ${MY_PN}-${SLOT} --main \ + org.eclipse.jdt.internal.compiler.batch.Main +} + +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 +} |