From ddb6fbc11e863756a24e1dc866c63dec00eac6fa Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 27 Sep 2023 11:30:42 +0100 Subject: gentoo auto-resync : 27:09:2023 - 11:30:42 --- dev-java/openjfx/Manifest | 5 +- dev-java/openjfx/files/11/ffmpeg5.patch | 17 ++ dev-java/openjfx/openjfx-11.0.11_p1-r1.ebuild | 226 ++++++++++++++++++++++++++ dev-java/openjfx/openjfx-11.0.11_p1.ebuild | 226 -------------------------- dev-java/openjfx/openjfx-11.0.9_p0-r1.ebuild | 226 ++++++++++++++++++++++++++ dev-java/openjfx/openjfx-11.0.9_p0.ebuild | 226 -------------------------- 6 files changed, 472 insertions(+), 454 deletions(-) create mode 100644 dev-java/openjfx/files/11/ffmpeg5.patch create mode 100644 dev-java/openjfx/openjfx-11.0.11_p1-r1.ebuild delete mode 100644 dev-java/openjfx/openjfx-11.0.11_p1.ebuild create mode 100644 dev-java/openjfx/openjfx-11.0.9_p0-r1.ebuild delete mode 100644 dev-java/openjfx/openjfx-11.0.9_p0.ebuild (limited to 'dev-java/openjfx') diff --git a/dev-java/openjfx/Manifest b/dev-java/openjfx/Manifest index 9425201621e4..be35f93c3df8 100644 --- a/dev-java/openjfx/Manifest +++ b/dev-java/openjfx/Manifest @@ -3,6 +3,7 @@ AUX 11/disable-architecture-verification.patch 1288 BLAKE2B 2c228eedfbc9b8642d26 AUX 11/disable-buildSrc-tests.patch 534 BLAKE2B d1cb4da89602fa9a48e5509586d1909d10b9d62e167bdd4d57b9615f2896704dd0ee925d14a86753bf53182f85fc9c21f195c3f044a0c6d38c960ee4f5494332 SHA512 ffbc3d671cea448ffddd8d92e4a4031a941008c067d5a7acb358fb82ed217c9388ef1916aa04cf4693ff2a83e0bdcf3fc5bdc919196a6231d57c8341e44ddede AUX 11/don-t-force-msse-11.0.11.patch 4577 BLAKE2B 7ced8b5b81a144cafc557d026fbbe8242356021dd473ae06debab4150beb6ce28ba94ebbc3503942d931e8ea653671b985f5cb2010375aee67ab50f98fb12fd6 SHA512 5df3760c80c721c71b30c44d61ddd60ab06899ccf1b74ed0e168a5c5f0db5a28ab181f0d0d58dbe05ebfb579efa1f7989ac015de8604e747667889ef258a452f AUX 11/don-t-force-msse.patch 4621 BLAKE2B e715f5e8a7aa9c7e6637baa4e90169e0cd63e2d42f1ad76305f4cb13c9cae43d1464fef9dabfc4d4f530261db40650a05347f55065af3e152255845c2168f64d SHA512 5d0c72493e9be638c1fbff26531b51a485f9eac1aeb286e2b6b9a8674d866dab7b736a9959c9ee231f96cbe1c11838a77f64a8db3a993e5c4a2059b4202cefc2 +AUX 11/ffmpeg5.patch 840 BLAKE2B 957f1ee06f9cae7de78e68f45051653f3b91d7c5e36d9b94de399db2ff94037457d9e163840bac9a4e896a54b25e508ad2a946658a64647ec1afac3778fbbcb7 SHA512 bd9346c84f8e42c16bd3d9dd9afa8e70a5d94056ca7127421869de41acd81be5ebb5603810cf8738008b9b4f9459e6c7cc057c905ced14b650f77905a302a442 AUX 11/glibc-compatibility.patch 547 BLAKE2B e63e83d708765dc7ad5013ff3a5bf0885fa426290e4fa164684739c15e7c15652c41256b98e9720c35682193086ec19c0225dd202fabc9bd9c9f99fb0fd6d5ff SHA512 abb08198b94e38fe8fb16229f506e2cad78869ed9c4fcabe22490a87884b1851373ee4a92ae4d7dbecaf3fc9a784911d932fad2457b0611a102e63a983113981 AUX 11/gstreamer-CVE-2021-3522.patch 1347 BLAKE2B 90684659ce6e199c599cc287c02cafecb8311d4c0d7c926bdb8a7cd8b725053225013dcdd3fd3cbd2d12ea99a8f810af041f48320df2eac8c74ed1f253b9deb2 SHA512 5d29de9cc019c1b74e17a9885e9742b110ef7b7b8d866a4d42556b434316c030dd235bc276e132ed621bfb67fbcf299a113a5b95eb71b57565bdb1cc4c5338f2 AUX 11/respect-user-cflags-11.0.11.patch 8591 BLAKE2B 918563c92d309da47c61198a4349f97f1b44213b6776478f930d824ec9d54e93edb6b98fd8e135c7d9d1e18aa6352afcd741a3b73ba811f1a0976c448746d2e4 SHA512 ded33c5b41f076afd771eb88019525126dea7ab182f98dd05e58aa6802d1eb9fced712c5165d0b3b50bd3770e952cc1db3403693f16d68d0af091ce96e351baa @@ -36,7 +37,7 @@ DIST openjfx-11.0.11_p1.tar.bz2 65017753 BLAKE2B ea5834e469bb0bd3a70595a91cc298f DIST openjfx-11.0.9_p0.tar.bz2 64148934 BLAKE2B 317fb1c9ea99816ecbd8ab64ed3a6ad0aaa319bedd17bf71ee192c5e610fea14611f3938302f1caf666980bcc7d4787f770e36aec1884a73dac3ddba8e1a878f SHA512 8b6d339131f096b4490d7a8c4a20c15362b4f6c6aa4ddd74f610f3b5a8b8c7aac3ab123dcdd5488cc37dc38f1536ce1db95286f4233ee4db1845d1bd560b2236 DIST openjfx-8.1000-backports.tar.bz2 9142182 BLAKE2B 58ea420ec015c49d2755105a3d11675a92ecab337c7bda5a1ad72e84d0b35f04ed4252cee24da89b1e7b1b5b8b8b9fea7db93364434800246b87827b21970cc3 SHA512 077392368947cb9da1b5c7e14b641d6edcddd9821eb4f16dbea33e8986568211e93799aca29e70b490c8ef2125d69f8372abd1b1ce428a95420f62ff15c414d6 DIST openjfx-8.1000.tar.bz2 62286455 BLAKE2B c9a714a618d9ae02768dae6128756d64b2b6299a36a6ad9828bf2213dc641cbbcaa2d3f3e0b4913bb60893419a2d5c730ca2db88f759bbd94b3e83112199278c SHA512 6049730b72e569939fed3d62b46a409e949b4c2309f4355253c8c891799c7fb5138e20aa217454fbbd78b1dd99c254b34b3fe6c9cbb35854bd8656993655bf32 -EBUILD openjfx-11.0.11_p1.ebuild 6563 BLAKE2B 1e2a9d7c549e9b5c6f6777c9ba4963bb38bfccd207dd0db213c33bd3f4a0384031fbc9bd48d250f8560c03fe51e9ac7aecf22c08f44e95650d3f8fa64b9da535 SHA512 84b6dd1b8967e9f91cff78b26922f3a987f0af7984a104b39c15a07bf0c1f40010f11004c6bee454abce86fbf5a1565d8c11a7a1e535b53c82c357e16316a512 -EBUILD openjfx-11.0.9_p0.ebuild 6529 BLAKE2B 66c761d6aedd70903b302a3e41664b0c2a3161ce54b7fd286dd89aa262451ddfd8ce50576d8e6c5b0857586a46f400f3aab6b87ea4d4b115472b00325699cce0 SHA512 681bc70763d33dac6e7cddd39f5bc3b1b2f452336acca5b677fb50af7be686c26e4d76a9481c86f0b1ebd16b660d4bd369a8343a35e007a0442899995aff087b +EBUILD openjfx-11.0.11_p1-r1.ebuild 6602 BLAKE2B abd5e2d7757b5ada08f8e5998e64c8cd1e2ca5d92cf41d5e8d17b4385d31359d1147fc77586d32825ae3fc58cf898078b461143bc2e2c8f2721cb28d49617ad6 SHA512 7fd2faea34f8e99ff83baf57eaf15ef95c1d7556bbd354c85dfeac3e3563b4b04ddfcd7a444e8aaf8241541dc7831276fda3d19f92c5a2a356c964de04796b59 +EBUILD openjfx-11.0.9_p0-r1.ebuild 6568 BLAKE2B 42d0eb52bc6844bff3215597ff061e2baacf497261b37559f1a824b12a247c2cd3583888dff6a9165c4cf21564b64a505842ba84972759ef6ed0b99df89bc4b3 SHA512 73a4a8a453825a28b72f0e05861d7c8b0f0f66ccf459e1fd3f49f470231850a2baa0851c25f0826d3c7883b5dfb3916cdd7e211845607fe1fdcc6af568666cf8 EBUILD openjfx-8.1000.ebuild 5601 BLAKE2B f943ebac3cf75b02648e4337506e141043d9eeb0eb4832c797db9af23345526b5fc9fffad5efb332a0954a359ca7fe60220c5037a60770e8784e5c3c9700e915 SHA512 9282f56a829d76c483eaa897a2d4f6bcee8e808bb811971829f3f94f781b8a0dbe3079ba731b9ec162ad3d5466b78724c13f323dd8beeea9d88eda80a78d2d56 MISC metadata.xml 679 BLAKE2B 6197810f33cab61e844a41acb183754f4034020116507ae07db6ab81cf91e9088a4359b6c37d85de9130d835ad12f33da597f514248d6abe000ab2f5a1127627 SHA512 81e44c868178fb48e8182bc7b4eae21abd43ac561f0d819617d8fb1b5ed69d2cc02c2b97790ac957a3c9c07083c3ad93744294b52b971955a521596eb2421b0b diff --git a/dev-java/openjfx/files/11/ffmpeg5.patch b/dev-java/openjfx/files/11/ffmpeg5.patch new file mode 100644 index 000000000000..ca0bd1fbecb5 --- /dev/null +++ b/dev-java/openjfx/files/11/ffmpeg5.patch @@ -0,0 +1,17 @@ +--- a/build.gradle ++++ b/build.gradle +@@ -3710,14 +3710,6 @@ + } + } + } +- } else { +- // Building fxavcodec plugin (libav plugin) +- exec { +- commandLine ("make", "${makeJobsFlag}", "-C", "${nativeSrcDir}/gstreamer/projects/linux/avplugin") +- args("CC=${mediaProperties.compiler}", "LINKER=${mediaProperties.linker}", +- "OUTPUT_DIR=${nativeOutputDir}", "BUILD_TYPE=${buildType}", +- "BASE_NAME=avplugin", IS_64 ? "ARCH=x64" : "ARCH=x32") +- } + } + } + } diff --git a/dev-java/openjfx/openjfx-11.0.11_p1-r1.ebuild b/dev-java/openjfx/openjfx-11.0.11_p1-r1.ebuild new file mode 100644 index 000000000000..3263c68c1c08 --- /dev/null +++ b/dev-java/openjfx/openjfx-11.0.11_p1-r1.ebuild @@ -0,0 +1,226 @@ +# Copyright 2019-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PV="${PV/_p/+}" +SLOT="${MY_PV%%[.+]*}" +EGRADLE_VER="4.10.3" + +inherit flag-o-matic java-pkg-2 multiprocessing + +DESCRIPTION="Java OpenJFX client application platform" +HOMEPAGE="https://openjfx.io" + +SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2 + https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar + https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar + https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar + https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar +" + +LICENSE="GPL-2-with-classpath-exception" +KEYWORDS="-* ~amd64 ~ppc64" + +IUSE="cpu_flags_x86_sse2 debug doc source +media" + +RDEPEND=" + app-accessibility/at-spi2-core + dev-java/swt:4.10[cairo,opengl] + dev-libs/glib:2 + dev-libs/libxml2:2 + dev-libs/libxslt + media-libs/freetype:2 + media-libs/fontconfig:1.0 + media-libs/libjpeg-turbo + x11-libs/gdk-pixbuf + x11-libs/gtk+:2 + x11-libs/gtk+:3 + x11-libs/cairo[glib] + x11-libs/libX11 + x11-libs/libXtst + x11-libs/libXxf86vm + x11-libs/pango + virtual/opengl + doc? ( dev-java/openjdk:${SLOT}[doc] ) + !doc? ( + || ( + dev-java/openjdk-bin:${SLOT} + dev-java/openjdk:${SLOT} + ) + ) +" + +DEPEND="${RDEPEND} + app-arch/unzip + app-arch/zip + >=dev-java/ant-core-1.10.7-r1:0 + dev-java/antlr:0 + dev-java/antlr:3.5 + dev-java/hamcrest-core:0 + dev-java/stringtemplate:0 + virtual/ttf-fonts + virtual/pkgconfig +" + +REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )" + +PATCHES=( + "${FILESDIR}"/11/disable-buildSrc-tests.patch + "${FILESDIR}"/11/glibc-compatibility.patch + "${FILESDIR}"/11/respect-user-cflags-11.0.11.patch + "${FILESDIR}"/11/use-system-swt-jar.patch + "${FILESDIR}"/11/wno-error-11.0.11.patch + "${FILESDIR}"/11/don-t-force-msse-11.0.11.patch + "${FILESDIR}"/11/disable-architecture-verification.patch + "${FILESDIR}"/11/gstreamer-CVE-2021-3522.patch + "${FILESDIR}"/11/ffmpeg5.patch +) + +S="${WORKDIR}/rt-${MY_PV}" + +egradle() { + local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}" + local gradle="${GRADLE_HOME}/bin/gradle" + local gradle_args=( + --info + --stacktrace + --no-build-cache + --no-daemon + --offline + --gradle-user-home "${T}/gradle_user_home" + --project-cache-dir "${T}/gradle_project_cache" + ) + + export GRADLE_HOME + + # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist + unset ANT_HOME + + einfo "gradle "${gradle_args[@]}" ${@}" + # TERM needed, otherwise gradle may fail on terms it does not know about + TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed" +} + +pkg_setup() { + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + # The nastiness below is necessary while the gentoo-vm USE flag is + # masked. First we call java-pkg-2_pkg_setup if it looks like the + # flag was unmasked against one of the possible build VMs. If not, + # we try finding one of them in their expected locations. This would + # have been slightly less messy if openjdk-bin had been installed to + # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env + # file but disable it so that it would not normally be selectable. + + local vm + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done + + if has_version --host-root dev-java/openjdk:${SLOT}; then + export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT} + export JDK_HOME="${JAVA_HOME}" + export ANT_RESPECT_JAVA_HOME=true + + else + if [[ ${MERGE_TYPE} != "binary" ]]; then + JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT}) + [[ -n ${JDK_HOME} ]] || die "Build VM not found!" + JDK_HOME=${JDK_HOME#*/} + JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*} + export JDK_HOME + export JAVA_HOME="${JDK_HOME}" + export ANT_RESPECT_JAVA_HOME=true + fi + fi +} + +src_unpack() { + unpack "${P}.tar.bz2" + unpack "gradle-${EGRADLE_VER}-bin.zip" + + mkdir "${T}/jars" || die + + local line jar + for line in ${SRC_URI}; do + if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then + jar=$(basename "${BASH_REMATCH[-1]}") + cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die + fi + done +} + +src_prepare() { + default + + local d="${T}/jars" + + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate + java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core + + sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die +} + +src_configure() { + append-flags -Wno-error -fcommon + + #FIXME: still calls gcc, pkg-config etc by name without chost prefix + #FIXME: should we enable webkit? doubt so + + # build is very sensetive to doc presense, take extra steps + if use doc; then + local jdk_doc + if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then + jdk_doc="${EPREFIX}/usr/share/doc/openjdk-${SLOT}/html/api" + fi + [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early" + fi + + cat <<- _EOF_ > "${S}"/gradle.properties + COMPILE_TARGETS = linux + COMPILE_WEBKIT = false + COMPILE_MEDIA = $(usex media true false) + JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api + JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "") + BUILD_LIBAV_STUBS = false + GRADLE_VERSION_CHECK = false + LINT = none + CONF = $(usex debug DebugNative Release) + NUM_COMPILE_THREADS = $(makeopts_jobs) + JFX_DEPS_URL = ${T}/jars + COMPANY_NAME = "Gentoo" + _EOF_ +} + +src_compile() { + egradle zips $(usex doc "" "--exclude-task javadoc") +} + +src_install() { + if ! use source ; then + rm -v build/sdk/lib/src.zip || die + fi + + insinto "/usr/$(get_libdir)/${PN}-${SLOT}" + doins -r build/sdk/. + doins build/javafx-exports.zip + + if use doc; then + docinto html + dodoc -r build/javadoc/. + dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" + fi +} diff --git a/dev-java/openjfx/openjfx-11.0.11_p1.ebuild b/dev-java/openjfx/openjfx-11.0.11_p1.ebuild deleted file mode 100644 index 7d61ff67f2c2..000000000000 --- a/dev-java/openjfx/openjfx-11.0.11_p1.ebuild +++ /dev/null @@ -1,226 +0,0 @@ -# Copyright 2019-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -MY_PV="${PV/_p/+}" -SLOT="${MY_PV%%[.+]*}" -EGRADLE_VER="4.10.3" - -inherit flag-o-matic java-pkg-2 multiprocessing - -DESCRIPTION="Java OpenJFX client application platform" -HOMEPAGE="https://openjfx.io" - -SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2 - https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar - https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar - https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar - https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar -" - -LICENSE="GPL-2-with-classpath-exception" -KEYWORDS="-* ~amd64 ~ppc64" - -IUSE="cpu_flags_x86_sse2 debug doc source +media" - -RDEPEND=" - dev-java/swt:4.10[cairo,opengl] - dev-libs/atk - dev-libs/glib:2 - dev-libs/libxml2:2 - dev-libs/libxslt - media-libs/freetype:2 - media-libs/fontconfig:1.0 - media-video/ffmpeg:0= - x11-libs/gdk-pixbuf - x11-libs/gtk+:2 - x11-libs/gtk+:3 - x11-libs/cairo[glib] - x11-libs/libX11 - x11-libs/libXtst - x11-libs/libXxf86vm - x11-libs/pango - virtual/jpeg - virtual/opengl - doc? ( dev-java/openjdk:${SLOT}[doc] ) - !doc? ( - || ( - dev-java/openjdk-bin:${SLOT} - dev-java/openjdk:${SLOT} - ) - ) -" - -DEPEND="${RDEPEND} - app-arch/unzip - app-arch/zip - >=dev-java/ant-core-1.10.7-r1:0 - dev-java/antlr:0 - dev-java/antlr:3.5 - dev-java/hamcrest-core:0 - dev-java/stringtemplate:0 - virtual/ttf-fonts - virtual/pkgconfig -" - -REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )" - -PATCHES=( - "${FILESDIR}"/11/disable-buildSrc-tests.patch - "${FILESDIR}"/11/glibc-compatibility.patch - "${FILESDIR}"/11/respect-user-cflags-11.0.11.patch - "${FILESDIR}"/11/use-system-swt-jar.patch - "${FILESDIR}"/11/wno-error-11.0.11.patch - "${FILESDIR}"/11/don-t-force-msse-11.0.11.patch - "${FILESDIR}"/11/disable-architecture-verification.patch - "${FILESDIR}"/11/gstreamer-CVE-2021-3522.patch -) - -S="${WORKDIR}/rt-${MY_PV}" - -egradle() { - local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}" - local gradle="${GRADLE_HOME}/bin/gradle" - local gradle_args=( - --info - --stacktrace - --no-build-cache - --no-daemon - --offline - --gradle-user-home "${T}/gradle_user_home" - --project-cache-dir "${T}/gradle_project_cache" - ) - - export GRADLE_HOME - - # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist - unset ANT_HOME - - einfo "gradle "${gradle_args[@]}" ${@}" - # TERM needed, otherwise gradle may fail on terms it does not know about - TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed" -} - -pkg_setup() { - JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" - JAVA_PKG_WANT_SOURCE="${SLOT}" - JAVA_PKG_WANT_TARGET="${SLOT}" - - # The nastiness below is necessary while the gentoo-vm USE flag is - # masked. First we call java-pkg-2_pkg_setup if it looks like the - # flag was unmasked against one of the possible build VMs. If not, - # we try finding one of them in their expected locations. This would - # have been slightly less messy if openjdk-bin had been installed to - # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env - # file but disable it so that it would not normally be selectable. - - local vm - for vm in ${JAVA_PKG_WANT_BUILD_VM}; do - if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then - java-pkg-2_pkg_setup - return - fi - done - - if has_version --host-root dev-java/openjdk:${SLOT}; then - export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT} - export JDK_HOME="${JAVA_HOME}" - export ANT_RESPECT_JAVA_HOME=true - - else - if [[ ${MERGE_TYPE} != "binary" ]]; then - JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT}) - [[ -n ${JDK_HOME} ]] || die "Build VM not found!" - JDK_HOME=${JDK_HOME#*/} - JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*} - export JDK_HOME - export JAVA_HOME="${JDK_HOME}" - export ANT_RESPECT_JAVA_HOME=true - fi - fi -} - -src_unpack() { - unpack "${P}.tar.bz2" - unpack "gradle-${EGRADLE_VER}-bin.zip" - - mkdir "${T}/jars" || die - - local line jar - for line in ${SRC_URI}; do - if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then - jar=$(basename "${BASH_REMATCH[-1]}") - cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die - fi - done -} - -src_prepare() { - default - - local d="${T}/jars" - - java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr - java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5 - java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate - java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core - - sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die -} - -src_configure() { - append-flags -Wno-error -fcommon - - #FIXME: still calls gcc, pkg-config etc by name without chost prefix - #FIXME: should we enable webkit? doubt so - - # build is very sensetive to doc presense, take extra steps - if use doc; then - local jdk_doc - if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then - jdk_doc="${EPREFIX}/usr/share/doc/openjdk-${SLOT}/html/api" - fi - [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early" - fi - - cat <<- _EOF_ > "${S}"/gradle.properties - COMPILE_TARGETS = linux - COMPILE_WEBKIT = false - COMPILE_MEDIA = $(usex media true false) - JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api - JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "") - BUILD_LIBAV_STUBS = false - GRADLE_VERSION_CHECK = false - LINT = none - CONF = $(usex debug DebugNative Release) - NUM_COMPILE_THREADS = $(makeopts_jobs) - JFX_DEPS_URL = ${T}/jars - COMPANY_NAME = "Gentoo" - _EOF_ -} - -src_compile() { - egradle zips $(usex doc "" "--exclude-task javadoc") -} - -src_install() { - if ! use source ; then - rm -v build/sdk/lib/src.zip || die - fi - - insinto "/usr/$(get_libdir)/${PN}-${SLOT}" - doins -r build/sdk/. - doins build/javafx-exports.zip - - if use doc; then - docinto html - dodoc -r build/javadoc/. - dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" - fi -} diff --git a/dev-java/openjfx/openjfx-11.0.9_p0-r1.ebuild b/dev-java/openjfx/openjfx-11.0.9_p0-r1.ebuild new file mode 100644 index 000000000000..7fca74112cfd --- /dev/null +++ b/dev-java/openjfx/openjfx-11.0.9_p0-r1.ebuild @@ -0,0 +1,226 @@ +# Copyright 2019-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PV="${PV/_p/+}" +SLOT="${MY_PV%%[.+]*}" +EGRADLE_VER="4.10.3" + +inherit flag-o-matic java-pkg-2 multiprocessing + +DESCRIPTION="Java OpenJFX client application platform" +HOMEPAGE="https://openjfx.io" + +SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2 + https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar + https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar + https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar + https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar + https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar +" + +LICENSE="GPL-2-with-classpath-exception" +KEYWORDS="-* ~amd64 ~ppc64" + +IUSE="cpu_flags_x86_sse2 debug doc source +media" + +RDEPEND=" + app-accessibility/at-spi2-core + dev-java/swt:4.10[cairo,opengl] + dev-libs/glib:2 + dev-libs/libxml2:2 + dev-libs/libxslt + media-libs/freetype:2 + media-libs/fontconfig:1.0 + media-libs/libjpeg-turbo + x11-libs/gdk-pixbuf + x11-libs/gtk+:2 + x11-libs/gtk+:3 + x11-libs/cairo[glib] + x11-libs/libX11 + x11-libs/libXtst + x11-libs/libXxf86vm + x11-libs/pango + virtual/opengl + doc? ( dev-java/openjdk:${SLOT}[doc] ) + !doc? ( + || ( + dev-java/openjdk-bin:${SLOT} + dev-java/openjdk:${SLOT} + ) + ) +" + +DEPEND="${RDEPEND} + app-arch/unzip + app-arch/zip + >=dev-java/ant-core-1.10.7-r1:0 + dev-java/antlr:0 + dev-java/antlr:3.5 + dev-java/hamcrest-core:0 + dev-java/stringtemplate:0 + virtual/ttf-fonts + virtual/pkgconfig +" + +REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )" + +PATCHES=( + "${FILESDIR}"/11/disable-buildSrc-tests.patch + "${FILESDIR}"/11/glibc-compatibility.patch + "${FILESDIR}"/11/respect-user-cflags.patch + "${FILESDIR}"/11/use-system-swt-jar.patch + "${FILESDIR}"/11/wno-error.patch + "${FILESDIR}"/11/don-t-force-msse.patch + "${FILESDIR}"/11/disable-architecture-verification.patch + "${FILESDIR}"/11/ffmpeg5.patch + "${FILESDIR}/11/${PV}-version.patch" +) + +S="${WORKDIR}/rt-${MY_PV}" + +egradle() { + local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}" + local gradle="${GRADLE_HOME}/bin/gradle" + local gradle_args=( + --info + --stacktrace + --no-build-cache + --no-daemon + --offline + --gradle-user-home "${T}/gradle_user_home" + --project-cache-dir "${T}/gradle_project_cache" + ) + + export GRADLE_HOME + + # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist + unset ANT_HOME + + einfo "gradle "${gradle_args[@]}" ${@}" + # TERM needed, otherwise gradle may fail on terms it does not know about + TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed" +} + +pkg_setup() { + JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" + JAVA_PKG_WANT_SOURCE="${SLOT}" + JAVA_PKG_WANT_TARGET="${SLOT}" + + # The nastiness below is necessary while the gentoo-vm USE flag is + # masked. First we call java-pkg-2_pkg_setup if it looks like the + # flag was unmasked against one of the possible build VMs. If not, + # we try finding one of them in their expected locations. This would + # have been slightly less messy if openjdk-bin had been installed to + # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env + # file but disable it so that it would not normally be selectable. + + local vm + for vm in ${JAVA_PKG_WANT_BUILD_VM}; do + if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then + java-pkg-2_pkg_setup + return + fi + done + + if has_version --host-root dev-java/openjdk:${SLOT}; then + export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT} + export JDK_HOME="${JAVA_HOME}" + export ANT_RESPECT_JAVA_HOME=true + + else + if [[ ${MERGE_TYPE} != "binary" ]]; then + JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT}) + [[ -n ${JDK_HOME} ]] || die "Build VM not found!" + JDK_HOME=${JDK_HOME#*/} + JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*} + export JDK_HOME + export JAVA_HOME="${JDK_HOME}" + export ANT_RESPECT_JAVA_HOME=true + fi + fi +} + +src_unpack() { + unpack "${P}.tar.bz2" + unpack "gradle-${EGRADLE_VER}-bin.zip" + + mkdir "${T}/jars" || die + + local line jar + for line in ${SRC_URI}; do + if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then + jar=$(basename "${BASH_REMATCH[-1]}") + cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die + fi + done +} + +src_prepare() { + default + + local d="${T}/jars" + + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr + java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5 + java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate + java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core + + sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die +} + +src_configure() { + append-flags -Wno-error -fcommon + + #FIXME: still calls gcc, pkg-config etc by name without chost prefix + #FIXME: should we enable webkit? doubt so + + # build is very sensetive to doc presense, take extra steps + if use doc; then + local jdk_doc + if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then + jdk_doc="${EPREFIX}/usr/share/doc/openjdk-${SLOT}/html/api" + fi + [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early" + fi + + cat <<- _EOF_ > "${S}"/gradle.properties + COMPILE_TARGETS = linux + COMPILE_WEBKIT = false + COMPILE_MEDIA = $(usex media true false) + JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api + JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "") + BUILD_LIBAV_STUBS = false + GRADLE_VERSION_CHECK = false + LINT = none + CONF = $(usex debug DebugNative Release) + NUM_COMPILE_THREADS = $(makeopts_jobs) + JFX_DEPS_URL = ${T}/jars + COMPANY_NAME = "Gentoo" + _EOF_ +} + +src_compile() { + egradle zips $(usex doc "" "--exclude-task javadoc") +} + +src_install() { + if ! use source ; then + rm -v build/sdk/lib/src.zip || die + fi + + insinto "/usr/$(get_libdir)/${PN}-${SLOT}" + doins -r build/sdk/. + doins build/javafx-exports.zip + + if use doc; then + docinto html + dodoc -r build/javadoc/. + dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" + fi +} diff --git a/dev-java/openjfx/openjfx-11.0.9_p0.ebuild b/dev-java/openjfx/openjfx-11.0.9_p0.ebuild deleted file mode 100644 index 489a905614c1..000000000000 --- a/dev-java/openjfx/openjfx-11.0.9_p0.ebuild +++ /dev/null @@ -1,226 +0,0 @@ -# Copyright 2019-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -MY_PV="${PV/_p/+}" -SLOT="${MY_PV%%[.+]*}" -EGRADLE_VER="4.10.3" - -inherit flag-o-matic java-pkg-2 multiprocessing - -DESCRIPTION="Java OpenJFX client application platform" -HOMEPAGE="https://openjfx.io" - -SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2 - https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar - https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar - https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar - https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar - https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar -" - -LICENSE="GPL-2-with-classpath-exception" -KEYWORDS="-* ~amd64 ~ppc64" - -IUSE="cpu_flags_x86_sse2 debug doc source +media" - -RDEPEND=" - dev-java/swt:4.10[cairo,opengl] - dev-libs/atk - dev-libs/glib:2 - dev-libs/libxml2:2 - dev-libs/libxslt - media-libs/freetype:2 - media-libs/fontconfig:1.0 - media-video/ffmpeg:0= - x11-libs/gdk-pixbuf - x11-libs/gtk+:2 - x11-libs/gtk+:3 - x11-libs/cairo[glib] - x11-libs/libX11 - x11-libs/libXtst - x11-libs/libXxf86vm - x11-libs/pango - virtual/jpeg - virtual/opengl - doc? ( dev-java/openjdk:${SLOT}[doc] ) - !doc? ( - || ( - dev-java/openjdk-bin:${SLOT} - dev-java/openjdk:${SLOT} - ) - ) -" - -DEPEND="${RDEPEND} - app-arch/unzip - app-arch/zip - >=dev-java/ant-core-1.10.7-r1:0 - dev-java/antlr:0 - dev-java/antlr:3.5 - dev-java/hamcrest-core:0 - dev-java/stringtemplate:0 - virtual/ttf-fonts - virtual/pkgconfig -" - -REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )" - -PATCHES=( - "${FILESDIR}"/11/disable-buildSrc-tests.patch - "${FILESDIR}"/11/glibc-compatibility.patch - "${FILESDIR}"/11/respect-user-cflags.patch - "${FILESDIR}"/11/use-system-swt-jar.patch - "${FILESDIR}"/11/wno-error.patch - "${FILESDIR}"/11/don-t-force-msse.patch - "${FILESDIR}"/11/disable-architecture-verification.patch - "${FILESDIR}/11/${PV}-version.patch" -) - -S="${WORKDIR}/rt-${MY_PV}" - -egradle() { - local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}" - local gradle="${GRADLE_HOME}/bin/gradle" - local gradle_args=( - --info - --stacktrace - --no-build-cache - --no-daemon - --offline - --gradle-user-home "${T}/gradle_user_home" - --project-cache-dir "${T}/gradle_project_cache" - ) - - export GRADLE_HOME - - # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist - unset ANT_HOME - - einfo "gradle "${gradle_args[@]}" ${@}" - # TERM needed, otherwise gradle may fail on terms it does not know about - TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed" -} - -pkg_setup() { - JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}" - JAVA_PKG_WANT_SOURCE="${SLOT}" - JAVA_PKG_WANT_TARGET="${SLOT}" - - # The nastiness below is necessary while the gentoo-vm USE flag is - # masked. First we call java-pkg-2_pkg_setup if it looks like the - # flag was unmasked against one of the possible build VMs. If not, - # we try finding one of them in their expected locations. This would - # have been slightly less messy if openjdk-bin had been installed to - # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env - # file but disable it so that it would not normally be selectable. - - local vm - for vm in ${JAVA_PKG_WANT_BUILD_VM}; do - if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then - java-pkg-2_pkg_setup - return - fi - done - - if has_version --host-root dev-java/openjdk:${SLOT}; then - export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT} - export JDK_HOME="${JAVA_HOME}" - export ANT_RESPECT_JAVA_HOME=true - - else - if [[ ${MERGE_TYPE} != "binary" ]]; then - JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT}) - [[ -n ${JDK_HOME} ]] || die "Build VM not found!" - JDK_HOME=${JDK_HOME#*/} - JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*} - export JDK_HOME - export JAVA_HOME="${JDK_HOME}" - export ANT_RESPECT_JAVA_HOME=true - fi - fi -} - -src_unpack() { - unpack "${P}.tar.bz2" - unpack "gradle-${EGRADLE_VER}-bin.zip" - - mkdir "${T}/jars" || die - - local line jar - for line in ${SRC_URI}; do - if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then - jar=$(basename "${BASH_REMATCH[-1]}") - cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die - fi - done -} - -src_prepare() { - default - - local d="${T}/jars" - - java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr - java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5 - java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate - java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core - - sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die -} - -src_configure() { - append-flags -Wno-error -fcommon - - #FIXME: still calls gcc, pkg-config etc by name without chost prefix - #FIXME: should we enable webkit? doubt so - - # build is very sensetive to doc presense, take extra steps - if use doc; then - local jdk_doc - if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then - jdk_doc="${EPREFIX}/usr/share/doc/openjdk-${SLOT}/html/api" - fi - [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early" - fi - - cat <<- _EOF_ > "${S}"/gradle.properties - COMPILE_TARGETS = linux - COMPILE_WEBKIT = false - COMPILE_MEDIA = $(usex media true false) - JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api - JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "") - BUILD_LIBAV_STUBS = false - GRADLE_VERSION_CHECK = false - LINT = none - CONF = $(usex debug DebugNative Release) - NUM_COMPILE_THREADS = $(makeopts_jobs) - JFX_DEPS_URL = ${T}/jars - COMPANY_NAME = "Gentoo" - _EOF_ -} - -src_compile() { - egradle zips $(usex doc "" "--exclude-task javadoc") -} - -src_install() { - if ! use source ; then - rm -v build/sdk/lib/src.zip || die - fi - - insinto "/usr/$(get_libdir)/${PN}-${SLOT}" - doins -r build/sdk/. - doins build/javafx-exports.zip - - if use doc; then - docinto html - dodoc -r build/javadoc/. - dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}" - fi -} -- cgit v1.2.3