Gentoo Archives: gentoo-commits

From: Georgy Yakovlev <gyakovlev@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/openjfx/
Date: Wed, 22 Jan 2020 00:23:07
Message-Id: 1579652552.3d0131de340a7e439d5d7a1b919de40a41b22c81.gyakovlev@gentoo
1 commit: 3d0131de340a7e439d5d7a1b919de40a41b22c81
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Wed Jan 22 00:21:54 2020 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Wed Jan 22 00:22:32 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d0131de
7
8 dev-java/openjfx: bump to 11.0.6_p2
9
10 Package-Manager: Portage-2.3.84, Repoman-2.3.16
11 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
12
13 dev-java/openjfx/Manifest | 2 +
14 dev-java/openjfx/openjfx-11.0.6_p2.ebuild | 219 ++++++++++++++++++++++++++++++
15 2 files changed, 221 insertions(+)
16
17 diff --git a/dev-java/openjfx/Manifest b/dev-java/openjfx/Manifest
18 index f582a7dc84d..703a2bb2892 100644
19 --- a/dev-java/openjfx/Manifest
20 +++ b/dev-java/openjfx/Manifest
21 @@ -1,5 +1,6 @@
22 DIST ST4-4.0.8.jar 239543 BLAKE2B 72d257c6d0f1b3bde0afce805128dd38d8520b2073377bbb995fed3b4e18a3ea69d508d6d7554755ec68bf50940082b896ed89998a5178272d24376404b389c5 SHA512 9877289297cd5b15ad464a19467699387f57c510fe8a476e07e9d2334bd11933f9bdb9c6caa4972d4d4c84b56740c6d885cd39300dd7ce35b7c5bde536238086
23 DIST antlr-complete-3.5.2.jar 2456317 BLAKE2B d9afa08ad98dbff16d30425b97a0ddac7402055916e6a7dd290c3b9a2b26a4751c02f405d8d13c186333430c370c94bd73419b14c8e46df2971f68536cc484a0 SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1
24 +DIST antlr4-4.7.2-complete.jar 2079769 BLAKE2B 9407e5096b5943702a1375f568957f35486a80f122bc59c5ec8e899f59214c43ee4ece551d9078de14b7707d85f9306ae99953981c755a1e1205d83412010738 SHA512 e788d28796c8925a158f0a09048590bdcf6730d46dcb8a12b362cbcc80a7ceb76374b2675987c953faecd3cf4a847b1571485a71081a84684170d25d05176a11
25 DIST gradle-4.8-bin.zip 75885015 BLAKE2B eb6592afe122690f5e013abec2821beabac070563556ceec67ce02506582d4d9ac9c5d9f97ad2c464e442446f26ff90e9ead2c04e462a564411259564e3332c6 SHA512 4b351c9c5b0970bafb3b2b9b9e2ec9f37ff681cc3ac30004852d712cf8bb83061211a58e5b1f101813cde6a0aec914badf4ef0a806eec603418b851b64a06882
26 DIST gunit-3.5.2.jar 287425 BLAKE2B 86e759c5bb164758b689d93bef4b6a0bcb39eb9fee28d2a8dc113a4c97e5e8516b55ada87c27738ffa0fc512805caa338d8649f6f5c9ba36490c4c3ebed86fdd SHA512 c9f14dacec2f22f62b7d3849d1c0e9d626b3dc20eb74a85b32f1901f6279b7b84af095107128bcbe80c49ac05448a713309b60d0c3d2f88e0bca8a14690292b2
27 DIST lucene-core-7.1.0.jar 2779248 BLAKE2B 9edea1cfdeca2f2ec9e5c014e575774dc32fa5cf12ba02fd419fc252da10c03cd9f6cda989203211de4bc2ffcd2e79e8b97914e9792951bb0877a203760f07ad SHA512 0cd96016de2bc7ad94779e30348c443cf6028119fdae42c6f29e33d84495876a7519640f20680762324ea40c42e21b595f79cd606a6142b9875501f1e9179678
28 @@ -8,3 +9,4 @@ DIST lucene-queries-7.1.0.jar 243126 BLAKE2B 166c3efea04c19314be7fd8c1d6b1378b2b
29 DIST lucene-queryparser-7.1.0.jar 384680 BLAKE2B adce2572de9f534323eead31dd30f97b853b2d5e4be6828c415f0c647460c361e00680d856ff9ffbba0fe45c3e4a425d68938a3d2dc01c76491bb65673e120fa SHA512 7151ef899e318679995138262c3450577ae33580708864581dc22a027f43ca4989825d434680925547e3c04ad4453a454e7045f605d7eee0da57d63db978ed68
30 DIST lucene-sandbox-7.1.0.jar 182914 BLAKE2B 70c795f84d8f0908abe47db77f632eeb6571a77e1445b8ab04a75080cea40e3b8171071965ff7fd9f6d39a450dd33144e922d19c1f07c605de54b45e3e881323 SHA512 6faf9fd9c7c082bf062adb6a28d89447e6e27152eb3f0a325081e5f791196e5440334632ccbf9c458940220676f7e73390a174889d9b7a656d088b3dade5d500
31 DIST openjfx-11.0.3_p1.tar.bz2 63272033 BLAKE2B 574a622b2b2587fcdc64c91cfef0fbcc6d97baa7827e84a540bf1c8493b9fbc3629bd131e5c0972fb82687d194ceb527dfdedd6c2a00edc16d9a76850699f9b6 SHA512 8f8e07d7588b1a5fbcdfcc2837ae0389fefea3a1d91f89fdd4aab03e0bc6f5b9a1e66a824ae9388b777b36e76beb19cb6c69c963c7d904d36cad40f36c5ef0c7
32 +DIST openjfx-11.0.6_p2.tar.bz2 63971065 BLAKE2B e68cebef34c39b163bf9de5f7184a363553650921bcf86ea338d6cbb583cc66056c3f5d8ff593b320ee38afd9daf738ffe041de6a90062e35e59274ad0242c9d SHA512 7112a7f4a02f36c131892953d76f6a8d82bdce69b67479091187045d78c090f6b4bc8f21b6df259f154c3d0ae87866566eca50ef2741ed440d62655c36e20f3c
33
34 diff --git a/dev-java/openjfx/openjfx-11.0.6_p2.ebuild b/dev-java/openjfx/openjfx-11.0.6_p2.ebuild
35 new file mode 100644
36 index 00000000000..29fbe1b3206
37 --- /dev/null
38 +++ b/dev-java/openjfx/openjfx-11.0.6_p2.ebuild
39 @@ -0,0 +1,219 @@
40 +# Copyright 2019-2020 Gentoo Authors
41 +# Distributed under the terms of the GNU General Public License v2
42 +
43 +EAPI=6
44 +
45 +MY_PV=${PV/_p/+}
46 +SLOT=${MY_PV%%[.+]*}
47 +EGRADLE_VER="4.8"
48 +
49 +inherit java-pkg-2 multiprocessing
50 +
51 +DESCRIPTION="Java OpenJFX client application platform"
52 +HOMEPAGE="https://openjfx.io"
53 +
54 +SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
55 + https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
56 + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar
57 + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar
58 + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar
59 + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar
60 + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar
61 + https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar
62 + https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar
63 + https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar
64 +"
65 +
66 +LICENSE="GPL-2-with-classpath-exception"
67 +SLOT="$(ver_cut 1)"
68 +KEYWORDS="-* ~amd64"
69 +
70 +IUSE="cpu_flags_x86_sse2 debug doc source +media"
71 +
72 +RDEPEND="
73 + dev-java/swt:4.10[cairo,opengl]
74 + dev-libs/atk
75 + dev-libs/glib:2
76 + dev-libs/libxml2:2
77 + dev-libs/libxslt
78 + media-libs/freetype:2
79 + media-libs/fontconfig:1.0
80 + media-video/ffmpeg:0=
81 + x11-libs/gdk-pixbuf
82 + x11-libs/gtk+:2
83 + x11-libs/gtk+:3
84 + x11-libs/cairo[glib]
85 + x11-libs/libX11
86 + x11-libs/libXtst
87 + x11-libs/libXxf86vm
88 + x11-libs/pango
89 + virtual/jpeg
90 + virtual/opengl
91 + || (
92 + dev-java/openjdk-bin:${SLOT}[doc?]
93 + dev-java/openjdk:${SLOT}[doc?]
94 + )
95 +"
96 +
97 +DEPEND="${RDEPEND}
98 + app-arch/unzip
99 + app-arch/zip
100 + >=dev-java/ant-core-1.10.5-r2:0
101 + dev-java/antlr:0
102 + dev-java/antlr:3.5
103 + dev-java/hamcrest-core:0
104 + dev-java/stringtemplate:0
105 + virtual/ttf-fonts
106 + virtual/pkgconfig
107 +"
108 +
109 +REQUIRED_USE="cpu_flags_x86_sse2"
110 +
111 +PATCHES=(
112 + "${FILESDIR}"/11/disable-buildSrc-tests.patch
113 + "${FILESDIR}"/11/glibc-compatibility.patch
114 + "${FILESDIR}"/11/respect-user-cflags.patch
115 + "${FILESDIR}"/11/use-system-swt-jar.patch
116 +)
117 +
118 +S="${WORKDIR}/rt-${MY_PV}"
119 +
120 +egradle() {
121 + local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
122 + local gradle="${GRADLE_HOME}/bin/gradle"
123 + local gradle_args=(
124 + --info
125 + --stacktrace
126 + --no-build-cache
127 + --no-daemon
128 + --offline
129 + --gradle-user-home "${T}/gradle_user_home"
130 + --project-cache-dir "${T}/gradle_project_cache"
131 + )
132 +
133 + export GRADLE_HOME
134 +
135 + # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
136 + unset ANT_HOME
137 +
138 + einfo "gradle "${gradle_args[@]}" ${@}"
139 + "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
140 +}
141 +
142 +pkg_setup() {
143 + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
144 + JAVA_PKG_WANT_SOURCE="${SLOT}"
145 + JAVA_PKG_WANT_TARGET="${SLOT}"
146 +
147 + # The nastiness below is necessary while the gentoo-vm USE flag is
148 + # masked. First we call java-pkg-2_pkg_setup if it looks like the
149 + # flag was unmasked against one of the possible build VMs. If not,
150 + # we try finding one of them in their expected locations. This would
151 + # have been slightly less messy if openjdk-bin had been installed to
152 + # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
153 + # file but disable it so that it would not normally be selectable.
154 +
155 + local vm
156 + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
157 + if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
158 + java-pkg-2_pkg_setup
159 + return
160 + fi
161 + done
162 +
163 + if has_version --host-root dev-java/openjdk:${SLOT}; then
164 + export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
165 + export JDK_HOME="${JAVA_HOME}"
166 + export ANT_RESPECT_JAVA_HOME=ture
167 +
168 + else
169 + if [[ ${MERGE_TYPE} != "binary" ]]; then
170 + JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
171 + [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
172 + JDK_HOME=${JDK_HOME#*/}
173 + JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
174 + export JDK_HOME
175 + export JAVA_HOME="${JDK_HOME}"
176 + export ANT_RESPECT_JAVA_HOME=ture
177 + fi
178 + fi
179 +}
180 +
181 +src_unpack() {
182 + unpack "${P}.tar.bz2"
183 + unpack "gradle-${EGRADLE_VER}-bin.zip"
184 +
185 + mkdir "${T}/jars" || die
186 +
187 + local line jar
188 + for line in ${SRC_URI}; do
189 + if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then
190 + jar=$(basename "${BASH_REMATCH[-1]}")
191 + cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die
192 + fi
193 + done
194 +}
195 +
196 +src_prepare() {
197 + default
198 +
199 + local d="${T}/jars"
200 +
201 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr
202 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5
203 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate
204 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core
205 +
206 + sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die
207 +}
208 +
209 +src_configure() {
210 + #FIXME: still calls gcc, pkg-config etc by name without chost prefix
211 + #FIXME: should we enable webkit? doubt so
212 +
213 + # build is very sensetive to doc presense, take extra steps
214 + if use doc; then
215 + local jdk_doc
216 + if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then
217 + jdk_doc="${EROOT%/}/usr/share/doc/openjdk-${SLOT}/html/api"
218 + elif has_version --host-root dev-java/java-sdk-docs:${SLOT}; then
219 + jdk_doc="${EROOT%/}/usr/share/doc/java-sdk-docs-${SLOT}/html/api"
220 + fi
221 + [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early"
222 + fi
223 +
224 + cat <<- _EOF_ > "${S}"/gradle.properties
225 + COMPILE_TARGETS = linux
226 + COMPILE_WEBKIT = false
227 + COMPILE_MEDIA = $(usex media true false)
228 + JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api
229 + JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "")
230 + BUILD_LIBAV_STUBS = false
231 + GRADLE_VERSION_CHECK = false
232 + LINT = none
233 + CONF = $(usex debug DebugNative Release)
234 + NUM_COMPILE_THREADS = $(makeopts_jobs)
235 + JFX_DEPS_URL = ${T}/jars
236 + COMPANY_NAME = "Gentoo"
237 + _EOF_
238 +}
239 +
240 +src_compile() {
241 + egradle zips $(usex doc "" "--exclude-task javadoc")
242 +}
243 +
244 +src_install() {
245 + if ! use source ; then
246 + rm -v build/sdk/lib/src.zip || die
247 + fi
248 +
249 + insinto "/usr/$(get_libdir)/${PN}-${SLOT}"
250 + doins -r build/sdk/.
251 + doins build/javafx-exports.zip
252 +
253 + if use doc; then
254 + insinto /usr/share/doc/"${PF}"/html
255 + doins -r build/javadoc/.
256 + dosym /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
257 + fi
258 +}