Gentoo Archives: gentoo-commits

From: James Le Cuirot <chewi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/antlr/
Date: Sun, 06 Dec 2015 13:46:32
Message-Id: 1449409572.287c3d3d13374e24c70ea97e4c959dfba8005d02.chewi@gentoo
1 commit: 287c3d3d13374e24c70ea97e4c959dfba8005d02
2 Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
3 AuthorDate: Sun Dec 6 13:45:10 2015 +0000
4 Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
5 CommitDate: Sun Dec 6 13:46:12 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=287c3d3d
7
8 dev-java/antlr: Version bump to 4.5.1 (closes bug #545384)
9
10 This is a rewrite as the 4.4 ebuild bundled a lot of prebuilt stuff
11 and didn't include any tests. gunit support has been dropped because
12 no one uses it and it is not worth the hassle.
13
14 Nothing in the tree truly needs at present this as the existing
15 dependencies are bogus but no doubt something will before long.
16
17 Package-Manager: portage-2.2.26
18
19 dev-java/antlr/Manifest | 2 +
20 dev-java/antlr/antlr-4.5.1.ebuild | 91 +++++++++++++++++++++++++++++++++++++++
21 2 files changed, 93 insertions(+)
22
23 diff --git a/dev-java/antlr/Manifest b/dev-java/antlr/Manifest
24 index dd63ef1..2aa81ba 100644
25 --- a/dev-java/antlr/Manifest
26 +++ b/dev-java/antlr/Manifest
27 @@ -8,3 +8,5 @@ DIST antlr-3.5.2-complete-no-st3.jar 1862097 SHA256 46531814ba9739cdf20c6c1789c2
28 DIST antlr-3.5.2-complete.jar 2456317 SHA256 26ca659f47d77384f518cf2b6463892fcd4f0b0d4d8c0de2addf697e63e7326b SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1 WHIRLPOOL bdbbb081bf0aab83fa26a4a75f7f42487da688a5e3c765ea4cbd7b8c1bcb80b66e8b98bf95ee8bcd2acd60b4eacb6745f879cb899b672ea7fc4489d651a6f2e0
29 DIST antlr-3.5.2.tar.gz 6927126 SHA256 529baf7d11f06b773543e25271c1a6e1735d2f8061f4866d1ea5c99a5d71ee1f SHA512 e2a0520093fb2a77dcd9d44f26a9fdd612dceaffb398c53b2b8cd29f4630830647ede29e8dd55b434cb2c165b0fd1d77968ec6e6de0798f14d9cdfd9e6fccd99 WHIRLPOOL a3a2bf81cc91a332725a4ce15dcccf10df5395b27a521656b1f3e80fed10197edc132fa2a8b9a259b2ee603320492b4b1f664692a967fdfdbb574d919b9aa20e
30 DIST antlr-4.3-complete.jar 1340431 SHA256 da9afec193edcc4d8080a4897e77e1e2f6a0c0bc265fccb8c44ae10660f7a8f0 SHA512 669cc21ef72ec899509181b1ec77d918fce9dba3db165d9d7429e0058c58a9d716cbf274d7a54b6bd9143d95d9a902d82acfa5bcb5e6c805c4e9fdf90b83349e WHIRLPOOL f665a200850d294ee0f8c3127bb918a9c9625098a97a960afe08b3a3940ba2c2ad54099e34c82fab5058b668a721b3ed5621a85820d0aca0e16af2f81627c723
31 +DIST antlr-4.5.1-complete.jar 1478820 SHA256 9cff6c76bc5aafcbf51cac7f0974ae01e4f6119402e75436abbb97f8ab15c211 SHA512 1109087c44706694d75a7f88f6ce96e8653467d5721505db747e7e70a4f40a24469b1fb3ffcb327819bba1548b0025412e46a11a41e329b0ecf847cb1094238c WHIRLPOOL 54d8a59bbd935b84a76370645d57eb07ee9160297ad457106b7b773682f915c9632446fc818a9fb23ab37074c923b918c168a7eca98555513cfb4dfa2eb106e5
32 +DIST antlr-4.5.1.tar.gz 6158475 SHA256 faaaea662e7b4792fc2264bbefaf0e196e74f45ebe29ec638f978b008e6bb5ff SHA512 949306b0ee87a0c002664ee7ac0f32c43385c501b4e28f181417559ce09b07cc12a8441c3bb81f8a72feba3d4ccc693a3c03bcccad7fc81223cddb19e10468a9 WHIRLPOOL 00aeb41f8864d65d7693cf3ca4d36a10f094967fe96fefd67e4d64eb22d1502658ff2355125ab5e36f88a276d143247c0a2814cfcd990e08ec3fe6f6212ea42e
33
34 diff --git a/dev-java/antlr/antlr-4.5.1.ebuild b/dev-java/antlr/antlr-4.5.1.ebuild
35 new file mode 100644
36 index 0000000..17c21dc
37 --- /dev/null
38 +++ b/dev-java/antlr/antlr-4.5.1.ebuild
39 @@ -0,0 +1,91 @@
40 +# Copyright 1999-2015 Gentoo Foundation
41 +# Distributed under the terms of the GNU General Public License v2
42 +# $Id$
43 +
44 +EAPI="5"
45 +
46 +JAVA_PKG_IUSE="source"
47 +
48 +inherit java-pkg-2 java-pkg-simple
49 +
50 +DESCRIPTION="A parser generator for many languages"
51 +HOMEPAGE="http://www.antlr.org/"
52 +SRC_URI="https://github.com/${PN}/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
53 + http://www.antlr.org/download/${P}-complete.jar" # Prebuilt version needed.
54 +LICENSE="BSD"
55 +SLOT="4"
56 +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
57 +IUSE="doc test"
58 +
59 +CDEPEND="dev-java/antlr:3.5
60 + dev-java/stringtemplate:4
61 + dev-java/treelayout:0"
62 +
63 +RDEPEND="${CDEPEND}
64 + >=virtual/jre-1.6"
65 +
66 +DEPEND="${CDEPEND}
67 + >=virtual/jdk-1.6
68 + test? (
69 + dev-java/hamcrest-core:1.3
70 + dev-java/junit:4
71 + )"
72 +
73 +S="${WORKDIR}/${PN}4-${PV}"
74 +JAVA_GENTOO_CLASSPATH="stringtemplate-4,treelayout"
75 +
76 +src_unpack() {
77 + unpack ${P}.tar.gz
78 +}
79 +
80 +java_prepare() {
81 + java-pkg_clean
82 +}
83 +
84 +src_configure() {
85 + # TODO: Make java-config accept a jar@package query.
86 + JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar:$(java-pkg_getjar antlr-3.5 antlr-runtime.jar)"
87 +}
88 +
89 +src_compile() {
90 + cd "${S}/runtime/Java/src"
91 + local G PKG
92 +
93 + for G in $(find * -name "*.g4"); do
94 + PKG="${G%/*}"
95 + PKG="${PKG//\//.}"
96 + java -jar "${DISTDIR}/${P}-complete.jar" -package "${PKG}" "${G}" || die
97 + done
98 +
99 + JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
100 +
101 + cd "${S}/tool/src"
102 + antlr3.5 $(find -name "*.g") || die
103 + JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
104 + java-pkg_addres "${S}/${PN}-tool.jar" ../resources
105 +}
106 +
107 +src_install() {
108 + java-pkg_dojar ${PN}-{runtime,tool}.jar
109 + java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.v4.Tool
110 + use doc && java-pkg_dojavadoc runtime/Java/src/target/api
111 + use source && java-pkg_dosrc runtime/Java/src/org tool/src/org
112 +}
113 +
114 +junit_suite() {
115 + cd "${S}/$1-testsuite/test" || die
116 + local CP=".:${S}/runtime-testsuite/test:${S}/${PN}-tool.jar:$(java-pkg_getjars hamcrest-core-1.3,junit-4,${JAVA_GENTOO_CLASSPATH}):${JAVA_GENTOO_CLASSPATH_EXTRA}"
117 +
118 + local TESTS=$(find ${2:-*} -name "Test*.java")
119 + TESTS="${TESTS//.java}"
120 + TESTS="${TESTS//\//.}"
121 +
122 + ejavac -classpath "${CP}" $(find ${2:-*} -name "*.java")
123 + ejunit4 -classpath "${CP}" ${TESTS}
124 +}
125 +
126 +src_test() {
127 + # Only run Java runtime tests as we haven't built other languages.
128 + junit_suite runtime org/antlr/v4/test/runtime/java
129 + junit_suite tool
130 +}