diff options
author | Ralph Sennhauser <sera@gentoo.org> | 2012-07-10 14:55:24 +0000 |
---|---|---|
committer | Ralph Sennhauser <sera@gentoo.org> | 2012-07-10 14:55:24 +0000 |
commit | c4af6d854acdd403ce535cbf93d355cae2ddeddf (patch) | |
tree | efcc88abf637cdf09f2c0ea6cbf3d7a4f0a61f24 /dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r4.ebuild | |
parent | Fix dependency version, on behalf of dilfridge. (diff) | |
download | gentoo-2-c4af6d854acdd403ce535cbf93d355cae2ddeddf.tar.gz gentoo-2-c4af6d854acdd403ce535cbf93d355cae2ddeddf.tar.bz2 gentoo-2-c4af6d854acdd403ce535cbf93d355cae2ddeddf.zip |
Add eselect-java as possible provider of eselect ecj.
Don't use xargs and other cleanup.
(Portage version: 2.1.11.5/cvs/Linux x86_64)
Diffstat (limited to 'dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r4.ebuild')
-rw-r--r-- | dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r4.ebuild | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r4.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r4.ebuild new file mode 100644 index 000000000000..bf5018e4d73f --- /dev/null +++ b/dev-java/eclipse-ecj/eclipse-ecj-3.3.0-r4.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2012 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-r4.ebuild,v 1.1 2012/07/10 14:55:24 sera Exp $ + +EAPI=4 + +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://archive.eclipse.org/eclipse/downloads/drops/${DMF/.0}/${MY_PN}src.zip" + +LICENSE="EPL-1.0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-solaris" +SLOT="3.3" +IUSE="" + +COMMON_DEPEND="|| ( app-admin/eselect-java app-admin/eselect-ecj )" +RDEPEND=">=virtual/jre-1.4 + ${COMMON_DEPEND}" +DEPEND="<virtual/jdk-1.7 + sys-apps/findutils + app-arch/unzip + ${COMMON_DEPEND}" + +java_prepare() { + # 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 -pPR 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 +} |