From b51ffb96528d9b8b14e02c3eaa5d34edc4d7b378 Mon Sep 17 00:00:00 2001 From: Guoyi Zhang Date: Fri, 7 Feb 2025 13:44:01 +1100 Subject: [PATCH] java-openjfx: swtich to bin due to source code broken --- BioArchLinux/java-openjfx/PKGBUILD | 161 ++++-------------- BioArchLinux/java-openjfx/PKGBUILD.source | 131 ++++++++++++++ .../java-openjfx/java-openjfx-nowebkit | 1 + BioArchLinux/java-openjfx/lilac.yaml | 6 +- 4 files changed, 170 insertions(+), 129 deletions(-) create mode 100644 BioArchLinux/java-openjfx/PKGBUILD.source create mode 160000 BioArchLinux/java-openjfx/java-openjfx-nowebkit diff --git a/BioArchLinux/java-openjfx/PKGBUILD b/BioArchLinux/java-openjfx/PKGBUILD index bdeb7cb5ed..91a5c0ea3d 100644 --- a/BioArchLinux/java-openjfx/PKGBUILD +++ b/BioArchLinux/java-openjfx/PKGBUILD @@ -1,131 +1,40 @@ -# Maintainer: Frederik “Freso” S. Olesen -# Contributor: Levente Polyak -# Contributor: Frederik Schwan -# Contributor: Maxime Gauduin -# Contributor: Guillaume Alaux -# Contributor: William Gathoye -# Contributor: Emanuel Couto -# Contributor: Richard Jackson -# Contributor: Tinx -# Contributor: Jens Kapitza -# Contributor: Olli +# Maintainer: L B -pkgbase=java-openjfx -pkgname=( - java-openjfx - java-openjfx-doc - java-openjfx-src -) -pkgver=22.0.2.u4 +pkgname=java-openjfx +_majorver=23.0.1 +pkgver=23 pkgrel=0 -pkgdesc="Java OpenJFX client application platform (open-source implementation of JavaFX) - latest version" -arch=(x86_64 x86_64_v3) -url=https://wiki.openjdk.java.net/display/OpenJFX/Main -license=('GPL-2.0-only WITH Classpath-exception-2.0') -makedepends=( - alsa-lib - ant - cairo - cmake - ffmpeg4.4 - freetype2 - gdk-pixbuf2 - glib2 - gperf - 'gradle<9' - gtk2 - gtk3 - java-environment-openjdk=$((${pkgver%%.*}-1)) - libgl - libx11 - libxtst - libxxf86vm - pango - perl - python - qt5-base - ruby - unzip - webkit2gtk - zip -) -options=(!lto) -source=( - "${pkgbase}-${pkgver//.u/+}.tar.gz::https://github.com/openjdk/jfx${pkgver%%.*}u/archive/refs/tags/${pkgver//.u/+}.tar.gz" - gradle.properties - java-openjfx-flags.patch -) -b2sums=('d744b8d2018ff69d1356d9381d1541ecc69dc5ff3c92aea7a3ed1992d7b2b146fb68371fa8c4b8b20532a9077ef64350a769885bbb454316c35e6775c8e7f4c6' - 'a77fd8814a5978827de01a652f7b945f3439df04606434ced8998c8d77a82985292490e6965299aeb52f9da3d8069b4091d75519bd4ec8a15f70bc6d28b13498' - '5b6dafc22995b57564fda89aaedeb2b6ee58b2c635336ac43a123ea4ac6ced3a20eba39d99cc4eb7ec7b29fc7541f5c3bee454ee55ca79fd2d7ce5ef4ed65cd3') +pkgdesc="Java OpenJFX ${_majorver} client application platform (Gluon build)." +arch=('x86_64') +url='https://openjfx.io/' +license=('GPL2') +depends=('ffmpeg' 'gstreamer' 'java-environment>=11' 'libxtst' 'qt5-base' 'webkit2gtk') +provides=("java-openjfx=${pkgver}") +conflicts=("java${pkgver}-openjfx" "java-openjfx") +options=(!strip) +source=("https://download2.gluonhq.com/openjfx/${_majorver}/openjfx-${_majorver}_linux-x64_bin-sdk.zip" + "https://download2.gluonhq.com/openjfx/${_majorver}/openjfx-${_majorver}_linux-x64_bin-jmods.zip" + "https://download2.gluonhq.com/openjfx/${_majorver}/openjfx-${_majorver}-javadoc.zip") +sha256sums=('9ba7e61802029e41a9526ec9a98533b6f543fa508fbae7d548886d8ae7100349' + '2164bca470bf70a5e2764645e2078ba7f787b274e5be3d7df30d87c5bb62bba6' + '134f3ffc254471a8de973136c0b47eddcc026fd500faa1ca37e3b4fa292fbfe1') -_jfxdir=jfx${pkgver%%.*}u-${pkgver//.u/-} +_jvmdir=usr/lib/jvm/java-${pkgver}-openjfx -prepare() { - cd $_jfxdir - - # Clean from potential previous runs - gradle --stop - rm -rf build - #gradle clean - - ln -sf ../gradle.properties . - patch -Np1 -i ../java-openjfx-flags.patch - sed 's|, "-Werror"||g' -i buildSrc/linux.gradle -} - -build() { - cd $_jfxdir - - # Build with openjdk-(current version minus 1) - export PATH="/usr/lib/jvm/java-$((${pkgver%%.*}-1))-openjdk/bin/:$PATH" - - # build against ffmpeg4.4 - export PKG_CONFIG_PATH='/usr/lib/ffmpeg4.4/pkgconfig' - - # Workaround for situation where the linker treats whitespace as arguments - export LDFLAGS="${LDFLAGS//+([[:space:]]|[[:blank:]])/ }" - - gradle zips -} - -package_java-openjfx() { - depends=( - java-runtime-openjdk=${pkgver%%.*} - libgl - libx11 - libxtst - ) - optdepends=( - 'ffmpeg4.4: Media support', - 'gtk2: GTK2 support', - 'gtk3: GTK3 support', - 'webkit2gtk: Web support' - ) - provides=(java-openjfx=${pkgver%%.*}) - - cd $_jfxdir - - install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses} - cp -dr --no-preserve=ownership build/sdk/lib "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/ - cp -dr --no-preserve=ownership build/jmods "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/ - cp -dr --no-preserve=ownership build/sdk/legal "${pkgdir}"/usr/share/licenses/java-openjfx -} - -package_java-openjfx-doc() { - arch=(any) - cd $_jfxdir - - install -dm 755 "${pkgdir}"/usr/share/{doc,licenses} - cp -dr --no-preserve=ownership build/javadoc "${pkgdir}"/usr/share/doc/java-openjfx - ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-doc -} - -package_java-openjfx-src() { - arch=(any) - cd $_jfxdir - - install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses} - install -m 644 build/sdk/src.zip "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/javafx-src.zip - ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-src +package() { + # Install + install -d "${pkgdir}/${_jvmdir}" + cp -a "javafx-sdk-${_majorver}/lib" "${pkgdir}/${_jvmdir}/" + # Copy source archive + cp -a "javafx-sdk-${_majorver}/src.zip" "${pkgdir}/${_jvmdir}/" + mv "${pkgdir}/${_jvmdir}/src.zip" "${pkgdir}/${_jvmdir}/lib/javafx-src.zip" + # Legal + install -d "${pkgdir}/usr/share/licenses/java${pkgver}-openjdk" + cp -a "javafx-sdk-${_majorver}/legal" "${pkgdir}/usr/share/licenses/java${pkgver}-openjdk/" + # Jmods + install -d "${pkgdir}/${_jvmdir}/jmods" + cp -a "javafx-jmods-${_majorver}/"* "${pkgdir}/${_jvmdir}/jmods/" + # Docs + install -d "${pkgdir}/usr/share/doc/java${pkgver}-openjfx" + cp -a "javafx-${_majorver}-javadoc/"* "${pkgdir}/usr/share/doc/java${pkgver}-openjfx/" } diff --git a/BioArchLinux/java-openjfx/PKGBUILD.source b/BioArchLinux/java-openjfx/PKGBUILD.source new file mode 100644 index 0000000000..bdeb7cb5ed --- /dev/null +++ b/BioArchLinux/java-openjfx/PKGBUILD.source @@ -0,0 +1,131 @@ +# Maintainer: Frederik “Freso” S. Olesen +# Contributor: Levente Polyak +# Contributor: Frederik Schwan +# Contributor: Maxime Gauduin +# Contributor: Guillaume Alaux +# Contributor: William Gathoye +# Contributor: Emanuel Couto +# Contributor: Richard Jackson +# Contributor: Tinx +# Contributor: Jens Kapitza +# Contributor: Olli + +pkgbase=java-openjfx +pkgname=( + java-openjfx + java-openjfx-doc + java-openjfx-src +) +pkgver=22.0.2.u4 +pkgrel=0 +pkgdesc="Java OpenJFX client application platform (open-source implementation of JavaFX) - latest version" +arch=(x86_64 x86_64_v3) +url=https://wiki.openjdk.java.net/display/OpenJFX/Main +license=('GPL-2.0-only WITH Classpath-exception-2.0') +makedepends=( + alsa-lib + ant + cairo + cmake + ffmpeg4.4 + freetype2 + gdk-pixbuf2 + glib2 + gperf + 'gradle<9' + gtk2 + gtk3 + java-environment-openjdk=$((${pkgver%%.*}-1)) + libgl + libx11 + libxtst + libxxf86vm + pango + perl + python + qt5-base + ruby + unzip + webkit2gtk + zip +) +options=(!lto) +source=( + "${pkgbase}-${pkgver//.u/+}.tar.gz::https://github.com/openjdk/jfx${pkgver%%.*}u/archive/refs/tags/${pkgver//.u/+}.tar.gz" + gradle.properties + java-openjfx-flags.patch +) +b2sums=('d744b8d2018ff69d1356d9381d1541ecc69dc5ff3c92aea7a3ed1992d7b2b146fb68371fa8c4b8b20532a9077ef64350a769885bbb454316c35e6775c8e7f4c6' + 'a77fd8814a5978827de01a652f7b945f3439df04606434ced8998c8d77a82985292490e6965299aeb52f9da3d8069b4091d75519bd4ec8a15f70bc6d28b13498' + '5b6dafc22995b57564fda89aaedeb2b6ee58b2c635336ac43a123ea4ac6ced3a20eba39d99cc4eb7ec7b29fc7541f5c3bee454ee55ca79fd2d7ce5ef4ed65cd3') + +_jfxdir=jfx${pkgver%%.*}u-${pkgver//.u/-} + +prepare() { + cd $_jfxdir + + # Clean from potential previous runs + gradle --stop + rm -rf build + #gradle clean + + ln -sf ../gradle.properties . + patch -Np1 -i ../java-openjfx-flags.patch + sed 's|, "-Werror"||g' -i buildSrc/linux.gradle +} + +build() { + cd $_jfxdir + + # Build with openjdk-(current version minus 1) + export PATH="/usr/lib/jvm/java-$((${pkgver%%.*}-1))-openjdk/bin/:$PATH" + + # build against ffmpeg4.4 + export PKG_CONFIG_PATH='/usr/lib/ffmpeg4.4/pkgconfig' + + # Workaround for situation where the linker treats whitespace as arguments + export LDFLAGS="${LDFLAGS//+([[:space:]]|[[:blank:]])/ }" + + gradle zips +} + +package_java-openjfx() { + depends=( + java-runtime-openjdk=${pkgver%%.*} + libgl + libx11 + libxtst + ) + optdepends=( + 'ffmpeg4.4: Media support', + 'gtk2: GTK2 support', + 'gtk3: GTK3 support', + 'webkit2gtk: Web support' + ) + provides=(java-openjfx=${pkgver%%.*}) + + cd $_jfxdir + + install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses} + cp -dr --no-preserve=ownership build/sdk/lib "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/ + cp -dr --no-preserve=ownership build/jmods "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/ + cp -dr --no-preserve=ownership build/sdk/legal "${pkgdir}"/usr/share/licenses/java-openjfx +} + +package_java-openjfx-doc() { + arch=(any) + cd $_jfxdir + + install -dm 755 "${pkgdir}"/usr/share/{doc,licenses} + cp -dr --no-preserve=ownership build/javadoc "${pkgdir}"/usr/share/doc/java-openjfx + ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-doc +} + +package_java-openjfx-src() { + arch=(any) + cd $_jfxdir + + install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses} + install -m 644 build/sdk/src.zip "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/javafx-src.zip + ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-src +} diff --git a/BioArchLinux/java-openjfx/java-openjfx-nowebkit b/BioArchLinux/java-openjfx/java-openjfx-nowebkit new file mode 160000 index 0000000000..319a7405eb --- /dev/null +++ b/BioArchLinux/java-openjfx/java-openjfx-nowebkit @@ -0,0 +1 @@ +Subproject commit 319a7405eb2b97b80ea5d0cbe2da41e45af880cb diff --git a/BioArchLinux/java-openjfx/lilac.yaml b/BioArchLinux/java-openjfx/lilac.yaml index 13d09c4400..3197664e6c 100644 --- a/BioArchLinux/java-openjfx/lilac.yaml +++ b/BioArchLinux/java-openjfx/lilac.yaml @@ -3,14 +3,14 @@ maintainers: - github: starsareintherose email: kuoi@bioarchlinux.org pre_build_script: | - aur_pre_build(maintainers='Freso') - run_cmd(['updpkgsums']) + aur_pre_build(maintainers='Baldo') + update_pkgver_and_pkgrel(_G.newver) post_build_script: | git_pkgbuild_commit() update_on: - source: aur # git: "https://github.com/openjdk/jfx22u.git" - aur: java-openjfx + aur: java-openjfx-bin strip_release: true # include_regex: '^((?:\d|\.)+)\+\d+' # from_pattern: '\+'