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