summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/Manifest.gzbin55188 -> 55202 bytes
-rw-r--r--dev-java/guice/Manifest2
-rw-r--r--dev-java/guice/guice-5.1.0-r1.ebuild (renamed from dev-java/guice/guice-5.1.0.ebuild)34
-rw-r--r--dev-java/j2objc-annotations/Manifest2
-rw-r--r--dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild30
-rw-r--r--dev-java/openjdk-bin/Manifest32
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild135
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild136
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild (renamed from dev-java/openjdk-bin/openjdk-bin-21.0.2_p13.ebuild)0
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild131
-rw-r--r--dev-java/openjdk-jre-bin/Manifest10
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild (renamed from dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.1_p12.ebuild)4
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild82
-rw-r--r--dev-java/openjdk/Manifest10
-rw-r--r--dev-java/openjdk/openjdk-11.0.23_p9.ebuild311
-rw-r--r--dev-java/openjdk/openjdk-17.0.11_p9.ebuild320
-rw-r--r--dev-java/openjdk/openjdk-21.0.3_p9.ebuild (renamed from dev-java/openjdk/openjdk-21.0.2_p13.ebuild)13
-rw-r--r--dev-java/openjdk/openjdk-8.412_p08.ebuild283
-rw-r--r--dev-java/sbt/Manifest2
-rw-r--r--dev-java/sbt/metadata.xml3
22 files changed, 1657 insertions, 49 deletions
diff --git a/dev-java/Manifest.gz b/dev-java/Manifest.gz
index c3eb2dd6339d..16c72fe98ed7 100644
--- a/dev-java/Manifest.gz
+++ b/dev-java/Manifest.gz
Binary files differ
diff --git a/dev-java/guice/Manifest b/dev-java/guice/Manifest
index 15750a886786..d98a8bb97754 100644
--- a/dev-java/guice/Manifest
+++ b/dev-java/guice/Manifest
@@ -1,3 +1,3 @@
DIST guice-5.1.0.tar.gz 650452 BLAKE2B 66c56b8605d189a3a6834a1de9ba6b7c6600583dfefa7808ae0b0b71d7f07746811a76326fc3ff56f2fd0d377f7bc3eb04d1c996ab2289eb48dff91d2f12b5f0 SHA512 b9719f07725c3188b8b903c8eee74ef59397f85f7452e38ef8ba2b3b66a56cef427d4dcee4e5d9c4033404a2f5cdadc2d40b6f7076b4c08fe1ec109910206e6a
-EBUILD guice-5.1.0.ebuild 2278 BLAKE2B 90567214c17a2e34c10ae83432e5f2cdd031ee325dcc381114df2c3b6c4bfbd3727b51bc37a722c27b5a3ab4f9fc621bc259aba3d1c03d8b4d21ef25442dc911 SHA512 7a1efdf154ccd4d96dc4c574fd9657a3863966706477b56be1bc71679829c25e69f87c9facca30a80d420b0ecacb066329746731d49f8f2064a41f4092f1413a
+EBUILD guice-5.1.0-r1.ebuild 1269 BLAKE2B ac1018a4791388265e2087c4f4960a40c41697143bc5aa7d8f04462a10f5da4d6ce3bfd058a9384db783a84dae11d32c3053ef68b52902b101940bfdb3ab874d SHA512 8ae8dd4b234df3bb7c4aa323db7295fcb330eba3aec8bbbbc26258a4fd154073c9d6da701d990c6e63a8be02028b01727ad93aa51824fa1504325f055a2695a3
MISC metadata.xml 314 BLAKE2B 096514ea3c668f82136fd956ee4df0fce9ed6c7b1b1b29988851c5e1e07a280df67186c7b036cc7db0440b668734068e08bf7d9465663a793e92bfda954b3a69 SHA512 24ccdea007adffcc8f5d26bd9dfaf19fb1b7ce74f936d2ac37e23874e68ae165310a3485ca1779698ede0b00f4549ed1c32b36f2eb61da1589c4e5f89090d460
diff --git a/dev-java/guice/guice-5.1.0.ebuild b/dev-java/guice/guice-5.1.0-r1.ebuild
index e1ee08998250..4f2610fff44c 100644
--- a/dev-java/guice/guice-5.1.0.ebuild
+++ b/dev-java/guice/guice-5.1.0-r1.ebuild
@@ -1,9 +1,6 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-# Skeleton command:
-# java-ebuilder --generate-ebuild --workdir . --pom core/pom.xml --download-uri https://github.com/google/guava/archive/v30.1.1.tar.gz --slot 5 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x866" --ebuild guice-5.1.0.ebuild
-
EAPI=8
JAVA_PKG_IUSE="doc source test"
@@ -15,6 +12,7 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Guice is a lightweight dependency injection framework for Java 6 and above"
HOMEPAGE="https://github.com/google/guice"
SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
LICENSE="Apache-2.0"
SLOT="4"
@@ -23,32 +21,17 @@ KEYWORDS="amd64 ~arm arm64 ppc64 x86"
# Most of the test dependencies are missing in Gentoo.
RESTRICT="test"
-# Common dependencies
-# POM: core/pom.xml
-# aopalliance:aopalliance:1.0 -> >=dev-java/aopalliance-1.0:1
-# com.google.guava:guava:30.1-jre -> >=dev-java/guava-30.1.1:0
-# javax.inject:javax.inject:1 -> >=dev-java/javax-inject-1:0
-# org.ow2.asm:asm:9.2 -> >=dev-java/asm-9.2:9
-
CP_DEPEND="
dev-java/aopalliance:1
dev-java/asm:9
+ dev-java/error-prone-annotations:0
dev-java/guava:0
dev-java/javax-inject:0
"
-# Compile dependencies
-# POM: core/pom.xml
-# test? biz.aQute:bnd:0.0.384 -> !!!groupId-not-found!!!
-# test? com.google.guava:guava-testlib:30.1-jre -> >=dev-java/guava-testlib-30.1.1:0
-# test? com.google.truth:truth:0.45 -> !!!groupId-not-found!!!
-# test? javax.inject:javax.inject-tck:1 -> !!!artifactId-not-found!!!
-# test? junit:junit:4.13 -> >=dev-java/junit-4.13.2:4
-# test? org.apache.felix:org.apache.felix.framework:3.0.5 -> !!!groupId-not-found!!!
-
DEPEND="
>=virtual/jdk-1.8:*
- ${CDEPEND}
+ ${CP_DEPEND}
test? (
dev-java/guava-testlib:0
)
@@ -60,8 +43,6 @@ RDEPEND="
DOCS=( {COPYING,{CONTRIBUTING,README}.md} )
-S="${WORKDIR}/${P}"
-
JAVA_SRC_DIR=( "core/src" )
JAVA_RESOURCE_DIRS=( "core/res" )
@@ -70,12 +51,7 @@ JAVA_TEST_SRC_DIR=( "core/test" )
JAVA_TEST_RESOURCE_DIRS=( "core/test" )
src_prepare() {
- default
+ java-pkg-2_src_prepare
mkdir -p "core/res/com/google/inject/" || die
cp core/{src,res}/com/google/inject/BUILD || die
}
-
-src_install() {
- default # https://bugs.gentoo.org/789582
- java-pkg-simple_src_install
-}
diff --git a/dev-java/j2objc-annotations/Manifest b/dev-java/j2objc-annotations/Manifest
index 2f4ad0067a2e..bc996216d456 100644
--- a/dev-java/j2objc-annotations/Manifest
+++ b/dev-java/j2objc-annotations/Manifest
@@ -1,3 +1,5 @@
DIST j2objc-2.8.tar.gz 29383083 BLAKE2B a2d288b95fac5d5fafbf5e3c8c7c862e41ba9562f6a3f367ee03574db0f07e030f7812de7d0cf63c97acdbbf8ddd8128fe14e89e97623d6d3cf7b85071e160b3 SHA512 f93a77db3a672691666de317010e455aceb20313a40217270cf4cfd082a0443f7f5cf6f53f06a1006d0a2788c199685a574b0acb435dccdc4e419a2340451860
+DIST j2objc-3.0.0.tar.gz 29562144 BLAKE2B b0dc9aeef148ee29154062228049b4db86648fb66b93d224d536a3c0b7e56eb4850d38761b59c6728b005e1520a7a3c07ef3bdb3662d9cad52794ec3ce533426 SHA512 b7e295e448caa61d03c12cde77266ab397f27a5632ab01944571736a79860fa0375279f27fcb1870d0452bde4d8b50ee453a88a23e5b92c1ef0411d4212f3779
EBUILD j2objc-annotations-2.8.ebuild 849 BLAKE2B b07b5ce27b53e3625abaffa68943535d798c282b8a91e25569092944f430de725cbce5958fa0db1a7ef1512feb569d1c2dd7f4a6eb6a4a3d85d74436a23d85ca SHA512 741976e58c092e249cf9edc90709e09e6d6679beb6c3f8125b87e7afcd5b824cf0eb3fb55d2f7dc5d8180cf1aef1b8620659fda2f865fc10c0559b500df6a7c1
+EBUILD j2objc-annotations-3.0.0.ebuild 728 BLAKE2B 82115eb04484d671b16b71694fb9a8d8910e325f695b263fd0dd07e28f9bee230b9ef0f49c4ab7d77f62e437ac418b4c2263bb9f5bcc56d242e9ddc4203cf83e SHA512 1ff2e1cca38247a2c9c2286bc39800e7fce44fbd9754c6a242c706320b9d8a70ea95659a4b76418669e25cf76607b028294248fe9c2b89ff28843c999d534bff
MISC metadata.xml 315 BLAKE2B 5403ef9a3b61aa4b5bef35fe46ff921be35190630f344563cdd60c8ca0fa6e3f8b1e612ad05df478f69257d85f30c36cd265e2f9664cc41d67e05fc47622f784 SHA512 fd176c272bbae6a6c861625828e363bebee5d92298540a8ec0bd9574d8adbc3f44f273ccb9ac576ac097a9d1c9deb8ff28c9f59ae001e951b030d5276f3a95ec
diff --git a/dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild b/dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild
new file mode 100644
index 000000000000..ef37166a0b5c
--- /dev/null
+++ b/dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.google.j2objc:j2objc-annotations:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Annotations for the J2ObjC Java to Objective-C translator"
+HOMEPAGE="https://developers.google.com/j2objc/"
+SRC_URI="https://github.com/google/j2objc/archive/${PV}.tar.gz -> j2objc-${PV}.tar.gz"
+S="${WORKDIR}/j2objc-${PV}/annotations"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,README}.md )
+
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ default
+ rm Makefile || die
+}
diff --git a/dev-java/openjdk-bin/Manifest b/dev-java/openjdk-bin/Manifest
index b7c87964f3c2..287a179707b3 100644
--- a/dev-java/openjdk-bin/Manifest
+++ b/dev-java/openjdk-bin/Manifest
@@ -1,30 +1,52 @@
AUX openjdk-bin-8.env.sh 607 BLAKE2B 447575fc213003930ba6d6bbbd7cda0d53f53b16e3679fcb13d219cccf3525c7dfda755c79826b4d3c7b238502ed5ecaf4c8514971e576c756f4fc168fd9a0d2 SHA512 4cfbe2dddc89408824621bbd2036afa2966d550e6e189a8835f78b46fe91305221d8fa46219e9c53c83c9f73d83cdb1208bc78a46b9115041511b97b70abbf1b
AUX openjdk-bin.env.sh 398 BLAKE2B b83d85e2a4e0dbeb24b8c21fb442a8964e55eaf01125cd52f5c930cd67b95b7d1744362cbefe436e4f4115f0b7600860200d8f134b241b6b60ffae6b807b476b SHA512 2c2f753a05154d17a7c324e61d3e4513119050f44d2a8d0aea5c6e2542e9989a955689a97d47fc1d5c710a056f2ccc7b239e3eed3b2d516df6b2aa7450c44613
DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.22_7.tar.gz 191713436 BLAKE2B 2d0381ca8dc4bdc07330f79c7e290bdb60a28fe21122d4db1810dc036e7213071d327470b20361db1435fe2d5492e7d3815f3e244597d3d76a9f7894b515783f SHA512 a0772607ede5642051446dc742180fd4e42fbe78602eb3b874b00930ea4ba19eefdcf6a130f378b6cc7dde414a3db2259edb1ad570da4a7951a73bebc5a90b9b
+DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz 192013902 BLAKE2B 6a4b47b9a3397d3436bd55a16a459a3cab3f8a2a7dc3285b3bde8db13f0e66d5e094803df0c5901a17272e6378161caada6f27845184e2efd17a6761661299c8 SHA512 90e53418efc7c34d7cf0691d566f07a84f02bd2d34cdee0c9c343e27c8d9bfd4d1bf86f104ae33a47274932ab8ba6ec8071a35e7d613129d03e439ae3382452c
DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.22_7.tar.gz 182591395 BLAKE2B 858c6033c161dfe6c1475037bce5d538ca7b95b95b65a75edff03d0292e64d1ac2e3c2ed008b52938d9811e35a94ed694df2801605b55d6732c6c1c1b68b547b SHA512 aa0be475706f6cca490ff81389e131fb512efaa948d722b108a7060355af77134210c2509711f9c8bf4d32130cba813dc460c093d831ac8de539571ab3d08f20
+DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.23_9.tar.gz 182785851 BLAKE2B 453ca29859e749a9050f8b6627696ab6d38ee5e83ab69b1d159eb3b7c0bae68104cf68ca21b87123b4fc61059e528ba4ed0ee29fa4759f33a3cf46182f52a48a SHA512 af8ed3659f8ff07f5e5c135d96a7368d326f5b19e3d73077a3fa701716f6e415d4a784ff6c5f81267eb1b3d2e171a688126253f1c3197fc80ea260826ebad5a0
DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.22_7.tar.gz 177146946 BLAKE2B 2e285abcde91eb578c88e81c6a737d6c6e00d58001325eaed7fd332d4d42588779192ae73f3de598cf725c9cd08860ff3a0db29f7fae54a6a404cbdf0db0b2ad SHA512 6288e599a54f1e2e02dd0eef5f0aae051ae8b15ed30e924c7018ac52d2eeb2572934557b7e722df7f704568656c8a8f93797dd2e86fdc3f0f32ffd004f803419
+DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz 177453532 BLAKE2B aa98f381f2ac4f208ced4dac4f4b01d20cfd27c8ccc75a0c41db6a57b67ca11d87b8133cb0af96283f646e5e90612f9ad69db5129e6f50518ad2eb0a53c86db1 SHA512 c590fa032593db48531d49977c95d1f884fe751472d927d0d0bc15f36ec35f71ea53c9acafa3dc00c4b25e88d4c18ab590b42f8057a277e16947c3ce31362381
DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.22_7.tar.gz 193744131 BLAKE2B 2cdbf676ecc860dd8ec13d959f9f63537e4b14feb0627cc360602a377c8a7193a2db67cb71f462939ab252f2ff3be1b46a15c25a7c1c1f1632254b1ea09eeef9 SHA512 81dabded0d6cee459ade96992d4002910448aa5fa091fd1b6c376a585c382d449bc63f5e51ba0c21e5fdd81f3e1d58e1d27f0b6016daca775644610087f3b090
+DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.23_9.tar.gz 193956832 BLAKE2B bc334b59bbb021812ee7064b1915b6106923d41a74a3acf5b5d8fbcf50f6e0d467a96da22f996252422b08f5c7864418c552a102a18f3bd9cb14e5b4904656e5 SHA512 f0992a7fdb1acadf8cb19a94822e7a75f7453033cc0a3432f9efface7827b4a7ebb1ff67a81774da83844afdb046461415f50ddf11192863e88ab06889c86836
DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.22_7.tar.gz 195002045 BLAKE2B 1898bcc1c1d97668238a13c70226b14f325a7c5be55f393ce2e6373fa0764a38633511a485257d05e173670e20b8c0195fb63d7143f41a1296556e5d59a8fe00 SHA512 00d75269a88c3d879907408f76ca1ee5a1ed48914e1ac27fa4faadf66a12fbccd6235d23be6c0d096a508c6ed996884ff2fe206290c061c2542835050476cfa5
+DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz 195220527 BLAKE2B b2f024fdd2d72e78c86f562fbd37684c9d9639472d66e15b4b882c35241c500c09467e97440249bf69f4e63ef99d3f057b0e79852b67d55c5518d041cba2d657 SHA512 ccccb5003b78cff0cbf471d9b885ebd5805b5a21dd71afdb03a0d447cd6715e781dbf01f11970f7632b8181147fe0090f7fe8fc46c8732d2b17f0978f01934a4
DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.22_7.tar.gz 187409838 BLAKE2B edbbb534fad7d6b50c79253d7c8bc1369f413fd1748a4f160003db2e01d8b907c115a5a3815de85e25a16c74bf0d316cccf7e0a508a488c51c476511876d5d54 SHA512 3371785f6bcc27dea59b074798795c91f3a0fc2241ea24d9e04bdb98fd77ebc1ccb058d1b34ea56660a7bac92e60192396a9d8b85b8983f1617bddf50d118276
+DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.23_9.tar.gz 187689918 BLAKE2B c1ccebd2bfeccdf64f1ab0c781e4ba5f2701f6c70de81486c6b4d91bb1d1df367f58fa66bf8f073ed47413649905a306ad3f75c6696e1d0510ce02fe3453d255 SHA512 93974938c10d58b182a7bda49e21e26806a01a03fe72915ca559df3e02c694b3b88ed11c49987bc2ca7c1acabda0892d8c22a4ab19ed8b796dd02f29c44dbff0
DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.10_7.tar.gz 190867185 BLAKE2B dfac2c4383af080b8101e73d141f6ecaf38f44a0b8e88fddf8e33eb0454fccb22075e00a8eb3031c33a0d63a079da634b128766f4ab4fed70c8da999c8f8a568 SHA512 74447bacae664b5a1a420605d1c3b68a7be8deb230cc08700b23bb159ef10acb613595505f711906aa132aec2a25d5151f178cd9982d0d254a4d31a7396b4aef
+DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz 191052267 BLAKE2B 837cd3f3e9cdff7b66d1a8e10e2e8ebb9db1168fad2982fd523eb8067ca017efdc05e577b93af74623558d04a8458dc1d790c9626e7ed2d6568bf7fc22a44925 SHA512 eeeacbd0f8daa1d62663f7ec95fb7dd3ff855a0187347e3c1ddb4a5d13e494c1a940b43b5fdf75480963d65dd4d94330570b751fa7cde540124ed2164c176870
DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.10_7.tar.gz 178168341 BLAKE2B 425cac786cd7bd758d40ad76bdfc96969e2ca2b1ecf20c449a7e42b77020881f7c7414099b7ff9df482ce4698c680af4d819a928efb4e4608c54266412fcb2f5 SHA512 006773423fa46d61d1111a74bf1a41d50cb419d4a2855d0257a11282f9ab966a59e6bf22044b46d3a29041c37942f2f69780ee38002e8443da2bd40543ce0948
+DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.11_9.tar.gz 178367345 BLAKE2B 7f1c8f77ab8ce9ce401947e51cc3051491df1579409f7ecb73107f091b58d6e7fce2004604951dfad019cd60e8da84fd4ee9f8987f92c9363889b310ee098e54 SHA512 0283452e56b3fbd85af33a7939ec8ae69624241ef07224152de55c5aafb1a5cb8423b8a211b5fadf8f5ea50aa0e5ed8211d02abf1398473ddf3ef13f2ba3f1c4
DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.10_7.tar.gz 189087918 BLAKE2B e8c70966cd362ac26e748c4efb16bbe3816d27bbec5d3b2448b77bc07f8f17b6c77dd7cddcccd1256e621db93653e3aed2ebf1f895606023b00fdf3a98232b57 SHA512 17d540bfa9fd458fb214dc550df4bd1bd563630712b23549d61182d3c5dcf39cf016510b2318655e9bff594e40b960d7754200ba6184ea23bab40ed2d8e9c06f
+DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.11_9.tar.gz 189349607 BLAKE2B 2508ca965c27b1cf6457a595418ee9cd0450f9633a2fb80605a58a4bb7546cebb95b04c0d66bb14107c75fdff9fb678d78cdb879316929a3da6863579d4df9dd SHA512 bb76dcc65f65bbd3a256a54cea00eddb25312f1a1e2ed30fd3088bd44e9f8db7bb2ff3a6776b5ff6733ea7afc02928ef9e2bae296325fb1b8eb9b66b4e6f4a87
DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.10_7.tar.gz 191584458 BLAKE2B 77ad2b213ee0957afdf6c204b2c987f568f62071ef282b8eb44d041980e44d5b964e4403324555f98caccd8736278ede2b486a4647ffbe669d4a285d19bf6507 SHA512 f808ad1d20ec025925653f6fe4566d6075c242b0f60f3dca3d0b46ec309ff3dd30637b9d2d2937b0fd2dff5a3ffd9e675766ea56a6bccc00a991266101d63db0
+DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.11_9.tar.gz 191737628 BLAKE2B d78a0a64bf936bf85a4f9fe1c9299d1db4773e10cd308afa5167d61ce35ea7415d2a94a1dc160345fa5aa3d3a7b730235801789db147d62dae621572ca060fe7 SHA512 9ae308f12b5c74b48aed4ef2312d7e0b23e9fa73b7d78eb3576037b0fcbcfc3a5381ebc448fb41279e770d5994c46bdda6822b97181fa3d3365da63c8b0ecadf
DIST OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.10_7.tar.gz 191453728 BLAKE2B 61e54448c7540f43c11ec55ffffe07ba43bbb60bcbc2acd07a3a06562ffbf7bd5b25c2a91540ead82978c43ef30ac2adbae1554d0718156b28bb34d46882020a SHA512 b7eded9bef2bbfa38b6350914df472e10daf82600af8090b59ce01cd0d2e6efd02f0bf28920cbcd3f7da2018e5642d8e5a282337ad969c8b9a8c35c0ae4890d3
+DIST OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.11_9.tar.gz 191615499 BLAKE2B 4b342ebf3da0cf49d448b95dec6b04819d2ab2e31327b793b9d9aef86b4e78ce33a54995a5d0608d14214f3d0fde73d0ad334c9b0e3c5d2cbb6d40c4bb22637f SHA512 7773843e3b2a02ccb70c3ea49639c723f5da715dcb3e27ed85dbd2182648621a5822c49728436377c8e8af4d20231ba5b861e45be17efe44a5a81a92c225a851
DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.10_7.tar.gz 192205930 BLAKE2B 1c1ae9515a273ff7d7d4ef806fcb6d101e127f224912626982fbe848375f240bfca69815173b65c8c3ecc7019bb681ef43665bf3fe82d5c4333da057a35c976d SHA512 fcbb1bc62d484a8b851ea22d725921f72a4ce7ace33c1db737e7294aac17b74cd7ae9a366cac09d328be66e742916f0191fafaf531641610e652d24390df591a
+DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz 192396023 BLAKE2B 1e5f12041d9c17195f242d7d36edf6995b1f71cb52ca211773faaa0cca6af983ec8c7885d58d4b87b38a0a26f71d088c104cdbcb84fdfffd97643f2a09a2a4ed SHA512 f11e61d91ad27ca31196ded87d06b5e379e4e652c09ffdd5c3d73cdc9fe6c46cd7785838c70514897645213ff6c6948227be27d7fd773949f1055338966ba275
DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.10_7.tar.gz 180364858 BLAKE2B ded64698ee98c051b4f2bdbf7d30eb27bbc5418742306bd07fe87b0cf7cc579adc553bc2a16f8b15d2fe1950b463195ca3f3d414494491435fca052faedb8bf8 SHA512 4c199bbf2584d4a360caced88bb6f297417469334d3a3007f5a172f2fd3a41a492968fc0ad32a4f8424e4d6712d01060aef2531957edccc100f6cb58bbfce000
-DIST OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.2_13.tar.gz 206857501 BLAKE2B 108d924b2f41d179ece7678a18b5805b76eb187608c4a698bd77d21a5db7956f0aad34764addb507846c11e41af576c0e99c578325db9f2f5aebed02b0bff4e8 SHA512 a41a31915ea64cbdae4e9b81057df579d8456a5ca5e224497e862dbb207275f9d84dd91d9c9cce4d81b03d21d3d4305e3276d064ec1e32b6d1f272f157c82f56
-DIST OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.2_13.tar.gz 208115806 BLAKE2B 1462c0cc0488d02109035b06e17c68d5ee21c62b8565e214f91980af8f1bd0e689c439fb546d3e9556b6df42b545c6d349601cf1bbed77c175dc7d5b1b8e0959 SHA512 7991d8779aea00f9016a37dd290b3b4bd5189201cd87425fd337f346907887a61e7030d4180cb3d60af3f5f478135bec1698235c0ef2c2b2cac73a4e1d1b630b
-DIST OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.2_13.tar.gz 207838511 BLAKE2B 1c2dd157fadd7d8ab0660dd181de223431fdcb5f4ca201ba3c827bd044c435d8ffd059600f38b378984bb002f03403c16addf999ace7128a426b0948ce9b4971 SHA512 1b2f58c224bb6fde53a4e5d2693d881ce61b47ac36ff735558fb38a8d30e4826fec046048d3681ce18e1c63a60e1f999b8f474ac6794dd1197bd88926df3d0ca
-DIST OpenJDK21U-jdk_x64_linux_hotspot_21.0.2_13.tar.gz 208796351 BLAKE2B 64741e3e58c08424ba6c7f46af42e391e3172a83415fc346b22ac92c9eeb6f1b42bc02d6392f9ceaa449d4266ed58872600f6cfecf622739f7496676caeebcda SHA512 691ec4d447933c59696944cdb5d5de86fc1332b2c730dc6624f546c0d30456cb3583d53f38d7531f69195e807092c1d03d923d73d5e6883185cae935db1ed7ce
+DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.11_9.tar.gz 180563846 BLAKE2B f9bf368e39d95cce40413caeb98192f88f90cad7dcb486ef5e1d7369cfc346603d37de88c049930b958043621e44c103e020354eb80faff0cf83fac8dc7497a7 SHA512 999ad1fb7c822e9000e734c86e70e73aa572ec1a75d14219b391e9d358d1dba1fd0d9d568df4c28d8ca88fd4341e24feee2f840b6c35c4c530d2cd174dd797b1
+DIST OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.3_9.tar.gz 205794447 BLAKE2B 4d6ac1fa90b81be10cd32be76665dc26bae59a5c288d1b1f87e396ea356bf46f73b58db06b5b09417714f4638550d7ade55792f276f39dabc100345efd18c28f SHA512 b9cea7a7f4405c66722b3562e0ded7362475146753b1fcc4ad0d068264e9f228b8547dae704c6ce2be9c4a879902c2fbd93524176ffa02ddcb3edc4d4f6759cb
+DIST OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.3_9.tar.gz 207595331 BLAKE2B 7358f61aaee85fc5ac584307f1d5372de17aa06676aa823de157236e4332184b9212e74cc4214845a9e834ebac88d41ba185d1823257254174a960db88cb0574 SHA512 dafe0f31867f2ef817f188fe1222adefae72fe4443ec95eba8f18d60c141bdca0f63c2591c834c470c7b15d011618c97c45bbc65e746cdc47ba9be9a2f2ce523
+DIST OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.3_9.tar.gz 207940807 BLAKE2B 331e80062987c1932c24c8ecee8456240261ab43da04df2e5782f28c9683226e74116b2d8b5dac7047ce62e1ccaa5020fb9d94b98c515e9c94445ac8165f9692 SHA512 149dc0e7f058443787e99641b0c996ea7ac15d171abcf03778ca6a44769583cae5e507415b16fd8de5015d2acfef4705910cd43289cdfe624d07280e7b7ad961
+DIST OpenJDK21U-jdk_x64_linux_hotspot_21.0.3_9.tar.gz 207698369 BLAKE2B 27dbfba74a3dc46ff98c982208e10c1c40940cfb90db0d756e8038cbb1c5f45e30ac3ca07b408a3593c471d0f5ea75bb652902d49786490e9ad5ba290ca91162 SHA512 cd9e6054989a838004490f6162f6831397e5498033777d90da224f0aa4809e0f5c8a14459e6f30d441fa1238371d7db9718e2c606c38862b803dda824bbdba1f
DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u402b06.tar.gz 102121884 BLAKE2B 78d6cb02f1c264eeb47f0ed7c6ea63cb0923119fb718be4f493423e9ef16546d810fadae82321fd1465528375383f0a65c6fe1a0bb091829ad14a9fc1f91296c SHA512 3a1bb7f684032d6130006597d1665ff063490a155bcbe720bb9cb94ff0368df1d86646923dad8965e6cecc12d05618e348f1b9d260a9fab3b9fb275c3350cf91
+DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u412b08.tar.gz 102116126 BLAKE2B 19f8deee04fe5521323ead5193ff7b383979afa32c4375bdef7ce53b868dd7cb317bcd208b94d373c353f5480433cb3a28beeacbb7f42b501058acdfe6917079 SHA512 e2c5e17eda6a25b8f12c8fe5a50b5c58a9b52bf9cdac7213e2b0eb7ea0c99ba0d3c31ecbaea834443fac12adacfe506ecbe3a487abd16846c6619678ac24c4ee
DIST OpenJDK8U-jdk_arm_linux_hotspot_8u402b06.tar.gz 98319479 BLAKE2B 6b59e92767566e8abf7bd360f6b0b543ceb514c3b1677ef1610596998390dba74e54cd673cff764677c11316f88ab05fe0080549ab063eec5bf42ac6f97343af SHA512 6595b35a5d883d17de56fcac638a4936397e01c2a132269ce66e325a8cb0fc6b437ab16062c1decaf5a93b6597e72034e2aef1ddbe5442f23575f31504a3767c
+DIST OpenJDK8U-jdk_arm_linux_hotspot_8u412b08.tar.gz 98318417 BLAKE2B 11ec1cb2e793da8252511dee62ad193b67b3bc5c8aa91dbd6b1e8aa2d2f7e2e342528d145e0eb9e26b17b7e81c9ff17586f068b4d146f6789b157026aff67099 SHA512 84eab7b032fb55e02870013f9a87d0898ece12c52c560c0600d8d2ecb4901cc64e6e5cd44375ec6785a5c8f139263e8b6b32d348149e22200c962438fabea9fe
DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u402b06.tar.gz 100525497 BLAKE2B b3ca75fd946ea70dd8fcbc444b361e02b3249144795b0d2786892e6ec668802ae3b2f082fabe1d9e91e5db5877d6774f5c56f5fc382b38e739070e54e95bdca5 SHA512 e00df5042f7f813153689e33e7e64b23efbe2b64d8a11e60072f50f0ba38a61cf66214c535d75175f9ed99f67c22857ccc36d62c9c34962a7385e4b9c880c5d0
+DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u412b08.tar.gz 100529230 BLAKE2B 1498ff1c4d89f65a41a565cf3d6949f715bc8783a33b70e6cf7b44e513ddf7ade1242e2a0a95b582813ab212fb2367a5f17f794f54b5e458f0e23dd22e74123d SHA512 cf80eb66063559d4fbe062d8a198490468e4936c9e0b27ffe04912b4468a2d1f4d12fffe5df5fede38b44870b65a7f0cd85545f7031957b12a7d1a368a7770c6
DIST OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u402b06.tar.gz 100908305 BLAKE2B 3beb70ed7c99f80fb338fd8580f6b6ee9a4af0d7034abff59c0f8d42255fe83a3e9b9847d82dd4bb793439a64dc9d5fcc2d407f4bfd09625bf8be3ad92bf0e5f SHA512 e5563646a505923c1f2342a884c94e24c06de14dd6da21c3cb010bcf1e4c481ff7cdbae8cecfb70bf52a4c5d23a9fa87e38b1c7b8b84f99b0a8b3e8ca25242aa
+DIST OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u412b08.tar.gz 100923084 BLAKE2B 9c9b0d7f95983a44f040efa83c69100163b1450d04102000d4f75361e9164024697380c055fdb31bac2ef4dabc05df592bbf342e716d8f438954b89236ff0986 SHA512 07b721e57225165d3dbc51c1d8f79f269e75fa3fe946ab76e933d1d3645dd19b3e7e8ea924d4f510382b5bcebbf073e262010c0e4655e0282379cce9d411eeab
DIST OpenJDK8U-jdk_x64_linux_hotspot_8u402b06.tar.gz 103003119 BLAKE2B c97a924fe236ec0ad30eb70fb9ad2bea19065a22622d68dabb86be02eccdb30707bc00af98f46246fc8242f0bff4be8d5becfd32bf6cb015dd443d94e2722489 SHA512 22259ee3d98ed49e38f7c78efc200f72ee1fe5c02830e79061d16cc634df3276d1e17a113354bfd3d575ebf3b56e128848d03ae3dd5c06cc1954e33ad395b9e9
+DIST OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz 103005511 BLAKE2B f3df80c160d723df67700363ed6f40f3308a7625635b5afcb1656c77c9f78cc2796c5878aac0bda6cbde8d6551371ed15223de6aa8e75c01ba3e4848285a88eb SHA512 6f7df3fbb34c5971b7bbc4bafbe0179983abfa0aee212cc810e2656697cf0a7f4736cbbf6755cc88cc885d7beb5c15482a21d5287c52bae560988cf80908ca05
DIST OpenJDK8U-jdk_x64_mac_hotspot_8u402b06.tar.gz 109474943 BLAKE2B e277cf06d893aa75f9aee91894fa6177c52fa556128614b80755af3c1bb16036daf972b4267c5c02d6e187c6bd52713eeeffd93e23f8d7a2897ad01149e8545c SHA512 718a120a1c6a861cba900ad267f646177e1b56d9646068121341ae9ce52a9ae9a20afa173d85c4870d539105f94b75685108c019da84bd23e973ce80e2356841
+DIST OpenJDK8U-jdk_x64_mac_hotspot_8u412b08.tar.gz 109506799 BLAKE2B bdf043df0df0f0fe100e80a464a0fe8c60e7c80ab7ca5e7481c8f7458b793a24b0f2d93ec482b5f0de7a65b3d068322b7b3a9e9c9ec5c5b61342cb85232db847 SHA512 4d774c3f0794d7403dfbf953e7e9d635b71c463bb193ffb4cc98e98455ff7a448f0bbf290a28c9290e3d9affc7390eeb4be88ad48cbfb60d9f605e57158f5058
EBUILD openjdk-bin-11.0.22_p7.ebuild 3174 BLAKE2B c20c05800f5be936ece355f8f4434e8ef6556f680cd7a784b8e40d601a883ae679e3439c33e8ef1db722db3153833ba0f38858483eb226c3236ea3d2c137e78f SHA512 f8a17638440efd97e0588cbd0079ff6b3cf2f9eac9be21f15c2fb17ff2ba84a74c9321b47c89d2a278aa26d23a7d2329d398ca639566edc36f0265fcc64835d8
+EBUILD openjdk-bin-11.0.23_p9.ebuild 3177 BLAKE2B 2c4a38a2778c011c76d1761acaf6c1b2a5530cbe4d33d95c00ae4c9865752b151cf2895da28ededb943a11648706db14b1bbfdb7866bf914803a70729f5cee61 SHA512 bcf92152ce0c59fecc18daf8d4f8f565ebac142ca0fee1f224480da122d5167270039768533868b2e038fccb0ea0bea06bf1738085d88ef38ee9ca82584803fe
EBUILD openjdk-bin-17.0.10_p7.ebuild 3206 BLAKE2B 6d5f39a34005e0eb44836331c1b93a491ee1a6cb78e4a12494626316e1e6813182212c2eeeb480656adc276ff1b3e548ab4b9733f5826ea7b9e51ba469649c99 SHA512 7844a7f79c66356e6a7c5cd18a6793bb4a86a408de72d784c5b888d9facc2aa1706ead137f2a9c140ba00e566c14d0a06389fd9b664aab587307326b1a185311
-EBUILD openjdk-bin-21.0.2_p13.ebuild 3119 BLAKE2B a96e80c9f4d778d6fe927a08c96f526c3767d9eeaa5e478cd2d055ca78ca62168eee7af0ab43fef767d7ceeec01ee3862e4f86cc542f579476086c80316bab7e SHA512 2c902448b91a56baf4b3887932d6fb9f649d26c29d504b93de5ee2cdd2b6baf9468324ec23bd43aa8a59306ecef3eb4a59fbbfe629642df2239359289909ff7c
+EBUILD openjdk-bin-17.0.11_p9.ebuild 3209 BLAKE2B a650a38c046168cf26a56ffd28daa0cea3974a504d0beb2d087e597aae0f5dfd48f9aa1b604fbbb9db1bd07a376c577d9753aec79721f477f90a0ebb10eec466 SHA512 110e0ac2d9f1a199b0a5a69a6d7bd66e28ebb484e9d91a2a25080ff95eebf5bbfc132e6313392bd4215c650547979e24a73a394f340d3d6e424a2bbd9df4ec11
+EBUILD openjdk-bin-21.0.3_p9.ebuild 3119 BLAKE2B a96e80c9f4d778d6fe927a08c96f526c3767d9eeaa5e478cd2d055ca78ca62168eee7af0ab43fef767d7ceeec01ee3862e4f86cc542f579476086c80316bab7e SHA512 2c902448b91a56baf4b3887932d6fb9f649d26c29d504b93de5ee2cdd2b6baf9468324ec23bd43aa8a59306ecef3eb4a59fbbfe629642df2239359289909ff7c
EBUILD openjdk-bin-8.402_p06.ebuild 2927 BLAKE2B f62bab1ebf203a714edec548e16a08a96333012887a9a122d4f3d4801e50f3e9e5aceef1e40ab41f5fa312ef2884ae9547a96d2e8fa058bb1d69ad24abb74a97 SHA512 4712fb05b86e306c764af75252d4fb1201295bfa92817eb646bb793a56708c7655523b703428ca63e5e63d3a40bf77d4266dc8fa6244357702868787385bc0ef
+EBUILD openjdk-bin-8.412_p08.ebuild 2930 BLAKE2B 171c6b9fb3860e26d271e5750e71417d7b7c8bf772d272db3a77a7affacd067723307096d6a1963e233596163437e2e6038549bed3cc2d98e6ae87b3538dc8c2 SHA512 8602499837cbc6b883f470b2ee2a8bbb0648d569e64ae9c88ecf8762f444e6abd4edc4c8e7ec5cd82c89d8fec0fcea7e9d1067da07e21fd9e19055e6f2fed83d
MISC metadata.xml 700 BLAKE2B 1222dddf04cd466c7e3f2dbce2d70042a8fe6b0163ff30159990ef590ea467fbe9f41be2abdf24ab136ee30d5a6a9a810c4cb6637e95461d6dc2c60f27ceaab5 SHA512 fe2a015a191e687f0c2b8a19f99187c5336952f1c096ae822466be4be00b95e55dec4e71b882737c4823ec0790261529bd9f5fb84250be246f9ee4c49369bf37
diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild
new file mode 100644
index 000000000000..5016ef81aadf
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 x64-macos)
+ $(abi_uri x64 amd64 musl)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild b/dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild
new file mode 100644
index 000000000000..1e59953a44c8
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri aarch64 arm64-macos)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-21.0.2_p13.ebuild b/dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild
index c45432f5aea4..c45432f5aea4 100644
--- a/dev-java/openjdk-bin/openjdk-bin-21.0.2_p13.ebuild
+++ b/dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild
diff --git a/dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild b/dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild
new file mode 100644
index 000000000000..ffff2917ded0
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//-/}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT=$(ver_cut 1)
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+
+IUSE="alsa cups examples headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ arm? ( dev-libs/libffi-compat:6 )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )
+"
+
+RESTRICT="preserve-libs strip"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}"
+
+src_unpack() {
+ default
+ # 753575
+ if use arm; then
+ mv -v "${S}"* "${S}" || die
+ elif [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # this does not exist on arm64 hence -f
+ rm -fv jre/lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v jre/lib/*/libjsoundalsa.so* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr sample || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ rm -v jre/lib/security/cacerts || die
+ dosym ../../../../../etc/ssl/certs/java/cacerts \
+ "${dest}"/jre/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk-jre-bin/Manifest b/dev-java/openjdk-jre-bin/Manifest
index 0ef2c07bbeab..58cc9de7b9cf 100644
--- a/dev-java/openjdk-jre-bin/Manifest
+++ b/dev-java/openjdk-jre-bin/Manifest
@@ -1,11 +1,17 @@
AUX openjdk-jre-bin-8.env.sh 573 BLAKE2B 02f032b60578e95a5f370afce4bec7aef12262b5f87c854a4ffc3844a4db5e88abcfb6e7539152b05e447eedb99c58e0a5944ffc2af82c10b5b0f04e447ea1ef SHA512 79bf447ffb50782348396ed1a64737f0a4adacfc21ef70d5f652db782e9492cde89f2ba740c28b6465eb4a6c32a483b2f50daaee784a03ff3d371e843f712fe5
AUX openjdk-jre-bin.env.sh 342 BLAKE2B 194a81416378ac4729fc333f40c210bb33dea66cfc2b6a5341aab048c63f2c7c9a7bf9c45f10f5d23e2d7dd99cde80b03e79a79c30d08b6be90d6d8d6e850ec2 SHA512 6690285c5fa3866731ef28e0ff2153395e94a3e37837bf334ebea8fb132915a37002d70457810dbddbcaff78d5404f14818735ab6a722456780add4ad9efdafd
DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.20.1_1.tar.gz 43033465 BLAKE2B 484ec2b8512e2c759840157608ae4b7cdd2729533589a8ad1ba718779e88319fa02da4c9f59b56dea93123646ca7a55e84675985679a25f5163d7511b8147f66 SHA512 4a962e2ee8c885753b7bc25c3a30af307bee2c8829438eb85b9a7b20abd72fa22b340cfb9b6a0721e8fb00379bd3a230653daa52f5f1e3e6d5ed028ea2066c99
+DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz 43361001 BLAKE2B 7f5fe24de2f0967ceeaee783430fc1aa9d8c510d955eff2e10c9d94058a2985308e99a57f1dffb3adb3cee9d90d0a553abcb5438a41a0cda054b0a260e435f31 SHA512 82b4b021b7fb136a9016623cd6ab7b4ac1f5fc3bff69594b74c8b2b0305d6b0c7d20d12759062826dc27ce0b50ea176bcec76960d3d458549e11a5452b7df014
+DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz 46382823 BLAKE2B 79612a8a73cee7a8ac022779a12077fa613ff7b18d8d5d198c42ae886cba21c46a1919422249696a74b5e5491542b88b57244eaa74f3b1bc8ae63ae851d10d40 SHA512 a98534b49a71a1bb6488aff4f1d2fc4fdcadfbaa17ef1ca3003568aed8498b3d3618c065334dd6bd9cffab0af15b6cbc980353e09da66c5ac69f0c96f9b0a889
DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.8.1_1.tar.gz 46332104 BLAKE2B cd27d457ecb64a17cd86fb7f348e7868b6a5e4bb59a98971dabfcdc213e4afc70dc7c1c912dcf209c9a3931ce2abece961480cc06039b565e09f70e55269ceb9 SHA512 773f39ec8f66d1285df74706014c690f3ade9c960bc27c5032bd4c100b2e89c3d4a23150af548128bdf499d64ba1567aa065f4a39f5e583600d86414d283f66f
-DIST OpenJDK21U-jre_x64_linux_hotspot_21.0.1_12.tar.gz 52453828 BLAKE2B d53bf2929431c9ce4026ae2fb9b950fedc9e756f52013a2ecdad804ccf28e33447f5278f159fb881791d1a0952d959232085549f2ef1b563979c3f15713a00e6 SHA512 568844305c490abbd9a20aa89b48b8ece4bb1b75145d6e6dc89220bdb6049bc70f8bd8c6a789983d7bbbdbc64d78129515443fe86c03064592354b455869e8af
+DIST OpenJDK21U-jre_x64_linux_hotspot_21.0.3_9.tar.gz 52430722 BLAKE2B 32a969bfd1a6e334db34db6f12317810a81b60b0f6c4c978aee3fb588ed30daca0b54089feba7721a51f71d2ebb89d453aba8e7ded29f524d5923a3804828d88 SHA512 2fefc61c36f4cf4bbe722aef93aced8dc4b76d2fddeb91ad8687dc54f7afd9dff03df25ff12214bbd66fcbd637ff0ca5a21a1d839e60da9622904284bc2abfee
DIST OpenJDK8U-jre_x64_linux_hotspot_8u382b05.tar.gz 41389960 BLAKE2B e79d0d6b08a0f2066c877b3f970742a209f1b56a46dd4e5bc3b3942b590ae4eb0e72ac9b909d2e0d9b61bee76d507d9df8def88c16ec87930152b8375c6272e5 SHA512 536e2b3f87907aa2d79938dae3f92efa5d6402ae252e147beb9ddc3f81b1001a8031e4eba7132b0640dad36652fb619b761e038a88246442fc8592d5fe8a9c41
+DIST OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz 41415973 BLAKE2B 1372ef4f608eaecd4a82c8e5598e67b91d4b200818a896c2977f40d7c228377ad033187e5afda7cd812b37950b998bc764c155d952a62b7bf7c625299b9477d9 SHA512 f1e3a168724fd9826262d1f4e895d0809618414231e246750f96522bc89fb4f27fed83f83dd548ddd859b519512ac7a080c6a3482a9d129275102aed973eab28
EBUILD openjdk-jre-bin-11.0.20.1_p1.ebuild 2001 BLAKE2B 98d53b34c852c12d05d91388863aeef3a6976a57624a6218a07224b3d04334a8970027bfb2b3dec37cada90489fab5b55007f93caccedf4b65b72901d3d3a96a SHA512 be1ceaf5466a9dd574925386d6bfd3e5f82c32dc4d069be22c650c4027ee3749115d7a5940d770e7ed26941a2ac45fb851b0a0d83c352efcb5b6252f12b344e1
+EBUILD openjdk-jre-bin-11.0.23_p9.ebuild 1999 BLAKE2B f49555cb1512494a4fde6853fe50ef816193078d006bba671f1d71d6e11420114466821d6b047f4a656b56ecd8d378ec69e5cd81b2fc7a13ee7f61d5119f4717 SHA512 98ef54e07ae1c3e2d50e3ac25731ed3677c1cd41559ff8dd21020dc82fb5bb4194cb20353962fb1b2181c4abed59f9d31d221202e13b24fc9aa419ccfc647a2b
+EBUILD openjdk-jre-bin-17.0.11_p9.ebuild 1999 BLAKE2B f49555cb1512494a4fde6853fe50ef816193078d006bba671f1d71d6e11420114466821d6b047f4a656b56ecd8d378ec69e5cd81b2fc7a13ee7f61d5119f4717 SHA512 98ef54e07ae1c3e2d50e3ac25731ed3677c1cd41559ff8dd21020dc82fb5bb4194cb20353962fb1b2181c4abed59f9d31d221202e13b24fc9aa419ccfc647a2b
EBUILD openjdk-jre-bin-17.0.8.1_p1.ebuild 2001 BLAKE2B 98d53b34c852c12d05d91388863aeef3a6976a57624a6218a07224b3d04334a8970027bfb2b3dec37cada90489fab5b55007f93caccedf4b65b72901d3d3a96a SHA512 be1ceaf5466a9dd574925386d6bfd3e5f82c32dc4d069be22c650c4027ee3749115d7a5940d770e7ed26941a2ac45fb851b0a0d83c352efcb5b6252f12b344e1
-EBUILD openjdk-jre-bin-21.0.1_p12.ebuild 2002 BLAKE2B dc2ccac82650201486ad9a64bab48ed72357a96fd3ecdc36a3f4f25a9ad73734ee1f8fcadfa34f0219d2ccf0c4879618f845206553b8e620f5a692fe933e75ac SHA512 1348e9b3e7f10768afae9e205207fe0f2c41a5395537290e14500ff806e9b1b694569dccada94811db41414b3305a5a24b4e331414c3d05751d62ccda3b0ab63
+EBUILD openjdk-jre-bin-21.0.3_p9.ebuild 1999 BLAKE2B f49555cb1512494a4fde6853fe50ef816193078d006bba671f1d71d6e11420114466821d6b047f4a656b56ecd8d378ec69e5cd81b2fc7a13ee7f61d5119f4717 SHA512 98ef54e07ae1c3e2d50e3ac25731ed3677c1cd41559ff8dd21020dc82fb5bb4194cb20353962fb1b2181c4abed59f9d31d221202e13b24fc9aa419ccfc647a2b
EBUILD openjdk-jre-bin-8.382_p05.ebuild 1832 BLAKE2B ad07e15885ed32db182bcf7207dca702fc99ad4b1f106dd985e6916e2fbf837f0cb2291ee70ad13e0a84aafd614a5cb60b0d870f2aad98e376638ba0f0511a0c SHA512 6410d06da667332e2374f03f18cc62001d8194b5a9cd7619aebcc332698514e76981c3419f1aa78b1dedaa58b9907a52469c06864a214a82f5d50df1083d4ed7
+EBUILD openjdk-jre-bin-8.412_p08.ebuild 1834 BLAKE2B 0e3cabd430a05f3f434263ec3f0a0d74a188a0467bd9984ca09acfd66648edf716a953493ba39d7ff33274e12bf26e9a8c470c664d40372ecb411aeef45795d8 SHA512 757ea9e3c90a1d65d42bdf53f48889e14aa6e7fc58b7b18cdcb09c43332fe09d93e0b9a53ff9583e7f23d21f24fd9d6f991484ea1641f6152718bdc10e5c8aea
MISC metadata.xml 655 BLAKE2B e05648526464c16e698e8fc1b16a4c7ab646ad42402241a5a23eecd209406446b9a77a46f1ed55d27a924ffa7019ce8cf976f3037a8adc091b1406c501c35e88 SHA512 437ded048327540f6010e462448317eef13da67f5cfca0b62c15fd2367f1a5bfb125b73de9228d3054d2001bef557e5d9a13f80686678df9c03bd6c10b4d1fe2
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.1_p12.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild
index 1aba636df50a..9fe0d3158b43 100644
--- a/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.1_p12.ebuild
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,7 +19,7 @@ SRC_URI="
"
DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
-HOMEPAGE="https://adoptopenjdk.net"
+HOMEPAGE="https://adoptium.net/"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64"
IUSE="alsa cups headless-awt selinux"
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild
new file mode 100644
index 000000000000..9fe0d3158b43
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild
new file mode 100644
index 000000000000..9fe0d3158b43
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild
new file mode 100644
index 000000000000..04fb01a2b751
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
+ )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT="$(ver_cut 1)"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # this does not exist on arm64 hence -f
+ rm -fv lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v lib/*/libjsoundalsa.so* || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
+ bin/policytool || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest
index be045bb9302f..8e2db8200dde 100644
--- a/dev-java/openjdk/Manifest
+++ b/dev-java/openjdk/Manifest
@@ -7,9 +7,12 @@ AUX openjdk-8.env.sh 687 BLAKE2B 4bb851545955fafa6a4b08f2589fa9a5441ef37484eb21a
AUX openjdk.env.sh 432 BLAKE2B 8779a373af2f9e52473cb5e3bc2bbcb7fa83c6d09382d498466888dd322299adc1b736c6e3723fa68e92a80067599228b3511cc2826e1ebc3c5845a7a2f62fa3 SHA512 e6604a88fb857945a618e4b7735d49dbc23bdd4c6fb70fc5753470e9c1047825208a40fe25107bcde95f290656b44f92e1667ebc414454cbae2e71f16fec5fbd
DIST openjdk-11.0.18-riscv.patch.xz 272672 BLAKE2B b079612032a5bf135b05bdd1da16f2823772a5d9a18447a435f191daf78c5429a15c2e9ea64758dc9b26ee2a88275532b4f27714b2a7e4489f920c0ed2f5003b SHA512 c0426f243c5aa581d90366cb01ce811e34883a9d8a0298cab420378470e8eb427a56932ca1fbb5ed57e7430be2b38c6bc4491028ebaa25be0a938ba0bb2baf45
DIST openjdk-11.0.22_p7.tar.gz 116235391 BLAKE2B 50b845b8f1e316da37e45c94a1890939659b554a314a1a455903e8cc58465cd69cd485548b6b42c445150187e37df5cf946d52bca754236a198f6aa10d7de37e SHA512 b88d0db9750d8201dfb4b027045de4023be766e42cca7a3ff5e0cb28db4c6da3f146a57819a6b81cb33e5837726986bcc3780ecf88bf525f445c2cd35a3993d8
+DIST openjdk-11.0.23_p9.tar.gz 116316363 BLAKE2B a3745b2afe9d2529daf89aceed43025aca72a353210b0987aacb32af971262077411e9a2b6cfd938ca9d0c93c8762759b9207a13cee0808288674671164e3a36 SHA512 3851063289042ed467a9cb636eba7170a0feeaa3e5d19bda6c30a186ea624e4ae1b308006652acb9c9820c2065382bd719ee130b7a1a0524fe25ecd639f8a51d
DIST openjdk-17.0.10_p7.tar.gz 106398664 BLAKE2B 48cb2bc7d063da25a62834734ba4a887d26a27a8d84c535255df67419bf4f6d8b060c48ef37bd7324e14e957a141791380d4d9e42335a90f72dc34bc7b1d12fe SHA512 c2dfd66debdce488de044efcfc3f57cc9eb07ead2cfb7dd6e28e5748d48ec89f0c326a4c3f4a5c740019b8e5a02b858d93dd74a0c6626de445144b9840d3a426
-DIST openjdk-21.0.2_p13.tar.gz 112252812 BLAKE2B a7cbdc67d05a4e7db75ddb7043f06928c599139bd6eab02a23749194eb340f82038061036e84961ed124b8c8a0320bc3a2a890100b643765e1a87b8b129f30f9 SHA512 01a2f57dc432ea31f64d79092ae722f752e7ff111291cb5fb874046079a0fee985ede9d3aac991d946c9c6e712854827dd45284ff4cf39592add3629dbb94ace
+DIST openjdk-17.0.11_p9.tar.gz 106574173 BLAKE2B 3db4763527d1acb83a2d492c3e94dc571065b844cf2ac56b7377a821cf2cb48af405b9fef73f477502bedc2c119ac57a115315140af04d51dbab5a78dfa6c789 SHA512 77baa3ec3ff2d06b28121342357311d1d5ca2ddd9ac7982b1aa5fc745b49519d2f95d14226ad4ac413d9a0ecf0e49d15078cabbba0b2897d0c6883b92ef0b5e9
+DIST openjdk-21.0.3_p9.tar.gz 112404688 BLAKE2B e73688fdd2e4f4da144f66058e4ff68da4a557d9c7693c7854ba6c7e1a12155abec4aa0fcd724f62333060c4b4f7488f827c1b5499fe5667743516101f7f2fa6 SHA512 efc2d03a7e7afed62a2cdc9f7707d056ed62d63f513394d7e3c6bbe11980ac492a2cad144021cea4180f4c93f1a481bdd65cb61156023a3f14ba596fd9c0eb60
DIST openjdk-8.402_p06.tar.gz 93136112 BLAKE2B 023422ca2b4dfc08fd3642e3cb3ec0503d57d09dbcb54841e4a04f67a6cd118712cba90b7760eaf9135f9f001f7c15221c4bcb19986547fb2b6b3fb852bb8af4 SHA512 476d195ef500d8dd2013b17de0669a77ef8076b55c2753eb88b1a13f7a48526b1be7a1befabd284eb9ee8411df19ab1f39c81287ab659984d2d67e8aa7192d79
+DIST openjdk-8.412_p08.tar.gz 93003614 BLAKE2B 71a3825bf69bb196ae219f5125e8452f634be2ff7b9f42a4829f6581f0a143bfec95013971c6f6b8f402c11efa34443f55a7f89d4133eac0b05a6d1cd6e0324d SHA512 d198f26474a4bd0b5e09c3c3aa53fbf77f217b8cd23499f7e661224048e925e0e020b28264b6ce7401baf83f8ffd8e3247788e2f5e7188509dea8b06f9fa0572
DIST openjdk-bootstrap-11.0.13_p8-ppc64.tar.xz 108215404 BLAKE2B 5e6c0b905b34b437137922b73a9724da96b8832186fea945f8c73d941db822ca1cc5718f3ecb4607ed98d1f8241c9f365b54caaf978863e8b84680a94f067b5d SHA512 732e2220219d42be10589fcaf2420da87ebc8564b4afc6bd02f61f31cdca9c31b339366e34d374fb814499b92f8aa796435a18f28e10c8cb00d9a0f5953bb60e
DIST openjdk-bootstrap-11.0.13_p8-x86.tar.xz 105420236 BLAKE2B d3137ad497937a9a04dedf38776f3ac45bf3b115d275991fd8582b72ade48390b6aa8ad89e0b4d34fa6a787a3c413dab20b32ef347dc8733544e810150c55d29 SHA512 f71a7ef8fbf19b0595dd7d4ebe52bbe1c95b8c17f34d092472c5f5ce8caf52a053f22db8587f1649f9a96ad01c0c632be343342812f5a8cc4ff843b33b8d9b0f
DIST openjdk-bootstrap-11.0.14_p9-riscv.tar.xz 104601676 BLAKE2B 5f976e8a626a829fae70ad6c007f10bfeff79e29c85d6c75fb2f5ff8984fd2a2bd44ee6e07958dbbdaaed761c6839d375e1b5ba6cffc63b02ad9e2c9178310db SHA512 580dec81626553fe3e7afd0f6385a733ba80a0502cf0f9e8bdc973048887290c9ab6171267d61d8838c4ece4de58c9ca8b78540bd52b1757495a27175057ec64
@@ -22,7 +25,10 @@ DIST openjdk-bootstrap-21.0.0_p35-x86.tar.xz 120906212 BLAKE2B c3a56f4e51a8aca1c
DIST openjdk-bootstrap-8.402_p06-ppc64.tar.xz 34476368 BLAKE2B 1f896772f5e40a2793c5d9294e65e429c94204f91e91bfd76ff780e1d6318741c2052c3f20e59abcfb7018924983b5c9f386f14f912660e3e86296185f348482 SHA512 7bace068c5ac7604ad9db3ed655a52a4a90195efbf2fc342389cf7929d82d3f7b861fe700c16f513599bf9c064a87c9aa5966d7bd45aa7ed5e55ec317667be6a
DIST openjdk-bootstrap-8.402_p06-x86.tar.xz 37076244 BLAKE2B bd50f84e8ac2ee9850c158c7e7d9fae9741112230dcd6e314163911921d63e3222cd3f4ab9d08bbaacbf6d9bfce9a1a9336e21088fba6396613489a701b30797 SHA512 fe5719e0bbf9bcd6eb9790ebd4da34e7f6c99fe4b7d41de2b5d00b20ebe76a77d857c726d1a71b7f40657ca2a9aa08eaa9efc1ab4be60016f66af95530b454b5
EBUILD openjdk-11.0.22_p7.ebuild 8864 BLAKE2B 36030166187064b860ae74f7a11b6ae147e3c43b4251ff4e4e8cdb0136baa0208f2ba825d12f8e9270b0b33dec7a420f51b9f6929561733b685e47a771554fc1 SHA512 7e44978bb48ce996b8603cb5297587c6c3264431bb540b5d7614f4447084464e9bb28460176dd504805d19271b4f4bab3c105c327c21765ebd1dce6968c00c31
+EBUILD openjdk-11.0.23_p9.ebuild 8839 BLAKE2B b72413528e3fb21a95da1989fec1c351e952021322eeef5636186e99a496976364ccc4d96875bf4896b86421851d7ec9219cbd36646c81c8926e222478d4668a SHA512 210058b353e577d84a34fafad1e38d8dc99c336d6b4f4301586142d77ee847a9052cc3c46bab5e38de25376cd2f67df46c0e0c3dc556d44d8c0a21d863a2246d
EBUILD openjdk-17.0.10_p7.ebuild 9283 BLAKE2B fcdb81446a814cf213988b4278d3ca2d8e1f751754bd134e5e06f02a30ed9c1152a6b28f08064320f4134db9a1df819f23530eb75e5c339525d1c27320a58f3b SHA512 3b5293ccb458d564cd6dd54000edb397aba05c633b4d5ef47fe571d70570e7e4a08af67c76c492f314321ff2ca80775b551bfb3e3a52f8b09a8a6fd6a6863402
-EBUILD openjdk-21.0.2_p13.ebuild 9251 BLAKE2B e7fd409656211864689d2040d738a45a132d5e3150fc8fa180d7957255aaac6cff2a44dfb87bbcf0f519791f39f09bb6788bbe730738c70778d5f22c85e9fa00 SHA512 73ff9f0d4034dee508403f2ffc1924294265465629a6c0d9c33c4e5df776a474c6a7fae19eb0b446e7861cb30fc24929970b718b3da69ecb446bac994bb22950
+EBUILD openjdk-17.0.11_p9.ebuild 9258 BLAKE2B 499c3e6fdbb6d956457ec61cbf05091466e3378f57f5aedb3472a7636734ace6e8e18455402d35ad5765f8ad8007e8f733d41a80eab9c397fed196a436deaa3f SHA512 61dbc61daa884bafce6440846a7a458dfaaf65fc0c0bba3c4a62688dfb512361bcc8bfd9820cb1678eb6baf1fc98817851fdb03930581e387accd0943f7b0880
+EBUILD openjdk-21.0.3_p9.ebuild 9222 BLAKE2B a99c8167af247502103af8adccc900ee8cf2a426eb62b506fd44369de32a63b48e22081112de3c65b9b07287a8bd5225d2e87aa80dc8eec3bf37e6a4580d71c9 SHA512 1e001792d4a317b2f68e7a5a888c119c297c74780af7784c30e419ea6361d0e3601c07cca16429635d606336dc1dd8c84e924163bd2a259de9cb4ceda9aea45a
EBUILD openjdk-8.402_p06-r2.ebuild 7849 BLAKE2B b140bbfe653b618663d798666e72ee0f5096f74c708d5fa34f58ccfeccc4a918126a2fb6c46cbe9fa55b1edbafa76d8972a9dfb8fc0a9a90a81dca903eee51e2 SHA512 fb0cdfda5a8b2d5a2c1ced6150df3b86bb34971e1f155682cd0e48f558067f35d32b248c2bcb05a2416b179de522d2fb6a7ce1a9084f76ce167d5ea042443681
+EBUILD openjdk-8.412_p08.ebuild 7823 BLAKE2B df25782738aa40faf91a4eac7b06eef4ddb8d7cfd1d2a2ae05c42f63eac88a37e51e788e2ebcbbcd54fb491f35c7b26e5c98a675415483aa70f9eecda735291b SHA512 345aa3c92e51568a88f36cd6669ed7c6ae4b7f12c0c74b378ffaba29d086a3f02af62839d212277579f2e1e282bffe112bc49a0031fd2884c05bee7489a3980b
MISC metadata.xml 1549 BLAKE2B 5f7caf2330b7d8eb264df12fe6eebbf1e4acf91b04e37a4c6ea6c45101a39f2e84b4d40152d58c93e63a1d2d6fdb5649b096a314f7269d33ce72da263d392c90 SHA512 8fa15bf9544f2665a47185a3701c3a9ce1654ddedf1aebfb344f77f544a71a3bda33c2d4f3c1d5d65d7ea42b6c1f04a6e1dfaaae723c1a5fcaf63ec48d79f3de
diff --git a/dev-java/openjdk/openjdk-11.0.23_p9.ebuild b/dev-java/openjdk/openjdk-11.0.23_p9.ebuild
new file mode 100644
index 000000000000..7a2574c2b65e
--- /dev/null
+++ b/dev-java/openjdk/openjdk-11.0.23_p9.ebuild
@@ -0,0 +1,311 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="${PV%_p*}-ga"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
+RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
+X86_XPAK="11.0.13_p8"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk11u/archive/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri riscv ${RISCV_XPAK})
+ $(bootstrap_uri x86 ${X86_XPAK})
+ )
+ riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.18-riscv.patch.xz )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
+ dev-java/openjdk:${SLOT}[gentoo-vm(+)]
+ )
+ )
+"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ if use system-bootstrap; then
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ use riscv && eapply "${WORKDIR}"/openjdk-11.0.18-riscv.patch
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if ! use system-bootstrap; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ fi
+
+ # Work around stack alignment issue, bug #647954.
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+ ! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ # this is not useful for users, just for upstream developers
+ # build system compares mesa version in md file
+ # https://bugs.gentoo.org/822612
+ export LEGAL_EXCLUDES=mesa3d.md
+
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-17.0.11_p9.ebuild b/dev-java/openjdk/openjdk-17.0.11_p9.ebuild
new file mode 100644
index 000000000000..1c4f51f66acd
--- /dev/null
+++ b/dev-java/openjdk/openjdk-17.0.11_p9.ebuild
@@ -0,0 +1,320 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+ARM64_XPAK="17.0.2_p8" # musl bootstrap install
+PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
+RISCV_XPAK="17.0.3_p7"
+X86_XPAK="17.0.1_p12"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+ [[ ${cond} == elibc_musl* ]] && local musl=yes
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
+}
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+MY_PV="${PV%_p*}-ga"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk17u/archive/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri x86 ${X86_XPAK})
+ $(bootstrap_uri riscv ${RISCV_XPAK})
+ )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ # The nastiness below is necessary while the gentoo-vm USE flag is
+ # masked. First we call java-pkg-2_pkg_setup if it looks like the
+ # flag was unmasked against one of the possible build VMs. If not,
+ # we try finding one of them in their expected locations. This would
+ # have been slightly less messy if openjdk-bin had been installed to
+ # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
+ # file but disable it so that it would not normally be selectable.
+
+ local vm
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+}
+
+src_prepare() {
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if has_version dev-java/openjdk:${SLOT}; then
+ export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
+ elif use !system-bootstrap ; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ else
+ JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+ [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+ JDK_HOME=${JDK_HOME#*/}
+ JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
+ export JDK_HOME
+ fi
+
+ # Work around stack alignment issue, bug #647954. in case we ever have x86
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --disable-warnings-as-errors
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-jvm-feature-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-21.0.2_p13.ebuild b/dev-java/openjdk/openjdk-21.0.3_p9.ebuild
index 9da45c9869b2..943ac23576da 100644
--- a/dev-java/openjdk/openjdk-21.0.2_p13.ebuild
+++ b/dev-java/openjdk/openjdk-21.0.3_p9.ebuild
@@ -1,9 +1,9 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
# variable name format: <UPPERCASE_KEYWORD>_XPAK
PPC64_XPAK="21.0.0_p35" # big-endian bootstrap tarball
@@ -31,20 +31,21 @@ bootstrap_uri() {
# to exact same commit sha. we should always use the full version.
# -ga tag is just for humans to easily identify General Availability release tag.
MY_PV="${PV%_p*}-ga"
-SLOT="${MY_PV%%[.+]*}"
DESCRIPTION="Open source implementation of the Java programming language"
HOMEPAGE="https://openjdk.org"
SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
+ https://github.com/${PN}/jdk21u/archive/jdk-${MY_PV}.tar.gz
-> ${P}.tar.gz
!system-bootstrap? (
$(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
$(bootstrap_uri x86 ${X86_XPAK})
)
"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source +system-bootstrap systemtap"
@@ -107,8 +108,6 @@ DEPEND="
)
"
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
-
# The space required to build varies wildly depending on USE flags,
# ranging from 2GB to 16GB. This function is certainly not exact but
# should be close enough to be useful.
@@ -296,7 +295,7 @@ src_install() {
dodir "${dest}"
cp -pPR * "${ddest}" || die
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
# must be done before running itself
java-vm_set-pax-markings "${ddest}"
diff --git a/dev-java/openjdk/openjdk-8.412_p08.ebuild b/dev-java/openjdk/openjdk-8.412_p08.ebuild
new file mode 100644
index 000000000000..6280651782d6
--- /dev/null
+++ b/dev-java/openjdk/openjdk-8.412_p08.ebuild
@@ -0,0 +1,283 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+X86_XPAK="8.402_p06"
+PPC64_XPAK="8.402_p06"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri x86 8.402_p06)
+# Output: ppc64? ( big-endian? ( https://...8.402_p06-x86.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/openjdk/jdk8u/archive/jdk${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri x86 ${X86_XPAK})
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="alsa big-endian debug cups doc examples headless-awt javafx +jbootstrap selinux system-bootstrap source"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ sys-libs/zlib
+"
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ virtual/pkgconfig
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
+
+PATCHES=(
+ "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch"
+)
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ if use system-bootstrap; then
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ default
+
+ # new warnings in new gcc https://bugs.gentoo.org/685426
+ sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
+ hotspot/make/linux/makefiles/gcc.make || die
+
+ chmod +x configure || die
+}
+
+src_configure() {
+ if ! use system-bootstrap; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ fi
+
+ # general build info found here:
+ # https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
+
+ # -Wregister use (bug #918655)
+ append-cxxflags -std=gnu++14
+
+ # Work around stack alignment issue, bug #647954.
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, no support in this version.
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ tc-export_build_env CC CXX PKG_CONFIG STRIP
+
+ local myconf=(
+ --disable-ccache
+ --disable-freetype-bundling
+ --disable-precompiled-headers
+ --enable-unlimited-crypto
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )"
+ --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-jtreg=no
+ --with-jobs=1
+ --with-num-cores=1
+ --with-update-version="$(ver_cut 2)"
+ --with-build-number="b$(ver_cut 4)"
+ --with-milestone="fcs" # magic variable that means "release version"
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ $(usex headless-awt --disable-headful '')
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ CONFIG_SHELL="${BROOT}/bin/bash"
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/j2sdk-image || die
+
+ if ! use alsa; then
+ rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
+ fi
+
+ # build system does not remove that
+ if use headless-awt ; then
+ rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/docs/*
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+ einfo "JavaWebStart functionality provided by icedtea-web package"
+}
diff --git a/dev-java/sbt/Manifest b/dev-java/sbt/Manifest
index 1999e3ed9e0a..6775bf17d85c 100644
--- a/dev-java/sbt/Manifest
+++ b/dev-java/sbt/Manifest
@@ -4,4 +4,4 @@ DIST sbt-0.13.18-sbt-deps.tar.xz 34787436 BLAKE2B aba63ee1f7ec3f105bae0fa882dc19
DIST sbt-0.13.18.tar.gz 952783 BLAKE2B 31648c2cbbeb5d57db03c10bd4ac25344ae2d0351fc592e85e053e9ac0deb063e1b1e700a8dfa4a242243dd06fa491f721852ddbc2ea1d7fd4174e01febad25e SHA512 0eeb6fddc2454c2fff2eee06a80179495c0210d97fd3677bfe0f8833524ac707515b9e8f3c19e0d0372f503ef9b9f19dbe4cf15b6f8b48181ad730685004267c
DIST sbt-launch-0.13.18.jar 1210278 BLAKE2B b3c03f0c823576db51eda51a494edeb771f7ab762afe74fa95f19a4581d80cfdf3c6d6bfacd76e195de34f420912d18b505b74414fbc02550c9331fe4b3e07e3 SHA512 2b1e27f8d873ee45cc168ab19f6e82421d6896116c7b7af60974b97f41edd034fa008e668c83f83d2ce3a501986674821d8a427ccbcda291c8c33b576d64921b
EBUILD sbt-0.13.18-r1.ebuild 5036 BLAKE2B abf40e154af71302d2802751c7f34201f188e558fa501f9db205d6a61b7d7416c11ca28d8d48f410113b55177745d5db1a0a7c01caae16ed90f3cdf231ba7817 SHA512 fc6906a7c1dfe1ba9b234223da4ee29feb92e4589ebba6dd957b11e7f97f7815f5869352816ad7694b1233b1c14f0e1a8f53217fd781588c25873c7b76ae5433
-MISC metadata.xml 477 BLAKE2B dcb601b7c04381f2d72a5dadc99e57873f86b5560938b29fa7fbbddab4b52c47a2761dd0c8e005a5d7510513a36943266e6e392a8822a74fa4f47bd3ead2ab4b SHA512 02f4431783fb69ae99932e75ebe635ae6271fc6d30416fe1c7af70cc3eec94a2459fc250be91752ba36acf38f3d60837105712a5990ba07f0759f712cb396492
+MISC metadata.xml 545 BLAKE2B b82866d1ba405e1b4aaa3c6d122f552e05623b72ad46e55fc9f50283144b9bed7e4600453d2d95a858699e23e1b26791e09de8bacaf1c7a4f20effc9b553f22c SHA512 4cfba06b4b57aff0757b17ca20e215072e9abb196c9b05da48c0247098502410f694d9864663691b9db7be685fdfd10171b04ea983fcd8c2006d96a09e711fae
diff --git a/dev-java/sbt/metadata.xml b/dev-java/sbt/metadata.xml
index feefedbb43eb..9844fcc90ace 100644
--- a/dev-java/sbt/metadata.xml
+++ b/dev-java/sbt/metadata.xml
@@ -7,4 +7,7 @@ The interactive build tool.
Use Scala to define your tasks. Then run them in parallel from the shell.
</longdescription>
<use><flag name="binary">Install from (Gentoo-compiled) binary instead of building from sources. Set this when you run out of memory during build.</flag></use>
+<upstream>
+<remote-id type="github">sbt/sbt</remote-id>
+</upstream>
</pkgmetadata>