1 # Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
2 # Maintainer: Frederik Schwan <freswa at archlinux dot org>
3 # Contributor: Maxime Gauduin <alucryd@archlinux.org>
4 # Contributor: Guillaume Alaux <guillaume@archlinux.org>
5 # Contributor: William Gathoye <william + archlinux at gathoye dot be>
6 # Contributor: Emanuel Couto <emanuel dot amaral dot couto at gmail dot com>
7 # Contributor: Richard Jackson <rdjack21 at gmail dot com>
8 # Contributor: Tinx <arch at tinx dot eu>
9 # Contributor: Jens Kapitza <j dot kapitza at schwarze-allianz dot de>
10 # Contributor: Olli <olli at coderkun dot de>
20 pkgdesc="Java OpenJFX client application platform (open-source implementation of JavaFX) - latest version"
22 url=https://wiki.openjdk.java.net/display/OpenJFX/Main
37 java-environment-openjdk=17
50 https://github.com/openjdk/jfx${pkgver//.*}u/archive/refs/tags/${pkgver//.u/+}.tar.gz
51 # ${pkgname}-${pkgver}.tar.gz::https://github.com/openjdk/jfx${pkgver%%.*}u/archive/refs/tags/${pkgver//.u/+}.tar.gz
53 java-openjfx-flags.patch
54 java-openjfx-no-xlocale.patch
56 b2sums=('f90129048df11e7b313681c974731ce8b47bb01a3a3e60b70b93385a9d924127f2420310faec79d84a23fb669fb0d8c003142494054d672c44e978ce44b5c788'
57 'a77fd8814a5978827de01a652f7b945f3439df04606434ced8998c8d77a82985292490e6965299aeb52f9da3d8069b4091d75519bd4ec8a15f70bc6d28b13498'
58 '609ffbc0938922f00ccebab6d1e9ab0d54b84f088f75c10c0eb4211ff1b33438481d76092eae8811a5e9f53dfc3ff422f7aa4e98abd8fc27fb73f1c3d4661c41'
59 '13216615c01b8d48d17889ffa22668c38568870d83ab30c542eb5b5620db305f02efb1acb99d9b5e89eb0a73a134bb336cb301f4de4e8855cae50efb099e384e')
62 cd jfx${pkgver//.*}u-${pkgver//.u/-}
63 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
65 ln -sf ../gradle.properties .
66 patch -Np1 -i ../java-openjfx-flags.patch
67 patch -Np1 -i ../java-openjfx-no-xlocale.patch
68 sed 's|, "-Werror"||g' -i buildSrc/linux.gradle
72 cd jfx${pkgver//.*}u-${pkgver//.u/-}
73 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
75 # build against ffmpeg4.4
76 export PKG_CONFIG_PATH='/usr/lib/ffmpeg4.4/pkgconfig'
81 package_java-openjfx() {
83 java-runtime-openjdk=${pkgver%%.*}
89 'ffmpeg4.4: Media support',
92 'webkit2gtk: Web support'
94 provides=(java-openjfx=${pkgver%%.*})
96 cd jfx${pkgver//.*}u-${pkgver//.u/-}
97 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
99 install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses}
100 cp -dr --no-preserve=ownership build/sdk/lib "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/
101 cp -dr --no-preserve=ownership build/jmods "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/
102 cp -dr --no-preserve=ownership build/sdk/legal "${pkgdir}"/usr/share/licenses/java-openjfx
105 package_java-openjfx-doc() {
106 cd jfx${pkgver//.*}u-${pkgver//.u/-}
107 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
109 install -dm 755 "${pkgdir}"/usr/share/{doc,licenses}
110 cp -dr --no-preserve=ownership build/javadoc "${pkgdir}"/usr/share/doc/java-openjfx
111 ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-doc
114 package_java-openjfx-src() {
115 cd jfx${pkgver//.*}u-${pkgver//.u/-}
116 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
118 install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses}
119 install -m 644 build/sdk/src.zip "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/javafx-src.zip
120 ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-src