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=18
50 https://github.com/openjdk/jfx/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
55 java-openjfx-gstreamer-lite-gcc10-compat.patch
57 b2sums=('7c913def2a1f1248221a51a7730a6067183f3f7ce1bea5a2792c961f73f423754e50e4f01b0f51ae4703a24bf11c334f4dfa4e8913623399d457cff88f820ab7'
58 'a77fd8814a5978827de01a652f7b945f3439df04606434ced8998c8d77a82985292490e6965299aeb52f9da3d8069b4091d75519bd4ec8a15f70bc6d28b13498'
59 'c8372fef5837b0c9067e7f01d3310ddc6f9143cdd6891b6627f783a63b24e3b69a88e17b82e01686a0d43a17c692008c3b20a563abc647964f2b34300e6ffc1a'
60 '13216615c01b8d48d17889ffa22668c38568870d83ab30c542eb5b5620db305f02efb1acb99d9b5e89eb0a73a134bb336cb301f4de4e8855cae50efb099e384e'
61 '119fa1cc5da2cdefa22bbe9b6f76581faa74e05fa7b6e5576470fc0251c6e257f122fbba03754cc01f7c7251145cfa1cab4ffc2f9d59ff0c175a121e943a0f64')
64 cd jfx-${pkgver//.u/-}
65 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
67 ln -sf ../gradle.properties .
68 patch -Np1 -i ../java-openjfx-flags.patch
69 patch -Np1 -i ../java-openjfx-no-xlocale.patch
70 patch -Np1 -i ../java-openjfx-gstreamer-lite-gcc10-compat.patch
71 sed 's|, "-Werror"||g' -i buildSrc/linux.gradle
75 cd jfx-${pkgver//.u/-}
76 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
78 # build against ffmpeg4.4
79 export PKG_CONFIG_PATH='/usr/lib/ffmpeg4.4/pkgconfig'
84 package_java-openjfx() {
86 java-runtime-openjdk=${pkgver%%.*}
92 'ffmpeg4.4: Media support',
95 'webkit2gtk: Web support'
97 provides=(java-openjfx=${pkgver%%.*})
99 cd jfx-${pkgver//.u/-}
100 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
102 install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses}
103 cp -dr --no-preserve=ownership build/sdk/lib "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/
104 cp -dr --no-preserve=ownership build/jmods "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/
105 cp -dr --no-preserve=ownership build/sdk/legal "${pkgdir}"/usr/share/licenses/java-openjfx
108 package_java-openjfx-doc() {
109 cd jfx-${pkgver//.u/-}
110 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
112 install -dm 755 "${pkgdir}"/usr/share/{doc,licenses}
113 cp -dr --no-preserve=ownership build/javadoc "${pkgdir}"/usr/share/doc/java-openjfx
114 ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-doc
117 package_java-openjfx-src() {
118 cd jfx-${pkgver//.u/-}
119 # cd jfx${pkgver%%.*}u-${pkgver//.u/-}
121 install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-${pkgver%%.*}-openjdk,share/licenses}
122 install -m 644 build/sdk/src.zip "${pkgdir}"/usr/lib/jvm/java-${pkgver%%.*}-openjdk/javafx-src.zip
123 ln -s java-openjfx "${pkgdir}"/usr/share/licenses/java-openjfx-src