jdk-openjdk-ea

LOW
maintainer agony4001 0 votes scanned 2026-10-26 03:43:44.749651
View on AUR
Why flagged

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

Triggered rules

Low Few votes, recently uploaded zero_votes_recent

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

PKGBUILD

1# Maintainer: agony <27015 at riseup dot net>
2
3pkgname=jdk-openjdk-ea
4pkgver=28+21
5pkgrel=1
6_major=${pkgver%%+*}
7pkgdesc="OpenJDK ${_major} early access build, compiled from the openjdk/jdk sources"
8arch=('x86_64')
9url="https://openjdk.org/"
10license=('LicenseRef-Java')
11depends=('java-runtime-common>=3' 'java-environment-common=3' 'ca-certificates-utils'
12 'alsa-lib' 'freetype2' 'giflib' 'glibc' 'harfbuzz' 'lcms2' 'libgcc' 'libjpeg-turbo'
13 'libpng' 'libstdc++' 'libx11' 'libxext' 'libxi' 'libxrender' 'libxtst' 'zlib')
14# The build accepts a boot JDK of the previous or the same major
15makedepends=('java-environment>=27' 'bash' 'cpio' 'libcups' 'libxrandr' 'libxt' 'pandoc'
16 'unzip' 'zip')
17optdepends=('gtk3: GTK look and feel'
18 'nss: SunPKCS11 with the NSS softtoken')
19provides=("java-environment=${_major}"
20 "java-environment-openjdk=${_major}"
21 "java-runtime=${_major}"
22 "java-runtime-openjdk=${_major}"
23 "java-runtime-headless=${_major}"
24 "java-runtime-headless-openjdk=${_major}")
25backup=(etc/java-openjdk-ea/bash-completion/jcmd
26 etc/java-openjdk-ea/jaxp.properties
27 etc/java-openjdk-ea/jaxp-strict.properties.template
28 etc/java-openjdk-ea/logging.properties
29 etc/java-openjdk-ea/management/jmxremote.access
30 etc/java-openjdk-ea/management/jmxremote.password.template
31 etc/java-openjdk-ea/management/management.properties
32 etc/java-openjdk-ea/net.properties
33 etc/java-openjdk-ea/security/java.security
34 etc/java-openjdk-ea/security/policy/README.txt
35 etc/java-openjdk-ea/security/policy/limited/default_US_export.policy
36 etc/java-openjdk-ea/security/policy/limited/default_local.policy
37 etc/java-openjdk-ea/security/policy/limited/exempt_local.policy
38 etc/java-openjdk-ea/security/policy/unlimited/default_US_export.policy
39 etc/java-openjdk-ea/security/policy/unlimited/default_local.policy
40 etc/java-openjdk-ea/sound.properties)
41install="${pkgname}.install"
42source=("${pkgname}-${pkgver}.tar.gz::https://github.com/openjdk/jdk/archive/refs/tags/jdk-${pkgver}.tar.gz"
43 'java.desktop'
44 'jconsole.desktop'
45 'jshell.desktop')
46sha256sums=('125667383417beaf27d6a0b58db5e13b47f5c0674a76ecfd3d4b92a5bc318f11'
47 '3682e4ff646bf279b111fd9ae6565fdc7bb6fc01fe6adf19cb9dd0c0899c9fe5'
48 'cd3bcb8acec426d4194021ebfe0830c5712eaa2c0910bc3dd3fccc3acf0c639b'
49 '4ef04dd2b586c17734d0dc82c59ae0bf08e67b0a8d58fa7e1bb144fc8e7143f8')
50
51_srcdir=jdk-jdk-${pkgver/+/-}
52_imgdir=${_srcdir}/build/linux-${CARCH}-server-release/images
53# No major version in the directory name, so the default set with
54# archlinux-java survives the move of the tip to a new major
55_jvmdir=/usr/lib/jvm/java-openjdk-ea
56
57build() {
58 cd "${_srcdir}"
59
60 # The JDK build runs its own parallel jobs; -j in MAKEFLAGS breaks it
61 local _j
62 _j=$(sed -En 's/.*-j([0-9]+).*/\1/p' <<<"${MAKEFLAGS}")
63 export MAKEFLAGS=${MAKEFLAGS/-j${_j}/}
64
65 # configure ignores CFLAGS, CXXFLAGS and LDFLAGS from the environment;
66 # the flags go in through --with-extra-*, as in extra/java-openjdk
67 local _cflags="${CFLAGS//-O2/-O3} ${CPPFLAGS} -fcommon"
68 local _cxxflags="${CXXFLAGS//-O2/-O3} ${CPPFLAGS} -fcommon"
69 local _ldflags=${LDFLAGS}
70 _cflags=${_cflags/-fexceptions/}
71 _cxxflags=${_cxxflags/-fexceptions/}
72 unset CFLAGS CXXFLAGS LDFLAGS
73
74 local _features="zgc,shenandoahgc"
75 if check_option "lto" "y"; then
76 _features+=",link-time-opt"
77 fi
78
79 bash configure \
80 --with-version-pre=ea \
81 --with-version-build="${pkgver#*+}" \
82 --without-version-opt \
83 --with-stdc++lib=dynamic \
84 --with-extra-cflags="${_cflags}" \
85 --with-extra-cxxflags="${_cxxflags}" \
86 --with-extra-ldflags="${_ldflags}" \
87 --with-libjpeg=system \
88 --with-giflib=system \
89 --with-libpng=system \
90 --with-lcms=system \
91 --with-zlib=system \
92 --with-harfbuzz=system \
93 --with-jvm-features="${_features}" \
94 --with-native-debug-symbols=none \
95 --disable-warnings-as-errors
96
97 make images
98}
99
100check() {
101 "${_imgdir}/jdk/bin/java" -version
102}
103
104package() {
105 install -dm755 "${pkgdir}${_jvmdir}" "${pkgdir}/etc" "${pkgdir}/usr/share/licenses"
106 cp -a "${_imgdir}/jdk"/* "${pkgdir}${_jvmdir}"
107 cd "${pkgdir}${_jvmdir}"
108
109 # The JDK reads its configuration from ${java.home}/conf; keeping it in
110 # /etc lets pacman preserve local edits, as extra/jdk-openjdk does
111 mv conf "${pkgdir}/etc/java-openjdk-ea"
112 ln -s /etc/java-openjdk-ea conf
113
114 mv legal "${pkgdir}/usr/share/licenses/${pkgname}"
115 ln -s "/usr/share/licenses/${pkgname}" legal
116
117 # The system Java keystore from ca-certificates-utils
118 ln -sf /etc/ssl/certs/java/cacerts lib/security/cacerts
119
120 local f
121 for f in java jconsole jshell; do
122 install -Dm644 "${srcdir}/${f}.desktop" \
123 "${pkgdir}/usr/share/applications/${f}-java-openjdk-ea.desktop"
124 sed -i "s/@MAJOR@/${_major}/g" "${pkgdir}/usr/share/applications/${f}-java-openjdk-ea.desktop"
125 done
126
127 local s
128 for s in 16 24 32 48; do
129 install -Dm644 "${srcdir}/${_srcdir}/src/java.desktop/unix/classes/sun/awt/X11/java-icon${s}.png" \
130 "${pkgdir}/usr/share/icons/hicolor/${s}x${s}/apps/java-openjdk-ea.png"
131 done
132}
133

Scan history

Scanned at (UTC)SeverityRules
2026-10-26 03:43:44 Low 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion