summaryrefslogtreecommitdiff
path: root/dev-java/qdox
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java/qdox')
-rw-r--r--dev-java/qdox/Manifest2
-rw-r--r--dev-java/qdox/files/jflex-1.6.1.patch27
-rw-r--r--dev-java/qdox/metadata.xml16
-rw-r--r--dev-java/qdox/qdox-1.12.1-r1.ebuild83
-rw-r--r--dev-java/qdox/qdox-1.6.3-r1.ebuild32
5 files changed, 160 insertions, 0 deletions
diff --git a/dev-java/qdox/Manifest b/dev-java/qdox/Manifest
new file mode 100644
index 000000000000..51e3d527bae0
--- /dev/null
+++ b/dev-java/qdox/Manifest
@@ -0,0 +1,2 @@
+DIST qdox-1.12.1.tar.gz 519833 BLAKE2B 83a732f1582b714cf943ede61bacc5216804c00cfbb642a479afb74739564f4fdbcd923dd7cb84a9626a97c5ad0a0f04895e0ae68252891cb25299e1fe1c9c72 SHA512 17ac933854ebd0560921805ea4339c151a7fd095bf8d50d5d71e656afda77ba30efac7926cfcc7543e4a8420b12d1eb75cdd305c50d1c28ad8cd6b0f4d95f5c5
+DIST qdox-1.6.3.jar 63731 BLAKE2B 77d117f0f76f531f9320b5eb3650db315aab838d5d79a9df8997649b498b375db3fb0c694ea8b5911512097dd2325554d7599bed51a978e38af6fa55600d7c24 SHA512 0b05620809e3830c7e12c289cd4765f96d845adabc1f09497993bd9f39852784f454eb4aff1deecb325608a5773e86fbb1f5863e0f25387805472b59b46cf965
diff --git a/dev-java/qdox/files/jflex-1.6.1.patch b/dev-java/qdox/files/jflex-1.6.1.patch
new file mode 100644
index 000000000000..4e506246f2a2
--- /dev/null
+++ b/dev-java/qdox/files/jflex-1.6.1.patch
@@ -0,0 +1,27 @@
+https://github.com/jflex-de/jflex/commit/f312d563777d907bbb12d1e2ac79835ba83ca53c
+
+--- a/src/grammar/skeleton.inner 2012-11-04 16:16:30.000000000 +0000
++++ b/src/grammar/skeleton.inner 2015-11-02 20:57:37.566057363 +0000
+@@ -407,15 +407,15 @@
+ zzMarkedPos = zzMarkedPosL;
+ --- char count update
+
+---- actions
+- default:
+- if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
+- zzAtEOF = true;
++ if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
++ zzAtEOF = true;
+ --- eofvalue
+- }
+- else {
++ }
++ else {
++--- actions
++ default:
+ --- no match
+- }
++ }
+ }
+ }
+ }
diff --git a/dev-java/qdox/metadata.xml b/dev-java/qdox/metadata.xml
new file mode 100644
index 000000000000..2e6f2aeb8135
--- /dev/null
+++ b/dev-java/qdox/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <longdescription>
+ High speed, small footprint parser for extracting class/interface/method
+ definitions from source files complete with JavaDoc @tags.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">codehaus/qdox</remote-id>
+ </upstream>
+ <origin>gentoo-staging</origin>
+</pkgmetadata>
diff --git a/dev-java/qdox/qdox-1.12.1-r1.ebuild b/dev-java/qdox/qdox-1.12.1-r1.ebuild
new file mode 100644
index 000000000000..7100ae1aba62
--- /dev/null
+++ b/dev-java/qdox/qdox-1.12.1-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source test"
+
+inherit eutils java-pkg-2 java-ant-2
+
+DESCRIPTION="Parser for extracting class/interface/method definitions"
+HOMEPAGE="https://github.com/codehaus/qdox"
+SRC_URI="https://github.com/codehaus/qdox/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="1.12"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos ~x86-macos"
+
+S="${WORKDIR}/${PN}-${PN}-${PV}"
+
+CDEPEND="dev-java/ant-core:0"
+
+DEPEND=">=virtual/jdk-1.4
+ app-arch/unzip:0
+ dev-java/byaccj:0
+ >=dev-java/jflex-1.6.1:0
+ dev-java/jmock:1.0
+ test? ( dev-java/junit:0 )
+ ${CDEPEND}"
+
+RDEPEND=">=virtual/jre-1.4
+ ${CDEPEND}"
+
+java_prepare() {
+ epatch "${FILESDIR}"/jflex-1.6.1.patch
+
+ if ! use test ; then
+ rm src/java/com/thoughtworks/qdox/tools/QDoxTester.java
+ rm -rf src/java/com/thoughtworks/qdox/junit
+ rm -rf src/test
+ fi
+}
+
+src_compile() {
+ jflex src/grammar/lexer.flex --skel src/grammar/skeleton.inner -d src/java/com/thoughtworks/qdox/parser/impl/ || die
+ byaccj -v -Jnorun -Jnoconstruct -Jclass=Parser -Jsemantic=Value -Jpackage=com.thoughtworks.qdox.parser.impl src/grammar/parser.y || die
+ mv Parser.java src/java/com/thoughtworks/qdox/parser/impl/ || die
+
+ # create jar
+ mkdir -p build/classes || die
+
+ local cp="$(java-pkg_getjars --build-only ant-core,jmock-1.0)"
+
+ if use test ; then
+ cp="${cp}:$(java-pkg_getjars --build-only junit)"
+ fi
+
+ ejavac -sourcepath . -d build/classes -classpath "${cp}" \
+ $(find . -name "*.java") || die "Cannot compile sources"
+
+ mkdir dist || die
+ cd build/classes || die
+ jar -cvf "${S}"/dist/${PN}.jar com || die "Cannot create JAR"
+
+ # generate javadoc
+ if use doc ; then
+ cd "${S}"
+ mkdir javadoc || die
+ javadoc -d javadoc -sourcepath src/java -subpackages com -classpath "${cp}"
+ fi
+}
+
+src_test() {
+ java -cp "${S}"/dist/${PN}.jar:$(java-pkg_getjars --build-only ant-core,junit,jmock-1.0) \
+ com.thoughtworks.qdox.tools.QDoxTester src || die "Tests failed!"
+}
+
+src_install() {
+ java-pkg_dojar dist/${PN}.jar
+ java-pkg_register-ant-task
+
+ use source && java-pkg_dosrc src/java/com
+ use doc && java-pkg_dojavadoc javadoc
+}
diff --git a/dev-java/qdox/qdox-1.6.3-r1.ebuild b/dev-java/qdox/qdox-1.6.3-r1.ebuild
new file mode 100644
index 000000000000..214262e8879c
--- /dev/null
+++ b/dev-java/qdox/qdox-1.6.3-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Parser for extracting class/interface/method definitions"
+HOMEPAGE="https://github.com/codehaus/qdox"
+SRC_URI="mirror://gentoo/${P}.jar"
+
+KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
+SLOT="1.6"
+LICENSE="Apache-2.0"
+
+DEPEND="
+ >=virtual/jdk-1.6"
+
+RDEPEND="
+ >=virtual/jre-1.6"
+
+S="${WORKDIR}"
+
+JAVA_SRC_DIR="com"
+
+src_prepare() {
+ default
+ rm -v com/thoughtworks/qdox/ant/AbstractQdoxTask.java \
+ com/thoughtworks/qdox/junit/APITestCase.java || die
+}