Gentoo Archives: gentoo-commits

From: "Miroslav Šulc" <fordfrog@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/stringtemplate/
Date: Tue, 05 Apr 2022 04:59:28
Message-Id: 1649134757.d381b561978c8acc70f947d76fbcfcc1dd263db0.fordfrog@gentoo
1 commit: d381b561978c8acc70f947d76fbcfcc1dd263db0
2 Author: Yuan Liao <liaoyuan <AT> gmail <DOT> com>
3 AuthorDate: Tue Apr 5 04:45:43 2022 +0000
4 Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
5 CommitDate: Tue Apr 5 04:59:17 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d381b561
7
8 dev-java/stringtemplate: Add 4.3.2
9
10 Signed-off-by: Yuan Liao <liaoyuan <AT> gmail.com>
11 Closes: https://github.com/gentoo/gentoo/pull/24914
12 Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>
13
14 dev-java/stringtemplate/Manifest | 2 +
15 .../stringtemplate/stringtemplate-4.3.2.ebuild | 103 +++++++++++++++++++++
16 2 files changed, 105 insertions(+)
17
18 diff --git a/dev-java/stringtemplate/Manifest b/dev-java/stringtemplate/Manifest
19 index a8ee4deb0a40..b44912b51312 100644
20 --- a/dev-java/stringtemplate/Manifest
21 +++ b/dev-java/stringtemplate/Manifest
22 @@ -1,3 +1,5 @@
23 DIST ST4-4.3.1-sources.jar 198002 BLAKE2B d1bd78dac71800e342291920ba78ab39c9a43b1f3866e2afcb0e1d61d439592663a625efe2a5a215c6032469e7ebeeebb31267e1681536ca0cc524cc58781a3d SHA512 bd06940b629ab0378afd6342b6f5beef002023387843cefd866ebe6ae8e94996edc3f21a0c70ed3570d3fcb7194bf354d0e42d4eff32522b3c01c51369867be0
24 +DIST ST4-4.3.2-sources.jar 198754 BLAKE2B 667953642ed2721d1a7c7e94d90a1f8690cfa9c31c391e9b5089f04c64728dac75edc9cd0e529607cad4c1b07abaf45719c2cbab9e962a5feef657b59c3baccc SHA512 7de339d34adf6b9207a23e8936092ea4fde78bf1faa63cee869673e91ba73d0fcbaa555602d0905c7347e894985613c63ff4ce04825decc34c896da5a687d42f
25 DIST stringtemplate-3.2.1.tar.gz 107877 BLAKE2B e099aaef047de12706ca4c771f28742dc48ec14a577b2384b32850e304b29284436b3c850846136cbd37481ff48cfb2fd5935d2de3aafa5c817ae24f62579435 SHA512 76203182302d42a0f79de7e8a22f44c59ddc5604761034e420b6973894e0ca1e6154cbcb322ec6f9a064ee89cc5f6478b775a716692c80c7f0c77566aa8a0e25
26 DIST stringtemplate-4.3.1.tar.gz 432541 BLAKE2B c5b4124524e36a7104908dabf9ed258d2397095d8dc86eef401d0da1ac245629e88a1b2d0e35417ed7735ad6b8495fd2cc82970601a16ee856f5456fdc24b48f SHA512 afe62ca1cbc7572d05859c6fdaa1eb3221045da582bce5d88c328acae39128c904396f8ba1e10643a2757123297ba1924e046841cc8a667fbc724bdeca95680c
27 +DIST stringtemplate-4.3.2.tar.gz 437013 BLAKE2B 0fb0fd62314a1fa5045285966b28aaf8f18579261722c0383e4ec8b3198aff59fd0e9760dcd43d8ecddf795ce3b2a882f3f339ec56d117a4b5b22e9c2718d679 SHA512 d6150f86ce458b5c74d533016bc3168fad969fc1d814d01c5ad3be2f866f7aa531357a903565f31afa3ba62423acc760b7762865e0ee5dd3af4ea546f6be25e1
28
29 diff --git a/dev-java/stringtemplate/stringtemplate-4.3.2.ebuild b/dev-java/stringtemplate/stringtemplate-4.3.2.ebuild
30 new file mode 100644
31 index 000000000000..1d0130c2b54f
32 --- /dev/null
33 +++ b/dev-java/stringtemplate/stringtemplate-4.3.2.ebuild
34 @@ -0,0 +1,103 @@
35 +# Copyright 1999-2022 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=8
39 +
40 +JAVA_PKG_IUSE="doc source test"
41 +MAVEN_ID="org.antlr:ST4:4.3.2"
42 +JAVA_TESTING_FRAMEWORKS="junit-4"
43 +
44 +inherit java-pkg-2 java-pkg-simple
45 +
46 +DESCRIPTION="A Java template engine"
47 +HOMEPAGE="https://www.stringtemplate.org/"
48 +# Maven Central sources JAR for *.java sources pre-generated from *.g files;
49 +# the source generation requires antlr-tool-3.5, which depends on this package.
50 +# Tarball for the test suite and DOCS files
51 +SRC_URI="
52 + https://repo1.maven.org/maven2/org/antlr/ST4/${PV}/ST4-${PV}-sources.jar
53 + https://github.com/antlr/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
54 +"
55 +
56 +LICENSE="BSD"
57 +SLOT="4"
58 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
59 +
60 +CP_DEPEND="
61 + dev-java/antlr-runtime:3.5
62 +"
63 +
64 +BDEPEND="
65 + app-arch/unzip
66 +"
67 +
68 +DEPEND="
69 + >=virtual/jdk-1.8:*
70 + ${CP_DEPEND}
71 + test? (
72 + dev-java/antlr-tool:3.5
73 + )
74 +"
75 +
76 +RDEPEND="
77 + >=virtual/jre-1.8:*
78 + ${CP_DEPEND}
79 +"
80 +
81 +S="${WORKDIR}"
82 +TARBALL_S="${S}/${PN}4-${PV}"
83 +
84 +JAVA_SRC_DIR="org"
85 +
86 +JAVA_TEST_GENTOO_CLASSPATH="junit-4,antlr-tool-3.5"
87 +JAVA_TEST_SRC_DIR="${TARBALL_S}/test"
88 +JAVA_TEST_RESOURCE_DIRS=( "${TARBALL_S}/test/resources" )
89 +
90 +DOCS=( "${TARBALL_S}/"{CHANGES.txt,README.md} )
91 +
92 +src_prepare() {
93 + # Do not call java-pkg_clean; otherwise, it would remove
94 + # ${TARBALL_S}/test/test.jar, which is merely used as a
95 + # test resource file, does not contain any *.class files,
96 + # and is required to pass the tests as of version 4.3.2
97 + pushd "${TARBALL_S}" > /dev/null ||
98 + die "Failed to enter directory storing tarball contents"
99 + eapply "${FILESDIR}/${PN}-4.3.1-BaseTest-javac-source-target.patch"
100 + popd > /dev/null ||
101 + die "Failed to leave directory storing tarball contents"
102 + java-pkg-2_src_prepare
103 + # Some of these tests requires a graphical display.
104 + rm -v "${JAVA_TEST_SRC_DIR}/org/stringtemplate/v4/test/TestEarlyEvaluation.java" || die
105 +}
106 +
107 +src_test() {
108 + # Make sure no older versions of this slot are present in the classpath
109 + # https://bugs.gentoo.org/834138#c4
110 + local old_ver_cp="$(nonfatal java-pkg_getjars "${PN}-${SLOT}")"
111 + local new_test_cp="$(\
112 + java-pkg_getjars --with-dependencies "${JAVA_TEST_GENTOO_CLASSPATH}")"
113 + new_test_cp="${new_test_cp//"${old_ver_cp}"/}"
114 +
115 + # Some of the test cases require an absolute path to the JAR being tested
116 + # against to be in the classpath, due to the fact that they call the 'java'
117 + # command outside ${S} and reuse the classpath for the tests:
118 + # https://github.com/antlr/stringtemplate4/blob/4.3.1/test/org/stringtemplate/v4/test/TestImports.java#L103
119 + # https://github.com/antlr/stringtemplate4/blob/4.3.1/test/org/stringtemplate/v4/test/BaseTest.java#L174
120 + new_test_cp="${S}/${JAVA_JAR_FILENAME}:${new_test_cp}"
121 +
122 + # The JAR used as a test resource file needs to be in the classpath
123 + # https://github.com/antlr/stringtemplate4/blob/4.3.2/pom.xml#L53-L58
124 + new_test_cp+=":${JAVA_TEST_SRC_DIR}/test.jar"
125 +
126 + # Use JAVA_GENTOO_CLASSPATH_EXTRA to set test classpath
127 + local JAVA_TEST_GENTOO_CLASSPATH=""
128 + [[ -n "${JAVA_GENTOO_CLASSPATH_EXTRA}" ]] &&
129 + JAVA_GENTOO_CLASSPATH_EXTRA+=":"
130 + JAVA_GENTOO_CLASSPATH_EXTRA+="${new_test_cp}"
131 + java-pkg-simple_src_test
132 +}
133 +
134 +src_install() {
135 + java-pkg-simple_src_install
136 + einstalldocs # https://bugs.gentoo.org/789582
137 +}