summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-12-07 20:13:00 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-12-07 20:13:00 +0000
commit3dbde7cfd1e35fe558b909f2e760393bc50555e7 (patch)
tree4025eda1aad5f065e2e4619a74b2735022bdef39 /dev-java
parent1f368b17dccbd1f06af9de415f4e91e53f3d585d (diff)
downloadbaldeagleos-repo-3dbde7cfd1e35fe558b909f2e760393bc50555e7.tar.gz
baldeagleos-repo-3dbde7cfd1e35fe558b909f2e760393bc50555e7.tar.xz
baldeagleos-repo-3dbde7cfd1e35fe558b909f2e760393bc50555e7.zip
Adding metadata
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/bcmail/Manifest1
-rw-r--r--dev-java/bcmail/bcmail-1.77.ebuild57
-rw-r--r--dev-java/bcpg/Manifest1
-rw-r--r--dev-java/bcpg/bcpg-1.77.ebuild60
-rw-r--r--dev-java/bcpkix/Manifest2
-rw-r--r--dev-java/bcpkix/bcpkix-1.77.ebuild102
-rw-r--r--dev-java/bcprov/Manifest2
-rw-r--r--dev-java/bcprov/bcprov-1.77.ebuild106
-rw-r--r--dev-java/bcutil/Manifest1
-rw-r--r--dev-java/bcutil/bcutil-1.77.ebuild55
-rw-r--r--dev-java/commons-imaging/Manifest1
-rw-r--r--dev-java/commons-imaging/commons-imaging-1.0_alpha3-r1.ebuild36
-rw-r--r--dev-java/commons-imaging/commons-imaging-1.0_alpha3.ebuild37
-rw-r--r--dev-java/commons-imaging/files/commons-imaging-1.0_alpha3-PngChunk.javadoc.patch12
-rw-r--r--dev-java/icu4j/Manifest1
-rw-r--r--dev-java/icu4j/icu4j-74.1.ebuild198
-rw-r--r--dev-java/jtwig-core/Manifest1
-rw-r--r--dev-java/jtwig-core/jtwig-core-5.87.0.ebuild64
-rw-r--r--dev-java/jtwig-core/metadata.xml9
-rw-r--r--dev-java/protobuf-java/Manifest2
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.23.3.ebuild164
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.25.1.ebuild166
-rw-r--r--dev-java/swt/swt-4.30-r1.ebuild (renamed from dev-java/swt/swt-4.30.ebuild)2
23 files changed, 1042 insertions, 38 deletions
diff --git a/dev-java/bcmail/Manifest b/dev-java/bcmail/Manifest
index 880e2012db6f..572d67abe6c0 100644
--- a/dev-java/bcmail/Manifest
+++ b/dev-java/bcmail/Manifest
@@ -1 +1,2 @@
DIST bc-java-r1rv76.tar.gz 31256952 BLAKE2B b791ef3da7189bc6990935aaad7c331c1bf6a45af0cdfc72056ae0cf1723e57ce15a76060251f6de630b0729ffe22ba4718255c103a8ab66db61f2e46f1201c8 SHA512 7d408821408bbabd209d9507b061f3113822878c12b12a040c829f5a8c6bdf8450719aef60c423025824bec1fcb6c63d8478d1f84f3cb1d692fdbacde6d9ce6e
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
diff --git a/dev-java/bcmail/bcmail-1.77.ebuild b/dev-java/bcmail/bcmail-1.77.ebuild
new file mode 100644
index 000000000000..326796f93fd7
--- /dev/null
+++ b/dev-java/bcmail/bcmail-1.77.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.bouncycastle:bcmail-jdk18on:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz"
+S="${WORKDIR}/bc-java-${MY_PV}/mail"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+CP_DEPEND="
+ ~dev-java/bcpkix-${PV}:0
+ ~dev-java/bcprov-${PV}:0
+ ~dev-java/bcutil-${PV}:0
+ dev-java/javax-mail:0
+ "
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.mail"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" "../pkix/src/main/resources" )
+JAVA_TEST_RUN_ONLY="org.bouncycastle.mail.smime.test.AllTests"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcpg/Manifest b/dev-java/bcpg/Manifest
index 880e2012db6f..572d67abe6c0 100644
--- a/dev-java/bcpg/Manifest
+++ b/dev-java/bcpg/Manifest
@@ -1 +1,2 @@
DIST bc-java-r1rv76.tar.gz 31256952 BLAKE2B b791ef3da7189bc6990935aaad7c331c1bf6a45af0cdfc72056ae0cf1723e57ce15a76060251f6de630b0729ffe22ba4718255c103a8ab66db61f2e46f1201c8 SHA512 7d408821408bbabd209d9507b061f3113822878c12b12a040c829f5a8c6bdf8450719aef60c423025824bec1fcb6c63d8478d1f84f3cb1d692fdbacde6d9ce6e
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
diff --git a/dev-java/bcpg/bcpg-1.77.ebuild b/dev-java/bcpg/bcpg-1.77.ebuild
new file mode 100644
index 000000000000..17ce22b47ee7
--- /dev/null
+++ b/dev-java/bcpg/bcpg-1.77.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.bouncycastle:bcpg-jdk18on:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java cryptography APIs"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz"
+S="${WORKDIR}/bc-java-${MY_PV}/pg"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+CP_DEPEND="~dev-java/bcprov-${PV}:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.pg"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+src_test() {
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcpkix/Manifest b/dev-java/bcpkix/Manifest
index b8411158075e..f8d3c7af162a 100644
--- a/dev-java/bcpkix/Manifest
+++ b/dev-java/bcpkix/Manifest
@@ -1,2 +1,4 @@
DIST bc-java-r1rv76.tar.gz 31256952 BLAKE2B b791ef3da7189bc6990935aaad7c331c1bf6a45af0cdfc72056ae0cf1723e57ce15a76060251f6de630b0729ffe22ba4718255c103a8ab66db61f2e46f1201c8 SHA512 7d408821408bbabd209d9507b061f3113822878c12b12a040c829f5a8c6bdf8450719aef60c423025824bec1fcb6c63d8478d1f84f3cb1d692fdbacde6d9ce6e
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
DIST bc-test-data-r1rv76.tar.gz 2074813467 BLAKE2B 3d1bd122a907e4c46f3c8b84c4d27b3327b6c6deaded623e5bc9842d00c62bdeb521b1be3bdd495ffa10f2d1facc73d41176829eda4511827d24eb0f62fccef9 SHA512 3de068667ce9572530fa6422bdbc4455d7f1edd85e12166e7a266a447ed0ffab50c33cc5a99e668caf79156f87d86512a5507534469d3e6f479b908d4d2a1fb7
+DIST bc-test-data-r1rv77.tar.gz 2074825965 BLAKE2B b797821719ba0dcdd091e0fd4f14c79058a15702973978a055bcc998ff541a8c5e96feb757647a9696e4bbfa28bf80a317066a51fd4daac7b2508111d0d217b1 SHA512 c8701a270ddcfde353b480caa62e2237776b50b0937ac015ee3e5221a74d0817de9bc67f1fa9f53f5e48d861dbf94339cb45a08cb4dad37f1340f754cb1d910e
diff --git a/dev-java/bcpkix/bcpkix-1.77.ebuild b/dev-java/bcpkix/bcpkix-1.77.ebuild
new file mode 100644
index 000000000000..5d09597544c6
--- /dev/null
+++ b/dev-java/bcpkix/bcpkix-1.77.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.bouncycastle:bcpkix-jdk18on:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple check-reqs
+
+DESCRIPTION="Java APIs for CMS, PKCS, EAC, TSP, CMP, CRMF, OCSP, and certificate generation"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz
+ test? ( https://github.com/bcgit/bc-test-data/archive/${MY_PV}.tar.gz -> bc-test-data-${MY_PV}.tar.gz )"
+S="${WORKDIR}/bc-java-${MY_PV}/pkix"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+# 1) testSANMismatchIP(org.bouncycastle.est.test.TestHostNameAuthorizer)
+# org.bouncycastle.est.ESTException: localhost.me: Temporary failure in name resolution HTTP Status Code: 0
+PROPERTIES="test_network"
+RESTRICT="test"
+
+CDEPEND="
+ ~dev-java/bcprov-${PV}:0
+ ~dev-java/bcutil-${PV}:0
+ "
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.pkix"
+JAVA_GENTOO_CLASSPATH="bcprov,bcutil"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_TEST_EXTRA_ARGS="-Dbc.test.data.home=${S}/../core/src/test/data"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+# https://bugs.gentoo.org/823347
+check_env() {
+ if use test; then
+ # this is needed only for tests
+ CHECKREQS_MEMORY="2048M"
+ check-reqs_pkg_pretend
+ fi
+}
+
+# https://bugs.gentoo.org/823347
+pkg_pretend() {
+ check_env
+}
+
+# https://bugs.gentoo.org/823347
+pkg_setup() {
+ check_env
+ java-pkg-2_pkg_setup
+}
+
+src_unpack() {
+ unpack bc-java-${MY_PV}.tar.gz
+ use test && unpack bc-test-data-${MY_PV}.tar.gz
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+# https://bugs.gentoo.org/823347
+src_test() {
+ mv ../../bc-test-data-${MY_PV} bc-test-data || die "cannot move bc-test-data"
+
+ JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}"
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" \
+ )
+ popd
+ einfo "${JAVA_TEST_RUN_ONLY}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcprov/Manifest b/dev-java/bcprov/Manifest
index def9e26aa563..5a8314076887 100644
--- a/dev-java/bcprov/Manifest
+++ b/dev-java/bcprov/Manifest
@@ -1,4 +1,6 @@
DIST bc-java-r1rv74.tar.gz 31236157 BLAKE2B ffdfe7aa34f361a559051f31fc57eeff39f7d080e4de4a94bdd0d79d92172b2646efa122edaf067633d6a840015e17271c186122598c18e3226622428fa9e1e7 SHA512 887183f825a8834ff512a66fa3f9075259b3266c2861e6e046990bd2dda80b896a8fd221ff2982a127de79fe998727ecc12cade4e6c381f2a152a72ee575d8a1
DIST bc-java-r1rv76.tar.gz 31256952 BLAKE2B b791ef3da7189bc6990935aaad7c331c1bf6a45af0cdfc72056ae0cf1723e57ce15a76060251f6de630b0729ffe22ba4718255c103a8ab66db61f2e46f1201c8 SHA512 7d408821408bbabd209d9507b061f3113822878c12b12a040c829f5a8c6bdf8450719aef60c423025824bec1fcb6c63d8478d1f84f3cb1d692fdbacde6d9ce6e
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
DIST bc-test-data-r1rv74.tar.gz 2074813647 BLAKE2B 8060ee31fa45fbceecb3ed57bc5d8195c8ea72c732e56f2c5f5adf9f785e76934300fe2b07aabc4fa5672c2eb39b5b7aad1393a7ff47dd42a048fa110b9a1db6 SHA512 8a8aa2e372b533a8bca5dc81a94c08c50470446c1457a487b18a96620841b8035344148bcb46b4e211c287ca42b0ee2db29ea402967bf55b8bb0958eb5fbabae
DIST bc-test-data-r1rv76.tar.gz 2074813467 BLAKE2B 3d1bd122a907e4c46f3c8b84c4d27b3327b6c6deaded623e5bc9842d00c62bdeb521b1be3bdd495ffa10f2d1facc73d41176829eda4511827d24eb0f62fccef9 SHA512 3de068667ce9572530fa6422bdbc4455d7f1edd85e12166e7a266a447ed0ffab50c33cc5a99e668caf79156f87d86512a5507534469d3e6f479b908d4d2a1fb7
+DIST bc-test-data-r1rv77.tar.gz 2074825965 BLAKE2B b797821719ba0dcdd091e0fd4f14c79058a15702973978a055bcc998ff541a8c5e96feb757647a9696e4bbfa28bf80a317066a51fd4daac7b2508111d0d217b1 SHA512 c8701a270ddcfde353b480caa62e2237776b50b0937ac015ee3e5221a74d0817de9bc67f1fa9f53f5e48d861dbf94339cb45a08cb4dad37f1340f754cb1d910e
diff --git a/dev-java/bcprov/bcprov-1.77.ebuild b/dev-java/bcprov/bcprov-1.77.ebuild
new file mode 100644
index 000000000000..1172445e18ff
--- /dev/null
+++ b/dev-java/bcprov/bcprov-1.77.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.bouncycastle:bcprov-jdk18on:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple check-reqs
+
+DESCRIPTION="Java cryptography APIs"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz
+ test? ( https://github.com/bcgit/bc-test-data/archive/${MY_PV}.tar.gz -> bc-test-data-${MY_PV}.tar.gz )"
+S="${WORKDIR}/bc-java-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+DOCS=( {README,SECURITY}.md )
+HTML_DOCS=( {CONTRIBUTORS,index}.html )
+
+check_env() {
+ if use test; then
+ # this is needed only for tests
+ CHECKREQS_MEMORY="2048M"
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_pretend() {
+ check_env
+}
+
+pkg_setup() {
+ check_env
+ java-pkg-2_pkg_setup
+}
+
+src_unpack() {
+ unpack bc-java-${MY_PV}.tar.gz
+ use test && unpack bc-test-data-${MY_PV}.tar.gz
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # TBD: unboundid-ldapsdk should be packaged from source.
+ java-pkg_clean ! -path "./libs/unboundid-ldapsdk-6.0.8.jar"
+}
+
+src_compile() {
+ JAVA_RESOURCE_DIRS=(
+ "core/src/main/resources"
+ "prov/src/main/resources"
+ )
+ JAVA_SRC_DIR=(
+ "core/src/main/java"
+ "prov/src/main/java"
+ "prov/src/main/jdk1.9"
+ )
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ mv ../bc-test-data-${MY_PV} bc-test-data || die "cannot move bc-test-data"
+
+ JAVA_TEST_EXTRA_ARGS="-Dbc.test.data.home=${S}/core/src/test/data"
+ JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}"
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+ einfo "Testing \"core\""
+ JAVA_TEST_RESOURCE_DIRS="core/src/test/resources"
+ JAVA_TEST_SRC_DIR="core/src/test/java"
+ pushd core/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+
+ einfo "Testing bcprov"
+ JAVA_GENTOO_CLASSPATH_EXTRA=":core.jar:libs/unboundid-ldapsdk-6.0.8.jar"
+ JAVA_TEST_RESOURCE_DIRS="prov/src/test/resources"
+ JAVA_TEST_SRC_DIR="prov/src/test/java"
+ pushd prov/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcutil/Manifest b/dev-java/bcutil/Manifest
index 880e2012db6f..572d67abe6c0 100644
--- a/dev-java/bcutil/Manifest
+++ b/dev-java/bcutil/Manifest
@@ -1 +1,2 @@
DIST bc-java-r1rv76.tar.gz 31256952 BLAKE2B b791ef3da7189bc6990935aaad7c331c1bf6a45af0cdfc72056ae0cf1723e57ce15a76060251f6de630b0729ffe22ba4718255c103a8ab66db61f2e46f1201c8 SHA512 7d408821408bbabd209d9507b061f3113822878c12b12a040c829f5a8c6bdf8450719aef60c423025824bec1fcb6c63d8478d1f84f3cb1d692fdbacde6d9ce6e
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
diff --git a/dev-java/bcutil/bcutil-1.77.ebuild b/dev-java/bcutil/bcutil-1.77.ebuild
new file mode 100644
index 000000000000..b21e1cdf51c8
--- /dev/null
+++ b/dev-java/bcutil/bcutil-1.77.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.bouncycastle:bcutil-jdk18on:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java APIs for ASN.1 extension and utility APIs used to support bcpkix and bctls"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz"
+S="${WORKDIR}/bc-java-${MY_PV}/util"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+CDEPEND="~dev-java/bcprov-${PV}:0"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.util"
+JAVA_GENTOO_CLASSPATH="bcprov"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY=(
+ "org.bouncycastle.asn1.util.test.AllTests"
+ "org.bouncycastle.oer.test.AllTests"
+)
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/commons-imaging/Manifest b/dev-java/commons-imaging/Manifest
index 5472b1ce60c6..aa7a4a72d0f8 100644
--- a/dev-java/commons-imaging/Manifest
+++ b/dev-java/commons-imaging/Manifest
@@ -1 +1,2 @@
DIST commons-imaging-1.0-alpha3-src.tar.gz 39966281 BLAKE2B f0fbb6d7ae0c12be19fe13d3ff4e1cced5acfe7ea72326528c67b57fade73c0acee3eb8eaa62b3d40c473c0c2faf7f60ec190bc0954c5159405358bfac4efd42 SHA512 16300adb5873fef464bedfdce7e1368f52add8d33087f059667840880b8666024feeecdb278a53d5c3d8e76d01ab921ea146d41ca688757f0cf0c2f2b32b0d53
+DIST commons-imaging-1.0-alpha3-src.tar.gz.asc 833 BLAKE2B b28631badf344fa476a99db78e26a9453d033d21dba8484b2621a4cb0295ea262f58d2df4f8afd6d8090ecd0ea98ec2dca0168e2b401d662c335ad1ef9518b98 SHA512 b7e6691d5eac6f81657dc42aa69184da7fd1bf364da391ac4e1a27991d9a8bbba23296d58b874b4c69a20d39c3c1e821ca19c312f3e71b3acd8903156a2a0a1d
diff --git a/dev-java/commons-imaging/commons-imaging-1.0_alpha3-r1.ebuild b/dev-java/commons-imaging/commons-imaging-1.0_alpha3-r1.ebuild
new file mode 100644
index 000000000000..dc75db349433
--- /dev/null
+++ b/dev-java/commons-imaging/commons-imaging-1.0_alpha3-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.commons:commons-imaging:${PV/_/-}"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Apache Commons Imaging (previously Sanselan) is a pure-Java image library."
+HOMEPAGE="https://commons.apache.org/proper/commons-imaging/"
+SRC_URI="mirror://apache/commons/imaging/source/${P/_/-}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/imaging/source/${P/_/-}-src.tar.gz.asc )"
+S="${WORKDIR}/${P/_/-}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {NOTICE,RELEASE-NOTES}.txt README.md )
+PATCHES=( "${FILESDIR}/commons-imaging-1.0_alpha3-PngChunk.javadoc.patch" )
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.imaging"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/commons-imaging/commons-imaging-1.0_alpha3.ebuild b/dev-java/commons-imaging/commons-imaging-1.0_alpha3.ebuild
deleted file mode 100644
index 338fc76ea1a4..000000000000
--- a/dev-java/commons-imaging/commons-imaging-1.0_alpha3.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Skeleton command:
-# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri mirror://apache/commons/imaging/source/commons-imaging-1.0-alpha3-src.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild commons-imaging-1.0_alpha3.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.commons:commons-imaging:1.0-alpha2"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache Commons Imaging (previously Sanselan) is a pure-Java image library."
-HOMEPAGE="https://commons.apache.org/proper/commons-imaging/"
-SRC_URI="mirror://apache/commons/imaging/source/commons-imaging-${PV/_/-}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# Compile dependencies
-# POM: pom.xml
-# test? commons-io:commons-io:2.7 -> >=dev-java/commons-io-2.11.0:1
-# test? org.hamcrest:hamcrest:2.2 -> !!!artifactId-not-found!!!
-# test? org.junit.jupiter:junit-jupiter:5.6.2 -> !!!groupId-not-found!!!
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-DOCS=( {LICENSE,NOTICE,RELEASE-NOTES}.txt README.md )
-
-S="${WORKDIR}/${P/_/-}-src"
-
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
-JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.imaging"
diff --git a/dev-java/commons-imaging/files/commons-imaging-1.0_alpha3-PngChunk.javadoc.patch b/dev-java/commons-imaging/files/commons-imaging-1.0_alpha3-PngChunk.javadoc.patch
new file mode 100644
index 000000000000..03f8074b8f3a
--- /dev/null
+++ b/dev-java/commons-imaging/files/commons-imaging-1.0_alpha3-PngChunk.javadoc.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/861767
+--- a/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunk.java
++++ b/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunk.java
+@@ -24,7 +24,7 @@ import org.apache.commons.imaging.common.BinaryFileParser;
+ * A PNG image is composed of several chunks. This is the base class for the chunks,
+ * used by the parser.
+ *
+- * @see <a href="https://en.wikipedia.org/wiki/Portable_Network_Graphics#%22Chunks%22_within_the_file>Portable_Network_Graphics</a>
++ * @see <a href="https://en.wikipedia.org/wiki/Portable_Network_Graphics#%22Chunks%22_within_the_file">Portable_Network_Graphics</a>
+ */
+ public class PngChunk extends BinaryFileParser {
+ public final int length;
diff --git a/dev-java/icu4j/Manifest b/dev-java/icu4j/Manifest
index 654f43047d9e..304a978ce3a1 100644
--- a/dev-java/icu4j/Manifest
+++ b/dev-java/icu4j/Manifest
@@ -1 +1,2 @@
DIST icu-73.2.tar.gz 81522943 BLAKE2B 006d7ccab04385f0aa60e2e60b616be9598f448f27d9b0f6dba554874bfe1dd442ba0719a7677ba8aba7e4e0f05e5e50dca74855a900da1f496aad0cd54c3cdc SHA512 f234fb9c76af62dad59e159ef7f7792aca563d88f2988d3d1ecc8be6250837beb9a530ec121e0949f6925ee8e5171a0d04fa41a0c50d9993c4061fa55be6836e
+DIST icu-74.1.tar.gz 65889935 BLAKE2B e9dc354a795b69cf22152db437027f099e65b02f352e3ec9f0203b465b4f01a7844229ed5a7954e9b7f7f55f0d2d93a8e1f984c70de47555c230ec8b42cb7949 SHA512 eec8858cb37200fffce9bc60a8bd0c56d7024d9e2574d030c7e726aa4b2a105b1362548c0be163c720048bd7a7bfe9374b3c5954ba14e2e34beab346a8af8df4
diff --git a/dev-java/icu4j/icu4j-74.1.ebuild b/dev-java/icu4j/icu4j-74.1.ebuild
new file mode 100644
index 000000000000..df57cac1fc96
--- /dev/null
+++ b/dev-java/icu4j/icu4j-74.1.ebuild
@@ -0,0 +1,198 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="
+ com.ibm.icu:icu4j:${PV}
+ com.ibm.icu:icu4j-charset:${PV}
+ com.ibm.icu:icu4j-localespi:${PV}
+"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A set of Java libraries providing Unicode and Globalization support"
+HOMEPAGE="https://icu.unicode.org"
+SRC_URI="https://github.com/unicode-org/icu/archive/release-${PV/./-}.tar.gz -> icu-${PV}.tar.gz"
+S="${WORKDIR}/icu-release-${PV/./-}/icu4j/main"
+
+LICENSE="icu"
+SLOT="70"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junitparams:0 )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../../{CONTRIBUTING,README,SECURITY}.md )
+HTML_DOCS=( ../{APIChangeReport,readme}.html )
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+}
+
+src_compile() {
+ JAVA_GENTOO_CLASSPATH_EXTRA="icu4j.jar:icu4j-charset.jar:icu4j-localespi.jar"
+
+ einfo "Compiling icu4j.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu"
+ JAVA_JAR_FILENAME="icu4j.jar"
+ JAVA_MAIN_CLASS="com.ibm.icu.util.VersionInfo"
+ JAVA_RESOURCE_DIRS=(
+ collate/src/main/resources
+ core/src/main/resources
+ currdata/src/main/resources
+ langdata/src/main/resources
+ regiondata/src/main/resources
+ translit/src/main/resources
+ )
+ JAVA_SRC_DIR=(
+ collate/src/main/java
+ core/src/main/java
+ currdata/src/main/java
+ langdata/src/main/java
+ regiondata/src/main/java
+ translit/src/main/java
+ )
+ java-pkg-simple_src_compile
+ rm -r target || die
+
+ einfo "Compiling icu4j-charset.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu.charset"
+ JAVA_JAR_FILENAME="icu4j-charset.jar"
+ JAVA_MAIN_CLASS=""
+ JAVA_RESOURCE_DIRS=( charset/src/main/resources )
+ JAVA_SRC_DIR=( charset/src/main/java )
+ java-pkg-simple_src_compile
+ rm -r target || die
+
+ einfo "Compiling icu4j-localespi.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu.localespi"
+ JAVA_JAR_FILENAME="icu4j-localespi.jar"
+ JAVA_RESOURCE_DIRS=( localespi/src/main/resources )
+ JAVA_SRC_DIR=( localespi/src/main/java )
+ java-pkg-simple_src_compile
+ rm -r target || die
+
+ # javadocs
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ JAVA_SRC_DIR=(
+ collate/src/main/java
+ core/src/main/java
+ currdata/src/main/java
+ langdata/src/main/java
+ regiondata/src/main/java
+ translit/src/main/java
+ charset/src/main/java
+ localespi/src/main/java
+ )
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test () {
+ # TZ needed for some tests in com/ibm/icu/dev/test/format/DateFormatTest
+ export LC_ALL="en_US.UTF-8" TZ="US/Pacific"
+
+ JAVA_TEST_EXTRA_ARGS="-Djava.locale.providers=CLDR,COMPAT,SPI"
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4,junitparams"
+
+ einfo "Compiling framework-tests.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.ibm.icu.framework"
+ JAVA_JAR_FILENAME="framework-tests.jar"
+ JAVA_MAIN_CLASS="com.ibm.icu.dev.test.TestAll"
+ JAVA_RESOURCE_DIRS=( framework/src/test/resources )
+ JAVA_SRC_DIR=( framework/src/test/java )
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":framework-tests.jar"
+
+ einfo "Testing core aka icu4j.jar"
+ JAVA_TEST_RESOURCE_DIRS="core/src/test/resources"
+ JAVA_TEST_SRC_DIR="core/src/test/java"
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ # exclude invalid tests, not run by "mvn test"
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "*Test*.java" \
+ ! -name "ChineseTestCase.java" \
+ ! -name "DataDrivenNumberFormatTestUtility.java" \
+ ! -name "*Helper.java" \
+ ! -name "ModuleTest.java" \
+ ! -name "*Sample.java" \
+ ! -name "TestCase.java" \
+ ! -name "*TestData*.java" \
+ ! -name "*TestFmwk.java" \
+ ! -name "TestMessages.java" \
+ ! -name "TestUtils.java" \
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+
+ einfo "Creating core-tests.jar"
+ jar cvf core-tests.jar -C target/test-classes .
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":core-tests.jar"
+ JAVA_TEST_RUN_ONLY=""
+
+ einfo "Testing collate"
+ JAVA_TEST_RESOURCE_DIRS="collate/src/test/resources"
+ JAVA_TEST_SRC_DIR="collate/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing translit"
+ JAVA_TEST_EXCLUDES=(
+ # Invalid test classes, No runnable methods
+ com.ibm.icu.dev.test.TestBoilerplate
+ com.ibm.icu.dev.test.translit.TestUtility
+ )
+ JAVA_TEST_RESOURCE_DIRS="translit/src/test/resources"
+ JAVA_TEST_SRC_DIR="translit/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing charset"
+ JAVA_TEST_RESOURCE_DIRS=""
+ JAVA_TEST_SRC_DIR="charset/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing common_tests"
+ # "mvn test" runs only 90 tests here, Gentoo runs 99 but 9 of them fail.
+ # coverage tests fail because test handlers for the parametrized tests
+ # are not defined so the tests are broken and cannot succeed
+ JAVA_TEST_EXCLUDES=( com.ibm.icu.dev.test.serializable.CoverageTest )
+ JAVA_TEST_RESOURCE_DIRS=""
+ JAVA_TEST_SRC_DIR="common_tests/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing localespi"
+ JAVA_TEST_RESOURCE_DIRS=""
+ JAVA_TEST_SRC_DIR="localespi/src/test/java"
+ # Invalid test classes, No runnable methods
+ JAVA_TEST_EXCLUDES=( com.ibm.icu.dev.test.localespi.TestUtil )
+ # https://bugs.gentoo.org/827212, "mvn test" does not run it at all
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if [[ "${vm_version}" != "1.8" ]] ; then
+ java-pkg-simple_src_test
+ fi
+}
+
+src_install() {
+ default
+ java-pkg_dojar "icu4j.jar"
+ java-pkg_dojar "icu4j-charset.jar"
+ java-pkg_dojar "icu4j-localespi.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+ if use source; then
+ java-pkg_dosrc "classes"
+ fi
+}
diff --git a/dev-java/jtwig-core/Manifest b/dev-java/jtwig-core/Manifest
new file mode 100644
index 000000000000..0f09a0671e7a
--- /dev/null
+++ b/dev-java/jtwig-core/Manifest
@@ -0,0 +1 @@
+DIST jtwig-core-5.87.0.tar.gz 212205 BLAKE2B 4c7386e0719c05bca6a8ee977e7b936931c095a675b9c7bc83708e7603da7ac8017cdd270d76e148ddf8037da38ca6448c4b20649c47f0e26c8c949e6a6e094a SHA512 245e8e8a4be48be0ad2e803f6868dc9b7190cf4ee2ed33a1e8c7b439d56fa5eeffeb47134f96790f9d98adb664fe40c773990056aaf7c30b665612986dde5202
diff --git a/dev-java/jtwig-core/jtwig-core-5.87.0.ebuild b/dev-java/jtwig-core/jtwig-core-5.87.0.ebuild
new file mode 100644
index 000000000000..0ef9f03eac1c
--- /dev/null
+++ b/dev-java/jtwig-core/jtwig-core-5.87.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.jtwig:jtwig-core:${PV}.RELEASE"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jtwig Reflection Library"
+HOMEPAGE="https://github.com/jtwig/jtwig-core"
+SRC_URI="https://github.com/jtwig/jtwig-core/archive/${PV}.RELEASE.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}.RELEASE"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+# no tests because
+# net.jperf does not exist
+# org.unitils.reflectionassert does not exist
+RESTRICT="test"
+
+DEPEND="
+ dev-java/commons-lang:3.6
+ dev-java/concurrentlinkedhashmap-lru:0
+ dev-java/guava:0
+ dev-java/jtwig-reflection:0
+ dev-java/parboiled:0
+ dev-java/slf4j-api:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/commons-io:1
+ dev-java/commons-lang:3.6
+ dev-java/hamcrest:0
+ dev-java/mockito:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+JAVA_CLASSPATH_EXTRA="
+ commons-lang-3.6
+ concurrentlinkedhashmap-lru
+ guava
+ jtwig-reflection
+ parboiled
+ slf4j-api
+"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ commons-io-1
+ commons-lang-3.6
+ hamcrest
+ junit-4
+ mockito
+"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
diff --git a/dev-java/jtwig-core/metadata.xml b/dev-java/jtwig-core/metadata.xml
new file mode 100644
index 000000000000..a63267abaf71
--- /dev/null
+++ b/dev-java/jtwig-core/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+
+ <origin>gentoo-staging</origin>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-java/protobuf-java/Manifest b/dev-java/protobuf-java/Manifest
index 60307769f3dc..6b1703b4d789 100644
--- a/dev-java/protobuf-java/Manifest
+++ b/dev-java/protobuf-java/Manifest
@@ -1,3 +1,5 @@
DIST protobuf-23.0.tar.gz 5039837 BLAKE2B 63e02590b03fd9206cdfc4a26edeb2fa55dac902f5365c33c9e9340a722f552e4a5c82d1a0b25b84fcb675d5d06b768fd92cf472743d2361295129ae9faa02f3 SHA512 46c263fab189fdc310c7310d1a3d9e76472e5d96f16228bc4b946d4211afc64188d563ec70250c11a3dd05d18158b72ccf173567bd59aa45310eff62cd5f194d
+DIST protobuf-23.3.tar.gz 5043803 BLAKE2B ee2edee230969555c9ef95069c7b1d6c23c3d1f8ea1b2249fb3e9f6fcf63312c6e10e9da65b80629fb08d5fb08d05a19bb9c752c25b892c1e3fd6f18b9279eb3 SHA512 646af367dbc61b42e322cf0b335f360e428b272e2b1f5361b2f17c18d3dc9dddd615e1279436028b1a42275a0beadda37c2c934fc27d6c892131cc8d526d8b3b
DIST protobuf-24.2.tar.gz 5179130 BLAKE2B a1e3da4e95072391fa4abf671a9eb77806f1b3864219e1e0c024156558e2ecd9e3cabee367efaf15626a199ae413dced3f29f601820611d37dd733c92ffc06c0 SHA512 fee9f5fc0e615e49347320e37b560112f43d13c63050701e25b3348e9d4aa59e80c7d810f7da12764b1b9eeee8efa35be7743c5ebbb0a12c78f5924f1544c356
+DIST protobuf-25.1.tar.gz 5878124 BLAKE2B a0b917e4518b07b221afd01e801e45b5b6fa35c7ccf8c21120d6a63f7174e53cc37d0516b1802d9243f8bb37b72b7f460a36dcbf0fffb09e011b05315c53efc3 SHA512 d2fad2188118ced2cd951bdb472d72cc9e9b2158c88eeca652c76332a884b5b5b4b58628f7777272fa693140753823584ea9c7924f1655b1d5a363f59bdf7a4c
DIST truth-1.1.3.jar 243021 BLAKE2B a59149038c62ef5dd352b13d4b393e1b7715fbafe5ed86ec2d16d722c738a31dcdca10132fc73b17b367ac4309e5407ba2e489f8d4c8fbca60ce5f35ae75d1e3 SHA512 f29a9fb070aff8a32358a7b6c8998c0095de5d8d68afa7f7bac759c7050309deff929e767657ecbbefd96163460f10255ca01bc567ab30df4834b9d916a4fae8
diff --git a/dev-java/protobuf-java/protobuf-java-3.23.3.ebuild b/dev-java/protobuf-java/protobuf-java-3.23.3.ebuild
new file mode 100644
index 000000000000..484bbc788521
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.23.3.ebuild
@@ -0,0 +1,164 @@
+# Copyright 2008-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.google.protobuf:protobuf-java:3.23.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.23.3 from the 23.3 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV#3.}.tar.gz -> protobuf-${PV#3.}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${PV#3.}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${PV#3.}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230125.3 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-3.25.1.ebuild b/dev-java/protobuf-java/protobuf-java-3.25.1.ebuild
new file mode 100644
index 000000000000..2c2fc51fb3b6
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.25.1.ebuild
@@ -0,0 +1,166 @@
+# Copyright 2008-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.google.protobuf:protobuf-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.25.1 from the 25.1 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+MY_PV3="${PV#3.}"
+MY_PV="${MY_PV3/_rc/-rc}"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${MY_PV}.tar.gz -> protobuf-${MY_PV}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${MY_PV3}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230802.0 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/swt/swt-4.30.ebuild b/dev-java/swt/swt-4.30-r1.ebuild
index ca3db3c7eb76..78bbe7198020 100644
--- a/dev-java/swt/swt-4.30.ebuild
+++ b/dev-java/swt/swt-4.30-r1.ebuild
@@ -19,7 +19,7 @@ SRC_URI="
ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
-SLOT="4.27"
+SLOT="4.30"
KEYWORDS="~amd64 ~arm64 ~ppc64"
IUSE="cairo opengl webkit"