dev-java/annogen: Removes java-virtual/stax-api and fixes bug 561504.
authorPatrice Clement <monsieurp@gentoo.org>
Mon, 28 Sep 2015 15:43:18 +0000 (15:43 +0000)
committerPatrice Clement <monsieurp@gentoo.org>
Mon, 28 Sep 2015 16:10:39 +0000 (16:10 +0000)
Package-Manager: portage-2.2.18
Signed-off-by: Patrice Clement <monsieurp@gentoo.org>
dev-java/annogen/annogen-0.1.0-r1.ebuild [new file with mode: 0644]

diff --git a/dev-java/annogen/annogen-0.1.0-r1.ebuild b/dev-java/annogen/annogen-0.1.0-r1.ebuild
new file mode 100644 (file)
index 0000000..4c09b7b
--- /dev/null
@@ -0,0 +1,72 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source examples"
+
+inherit eutils java-pkg-2 java-ant-2
+
+DESCRIPTION="A tool which helps you work with JSR175 annotations"
+HOMEPAGE="https://github.com/codehaus/annogen"
+SRC_URI="http://dist.codehaus.org/${PN}/distributions/${P}.zip"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+CDEPEND="java-virtuals/jdk-with-com-sun:0
+       dev-java/ant-core:0
+       dev-java/qdox:1.6"
+
+RDEPEND=">=virtual/jdk-1.6
+               ${CDEPEND}"
+
+DEPEND=">=virtual/jre-1.6
+               app-arch/unzip
+               ${CDEPEND}"
+
+S="${WORKDIR}"
+
+# com.sun.mirror.declaration was removed from JDK 7 onwards.
+# These two files are just interfaces anyway.
+JAVA_RM_FILES=(
+       org/codehaus/annogen/view/MirrorAnnoViewer.java
+       org/codehaus/annogen/override/MirrorElementIdPool.java
+)
+
+src_unpack() {
+       default
+       unzip -o -q "${S}/${PN}-src-${PV}.zip" || die
+}
+
+java_prepare() {
+       find -name '*.jar' -exec rm -v {} + || die
+       mkdir "${S}"/classes || die
+}
+
+# Well. I don't like this way of doing things but it works.
+# I've tried to rewrite this ebuild using the java-ant-2 eclass.
+# It was an unfruitful try.
+src_compile() {
+       find org -name "*.java" > "${T}/src.list" || die
+
+       ejavac -d "${S}"/classes \
+               -classpath $(java-pkg_getjars qdox-1.6,ant-core):$(java-config --tools) \
+               "@${T}/src.list"
+
+       cd "${S}"/classes || die
+       jar -cf "${S}/${PN}.jar" * || die "failed to create jar"
+}
+
+src_install() {
+       java-pkg_dojar ${PN}.jar
+
+       # For if this is ever needed:
+       # java-pkg_register-ant-task
+
+       use doc && java-pkg_dojavadoc docs
+       use source && java-pkg_dosrc org
+       use examples && java-pkg_doexamples "examples"
+}