summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-java/groovy
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-java/groovy')
-rw-r--r--dev-java/groovy/Manifest4
-rw-r--r--dev-java/groovy/files/groovy-1.8-build-pref-locking-fix.patch12
-rw-r--r--dev-java/groovy/groovy-1.6.8.ebuild120
-rw-r--r--dev-java/groovy/groovy-1.7.10.ebuild118
-rw-r--r--dev-java/groovy/groovy-1.7.5.ebuild118
-rw-r--r--dev-java/groovy/groovy-1.8.5-r1.ebuild124
-rw-r--r--dev-java/groovy/groovy-1.8.5.ebuild124
-rw-r--r--dev-java/groovy/metadata.xml24
8 files changed, 644 insertions, 0 deletions
diff --git a/dev-java/groovy/Manifest b/dev-java/groovy/Manifest
new file mode 100644
index 000000000000..cfd4ef898d5f
--- /dev/null
+++ b/dev-java/groovy/Manifest
@@ -0,0 +1,4 @@
+DIST groovy-src-1.6.8.zip 11998683 SHA256 caa83f91e154211b1fcf688fb16d97d63b552fbb9e2bb240ea82fb13f90b1c80 SHA512 9e914227f6e09041ccb8b918136ed2a0c264f96f1df3f033ab57cfbf3a9e6c62cfd365032040c5599d56e2f7b4c19ac9912effa3c4768c832d57ebaca6f05920 WHIRLPOOL 7cd6e33a768c833142d0387f4c47189aa7edb4f4a63dbd3b551815c7ea33174ecc428418293259902c8f8fdb55f473a05067827c7fb2e49cd3b5d6a65dc7312f
+DIST groovy-src-1.7.10.zip 12912772 SHA256 268c4504d50347e61fd83a4d04ebddbd4bf8139a4ba599de640d5537f3e4ad0c SHA512 d58cb0d135274e5e43730b517318d50d935a1b1883648318aa1c120d01181be7d3ac2796e3b68031b8d24e0fb6e9fa6fb8b1cbbfdee651a036e6000ec9be5ef1 WHIRLPOOL 992ac01f74f1fca05c4feb526d1f1a87425cd55fbc5cc39f18b999c53a54d6caf99a9353ff32dd080245ae4e7817810f9a8790a099d35566a1aa5938cfca99f3
+DIST groovy-src-1.7.5.zip 12875363 SHA256 9864b36d681ecc4e4a8f86c8b958203f8e2c01c150a3f992f5f63df552979067 SHA512 fa0f617d1894e6fd7b30216b69dc3060154a31d28a3831e7135b18377c5bc368d193d914d2b77a7daf28498562fb96c04794c874101b23dafb4421e3a1d59404 WHIRLPOOL 478346b89661f6b57cc5740df038e8bf3ced62a84a4de1dea3da94a9519cae6eba43cf583c4a81b2f459f6409a7387c2079098b12495b9f1b669260af4efaccb
+DIST groovy-src-1.8.5.zip 13131836 SHA256 82f1e45e5886278a4c86ed15dfd90a84b7e43848c72537a235835c7557e8f8cd SHA512 23cddae38b6d0b1b83dae7cf7ebc3fe68f7e8ddb33cd6fa421c0c3c76ca8bf5a8b3fe72cabe915901305f513a2b3269baf205a7a0dd6b1c6f751496d51e0557a WHIRLPOOL 9db6d1da9304e8000de9954faf91d26d76c15e628a25a09c1291afc2ca8b33bbe24d44d891599548df6931db632ae6cd801e83cb05fb6abf33f3282f463a4482
diff --git a/dev-java/groovy/files/groovy-1.8-build-pref-locking-fix.patch b/dev-java/groovy/files/groovy-1.8-build-pref-locking-fix.patch
new file mode 100644
index 000000000000..d857afffca1d
--- /dev/null
+++ b/dev-java/groovy/files/groovy-1.8-build-pref-locking-fix.patch
@@ -0,0 +1,12 @@
+diff --git a/build.xml b/build.xml
+index ffca39c..07d93b9 100644
+--- a/build.xml
++++ b/build.xml
+@@ -830,6 +830,7 @@ $Date: 2012/01/28 09:43:04 $
+ <path refid="toolsPath"/>
+ <pathelement path="${mainClassesDirectory}"/>
+ </classpath>
++ <jvmarg value="-Duser.home=${user.home}" />
+ <arg value="org.codehaus.groovy.runtime.DefaultGroovyMethods"/>
+ <arg value="org.codehaus.groovy.runtime.SqlGroovyMethods"/>
+ <arg value="org.codehaus.groovy.runtime.SwingGroovyMethods"/>
diff --git a/dev-java/groovy/groovy-1.6.8.ebuild b/dev-java/groovy/groovy-1.6.8.ebuild
new file mode 100644
index 000000000000..8c8445f9770b
--- /dev/null
+++ b/dev-java/groovy/groovy-1.6.8.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Groovy's build system is Ant based, but they use Maven for fetching the dependencies.
+# We just have to remove the fetch dependencies target, and then we can use Ant for this ebuild.
+
+# We currently do not build the embeddable jar (which is created using JarJar).
+# We could provide that via a USE flag.
+# We also don't use automatic build rewriting as there seems to be already some level of support
+# in the upstream build system
+
+# TODO: Install all 3 documentation packages. Currently only the Groovy GDK documentation is installed
+# as our java-pkg_dojavadoc function does not support multiple Javadoc installations.
+# There is also a bug (visible when loading groovyConsole for instance) where asm-1.5 is put on the cp,
+# this conflicts with the 2.2 version needed by Groovy.
+
+EAPI="2"
+WANT_ANT_TASKS="ant-antlr"
+JAVA_PKG_IUSE="doc source"
+
+inherit versionator java-pkg-2 java-ant-2
+
+MY_PV=${PV/_rc/-RC-}
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Groovy is a high-level dynamic language for the JVM"
+HOMEPAGE="http://groovy.codehaus.org/"
+
+SRC_URI="http://dist.groovy.codehaus.org/distributions/${PN}-src-${PV}.zip"
+LICENSE="codehaus-groovy"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="test"
+RESTRICT="test"
+
+CDEPEND="
+ dev-java/asm:2.2
+ dev-java/antlr:0
+ >=dev-java/xstream-1.3
+ >=dev-java/junit-3.8.2:0
+ >=dev-java/jline-0.9.91
+ >=dev-java/ant-core-1.7.0
+ >=dev-java/commons-cli-1.2
+ dev-java/servletapi:2.4
+ >=dev-java/bsf-2.4
+ java-virtuals/jmx"
+
+RDEPEND=">=virtual/jre-1.5
+ !<dev-java/groovy-1.6.3
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.5
+ dev-java/ant-ivy:2
+ doc? (
+ dev-java/qdox
+ )
+ test? (
+ dev-java/jmock
+ dev-java/xmlunit
+ dev-db/hsqldb
+ dev-java/commons-logging
+ dev-java/ant-junit
+ dev-java/ant-trax
+ )
+ ${CDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+JAVA_PKG_BSFIX=""
+
+src_prepare() {
+ rm -rf bootstrap
+ # security directory is needed for tests, but they currently don't pass
+ #rm -rf security
+ mkdir -p target/lib && cd target/lib
+ mkdir compile && mkdir runtime && mkdir tools
+ cd compile
+
+ java-pkg_jar-from commons-cli-1,ant-core,antlr,asm-2.2,xstream
+ java-pkg_jar-from jline,junit,servletapi-2.4,bsf-2.3
+ java-pkg_jar-from --virtual jmx
+ java-pkg_jar-from --build-only ant-ivy:2
+ use doc && java-pkg_jar-from --build-only qdox-1.6
+}
+
+src_compile() {
+ eant -DskipTests="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DskipFetch="true" -DskipEmbeddable="true"
+
+ use doc && ANT_OPTS="-Duser.home=${T}" eant -Dno.grammars="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" doc
+}
+
+src_test() {
+ cd "${S}/target/lib" && mkdir test && mkdir extras && cd compile
+
+ java-pkg_jar-from --build-only ant-junit,jmock-1.0,xmlunit-1,hsqldb,commons-logging,cglib-2.1
+
+ cd "${S}"
+ ANT_TASKS="ant-junit ant-antlr ant-trax" ANT_OPTS="-Duser.home=${T}" eant \
+ -DruntimeLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" test
+}
+
+src_install() {
+ java-pkg_newjar "target/dist/${PN}.jar"
+ use doc && java-pkg_dojavadoc "target/html/groovy-jdk/"
+
+ # FIXME: install those two later
+ #
+ #use doc && java-pkg_dojavadoc "target/html/api/"
+ #use doc && java-pkg_dojavadoc "target/html/gapi/"
+
+ use source && java-pkg_dosrc "src/main/groovy" "src/main/org"
+ java-pkg_dolauncher "groovyc" --main org.codehaus.groovy.tools.FileSystemCompiler
+ java-pkg_dolauncher "groovy" --main groovy.ui.GroovyMain
+ java-pkg_dolauncher "groovysh" --main groovy.ui.InteractiveShell
+ java-pkg_dolauncher "groovyConsole" --main groovy.ui.Console
+ java-pkg_dolauncher "grape" --main org.codehaus.groovy.tools.GrapeMain
+}
diff --git a/dev-java/groovy/groovy-1.7.10.ebuild b/dev-java/groovy/groovy-1.7.10.ebuild
new file mode 100644
index 000000000000..16410f54c0e8
--- /dev/null
+++ b/dev-java/groovy/groovy-1.7.10.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Groovy's build system is Ant based, but they use Maven for fetching the dependencies.
+# We just have to remove the fetch dependencies target, and then we can use Ant for this ebuild.
+
+# We currently do not build the embeddable jar (which is created using JarJar).
+# We could provide that via a USE flag.
+# We also don't use automatic build rewriting as there seems to be already some level of support
+# in the upstream build system
+
+# TODO: Install all 3 documentation packages. Currently only the Groovy GDK documentation is installed
+# as our java-pkg_dojavadoc function does not support multiple Javadoc installations.
+
+EAPI="3"
+WANT_ANT_TASKS="ant-antlr"
+JAVA_PKG_IUSE="doc source"
+
+inherit versionator java-pkg-2 java-ant-2
+
+MY_PV=${PV/_rc/-RC-}
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Groovy is a high-level dynamic language for the JVM"
+HOMEPAGE="http://groovy.codehaus.org/"
+
+SRC_URI="http://dist.groovy.codehaus.org/distributions/${PN}-src-${PV}.zip"
+LICENSE="codehaus-groovy"
+SLOT="0"
+KEYWORDS="~x86 ~x86-linux"
+IUSE="test"
+RESTRICT="test"
+
+CDEPEND=">=dev-java/asm-3.2
+ >=dev-java/ant-core-1.8.0
+ >=dev-java/junit-4.6
+ dev-java/antlr:0
+ dev-java/xstream
+ dev-java/jline
+ dev-java/commons-cli
+ dev-java/jansi
+ dev-java/servletapi:2.4
+ >=dev-java/bsf-2.4
+ java-virtuals/jmx"
+
+RDEPEND=">=virtual/jre-1.5
+ !<dev-java/groovy-1.6.3
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.5
+ dev-java/ant-ivy:2
+ doc? (
+ >=dev-java/qdox-1.12
+ )
+ test? (
+ dev-java/jmock
+ dev-java/xmlunit
+ dev-db/hsqldb
+ dev-java/commons-logging
+ dev-java/ant-junit
+ dev-java/ant-trax
+ )
+ ${CDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+JAVA_PKG_BSFIX=""
+
+src_prepare() {
+ rm -rf bootstrap
+ # security directory is needed for tests, but they currently don't pass
+ #rm -rf security
+ mkdir -p target/lib && cd target/lib
+ mkdir compile && mkdir runtime && mkdir tools
+ cd compile
+
+ java-pkg_jar-from commons-cli-1,ant-core,antlr,asm-3,xstream,jansi
+ java-pkg_jar-from jline,junit,servletapi-2.4,bsf-2.3
+ java-pkg_jar-from --virtual jmx
+ java-pkg_jar-from --build-only ant-ivy:2
+ use doc && java-pkg_jar-from --build-only qdox-1.12,ant-antlr
+}
+
+src_compile() {
+ eant -DskipTests="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DskipFetch="true" -DskipEmbeddable="true"
+
+ use doc && ANT_TASKS="ant-antlr" ANT_OPTS="-Duser.home=${T}" eant -Dno.grammars="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" doc
+}
+
+src_test() {
+ cd "${S}/target/lib" && mkdir test && mkdir extras && cd compile
+
+ java-pkg_jar-from --build-only ant-junit,jmock-1.0,xmlunit-1,hsqldb,commons-logging,cglib-2.1
+
+ cd "${S}"
+ ANT_TASKS="ant-junit ant-antlr ant-trax" ANT_OPTS="-Duser.home=${T}" eant \
+ -DruntimeLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" test
+}
+
+src_install() {
+ java-pkg_newjar "target/dist/${PN}.jar"
+ use doc && java-pkg_dojavadoc "target/html/groovy-jdk/"
+
+ # FIXME: install those two later
+ #
+ #use doc && java-pkg_dojavadoc "target/html/api/"
+ #use doc && java-pkg_dojavadoc "target/html/gapi/"
+
+ use source && java-pkg_dosrc "src/main/groovy" "src/main/org"
+ java-pkg_dolauncher "groovyc" --main org.codehaus.groovy.tools.FileSystemCompiler
+ java-pkg_dolauncher "groovy" --main groovy.ui.GroovyMain
+ java-pkg_dolauncher "groovysh" --main groovy.ui.InteractiveShell
+ java-pkg_dolauncher "groovyConsole" --main groovy.ui.Console
+ java-pkg_dolauncher "grape" --main org.codehaus.groovy.tools.GrapeMain
+}
diff --git a/dev-java/groovy/groovy-1.7.5.ebuild b/dev-java/groovy/groovy-1.7.5.ebuild
new file mode 100644
index 000000000000..4588cb70d709
--- /dev/null
+++ b/dev-java/groovy/groovy-1.7.5.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Groovy's build system is Ant based, but they use Maven for fetching the dependencies.
+# We just have to remove the fetch dependencies target, and then we can use Ant for this ebuild.
+
+# We currently do not build the embeddable jar (which is created using JarJar).
+# We could provide that via a USE flag.
+# We also don't use automatic build rewriting as there seems to be already some level of support
+# in the upstream build system
+
+# TODO: Install all 3 documentation packages. Currently only the Groovy GDK documentation is installed
+# as our java-pkg_dojavadoc function does not support multiple Javadoc installations.
+
+EAPI="3"
+WANT_ANT_TASKS="ant-antlr"
+JAVA_PKG_IUSE="doc source"
+
+inherit versionator java-pkg-2 java-ant-2
+
+MY_PV=${PV/_rc/-RC-}
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Groovy is a high-level dynamic language for the JVM"
+HOMEPAGE="http://groovy.codehaus.org/"
+
+SRC_URI="http://dist.groovy.codehaus.org/distributions/${PN}-src-${PV}.zip"
+LICENSE="codehaus-groovy"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="test"
+RESTRICT="test"
+
+CDEPEND=">=dev-java/asm-3.2
+ >=dev-java/ant-core-1.8.0
+ >=dev-java/junit-4.6
+ dev-java/antlr:0
+ dev-java/xstream
+ dev-java/jline
+ dev-java/commons-cli
+ dev-java/jansi
+ dev-java/servletapi:2.4
+ >=dev-java/bsf-2.4
+ java-virtuals/jmx"
+
+RDEPEND=">=virtual/jre-1.5
+ !<dev-java/groovy-1.6.3
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.5
+ dev-java/ant-ivy:2
+ doc? (
+ dev-java/qdox
+ )
+ test? (
+ dev-java/jmock
+ dev-java/xmlunit
+ dev-db/hsqldb
+ dev-java/commons-logging
+ dev-java/ant-junit
+ dev-java/ant-trax
+ )
+ ${CDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+JAVA_PKG_BSFIX=""
+
+src_prepare() {
+ rm -rf bootstrap
+ # security directory is needed for tests, but they currently don't pass
+ #rm -rf security
+ mkdir -p target/lib && cd target/lib
+ mkdir compile && mkdir runtime && mkdir tools
+ cd compile
+
+ java-pkg_jar-from commons-cli-1,ant-core,antlr,asm-3,xstream,jansi
+ java-pkg_jar-from jline,junit,servletapi-2.4,bsf-2.3
+ java-pkg_jar-from --virtual jmx
+ java-pkg_jar-from --build-only ant-ivy:2
+ use doc && java-pkg_jar-from --build-only qdox-1.6,ant-antlr
+}
+
+src_compile() {
+ eant -DskipTests="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DskipFetch="true" -DskipEmbeddable="true"
+
+ use doc && ANT_TASKS="ant-antlr" ANT_OPTS="-Duser.home=${T}" eant -Dno.grammars="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" doc
+}
+
+src_test() {
+ cd "${S}/target/lib" && mkdir test && mkdir extras && cd compile
+
+ java-pkg_jar-from --build-only ant-junit,jmock-1.0,xmlunit-1,hsqldb,commons-logging,cglib-2.1
+
+ cd "${S}"
+ ANT_TASKS="ant-junit ant-antlr ant-trax" ANT_OPTS="-Duser.home=${T}" eant \
+ -DruntimeLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" test
+}
+
+src_install() {
+ java-pkg_newjar "target/dist/${PN}.jar"
+ use doc && java-pkg_dojavadoc "target/html/groovy-jdk/"
+
+ # FIXME: install those two later
+ #
+ #use doc && java-pkg_dojavadoc "target/html/api/"
+ #use doc && java-pkg_dojavadoc "target/html/gapi/"
+
+ use source && java-pkg_dosrc "src/main/groovy" "src/main/org"
+ java-pkg_dolauncher "groovyc" --main org.codehaus.groovy.tools.FileSystemCompiler
+ java-pkg_dolauncher "groovy" --main groovy.ui.GroovyMain
+ java-pkg_dolauncher "groovysh" --main groovy.ui.InteractiveShell
+ java-pkg_dolauncher "groovyConsole" --main groovy.ui.Console
+ java-pkg_dolauncher "grape" --main org.codehaus.groovy.tools.GrapeMain
+}
diff --git a/dev-java/groovy/groovy-1.8.5-r1.ebuild b/dev-java/groovy/groovy-1.8.5-r1.ebuild
new file mode 100644
index 000000000000..d1ea5224951e
--- /dev/null
+++ b/dev-java/groovy/groovy-1.8.5-r1.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Groovy's build system is Ant based, but they use Maven for fetching the dependencies.
+# We just have to remove the fetch dependencies target, and then we can use Ant for this ebuild.
+
+# We currently do not build the embeddable jar (which is created using JarJar).
+# We could provide that via a USE flag.
+# We also don't use automatic build rewriting as there seems to be already some level of support
+# in the upstream build system
+
+# TODO: Install all 3 documentation packages. Currently only the Groovy GDK documentation is installed
+# as our java-pkg_dojavadoc function does not support multiple Javadoc installations.
+
+EAPI="3"
+WANT_ANT_TASKS="ant-antlr"
+JAVA_PKG_IUSE="doc source"
+
+inherit base versionator java-pkg-2 java-ant-2
+
+MY_PV=${PV/_rc/-RC-}
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Groovy is a high-level dynamic language for the JVM"
+HOMEPAGE="http://groovy.codehaus.org/"
+
+SRC_URI="http://dist.groovy.codehaus.org/distributions/${PN}-src-${PV}.zip"
+LICENSE="codehaus-groovy"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="test"
+RESTRICT="test"
+
+CDEPEND=">=dev-java/asm-3.2:3
+ >=dev-java/ant-core-1.8.0:0
+ >=dev-java/junit-4.6:4
+ dev-java/antlr:0
+ dev-java/xstream:0
+ dev-java/jline:0
+ dev-java/commons-cli:1
+ dev-java/jansi:0
+ java-virtuals/servlet-api:2.4
+ >=dev-java/bsf-2.4:2.3
+ java-virtuals/jmx:0"
+
+RDEPEND=">=virtual/jre-1.5
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.5
+ dev-java/ant-ivy:2
+ doc? (
+ dev-java/qdox:1.12
+ dev-java/commons-logging:0
+ )
+ test? (
+ dev-java/jmock:1.0
+ dev-java/xmlunit:1
+ dev-db/hsqldb:0
+ dev-java/commons-logging:0
+ dev-java/ant-junit:0
+ dev-java/ant-trax:0
+ )
+ ${CDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8-build-pref-locking-fix.patch" )
+
+JAVA_PKG_BSFIX=""
+
+src_prepare() {
+ base_src_prepare
+ sed -i -e 's/fullQualifiedName/fullyQualifiedName/g' \
+ src/tools/org/codehaus/groovy/tools/DocGenerator.groovy
+
+ rm -rf bootstrap
+ # security directory is needed for tests, but they currently don't pass
+ #rm -rf security
+ mkdir -p target/lib && cd target/lib
+ mkdir compile && mkdir runtime && mkdir tools
+ cd compile
+
+ java-pkg_jar-from commons-cli-1,ant-core,antlr,asm-3,xstream,jansi
+ java-pkg_jar-from jline,junit,servlet-api-2.4,bsf-2.3
+ java-pkg_jar-from --virtual jmx
+ java-pkg_jar-from --build-only ant-ivy:2
+ use doc && java-pkg_jar-from --build-only qdox-1.12,ant-antlr,commons-logging
+}
+
+src_compile() {
+ eant -DskipTests="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DskipFetch="true" -DskipEmbeddable="true"
+
+ use doc && ANT_TASKS="ant-antlr" ANT_OPTS="-Duser.home=${T}" eant -Dno.grammars="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" doc
+}
+
+src_test() {
+ cd "${S}/target/lib" && mkdir test && mkdir extras && cd compile
+
+ java-pkg_jar-from --build-only ant-junit,jmock-1.0,xmlunit-1,hsqldb,commons-logging,cglib-2.1
+
+ cd "${S}"
+ ANT_TASKS="ant-junit ant-antlr ant-trax" ANT_OPTS="-Duser.home=${T}" eant \
+ -DruntimeLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" test
+}
+
+src_install() {
+ java-pkg_newjar "target/dist/${PN}.jar"
+ use doc && java-pkg_dojavadoc "target/html/groovy-jdk/"
+
+ # FIXME: install those two later
+ #
+ #use doc && java-pkg_dojavadoc "target/html/api/"
+ #use doc && java-pkg_dojavadoc "target/html/gapi/"
+
+ use source && java-pkg_dosrc "src/main/groovy" "src/main/org"
+ java-pkg_dolauncher "groovyc" --main org.codehaus.groovy.tools.FileSystemCompiler
+ java-pkg_dolauncher "groovy" --main groovy.ui.GroovyMain
+ java-pkg_dolauncher "groovysh" --main groovy.ui.InteractiveShell
+ java-pkg_dolauncher "groovyConsole" --main groovy.ui.Console
+ java-pkg_dolauncher "grape" --main org.codehaus.groovy.tools.GrapeMain
+}
diff --git a/dev-java/groovy/groovy-1.8.5.ebuild b/dev-java/groovy/groovy-1.8.5.ebuild
new file mode 100644
index 000000000000..3695b01a3680
--- /dev/null
+++ b/dev-java/groovy/groovy-1.8.5.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Groovy's build system is Ant based, but they use Maven for fetching the dependencies.
+# We just have to remove the fetch dependencies target, and then we can use Ant for this ebuild.
+
+# We currently do not build the embeddable jar (which is created using JarJar).
+# We could provide that via a USE flag.
+# We also don't use automatic build rewriting as there seems to be already some level of support
+# in the upstream build system
+
+# TODO: Install all 3 documentation packages. Currently only the Groovy GDK documentation is installed
+# as our java-pkg_dojavadoc function does not support multiple Javadoc installations.
+
+EAPI="3"
+WANT_ANT_TASKS="ant-antlr"
+JAVA_PKG_IUSE="doc source"
+
+inherit base versionator java-pkg-2 java-ant-2
+
+MY_PV=${PV/_rc/-RC-}
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Groovy is a high-level dynamic language for the JVM"
+HOMEPAGE="http://groovy.codehaus.org/"
+
+SRC_URI="http://dist.groovy.codehaus.org/distributions/${PN}-src-${PV}.zip"
+LICENSE="codehaus-groovy"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="test"
+RESTRICT="test"
+
+CDEPEND=">=dev-java/asm-3.2
+ >=dev-java/ant-core-1.8.0
+ >=dev-java/junit-4.6
+ dev-java/antlr:0
+ dev-java/xstream
+ dev-java/jline
+ dev-java/commons-cli
+ dev-java/jansi
+ java-virtuals/servlet-api:2.4
+ >=dev-java/bsf-2.4
+ java-virtuals/jmx"
+
+RDEPEND=">=virtual/jre-1.5
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.5
+ dev-java/ant-ivy:2
+ doc? (
+ dev-java/qdox:1.12
+ dev-java/commons-logging
+ )
+ test? (
+ dev-java/jmock
+ dev-java/xmlunit
+ dev-db/hsqldb
+ dev-java/commons-logging
+ dev-java/ant-junit
+ dev-java/ant-trax
+ )
+ ${CDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=( "${FILESDIR}/${PN}-1.8-build-pref-locking-fix.patch" )
+
+JAVA_PKG_BSFIX=""
+
+src_prepare() {
+ base_src_prepare
+ sed -i -e 's/fullQualifiedName/fullyQualifiedName/g' \
+ src/tools/org/codehaus/groovy/tools/DocGenerator.groovy
+
+ rm -rf bootstrap
+ # security directory is needed for tests, but they currently don't pass
+ #rm -rf security
+ mkdir -p target/lib && cd target/lib
+ mkdir compile && mkdir runtime && mkdir tools
+ cd compile
+
+ java-pkg_jar-from commons-cli-1,ant-core,antlr,asm-3,xstream,jansi
+ java-pkg_jar-from jline,junit,servlet-api-2.4,bsf-2.3
+ java-pkg_jar-from --virtual jmx
+ java-pkg_jar-from --build-only ant-ivy:2
+ use doc && java-pkg_jar-from --build-only qdox-1.12,ant-antlr,commons-logging
+}
+
+src_compile() {
+ eant -DskipTests="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DskipFetch="true" -DskipEmbeddable="true"
+
+ use doc && ANT_TASKS="ant-antlr" ANT_OPTS="-Duser.home=${T}" eant -Dno.grammars="true" -DruntimeLibDirectory="target/lib/compile" \
+ -DtoolsLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" doc
+}
+
+src_test() {
+ cd "${S}/target/lib" && mkdir test && mkdir extras && cd compile
+
+ java-pkg_jar-from --build-only ant-junit,jmock-1.0,xmlunit-1,hsqldb,commons-logging,cglib-2.1
+
+ cd "${S}"
+ ANT_TASKS="ant-junit ant-antlr ant-trax" ANT_OPTS="-Duser.home=${T}" eant \
+ -DruntimeLibDirectory="target/lib/compile" -DtestLibDirectory="target/lib/compile" -DskipFetch="true" test
+}
+
+src_install() {
+ java-pkg_newjar "target/dist/${PN}.jar"
+ use doc && java-pkg_dojavadoc "target/html/groovy-jdk/"
+
+ # FIXME: install those two later
+ #
+ #use doc && java-pkg_dojavadoc "target/html/api/"
+ #use doc && java-pkg_dojavadoc "target/html/gapi/"
+
+ use source && java-pkg_dosrc "src/main/groovy" "src/main/org"
+ java-pkg_dolauncher "groovyc" --main org.codehaus.groovy.tools.FileSystemCompiler
+ java-pkg_dolauncher "groovy" --main groovy.ui.GroovyMain
+ java-pkg_dolauncher "groovysh" --main groovy.ui.InteractiveShell
+ java-pkg_dolauncher "groovyConsole" --main groovy.ui.Console
+ java-pkg_dolauncher "grape" --main org.codehaus.groovy.tools.GrapeMain
+}
diff --git a/dev-java/groovy/metadata.xml b/dev-java/groovy/metadata.xml
new file mode 100644
index 000000000000..7b8ff2d0f24f
--- /dev/null
+++ b/dev-java/groovy/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>java</herd>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>the.dmol@gmail.com</email>
+ <name>Ivan Baidakou</name>
+ </maintainer>
+ <longdescription>
+Groovy is a new agile dynamic language for the JVM combining lots of great
+features from languages like Python, Ruby and Smalltalk and making them
+available to the Java developers using a Java-like syntax.
+
+Groovy is designed to help you get things done on the Java platform in a
+quicker, more concise and fun way - bringing the power of Python and Ruby inside
+the Java platform.
+
+Groovy can be used as an alternative compiler to javac to generate standard Java
+bytecode to be used by any Java project or it can be used dynamically as an
+alternative language such as for scripting Java objects, templating or writing
+unit test cases.
+ </longdescription>
+</pkgmetadata>