diff options
author | James Le Cuirot <chewi@gentoo.org> | 2015-12-05 23:24:18 +0000 |
---|---|---|
committer | James Le Cuirot <chewi@gentoo.org> | 2015-12-05 23:41:24 +0000 |
commit | 49d428bd9fecbd5138782e8e74edda2d4be43f45 (patch) | |
tree | b8d662f426cc9febad1b82395ecb5f6baaed5927 /dev-java/stringtemplate/stringtemplate-4.0.8.ebuild | |
parent | sys-apps/portage: Stable for HPPA PPC64 (bug #567540). (diff) | |
download | gentoo-49d428bd9fecbd5138782e8e74edda2d4be43f45.tar.gz gentoo-49d428bd9fecbd5138782e8e74edda2d4be43f45.tar.bz2 gentoo-49d428bd9fecbd5138782e8e74edda2d4be43f45.zip |
dev-java/stringtemplate: Version bump into new SLOT 4 (fixes #417895)
This is needed by newer versions of ANTLR.
Package-Manager: portage-2.2.26
Diffstat (limited to 'dev-java/stringtemplate/stringtemplate-4.0.8.ebuild')
-rw-r--r-- | dev-java/stringtemplate/stringtemplate-4.0.8.ebuild | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/dev-java/stringtemplate/stringtemplate-4.0.8.ebuild b/dev-java/stringtemplate/stringtemplate-4.0.8.ebuild new file mode 100644 index 000000000000..e36b97f11524 --- /dev/null +++ b/dev-java/stringtemplate/stringtemplate-4.0.8.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +ANTLR3="3.5.2" +JAVA_PKG_IUSE="doc source" + +inherit eutils java-pkg-2 java-pkg-simple + +DESCRIPTION="A Java template engine" +HOMEPAGE="http://www.stringtemplate.org/" +SRC_URI="https://github.com/antlr/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz + http://www.antlr3.org/download/antlr-${ANTLR3}-complete.jar" +LICENSE="BSD" +SLOT="4" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="test" + +RDEPEND=">=virtual/jre-1.6" + +DEPEND=">=virtual/jdk-1.6 + test? ( dev-java/junit:4 )" + +# StringTemplate has a cyclic dependency on ANTLR 3. The runtime classes +# are needed at build time and runtime and the tool is also needed at +# build time. To break out of this, we use a prebuilt copy of ANTLR 3 at +# build time and manually register a dependency on the package, which +# will be present at runtime thanks to this PDEPEND. No prebuilt +# software is actually installed onto the system. +PDEPEND=">=dev-java/antlr-${ANTLR3}:3.5" + +S="${WORKDIR}/${PN}4-${PV}" +JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/antlr-${ANTLR3}-complete.jar" +JAVA_SRC_DIR="src" + +src_unpack() { + unpack ${P}.tar.gz +} + +java_prepare() { + # These tests are broken but are probably fixed in current master. + epatch "${FILESDIR}/${PV}-test-fixes.patch" + + # Some of these tests requires a graphical display. + rm -v test/org/stringtemplate/v4/test/TestEarlyEvaluation.java || die +} + +src_compile() { + java -jar "${JAVA_GENTOO_CLASSPATH_EXTRA}" -lib ${JAVA_SRC_DIR}/org/stringtemplate/v4/compiler $(find ${JAVA_SRC_DIR} -name "*.g") || die + java-pkg-simple_src_compile +} + +src_install() { + java-pkg-simple_src_install + java-pkg_register-dependency antlr-3.5 antlr-runtime.jar + dodoc {CHANGES,contributors,README}.txt +} + +src_test() { + cd test || die + local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4):${JAVA_GENTOO_CLASSPATH_EXTRA}" + + local TESTS=$(find * -name "Test*.java") + TESTS="${TESTS//.java}" + TESTS="${TESTS//\//.}" + + ejavac -classpath "${CP}" $(find -name "*.java") + ejunit4 -classpath "${CP}" ${TESTS} +} |