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>
12 pkgbase=java17-openjfx
20 pkgdesc="Java OpenJFX 17 client application platform (open-source implementation of JavaFX)"
22 url=https://wiki.openjdk.java.net/display/OpenJFX/Main
37 java-environment-openjdk=11
50 # https://github.com/openjdk/jfx/archive/refs/tags/jfx-${pkgver//.u/+}.tar.gz
51 ${pkgname}-${pkgver}.tar.gz::https://github.com/openjdk/jfx17u/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=('450750bd37591304af716d6eec89ee10ee9bf19491db5c2e292d8bf4571d7d7ed0ad7b16df905e4068eeb5ea2dd07cfb895ab8bbf88529a773e475dfd4251962'
58 'a77fd8814a5978827de01a652f7b945f3439df04606434ced8998c8d77a82985292490e6965299aeb52f9da3d8069b4091d75519bd4ec8a15f70bc6d28b13498'
59 '7e70178525dc6824abd4e0c02b8ba30c7d76d0738a39dcc8ebb991962abbc8a72882b2c7abe7464c8e5c1c846ce07e807eab206c909afe89644753c714a5e16b'
60 '13216615c01b8d48d17889ffa22668c38568870d83ab30c542eb5b5620db305f02efb1acb99d9b5e89eb0a73a134bb336cb301f4de4e8855cae50efb099e384e'
61 '119fa1cc5da2cdefa22bbe9b6f76581faa74e05fa7b6e5576470fc0251c6e257f122fbba03754cc01f7c7251145cfa1cab4ffc2f9d59ff0c175a121e943a0f64')
64 # cd jfx-${pkgver//.u/-}
65 cd jfx17u-${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 jfx17u-${pkgver//.u/-}
78 # build against ffmpeg4.4
79 export PKG_CONFIG_PATH='/usr/lib/ffmpeg4.4/pkgconfig'
84 package_java17-openjfx() {
86 java-runtime-openjdk=17
92 'ffmpeg4.4: Media support',
95 'webkit2gtk: Web support'
97 provides=(java-openjfx=17)
99 # cd jfx-${pkgver//.u/-}
100 cd jfx17u-${pkgver//.u/-}
102 install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-17-openjdk,share/licenses}
103 cp -dr --no-preserve=ownership build/sdk/lib "${pkgdir}"/usr/lib/jvm/java-17-openjdk/
104 cp -dr --no-preserve=ownership build/jmods "${pkgdir}"/usr/lib/jvm/java-17-openjdk/
105 cp -dr --no-preserve=ownership build/sdk/legal "${pkgdir}"/usr/share/licenses/java17-openjfx
108 package_java17-openjfx-doc() {
109 # cd jfx-${pkgver//.u/-}
110 cd jfx17u-${pkgver//.u/-}
112 install -dm 755 "${pkgdir}"/usr/share/{doc,licenses}
113 cp -dr --no-preserve=ownership build/javadoc "${pkgdir}"/usr/share/doc/java17-openjfx
114 ln -s java17-openjfx "${pkgdir}"/usr/share/licenses/java17-openjfx-doc
117 package_java17-openjfx-src() {
118 # cd jfx-${pkgver//.u/-}
119 cd jfx17u-${pkgver//.u/-}
121 install -dm 755 "${pkgdir}"/usr/{lib/jvm/java-17-openjdk,share/licenses}
122 install -m 644 build/sdk/src.zip "${pkgdir}"/usr/lib/jvm/java-17-openjdk/javafx-src.zip
123 ln -s java17-openjfx "${pkgdir}"/usr/share/licenses/java17-openjfx-src