summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/angus-activation/metadata.xml3
-rw-r--r--dev-java/ant-antlr/Manifest2
-rw-r--r--dev-java/ant-antlr/ant-antlr-1.10.9.ebuild20
-rw-r--r--dev-java/ant-apache-bcel/Manifest2
-rw-r--r--dev-java/ant-apache-bcel/ant-apache-bcel-1.10.9.ebuild15
-rw-r--r--dev-java/ant-apache-bsf/Manifest2
-rw-r--r--dev-java/ant-apache-bsf/ant-apache-bsf-1.10.9.ebuild23
-rw-r--r--dev-java/ant-apache-log4j/Manifest2
-rw-r--r--dev-java/ant-apache-log4j/ant-apache-log4j-1.10.9-r1.ebuild15
-rw-r--r--dev-java/ant-apache-oro/Manifest2
-rw-r--r--dev-java/ant-apache-oro/ant-apache-oro-1.10.9.ebuild15
-rw-r--r--dev-java/ant-apache-oro/metadata.xml8
-rw-r--r--dev-java/ant-apache-regexp/Manifest2
-rw-r--r--dev-java/ant-apache-regexp/ant-apache-regexp-1.10.9.ebuild15
-rw-r--r--dev-java/ant-apache-regexp/metadata.xml8
-rw-r--r--dev-java/ant-apache-resolver/Manifest2
-rw-r--r--dev-java/ant-apache-resolver/ant-apache-resolver-1.10.9.ebuild15
-rw-r--r--dev-java/ant-apache-resolver/metadata.xml8
-rw-r--r--dev-java/ant-apache-xalan2/Manifest2
-rw-r--r--dev-java/ant-apache-xalan2/ant-apache-xalan2-1.10.9.ebuild22
-rw-r--r--dev-java/ant-apache-xalan2/metadata.xml8
-rw-r--r--dev-java/ant-commons-logging/Manifest2
-rw-r--r--dev-java/ant-commons-logging/ant-commons-logging-1.10.9.ebuild14
-rw-r--r--dev-java/ant-commons-logging/metadata.xml8
-rw-r--r--dev-java/ant-commons-net/Manifest2
-rw-r--r--dev-java/ant-commons-net/ant-commons-net-1.10.9.ebuild14
-rw-r--r--dev-java/ant-commons-net/metadata.xml8
-rw-r--r--dev-java/ant-core/Manifest2
-rw-r--r--dev-java/ant-core/ant-core-1.10.14.ebuild26
-rw-r--r--dev-java/ant-core/ant-core-1.10.9-r5.ebuild159
-rw-r--r--dev-java/ant-core/metadata.xml5
-rw-r--r--dev-java/ant-eclipse-ecj/Manifest2
-rw-r--r--dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.15-r1.ebuild50
-rw-r--r--dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.26.ebuild53
-rw-r--r--dev-java/ant-eclipse-ecj/metadata.xml15
-rw-r--r--dev-java/ant-jai/Manifest2
-rw-r--r--dev-java/ant-jai/ant-jai-1.10.9.ebuild16
-rw-r--r--dev-java/ant-jai/metadata.xml8
-rw-r--r--dev-java/ant-javamail/Manifest2
-rw-r--r--dev-java/ant-javamail/ant-javamail-1.10.9-r1.ebuild18
-rw-r--r--dev-java/ant-javamail/metadata.xml8
-rw-r--r--dev-java/ant-jdepend/Manifest2
-rw-r--r--dev-java/ant-jdepend/ant-jdepend-1.10.9.ebuild14
-rw-r--r--dev-java/ant-jdepend/metadata.xml8
-rw-r--r--dev-java/ant-jmf/Manifest2
-rw-r--r--dev-java/ant-jmf/ant-jmf-1.10.9.ebuild16
-rw-r--r--dev-java/ant-jmf/metadata.xml8
-rw-r--r--dev-java/ant-jsch/Manifest2
-rw-r--r--dev-java/ant-jsch/ant-jsch-1.10.9.ebuild14
-rw-r--r--dev-java/ant-jsch/metadata.xml8
-rw-r--r--dev-java/ant-junit/Manifest2
-rw-r--r--dev-java/ant-junit/ant-junit-1.10.9.ebuild24
-rw-r--r--dev-java/ant-junit/metadata.xml8
-rw-r--r--dev-java/ant-junit4/Manifest2
-rw-r--r--dev-java/ant-junit4/ant-junit4-1.10.9.ebuild37
-rw-r--r--dev-java/ant-junit4/metadata.xml8
-rw-r--r--dev-java/ant-junitlauncher/Manifest2
-rw-r--r--dev-java/ant-junitlauncher/ant-junitlauncher-1.10.9.ebuild12
-rw-r--r--dev-java/ant-junitlauncher/metadata.xml8
-rw-r--r--dev-java/ant-swing/Manifest2
-rw-r--r--dev-java/ant-swing/ant-swing-1.10.9.ebuild15
-rw-r--r--dev-java/ant-swing/metadata.xml8
-rw-r--r--dev-java/ant-testutil/Manifest2
-rw-r--r--dev-java/ant-testutil/ant-testutil-1.10.9.ebuild37
-rw-r--r--dev-java/ant-testutil/metadata.xml8
-rw-r--r--dev-java/ant-xz/Manifest2
-rw-r--r--dev-java/ant-xz/ant-xz-1.10.9.ebuild17
-rw-r--r--dev-java/ant-xz/metadata.xml8
-rw-r--r--dev-java/ant/Manifest2
-rw-r--r--dev-java/ant/ant-1.10.14-r3.ebuild395
-rw-r--r--dev-java/ant/ant-1.10.9.ebuild47
-rw-r--r--dev-java/ant/files/1.10.9-launch.patch361
-rw-r--r--dev-java/ant/files/ant-1.10.14-AntTest.patch28
-rw-r--r--dev-java/ant/files/ant-1.10.14-AntlibTest.patch40
-rw-r--r--dev-java/ant/files/ant-1.10.14-JavaTest.patch102
-rw-r--r--dev-java/ant/files/ant-1.10.14-LinkTest.patch87
-rw-r--r--dev-java/ant/files/ant-1.10.14-PathTest.patch30
-rw-r--r--dev-java/ant/metadata.xml8
-rw-r--r--dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild (renamed from dev-java/antlr-tool/antlr-tool-4.9.3.ebuild)6
-rw-r--r--dev-java/antunit/Manifest2
-rw-r--r--dev-java/antunit/antunit-1.4.1-r1.ebuild54
-rw-r--r--dev-java/antunit/files/antunit-1.4.1-gentoo.patch62
-rw-r--r--dev-java/antunit/metadata.xml10
-rw-r--r--dev-java/apache-rat-core/Manifest1
-rw-r--r--dev-java/apache-rat-core/apache-rat-core-0.13.ebuild69
-rw-r--r--dev-java/apache-rat-core/files/apache-rat-core-0.13-commons-lang3.patch39
-rw-r--r--dev-java/apache-rat-core/metadata.xml8
-rw-r--r--dev-java/apache-rat-tasks/Manifest1
-rw-r--r--dev-java/apache-rat-tasks/apache-rat-tasks-0.13.ebuild71
-rw-r--r--dev-java/apache-rat-tasks/files/apache-rat-tasks-0.13-fix-tests.patch41
-rw-r--r--dev-java/apache-rat-tasks/metadata.xml8
-rw-r--r--dev-java/apache-rat/apache-rat-0.15-r1.ebuild (renamed from dev-java/apache-rat/apache-rat-0.15.ebuild)33
-rw-r--r--dev-java/aspectj/aspectj-1.9.7-r1.ebuild (renamed from dev-java/aspectj/aspectj-1.9.7.ebuild)10
-rw-r--r--dev-java/aspectj/metadata.xml4
-rw-r--r--dev-java/auto-service-annotations/Manifest1
-rw-r--r--dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild24
-rw-r--r--dev-java/auto-service-annotations/metadata.xml (renamed from dev-java/ant-apache-bsf/metadata.xml)4
-rw-r--r--dev-java/batik/batik-1.17-r1.ebuild (renamed from dev-java/batik/batik-1.17.ebuild)4
-rw-r--r--dev-java/bcmail/Manifest2
-rw-r--r--dev-java/bcmail/bcmail-1.77-r1.ebuild (renamed from dev-java/bcmail/bcmail-1.76.ebuild)15
-rw-r--r--dev-java/bcpg/Manifest2
-rw-r--r--dev-java/bcpg/bcpg-1.77.ebuild (renamed from dev-java/bcpg/bcpg-1.76.ebuild)12
-rw-r--r--dev-java/bcpkix/Manifest4
-rw-r--r--dev-java/bcpkix/bcpkix-1.77.ebuild (renamed from dev-java/bcpkix/bcpkix-1.76.ebuild)18
-rw-r--r--dev-java/bcprov/Manifest4
-rw-r--r--dev-java/bcprov/bcprov-1.77.ebuild (renamed from dev-java/bcprov/bcprov-1.76.ebuild)18
-rw-r--r--dev-java/bcutil/Manifest2
-rw-r--r--dev-java/bcutil/bcutil-1.77.ebuild (renamed from dev-java/bcutil/bcutil-1.76.ebuild)15
-rw-r--r--dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild4
-rw-r--r--dev-java/bnd-ant/Manifest1
-rw-r--r--dev-java/bnd-ant/bnd-ant-7.0.0.ebuild46
-rw-r--r--dev-java/bnd-ant/metadata.xml (renamed from dev-java/ant-apache-log4j/metadata.xml)4
-rw-r--r--dev-java/bnd-junit/Manifest1
-rw-r--r--dev-java/bnd-junit/bnd-junit-2.1.0-r2.ebuild48
-rw-r--r--dev-java/bnd-junit/metadata.xml11
-rw-r--r--dev-java/bnd-util/bnd-util-7.0.0.ebuild4
-rw-r--r--dev-java/bnd/Manifest1
-rw-r--r--dev-java/bnd/bnd-7.0.0.ebuild100
-rw-r--r--dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch21
-rw-r--r--dev-java/bnd/metadata.xml10
-rw-r--r--dev-java/bndlib/Manifest1
-rw-r--r--dev-java/bndlib/bndlib-2.1.0-r1.ebuild72
-rw-r--r--dev-java/bndlib/bndlib-7.0.0.ebuild4
-rw-r--r--dev-java/bsf/Manifest1
-rw-r--r--dev-java/bsf/bsf-2.4.0-r3.ebuild109
-rw-r--r--dev-java/bsf/bsf-2.4.0-r5.ebuild77
-rw-r--r--dev-java/bsf/files/bsf-2.4.0-PyJavaInstance.patch35
-rw-r--r--dev-java/bsf/files/bsf-2.4.0-build-properties.xml44
-rw-r--r--dev-java/bsf/metadata.xml4
-rw-r--r--dev-java/caffeine/Manifest1
-rw-r--r--dev-java/caffeine/caffeine-2.6.2-r1.ebuild33
-rw-r--r--dev-java/caffeine/metadata.xml10
-rw-r--r--dev-java/checker-framework-qual/Manifest2
-rw-r--r--dev-java/checker-framework-qual/checker-framework-qual-3.42.0.ebuild (renamed from dev-java/checker-framework-qual/checker-framework-qual-3.14.0.ebuild)14
-rw-r--r--dev-java/checker-framework-qual/metadata.xml3
-rw-r--r--dev-java/commons-beanutils/Manifest2
-rw-r--r--dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild101
-rw-r--r--dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild84
-rw-r--r--dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch187
-rw-r--r--dev-java/commons-codec/Manifest2
-rw-r--r--dev-java/commons-codec/commons-codec-1.16.1.ebuild46
-rw-r--r--dev-java/commons-collections/commons-collections-3.2.2-r1.ebuild70
-rw-r--r--dev-java/commons-collections/commons-collections-3.2.2-r2.ebuild4
-rw-r--r--dev-java/commons-compress/Manifest5
-rw-r--r--dev-java/commons-compress/commons-compress-1.21-r1.ebuild121
-rw-r--r--dev-java/commons-compress/commons-compress-1.26.0-r1.ebuild44
-rw-r--r--dev-java/commons-compress/commons-compress-1.26.1.ebuild43
-rw-r--r--dev-java/commons-compress/metadata.xml11
-rw-r--r--dev-java/commons-httpclient/Manifest1
-rw-r--r--dev-java/commons-httpclient/commons-httpclient-3.1-r2.ebuild68
-rw-r--r--dev-java/commons-httpclient/commons-httpclient-3.1-r3.ebuild54
-rw-r--r--dev-java/commons-httpclient/files/commons-httpclient-3.1-SSLProtocolSocketFactory.java.patch369
-rw-r--r--dev-java/commons-imaging/Manifest2
-rw-r--r--dev-java/commons-imaging/commons-imaging-0.97.ebuild45
-rw-r--r--dev-java/commons-imaging/commons-imaging-1.0_alpha3-r2.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/commons-io/Manifest3
-rw-r--r--dev-java/commons-io/commons-io-2.11.0-r1.ebuild54
-rw-r--r--dev-java/commons-io/commons-io-2.15.1.ebuild30
-rw-r--r--dev-java/commons-io/metadata.xml11
-rw-r--r--dev-java/commons-lang/Manifest2
-rw-r--r--dev-java/commons-lang/commons-lang-3.14.0.ebuild29
-rw-r--r--dev-java/commons-net/Manifest2
-rw-r--r--dev-java/commons-net/commons-net-3.10.0.ebuild38
-rw-r--r--dev-java/commons-validator/Manifest2
-rw-r--r--dev-java/commons-validator/commons-validator-1.8.0.ebuild36
-rw-r--r--dev-java/commons-validator/metadata.xml5
-rw-r--r--dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild (renamed from dev-java/commons-vfs/commons-vfs-2.0-r2.ebuild)13
-rw-r--r--dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild4
-rw-r--r--dev-java/conversant-disruptor/metadata.xml3
-rw-r--r--dev-java/coursier-bin/Manifest3
-rw-r--r--dev-java/coursier-bin/coursier-bin-2.1.8.ebuild (renamed from dev-java/coursier-bin/coursier-bin-2.1.5.ebuild)2
-rw-r--r--dev-java/coursier-bin/coursier-bin-2.1.9.ebuild30
-rw-r--r--dev-java/cpptasks/cpptasks-1.0_beta5-r2.ebuild (renamed from dev-java/cpptasks/cpptasks-1.0_beta5-r1.ebuild)8
-rw-r--r--dev-java/eclipse-ecj/Manifest3
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.15-r1.ebuild65
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.15.ebuild74
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild64
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild73
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.26.ebuild72
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.27.ebuild67
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild (renamed from dev-java/eclipse-ecj/eclipse-ecj-4.30.ebuild)10
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild75
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.15 (renamed from dev-java/ant-eclipse-ecj/files/ecj-4.15)0
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.207
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.26 (renamed from dev-java/ant-eclipse-ecj/files/ecj-4.26)0
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.277
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.317
-rw-r--r--dev-java/eclipse-ecj/files/eclipse-ecj-4.31-java21.patch12
-rw-r--r--dev-java/eclipse-ecj/metadata.xml3
-rw-r--r--dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild4
-rw-r--r--dev-java/emma/emma-2.0.5312-r4.ebuild52
-rw-r--r--dev-java/emma/emma-2.0.5312-r6.ebuild (renamed from dev-java/emma/emma-2.0.5312-r5.ebuild)22
-rw-r--r--dev-java/error-prone-annotations/Manifest2
-rw-r--r--dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild (renamed from dev-java/error-prone-annotations/error-prone-annotations-2.16.ebuild)8
-rw-r--r--dev-java/failureaccess/Manifest1
-rw-r--r--dev-java/failureaccess/failureaccess-32.1.2.ebuild25
-rw-r--r--dev-java/failureaccess/metadata.xml18
-rw-r--r--dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild4
-rw-r--r--dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild7
-rw-r--r--dev-java/findbugs-annotations/metadata.xml3
-rw-r--r--dev-java/fishbowl/metadata.xml3
-rw-r--r--dev-java/fop/Manifest2
-rw-r--r--dev-java/fop/files/fop-2.8-skip-failing-tests.patch48
-rw-r--r--dev-java/fop/fop-2.8-r1.ebuild188
-rw-r--r--dev-java/fop/fop-2.9.ebuild19
-rw-r--r--dev-java/gin/metadata.xml4
-rw-r--r--dev-java/glassfish-persistence/Manifest1
-rw-r--r--dev-java/glassfish-persistence/files/glassfish-persistence-1.0-python2.7-sax-parser.patch11
-rw-r--r--dev-java/glassfish-persistence/glassfish-persistence-1.0-r2.ebuild39
-rw-r--r--dev-java/glassfish-persistence/metadata.xml7
-rw-r--r--dev-java/gnu-jaf/Manifest1
-rw-r--r--dev-java/gnu-jaf/gnu-jaf-1.1.2-r1.ebuild29
-rw-r--r--dev-java/gnu-jaf/metadata.xml26
-rw-r--r--dev-java/gradle-bin/Manifest13
-rw-r--r--dev-java/gradle-bin/gradle-bin-6.8.3.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-7.1.1.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-7.2.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-7.3.3.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-7.4.2.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-7.6.1.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.0.2.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.1.1.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.3.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.4.ebuild4
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.5.ebuild (renamed from dev-java/gradle-bin/gradle-bin-8.2.1.ebuild)2
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.7.ebuild (renamed from dev-java/gradle-bin/gradle-bin-7.5.1.ebuild)4
-rw-r--r--dev-java/gson/Manifest1
-rw-r--r--dev-java/gson/gson-2.10.1.ebuild59
-rw-r--r--dev-java/gson/gson-2.10.2_pre20231128.ebuild6
-rw-r--r--dev-java/guava-testlib/Manifest4
-rw-r--r--dev-java/guava-testlib/guava-testlib-33.0.0.ebuild (renamed from dev-java/guava-testlib/guava-testlib-32.1.2.ebuild)14
-rw-r--r--dev-java/guava-testlib/metadata.xml3
-rw-r--r--dev-java/guava/Manifest2
-rw-r--r--dev-java/guava/guava-33.0.0.ebuild (renamed from dev-java/guava/guava-32.1.2-r1.ebuild)22
-rw-r--r--dev-java/guice/metadata.xml1
-rw-r--r--dev-java/gwt/metadata.xml4
-rw-r--r--dev-java/htmlcleaner/Manifest1
-rw-r--r--dev-java/htmlcleaner/files/htmlcleaner-2.24-fix-tests.patch26
-rw-r--r--dev-java/htmlcleaner/htmlcleaner-2.26.ebuild55
-rw-r--r--dev-java/htmlcleaner/htmlcleaner-2.29-r1.ebuild (renamed from dev-java/htmlcleaner/htmlcleaner-2.29.ebuild)8
-rw-r--r--dev-java/icedtea-bin/icedtea-bin-3.16.0-r2.ebuild4
-rw-r--r--dev-java/icedtea-bin/icedtea-bin-3.16.0.ebuild132
-rw-r--r--dev-java/icedtea-bin/metadata.xml4
-rw-r--r--dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild6
-rw-r--r--dev-java/icedtea/Manifest13
-rw-r--r--dev-java/icedtea/files/icedtea.env.sh17
-rw-r--r--dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch16
-rw-r--r--dev-java/icedtea/icedtea-3.21.0.ebuild385
-rw-r--r--dev-java/icedtea/metadata.xml38
-rw-r--r--dev-java/icu4j/Manifest2
-rw-r--r--dev-java/icu4j/icu4j-73.2.ebuild240
-rw-r--r--dev-java/icu4j/icu4j-74.2-r1.ebuild193
-rw-r--r--dev-java/jackson-core/metadata.xml1
-rw-r--r--dev-java/jackson-databind/metadata.xml1
-rw-r--r--dev-java/jackson-dataformat-xml/metadata.xml1
-rw-r--r--dev-java/jackson-module-jakarta-xmlbind/metadata.xml1
-rw-r--r--dev-java/jakarta-mail-api/Manifest1
-rw-r--r--dev-java/jakarta-mail-api/jakarta-mail-api-2.1.3.ebuild64
-rw-r--r--dev-java/jakarta-mail/files/jakarta-mail-2.0.1-LogManagerPropertiesTest.patch11
-rw-r--r--dev-java/jakarta-mail/jakarta-mail-2.0.1.ebuild42
-rw-r--r--dev-java/jakartaee-migration/Manifest2
-rw-r--r--dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild (renamed from dev-java/jakartaee-migration/jakartaee-migration-1.0.7-r1.ebuild)60
-rw-r--r--dev-java/jakartaee-migration/metadata.xml11
-rw-r--r--dev-java/jal/jal-20031117-r7.ebuild (renamed from dev-java/jal/jal-20031117-r6.ebuild)19
-rw-r--r--dev-java/java-config/java-config-2.3.3-r1.ebuild2
-rw-r--r--dev-java/java-diff-utils/java-diff-utils-4.12.ebuild2
-rw-r--r--dev-java/javacc/Manifest3
-rw-r--r--dev-java/javacc/javacc-4.1.ebuild66
-rw-r--r--dev-java/javacc/javacc-5.0-r5.ebuild (renamed from dev-java/javacc/javacc-5.0-r4.ebuild)6
-rw-r--r--dev-java/javacc/javacc-7.0.13.ebuild54
-rw-r--r--dev-java/javacc/javacc-7.0.4.ebuild66
-rw-r--r--dev-java/javacc/metadata.xml3
-rw-r--r--dev-java/javaparser-core/Manifest1
-rw-r--r--dev-java/javaparser-core/javaparser-core-3.13.10.ebuild45
-rw-r--r--dev-java/javaparser-core/metadata.xml10
-rw-r--r--dev-java/javax-inject/metadata.xml3
-rw-r--r--dev-java/javax-mail/Manifest3
-rw-r--r--dev-java/javax-mail/javax-mail-1.6.7-r2.ebuild (renamed from dev-java/javax-mail/javax-mail-1.6.7-r1.ebuild)36
-rw-r--r--dev-java/jaxb-api/Manifest1
-rw-r--r--dev-java/jaxb-api/files/jaxb-api-2.3.3-dropSecurityManager.patch10
-rw-r--r--dev-java/jaxb-api/files/jaxb-api-4.0.2-dropSecurityManager.patch12
-rw-r--r--dev-java/jaxb-api/jaxb-api-2.3.3-r1.ebuild50
-rw-r--r--dev-java/jaxb-api/jaxb-api-2.3.3-r2.ebuild42
-rw-r--r--dev-java/jaxb-api/jaxb-api-4.0.2.ebuild43
-rw-r--r--dev-java/jaxb-api/metadata.xml4
-rw-r--r--dev-java/jboss-jms-api/metadata.xml3
-rw-r--r--dev-java/jctools-core/Manifest3
-rw-r--r--dev-java/jctools-core/files/jctools-core-4.0.3-increase-TEST_TIMEOUT.patch13
-rw-r--r--dev-java/jctools-core/jctools-core-4.0.1.ebuild70
-rw-r--r--dev-java/jctools-core/jctools-core-4.0.3.ebuild (renamed from dev-java/jctools-core/jctools-core-4.0.2.ebuild)17
-rw-r--r--dev-java/jdbc-mysql/Manifest2
-rw-r--r--dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.ebuild (renamed from dev-java/jdbc-mysql/jdbc-mysql-8.1.0.ebuild)4
-rw-r--r--dev-java/jdbc-mysql/jdbc-mysql-8.3.0.ebuild55
-rw-r--r--dev-java/jdbc-postgresql/Manifest2
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-42.6.0.ebuild52
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-42.7.1.ebuild58
-rw-r--r--dev-java/jdepend/jdepend-2.10-r1.ebuild25
-rw-r--r--dev-java/jdepend/jdepend-2.10.ebuild28
-rw-r--r--dev-java/jdepend/metadata.xml11
-rw-r--r--dev-java/jeromq/metadata.xml3
-rw-r--r--dev-java/jimfs/Manifest2
-rw-r--r--dev-java/jimfs/jimfs-1.3.0.ebuild70
-rw-r--r--dev-java/jimfs/metadata.xml10
-rw-r--r--dev-java/jmh-core/Manifest2
-rw-r--r--dev-java/jmh-core/jmh-core-1.37.ebuild (renamed from dev-java/jmh-core/jmh-core-1.35.ebuild)28
-rw-r--r--dev-java/jmh-generator-annprocess/Manifest1
-rw-r--r--dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild28
-rw-r--r--dev-java/jmh-generator-annprocess/metadata.xml (renamed from dev-java/ant-apache-bcel/metadata.xml)3
-rw-r--r--dev-java/jna/Manifest1
-rw-r--r--dev-java/jna/jna-5.14.0-r1.ebuild198
-rw-r--r--dev-java/jnacl/metadata.xml1
-rw-r--r--dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild24
-rw-r--r--dev-java/json-smart/json-smart-2.5.0.ebuild4
-rw-r--r--dev-java/json/Manifest3
-rw-r--r--dev-java/json/json-20220320.ebuild57
-rw-r--r--dev-java/json/json-20231013-r1.ebuild4
-rw-r--r--dev-java/json/json-20240205-r1.ebuild62
-rw-r--r--dev-java/jtidy/jtidy-938.ebuild2
-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.xml (renamed from dev-java/ant-antlr/metadata.xml)4
-rw-r--r--dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild4
-rw-r--r--dev-java/junit-dataprovider/metadata.xml3
-rw-r--r--dev-java/junit/Manifest3
-rw-r--r--dev-java/junit/files/junit-4.13.2_p20240222-ignore-failing-test.patch85
-rw-r--r--dev-java/junit/junit-3.8.2-r2.ebuild24
-rw-r--r--dev-java/junit/junit-4.13.2-r1.ebuild2
-rw-r--r--dev-java/junit/junit-4.13.2_p20240222.ebuild53
-rw-r--r--dev-java/junit/junit-5.10.2.ebuild351
-rw-r--r--dev-java/junit/junit-5.9.2.ebuild6
-rw-r--r--dev-java/leiningen-bin/Manifest4
-rw-r--r--dev-java/leiningen-bin/leiningen-bin-2.11.2.ebuild (renamed from dev-java/leiningen-bin/leiningen-bin-2.9.8.ebuild)2
-rw-r--r--dev-java/libg/Manifest1
-rw-r--r--dev-java/libg/libg-2.1.0-r2.ebuild48
-rw-r--r--dev-java/libg/libg-7.0.0.ebuild4
-rw-r--r--dev-java/lz4-java/files/lz4-java-1.8.0-gentoo-classpath.xml7
-rw-r--r--dev-java/lz4-java/files/lz4-java-1.8.0-print-os-props.patch31
-rw-r--r--dev-java/lz4-java/files/lz4-java-1.8.0-r1-Makefile47
-rw-r--r--dev-java/lz4-java/files/lz4-java-1.8.0-skip-ivy.patch91
-rw-r--r--dev-java/lz4-java/lz4-java-1.8.0-r1.ebuild101
-rw-r--r--dev-java/lz4-java/lz4-java-1.8.0-r4.ebuild4
-rw-r--r--dev-java/lzmajio/metadata.xml5
-rw-r--r--dev-java/maven-bin/Manifest1
-rw-r--r--dev-java/maven-bin/maven-bin-3.9.5-r1.ebuild64
-rw-r--r--dev-java/maven-bin/maven-bin-3.9.6.ebuild4
-rw-r--r--dev-java/memoryfilesystem/metadata.xml3
-rw-r--r--dev-java/mill-bin/Manifest3
-rw-r--r--dev-java/mill-bin/mill-bin-0.11.6.ebuild (renamed from dev-java/mill-bin/mill-bin-0.11.4.ebuild)2
-rw-r--r--dev-java/mill-bin/mill-bin-0.11.7.ebuild26
-rw-r--r--dev-java/mvel/Manifest1
-rw-r--r--dev-java/mvel/files/mvel-2.3.2-ignore-failing-tests.patch43
-rw-r--r--dev-java/mvel/files/mvel-2.3.2-update-supported-java-versions.patch51
-rw-r--r--dev-java/mvel/files/mvel-2.3.2-update-version-in-output.patch26
-rw-r--r--dev-java/mvel/mvel-2.3.2-r1.ebuild81
-rw-r--r--dev-java/mvel/mvel-2.5.0.ebuild4
-rw-r--r--dev-java/openjdk-bin/Manifest45
-rw-r--r--dev-java/openjdk-bin/metadata.xml4
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild (renamed from dev-java/openjdk-bin/openjdk-bin-11.0.20.1_p1.ebuild)2
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-17.0.10_p7.ebuild (renamed from dev-java/openjdk-bin/openjdk-bin-17.0.8.1_p1.ebuild)2
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-21.0.2_p13.ebuild (renamed from dev-java/openjdk-bin/openjdk-bin-21.0.1_p12.ebuild)5
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-8.402_p06.ebuild (renamed from dev-java/openjdk-bin/openjdk-bin-8.382_p05.ebuild)2
-rw-r--r--dev-java/openjdk-jre-bin/metadata.xml4
-rw-r--r--dev-java/openjdk/Manifest10
-rw-r--r--dev-java/openjdk/files/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch41
-rw-r--r--dev-java/openjdk/files/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch48
-rw-r--r--dev-java/openjdk/files/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch38
-rw-r--r--dev-java/openjdk/files/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch61
-rw-r--r--dev-java/openjdk/metadata.xml6
-rw-r--r--dev-java/openjdk/openjdk-11.0.22_p7.ebuild (renamed from dev-java/openjdk/openjdk-11.0.20.1_p1.ebuild)10
-rw-r--r--dev-java/openjdk/openjdk-17.0.10_p7.ebuild (renamed from dev-java/openjdk/openjdk-17.0.8.1_p1.ebuild)16
-rw-r--r--dev-java/openjdk/openjdk-21.0.2_p13.ebuild (renamed from dev-java/openjdk/openjdk-21.0.1_p12.ebuild)10
-rw-r--r--dev-java/openjdk/openjdk-8.402_p06-r1.ebuild (renamed from dev-java/openjdk/openjdk-8.382_p05.ebuild)73
-rw-r--r--dev-java/openjfx/Manifest1
-rw-r--r--dev-java/openjfx/files/11/0001-c99.patch22
-rw-r--r--dev-java/openjfx/files/11/0002-c99.patch18
-rw-r--r--dev-java/openjfx/files/11/0003-c99.patch19
-rw-r--r--dev-java/openjfx/files/11/respect-cc.patch15
-rw-r--r--dev-java/openjfx/files/11/strip-blank-elements-flags.patch29
-rw-r--r--dev-java/openjfx/metadata.xml4
-rw-r--r--dev-java/openjfx/openjfx-11.0.11_p1-r3.ebuild (renamed from dev-java/openjfx/openjfx-11.0.11_p1-r1.ebuild)22
-rw-r--r--dev-java/openjfx/openjfx-11.0.9_p0-r1.ebuild223
-rw-r--r--dev-java/openjfx/openjfx-8.1000-r2.ebuild (renamed from dev-java/openjfx/openjfx-8.1000-r1.ebuild)12
-rw-r--r--dev-java/osgi-compendium/Manifest1
-rw-r--r--dev-java/osgi-compendium/metadata.xml8
-rw-r--r--dev-java/osgi-compendium/osgi-compendium-4.3.1-r4.ebuild37
-rw-r--r--dev-java/osgi-core-api/Manifest1
-rw-r--r--dev-java/osgi-core-api/metadata.xml8
-rw-r--r--dev-java/osgi-core-api/osgi-core-api-5.0.0-r2.ebuild29
-rw-r--r--dev-java/osgi-enterprise-api/Manifest1
-rw-r--r--dev-java/osgi-enterprise-api/metadata.xml8
-rw-r--r--dev-java/osgi-enterprise-api/osgi-enterprise-api-5.0.0-r3.ebuild37
-rw-r--r--dev-java/osgi-foundation/Manifest1
-rw-r--r--dev-java/osgi-foundation/files/osgi-foundation-1.2.0-build.xml218
-rw-r--r--dev-java/osgi-foundation/metadata.xml8
-rw-r--r--dev-java/osgi-foundation/osgi-foundation-1.2.0-r2.ebuild28
-rw-r--r--dev-java/osgi-service-log/osgi-service-log-1.3.0.ebuild4
-rw-r--r--dev-java/osgi-service-subsystem/osgi-service-subsystem-1.1.0.ebuild4
-rw-r--r--dev-java/parboiled/parboiled-1.4.1.ebuild4
-rw-r--r--dev-java/protobuf-java/Manifest6
-rw-r--r--dev-java/protobuf-java/files/protobuf-java-3.26.0-unittest.protos.patch23
-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.ebuild (renamed from dev-java/protobuf-java/protobuf-java-3.24.2.ebuild)23
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.25.2.ebuild166
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.25.3.ebuild166
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.26.0.ebuild167
-rw-r--r--dev-java/reflections/reflections-0.9.12-r6.ebuild (renamed from dev-java/reflections/reflections-0.9.12-r5.ebuild)6
-rw-r--r--dev-java/relaxng-datatype/Manifest1
-rw-r--r--dev-java/relaxng-datatype/relaxng-datatype-1.0-r3.ebuild35
-rw-r--r--dev-java/saslprep/metadata.xml3
-rw-r--r--dev-java/saxon/saxon-9.2.0.6-r3.ebuild7
-rw-r--r--dev-java/sbt-bin/Manifest1
-rw-r--r--dev-java/sbt-bin/sbt-bin-1.3.10.ebuild49
-rw-r--r--dev-java/sbt-bin/sbt-bin-1.8.0.ebuild4
-rw-r--r--dev-java/sbt/metadata.xml4
-rw-r--r--dev-java/scala-cli-bin/Manifest12
-rw-r--r--dev-java/scala-cli-bin/metadata.xml1
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.1.0.ebuild4
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.1.1.ebuild (renamed from dev-java/scala-cli-bin/scala-cli-bin-1.0.2.ebuild)4
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.2.1.ebuild78
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.2.2.ebuild78
-rw-r--r--dev-java/scram/Manifest2
-rw-r--r--dev-java/scram/metadata.xml3
-rw-r--r--dev-java/scram/scram-2.1.ebuild63
-rw-r--r--dev-java/snappy/snappy-1.1.10.5-r1.ebuild (renamed from dev-java/snappy/snappy-1.1.10.5.ebuild)4
-rw-r--r--dev-java/stax2-api/metadata.xml1
-rw-r--r--dev-java/stringprep/metadata.xml3
-rw-r--r--dev-java/stringtemplate/Manifest5
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-3.2.1-TestStringTemplate.patch11
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-4.3.4-BaseTest-javac-source-target.patch (renamed from dev-java/stringtemplate/files/stringtemplate-4.3.1-BaseTest-javac-source-target.patch)6
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-4.3.4-Java21-TestRenderers.patch41
-rw-r--r--dev-java/stringtemplate/metadata.xml1
-rw-r--r--dev-java/stringtemplate/stringtemplate-3.2.1-r3.ebuild (renamed from dev-java/stringtemplate/stringtemplate-3.2.1-r2.ebuild)53
-rw-r--r--dev-java/stringtemplate/stringtemplate-4.3.4.ebuild (renamed from dev-java/stringtemplate/stringtemplate-4.3.2.ebuild)33
-rw-r--r--dev-java/swt/Manifest3
-rw-r--r--dev-java/swt/swt-4.30-r1.ebuild (renamed from dev-java/swt/swt-4.30.ebuild)6
-rw-r--r--dev-java/swt/swt-4.31.ebuild151
-rw-r--r--dev-java/testng/Manifest1
-rw-r--r--dev-java/testng/testng-6.11-r1.ebuild (renamed from dev-java/testng/testng-6.11.ebuild)4
-rw-r--r--dev-java/testng/testng-6.9.10-r1.ebuild70
-rw-r--r--dev-java/tomcat-native/Manifest6
-rw-r--r--dev-java/tomcat-native/files/tomcat-native-1.2.39-slibtool.patch26
-rw-r--r--dev-java/tomcat-native/tomcat-native-1.2.39.ebuild4
-rw-r--r--dev-java/tomcat-native/tomcat-native-1.3.0.ebuild86
-rw-r--r--dev-java/tomcat-native/tomcat-native-2.0.7.ebuild (renamed from dev-java/tomcat-native/tomcat-native-2.0.6.ebuild)2
-rw-r--r--dev-java/velocity/Manifest1
-rw-r--r--dev-java/velocity/files/velocity-2.3-skipSecurityManager.patch11
-rw-r--r--dev-java/velocity/metadata.xml11
-rw-r--r--dev-java/velocity/velocity-2.3.ebuild6
-rw-r--r--dev-java/velocity/velocity-2.3_p20240314.ebuild108
-rw-r--r--dev-java/waffle-jna/Manifest1
-rw-r--r--dev-java/waffle-jna/metadata.xml10
-rw-r--r--dev-java/waffle-jna/waffle-jna-3.3.0.ebuild47
-rw-r--r--dev-java/xalan-serializer/xalan-serializer-2.7.3-r1.ebuild (renamed from dev-java/xalan-serializer/xalan-serializer-2.7.3.ebuild)4
-rw-r--r--dev-java/xalan/xalan-2.7.3-r1.ebuild (renamed from dev-java/xalan/xalan-2.7.3.ebuild)4
-rw-r--r--dev-java/xerces/xerces-2.12.2-r2.ebuild (renamed from dev-java/xerces/xerces-2.12.2-r1.ebuild)12
-rw-r--r--dev-java/xmlunit/xmlunit-1.6-r1.ebuild56
-rw-r--r--dev-java/xmlunit/xmlunit-1.6-r2.ebuild43
459 files changed, 6748 insertions, 6764 deletions
diff --git a/dev-java/angus-activation/metadata.xml b/dev-java/angus-activation/metadata.xml
index 75321cfb5598..0174e643d7c7 100644
--- a/dev-java/angus-activation/metadata.xml
+++ b/dev-java/angus-activation/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">eclipse-ee4j/angus-activation</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/ant-antlr/Manifest b/dev-java/ant-antlr/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-antlr/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-antlr/ant-antlr-1.10.9.ebuild b/dev-java/ant-antlr/ant-antlr-1.10.9.ebuild
deleted file mode 100644
index 3d1f5f5f4ac0..000000000000
--- a/dev-java/ant-antlr/ant-antlr-1.10.9.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME=""
-
-inherit ant-tasks
-
-DESCRIPTION="Apache Ant's optional tasks for Antlr"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-RDEPEND=">=dev-java/antlr-2.7.7-r7:0"
-
-src_install() {
- ant-tasks_src_install
- java-pkg_register-dependency antlr
-}
diff --git a/dev-java/ant-apache-bcel/Manifest b/dev-java/ant-apache-bcel/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-bcel/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-bcel/ant-apache-bcel-1.10.9.ebuild b/dev-java/ant-apache-bcel/ant-apache-bcel-1.10.9.ebuild
deleted file mode 100644
index 19fd7d66d46e..000000000000
--- a/dev-java/ant-apache-bcel/ant-apache-bcel-1.10.9.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="bcel"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/bcel-5.1-r3:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-bsf/Manifest b/dev-java/ant-apache-bsf/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-bsf/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-bsf/ant-apache-bsf-1.10.9.ebuild b/dev-java/ant-apache-bsf/ant-apache-bsf-1.10.9.ebuild
deleted file mode 100644
index f6ba1618b0fe..000000000000
--- a/dev-java/ant-apache-bsf/ant-apache-bsf-1.10.9.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="bsf-2.3"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="python javascript tcl"
-
-DEPEND=">=dev-java/bsf-2.4.0-r1:2.3[python?,javascript?,tcl?]"
-RDEPEND="${DEPEND}"
-
-pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- elog "Also, >=dev-java/bsf-2.4.0-r1 adds optional support for groovy,"
- elog "ruby and beanshell. See its postinst elog messages for instructions."
- fi
-}
diff --git a/dev-java/ant-apache-log4j/Manifest b/dev-java/ant-apache-log4j/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-log4j/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-log4j/ant-apache-log4j-1.10.9-r1.ebuild b/dev-java/ant-apache-log4j/ant-apache-log4j-1.10.9-r1.ebuild
deleted file mode 100644
index b7f808b7f60d..000000000000
--- a/dev-java/ant-apache-log4j/ant-apache-log4j-1.10.9-r1.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="log4j-12-api-2"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND="dev-java/log4j-12-api:2"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-oro/Manifest b/dev-java/ant-apache-oro/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-oro/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-oro/ant-apache-oro-1.10.9.ebuild b/dev-java/ant-apache-oro/ant-apache-oro-1.10.9.ebuild
deleted file mode 100644
index 4fa3ab36eac0..000000000000
--- a/dev-java/ant-apache-oro/ant-apache-oro-1.10.9.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="jakarta-oro-2.0"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/jakarta-oro-2.0.8-r2:2.0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-oro/metadata.xml b/dev-java/ant-apache-oro/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-apache-oro/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-apache-regexp/Manifest b/dev-java/ant-apache-regexp/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-regexp/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-regexp/ant-apache-regexp-1.10.9.ebuild b/dev-java/ant-apache-regexp/ant-apache-regexp-1.10.9.ebuild
deleted file mode 100644
index 07ce567a85e6..000000000000
--- a/dev-java/ant-apache-regexp/ant-apache-regexp-1.10.9.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="jakarta-regexp-1.4"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/jakarta-regexp-1.4-r1:1.4"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-regexp/metadata.xml b/dev-java/ant-apache-regexp/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-apache-regexp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-apache-resolver/Manifest b/dev-java/ant-apache-resolver/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-resolver/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-resolver/ant-apache-resolver-1.10.9.ebuild b/dev-java/ant-apache-resolver/ant-apache-resolver-1.10.9.ebuild
deleted file mode 100644
index 77c663e553ce..000000000000
--- a/dev-java/ant-apache-resolver/ant-apache-resolver-1.10.9.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="xml-commons-resolver"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/xml-commons-resolver-1.2:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-resolver/metadata.xml b/dev-java/ant-apache-resolver/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-apache-resolver/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-apache-xalan2/Manifest b/dev-java/ant-apache-xalan2/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-apache-xalan2/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-apache-xalan2/ant-apache-xalan2-1.10.9.ebuild b/dev-java/ant-apache-xalan2/ant-apache-xalan2-1.10.9.ebuild
deleted file mode 100644
index a46ac087c870..000000000000
--- a/dev-java/ant-apache-xalan2/ant-apache-xalan2-1.10.9.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="xalan"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND="dev-java/xalan:0
- dev-java/xalan-serializer:0"
-
-RDEPEND="${DEPEND}"
-
-src_unpack() {
- ant-tasks_src_unpack all
- java-pkg_jar-from xalan-serializer
-}
diff --git a/dev-java/ant-apache-xalan2/metadata.xml b/dev-java/ant-apache-xalan2/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-apache-xalan2/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-commons-logging/Manifest b/dev-java/ant-commons-logging/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-commons-logging/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-commons-logging/ant-commons-logging-1.10.9.ebuild b/dev-java/ant-commons-logging/ant-commons-logging-1.10.9.ebuild
deleted file mode 100644
index ce6a50054a6c..000000000000
--- a/dev-java/ant-commons-logging/ant-commons-logging-1.10.9.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/commons-logging-1.0.4-r2:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-commons-logging/metadata.xml b/dev-java/ant-commons-logging/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-commons-logging/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-commons-net/Manifest b/dev-java/ant-commons-net/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-commons-net/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-commons-net/ant-commons-net-1.10.9.ebuild b/dev-java/ant-commons-net/ant-commons-net-1.10.9.ebuild
deleted file mode 100644
index 1ba1262c90f3..000000000000
--- a/dev-java/ant-commons-net/ant-commons-net-1.10.9.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/commons-net-1.4.1-r1:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-commons-net/metadata.xml b/dev-java/ant-commons-net/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-commons-net/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-core/Manifest b/dev-java/ant-core/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-core/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-core/ant-core-1.10.14.ebuild b/dev-java/ant-core/ant-core-1.10.14.ebuild
new file mode 100644
index 000000000000..c69d378ddc71
--- /dev/null
+++ b/dev-java/ant-core/ant-core-1.10.14.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+DESCRIPTION="Compatibility link to ant-core for >=dev-java/ant-1.10.14"
+HOMEPAGE="https://ant.apache.org/"
+S="${WORKDIR}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ ~dev-java/ant-${PV}:0
+ >=virtual/jdk-1.8:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+src_compile() { :; }
+
+src_install() {
+ java-pkg_regjar /usr/share/ant-core/lib/ant.jar
+}
diff --git a/dev-java/ant-core/ant-core-1.10.9-r5.ebuild b/dev-java/ant-core/ant-core-1.10.9-r5.ebuild
deleted file mode 100644
index 40333bc9a9d1..000000000000
--- a/dev-java/ant-core/ant-core-1.10.9-r5.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Don't depend on itself.
-JAVA_ANT_DISABLE_ANT_CORE_DEP="true"
-
-# Rewriting build.xml files for the testcases has no use at the moment.
-JAVA_PKG_BSFIX_ALL="no"
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.ant:ant:1.10.9"
-
-inherit java-pkg-2 java-ant-2 prefix
-
-MY_P="apache-ant-${PV}"
-
-DESCRIPTION="Java-based build tool similar to 'make' that uses XML configuration files"
-HOMEPAGE="https://ant.apache.org/"
-SRC_URI="https://archive.apache.org/dist/ant/source/${MY_P}-src.tar.bz2
- https://dev.gentoo.org/~fordfrog/distfiles/ant-${PV}-gentoo.tar.bz2"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-CDEPEND=">=virtual/jdk-1.8:*"
-DEPEND="${CDEPEND}
- doc? (
- dev-java/bcel:0
- dev-java/bsf:2.3
- dev-java/commons-logging:0
- dev-java/commons-net:0
- dev-java/jakarta-activation-api:1
- dev-java/jakarta-regexp:1.4
- dev-java/jakarta-oro:2.0
- dev-java/jdepend:0
- dev-java/jsch:0
- dev-java/log4j-12-api:2
- dev-java/javax-mail:0
- dev-java/sun-jai-bin:0
- dev-java/xalan:0
- dev-java/xml-commons-resolver:0
- dev-java/xz-java:0
- )"
-RDEPEND="${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-RESTRICT="test"
-
-PATCHES=(
- "${WORKDIR}/${PV}-build.patch"
- "${WORKDIR}/${PV}-launch.patch"
-)
-
-src_prepare() {
- default
-
- eprefixify "${S}/src/script/ant"
-
- # Fixes bug 556008.
- java-ant_xml-rewrite -f build.xml \
- -c -e javadoc \
- -a failonerror \
- -v "false"
-
- # See bug #196080 for more details.
- java-ant_bsfix_one build.xml
- java-pkg-2_src_prepare
-
- # Remove JDK9+ stuff
- einfo "Removing JDK9+ classes (Jmod and Link)"
- rm "${S}"/src/main/org/apache/tools/ant/taskdefs/modules/{Jmod,Link}.java
-}
-
-src_compile() {
- export ANT_HOME=""
- # Avoid error message that package ant-core was not found
- export ANT_TASKS="none"
-
- local bsyscp
-
- # This ensures that when building ant with bootstrapped ant,
- # only the source is used for resolving references, and not
- # the classes in bootstrapped ant but jikes in kaffe has issues with this...
- if ! java-pkg_current-vm-matches kaffe; then
- bsyscp="-Dbuild.sysclasspath=ignore"
- fi
-
- CLASSPATH="$(java-config -t)" ./build.sh ${bsyscp} jars dist-internal ||
- die "build failed"
-
- if use doc; then
- # All Java packages imported by the source files need to present in
- # the classpath, otherwise it would be https://bugs.gentoo.org/780531
- local doc_deps=(
- bcel
- bsf-2.3
- commons-logging
- commons-net
- jakarta-activation-api-1
- jakarta-oro-2.0
- jakarta-regexp-1.4
- jdepend
- jsch
- log4j-12-api-2
- javax-mail
- sun-jai-bin
- xalan
- xml-commons-resolver
- xz-java
- )
- for dep in "${doc_deps[@]}"; do
- java-pkg_jar-from --build-only --into lib/optional/ "${dep}"
- done
- # This file imports netrexx.lang.Rexx, which is not available
- # from ::gentoo. Fortunately, there is not a dev-java/ant-*
- # package for it, so even if we could generate documentation
- # for it, it would be irrelevant
- rm src/main/org/apache/tools/ant/taskdefs/optional/NetRexxC.java ||
- die "Failed to remove Java source file blocking Javadoc generation"
- ./build.sh ${bsyscp} javadocs || die "Javadoc build failed"
- fi
-}
-
-src_install() {
- dodir /usr/share/ant/lib
-
- for jar in ant.jar ant-bootstrap.jar ant-launcher.jar ; do
- java-pkg_dojar build/lib/${jar}
- dosym ../../${PN}/lib/${jar} /usr/share/ant/lib/${jar}
- done
-
- dobin src/script/ant
-
- dodir /usr/share/${PN}/bin
- for each in antRun antRun.pl runant.pl runant.py ; do
- dobin "${S}/src/script/${each}"
- dosym ../../../bin/${each} /usr/share/${PN}/bin/${each}
- done
- dosym ../${PN}/bin /usr/share/ant/bin
-
- insinto /usr/share/${PN}
- doins -r dist/etc
- dosym ../${PN}/etc /usr/share/ant/etc
-
- echo "ANT_HOME=\"${EPREFIX}/usr/share/ant\"" > "${T}/20ant"
- doenvd "${T}/20ant"
-
- dodoc NOTICE README WHATSNEW KEYS
-
- if use doc; then
- dodoc -r manual/*
- java-pkg_dojavadoc --symlink manual/api build/javadocs
- fi
-
- use source && java-pkg_dosrc src/main/*
-}
diff --git a/dev-java/ant-core/metadata.xml b/dev-java/ant-core/metadata.xml
index 4221e170cbc0..d0bcffb03628 100644
--- a/dev-java/ant-core/metadata.xml
+++ b/dev-java/ant-core/metadata.xml
@@ -5,4 +5,9 @@
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <upstream>
+ <bugs-to>https://bz.apache.org/bugzilla/enter_bug.cgi?product=Ant</bugs-to>
+ <doc>https://ant.apache.org/manual/</doc>
+ <remote-id type="github">apache/ant</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/ant-eclipse-ecj/Manifest b/dev-java/ant-eclipse-ecj/Manifest
deleted file mode 100644
index aa67f4731d80..000000000000
--- a/dev-java/ant-eclipse-ecj/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ecjsrc-4.15.jar 2166228 BLAKE2B 794e0ba1a19b325e2dd8ad0b288ccbe04866627670b50d39dd327c13fe1fac56200eb3a6c1c3d1af043cad795508b9b714a5243049671414b5a62a97725d3297 SHA512 ada55b2522cf26570f0cd43f415eb5cf20e6840f83dadc72e1ae474ebf10eadca73f9fa3d1db51e13fd2762c38cd3e3567db3c7840d43ae3d8665ebe35e1889d
-DIST ecjsrc-4.26.jar 2347137 BLAKE2B 22e627178fe35f34cee7ba63e740ef2699bca691d460c81e97c2f18c197042cc0d901eea988331b3fa2ac7daa87daef9ee90bc1e62901935a6f2f3fe5f1e8534 SHA512 e53534160e6a2cdc8c5db7caec617d5671eb59954a86b9dcb36a514024c3205167c8416560796ce61d1aa188f551660f3bfd8eab46fefe9111c8f0b7a977342f
diff --git a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.15-r1.ebuild b/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.15-r1.ebuild
deleted file mode 100644
index 86295bc01b6a..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.15-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple prefix
-
-DMF="R-${PV}-202003050155"
-
-DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
-HOMEPAGE="https://www.eclipse.org/"
-SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
-SLOT="4.15"
-IUSE=""
-
-CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
- dev-java/ant-core:0"
-RDEPEND="${CDEPEND}
- >=virtual/jre-11:*"
-DEPEND="${CDEPEND}
- >=virtual/jdk-11:*"
-BDEPEND="app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="ant-core,eclipse-ecj-${SLOT}"
-
-src_prepare() {
- default
-
- # Remove everything but the Ant component.
- find org -type f ! -path "org/eclipse/jdt/internal/antadapter/*" ! -name "JDTCompilerAdapter.java" -delete || die
-
- rm build.xml || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- find org -type f ! -name "*.java" | xargs jar uvf "${PN}.jar" || die "jar update failed"
-}
-
-src_install() {
- java-pkg-simple_src_install
- insinto /usr/share/java-config-2/compiler
- doins "${FILESDIR}/ecj-${SLOT}"
- eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
diff --git a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.26.ebuild b/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.26.ebuild
deleted file mode 100644
index 478ef5996a68..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.26.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple prefix
-
-DMF="R-${PV}-202211231800"
-
-DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
-HOMEPAGE="https://www.eclipse.org/"
-SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
-SLOT="4.26"
-IUSE=""
-
-CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
- dev-java/ant-core:0"
-# though technically both could be set to 1.8 and it would
-# compile using jdk 11+, it would not compile using jdk 1.8
-# because eclipse ecj has min jdk 11
-RDEPEND="${CDEPEND}
- >=virtual/jre-11:*"
-DEPEND="${CDEPEND}
- >=virtual/jdk-17:*"
-BDEPEND="app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="ant-core,eclipse-ecj-${SLOT}"
-
-src_prepare() {
- default
-
- # Remove everything but the Ant component.
- find org -type f ! -path "org/eclipse/jdt/internal/antadapter/*" ! -name "JDTCompilerAdapter.java" -delete || die
-
- rm build.xml || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- find org -type f ! -name "*.java" | xargs jar uvf "${PN}.jar" || die "jar update failed"
-}
-
-src_install() {
- java-pkg-simple_src_install
- insinto /usr/share/java-config-2/compiler
- doins "${FILESDIR}/ecj-${SLOT}"
- eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
diff --git a/dev-java/ant-eclipse-ecj/metadata.xml b/dev-java/ant-eclipse-ecj/metadata.xml
deleted file mode 100644
index 2c9857d120ad..000000000000
--- a/dev-java/ant-eclipse-ecj/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-<longdescription>
-ECJ is the Eclipse Compiler for Java. It's a separate packaging of
-the embedded Java compiler that comes with Eclipse. It can be used
-as a batch-compiler by running the ecj-3.1 script, or it can be
-used with Ant by using the -lib option to and and setting
--Dbuild.compiler=ecj
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/ant-jai/Manifest b/dev-java/ant-jai/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-jai/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-jai/ant-jai-1.10.9.ebuild b/dev-java/ant-jai/ant-jai-1.10.9.ebuild
deleted file mode 100644
index 3a2873b650bb..000000000000
--- a/dev-java/ant-jai/ant-jai-1.10.9.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="sun-jai-bin"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86"
-
-# Unmigrated, has textrels and there's also some source one now too.
-DEPEND=">=dev-java/sun-jai-bin-1.1.2.01-r1"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-jai/metadata.xml b/dev-java/ant-jai/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-jai/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-javamail/Manifest b/dev-java/ant-javamail/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-javamail/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-javamail/ant-javamail-1.10.9-r1.ebuild b/dev-java/ant-javamail/ant-javamail-1.10.9-r1.ebuild
deleted file mode 100644
index c02f16c20d31..000000000000
--- a/dev-java/ant-javamail/ant-javamail-1.10.9-r1.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME=( "gnu-jaf-1" "javax-mail" )
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-# needs some classes from javax.activation.* which are not in jdk 11
-DEPEND="virtual/jdk:1.8
- dev-java/gnu-jaf:1
- dev-java/javax-mail:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-javamail/metadata.xml b/dev-java/ant-javamail/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-javamail/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-jdepend/Manifest b/dev-java/ant-jdepend/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-jdepend/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-jdepend/ant-jdepend-1.10.9.ebuild b/dev-java/ant-jdepend/ant-jdepend-1.10.9.ebuild
deleted file mode 100644
index 97d0329f5756..000000000000
--- a/dev-java/ant-jdepend/ant-jdepend-1.10.9.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/jdepend-2.9-r2:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-jdepend/metadata.xml b/dev-java/ant-jdepend/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-jdepend/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-jmf/Manifest b/dev-java/ant-jmf/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-jmf/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-jmf/ant-jmf-1.10.9.ebuild b/dev-java/ant-jmf/ant-jmf-1.10.9.ebuild
deleted file mode 100644
index 76a06ae0e5a0..000000000000
--- a/dev-java/ant-jmf/ant-jmf-1.10.9.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-# Seems we don't need to depend on jmf-bin, the classes ant imports are in J2SE
-# API since version 1.3.
-ANT_TASK_DEPNAME=""
-
-inherit ant-tasks
-
-DESCRIPTION="Apache Ant's optional tasks for the Java Media Framework (JMF)"
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
diff --git a/dev-java/ant-jmf/metadata.xml b/dev-java/ant-jmf/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-jmf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-jsch/Manifest b/dev-java/ant-jsch/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-jsch/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-jsch/ant-jsch-1.10.9.ebuild b/dev-java/ant-jsch/ant-jsch-1.10.9.ebuild
deleted file mode 100644
index 43d214487023..000000000000
--- a/dev-java/ant-jsch/ant-jsch-1.10.9.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=dev-java/jsch-0.1.37:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-jsch/metadata.xml b/dev-java/ant-jsch/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-jsch/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-junit/Manifest b/dev-java/ant-junit/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-junit/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-junit/ant-junit-1.10.9.ebuild b/dev-java/ant-junit/ant-junit-1.10.9.ebuild
deleted file mode 100644
index cea7fdca5bc1..000000000000
--- a/dev-java/ant-junit/ant-junit-1.10.9.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND="
- dev-java/junit:0
- dev-java/junit:4
-"
-RDEPEND="${DEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="junit-4"
-
-src_compile() {
- eant jar-junit
-}
diff --git a/dev-java/ant-junit/metadata.xml b/dev-java/ant-junit/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-junit/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-junit4/Manifest b/dev-java/ant-junit4/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-junit4/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-junit4/ant-junit4-1.10.9.ebuild b/dev-java/ant-junit4/ant-junit4-1.10.9.ebuild
deleted file mode 100644
index 9eef99a67149..000000000000
--- a/dev-java/ant-junit4/ant-junit4-1.10.9.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="junit-4"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-DEPEND="dev-java/junit:4
- ~dev-java/ant-junit-${PV}"
-
-RDEPEND="${DEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="junit-4,ant-junit"
-
-src_prepare() {
- default
-
- java-pkg_jar-from --build-only --into "${S}/lib" ant-junit
-}
-
-src_install() {
- # No registration as ant-task, would be loaded together with ant-junit.
- java-pkg_dojar build/lib/ant-junit4.jar
-
- # As we dont't want to depend on and-junit in package.env, because it depends
- # on junit:0. Instead, we "steal" its jar and record it to our package.env as
- # if it belongs to this package's classpath.
- java-pkg_getjar --build-only ant-junit ant-junit.jar
- java-pkg_regjar $(java-pkg_getjar --build-only ant-junit ant-junit.jar)
-}
diff --git a/dev-java/ant-junit4/metadata.xml b/dev-java/ant-junit4/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-junit4/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-junitlauncher/Manifest b/dev-java/ant-junitlauncher/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-junitlauncher/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-junitlauncher/ant-junitlauncher-1.10.9.ebuild b/dev-java/ant-junitlauncher/ant-junitlauncher-1.10.9.ebuild
deleted file mode 100644
index 2b8d03f2e629..000000000000
--- a/dev-java/ant-junitlauncher/ant-junitlauncher-1.10.9.ebuild
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME=""
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
diff --git a/dev-java/ant-junitlauncher/metadata.xml b/dev-java/ant-junitlauncher/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-junitlauncher/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-swing/Manifest b/dev-java/ant-swing/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-swing/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-swing/ant-swing-1.10.9.ebuild b/dev-java/ant-swing/ant-swing-1.10.9.ebuild
deleted file mode 100644
index e204f8e1393e..000000000000
--- a/dev-java/ant-swing/ant-swing-1.10.9.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-# No extra dependencies are needed.
-ANT_TASK_DEPNAME=""
-
-inherit ant-tasks
-
-DESCRIPTION="Apache Ant's optional tasks for Swing"
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
diff --git a/dev-java/ant-swing/metadata.xml b/dev-java/ant-swing/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-swing/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-testutil/Manifest b/dev-java/ant-testutil/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-testutil/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-testutil/ant-testutil-1.10.9.ebuild b/dev-java/ant-testutil/ant-testutil-1.10.9.ebuild
deleted file mode 100644
index 23d1ace04929..000000000000
--- a/dev-java/ant-testutil/ant-testutil-1.10.9.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-
-inherit ant-tasks
-
-DESCRIPTION="Apache Ant's optional test utility classes"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
-
-CDEPEND="dev-java/ant-core:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8
- >=dev-java/junit-4.11:4
- ~dev-java/ant-swing-${PV}
- ~dev-java/ant-junit4-${PV}
- ~dev-java/ant-junitlauncher-${PV}"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8"
-
-# The build system builds much more than it actually packages, so there are many
-# build-only deps, but since those are quite common, it wasn't worth to patch it.
-
-src_unpack() {
- ant-tasks_src_unpack base
- java-pkg_jar-from --build-only junit-4,ant-junit4,ant-junitlauncher,ant-swing
- java-pkg_jar-from --build-only ant-core ant-launcher.jar
-}
-
-src_compile() {
- eant test-jar
-}
diff --git a/dev-java/ant-testutil/metadata.xml b/dev-java/ant-testutil/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-testutil/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant-xz/Manifest b/dev-java/ant-xz/Manifest
deleted file mode 100644
index dccd735d44ed..000000000000
--- a/dev-java/ant-xz/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ant-1.10.9-gentoo.tar.bz2 6685 BLAKE2B 2249c7e1628052a2a6896c6995e0c5dd14ea77671ab0ef4402ece9968f41266cdf4411cd669dbb73c4d7043d7c6c5f6e992bfc2705e74899ff1058f0d4942704 SHA512 aade4c5322c29d1b6b4f6b99b229a1a07ff64faed104bdbbff3a82bd482d9cab5596c019dac92eaf4cab875fa9e46e5067ba816f910c2d6c94890ab85c50605b
-DIST apache-ant-1.10.9-src.tar.bz2 4593589 BLAKE2B afb73e592dbd4e0082f5890005ce70264ab9c59f1359a91cc83abcfb03938d98ed9d1eb797c9f72bd3d017a41c19635a6246e5b46ddcab660749a2530db1baaa SHA512 7a6c96131462dc0e1bcf41e2daa1b129a45d19302f4ee2915bb51c4cf347996fa5f8140f96653b21952decee16816476b8f258f8ad2c094a8305209cebcee4a4
diff --git a/dev-java/ant-xz/ant-xz-1.10.9.ebuild b/dev-java/ant-xz/ant-xz-1.10.9.ebuild
deleted file mode 100644
index a7d47300d608..000000000000
--- a/dev-java/ant-xz/ant-xz-1.10.9.ebuild
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANT_TASK_JDKVER=1.8
-ANT_TASK_JREVER=1.8
-ANT_TASK_DEPNAME="xz-java"
-
-inherit ant-tasks
-
-DESCRIPTION="Apache Ant's optional tasks for XZ compression"
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND="dev-java/xz-java"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-xz/metadata.xml b/dev-java/ant-xz/metadata.xml
deleted file mode 100644
index 4221e170cbc0..000000000000
--- a/dev-java/ant-xz/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/ant/Manifest b/dev-java/ant/Manifest
new file mode 100644
index 000000000000..a5c99e19154a
--- /dev/null
+++ b/dev-java/ant/Manifest
@@ -0,0 +1,2 @@
+DIST apache-ant-1.10.14-src.tar.gz 4692736 BLAKE2B b07a2e61fecd4f10056ca2688615ccf02c551bba0f5749f50c2be710e90306e8044b7c557359300654d93971d94520e92f593da44b1c20626db4701d499cddff SHA512 435f97a276d88a86022c5f0680f3c2a16dc36be95adac3d797a2609d96921840a57393c8f5ef8313193146115bd6a87bd4790a4a272c44f7beec892fd6528c10
+DIST apache-ant-1.10.14-src.tar.gz.asc 833 BLAKE2B d9a4b4b3cb22762f25b34651dc81c2f13af38e73fdca27bc2de562539cd8f1692744ac5ccf535a2c61d3035a129f30bafac133872f9ba0ed7b259393b0f4cdf6 SHA512 ff2e79c991f68a5c38c0b47556ca5f5301c1a8be219a9eddf8d2e17b09eed7f0426770c2dc18114ea432f0200ac824d71da633ad7881025692ce5ad4baa899ee
diff --git a/dev-java/ant/ant-1.10.14-r3.ebuild b/dev-java/ant/ant-1.10.14-r3.ebuild
new file mode 100644
index 000000000000..e79a4cbf5562
--- /dev/null
+++ b/dev-java/ant/ant-1.10.14-r3.ebuild
@@ -0,0 +1,395 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="
+ org.apache.ant:ant:${PV}
+ org.apache.ant:ant-launcher:${PV}
+"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig prefix
+
+DESCRIPTION="Java-based build tool similar to 'make' that uses XML configuration files"
+HOMEPAGE="https://ant.apache.org/"
+SRC_URI="mirror://apache/ant/source/apache-${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/ant/source/apache-${P}-src.tar.gz.asc )"
+S="${WORKDIR}/apache-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="antlr bcel bsf commonslogging commonsnet imageio jai jakartamail javamail jdepend
+ jmf jsch junit junit4 junitlauncher log4j oro regexp resolver swing testutil xalan xz"
+
+# At least 10 test cases would fail without network
+PROPERTIES="test_network"
+RESTRICT="test"
+
+REQUIRED_USE="
+ junit4? ( junit )
+ test? ( bsf )
+ testutil? ( junit )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/ant.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-ant )"
+# jdk-11:* because it needs java/util/spi/ToolProvider, available since Java 9.
+DEPEND="
+ >=virtual/jdk-11:*
+ bcel? ( dev-java/bcel:0 )
+ bsf? ( dev-java/bsf:2.3 )
+ commonslogging? ( dev-java/commons-logging:0 )
+ commonsnet? ( dev-java/commons-net:0 )
+ jai? ( dev-java/sun-jai-bin:0 )
+ jakartamail? ( dev-java/jakarta-mail:0 )
+ javamail? (
+ dev-java/jakarta-activation-api:1
+ dev-java/javax-mail:0
+ )
+ jdepend? ( >=dev-java/jdepend-2.10-r1:0 )
+ jsch? ( dev-java/jsch:0 )
+ junit4? ( dev-java/junit:4 )
+ junit? ( dev-java/junit:4 )
+ junitlauncher? ( dev-java/junit:5[vintage] )
+ log4j? ( dev-java/log4j-12-api:2 )
+ oro? ( dev-java/jakarta-oro:2.0 )
+ regexp? ( dev-java/jakarta-regexp:1.4 )
+ resolver? ( dev-java/xml-commons-resolver:0 )
+ test? (
+ dev-java/antunit:0
+ dev-java/bsf:2.3[javascript]
+ dev-java/bsh:0
+ dev-java/hamcrest-library:1.3
+ dev-java/xerces:2
+ )
+ xalan? (
+ dev-java/xalan:0
+ dev-java/xalan-serializer:0
+ )
+ xz? ( dev-java/xz-java:0 )
+"
+RDEPEND="
+ !dev-java/ant-apache-regexp
+ !dev-java/ant-apache-log4j
+ !dev-java/ant-apache-xalan2
+ !dev-java/ant-commons-logging
+ !<dev-java/ant-core-1.10.14
+ !dev-java/ant-swing
+ !dev-java/ant-junit4
+ !dev-java/ant-testutil
+ !dev-java/ant-junitlauncher
+ !dev-java/ant-jai
+ !dev-java/ant-commons-net
+ !dev-java/ant-apache-bsf
+ !dev-java/ant-jmf
+ !dev-java/ant-apache-oro
+ !dev-java/ant-javamail
+ !dev-java/ant-junit
+ !dev-java/ant-jdepend
+ !dev-java/ant-antlr
+ !dev-java/ant-apache-bcel
+ !dev-java/ant-apache-resolver
+ !dev-java/ant-jsch
+ !dev-java/ant-xz
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( CONTRIBUTORS INSTALL NOTICE README WHATSNEW )
+PATCHES=(
+ "${FILESDIR}/1.10.9-launch.patch" # reusing this patch since the script has not changed
+ "${FILESDIR}/ant-1.10.14-AntlibTest.patch" # skips 1 of 6 tests
+ "${FILESDIR}/ant-1.10.14-AntTest.patch" # skips 1 of 32 tests
+ "${FILESDIR}/ant-1.10.14-JavaTest.patch" # skips 12 of 38 tests
+ "${FILESDIR}/ant-1.10.14-LinkTest.patch" # skips 4 of 67 tests
+ "${FILESDIR}/ant-1.10.14-PathTest.patch" # skips 1 of 33 tests
+)
+
+JAVADOC_SRC_DIRS=(
+ ant
+ ant-launcher/src/main
+)
+JAVA_TEST_GENTOO_CLASSPATH="
+ bsh
+ hamcrest-library-1.3
+ junit-4
+ xerces-2
+"
+JAVA_TEST_RESOURCE_DIRS=(
+ "src/etc/testcases"
+ "src/main"
+)
+JAVA_TEST_SRC_DIR="src/tests/junit"
+
+# $1 ant-apache-bsf (source directory)
+# $2 bsf-2.3 (classpath of external dependency)
+taskdeps() {
+ if [[ ${task} == $1 ]]; then
+ JAVA_CLASSPATH_EXTRA="${2}"
+ JAVADOC_CLASSPATH+=" ${2}"
+ JAVADOC_SRC_DIRS+=( "${task}/src/main" )
+ JAVA_RESOURCE_DIRS="${3}"
+ fi
+}
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./src/etc/*" # keep test resources
+
+ eprefixify "src/script/ant"
+
+ ANT_TASKS=(
+ $(use antlr && echo ant-antlr) # no dependencies
+ $(use bcel && echo ant-apache-bcel)
+ $(use bsf && echo ant-apache-bsf) # REQUIRED_USE for tests
+ $(use log4j && echo ant-apache-log4j)
+ $(use oro && echo ant-apache-oro) # ORO is retired - replace with java.util.regex?
+ $(use regexp && echo ant-apache-regexp)
+ $(use resolver && echo ant-apache-resolver)
+ $(use xalan && echo ant-apache-xalan2)
+ $(use commonslogging && echo ant-commons-logging)
+ $(use commonsnet && echo ant-commons-net)
+ $(use imageio && echo ant-imageio) # no dependencies
+ $(use jai && echo ant-jai)
+ $(use jakartamail && echo ant-jakartamail)
+ $(use javamail && echo ant-javamail)
+ $(use jdepend && echo ant-jdepend)
+ $(use jmf && echo ant-jmf) # no dependencies
+ $(use jsch && echo ant-jsch)
+ $(use junit && echo ant-junit) # REQUIRED_USE for junit4 and for testutil
+ $(use junit4 && echo ant-junit4)
+ $(use junitlauncher && echo ant-junitlauncher)
+ # depends on "com.ibm.netrexx:netrexx:2.0.5" which is
+ # available on https://www.netrexx.org/downloads.nsp and states:
+ # "IBM's last NetRexx release, suitable for JVM versions 1.5 and below [...]"
+ # $(use netrexx && echo ant-netrexx) # src/etc/poms/ant-netrexx/pom.xml
+ $(use swing && echo ant-swing) # no dependencies
+ $(use testutil && echo ant-testutil)
+ $(use xz && echo ant-xz)
+ )
+
+ # defaultManifest.mf
+ sed -e "s:\${project.version}:${PV}:" \
+ -i src/main/org/apache/tools/ant/defaultManifest.mf || die
+
+ # version.txt
+ local mydate="$(date '+%B %d %Y')"
+ echo "VERSION=${PV}" > src/main/org/apache/tools/ant/version.txt || die
+ echo "DATE=${mydate}" >> src/main/org/apache/tools/ant/version.txt || die
+
+ # src directory for ant.jar
+ mkdir ant || die "cannot create src directory for ant"
+ cp -r {src/main/,ant}/org || die "cannot copy ant sources"
+
+ # resources directory for ant.jar according to lines 317-325 src/etc/poms/ant/pom.xml
+ local INCLUDES=( $(
+ sed -n '/<resources>/,/<\/resources>/p' \
+ src/etc/poms/ant/pom.xml \
+ | grep org \
+ | sed -e 's:.*<include>\(.*\)</include>:\1:' || die
+ ))
+ cp -r {src/,ant}/resources || die "cannot copy ant resources"
+ pushd src/main > /dev/null || die "pushd src/main"
+ cp --parents -v "${INCLUDES[@]}" ../../ant/resources || die "CANNOT"
+ popd > /dev/null || die "popd"
+
+ # Remove sources according to lines 158-187 src/etc/poms/ant/pom.xml
+ # We don't remove anything from src/main/org
+ local EXCLUDES=$(
+ sed -n '/<excludes>/,/<\/excludes/p' \
+ src/etc/poms/ant/pom.xml \
+ | grep org \
+ | sed -e 's:<exclude>\(.*\)</exclude>:ant/\1:' || die
+ )
+ rm -r ${EXCLUDES} || die
+ # Remove one more file directly, could not get it with sed.
+ rm ant/org/apache/tools/ant/taskdefs/optional/ANTLR.java || die
+
+ # Same handling for everything between <testExcludes> </testExcludes>
+ # Removing non-existing files is not possible: We ignore them ( grep -v ).
+ local TEST_EXCLUDES=$(
+ sed -n '/<testExcludes>/,/<\/testExcludes/p' \
+ src/etc/poms/ant/pom.xml \
+ | grep org \
+ | grep -v CommonsLoggingListener \
+ | grep -v Log4jListener \
+ | sed -e 's:<exclude>\(.*\)</exclude>:src/tests/junit/\1:' || die
+ )
+ rm -r ${TEST_EXCLUDES} || die
+
+ # Prepare a separate JAVA_SRC_DIR directory for each jar file to be created.
+ einfo "Copy source files of ant-tasks"
+ local task
+ for task in ant-launcher "${ANT_TASKS[@]}"; do
+ # "${task}/src/main" will be JAVA_SRC_DIR
+ mkdir -p "${task}/src/main" || die "mkdir ${task}"
+ # Read from pom.xml the file names which can still contain wildcards
+ local INCLUDES=( $(
+ sed -n '/<includes>/,/<\/includes>/p' "src/etc/poms/${task}/pom.xml" \
+ | grep org \
+ | sed -e 's:.*<include>\(.*\)</include>:\1:' || die
+ ))
+ local sourcefile
+ # Resolve wildcards in file names using find and copy the files to the corresponding
+ # "${task}"/src/main directory
+ # echo "${INCLUDES[@]}"
+ for sourcefile in "${INCLUDES[@]}"; do
+ # einfo "${task}: ${sourcefile}"
+ # Parameter substitution % to remove trailing slash from ${sourcefile}.
+ # Applies to ant-jdepend and ant-junitlauncher where find would otherwise fail.
+ find \
+ -path "./src/*/${sourcefile%/}" \
+ -exec cp -r --parents "{}" \
+ "${task}/src/main" \;
+ done
+ # tree "${task}"
+ done
+
+ # JAVA_RESOURCE_DIRS for ant-junit
+ mkdir -p ant-junit/src/resources/org/apache/tools/ant/taskdefs/optional/junit/xsl \
+ || die "junit resource dir"
+ cp src/etc/{junit-frames,junit-noframes,junit-frames-saxon,junit-noframes-saxon}.xsl \
+ ant-junit/src/resources/org/apache/tools/ant/taskdefs/optional/junit/xsl \
+ || die "junit resources"
+}
+
+src_compile() {
+ einfo "Compiling ant-launcher.jar"
+ JAVA_JAR_FILENAME="ant-launcher.jar"
+ JAVA_MAIN_CLASS="org.apache.tools.ant.launch.Launcher"
+ JAVA_SRC_DIR="ant-launcher/src/main"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":ant-launcher.jar"
+ rm -r target || die
+
+ einfo "Compiling ant.jar"
+ JAVA_JAR_FILENAME="ant.jar"
+ JAVA_LAUNCHER_FILENAME="ant"
+ JAVA_MAIN_CLASS="org.apache.tools.ant.Main"
+ JAVA_RESOURCE_DIRS="ant/resources"
+ JAVA_SRC_DIR="ant"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":ant.jar"
+ rm -r target || die
+
+ local task
+ for task in "${ANT_TASKS[@]}"; do
+ einfo "Compiling ${task}"
+ JAVA_JAR_FILENAME="${task}.jar"
+ JAVA_MAIN_CLASS=""
+ JAVA_RESOURCE_DIRS=""
+ JAVA_SRC_DIR=""
+
+ JAVA_SRC_DIR="${task}/src/main"
+ taskdeps ant-apache-bcel bcel
+ taskdeps ant-apache-bsf bsf-2.3
+ taskdeps ant-apache-log4j log4j-12-api-2
+ taskdeps ant-apache-oro jakarta-oro-2.0
+ taskdeps ant-apache-regexp jakarta-regexp-1.4
+ taskdeps ant-apache-resolver xml-commons-resolver
+ taskdeps ant-apache-xalan2 xalan
+ taskdeps ant-commons-logging commons-logging
+ taskdeps ant-commons-net commons-net
+ taskdeps ant-jai sun-jai-bin
+ taskdeps ant-jakartamail jakarta-mail
+ taskdeps ant-javamail 'javax-mail jakarta-activation-api-1'
+ taskdeps ant-jdepend jdepend
+ taskdeps ant-jsch jsch
+ taskdeps ant-junit junit-4 ant-junit/src/resources
+ taskdeps ant-junit4 junit-4
+ taskdeps ant-junitlauncher junit-5
+ # $(use netrexx && echo ant-netrexx)
+ taskdeps ant-xz xz-java
+
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${task}.jar"
+ rm -fr target || die
+ done
+ use doc && ejavadoc
+}
+
+src_test() {
+ # Avoid "--with-dependencies" as used by JAVA_TEST_GENTOO_CLASSPATH.
+ # dev-java/antunit has a circular dependency with dev-java/ant[test]
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":$(java-pkg_getjars --build-only antunit)"
+ # according to line 115 src/etc/poms/ant/pom.xml
+ jar -cvf src/etc/testcases/org/apache/tools/ant/taskdefs/test2-antlib.jar \
+ -C src/etc/testcases taskdefs/test.antlib.xml || die "cannot test2-antlib.jar"
+
+ JAVA_TEST_EXCLUDES=(
+ # according to lines 1956-1964 build.xml (abstract classes, not testcases)
+ org.apache.tools.ant.taskdefs.TaskdefsTest
+ org.apache.tools.ant.BuildFileTest
+ org.apache.tools.ant.util.regexp.RegexpMatcherTest
+ org.apache.tools.ant.util.regexp.RegexpTest
+ org.apache.tools.ant.types.selectors.BaseSelectorTest
+ # according to line 1970 build.xml (helper classes, not testcases)
+ org.apache.tools.ant.TestHelper
+ # lines 2097-2102 build.xml (interactive tests)
+ org.apache.tools.ant.taskdefs.TestProcess # 1. No runnable methods
+ # 1) testAll(org.apache.tools.ant.taskdefs.InitializeClassTest)
+ # /var/tmp/portage/dev-java/ant-1.10.14/work/apache-ant-1.10.14/
+ # src/etc/testcases/taskdefs/initializeclass.xml:24: Java returned: 1
+ # <pathelement path="${build.tests.value}"/>
+ # <pathelement location="${java.home}/lib/classes.zip"/>
+ org.apache.tools.ant.taskdefs.InitializeClassTest # Tests run: 1, Failures: 1
+ )
+
+# tests with patches to be revisited
+# JAVA_TEST_RUN_ONLY=(
+# org.apache.tools.ant.taskdefs.AntlibTest # Tests run: 6, Failures: 1 test2-antlib.jar?
+# org.apache.tools.ant.taskdefs.AntTest # Tests run: 32, Failures: 1
+# org.apache.tools.ant.taskdefs.JavaTest # Tests run: 38, Failures: 12
+# org.apache.tools.ant.taskdefs.modules.LinkTest # Tests run: 67, Failures: 4
+# org.apache.tools.ant.types.PathTest # Tests run: 33, Failures: 1
+# )
+
+ # according to lines 276-297 src/etc/poms/ant/pom.xml
+ JAVA_TEST_EXTRA_ARGS=(
+ -Dant.home="${ANT_HOME}"
+ -Dbuild.classes.value=../../../target/test-classes # needed for org.apache.tools.ant.taskdefs.SignJarTest
+ -Dbuild.tests.value=target/test-classes
+ -Doffline=true
+ -Dant.test.basedir.ignore=true
+ )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg_dojar ant.jar ant-launcher.jar
+
+ # Compatibility symlink, should be removed after transition period.
+ dosym -r /usr/share/ant{,-core}/lib/ant.jar
+
+ for task in "${ANT_TASKS[@]}"; do
+ java-pkg_dojar "${task}.jar"
+ java-pkg_register-ant-task --version "${PV}" "${task}"
+ done
+
+ dobin src/script/ant
+
+ dodir /usr/share/ant/bin
+ for each in antRun antRun.pl runant.pl runant.py ; do
+ dobin "${S}/src/script/${each}"
+ done
+
+ insinto /usr/share/ant/etc
+ doins -r src/etc/*.xsl
+ insinto /usr/share/ant/etc/checkstyle
+ doins -r src/etc/checkstyle/*.xsl
+
+ echo "ANT_HOME=\"${EPREFIX}/usr/share/ant\"" > "${T}/20ant"
+ doenvd "${T}/20ant"
+
+ einstalldocs
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ docinto html
+ dodoc -r manual
+ fi
+
+ use source && java-pkg_dosrc src/main/*
+}
diff --git a/dev-java/ant/ant-1.10.9.ebuild b/dev-java/ant/ant-1.10.9.ebuild
deleted file mode 100644
index e68c9948a493..000000000000
--- a/dev-java/ant/ant-1.10.9.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Java-based build tool similar to 'make' that uses XML configuration files"
-HOMEPAGE="https://ant.apache.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-IUSE="X +antlr +bcel +bsf +commonslogging +commonsnet jai +javamail +jdepend jmf
- +jsch +junit +junit4 +junitlauncher +log4j +oro +regexp +resolver swing testutil xz"
-
-DEPEND="~dev-java/ant-core-${PV}"
-
-RDEPEND="${DEPEND}
- ~dev-java/ant-core-${PV}
- ~dev-java/ant-junit-${PV}
- ~dev-java/ant-apache-xalan2-${PV}
- antlr? ( ~dev-java/ant-antlr-${PV} )
- bcel? ( ~dev-java/ant-apache-bcel-${PV} )
- bsf? ( ~dev-java/ant-apache-bsf-${PV} )
- commonslogging? ( ~dev-java/ant-commons-logging-${PV} )
- commonsnet? ( ~dev-java/ant-commons-net-${PV} )
- jai? ( ~dev-java/ant-jai-${PV} )
- javamail? ( ~dev-java/ant-javamail-${PV} )
- jdepend? ( ~dev-java/ant-jdepend-${PV} )
- jmf? ( ~dev-java/ant-jmf-${PV} )
- jsch? ( ~dev-java/ant-jsch-${PV} )
- junit? ( ~dev-java/ant-junit-${PV} )
- junit4? ( ~dev-java/ant-junit4-${PV} )
- junitlauncher? ( ~dev-java/ant-junitlauncher-${PV} )
- log4j? ( ~dev-java/ant-apache-log4j-${PV} )
- oro? ( ~dev-java/ant-apache-oro-${PV} )
- regexp? ( ~dev-java/ant-apache-regexp-${PV} )
- resolver? ( ~dev-java/ant-apache-resolver-${PV} )
- swing? ( ~dev-java/ant-swing-${PV} )
- testutil? ( ~dev-java/ant-testutil-${PV} )
- X? ( ~dev-java/ant-swing-${PV} )
- xz? ( ~dev-java/ant-xz-${PV} )
-"
-
-S="${WORKDIR}"
-
-src_compile() { :; }
diff --git a/dev-java/ant/files/1.10.9-launch.patch b/dev-java/ant/files/1.10.9-launch.patch
new file mode 100644
index 000000000000..7babe6740fa9
--- /dev/null
+++ b/dev-java/ant/files/1.10.9-launch.patch
@@ -0,0 +1,361 @@
+diff --git a/src/script/ant b/src/script/ant
+index 81107b5..a501081 100644
+--- a/src/script/ant
++++ b/src/script/ant
+@@ -1,4 +1,4 @@
+-#! /bin/sh
++#!@GENTOO_PORTAGE_EPREFIX@/bin/bash
+
+ # Licensed to the Apache Software Foundation (ASF) under one or more
+ # contributor license agreements. See the NOTICE file distributed with
+@@ -15,6 +15,10 @@
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+
++# Edited for Gentoo Linux
++
++EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
++
+ # Extract launch and ant arguments, (see details below).
+ ant_exec_args=
+ no_config=false
+@@ -83,9 +87,9 @@ if $no_config; then
+ usejikes=$use_jikes_default
+ else
+ # load system-wide ant configuration (ONLY if ANT_HOME has NOT been set)
+- if [ -z "$ANT_HOME" -o "$ANT_HOME" = "/usr/share/ant" ]; then
+- if [ -f "/etc/ant.conf" ]; then
+- . /etc/ant.conf
++ if [ -z "$ANT_HOME" -o "$ANT_HOME" = "${EPREFIX}/usr/share/ant" ]; then
++ if [ -f "${EPREFIX}/etc/ant.conf" ]; then
++ . "${EPREFIX}"/etc/ant.conf
+ fi
+ fi
+
+@@ -106,69 +110,23 @@ else
+ fi
+ fi
+
+-# Setup Java environment in rpm mode
+-if $rpm_mode; then
+- if [ -f /usr/share/java-utils/java-functions ]; then
+- . /usr/share/java-utils/java-functions
+- set_jvm
+- set_javacmd
+- fi
+-fi
+-
+-# OS specific support. $var _must_ be set to either true or false.
+-cygwin=false;
+-darwin=false;
+-mingw=false;
+-case "`uname`" in
+- CYGWIN*)
+- cygwin=true
+- ;;
+- Darwin*)
+- darwin=true
+- if [ -z "$JAVA_HOME" ]; then
+- if [ -x '/usr/libexec/java_home' ]; then
+- JAVA_HOME=`/usr/libexec/java_home`
+- elif [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home" ]; then
+- JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
+- fi
+- fi
+- ;;
+- MINGW*)
+- mingw=true
+- ;;
+-esac
+-
+-if [ -z "$ANT_HOME" -o ! -d "$ANT_HOME" ]; then
+- ## resolve links - $0 may be a link to ant's home
+- PRG="$0"
+- progname=`basename "$0"`
+-
+- # need this for relative symlinks
+- while [ -h "$PRG" ]; do
+- ls=`ls -ld "$PRG"`
+- link=`expr "$ls" : '.*-> \(.*\)$'`
+- if expr "$link" : '/.*' > /dev/null; then
+- PRG="$link"
+- else
+- PRG=`dirname "$PRG"`"/$link"
+- fi
+- done
+-
+- ANT_HOME=`dirname "$PRG"`/..
++export WANT_JAVA_CONFIG=2
+
+- # make it fully qualified
+- ANT_HOME=`cd "$ANT_HOME" > /dev/null && pwd`
++# Always get JAVA_HOME from java-config, unless ANT_RESPECT_JAVA_HOME is set
++# Use GENTOO_VM to change which VM is used instead.
++if [[ -z "${ANT_RESPECT_JAVA_HOME}" || -z "${JAVA_HOME}" ]]; then
++ export JAVA_HOME="$(java-config -g JAVA_HOME)"
+ fi
+
+-# For Cygwin and Mingw, ensure paths are in UNIX format before
+-# anything is touched
+-if $cygwin; then
+- [ -n "$ANT_HOME" ] && ANT_HOME=`cygpath --unix "$ANT_HOME"`
+- [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
++if [ -z $JAVA_HOME ] ; then
++ echo 'Error: No JDK found!'
++ echo "Try using java-config script to set your JDK"
++ echo "Remember that you need a JDK not a JRE"
++ exit 1
+ fi
+-if $mingw; then
+- [ -n "$ANT_HOME" ] && ANT_HOME="`(cd "$ANT_HOME"; pwd)`"
+- [ -n "$JAVA_HOME" ] && JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
++
++if [[ -z "${ANT_HOME}" ]] ; then
++ ANT_HOME="${EPREFIX}"/usr/share/ant
+ fi
+
+ # set ANT_LIB location
+@@ -176,14 +134,7 @@ ANT_LIB="${ANT_HOME}/lib"
+
+ if [ -z "$JAVACMD" ]; then
+ if [ -n "$JAVA_HOME" ]; then
+- # IBM's JDK on AIX uses strange locations for the executables
+- if [ -x "$JAVA_HOME/jre/sh/java" ]; then
+- JAVACMD="$JAVA_HOME/jre/sh/java"
+- elif [ -x "$JAVA_HOME/jre/bin/java" ]; then
+- JAVACMD="$JAVA_HOME/jre/bin/java"
+- else
+ JAVACMD="$JAVA_HOME/bin/java"
+- fi
+ else
+ JAVACMD=`which java 2> /dev/null `
+ if [ -z "$JAVACMD" ]; then
+@@ -200,88 +151,61 @@ if [ ! -x "$JAVACMD" ]; then
+ exit 1
+ fi
+
+-# Build local classpath using just the launcher in non-rpm mode or
+-# use the Jpackage helper in rpm mode with basic and default jars
+-# specified in the ant.conf configuration. Because the launcher is
+-# used, libraries linked in ANT_HOME/lib will also be included, but this
+-# is discouraged as it is not java-version safe. A user should
+-# request optional jars and their dependencies via the OPT_JAR_LIST
+-# variable
+-if $rpm_mode && [ -x /usr/bin/build-classpath ]; then
+- LOCALCLASSPATH="$(/usr/bin/build-classpath ant ant-launcher jaxp_parser_impl xml-commons-apis)"
+-
+- # If no optional jars have been specified then build the default list
+- if [ -z "$OPT_JAR_LIST" ]; then
+- for file in /etc/ant.d/*; do
+- if [ -f "$file" ]; then
+- case "$file" in
+- *~|*#*|*.rpmsave|*.rpmnew)
+- ;;
+- *)
+- for dep in `cat "$file"`; do
+- OPT_JAR_LIST="$OPT_JAR_LIST${OPT_JAR_LIST:+ }$dep"
+- done
+- ;;
+- esac
+- fi
+- done
+- fi
+-
+- # If the user requested to try to add some other jars to the classpath
+- if [ -n "$OPT_JAR_LIST" ]; then
+- _OPTCLASSPATH="$(/usr/bin/build-classpath $OPT_JAR_LIST 2> /dev/null)"
+- if [ -n "$_OPTCLASSPATH" ]; then
+- LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH"
+- fi
+- fi
+-
+- # Explicitly add javac path to classpath, assume JAVA_HOME set
+- # properly in rpm mode
+- if [ -f "$JAVA_HOME/lib/tools.jar" ]; then
+- LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar"
+- fi
+- if [ -f "$JAVA_HOME/lib/classes.zip" ]; then
+- LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip"
+- fi
++if [ -z "$LOCALCLASSPATH" ] ; then
++ LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar
++else
++ LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH
++fi
++
++# if ANT_TASKS is not set, default to "all"
++ANT_TASKS="${ANT_TASKS:-all}"
++
++# if ANT_TASKS is set to "all", get the tasks list from /usr/share/ant/tasks/
++if [[ "${ANT_TASKS}" == "all" ]]; then
++ ANT_TASKS=""
++ # but only if it exists
++ if [[ -d "${EPREFIX}"/usr/share/ant/tasks ]]; then
++ ANT_TASKS="${ANT_TASKS} ${EPREFIX}"/usr/share/ant/tasks/*
++ fi
++ if [[ -d "${EPREFIX}"/usr/share/ant/tasks-1.8.2 ]]; then
++ ANT_TASKS="${ANT_TASKS} ${EPREFIX}"/usr/share/ant/tasks-1.8.2/*
++ fi
++# if set to "none", make ANT_TASKS empty list
++elif [[ "${ANT_TASKS}" == "none" ]]; then
++ ANT_TASKS=""
++fi
++# otherwise ANT_TASKS defines explicit task list
++
++# construct the tasks list separated with commas to pass to java-config
++TASKS_LIST=""
++for task in $ANT_TASKS; do
++ TASKS_LIST="${TASKS_LIST},$(basename $task)"
++done
++TASKS_LIST=${TASKS_LIST#,}
+
+- # if CLASSPATH_OVERRIDE env var is set, LOCALCLASSPATH will be
+- # user CLASSPATH first and ant-found jars after.
+- # In that case, the user CLASSPATH will override ant-found jars
+- #
+- # if CLASSPATH_OVERRIDE is not set, we'll have the normal behaviour
+- # with ant-found jars first and user CLASSPATH after
+- if [ -n "$CLASSPATH" ]; then
+- # merge local and specified classpath
+- if [ -z "$LOCALCLASSPATH" ]; then
+- LOCALCLASSPATH="$CLASSPATH"
+- elif [ -n "$CLASSPATH_OVERRIDE" ]; then
+- LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH"
+- else
+- LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH"
+- fi
++# get the classpath for optional tasks and their dependency .jar files
++if [[ -n "${TASKS_LIST}" ]] ; then
++ ANT_TASKS_CLASSPATH="-lib \"$(java-config -dp ${TASKS_LIST})\""
++ ANT_TASKS_LIBPATH="-Djava.library.path=\"$(java-config -di ${TASKS_LIST})\""
++else
++ ANT_TASKS_CLASSPATH=""
++ ANT_TASKS_LIBPATH=""
++fi
+
+- # remove class path from launcher -cp option
+- CLASSPATH=""
+- fi
++# determine where to get tools.jar from
++if [[ -n "${ANT_RESPECT_JAVA_HOME}" ]]; then
++ TOOLS_JAR="${JAVA_HOME}/lib/tools.jar"
+ else
+- # not using rpm_mode; use launcher to determine classpaths
+- if [ -z "$LOCALCLASSPATH" ]; then
+- LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar
+- else
+- LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH
+- fi
++ TOOLS_JAR="$(java-config --tools)"
+ fi
+
+-if [ -n "$JAVA_HOME" ]; then
+- # OSX hack to make Ant work with jikes
+- if $darwin; then
+- OSXHACK="${JAVA_HOME}/../Classes"
+- if [ -d "${OSXHACK}" ]; then
+- for i in "${OSXHACK}"/*.jar; do
+- JIKESPATH="$JIKESPATH:$i"
+- done
+- fi
+- fi
++if [[ -n "${TOOLS_JAR}" ]] ; then
++ LOCALCLASSPATH="$LOCALCLASSPATH:${TOOLS_JAR}"
++elif [[ $(java-config -f) != apple-jdk-bin* ]] ; then
++ echo "Warning: Unable to determine tools.jar location."
++ echo " If build fails because sun.* classes could not be found,"
++ echo " Make sure you are using a JDK, not JRE as your user/system VM."
++ echo " and that you have java-config version 2.0.30 or above installed."
+ fi
+
+ # Allow Jikes support (off by default)
+@@ -289,29 +213,6 @@ if $usejikes; then
+ ANT_OPTS="$ANT_OPTS -Dbuild.compiler=jikes"
+ fi
+
+-# For Cygwin, switch paths to appropriate format before running java
+-# For PATHs convert to unix format first, then to windows format to ensure
+-# both formats are supported. Probably this will fail on directories with ;
+-# in the name in the path. Let's assume that paths containing ; are more
+-# rare than windows style paths on cygwin.
+-if $cygwin; then
+- if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null; then
+- format=mixed
+- else
+- format=windows
+- fi
+- [ -n "$ANT_HOME" ] && ANT_HOME=`cygpath --$format "$ANT_HOME"`
+- ANT_LIB=`cygpath --$format "$ANT_LIB"`
+- [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --$format "$JAVA_HOME"`
+- LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"`
+- LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"`
+- if [ -n "$CLASSPATH" ]; then
+- CP_TEMP=`cygpath --path --unix "$CLASSPATH"`
+- CLASSPATH=`cygpath --path --$format "$CP_TEMP"`
+- fi
+- CYGHOME=`cygpath --$format "$HOME"`
+-fi
+-
+ # Show script help if requested
+ if $show_help; then
+ echo $0 '[script options] [options] [target [target2 [target3] ..]]'
+@@ -326,49 +227,20 @@ if $show_help; then
+ echo ' launch script'
+ echo ''
+ fi
+-# add a second backslash to variables terminated by a backslash under cygwin
+-if $cygwin; then
+- case "$ANT_HOME" in
+- *\\ )
+- ANT_HOME="$ANT_HOME\\"
+- ;;
+- esac
+- case "$CYGHOME" in
+- *\\ )
+- CYGHOME="$CYGHOME\\"
+- ;;
+- esac
+- case "$JIKESPATH" in
+- *\\ )
+- JIKESPATH="$JIKESPATH\\"
+- ;;
+- esac
+- case "$LOCALCLASSPATH" in
+- *\\ )
+- LOCALCLASSPATH="$LOCALCLASSPATH\\"
+- ;;
+- esac
+- case "$CLASSPATH" in
+- *\\ )
+- CLASSPATH="$CLASSPATH\\"
+- ;;
+- esac
+-fi
++
+ # Execute ant using eval/exec to preserve spaces in paths,
+ # java options, and ant args
+ ant_sys_opts=
+-if [ -n "$CYGHOME" ]; then
+- if [ -n "$JIKESPATH" ]; then
+- ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\" -Dcygwin.user.home=\"$CYGHOME\""
+- else
+- ant_sys_opts="-Dcygwin.user.home=\"$CYGHOME\""
+- fi
+-else
+- if [ -n "$JIKESPATH" ]; then
+- ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\""
+- fi
++
++if [ -n "$JIKESPATH" ]; then
++ ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\""
+ fi
+-ant_exec_command="exec \"\$JAVACMD\" $ANT_OPTS -classpath \"\$LOCALCLASSPATH\" -Dant.home=\"\$ANT_HOME\" -Dant.library.dir=\"\$ANT_LIB\" $ant_sys_opts org.apache.tools.ant.launch.Launcher $ANT_ARGS -cp \"\$CLASSPATH\""
++
++ant_exec_command="exec \"${JAVACMD}\" ${ANT_OPTS} -classpath \"${LOCALCLASSPATH}\" \
++ -Dant.home=\"${ANT_HOME}\" -Dant.library.dir=\"${ANT_LIB}\" ${ant_sys_opts} \
++ ${ANT_TASKS_LIBPATH} org.apache.tools.ant.launch.Launcher \
++ ${ANT_TASKS_CLASSPATH} ${ANT_ARGS} -cp \"${CLASSPATH}\""
++
+ if $ant_exec_debug; then
+ # using printf to avoid echo line continuation and escape interpretation confusion
+ printf "%s\n" "$ant_exec_command $ant_exec_args"
diff --git a/dev-java/ant/files/ant-1.10.14-AntTest.patch b/dev-java/ant/files/ant-1.10.14-AntTest.patch
new file mode 100644
index 000000000000..2e2e7fe38d96
--- /dev/null
+++ b/dev-java/ant/files/ant-1.10.14-AntTest.patch
@@ -0,0 +1,28 @@
+There was 1 failure:
+1) testAntCoreLib(org.apache.tools.ant.taskdefs.AntTest)
+java.lang.AssertionError: found ant.core.lib in: /var/tmp/portage/dev-java/ant-core-1.10.14/work/apache-ant-1.10.14/target/test-classes
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.assertTrue(Assert.java:42)
+ at org.apache.tools.ant.taskdefs.AntTest.testAntCoreLib(AntTest.java:377)
+
+FAILURES!!!
+Tests run: 32, Failures: 1
+--- a/src/tests/junit/org/apache/tools/ant/taskdefs/AntTest.java
++++ b/src/tests/junit/org/apache/tools/ant/taskdefs/AntTest.java
+@@ -33,6 +33,7 @@ import org.junit.After;
+ import org.junit.Before;
+ import org.junit.Rule;
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import static org.hamcrest.Matchers.containsString;
+ import static org.junit.Assert.assertEquals;
+@@ -369,7 +370,7 @@ public class AntTest {
+ assertEquals("dadctb", buildRule.getLog());
+ }
+
+- @Test
++ @Test @Ignore
+ public void testAntCoreLib() {
+ // Cf. #42263
+ buildRule.executeTarget("sub-show-ant.core.lib");
diff --git a/dev-java/ant/files/ant-1.10.14-AntlibTest.patch b/dev-java/ant/files/ant-1.10.14-AntlibTest.patch
new file mode 100644
index 000000000000..d45925272beb
--- /dev/null
+++ b/dev-java/ant/files/ant-1.10.14-AntlibTest.patch
@@ -0,0 +1,40 @@
+There was 1 failure:
+1) testAntlibResource(org.apache.tools.ant.taskdefs.AntlibTest)
+/var/tmp/portage/dev-java/ant-core-1.10.14/work/apache-ant-1.10.14/src/etc/testcases/taskdefs/antlib.xml:43: Problem: failed to create task or type mytask2
+Cause: The name is undefined.
+Action: Check the spelling.
+Action: Check that any custom tasks/types have been declared.
+Action: Check that any <presetdef>/<macrodef> declarations have taken place.
+
+ at org.apache.tools.ant.UnknownElement.getNotFoundException(UnknownElement.java:506)
+ at org.apache.tools.ant.UnknownElement.makeObject(UnknownElement.java:438)
+ at org.apache.tools.ant.UnknownElement.maybeConfigure(UnknownElement.java:166)
+ at org.apache.tools.ant.Task.perform(Task.java:349)
+ at org.apache.tools.ant.Target.execute(Target.java:449)
+ at org.apache.tools.ant.Target.performTasks(Target.java:470)
+ at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
+ at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
+ at org.apache.tools.ant.BuildFileRule.executeTarget(BuildFileRule.java:197)
+ at org.apache.tools.ant.taskdefs.AntlibTest.testAntlibResource(AntlibTest.java:67)
+
+FAILURES!!!
+Tests run: 6, Failures: 1
+--- a/src/tests/junit/org/apache/tools/ant/taskdefs/AntlibTest.java
++++ b/src/tests/junit/org/apache/tools/ant/taskdefs/AntlibTest.java
+@@ -24,6 +24,7 @@ import org.apache.tools.ant.Task;
+ import org.junit.Before;
+ import org.junit.Rule;
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import static org.junit.Assert.assertEquals;
+ import static org.junit.Assert.assertNotNull;
+@@ -61,7 +62,7 @@ public class AntlibTest {
+ * can collect several antlibs in one Definer call.
+ * @see <a href="https://issues.apache.org/bugzilla/show_bug.cgi?id=24024">bug 24024</a>
+ */
+- @Test
++ @Test @Ignore
+ public void testAntlibResource() {
+ assertNotNull("build.tests.value not set", System.getProperty("build.tests.value"));
+ buildRule.executeTarget("antlib.resource");
diff --git a/dev-java/ant/files/ant-1.10.14-JavaTest.patch b/dev-java/ant/files/ant-1.10.14-JavaTest.patch
new file mode 100644
index 000000000000..9143cba43ca2
--- /dev/null
+++ b/dev-java/ant/files/ant-1.10.14-JavaTest.patch
@@ -0,0 +1,102 @@
+bug #922775
+--- a/src/tests/junit/org/apache/tools/ant/taskdefs/JavaTest.java
++++ b/src/tests/junit/org/apache/tools/ant/taskdefs/JavaTest.java
+@@ -42,6 +42,7 @@ import org.junit.AssumptionViolatedException;
+ import org.junit.Before;
+ import org.junit.Rule;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.rules.ExpectedException;
+
+ import static org.hamcrest.Matchers.containsString;
+@@ -241,7 +242,7 @@ public class JavaTest {
+ buildRule.executeTarget("testRunFailFoeFork");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testExcepting() {
+ buildRule.executeTarget("testExcepting");
+ assertThat(buildRule.getLog(), containsString("Exception raised inside called program"));
+@@ -253,7 +254,7 @@ public class JavaTest {
+ assertThat(buildRule.getLog(), containsString("Java Result:"));
+ }
+
+- @Test
++ @Test @Ignore
+ public void testExceptingFoe() {
+ thrown.expect(BuildException.class);
+ thrown.expectMessage("Exception raised inside called program");
+@@ -267,13 +268,13 @@ public class JavaTest {
+ buildRule.executeTarget("testExceptingFoeFork");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testResultPropertyZero() {
+ buildRule.executeTarget("testResultPropertyZero");
+ assertEquals("0", buildRule.getProject().getProperty("exitcode"));
+ }
+
+- @Test
++ @Test @Ignore
+ public void testResultPropertyNonZero() {
+ buildRule.executeTarget("testResultPropertyNonZero");
+ assertEquals("2", buildRule.getProject().getProperty("exitcode"));
+@@ -301,12 +302,12 @@ public class JavaTest {
+ buildRule.executeTarget("testRunFailWithFailOnError");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testRunSuccessWithFailOnError() {
+ buildRule.executeTarget("testRunSuccessWithFailOnError");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testSpawn() throws InterruptedException {
+ File logFile = FILE_UTILS.createTempFile("spawn", "log",
+ new File(buildRule.getProject().getProperty("output")), false, false);
+@@ -326,27 +327,27 @@ public class JavaTest {
+ assertTrue("log file exists", logFile.exists());
+ }
+
+- @Test
++ @Test @Ignore
+ public void testRedirect1() {
+ buildRule.executeTarget("redirect1");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testRedirect2() {
+ buildRule.executeTarget("redirect2");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testRedirect3() {
+ buildRule.executeTarget("redirect3");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testRedirector1() {
+ buildRule.executeTarget("redirector1");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testRedirector2() {
+ buildRule.executeTarget("redirector2");
+ }
+@@ -397,7 +398,7 @@ public class JavaTest {
+ assertEquals("foo", buildRule.getProject().getProperty("input.value"));
+ }
+
+- @Test
++ @Test @Ignore
+ public void testFlushedInput() throws Exception {
+ final PipedOutputStream out = new PipedOutputStream();
+ final PipedInputStream in = new PipedInputStream(out);
diff --git a/dev-java/ant/files/ant-1.10.14-LinkTest.patch b/dev-java/ant/files/ant-1.10.14-LinkTest.patch
new file mode 100644
index 000000000000..23075707fb9b
--- /dev/null
+++ b/dev-java/ant/files/ant-1.10.14-LinkTest.patch
@@ -0,0 +1,87 @@
+There were 4 failures:
+1) testLocalesInAttributeAndNested(org.apache.tools.ant.taskdefs.modules.LinkTest)
+java.lang.AssertionError: Verifying that image has access to locales specified during linking. expected:<0> but was:<1>
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.failNotEquals(Assert.java:835)
+ at org.junit.Assert.assertEquals(Assert.java:647)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.verifyLocales(LinkTest.java:289)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.testLocalesInAttributeAndNested(LinkTest.java:330)
+2) testLocales(org.apache.tools.ant.taskdefs.modules.LinkTest)
+java.lang.AssertionError: Verifying that image has access to locales specified during linking. expected:<0> but was:<1>
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.failNotEquals(Assert.java:835)
+ at org.junit.Assert.assertEquals(Assert.java:647)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.verifyLocales(LinkTest.java:289)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.testLocales(LinkTest.java:306)
+3) testNestedLocales(org.apache.tools.ant.taskdefs.modules.LinkTest)
+java.lang.AssertionError: Verifying that image has access to locales specified during linking. expected:<0> but was:<1>
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.failNotEquals(Assert.java:835)
+ at org.junit.Assert.assertEquals(Assert.java:647)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.verifyLocales(LinkTest.java:289)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.testNestedLocales(LinkTest.java:315)
+4) testIgnoreSigning(org.apache.tools.ant.taskdefs.modules.LinkTest)
+/var/tmp/portage/dev-java/ant-core-1.10.14/work/apache-ant-1.10.14/src/etc/testcases/taskdefs/link.xml:1119: exec returned: 1
+ at org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:675)
+ at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:699)
+ at org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:527)
+ at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
+ at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
+ at java.base/java.lang.reflect.Method.invoke(Method.java:580)
+ at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
+ at org.apache.tools.ant.Task.perform(Task.java:350)
+ at org.apache.tools.ant.Target.execute(Target.java:449)
+ at org.apache.tools.ant.Target.performTasks(Target.java:470)
+ at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
+ at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
+ at org.apache.tools.ant.BuildFileRule.executeTarget(BuildFileRule.java:197)
+ at org.apache.tools.ant.taskdefs.modules.LinkTest.testIgnoreSigning(LinkTest.java:901)
+
+FAILURES!!!
+Tests run: 67, Failures: 4
+--- a/src/tests/junit/org/apache/tools/ant/taskdefs/modules/LinkTest.java
++++ b/src/tests/junit/org/apache/tools/ant/taskdefs/modules/LinkTest.java
+@@ -46,6 +46,7 @@ import org.junit.Assume;
+ import org.junit.Before;
+ import org.junit.Rule;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.rules.ExpectedException;
+
+ import org.apache.tools.ant.BuildException;
+@@ -297,7 +298,7 @@ public class LinkTest {
+ + "not specified during linking.", 0, exitCode);
+ }
+
+- @Test
++ @Test @Ignore
+ public void testLocales()
+ throws IOException,
+ InterruptedException {
+@@ -306,7 +307,7 @@ public class LinkTest {
+ verifyLocales();
+ }
+
+- @Test
++ @Test @Ignore
+ public void testNestedLocales()
+ throws IOException,
+ InterruptedException {
+@@ -321,7 +322,7 @@ public class LinkTest {
+ buildRule.executeTarget("locales-nested-missing-name");
+ }
+
+- @Test
++ @Test @Ignore
+ public void testLocalesInAttributeAndNested()
+ throws IOException,
+ InterruptedException {
+@@ -896,7 +897,7 @@ public class LinkTest {
+ 1, nonLinkCount);
+ }
+
+- @Test
++ @Test @Ignore
+ public void testIgnoreSigning() {
+ buildRule.executeTarget("ignoresigning");
+ verifyImageBuiltNormally();
diff --git a/dev-java/ant/files/ant-1.10.14-PathTest.patch b/dev-java/ant/files/ant-1.10.14-PathTest.patch
new file mode 100644
index 000000000000..022377ecc4d7
--- /dev/null
+++ b/dev-java/ant/files/ant-1.10.14-PathTest.patch
@@ -0,0 +1,30 @@
+There was 1 failure:
+1) testDirSet(org.apache.tools.ant.types.PathTest)
+java.lang.AssertionError: expected:<1> but was:<0>
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.failNotEquals(Assert.java:835)
+ at org.junit.Assert.assertEquals(Assert.java:647)
+ at org.junit.Assert.assertEquals(Assert.java:633)
+ at org.apache.tools.ant.types.PathTest.testDirSet(PathTest.java:585)
+
+FAILURES!!!
+Tests run: 33, Failures: 1
+--- a/src/tests/junit/org/apache/tools/ant/types/PathTest.java
++++ b/src/tests/junit/org/apache/tools/ant/types/PathTest.java
+@@ -29,6 +29,7 @@ import org.apache.tools.ant.taskdefs.condition.Os;
+ import org.junit.Before;
+ import org.junit.Rule;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.rules.ExpectedException;
+
+ import static org.hamcrest.Matchers.endsWith;
+@@ -570,7 +571,7 @@ public class PathTest {
+ assertEquals(project.resolveFile("build.xml").getAbsolutePath(), l[0]);
+ }
+
+- @Test
++ @Test @Ignore
+ public void testDirSet() {
+ DirSet d = new DirSet();
+ d.setProject(project);
diff --git a/dev-java/ant/metadata.xml b/dev-java/ant/metadata.xml
index 219a679d237b..1c03ec86e251 100644
--- a/dev-java/ant/metadata.xml
+++ b/dev-java/ant/metadata.xml
@@ -12,7 +12,9 @@
(<pkg>dev-java/bsf</pkg>)</flag>
<flag name="commonslogging">Enable commons-logging Ant tasks</flag>
<flag name="commonsnet">Enable commons-net Ant tasks</flag>
+ <flag name="imageio">Enable imageio Ant tasks</flag>
<flag name="jai">Enable JAI (Java Imaging) Ant task</flag>
+ <flag name="jakartamail">Enable Jakartamail Ant task</flag>
<flag name="javamail">Enable JavaMail Ant task</flag>
<flag name="jdepend">Enable Jdepend Ant tasks</flag>
<flag name="jmf">Enable JMF (Java Media Framework) Ant tasks</flag>
@@ -26,6 +28,12 @@
<flag name="resolver">Enable Apache Resolver Ant tasks</flag>
<flag name="swing">Enable Swing Ant tasks</flag>
<flag name="testutil">Enable optional test util classes</flag>
+ <flag name="xalan">Enable Apache Xalan2 Ant tasks</flag>
<flag name="xz">Enable XZ Ant tasks</flag>
</use>
+ <upstream>
+ <bugs-to>https://bz.apache.org/bugzilla/enter_bug.cgi?product=Ant</bugs-to>
+ <doc>https://ant.apache.org/manual/</doc>
+ <remote-id type="github">apache/ant</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/antlr-tool/antlr-tool-4.9.3.ebuild b/dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild
index 3461968d2cae..2891b009c53f 100644
--- a/dev-java/antlr-tool/antlr-tool-4.9.3.ebuild
+++ b/dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -32,7 +32,7 @@ CP_DEPEND="
~dev-java/antlr-runtime-${PV}:${SLOT}
dev-java/antlr-runtime:3.5
dev-java/jakarta-json-api:1
- dev-java/icu4j:70
+ >=dev-java/icu4j-74.2-r1:0
dev-java/stringtemplate:4
dev-java/treelayout:0
"
@@ -97,7 +97,7 @@ src_test() {
antlr-runtime-${SLOT}
antlr-runtime-3.5
jakarta-json-api-1
- icu4j-70
+ icu4j
stringtemplate-4
treelayout
)
diff --git a/dev-java/antunit/Manifest b/dev-java/antunit/Manifest
new file mode 100644
index 000000000000..765c72b8f4c9
--- /dev/null
+++ b/dev-java/antunit/Manifest
@@ -0,0 +1,2 @@
+DIST apache-ant-antunit-1.4.1-src.tar.bz2 125017 BLAKE2B 2c092d22eaf716c52bd6c6ce43d1e33c1f599621ee383303c97553f9dc2d0708cf58420338184f8877cd2b0fc053c9742b04cd869583db7b2fc2dedfb4a2dddd SHA512 7c59f0e918f5ec8edbf10bdbcdca1c9bd2ba2a7b27ade69aa4ca92c0c058c434be517799ce795309c0f1c00726a1c77650101b0d1cbe189db5379b15d29ad305
+DIST apache-ant-antunit-1.4.1-src.tar.bz2.asc 224 BLAKE2B c56e3d8005b1a39e42b85fad3c542aa4dd894d9e6cc61a8ea34bce33a8fb3f56d142cb77372fd4d664d46427365d24078b7429480f689245eb31d771c525f90e SHA512 3ad2cca4240e2714d7c435828b3a3d3cbe1e57647400237ce2a96a714d877605199ccf54a2266ff35081ed9f3e23ca46306b30293c1981e55ccbbc61591ad760
diff --git a/dev-java/antunit/antunit-1.4.1-r1.ebuild b/dev-java/antunit/antunit-1.4.1-r1.ebuild
new file mode 100644
index 000000000000..5bdeed3d9cb0
--- /dev/null
+++ b/dev-java/antunit/antunit-1.4.1-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.ant:ant-antunit:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="An Antlib that provides a test framework for Apache Ant tasks and types"
+HOMEPAGE="https://ant.apache.org/antlibs/antunit/"
+SRC_URI="mirror://apache/ant/antlibs/${PN}/source/apache-ant-${P}-src.tar.bz2
+ verify-sig? ( https://downloads.apache.org/ant/antlibs/antunit/source/apache-ant-${P}-src.tar.bz2.asc )"
+S="${WORKDIR}/apache-ant-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/ant.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-ant )"
+# reset to ant-core:0 when ready
+CP_DEPEND="
+ >=dev-java/ant-1.10.14:0
+ dev-java/junit:4
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( >=dev-java/ant-1.10.14:0[junit,testutil] )
+"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( NOTICE README WHATSNEW )
+HTML_DOCS=( README.html )
+PATCHES=(
+ # Some tests expect classes in "build" instead in "target" directory.
+ "${FILESDIR}/antunit-1.4.1-gentoo.patch"
+)
+
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR="src/main"
+JAVA_TEST_GENTOO_CLASSPATH="ant"
+JAVA_TEST_SRC_DIR="src/tests/junit"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
+ mkdir -p "res/org/apache/ant/antunit" || die
+ cp {src/main,res}/org/apache/ant/antunit/antlib.xml || die
+}
diff --git a/dev-java/antunit/files/antunit-1.4.1-gentoo.patch b/dev-java/antunit/files/antunit-1.4.1-gentoo.patch
new file mode 100644
index 000000000000..7aeccf662bc7
--- /dev/null
+++ b/dev-java/antunit/files/antunit-1.4.1-gentoo.patch
@@ -0,0 +1,62 @@
+--- a/src/etc/testcases/antunit/java-io.xml
++++ b/src/etc/testcases/antunit/java-io.xml
+@@ -30,7 +30,7 @@ under the License.
+ <target name="testTaskHandlingOutput">
+ <java classname="org.apache.ant.antunit.AntUnitTest$HelloWorld"
+ outputproperty="propertyToSet"
+- classpath="build/test-classes"
++ classpath="target/test-classes"
+ failonerror="true"
+ />
+ <au:assertEquals expected="HelloWorld" actual="${propertyToSet}" />
+--- a/src/etc/testcases/assert.xml
++++ b/src/etc/testcases/assert.xml
+@@ -156,28 +156,28 @@ under the License.
+ <au:assertDestIsUptodate
+ src="../../main/org/apache/ant/antunit/AssertTask.java"
+
+- dest="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
++ dest="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
+ </target>
+
+ <target name="assertDestIsUptodateFail">
+ <au:assertDestIsUptodate
+ dest="../../main/org/apache/ant/antunit/AssertTask.java"
+
+- src="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
++ src="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
+ </target>
+
+ <target name="assertDestIsOutofdatePass">
+ <au:assertDestIsOutofdate
+ dest="../../main/org/apache/ant/antunit/AssertTask.java"
+
+- src="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
++ src="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
+ </target>
+
+ <target name="assertDestIsOutofdateFail">
+ <au:assertDestIsOutofdate
+ src="../../main/org/apache/ant/antunit/AssertTask.java"
+
+- dest="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
++ dest="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
+ </target>
+
+ <target name="assertFilesMatchPass">
+--- a/src/tests/junit/org/apache/ant/antunit/AssertTest.java
++++ b/src/tests/junit/org/apache/ant/antunit/AssertTest.java
+@@ -137,11 +137,11 @@ public class AssertTest extends BuildFileTest {
+ }
+ public void testDestIsUptodateFail() {
+ testFail("assertDestIsUptodateFail",
+- "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../build/classes/org/apache/ant/antunit/AssertTask.class'");
++ "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../target/classes/org/apache/ant/antunit/AssertTask.class'");
+ }
+ public void testDestIsOutofdateFail() {
+ testFail("assertDestIsOutofdateFail",
+- "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../build/classes/org/apache/ant/antunit/AssertTask.class'");
++ "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../target/classes/org/apache/ant/antunit/AssertTask.class'");
+ }
+ public void testFilesMatchFail() {
+ testFail("assertFilesMatchFail",
diff --git a/dev-java/antunit/metadata.xml b/dev-java/antunit/metadata.xml
new file mode 100644
index 000000000000..8c6f551aec20
--- /dev/null
+++ b/dev-java/antunit/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">apache/ant-antlibs-antunit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/apache-rat-core/Manifest b/dev-java/apache-rat-core/Manifest
deleted file mode 100644
index bb5c63616d58..000000000000
--- a/dev-java/apache-rat-core/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST apache-rat-0.13-src.tar.bz2 197443 BLAKE2B 5880894bf48e62c97fefebe5672964a78016ba045ca6a13a9b100c1a15cf0a6933edc22c41cb3552f30ebea0486fd6b415f60902f0af7d96663611bfef1a1781 SHA512 564cb2b0f21c98ca5c10566417c0d2732cd177efb68607589e43bcf64eeedee7a570dbea7ef4d6237f6438ecb40d382cb96bd0d6f60c1d1ba1f76778f15ee26a
diff --git a/dev-java/apache-rat-core/apache-rat-core-0.13.ebuild b/dev-java/apache-rat-core/apache-rat-core-0.13.ebuild
deleted file mode 100644
index 5e26db26f1a7..000000000000
--- a/dev-java/apache-rat-core/apache-rat-core-0.13.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Skeleton command:
-# java-ebuilder --generate-ebuild --workdir . --pom apache-rat-core/pom.xml --download-uri https://mirrors.nav.ro/apache//creadur/apache-rat-0.13/apache-rat-0.13-src.tar.bz2 --slot 0 --keywords "~amd64 ~x86" --ebuild apache-rat-core-0.13.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.apache.rat:apache-rat-core:0.13"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="The core functionality, shared by the Ant tasks and the Maven plugin"
-HOMEPAGE="https://creadur.apache.org/rat/apache-rat-core/"
-SRC_URI="mirror://apache//creadur/apache-rat-${PV}/apache-rat-${PV}-src.tar.bz2"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-# Common dependencies
-# POM: ${PN}/pom.xml
-# commons-cli:commons-cli:1.3.1 -> >=dev-java/commons-cli-1.3.1:1
-# commons-collections:commons-collections:3.2.2 -> !!!suitble-mavenVersion-not-found!!!
-# commons-io:commons-io:2.2 -> >=dev-java/commons-io-2.8.0:1
-# commons-lang:commons-lang:2.6 -> >=dev-java/commons-lang-2.6:2.1
-# org.apache.commons:commons-compress:1.11 -> >=dev-java/commons-compress-1.20:0
-# org.apache.rat:apache-rat-api:0.13 -> >=dev-java/apache-rat-api-0.13:0
-
-CDEPEND="
- >=dev-java/commons-cli-1.3.1:1
- >=dev-java/commons-compress-1.20:0
- dev-java/commons-collections:0
- >=dev-java/commons-io-2.8.0:1
- dev-java/commons-lang:3.6
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/apache-rat-${PV}/${PN}"
-
-PATCHES=(
- "${FILESDIR}/${P}-commons-lang3.patch"
-)
-
-JAVA_GENTOO_CLASSPATH="commons-cli-1,commons-collections,commons-io-1,commons-lang-3.6,commons-compress"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS=(
- "src/main/resources"
-)
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "src/test/resources"
-)
-
-src_prepare() {
- default
- java-utils-2_src_prepare
-}
diff --git a/dev-java/apache-rat-core/files/apache-rat-core-0.13-commons-lang3.patch b/dev-java/apache-rat-core/files/apache-rat-core-0.13-commons-lang3.patch
deleted file mode 100644
index 77a90207cbcf..000000000000
--- a/dev-java/apache-rat-core/files/apache-rat-core-0.13-commons-lang3.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-diff --git a/src/main/java/org/apache/rat/Report.java b/src/main/java/org/apache/rat/Report.java
-index de4a2e7..ecb8ddf 100644
---- a/src/main/java/org/apache/rat/Report.java
-+++ b/src/main/java/org/apache/rat/Report.java
-@@ -21,7 +21,7 @@ package org.apache.rat;
- import org.apache.commons.cli.*;
- import org.apache.commons.io.FileUtils;
- import org.apache.commons.io.filefilter.*;
--import org.apache.commons.lang.StringUtils;
-+import org.apache.commons.lang3.StringUtils;
- import org.apache.rat.api.RatException;
- import org.apache.rat.report.IReportable;
- import org.apache.rat.report.RatReport;
-diff --git a/src/main/java/org/apache/rat/document/impl/guesser/GuessUtils.java b/src/main/java/org/apache/rat/document/impl/guesser/GuessUtils.java
-index d56a672..d6b7f4d 100644
---- a/src/main/java/org/apache/rat/document/impl/guesser/GuessUtils.java
-+++ b/src/main/java/org/apache/rat/document/impl/guesser/GuessUtils.java
-@@ -20,7 +20,7 @@ package org.apache.rat.document.impl.guesser;
-
- import java.util.Locale;
-
--import org.apache.commons.lang.StringUtils;
-+import org.apache.commons.lang3.StringUtils;
-
- public class GuessUtils {
-
-diff --git a/src/main/java/org/apache/rat/report/claim/impl/xml/SimpleXmlClaimReporter.java b/src/main/java/org/apache/rat/report/claim/impl/xml/SimpleXmlClaimReporter.java
-index 02e21d6..5001dff 100644
---- a/src/main/java/org/apache/rat/report/claim/impl/xml/SimpleXmlClaimReporter.java
-+++ b/src/main/java/org/apache/rat/report/claim/impl/xml/SimpleXmlClaimReporter.java
-@@ -18,7 +18,7 @@
- */
- package org.apache.rat.report.claim.impl.xml;
-
--import org.apache.commons.lang.time.DateFormatUtils;
-+import org.apache.commons.lang3.time.DateFormatUtils;
- import org.apache.rat.api.Document;
- import org.apache.rat.api.MetaData;
- import org.apache.rat.api.RatException;
diff --git a/dev-java/apache-rat-core/metadata.xml b/dev-java/apache-rat-core/metadata.xml
deleted file mode 100644
index 6ef2d50cf07e..000000000000
--- a/dev-java/apache-rat-core/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/apache-rat-tasks/Manifest b/dev-java/apache-rat-tasks/Manifest
deleted file mode 100644
index bb5c63616d58..000000000000
--- a/dev-java/apache-rat-tasks/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST apache-rat-0.13-src.tar.bz2 197443 BLAKE2B 5880894bf48e62c97fefebe5672964a78016ba045ca6a13a9b100c1a15cf0a6933edc22c41cb3552f30ebea0486fd6b415f60902f0af7d96663611bfef1a1781 SHA512 564cb2b0f21c98ca5c10566417c0d2732cd177efb68607589e43bcf64eeedee7a570dbea7ef4d6237f6438ecb40d382cb96bd0d6f60c1d1ba1f76778f15ee26a
diff --git a/dev-java/apache-rat-tasks/apache-rat-tasks-0.13.ebuild b/dev-java/apache-rat-tasks/apache-rat-tasks-0.13.ebuild
deleted file mode 100644
index cdc925c1a2f0..000000000000
--- a/dev-java/apache-rat-tasks/apache-rat-tasks-0.13.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Skeleton command:
-# java-ebuilder --generate-ebuild --workdir . --pom apache-rat-tasks/pom.xml --download-uri https://mirrors.nav.ro/apache//creadur/apache-rat-0.13/apache-rat-0.13-src.tar.bz2 --slot 0 --keywords "~amd64 ~x86" --ebuild apache-rat-tasks-0.13.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.apache.rat:apache-rat-tasks:0.13"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A plugin for Apache Ant that runs Apache Rat to audit the source"
-HOMEPAGE="https://creadur.apache.org/rat/apache-rat-tasks/"
-SRC_URI="mirror://apache//creadur/apache-rat-${PV}/apache-rat-${PV}-src.tar.bz2"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-# Common dependencies
-# POM: ${PN}/pom.xml
-# org.apache.rat:apache-rat-core:0.13 -> >=dev-java/apache-rat-core-0.13:0
-
-CDEPEND="
- dev-java/ant-core:0
- ~dev-java/apache-rat-core-${PV}:0
-"
-
-# Compile dependencies
-# POM: ${PN}/pom.xml
-# org.apache.ant:ant:1.9.12 -> !!!groupId-not-found!!!
-# POM: ${PN}/pom.xml
-# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
-# test? org.apache.ant:ant-antunit:1.4 -> !!!groupId-not-found!!!
-# test? org.apache.ant:ant-testutil:1.9.12 -> !!!groupId-not-found!!!
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- dev-java/ant-testutil:0
- )"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/apache-rat-${PV}/${PN}"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-tests.patch"
-)
-
-JAVA_GENTOO_CLASSPATH="ant-core,apache-rat-core"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS=(
- "src/main/resources"
-)
-
-JAVA_TEST_GENTOO_CLASSPATH="ant-testutil,junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "src/test/resources"
-)
-
-src_prepare() {
- default
- java-utils-2_src_prepare
-}
diff --git a/dev-java/apache-rat-tasks/files/apache-rat-tasks-0.13-fix-tests.patch b/dev-java/apache-rat-tasks/files/apache-rat-tasks-0.13-fix-tests.patch
deleted file mode 100644
index 536b68371c3a..000000000000
--- a/dev-java/apache-rat-tasks/files/apache-rat-tasks-0.13-fix-tests.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-diff --git a/src/test/resources/antunit/report-junit.xml b/src/test/resources/antunit/report-junit.xml
-index 54b0c9c..d12fee4 100644
---- a/src/test/resources/antunit/report-junit.xml
-+++ b/src/test/resources/antunit/report-junit.xml
-@@ -48,7 +48,7 @@
- <target name="all"/>
-
- <target name="testWithReportSentToFile">
-- <property name="report.file" location="${output.dir}/selftest.report"/>
-+ <property name="report.file" location="../../../../target/anttasks/selftest.report"/>
- <rat:report reportFile="${report.file}">
- <file file="${ant.file}"/>
- </rat:report>
-@@ -88,22 +88,22 @@
- <target name="testAddLicenseHeaders">
- <delete dir="${output.dir}/it-sources"/>
- <mkdir dir="${output.dir}/it-sources"/>
-- <copy file="src/test/resources/antunit/index.apt" tofile="${output.dir}/it-sources/index.apt"/>
-+ <copy file="index.apt" tofile="../../../../target/anttasks/it-sources/index.apt"/>
- <rat:report addLicenseHeaders="true">
-- <file file="${output.dir}/it-sources/index.apt"/>
-+ <file file="../../../../target/anttasks/it-sources/index.apt"/>
- </rat:report>
- </target>
-
- <target name="testISO88591">
- <rat:report format="xml">
-- <file file="src/test/resources/org/example/iso-8859-1.html"/>
-+ <file file="../../../../src/test/resources/org/example/iso-8859-1.html"/>
- </rat:report>
- </target>
-
- <target name="testISO88591WithReportFile">
-- <property name="report.file" location="${output.dir}/selftest.report"/>
-+ <property name="report.file" location="../../../../target/anttasks/selftest.report"/>
- <rat:report reportFile="${report.file}" format="xml">
-- <file file="src/test/resources/org/example/iso-8859-1.html"/>
-+ <file file="../../../../src/test/resources/org/example/iso-8859-1.html"/>
- </rat:report>
- </target>
- </project>
diff --git a/dev-java/apache-rat-tasks/metadata.xml b/dev-java/apache-rat-tasks/metadata.xml
deleted file mode 100644
index 6ef2d50cf07e..000000000000
--- a/dev-java/apache-rat-tasks/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/apache-rat/apache-rat-0.15.ebuild b/dev-java/apache-rat/apache-rat-0.15-r1.ebuild
index 278f8ba410cf..330f4023ee7a 100644
--- a/dev-java/apache-rat/apache-rat-0.15.ebuild
+++ b/dev-java/apache-rat/apache-rat-0.15-r1.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
@@ -15,7 +15,7 @@ inherit java-pkg-2 java-pkg-simple verify-sig
DESCRIPTION="Apache Rat is a release audit tool, focused on licenses"
HOMEPAGE="https://creadur.apache.org/rat/"
-SRC_URI="mirror://apache//creadur/${P}/${P}-src.tar.bz2
+SRC_URI="https://archive.apache.org/dist/creadur/${P}/${P}-src.tar.bz2
verify-sig? ( https://archive.apache.org/dist/creadur/${P}/${P}-src.tar.bz2.asc )"
S="${WORKDIR}/${P}"
@@ -24,7 +24,7 @@ SLOT="0"
KEYWORDS="amd64 x86"
CP_DEPEND="
- dev-java/ant-core:0
+ >=dev-java/ant-1.10.14:0
dev-java/commons-cli:1
dev-java/commons-collections:4
dev-java/commons-compress:0
@@ -34,7 +34,7 @@ CP_DEPEND="
DEPEND="${CP_DEPEND}
>=virtual/jdk-1.8:*
- test? ( dev-java/ant-testutil:0 )"
+ test? ( >=dev-java/ant-1.10.14:0[junit,testutil] )"
RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"
@@ -45,6 +45,11 @@ DOCS=( NOTICE README.md README.txt RELEASE-NOTES.txt RELEASE_NOTES.txt )
PATCHES=( "${FILESDIR}/apache-rat-0.15-fix-tests.patch" )
+JAVADOC_SRC_DIRS=(
+ "${PN}-core/src/main/java"
+ "${PN}-tasks/src/main/java"
+)
+
src_prepare() {
default #780585
java-pkg-2_src_prepare
@@ -68,24 +73,12 @@ src_compile() {
rm -r target || die
# javadoc is broken for java 17, see https://bugs.gentoo.org/914458
- if use doc; then
- einfo "Compiling javadocs"
- ejavadoc \
- -verbose \
- -classpath "$(java-pkg_getjars \
- --build-only ant-core)":"$(java-pkg_getjars \
- --build-only commons-cli-1)":"$(java-pkg_getjars \
- --build-only commons-collections-4)":"$(java-pkg_getjars \
- --build-only commons-compress):$(java-pkg_getjars \
- --build-only commons-io-1):$(java-pkg_getjars \
- --build-only commons-lang-3.6)" \
- -sourcepath "${PN}-core/src/main/java:${PN}-tasks/src/main/java" \
- -d javadoc -subpackages org.apache.rat org.apache.rat.anttasks
- fi
+ JAVADOC_CLASSPATH="${JAVA_GENTOO_CLASSPATH}"
+ use doc && ejavadoc
}
src_test() {
- JAVA_TEST_GENTOO_CLASSPATH="ant-testutil,junit-4"
+ JAVA_TEST_GENTOO_CLASSPATH="ant,junit-4"
einfo "Testing apache-rat-core"
cp -r "${PN}"-core/src/{main,test} src || die
@@ -107,7 +100,7 @@ src_install() {
java-pkg_dojar "${PN}-tasks.jar"
java-pkg_dolauncher "${PN}" --main org.apache.rat.Report
- use doc && java-pkg_dojavadoc javadoc
+ use doc && java-pkg_dojavadoc target/api
if use source; then
java-pkg_dosrc "${PN}-core/src/main/java/*"
diff --git a/dev-java/aspectj/aspectj-1.9.7.ebuild b/dev-java/aspectj/aspectj-1.9.7-r1.ebuild
index 4f7ef2231ed2..e3b7c408c182 100644
--- a/dev-java/aspectj/aspectj-1.9.7.ebuild
+++ b/dev-java/aspectj/aspectj-1.9.7-r1.ebuild
@@ -1,14 +1,14 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="A seamless aspect-oriented extension to the Java programming language"
HOMEPAGE="https://eclipse.org/aspectj/"
-SRC_URI="https://github.com/eclipse/org.aspectj/archive/refs/tags/V${PV//./_}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/eclipse-aspectj/aspectj/archive/V${PV//./_}.tar.gz -> ${P}.tar.gz"
LICENSE="EPL-1.0"
SLOT="0"
@@ -16,7 +16,7 @@ KEYWORDS="amd64 x86"
CDEPEND="dev-java/asm:9
dev-java/commons-logging:0
- dev-java/ant-apache-regexp:0"
+ dev-java/jakarta-regexp:1.4"
DEPEND="${CDEPEND}
>=virtual/jdk-1.8:*"
RDEPEND="${CDEPEND}
@@ -26,7 +26,7 @@ BDEPEND="app-arch/zip"
S=${WORKDIR}/org.${P//./_}
JAVA_GENTOO_CLASSPATH_EXTRA="aspectjweaver.jar"
-JAVA_GENTOO_CLASSPATH="commons-logging,asm-9,ant-apache-regexp"
+JAVA_GENTOO_CLASSPATH="commons-logging,asm-9,jakarta-regexp-1.4"
JAVA_ENCODING="iso8859-1"
src_compile() {
diff --git a/dev-java/aspectj/metadata.xml b/dev-java/aspectj/metadata.xml
index 5c762e7860f2..32a6a916de1c 100644
--- a/dev-java/aspectj/metadata.xml
+++ b/dev-java/aspectj/metadata.xml
@@ -6,7 +6,7 @@
<name>Java</name>
</maintainer>
<upstream>
- <remote-id type="github">eclipse/org.aspectj</remote-id>
- <bugs-to>https://www.eclipse.org/aspectj/bugs.php</bugs-to>
+ <bugs-to>https://github.com/eclipse-aspectj/aspectj/issues</bugs-to>
+ <remote-id type="github">eclipse-aspectj/aspectj</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/auto-service-annotations/Manifest b/dev-java/auto-service-annotations/Manifest
new file mode 100644
index 000000000000..2ef345ae2602
--- /dev/null
+++ b/dev-java/auto-service-annotations/Manifest
@@ -0,0 +1 @@
+DIST auto-service-1.1.1.tar.gz 422101 BLAKE2B 9050607917f6637e77d234074787662b32f0e245a8e61b233cb664834e50ad41523bf89869e7e7b44a9e77db22c99481dce6b7c8051934b4e159fab37f060b36 SHA512 4e18c422103d6857724d5fcb28fc2f12cdaeacd7a47ebdc1982e9cd2e9d83a90e571c5e14332e3fcaac3a9e1ecf947f0e9e89a87c0c3bb1dc2e401b1a76ca044
diff --git a/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild b/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild
new file mode 100644
index 000000000000..0ae78daf656a
--- /dev/null
+++ b/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild
@@ -0,0 +1,24 @@
+# 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="com.google.auto.service:auto-service-annotations:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Provider-configuration files for ServiceLoader"
+HOMEPAGE="https://github.com/google/auto/"
+SRC_URI="https://github.com/google/auto/archive/auto-service-${PV}.tar.gz"
+S="${WORKDIR}/auto-auto-service-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.auto.service"
+JAVA_SRC_DIR="service/annotations/src/main/java"
diff --git a/dev-java/ant-apache-bsf/metadata.xml b/dev-java/auto-service-annotations/metadata.xml
index 4221e170cbc0..5b0a6ef06e06 100644
--- a/dev-java/ant-apache-bsf/metadata.xml
+++ b/dev-java/auto-service-annotations/metadata.xml
@@ -3,6 +3,8 @@
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
- <name>Java</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">google/auto</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/batik/batik-1.17.ebuild b/dev-java/batik/batik-1.17-r1.ebuild
index e86745d88df5..b389f8994bd7 100644
--- a/dev-java/batik/batik-1.17.ebuild
+++ b/dev-java/batik/batik-1.17-r1.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
@@ -229,7 +229,7 @@ src_install() {
_EOF_
java-pkg_register-environment-variable \
gjl_java_args \
- "-Djava.security.policy=file:${EPREFIX}${java_policy_file}"
+ "\$gjl_java_args -Djava.security.policy=file:${EPREFIX}${java_policy_file}"
if use doc; then
java-pkg_dojavadoc target/api
diff --git a/dev-java/bcmail/Manifest b/dev-java/bcmail/Manifest
index 880e2012db6f..680d64e45a8b 100644
--- a/dev-java/bcmail/Manifest
+++ b/dev-java/bcmail/Manifest
@@ -1 +1 @@
-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.76.ebuild b/dev-java/bcmail/bcmail-1.77-r1.ebuild
index 478e8647dbd2..fc5a0ce57369 100644
--- a/dev-java/bcmail/bcmail-1.76.ebuild
+++ b/dev-java/bcmail/bcmail-1.77-r1.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 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:1.76"
+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"
-SRC_URI="https://github.com/bcgit/bc-java/archive/r${PV/./rv}.tar.gz -> bc-java-r${PV/./rv}.tar.gz"
+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"
@@ -21,10 +23,10 @@ CP_DEPEND="
~dev-java/bcpkix-${PV}:0
~dev-java/bcprov-${PV}:0
~dev-java/bcutil-${PV}:0
- dev-java/jakarta-activation:1
dev-java/javax-mail:0
"
DEPEND="${CP_DEPEND}
+ dev-java/jakarta-activation:1
>=virtual/jdk-11:*"
RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"
@@ -32,9 +34,8 @@ RDEPEND="${CP_DEPEND}
DOCS=( ../{README,SECURITY}.md )
HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
-S="${WORKDIR}/bc-java-r${PV/./rv}/mail"
-
JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.mail"
+JAVA_CLASSPATH_EXTRA="jakarta-activation-1"
JAVA_RESOURCE_DIRS="src/main/resources"
JAVA_SRC_DIR=(
"src/main/java"
@@ -47,7 +48,7 @@ JAVA_TEST_RUN_ONLY="org.bouncycastle.mail.smime.test.AllTests"
JAVA_TEST_SRC_DIR="src/test/java"
src_prepare() {
- default
+ java-pkg-2_src_prepare
java-pkg_clean ..
}
diff --git a/dev-java/bcpg/Manifest b/dev-java/bcpg/Manifest
index 880e2012db6f..680d64e45a8b 100644
--- a/dev-java/bcpg/Manifest
+++ b/dev-java/bcpg/Manifest
@@ -1 +1 @@
-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.76.ebuild b/dev-java/bcpg/bcpg-1.77.ebuild
index 343650de4d43..cc3e0343f4be 100644
--- a/dev-java/bcpg/bcpg-1.76.ebuild
+++ b/dev-java/bcpg/bcpg-1.77.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 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:1.76"
+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"
-SRC_URI="https://github.com/bcgit/bc-java/archive/r${PV/./rv}.tar.gz -> bc-java-r${PV/./rv}.tar.gz"
+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"
@@ -26,8 +28,6 @@ RDEPEND="${CP_DEPEND}
DOCS=( ../{README,SECURITY}.md )
HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
-S="${WORKDIR}/bc-java-r${PV/./rv}/pg"
-
JAVA_SRC_DIR=(
"src/main/java"
"src/main/jdk1.9"
@@ -39,7 +39,7 @@ JAVA_TEST_RESOURCE_DIRS="src/test/resources"
JAVA_TEST_SRC_DIR="src/test/java"
src_prepare() {
- default
+ java-pkg-2_src_prepare
java-pkg_clean ..
}
diff --git a/dev-java/bcpkix/Manifest b/dev-java/bcpkix/Manifest
index b8411158075e..34f73ef00305 100644
--- a/dev-java/bcpkix/Manifest
+++ b/dev-java/bcpkix/Manifest
@@ -1,2 +1,2 @@
-DIST bc-java-r1rv76.tar.gz 31256952 BLAKE2B b791ef3da7189bc6990935aaad7c331c1bf6a45af0cdfc72056ae0cf1723e57ce15a76060251f6de630b0729ffe22ba4718255c103a8ab66db61f2e46f1201c8 SHA512 7d408821408bbabd209d9507b061f3113822878c12b12a040c829f5a8c6bdf8450719aef60c423025824bec1fcb6c63d8478d1f84f3cb1d692fdbacde6d9ce6e
-DIST bc-test-data-r1rv76.tar.gz 2074813467 BLAKE2B 3d1bd122a907e4c46f3c8b84c4d27b3327b6c6deaded623e5bc9842d00c62bdeb521b1be3bdd495ffa10f2d1facc73d41176829eda4511827d24eb0f62fccef9 SHA512 3de068667ce9572530fa6422bdbc4455d7f1edd85e12166e7a266a447ed0ffab50c33cc5a99e668caf79156f87d86512a5507534469d3e6f479b908d4d2a1fb7
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
+DIST bc-test-data-r1rv77.tar.gz 2074825965 BLAKE2B b797821719ba0dcdd091e0fd4f14c79058a15702973978a055bcc998ff541a8c5e96feb757647a9696e4bbfa28bf80a317066a51fd4daac7b2508111d0d217b1 SHA512 c8701a270ddcfde353b480caa62e2237776b50b0937ac015ee3e5221a74d0817de9bc67f1fa9f53f5e48d861dbf94339cb45a08cb4dad37f1340f754cb1d910e
diff --git a/dev-java/bcpkix/bcpkix-1.76.ebuild b/dev-java/bcpkix/bcpkix-1.77.ebuild
index f81d320078e6..c4e5b0c09115 100644
--- a/dev-java/bcpkix/bcpkix-1.76.ebuild
+++ b/dev-java/bcpkix/bcpkix-1.77.ebuild
@@ -1,18 +1,20 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 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:1.76"
+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"
-SRC_URI="https://github.com/bcgit/bc-java/archive/r${PV/./rv}.tar.gz -> bc-java-r${PV/./rv}.tar.gz
- test? ( https://github.com/bcgit/bc-test-data/archive/r${PV/./rv}.tar.gz -> bc-test-data-r${PV/./rv}.tar.gz )"
+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"
@@ -35,8 +37,6 @@ RDEPEND="${CDEPEND}
DOCS=( ../{README,SECURITY}.md )
HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
-S="${WORKDIR}/bc-java-r${PV/./rv}/pkix"
-
JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.pkix"
JAVA_GENTOO_CLASSPATH="bcprov,bcutil"
JAVA_SRC_DIR=(
@@ -70,8 +70,8 @@ pkg_setup() {
}
src_unpack() {
- unpack bc-java-r${PV/./rv}.tar.gz
- use test && unpack bc-test-data-r${PV/./rv}.tar.gz
+ unpack bc-java-${MY_PV}.tar.gz
+ use test && unpack bc-test-data-${MY_PV}.tar.gz
}
src_prepare() {
@@ -81,7 +81,7 @@ src_prepare() {
# https://bugs.gentoo.org/823347
src_test() {
- mv ../../bc-test-data-r${PV/./rv} bc-test-data || die "cannot move bc-test-data"
+ 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
diff --git a/dev-java/bcprov/Manifest b/dev-java/bcprov/Manifest
index def9e26aa563..a9a299b3af1d 100644
--- a/dev-java/bcprov/Manifest
+++ b/dev-java/bcprov/Manifest
@@ -1,4 +1,4 @@
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.76.ebuild b/dev-java/bcprov/bcprov-1.77.ebuild
index 765e01e1dfd4..9e17d73d8035 100644
--- a/dev-java/bcprov/bcprov-1.76.ebuild
+++ b/dev-java/bcprov/bcprov-1.77.ebuild
@@ -1,18 +1,20 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 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:1.76"
+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"
-SRC_URI="https://github.com/bcgit/bc-java/archive/r${PV/./rv}.tar.gz -> bc-java-r${PV/./rv}.tar.gz
- test? ( https://github.com/bcgit/bc-test-data/archive/r${PV/./rv}.tar.gz -> bc-test-data-r${PV/./rv}.tar.gz )"
+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"
@@ -25,8 +27,6 @@ BDEPEND="app-arch/zip"
DOCS=( {README,SECURITY}.md )
HTML_DOCS=( {CONTRIBUTORS,index}.html )
-S="${WORKDIR}/bc-java-r${PV/./rv}"
-
check_env() {
if use test; then
# this is needed only for tests
@@ -45,8 +45,8 @@ pkg_setup() {
}
src_unpack() {
- unpack bc-java-r${PV/./rv}.tar.gz
- use test && unpack bc-test-data-r${PV/./rv}.tar.gz
+ unpack bc-java-${MY_PV}.tar.gz
+ use test && unpack bc-test-data-${MY_PV}.tar.gz
}
src_prepare() {
@@ -69,7 +69,7 @@ src_compile() {
}
src_test() {
- mv ../bc-test-data-r${PV/./rv} bc-test-data || die "cannot move bc-test-data"
+ 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}"
diff --git a/dev-java/bcutil/Manifest b/dev-java/bcutil/Manifest
index 880e2012db6f..680d64e45a8b 100644
--- a/dev-java/bcutil/Manifest
+++ b/dev-java/bcutil/Manifest
@@ -1 +1 @@
-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.76.ebuild b/dev-java/bcutil/bcutil-1.77.ebuild
index 27836258fffc..03c870ae5331 100644
--- a/dev-java/bcutil/bcutil-1.76.ebuild
+++ b/dev-java/bcutil/bcutil-1.77.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 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:1.76"
+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"
-SRC_URI="https://github.com/bcgit/bc-java/archive/r${PV/./rv}.tar.gz -> bc-java-r${PV/./rv}.tar.gz"
+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"
@@ -26,8 +28,6 @@ RDEPEND="${CDEPEND}
DOCS=( ../{README,SECURITY}.md )
HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
-S="${WORKDIR}/bc-java-r${PV/./rv}/util"
-
JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.util"
JAVA_GENTOO_CLASSPATH="bcprov"
JAVA_SRC_DIR=(
@@ -36,16 +36,15 @@ JAVA_SRC_DIR=(
)
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
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() {
- default
+ java-pkg-2_src_prepare
java-pkg_clean ..
}
diff --git a/dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild b/dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild
index 0c3d2aee53e1..a66b70291b68 100644
--- a/dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild
+++ b/dev-java/bnd-annotation/bnd-annotation-7.0.0.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
@@ -15,7 +15,7 @@ S="${WORKDIR}/bnd-${PV}"
LICENSE="Apache-2.0 EPL-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND="
dev-java/osgi-cmpn:8
diff --git a/dev-java/bnd-ant/Manifest b/dev-java/bnd-ant/Manifest
new file mode 100644
index 000000000000..a890570b45c8
--- /dev/null
+++ b/dev-java/bnd-ant/Manifest
@@ -0,0 +1 @@
+DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
diff --git a/dev-java/bnd-ant/bnd-ant-7.0.0.ebuild b/dev-java/bnd-ant/bnd-ant-7.0.0.ebuild
new file mode 100644
index 000000000000..0627d8d73189
--- /dev/null
+++ b/dev-java/bnd-ant/bnd-ant-7.0.0.ebuild
@@ -0,0 +1,46 @@
+# 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="biz.aQute.bnd:biz.aQute.bnd.ant:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Bnd Ant Tasks"
+HOMEPAGE="https://bnd.bndtools.org/"
+SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.tar.gz -> aQute.bnd-${PV}.tar.gz"
+S="${WORKDIR}/bnd-${PV}"
+
+LICENSE="Apache-2.0 EPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64"
+
+DEPEND="
+ dev-java/ant:0
+ ~dev-java/bnd-${PV}:0
+ >=virtual/jdk-17:*"
+RDEPEND=">=virtual/jre-17:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="biz.aQute.bnd.ant"
+JAVA_CLASSPATH_EXTRA="
+ ant
+ bnd
+"
+
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR="biz.aQute.bnd.ant/src"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ mkdir res || die
+
+ # java-pkg-simple wants resources in JAVA_RESOURCE_DIRS
+ pushd biz.aQute.bnd.ant/src > /dev/null || die
+ find -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t ../../res || die
+ popd > /dev/null || die
+}
diff --git a/dev-java/ant-apache-log4j/metadata.xml b/dev-java/bnd-ant/metadata.xml
index 4221e170cbc0..cb6317e530db 100644
--- a/dev-java/ant-apache-log4j/metadata.xml
+++ b/dev-java/bnd-ant/metadata.xml
@@ -3,6 +3,8 @@
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
- <name>Java</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">bndtools/bnd</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/bnd-junit/Manifest b/dev-java/bnd-junit/Manifest
deleted file mode 100644
index 068af0665527..000000000000
--- a/dev-java/bnd-junit/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bndlib-2.1.0.tar.gz 123217291 BLAKE2B ab8e6876b13db538746f77aa1fe7800e5a3b5e539e1980da78f69c64344f4964bf0a21f2329f7684b055d0de39a10c8df36e030922e9933b29fccb9a35aa669a SHA512 6965143ced45c15fc2316716de32e80506cc411d52309b24313fff37e0713a45ad200d5b3701f0d47a131a3163ec266ed8acb4544884cd1c59c9716c7a2b285e
diff --git a/dev-java/bnd-junit/bnd-junit-2.1.0-r2.ebuild b/dev-java/bnd-junit/bnd-junit-2.1.0-r2.ebuild
deleted file mode 100644
index 3c659d744e29..000000000000
--- a/dev-java/bnd-junit/bnd-junit-2.1.0-r2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Junit plugin for bndlib, a swiss army knife for OSGi"
-HOMEPAGE="http://www.aqute.biz/Bnd/Bnd"
-SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.REL.tar.gz -> bndlib-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="
- dev-java/osgi-core-api:0
- dev-java/bndlib:0"
-
-DEPEND="
- ${CDEPEND}
- virtual/jdk:1.8
- test? ( dev-java/junit:4 )"
-
-RDEPEND="
- ${CDEPEND}
- virtual/jre:1.8"
-
-S="${WORKDIR}/bnd-${PV}.REL/biz.aQute.junit"
-
-EANT_BUILD_TARGET="build"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="bndlib,junit-4,osgi-core-api"
-
-# Tests appear broken and cause a circular dependency.
-RESTRICT="test"
-
-src_prepare() {
- default
- java-pkg_clean
- cp ../cnf/build.xml . || die
-}
-
-src_install() {
- java-pkg_newjar generated/biz.aQute.junit.jar
-}
diff --git a/dev-java/bnd-junit/metadata.xml b/dev-java/bnd-junit/metadata.xml
deleted file mode 100644
index 94feb65b0b18..000000000000
--- a/dev-java/bnd-junit/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">bndtools/bnd</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/bnd-util/bnd-util-7.0.0.ebuild b/dev-java/bnd-util/bnd-util-7.0.0.ebuild
index 73c6251737e2..686d1ca62757 100644
--- a/dev-java/bnd-util/bnd-util-7.0.0.ebuild
+++ b/dev-java/bnd-util/bnd-util-7.0.0.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
@@ -15,7 +15,7 @@ S="${WORKDIR}/bnd-${PV}"
LICENSE="Apache-2.0 EPL-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CP_DEPEND="dev-java/osgi-annotation:0"
diff --git a/dev-java/bnd/Manifest b/dev-java/bnd/Manifest
new file mode 100644
index 000000000000..a890570b45c8
--- /dev/null
+++ b/dev-java/bnd/Manifest
@@ -0,0 +1 @@
+DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
diff --git a/dev-java/bnd/bnd-7.0.0.ebuild b/dev-java/bnd/bnd-7.0.0.ebuild
new file mode 100644
index 000000000000..fd077cefc878
--- /dev/null
+++ b/dev-java/bnd/bnd-7.0.0.ebuild
@@ -0,0 +1,100 @@
+# 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="biz.aQute.bnd:biz.aQute.bnd:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="bndlib: A Swiss Army Knife for OSGi"
+HOMEPAGE="https://bnd.bndtools.org/"
+SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.tar.gz -> aQute.bnd-${PV}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0 EPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64"
+
+BDEPEND="app-arch/zip"
+
+CP_DEPEND="
+ ~dev-java/bndlib-${PV}:0
+ dev-java/felix-resolver:0
+ dev-java/guava:0
+ dev-java/javaparser-core:0
+ dev-java/jline:2
+ dev-java/jtwig-core:0
+ dev-java/osgi-annotation:0
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ dev-java/slf4j-simple:0
+ dev-java/snakeyaml:0
+ dev-java/xz-java:0
+"
+
+DEPEND="${CP_DEPEND}
+ dev-java/commons-lang:3.6
+ dev-java/eclipse-jdt-annotation:0
+ dev-java/felix-gogo-runtime:0
+ dev-java/slf4j-api:0
+ dev-java/jtwig-reflection:0
+ dev-java/osgi-service-log:0
+ dev-java/osgi-service-subsystem:0
+ >=virtual/jdk-17:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-17:*"
+
+PATCHES=(
+ "${FILESDIR}/bnd-7.0.0-aQute.bnd.main.bnd.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="biz.aQute.bnd"
+JAVA_CLASSPATH_EXTRA="
+ commons-lang-3.6
+ eclipse-jdt-annotation
+ jtwig-reflection
+ felix-gogo-runtime
+ osgi-service-subsystem
+ slf4j-api
+"
+JAVA_MAIN_CLASS="aQute.bnd.main.bnd"
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR=(
+ "biz.aQute.bnd.exporters/src"
+ "biz.aQute.bnd.reporter/src"
+ "biz.aQute.bnd/src"
+ "biz.aQute.remote/src"
+ "biz.aQute.repository/src"
+ "biz.aQute.resolve/src"
+)
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ mkdir res || die
+
+ # java-pkg-simple wants resources in JAVA_RESOURCE_DIRS
+ pushd biz.aQute.bnd/src > /dev/null || die
+ find -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t ../../res || die
+ popd > /dev/null || die
+}
+
+src_compile() {
+ # There is another version of osgi-service-log in osgi-core-0
+ JAVA_GENTOO_CLASSPATH_EXTRA=":$(java-pkg_getjars --build-only osgi-service-log)"
+ java-pkg-simple_src_compile
+
+ # remove classes which are not in upstream's jar file
+ zip -d ${PN}.jar \
+ "*/remote/agent/*" \
+ "*/remote/embedded/*" \
+ "*/remote/main/*" \
+ "*/remote/plugin/*" \
+ "*/remote/test/*" \
+ || die
+}
diff --git a/dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch b/dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch
new file mode 100644
index 000000000000..6d37cbc9f7d6
--- /dev/null
+++ b/dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch
@@ -0,0 +1,21 @@
+Upstream uses an older version of slf4j-simple
+--- a/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
++++ b/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
+@@ -486,14 +486,14 @@ public class bnd extends Processor {
+ System.setProperty(DEFAULT_LOG_LEVEL_KEY, "warn");
+ level = org.slf4j.spi.LocationAwareLogger.WARN_INT;
+ }
+- Field field = org.slf4j.impl.SimpleLogger.class.getDeclaredField("CONFIG_PARAMS");
++ Field field = org.slf4j.simple.SimpleLogger.class.getDeclaredField("CONFIG_PARAMS");
+ field.setAccessible(true);
+ Object CONFIG_PARAMS = field.get(null);
+- field = org.slf4j.impl.SimpleLoggerConfiguration.class.getDeclaredField("defaultLogLevel");
++ field = org.slf4j.simple.SimpleLoggerConfiguration.class.getDeclaredField("defaultLogLevel");
+ field.setAccessible(true);
+ field.set(CONFIG_PARAMS, level);
+
+- field = org.slf4j.impl.SimpleLogger.class.getDeclaredField("currentLogLevel");
++ field = org.slf4j.simple.SimpleLogger.class.getDeclaredField("currentLogLevel");
+ field.setAccessible(true);
+ field.set(logger, level);
+ } catch (Exception e) {
diff --git a/dev-java/bnd/metadata.xml b/dev-java/bnd/metadata.xml
new file mode 100644
index 000000000000..cb6317e530db
--- /dev/null
+++ b/dev-java/bnd/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">bndtools/bnd</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/bndlib/Manifest b/dev-java/bndlib/Manifest
index 8f4c666567aa..a890570b45c8 100644
--- a/dev-java/bndlib/Manifest
+++ b/dev-java/bndlib/Manifest
@@ -1,2 +1 @@
DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
-DIST bndlib-2.1.0.tar.gz 123217291 BLAKE2B ab8e6876b13db538746f77aa1fe7800e5a3b5e539e1980da78f69c64344f4964bf0a21f2329f7684b055d0de39a10c8df36e030922e9933b29fccb9a35aa669a SHA512 6965143ced45c15fc2316716de32e80506cc411d52309b24313fff37e0713a45ad200d5b3701f0d47a131a3163ec266ed8acb4544884cd1c59c9716c7a2b285e
diff --git a/dev-java/bndlib/bndlib-2.1.0-r1.ebuild b/dev-java/bndlib/bndlib-2.1.0-r1.ebuild
deleted file mode 100644
index f78e091b0744..000000000000
--- a/dev-java/bndlib/bndlib-2.1.0-r1.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A swiss army knife for OSGi"
-HOMEPAGE="https://bnd.bndtools.org/"
-SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.REL.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-CDEPEND="dev-java/libg:0
- dev-java/osgi-compendium:0
- dev-java/osgi-core-api:0
- dev-java/osgi-enterprise-api:0"
-
-# Tests appear broken and cause a circular dependency.
-# test? ( dev-java/bnd-junit:0 )
-DEPEND="virtual/jdk:1.8
- ${CDEPEND}
- test? ( dev-java/junit:4 )"
-
-RDEPEND="virtual/jre:1.8
- ${CDEPEND}"
-
-S="${WORKDIR}/bnd-${PV}.REL/biz.aQute.${PN}"
-
-EANT_BUILD_TARGET="build"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-# Tests appear broken and cause a circular dependency.
-RESTRICT="test"
-
-src_prepare() {
- default
- # Move the correct build.xml into place, needed for testing.
- cp ../cnf/build.xml . || die
-
- # Remove bundled jar files.
- find . -name '*.jar' -delete > /dev/null
-
- if ! use test ; then
- rm -rf src/aQute/bnd/test || die "Failed to remove tests."
- fi
-}
-
-src_compile() {
- local extra_cp=""
-
- if use test ; then
- extra_cp=":$(java-pkg_getjars --build-only junit-4)"
- fi
-
- EANT_EXTRA_ARGS="-Dgentoo.classpath=$(java-pkg_getjars libg):$(java-pkg_getjars osgi-compendium):$(java-pkg_getjars osgi-core-api):$(java-pkg_getjars osgi-enterprise-api)${extra_cp}" \
- java-pkg-2_src_compile
-}
-
-EANT_TEST_GENTOO_CLASSPATH="junit-4,bnd-junit"
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar generated/biz.aQute.${PN}.jar
-}
diff --git a/dev-java/bndlib/bndlib-7.0.0.ebuild b/dev-java/bndlib/bndlib-7.0.0.ebuild
index 5eedfb83dd3e..4a6bee66518d 100644
--- a/dev-java/bndlib/bndlib-7.0.0.ebuild
+++ b/dev-java/bndlib/bndlib-7.0.0.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
@@ -15,7 +15,7 @@ S="${WORKDIR}/bnd-${PV}"
LICENSE="Apache-2.0 EPL-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CP_DEPEND="
~dev-java/bnd-annotation-${PV}:0
diff --git a/dev-java/bsf/Manifest b/dev-java/bsf/Manifest
index aeacf27f9b5a..4add2dfdfd39 100644
--- a/dev-java/bsf/Manifest
+++ b/dev-java/bsf/Manifest
@@ -1 +1,2 @@
DIST bsf-src-2.4.0.tar.gz 299749 BLAKE2B 41f3cfe77b1ccf6b78493df7f5f288b397234b3236977c4b7d2e6c85b330e40319474419f560eefa1632da4d0524593b8c3e0c66cd27b852749b1405c20df5a6 SHA512 a1e7564fd14abbf725fee75c4b0ba5f92d7eada0e242ad05897753bb4afe639d859c42cae1d684e8dd9151409d4cc68e1a422a70bc74d8016144cc30d03a2d43
+DIST bsf-src-2.4.0.tar.gz.asc 191 BLAKE2B c4d17ee6df06aa2da70b9e733cb9890cef2f0f22124d8699400494496c4045851feb006e53ee4f4d09e926d982afd4057c08caf791fd4ea8a8bef5f576d6d8a1 SHA512 b82d1f9e6cd6bc3b3228ceb8f5f0679e8dd95c2200328accafa0ee9fd4b4065367e071d0fa718ecdc34e11c6b14456a671d4e8e74d2b56dea4e8fc3db73c4392
diff --git a/dev-java/bsf/bsf-2.4.0-r3.ebuild b/dev-java/bsf/bsf-2.4.0-r3.ebuild
deleted file mode 100644
index ce4e977848a5..000000000000
--- a/dev-java/bsf/bsf-2.4.0-r3.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Bean Script Framework"
-HOMEPAGE="https://commons.apache.org/proper/commons-bsf/"
-SRC_URI="mirror://apache/commons/bsf/source/${PN}-src-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2.3"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-# If you add new ones, add them to ant-apache-bsf too for use dependencies
-IUSE="javascript python tcl"
-
-CDEPEND="
- python? (
- dev-java/jython:2.7
- )
- javascript? (
- dev-java/rhino:1.6
- )
- tcl? (
- dev-java/jacl:0
- )
- dev-java/xalan:0
- dev-java/commons-logging:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-src_prepare() {
- default
- rm -v lib/*.jar || die
- rm samples/*/*.class || die
-
- java-ant_ignore-system-classes
-
- # somebody forgot to add them to source tarball... fetched from svn
- cp "${FILESDIR}/${P}-build-properties.xml" build-properties.xml || die
-
- # Silence javadoc.
- java-ant_xml-rewrite -f build.xml -c \
- -e javadoc \
- -a failonerror \
- -v no
-
- # http://bugs.jython.org/issue1814
- # Also, bsf is an old project (2011) and hasn't officially taken the leap to
- # jython-2.7. This patch fixes the issue.
- eapply "${FILESDIR}"/${P}-PyJavaInstance.patch
-}
-
-src_compile() {
- local pkgs="commons-logging,xalan"
- local antflags="-Dxalan.present=true"
-
- if use python; then
- antflags="${antflags} -Djython.present=true"
- pkgs="${pkgs},jython-2.7"
- fi
- if use javascript; then
- antflags="${antflags} -Drhino.present=true"
- pkgs="${pkgs},rhino-1.6"
- fi
- if use tcl; then
- antflags="${antflags} -Djacl.present=true"
- pkgs="${pkgs},jacl"
- fi
-
- local cp="$(java-pkg_getjars ${pkgs})"
- eant -Dgentoo.classpath="${cp}" ${antflags} jar
-
- # stupid clean
- mv build/lib/${PN}.jar "${S}" || die
- use doc && eant -Dgentoo.classpath="${cp}" ${antflags} javadocs
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-
- java-pkg_dolauncher ${PN} --main org.apache.bsf.Main
-
- dodoc CHANGES.txt NOTICE.txt README.txt RELEASE-NOTE.txt TODO.txt
-
- use doc && java-pkg_dojavadoc build/javadocs
- use examples && java-pkg_doexamples samples
- use source && java-pkg_dosrc src/org
-
- java-pkg_register-optional-dependency bsh,groovy-1,jruby
-}
-
-pkg_postinst() {
- elog "Support for python, javascript, and tcl is controlled via USE flags."
- elog "Also, following languages can be supported just by installing"
- elog "respective package with USE=\"bsf\": BeanShell (dev-java/bsh),"
- elog "Groovy (dev-java/groovy) and JRuby (dev-java/jruby)"
-}
diff --git a/dev-java/bsf/bsf-2.4.0-r5.ebuild b/dev-java/bsf/bsf-2.4.0-r5.ebuild
new file mode 100644
index 000000000000..b3abd4a8391e
--- /dev/null
+++ b/dev-java/bsf/bsf-2.4.0-r5.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Bean Script Framework"
+HOMEPAGE="https://commons.apache.org/proper/commons-bsf/"
+SRC_URI="mirror://apache/commons/bsf/source/bsf-src-${PV}.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/bsf/source/bsf-src-${PV}.tar.gz.asc )"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="2.3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# If you add new ones, add them to ant-apache-bsf too for use dependencies
+IUSE="javascript tcl"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+CDEPEND="
+ dev-java/commons-logging:0
+ dev-java/xalan:0
+ javascript? ( dev-java/rhino:1.6 )
+ tcl? ( dev-java/jacl:0 )
+"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( CHANGES.txt NOTICE.txt README.txt RELEASE-NOTE.txt TODO.txt )
+
+JAVA_GENTOO_CLASSPATH="
+ commons-logging
+ xalan
+"
+JAVA_MAIN_CLASS="org.apache.bsf.Main"
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ rm -r src/org/apache/bsf/engines/{java,javaclass,jython,netrexx} || die
+ if use javascript; then
+ JAVA_GENTOO_CLASSPATH+=" rhino-1.6"
+ else
+ rm -r src/org/apache/bsf/engines/javascript || die
+ fi
+ if use tcl; then
+ JAVA_GENTOO_CLASSPATH+=" jacl"
+ else
+ rm -r src/org/apache/bsf/engines/jacl || die
+ fi
+ # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
+ mkdir res || die "create res"
+ pushd src > /dev/null || die "pushd"
+ find -type f -name '*.properties' \
+ | xargs cp --parent -t ../res || die "copy resources"
+ popd > /dev/null
+}
+
+src_install() {
+ java-pkg-simple_src_install
+# java-pkg_register-optional-dependency bsh,groovy-1,jruby
+}
+
+pkg_postinst() {
+ elog "Support for javascript and tcl is controlled via USE flags."
+ elog "Also, following languages can be supported just by installing"
+ elog "respective package with USE=\"bsf\": BeanShell (dev-java/bsh),"
+ elog "Groovy (dev-java/groovy) and JRuby (dev-java/jruby)"
+}
diff --git a/dev-java/bsf/files/bsf-2.4.0-PyJavaInstance.patch b/dev-java/bsf/files/bsf-2.4.0-PyJavaInstance.patch
deleted file mode 100644
index 4e8c4de7b015..000000000000
--- a/dev-java/bsf/files/bsf-2.4.0-PyJavaInstance.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- a/src/org/apache/bsf/engines/jython/JythonEngine.java.orig 2015-07-04 08:00:17.120000000 +0000
-+++ b/src/org/apache/bsf/engines/jython/JythonEngine.java 2015-07-04 08:04:55.230000000 +0000
-@@ -26,7 +26,7 @@
- import org.apache.bsf.util.BSFFunctions;
- import org.python.core.Py;
- import org.python.core.PyException;
--import org.python.core.PyJavaInstance;
-+import org.python.core.PyJavaType;
- import org.python.core.PyObject;
- import org.python.util.InteractiveInterpreter;
-
-@@ -110,8 +110,9 @@
-
- Object result = interp.eval ("bsf_temp_fn()");
-
-- if (result != null && result instanceof PyJavaInstance)
-- result = ((PyJavaInstance)result).__tojava__(Object.class);
-+ if (result != null && result instanceof PyJavaType)
-+ //result = ((PyJavaInstance)result).__tojava__(Object.class);
-+ result = PyJavaType.wrapJavaObject(result).__tojava__(Object.class);
- return result;
- } catch (PyException e) {
- throw new BSFException (BSFException.REASON_EXECUTION_ERROR,
-@@ -126,8 +127,9 @@
- Object script) throws BSFException {
- try {
- Object result = interp.eval (byteify(script.toString ()));
-- if (result != null && result instanceof PyJavaInstance)
-- result = ((PyJavaInstance)result).__tojava__(Object.class);
-+ if (result != null && result instanceof PyJavaType)
-+ //result = ((PyJavaInstance)result).__tojava__(Object.class);
-+ result = PyJavaType.wrapJavaObject(result).__tojava__(Object.class);
- return result;
- } catch (PyException e) {
- throw new BSFException (BSFException.REASON_EXECUTION_ERROR,
diff --git a/dev-java/bsf/files/bsf-2.4.0-build-properties.xml b/dev-java/bsf/files/bsf-2.4.0-build-properties.xml
deleted file mode 100644
index 6d716ed00563..000000000000
--- a/dev-java/bsf/files/bsf-2.4.0-build-properties.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<project name="props">
- <property name="project.name" value="bsf"/>
- <property name="project.fullName" value="Bean Scripting Framework"/>
- <property name="project.version" value="2.4.0"/>
- <property name="project.debug" value="on"/>
- <property name="project.deprecation" value="on"/>
-
- <property name="build.file" value="build.xml"/>
- <property name="build.properties.file" value="build-properties.xml"/>
- <property name="build.dir" value="build"/>
- <property name="build.dest" value="build/classes"/>
- <property name="build.lib" value="build/lib"/>
- <property name="build.lib.win32" value="build/lib/win32"/>
- <property name="build.samples" value="build/samples"/>
- <property name="build.samples.calc" value="build/samples/calc"/>
- <property name="build.samples.scriptedui" value="build/samples/scriptedui"/>
- <property name="build.samples.xsl" value="build/samples/xsl"/>
- <property name="build.javadocs" value="build/javadocs"/>
- <property name="build.tests" value="build/testcases" />
-
- <property name="dist.dir" value="dist"/>
- <property name="dist.dir.root" value="${dist.dir}/${project.name}-${project.version}"/>
- <property name="dist.bin.file" value="${dist.dir}/${project.name}-bin-${project.version}"/>
- <property name="dist.src.file" value="${dist.dir}/${project.name}-src-${project.version}"/>
-
- <property name="packages" value="org.apache.*"/>
-
- <property name="samples.dir" value="samples"/>
-
- <property name="site.src" location="xdocs"/>
- <property name="site.dest" location="docs"/>
- <property name="site.projectFile" value="stylesheets/project.xml"/>
-
- <property name="source.level" value="1.4" />
-
- <property name="src.dir" value="src"/>
-
- <property name="templ.path" location="xdocs/stylesheets"/>
-
- <property name="tests.dir" value="test"/>
-
- <property name="velocity.props" location="${site.src}/velocity.properties"/>
-</project>
diff --git a/dev-java/bsf/metadata.xml b/dev-java/bsf/metadata.xml
index b193994fe63e..90f0e6f3943c 100644
--- a/dev-java/bsf/metadata.xml
+++ b/dev-java/bsf/metadata.xml
@@ -5,7 +5,9 @@
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
-
+<upstream>
+ <remote-id type="github">apache/commons-bsf</remote-id>
+</upstream>
<longdescription>
Bean Scripting Framework (BSF) is a set of Java classes which provides
scripting language support within Java applications, and access to Java
diff --git a/dev-java/caffeine/Manifest b/dev-java/caffeine/Manifest
new file mode 100644
index 000000000000..5fe009e7d56c
--- /dev/null
+++ b/dev-java/caffeine/Manifest
@@ -0,0 +1 @@
+DIST caffeine-2.6.2-sources.jar 715580 BLAKE2B 882cac33d205c8186232c64010b4e25e805d3d188d6a9e6ca151187b55d5ee3a3d5641566f5e8d32de596fab3dae8967c74f3d60e2321b34374ce996382322fe SHA512 52a8c67648e2a6bb1c600d99712473a64911f2b6c8fe6c924ba98e72b4b040a1094fa5c93ae2bae8734d352634bc72960711afd152566ef02f6bad4c84e510c8
diff --git a/dev-java/caffeine/caffeine-2.6.2-r1.ebuild b/dev-java/caffeine/caffeine-2.6.2-r1.ebuild
new file mode 100644
index 000000000000..673e2da08617
--- /dev/null
+++ b/dev-java/caffeine/caffeine-2.6.2-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.github.ben-manes.caffeine:caffeine:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A high performance caching library"
+HOMEPAGE="https://github.com/ben-manes/caffeine"
+SRC_URI="https://repo1.maven.org/maven2/com/github/ben-manes/caffeine/caffeine/${PV}/caffeine-${PV}-sources.jar"
+# Compiling from Github tarball would require to be packaged at least
+# package com.squareup.javapoet
+# package MethodSpec
+# package TypeSpec
+# SRC_URI="https://github.com/ben-manes/caffeine/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+# S="${WORKDIR}/${P}/caffeine"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+BDEPEND="app-arch/unzip"
+CP_DEPEND="dev-java/jsr305:0"
+# min java 11 for bug #919464
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="com.github.benmanes.caffeine"
diff --git a/dev-java/caffeine/metadata.xml b/dev-java/caffeine/metadata.xml
new file mode 100644
index 000000000000..8168da8f9820
--- /dev/null
+++ b/dev-java/caffeine/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ben-manes/caffeine</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/checker-framework-qual/Manifest b/dev-java/checker-framework-qual/Manifest
index 420abc50100b..a520abac15a6 100644
--- a/dev-java/checker-framework-qual/Manifest
+++ b/dev-java/checker-framework-qual/Manifest
@@ -1 +1 @@
-DIST checker-framework-3.14.0.tar.gz 7788010 BLAKE2B e05647b7a551cb1e53c32ea65c1d5a28ed7a968310223664704722c58b6df188e80581df383937fef6ebed5042e7234281b55069fde1f4cb34853495c4e2fbff SHA512 14be47e823ba67b6fcb7a8033632a2dd56341bd0d2a56c7501b50eab5e471622372eb4b62f4e78e33be019c15f44d075d146ece98fa3316e7cb24346db98c238
+DIST checker-framework-3.42.0.tar.gz 8280060 BLAKE2B c2f7c192eb9a7a26b66e46f0c22c18a05ec8cc3c4c01d444e7f14e41c89db83b5d2738f78e3b16eea9cd9ebf3138171bbc6fabb195bdd9776defa06d75e516d6 SHA512 310578593509674b2d36353b2044009ac98b50906d715f1168a96490a1b87aa8227c1713f64adeabd98e370fb1a6a25dd148a5700ff6f4f28ba6b69ba505c149
diff --git a/dev-java/checker-framework-qual/checker-framework-qual-3.14.0.ebuild b/dev-java/checker-framework-qual/checker-framework-qual-3.42.0.ebuild
index 57becae21d2e..5831dfb7010b 100644
--- a/dev-java/checker-framework-qual/checker-framework-qual-3.14.0.ebuild
+++ b/dev-java/checker-framework-qual/checker-framework-qual-3.42.0.ebuild
@@ -1,19 +1,18 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-MY_PN="${PN%-qual}"
-MY_P="${MY_PN}-${PV}"
JAVA_PKG_IUSE="doc source"
-JAVA_TESTING_FRAMEWORKS="junit"
MAVEN_ID="org.checkerframework:checker-qual:${PV}"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Annotations for type-checking by the Checker Framework"
HOMEPAGE="https://checkerframework.org/"
-SRC_URI="https://codeload.github.com/typetools/${MY_PN}/tar.gz/refs/tags/${MY_P} -> ${MY_P}.tar.gz"
+SRC_URI="https://github.com/typetools/checker-framework/archive/checker-framework-${PV}.tar.gz"
+S="${WORKDIR}/checker-framework-checker-framework-${PV}/checker-qual"
+
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
@@ -21,6 +20,5 @@ KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND=">=virtual/jdk-1.8:*"
RDEPEND=">=virtual/jre-1.8:*"
-S="${WORKDIR}/${MY_PN}-${MY_P}/checker-qual"
-
+JAVA_AUTOMATIC_MODULE_NAME="org.checkerframework.checker.qual"
JAVA_SRC_DIR="src/main/java/org/checkerframework/"
diff --git a/dev-java/checker-framework-qual/metadata.xml b/dev-java/checker-framework-qual/metadata.xml
index ca606ae4ec36..29b8e33bf4e4 100644
--- a/dev-java/checker-framework-qual/metadata.xml
+++ b/dev-java/checker-framework-qual/metadata.xml
@@ -5,6 +5,9 @@
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">typetools/checker-framework</remote-id>
+ </upstream>
<longdescription>
The Checker Framework enhances Java's type system to make it
more powerful and useful. This lets software developers detect
diff --git a/dev-java/commons-beanutils/Manifest b/dev-java/commons-beanutils/Manifest
index fe0438633a4b..3d0920954f02 100644
--- a/dev-java/commons-beanutils/Manifest
+++ b/dev-java/commons-beanutils/Manifest
@@ -1 +1,3 @@
DIST commons-beanutils-1.9.4-src.tar.gz 412606 BLAKE2B 213a2ad4d976ed4c55c9a73c0970a656e2f03efcba886369c8be164e04618937ad636ce7ffa6aa7b981e9595b24e4cbacc2bc632268bbfede8172091ef6eb4ff SHA512 6f3d30d02b9a66cf20509bd868c6e2dadb44bb27da1e6b9af7275675e0f3826845a5d4005509dd1eb77a5b2937820c4770a3753daaab072785dcdab0caa69e73
+DIST commons-beanutils-1.9.4-src.tar.gz.asc 833 BLAKE2B c971231cfb034bd9bbbd6e7801a4fcb54853c0d18872cfae81ce761fc8f71ebb70955456827ad33b4abd4df8c9820031fd49f28c50eddef5251b2a0d1b01cff9 SHA512 2a966959b2c94bf013df71885c2906a092b43a0ac6d63963f1462e7c09376964bb948c0681278a58fffae6716d042dc846b1649e1f4b0816e2adb3733bf14451
+DIST commons-collections-3.2.2-src.tar.gz 630693 BLAKE2B a70cebe9526291d5207db7edd7c9b50060413880d41dcb28c01cf05f7e00a9f5e1560012c3c3c763162412282db9512bc2b64a5788f210c5c8866943d912dafb SHA512 2e8ef638f07515b028a3e7e97851fcf1d9023a2c188e211bd1e936f35d3d91c2885adf3b1103ad17dfb7aeea6e7a67ce7826ee346a8a29c1aa7c6b0cf14e9230
diff --git a/dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild
deleted file mode 100644
index a4b3175fa186..000000000000
--- a/dev-java/commons-beanutils/commons-beanutils-1.9.4-r1.ebuild
+++ /dev/null
@@ -1,101 +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/beanutils/source/1.9.4-src.tar.gz --slot 1.7 --keywords "~amd64 ~x86 ~ppc64 ~amd64-linux ~x86-linux ~x64-macos" --ebuild commons-beanutils-1.9.4.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="commons-beanutils:commons-beanutils:1.9.4"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Provides easy-to-use wrappers around Reflection and Introspection APIs"
-HOMEPAGE="https://commons.apache.org/proper/commons-beanutils/"
-SRC_URI="mirror://apache/commons/beanutils/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.7"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-# Common dependencies
-# POM: pom.xml
-# commons-collections:commons-collections:3.2.2 -> >=dev-java/commons-collections-3.2.2:0
-# commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
-
-CP_DEPEND="
- dev-java/commons-collections:0
- dev-java/commons-logging:0
-"
-
-# Compile dependencies
-# POM: pom.xml
-# test? commons-collections:commons-collections-testframework:3.2.1 -> !!!artifactId-not-found!!!
-# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
-
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.8:*
- test? (
- dev-java/commons-collections:0[test]
- )"
-
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.8:*"
-
-DOCS=( {CONTRIBUTING,README}.md {LICENSE,NOTICE,RELEASE-NOTES}.txt )
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="iso-8859-1"
-
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="commons-collections,junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-
-JAVA_TEST_EXCLUDES=(
- # Upstream: Tests run: 1293, Failures: 0, Errors: 0, Skipped: 3
- "org.apache.commons.beanutils.TestBeanPublicSubclass" # Invalid test class
- "org.apache.commons.beanutils.TestBeanPackageSubclass" # Invalid test class
- "org.apache.commons.beanutils.TestResultSetMetaData" # Invalid test class
- "org.apache.commons.beanutils.TestResultSet" # Test class can only have one constructor
- "org.apache.commons.beanutils.TestBean" # Test class can only have one constructor
- # https://github.com/apache/commons-beanutils/blob/32ceb2c92512d44f97638805e2f3fd9d70dfcfc6/pom.xml#L378-L383
- # <!-- This test case is known to fail, and there isn't any proposed fix
- # - so we will just exclude it until someone comes up with a solution.
- # -->
- "org.apache.commons.beanutils.converters.MemoryTestCase"
-)
-
-src_test() {
- # There were 8 failures:
- # 1) testPropertyUtilsBean_descriptorsCache_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 2) testPropertyUtilsBean_mappedDescriptorsCache_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 3) testMappedPropertyDescriptor_MappedMethodReference1(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 4) testMappedPropertyDescriptor_MappedMethodReference2(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 5) testLocaleConvertUtilsBean_converters_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 6) testWrapDynaClass_dynaClasses_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 7) testMethodUtils_cache_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- # 8) testConvertUtilsBean_converters_memoryLeak(org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase)
- # java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
- local vm_version="$(java-config -g PROVIDES_VERSION)"
- if [[ "${vm_version}" == "11" ]] ; then
- JAVA_TEST_EXCLUDES+=( "org.apache.commons.beanutils.memoryleaktests.MemoryLeakTestCase" )
- fi
-
- java-pkg-simple_src_test
-}
-
-src_install() {
- default # https://bugs.gentoo.org/789582
- java-pkg-simple_src_install
-}
diff --git a/dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild
new file mode 100644
index 000000000000..ba6bfd171173
--- /dev/null
+++ b/dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-beanutils:commons-beanutils:1.9.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Provides easy-to-use wrappers around Reflection and Introspection APIs"
+HOMEPAGE="https://commons.apache.org/proper/commons-beanutils/"
+# We need some test classes of commons-collections which are not part of the jar file.
+ACC="commons-collections-3.2.2"
+SRC_URI="mirror://apache/commons/beanutils/source/${P}-src.tar.gz
+ test? ( https://archive.apache.org/dist/commons/collections/source/${ACC}-src.tar.gz )
+ verify-sig? ( https://downloads.apache.org/commons/beanutils/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="1.7"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+CP_DEPEND="
+ dev-java/commons-collections:0
+ dev-java/commons-logging:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,README}.md {NOTICE,RELEASE-NOTES}.txt )
+
+JAVA_ENCODING="iso-8859-1"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4 "
+JAVA_TEST_SRC_DIR=(
+ src/test/java
+ ../"${ACC}"-src/src/test
+)
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${P}-src.tar.gz{,.asc}
+ fi
+ default
+}
+
+src_test() {
+ export LC_ALL="en_US.UTF-8"
+ # Apply patch to unpacked commons-collections
+ pushd "../${ACC}-src" >> /dev/null || die
+ eapply "${FILESDIR}/${ACC}-fixes.patch"
+ popd
+
+ pushd src/test/java || die
+ # Selection according to lines 375-383 pom.xml
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*TestCase.java" \
+ ! -path "**/*MemoryTestCase.java" \
+ ! -path "**/*MemoryLeakTestCase.java" \
+ ! -path "**/*LocaleBeanificationTestCase.java" \
+ ! -path "**/Jira347TestCase.java" \
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+
+ # We skip 2 more test classes conditionally which have failures with Java 21
+ # Error converting 'String' to 'java.sql.Time' using pattern 'h:mm a'
+ # Error converting 'String' to 'java.sql.Timestamp' using pattern 'M/d/yy, h:mm a'
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge "21"; then
+ JAVA_TEST_RUN_ONLY=${JAVA_TEST_RUN_ONLY//org.apache.commons.beanutils.converters.SqlTimeConverterTestCase}
+ JAVA_TEST_RUN_ONLY=${JAVA_TEST_RUN_ONLY//org.apache.commons.beanutils.converters.SqlTimestampConverterTestCase}
+ fi
+
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch b/dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch
new file mode 100644
index 000000000000..2f1380a06ffc
--- /dev/null
+++ b/dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch
@@ -0,0 +1,187 @@
+Patch stolen from:
+From e90a6173247f06514731825677f3fc67c62bdc52 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miroslav=20=C5=A0ulc?= <fordfrog@gentoo.org>
+Date: Wed, 21 Apr 2021 11:31:11 +0200
+--- a/build.xml
++++ b/build.xml
+@@ -154,8 +154,7 @@
+
+ <!-- NOTE: A jar built using JDK1.4 is incompatible with JDK1.2 -->
+ <jar jarfile="${build.jar.name}"
+- basedir="${build.classes}"
+- manifest="${build.conf}/MANIFEST.MF"/>
++ basedir="${build.classes}"/>
+ </target>
+
+ <!-- ====================================================================== -->
+--- a/src/java/org/apache/commons/collections/MultiHashMap.java
++++ b/src/java/org/apache/commons/collections/MultiHashMap.java
+@@ -331,7 +331,7 @@ public class MultiHashMap extends HashMap implements MultiMap {
+ * @param item the value to remove
+ * @return the value removed (which was passed in), null if nothing removed
+ */
+- public Object remove(Object key, Object item) {
++ public Object removeMapping(Object key, Object item) {
+ Collection valuesForKey = getCollection(key);
+ if (valuesForKey == null) {
+ return null;
+--- a/src/java/org/apache/commons/collections/MultiMap.java
++++ b/src/java/org/apache/commons/collections/MultiMap.java
+@@ -66,7 +66,7 @@ public interface MultiMap extends Map {
+ * @throws ClassCastException if the key or value is of an invalid type
+ * @throws NullPointerException if the key or value is null and null is invalid
+ */
+- public Object remove(Object key, Object item);
++ public Object removeMapping(Object key, Object item);
+
+ //-----------------------------------------------------------------------
+ /**
+--- a/src/java/org/apache/commons/collections/map/MultiKeyMap.java
++++ b/src/java/org/apache/commons/collections/map/MultiKeyMap.java
+@@ -197,7 +197,7 @@ public class MultiKeyMap
+ * @param key2 the second key
+ * @return the value mapped to the removed key, null if key not in map
+ */
+- public Object remove(Object key1, Object key2) {
++ public Object removeMultiKey(Object key1, Object key2) {
+ int hashCode = hash(key1, key2);
+ int index = map.hashIndex(hashCode, map.data.length);
+ AbstractHashedMap.HashEntry entry = map.data[index];
+--- a/src/java/org/apache/commons/collections/map/MultiValueMap.java
++++ b/src/java/org/apache/commons/collections/map/MultiValueMap.java
+@@ -153,7 +153,7 @@ public class MultiValueMap extends AbstractMapDecorator implements MultiMap {
+ * @param value the value to remove
+ * @return the value removed (which was passed in), null if nothing removed
+ */
+- public Object remove(Object key, Object value) {
++ public Object removeMapping(Object key, Object value) {
+ Collection valuesForKey = getCollection(key);
+ if (valuesForKey == null) {
+ return null;
+--- a/src/test/org/apache/commons/collections/TestMultiHashMap.java
++++ b/src/test/org/apache/commons/collections/TestMultiHashMap.java
+@@ -217,7 +217,7 @@ public class TestMultiHashMap extends AbstractTestMap {
+ MultiHashMap one = new MultiHashMap();
+ Integer value = new Integer(1);
+ one.put("One", value);
+- one.remove("One", value);
++ one.removeMapping("One", value);
+
+ MultiHashMap two = new MultiHashMap();
+ assertEquals(two, one);
+@@ -269,7 +269,7 @@ public class TestMultiHashMap extends AbstractTestMap {
+ assertEquals(4, map.totalSize());
+ map.remove("A");
+ assertEquals(3, map.totalSize());
+- map.remove("B", "BC");
++ map.removeMapping("B", "BC");
+ assertEquals(2, map.totalSize());
+ }
+
+@@ -292,7 +292,7 @@ public class TestMultiHashMap extends AbstractTestMap {
+ map.remove("A");
+ assertEquals(0, map.size("A"));
+ assertEquals(3, map.size("B"));
+- map.remove("B", "BC");
++ map.removeMapping("B", "BC");
+ assertEquals(0, map.size("A"));
+ assertEquals(2, map.size("B"));
+ }
+@@ -464,11 +464,11 @@ public class TestMultiHashMap extends AbstractTestMap {
+ map.put("A", "AA");
+ map.put("A", "AB");
+ map.put("A", "AC");
+- assertEquals(null, map.remove("C", "CA"));
+- assertEquals(null, map.remove("A", "AD"));
+- assertEquals("AC", map.remove("A", "AC"));
+- assertEquals("AB", map.remove("A", "AB"));
+- assertEquals("AA", map.remove("A", "AA"));
++ assertEquals(null, map.removeMapping("C", "CA"));
++ assertEquals(null, map.removeMapping("A", "AD"));
++ assertEquals("AC", map.removeMapping("A", "AC"));
++ assertEquals("AB", map.removeMapping("A", "AB"));
++ assertEquals("AA", map.removeMapping("A", "AA"));
+ assertEquals(new MultiHashMap(), map);
+ }
+
+--- a/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
++++ b/src/test/org/apache/commons/collections/collection/AbstractTestCollection.java
+@@ -1116,7 +1116,7 @@ public abstract class AbstractTestCollection extends AbstractTestObject {
+ verify();
+
+ try {
+- array = collection.toArray(null);
++ array = collection.toArray((Object[]) null);
+ fail("toArray(null) should raise NPE");
+ } catch (NullPointerException e) {
+ // expected
+--- a/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java
++++ b/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java
+@@ -315,10 +315,10 @@ public class TestMultiKeyMap extends AbstractTestIterableMap {
+ switch (key.size()) {
+ case 2:
+ assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1)));
+- assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1)));
++ assertEquals(value, multimap.removeMultiKey(key.getKey(0), key.getKey(1)));
+ assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1)));
+ assertEquals(size - 1, multimap.size());
+- assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1)));
++ assertEquals(null, multimap.removeMultiKey(key.getKey(0), key.getKey(1)));
+ assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1)));
+ break;
+ case 3:
+--- a/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
++++ b/src/test/org/apache/commons/collections/map/TestMultiValueMap.java
+@@ -161,7 +161,7 @@ public class TestMultiValueMap extends TestCase {
+ MultiValueMap one = new MultiValueMap();
+ Integer value = new Integer(1);
+ one.put("One", value);
+- one.remove("One", value);
++ one.removeMapping("One", value);
+
+ MultiValueMap two = new MultiValueMap();
+ assertEquals(two, one);
+@@ -187,7 +187,7 @@ public class TestMultiValueMap extends TestCase {
+ assertEquals(4, map.totalSize());
+ map.remove("A");
+ assertEquals(3, map.totalSize());
+- map.remove("B", "BC");
++ map.removeMapping("B", "BC");
+ assertEquals(2, map.totalSize());
+ }
+
+@@ -204,7 +204,7 @@ public class TestMultiValueMap extends TestCase {
+ assertEquals(2, map.size());
+ map.remove("A");
+ assertEquals(2, map.size());
+- map.remove("B", "BC");
++ map.removeMapping("B", "BC");
+ assertEquals(2, map.size());
+ }
+
+@@ -227,7 +227,7 @@ public class TestMultiValueMap extends TestCase {
+ map.remove("A");
+ assertEquals(0, map.size("A"));
+ assertEquals(3, map.size("B"));
+- map.remove("B", "BC");
++ map.removeMapping("B", "BC");
+ assertEquals(0, map.size("A"));
+ assertEquals(2, map.size("B"));
+ }
+@@ -338,11 +338,11 @@ public class TestMultiValueMap extends TestCase {
+ map.put("A", "AA");
+ map.put("A", "AB");
+ map.put("A", "AC");
+- assertEquals(null, map.remove("C", "CA"));
+- assertEquals(null, map.remove("A", "AD"));
+- assertEquals("AC", map.remove("A", "AC"));
+- assertEquals("AB", map.remove("A", "AB"));
+- assertEquals("AA", map.remove("A", "AA"));
++ assertEquals(null, map.removeMapping("C", "CA"));
++ assertEquals(null, map.removeMapping("A", "AD"));
++ assertEquals("AC", map.removeMapping("A", "AC"));
++ assertEquals("AB", map.removeMapping("A", "AB"));
++ assertEquals("AA", map.removeMapping("A", "AA"));
+ assertEquals(new MultiValueMap(), map);
+ }
+
diff --git a/dev-java/commons-codec/Manifest b/dev-java/commons-codec/Manifest
index c9d10fb3e58a..f3f96becb4b7 100644
--- a/dev-java/commons-codec/Manifest
+++ b/dev-java/commons-codec/Manifest
@@ -1,2 +1,4 @@
DIST commons-codec-1.16.0-src.tar.gz 447581 BLAKE2B 111151b4cf409dbc6f69106ed30f2cfd60a1ab3aa15eb0cfe80ff1c2a06875f6856e387f66751c26f58dc29907ae7a03b16f23f7860114839df298a6c37d9fdd SHA512 5212beae43a59d5a92c80f87640278913bf07d6527ead573710391a8b5c813af67f8086de5cd80f4b06845752652684d7c28f6236f5a8bd0bd6a8b89dc0d9532
DIST commons-codec-1.16.0-src.tar.gz.asc 488 BLAKE2B 96ac95b5efbc812b5df0d002eeff874ff23e05e0229e4f49bf29aaf9c75b32845adeb803c9c8d4d3b190bf2bfab626c59cb2fa2b2439b5611b158d27b73d4c0c SHA512 03f9281e93cd4a1cf42878bd25045368bc72a50edace9b38a977658e7e83b45bfe835065e80e0838a5e57d16a8737624ab388cdcd3fee58ec2114ff4fc241816
+DIST commons-codec-1.16.1-src.tar.gz 450009 BLAKE2B da06c823fae5e106c27b10274fb159e3de62827fe1bb1ace8d65377da26d012534636a8ac58a558b653ba3a7e868bb2f7d94b2ea820b5ddc6400fd4d288c6ba9 SHA512 8e2d40ae625c04e61b0dd7473dea0b32fdd13a6d3aad47b8b052952ca46f57d3df4917133f523ea147305a1c7ed9267cce7c4fa34d901496e36e9d5de9856e61
+DIST commons-codec-1.16.1-src.tar.gz.asc 488 BLAKE2B d3f193b602339714728875189ae90a49f70f9efb70076e73bdc460ccca99aea832a7cf0b18ecd212b016787f8cc96a1e30f9cb0af7b83f05db2dfba00d71c144 SHA512 a0716601374f17add25698eb5abd111c560c258f4ab18278b6bd857b2bf32916b5e4e590ce8c39a0bdef3b83e16e9330ce84268dec810db7dfab1679cace85af
diff --git a/dev-java/commons-codec/commons-codec-1.16.1.ebuild b/dev-java/commons-codec/commons-codec-1.16.1.ebuild
new file mode 100644
index 000000000000..e092312d1927
--- /dev/null
+++ b/dev-java/commons-codec/commons-codec-1.16.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-codec:commons-codec:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Implementations of common encoders and decoders in Java"
+HOMEPAGE="https://commons.apache.org/proper/commons-codec/"
+SRC_URI="mirror://apache/commons/codec/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/codec/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+RESTRICT="test" #839681
+
+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:*
+ test? (
+ dev-java/commons-lang:3.6
+ dev-java/hamcrest:0
+ dev-java/junit:5[migration-support]
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.codec"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ junit-5
+ commons-lang-3.6
+ hamcrest
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/commons-collections/commons-collections-3.2.2-r1.ebuild b/dev-java/commons-collections/commons-collections-3.2.2-r1.ebuild
deleted file mode 100644
index 77421d30330b..000000000000
--- a/dev-java/commons-collections/commons-collections-3.2.2-r1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# 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="commons-collections:commons-collections:3.2.2"
-
-inherit java-pkg-2 java-ant-2 verify-sig
-
-DESCRIPTION="Jakarta-Commons Collections Component"
-HOMEPAGE="https://commons.apache.org/collections/"
-SRC_URI="https://archive.apache.org/dist/commons/collections/source/commons-collections-${PV}-src.tar.gz
- verify-sig? ( https://archive.apache.org/dist/commons/collections/source/commons-collections-${PV}-src.tar.gz.asc )"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- dev-java/junit:0
- dev-java/ant-junit:0
- )"
-
-RDEPEND=">=virtual/jre-1.8:*"
-
-BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
-
-S="${WORKDIR}/${P}-src"
-
-PATCHES=(
- "${FILESDIR}/${P}-fixes.patch"
-)
-
-src_prepare() {
- default
-}
-
-src_compile() {
- local antflags
- if use test; then
- antflags="tf.jar -Djunit.jar=$(java-pkg_getjars --build-only junit)"
- fi
- eant jar $(use_doc) ${antflags}
-}
-
-src_test() {
- if [[ "${ARCH}" = "ppc" ]]; then
- einfo "tests are disabled on ppc"
- else
- ANT_TASKS="ant-junit" eant testjar -Djunit.jar="$(java-pkg_getjars junit)"
- fi
-}
-
-src_install() {
- java-pkg_newjar build/${P}.jar ${PN}.jar
- use test && \
- java-pkg_newjar build/${PN}-testframework-${PV}.jar \
- ${PN}-testframework.jar
-
- java-pkg_dohtml *.html
- if use doc; then
- java-pkg_dojavadoc build/docs/apidocs
- fi
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/commons-collections/commons-collections-3.2.2-r2.ebuild b/dev-java/commons-collections/commons-collections-3.2.2-r2.ebuild
index d5c0110ad865..7ec6cb15cb8c 100644
--- a/dev-java/commons-collections/commons-collections-3.2.2-r2.ebuild
+++ b/dev-java/commons-collections/commons-collections-3.2.2-r2.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
@@ -17,7 +17,7 @@ S="${WORKDIR}/${P}-src"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/commons.apache.org.asc"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
diff --git a/dev-java/commons-compress/Manifest b/dev-java/commons-compress/Manifest
index e433074b748e..752307f08507 100644
--- a/dev-java/commons-compress/Manifest
+++ b/dev-java/commons-compress/Manifest
@@ -1 +1,4 @@
-DIST commons-compress-1.21-src.tar.gz 15165800 BLAKE2B 3fed32af039860c6b434c485f0c78939ed810a224a12680ddf1d9d6ed540f4e74530edd0e0077fd41af31404c296a607db912465cfd725c31446bc6fa7b8df8a SHA512 8041371b491057435ca62390e70b30031e4d21e80c37d9cb922fdffa794b56aee3b5d60d8241e4db0cecc28c82dfdaafbe52b2175e26062da169fec8efbb17e1
+DIST commons-compress-1.26.0-src.tar.gz 54670636 BLAKE2B e29adcab9a10a7d4ada3624afb0d674a592fbd76d93badea833af355415a4e4adb1f954a2986cc9d1ae78dc84cd0380de0f21366cf7ae582e9d89f2cb2cea943 SHA512 9348e2792d67fe977cbfcede80ab95de96e582c3f7239e16e99360decac4e7703f57d4cfec9535cd4a0f884319df851eb5e44214ba8c3dd321cc6ea67f9d1abb
+DIST commons-compress-1.26.0-src.tar.gz.asc 488 BLAKE2B 0b51158ad0eeb91c8ecad1a6d87afd482ddaae7c6d4fd1d86b586886b1d6ba4073d9e6846a84334593676f1a6bb337b250009ddfc0f67838bab38238cd5d2a4c SHA512 31080e6fba38574d84b0af09450eba3c0b4b2781c50e432d5ce0e128a8b3edd105ad75908177c1aa8942d68a095d47e7f3f4d141c8f2227828b294f3da6b343c
+DIST commons-compress-1.26.1-src.tar.gz 54843710 BLAKE2B 84c4c1363a4396a06773a8c120f5f32d98fceaa139e33a2a27df79a9aea41b8084a93a5735b0c4cd17fa88c404060af2336ab20f127acceb0da948ff170164c3 SHA512 096c94344a9bbcd021a3cce0869456cf6d22ca5136b63de017922d7c3de5d94b591961fe550201b654f9dc90b2cd8f32ef9bf1e507fddfb2e2f7c33bddc790c4
+DIST commons-compress-1.26.1-src.tar.gz.asc 488 BLAKE2B 4df27d6d7ab226eb87ca6b7691c677b95d59c2d37f44ced6a5c0586aefa2506c9a635d869fd181526149416c228a8859a961386ca98519dc080709a55d9264c9 SHA512 b9533d63f961022ca42e79f8aed91a6c4b8a91cb0f3aa095a4ffa2202ed87d171f6c0d32babfbd730eb0c250be2331da4bd12e5251f7e7076f78536d20d96ced
diff --git a/dev-java/commons-compress/commons-compress-1.21-r1.ebuild b/dev-java/commons-compress/commons-compress-1.21-r1.ebuild
deleted file mode 100644
index 40cf830dd60a..000000000000
--- a/dev-java/commons-compress/commons-compress-1.21-r1.ebuild
+++ /dev/null
@@ -1,121 +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 https://apache.miloslavbrada.cz//commons/compress/source/commons-compress-1.21-src.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~x86" --ebuild commons-compress-1.21.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.apache.commons:commons-compress:1.21"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java API for working with archive files"
-HOMEPAGE="https://commons.apache.org/proper/commons-compress/"
-SRC_URI="mirror://apache/commons/compress/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-# Common dependencies
-# POM: pom.xml
-# asm:asm:3.2 -> !!!groupId-not-found!!!
-# com.github.luben:zstd-jni:1.5.0-2 -> >=dev-java/zstd-jni-1.5.0.5:0
-# org.brotli:dec:0.1.2 -> >=dev-java/brotli-dec-0.1.2:0
-# org.tukaani:xz:1.9 -> >=dev-java/xz-java-1.9:0
-
-CP_DEPEND="
- dev-java/asm:9
- dev-java/brotli-dec:0
- dev-java/xz-java:0
- dev-java/zstd-jni:0
-"
-
-# Compile dependencies
-# POM: pom.xml
-# org.osgi:osgi.core:6.0.0 -> >=dev-java/osgi-core-8.0.0:0
-# POM: pom.xml
-# test? com.github.marschall:memoryfilesystem:2.1.0 -> >=dev-java/memoryfilesystem-2.3.0:0
-# test? javax.inject:javax.inject:1 -> >=dev-java/javax-inject-1:0
-# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
-# test? org.apache.felix:org.apache.felix.framework:7.0.0 -> >=dev-java/felix-framework-7.0.5:0
-# test? org.hamcrest:hamcrest:2.2 -> >=dev-java/hamcrest-2.2:0
-# test? org.mockito:mockito-core:3.11.1 -> >=dev-java/mockito-4.6.1:4
-# test? org.ops4j.pax.exam:pax-exam-cm:4.13.1 -> !!!groupId-not-found!!!
-# test? org.ops4j.pax.exam:pax-exam-container-native:4.13.1 -> !!!groupId-not-found!!!
-# test? org.ops4j.pax.exam:pax-exam-junit4:4.13.1 -> !!!groupId-not-found!!!
-# test? org.ops4j.pax.exam:pax-exam-link-mvn:4.13.1 -> !!!groupId-not-found!!!
-# test? org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.36:0
-
-DEPEND="
- >=virtual/jdk-11:*
- ${CP_DEPEND}
- dev-java/osgi-core:0
- test? (
- dev-java/felix-framework:0
- dev-java/hamcrest:0
- dev-java/javax-inject:0
- dev-java/memoryfilesystem:0
- dev-java/mockito:4
- dev-java/slf4j-api:0
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CP_DEPEND}"
-
-S="${WORKDIR}/${P}-src"
-
-PATCHES=(
- "${FILESDIR}/${P}-asm7+.patch"
-)
-
-JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.compress"
-JAVA_CLASSPATH_EXTRA="osgi-core"
-JAVA_ENCODING="iso-8859-1"
-JAVA_MAIN_CLASS="org.apache.commons.compress.archivers.Lister"
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="memoryfilesystem,javax-inject,junit-4,felix-framework,hamcrest,mockito-4,slf4j-api"
-JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-JAVA_TEST_SRC_DIR="src/test/java"
-
-src_prepare() {
- default
- # error: package org.ops4j.pax.exam does not exist
- # removing it costs 2 tests
- rm src/test/java/org/apache/commons/compress/OsgiITest.java || die
-
- # java.io.FileNotFoundException: couldn't find zstandard.testdata.zst
- # pom.xml lines 420-422
- tar xf src/test/resources/zstd-tests.tar \
- -C src/test/resources || die "cannot unpack zstd-tests.tar"
-
- # pom.xml lines 518-520
- tar xjf src/test/resources/zip64support.tar.bz2 \
- -C src/test/resources || die "cannot unpack zip64support.tar.bz2"
-
- JAVA_TEST_EXTRA_ARGS=( -Djava.library.path="${EPREFIX}/usr/$(get_libdir)/zstd-jni/" )
-}
-
-JAVA_TEST_EXCLUDES=(
- # No runnable methods
- org.apache.commons.compress.archivers.TestArchiveStreamProvider
- org.apache.commons.compress.compressors.TestCompressorStreamProvider
-
- # fails without useful message
- org.apache.commons.compress.compressors.DetectCompressorTestCase # has 8 tests
-
- # These tests pass but they prevent printing test messages::
-# org.apache.commons.compress.compressors.pack200.Pack200UtilsTest # has 2 tests
-# org.apache.commons.compress.compressors.FramedSnappyTestCase # has 5 tests
-# org.apache.commons.compress.compressors.XZTestCase # has 4 tests
-# org.apache.commons.compress.compressors.Pack200TestCase # has 15 tests
-# org.apache.commons.compress.harmony.pack200.tests.PackingOptionsTest # has 12 tests
-# org.apache.commons.compress.harmony.pack200.tests.ArchiveTest # has 9 tests
-# org.apache.commons.compress.harmony.unpack200.tests.ArchiveTest # has 13 tests
-)
diff --git a/dev-java/commons-compress/commons-compress-1.26.0-r1.ebuild b/dev-java/commons-compress/commons-compress-1.26.0-r1.ebuild
new file mode 100644
index 000000000000..f229ec9ba6d4
--- /dev/null
+++ b/dev-java/commons-compress/commons-compress-1.26.0-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Not ready for running tests, https://bugs.gentoo.org/839681
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.commons:commons-compress:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Java API for working with archive files"
+HOMEPAGE="https://commons.apache.org/proper/commons-compress/"
+SRC_URI="mirror://apache/commons/compress/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/compress/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+CP_DEPEND="
+ dev-java/asm:9
+ dev-java/brotli-dec:0
+ dev-java/commons-codec:0
+ >=dev-java/commons-io-2.15.1:1
+ dev-java/commons-lang:3.6
+ dev-java/xz-java:0
+ dev-java/zstd-jni:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*
+ dev-java/osgi-core:0"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.compress"
+JAVA_CLASSPATH_EXTRA="osgi-core"
+JAVA_ENCODING="iso-8859-1"
+JAVA_MAIN_CLASS="org.apache.commons.compress.archivers.Lister"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-compress/commons-compress-1.26.1.ebuild b/dev-java/commons-compress/commons-compress-1.26.1.ebuild
new file mode 100644
index 000000000000..b51066f5a17e
--- /dev/null
+++ b/dev-java/commons-compress/commons-compress-1.26.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Not ready for running tests, https://bugs.gentoo.org/839681
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.commons:commons-compress:${PV}"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Java API for working with archive files"
+HOMEPAGE="https://commons.apache.org/proper/commons-compress/"
+SRC_URI="mirror://apache/commons/compress/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/compress/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+CP_DEPEND="
+ dev-java/asm:9
+ dev-java/brotli-dec:0
+ dev-java/commons-codec:0
+ >=dev-java/commons-io-2.15.1:1
+ dev-java/commons-lang:3.6
+ dev-java/xz-java:0
+ dev-java/zstd-jni:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*
+ dev-java/osgi-core:0"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.compress"
+JAVA_CLASSPATH_EXTRA="osgi-core"
+JAVA_ENCODING="iso-8859-1"
+JAVA_MAIN_CLASS="org.apache.commons.compress.archivers.Lister"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-compress/metadata.xml b/dev-java/commons-compress/metadata.xml
index 6021501589e0..add1db7ad802 100644
--- a/dev-java/commons-compress/metadata.xml
+++ b/dev-java/commons-compress/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">apache/commons-compress</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/commons-httpclient/Manifest b/dev-java/commons-httpclient/Manifest
index a8ecdcddf113..f2e83ed5113b 100644
--- a/dev-java/commons-httpclient/Manifest
+++ b/dev-java/commons-httpclient/Manifest
@@ -1 +1,2 @@
DIST commons-httpclient-3.1-src.tar.gz 1882664 BLAKE2B ccf96bedad09011ee20eae38aae1fdfdd6fea5a8226f4b4d156762080c286c71b34c149035abfd61e70c55a1de84ab3cd38d73c3228f591dd8e16c0a7e79c3a5 SHA512 e73ceeba3f34a35c30b24a3c6cb8dfc2102ff21079a5ff9270935908cb2f707d366c2f31a53fbdafa99673cc2b82e05470a2bf40d96767c72b2ab037c0f55490
+DIST commons-httpclient-3.1-src.tar.gz.asc 189 BLAKE2B 44661748db96429682a82d8dba5ad71d0d1fc2aaf03e2f1dda059985757547a78ab04dff38863ca421e65d13100a68c8cb909ed4c34e0a66a837b6fdb91baf63 SHA512 3832c90048de4db1f96efecd2f467153f0bdce1ebd533b848b8fc78a92da0bba3ba8bb3447e6c8d34f4c1c731a5b41ab941754a1509728ff4ea96e238927ab09
diff --git a/dev-java/commons-httpclient/commons-httpclient-3.1-r2.ebuild b/dev-java/commons-httpclient/commons-httpclient-3.1-r2.ebuild
deleted file mode 100644
index 6e82213d770d..000000000000
--- a/dev-java/commons-httpclient/commons-httpclient-3.1-r2.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source test"
-MAVEN_ID="commons-httpclient:commons-httpclient:3.1"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="The Jakarta Commons HttpClient library"
-HOMEPAGE="https://hc.apache.org/httpclient-legacy/"
-SRC_URI="mirror://apache/httpcomponents/${PN}/source/${P}-src.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-# doesn't work with IBM JDK, bug #176133
-RESTRICT="test"
-
-CDEPEND="dev-java/commons-logging:0
- dev-java/commons-codec:0"
-RDEPEND=">=virtual/jre-1.8:*
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )
- ${CDEPEND}"
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-logging,commons-codec"
-EANT_BUILD_TARGET="dist"
-EANT_DOC_TARGET="doc"
-
-# patch against CVE-2012-{5783,6153}. See bug 442292.
-PATCHES=(
- "${FILESDIR}/${P}-SSLProtocolSocketFactory.java.patch"
-)
-
-src_prepare() {
- default
-
- # generated docs go into docs/api
- rm -rf docs/apidocs
-
- # remove javadoc task from compile task
- sed -i -e 's/depends="compile,doc"/depends="compile"/' build.xml || die
- sed -i -e '/link/ d' build.xml || die
-
- mkdir lib && cd lib
- java-pkg_filter-compiler jikes
-}
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit"
-EANT_TEST_TARGET="test"
-
-src_install() {
- java-pkg_dojar dist/${PN}.jar
-
- # contains both html docs and javadoc in correct subdir
- if use doc ; then
- java-pkg_dojavadoc dist/docs/api
- java-pkg_dohtml -r dist/docs/*
- fi
- use source && java-pkg_dosrc src/java/*
- use examples && java-pkg_doexamples src/examples
-}
diff --git a/dev-java/commons-httpclient/commons-httpclient-3.1-r3.ebuild b/dev-java/commons-httpclient/commons-httpclient-3.1-r3.ebuild
new file mode 100644
index 000000000000..c0053b42b61e
--- /dev/null
+++ b/dev-java/commons-httpclient/commons-httpclient-3.1-r3.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-httpclient:commons-httpclient:3.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="The Jakarta Commons HttpClient library"
+HOMEPAGE="https://hc.apache.org/httpclient-legacy/"
+SRC_URI="mirror://apache/httpcomponents/${PN}/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/httpcomponents/commons-httpclient/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux"
+
+# Tests run: 2036, Failures: 91
+RESTRICT="test"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/httpclient.commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons-httpclient )"
+DEPEND="
+ dev-java/commons-logging:0
+ dev-java/commons-codec:0
+ >=virtual/jdk-1.8:*
+ test? ( >=dev-java/ant-1.10.14:0[junit] )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( NOTICE README RELEASE_NOTES )
+
+JAVA_ENCODING="ISO-8859-1"
+JAVA_CLASSPATH_EXTRA="
+ commons-logging
+ commons-codec
+"
+JAVA_SRC_DIR="src/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ rm -r docs/apidocs || die "clean apidocs"
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ use doc && docinto html dodoc -r docs
+}
diff --git a/dev-java/commons-httpclient/files/commons-httpclient-3.1-SSLProtocolSocketFactory.java.patch b/dev-java/commons-httpclient/files/commons-httpclient-3.1-SSLProtocolSocketFactory.java.patch
deleted file mode 100644
index c059bf496a45..000000000000
--- a/dev-java/commons-httpclient/files/commons-httpclient-3.1-SSLProtocolSocketFactory.java.patch
+++ /dev/null
@@ -1,369 +0,0 @@
---- ./src/java/org/apache/commons/httpclient/protocol/SSLProtocolSocketFactory.java
-+++ ./src/java/org/apache/commons/httpclient/protocol/SSLProtocolSocketFactory.java
-@@ -31,10 +31,25 @@
- package org.apache.commons.httpclient.protocol;
-
- import java.io.IOException;
-+import java.io.InputStream;
- import java.net.InetAddress;
- import java.net.Socket;
- import java.net.UnknownHostException;
--
-+import java.security.cert.Certificate;
-+import java.security.cert.CertificateParsingException;
-+import java.security.cert.X509Certificate;
-+import java.util.Arrays;
-+import java.util.Collection;
-+import java.util.Iterator;
-+import java.util.LinkedList;
-+import java.util.List;
-+import java.util.Locale;
-+import java.util.StringTokenizer;
-+import java.util.regex.Pattern;
-+
-+import javax.net.ssl.SSLException;
-+import javax.net.ssl.SSLSession;
-+import javax.net.ssl.SSLSocket;
- import javax.net.ssl.SSLSocketFactory;
-
- import org.apache.commons.httpclient.ConnectTimeoutException;
-@@ -55,6 +70,11 @@
- */
- private static final SSLProtocolSocketFactory factory = new SSLProtocolSocketFactory();
-
-+ // This is a a sorted list, if you insert new elements do it orderdered.
-+ private final static String[] BAD_COUNTRY_2LDS =
-+ {"ac", "co", "com", "ed", "edu", "go", "gouv", "gov", "info",
-+ "lg", "ne", "net", "or", "org"};
-+
- /**
- * Gets an singleton instance of the SSLProtocolSocketFactory.
- * @return a SSLProtocolSocketFactory
-@@ -79,12 +99,14 @@
- InetAddress clientHost,
- int clientPort)
- throws IOException, UnknownHostException {
-- return SSLSocketFactory.getDefault().createSocket(
-+ Socket sslSocket = SSLSocketFactory.getDefault().createSocket(
- host,
- port,
- clientHost,
- clientPort
- );
-+ verifyHostName(host, (SSLSocket) sslSocket);
-+ return sslSocket;
- }
-
- /**
-@@ -124,16 +146,19 @@
- }
- int timeout = params.getConnectionTimeout();
- if (timeout == 0) {
-- return createSocket(host, port, localAddress, localPort);
-+ Socket sslSocket = createSocket(host, port, localAddress, localPort);
-+ verifyHostName(host, (SSLSocket) sslSocket);
-+ return sslSocket;
- } else {
- // To be eventually deprecated when migrated to Java 1.4 or above
-- Socket socket = ReflectionSocketFactory.createSocket(
-+ Socket sslSocket = ReflectionSocketFactory.createSocket(
- "javax.net.ssl.SSLSocketFactory", host, port, localAddress, localPort, timeout);
-- if (socket == null) {
-- socket = ControllerThreadSocketFactory.createSocket(
-+ if (sslSocket == null) {
-+ sslSocket = ControllerThreadSocketFactory.createSocket(
- this, host, port, localAddress, localPort, timeout);
- }
-- return socket;
-+ verifyHostName(host, (SSLSocket) sslSocket);
-+ return sslSocket;
- }
- }
-
-@@ -142,10 +167,12 @@
- */
- public Socket createSocket(String host, int port)
- throws IOException, UnknownHostException {
-- return SSLSocketFactory.getDefault().createSocket(
-+ Socket sslSocket = SSLSocketFactory.getDefault().createSocket(
- host,
- port
- );
-+ verifyHostName(host, (SSLSocket) sslSocket);
-+ return sslSocket;
- }
-
- /**
-@@ -157,13 +184,271 @@
- int port,
- boolean autoClose)
- throws IOException, UnknownHostException {
-- return ((SSLSocketFactory) SSLSocketFactory.getDefault()).createSocket(
-+ Socket sslSocket = ((SSLSocketFactory) SSLSocketFactory.getDefault()).createSocket(
- socket,
- host,
- port,
- autoClose
- );
-+ verifyHostName(host, (SSLSocket) sslSocket);
-+ return sslSocket;
-+ }
-+
-+
-+
-+
-+ /**
-+ * Verifies that the given hostname in certicifate is the hostname we are trying to connect to
-+ * http://www.cvedetails.com/cve/CVE-2012-5783/
-+ * @param host
-+ * @param ssl
-+ * @throws IOException
-+ */
-+
-+ private static void verifyHostName(String host, SSLSocket ssl)
-+ throws IOException {
-+ if (host == null) {
-+ throw new IllegalArgumentException("host to verify was null");
-+ }
-+
-+ SSLSession session = ssl.getSession();
-+ if (session == null) {
-+ // In our experience this only happens under IBM 1.4.x when
-+ // spurious (unrelated) certificates show up in the server's chain.
-+ // Hopefully this will unearth the real problem:
-+ InputStream in = ssl.getInputStream();
-+ in.available();
-+ /*
-+ If you're looking at the 2 lines of code above because you're
-+ running into a problem, you probably have two options:
-+
-+ #1. Clean up the certificate chain that your server
-+ is presenting (e.g. edit "/etc/apache2/server.crt" or
-+ wherever it is your server's certificate chain is
-+ defined).
-+
-+ OR
-+
-+ #2. Upgrade to an IBM 1.5.x or greater JVM, or switch to a
-+ non-IBM JVM.
-+ */
-+
-+ // If ssl.getInputStream().available() didn't cause an exception,
-+ // maybe at least now the session is available?
-+ session = ssl.getSession();
-+ if (session == null) {
-+ // If it's still null, probably a startHandshake() will
-+ // unearth the real problem.
-+ ssl.startHandshake();
-+
-+ // Okay, if we still haven't managed to cause an exception,
-+ // might as well go for the NPE. Or maybe we're okay now?
-+ session = ssl.getSession();
-+ }
-+ }
-+
-+ Certificate[] certs = session.getPeerCertificates();
-+ verifyHostName(host.trim().toLowerCase(Locale.US), (X509Certificate) certs[0]);
-+ }
-+ /**
-+ * Extract the names from the certificate and tests host matches one of them
-+ * @param host
-+ * @param cert
-+ * @throws SSLException
-+ */
-+
-+ private static void verifyHostName(final String host, X509Certificate cert)
-+ throws SSLException {
-+ // I'm okay with being case-insensitive when comparing the host we used
-+ // to establish the socket to the hostname in the certificate.
-+ // Don't trim the CN, though.
-+
-+ String cn = getCN(cert);
-+ String[] subjectAlts = getDNSSubjectAlts(cert);
-+ verifyHostName(host, cn.toLowerCase(Locale.US), subjectAlts);
-+
-+ }
-+
-+ /**
-+ * Extract all alternative names from a certificate.
-+ * @param cert
-+ * @return
-+ */
-+ private static String[] getDNSSubjectAlts(X509Certificate cert) {
-+ LinkedList subjectAltList = new LinkedList();
-+ Collection c = null;
-+ try {
-+ c = cert.getSubjectAlternativeNames();
-+ } catch (CertificateParsingException cpe) {
-+ // Should probably log.debug() this?
-+ cpe.printStackTrace();
-+ }
-+ if (c != null) {
-+ Iterator it = c.iterator();
-+ while (it.hasNext()) {
-+ List list = (List) it.next();
-+ int type = ((Integer) list.get(0)).intValue();
-+ // If type is 2, then we've got a dNSName
-+ if (type == 2) {
-+ String s = (String) list.get(1);
-+ subjectAltList.add(s);
-+ }
-+ }
-+ }
-+ if (!subjectAltList.isEmpty()) {
-+ String[] subjectAlts = new String[subjectAltList.size()];
-+ subjectAltList.toArray(subjectAlts);
-+ return subjectAlts;
-+ } else {
-+ return new String[0];
-+ }
-+
-+ }
-+ /**
-+ * Verifies
-+ * @param host
-+ * @param cn
-+ * @param subjectAlts
-+ * @throws SSLException
-+ */
-+
-+ private static void verifyHostName(final String host, String cn, String[] subjectAlts)throws SSLException{
-+ StringBuffer cnTested = new StringBuffer();
-+
-+ for (int i = 0; i < subjectAlts.length; i++){
-+ String name = subjectAlts[i];
-+ if (name != null) {
-+ name = name.toLowerCase();
-+ if (verifyHostName(host, name)){
-+ return;
-+ }
-+ cnTested.append("/").append(name);
-+ }
-+ }
-+ if (cn != null && verifyHostName(host, cn)){
-+ return;
-+ }
-+ cnTested.append("/").append(cn);
-+ throw new SSLException("hostname in certificate didn't match: <"
-+ + host + "> != <" + cnTested + ">");
-+
-+ }
-+
-+ private static boolean verifyHostName(final String host, final String cn){
-+ if (doWildCard(cn) && !isIPAddress(host)) {
-+ return matchesWildCard(cn, host);
-+ }
-+ return host.equalsIgnoreCase(cn);
-+ }
-+ private static boolean doWildCard(String cn) {
-+ // Contains a wildcard
-+ // wildcard in the first block
-+ // not an ipaddress (ip addres must explicitily be equal)
-+ // not using 2nd level common tld : ex: not for *.co.uk
-+ String parts[] = cn.split("\\.");
-+ return parts.length >= 3 &&
-+ parts[0].endsWith("*") &&
-+ acceptableCountryWildcard(cn) &&
-+ !isIPAddress(cn);
- }
-+
-+
-+ private static final Pattern IPV4_PATTERN =
-+ Pattern.compile("^(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}$");
-+
-+ private static final Pattern IPV6_STD_PATTERN =
-+ Pattern.compile("^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$");
-+
-+ private static final Pattern IPV6_HEX_COMPRESSED_PATTERN =
-+ Pattern.compile("^((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)::((?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4})*)?)$");
-+
-+
-+ private static boolean isIPAddress(final String hostname) {
-+ return hostname != null
-+ && (
-+ IPV4_PATTERN.matcher(hostname).matches()
-+ || IPV6_STD_PATTERN.matcher(hostname).matches()
-+ || IPV6_HEX_COMPRESSED_PATTERN.matcher(hostname).matches()
-+ );
-+
-+ }
-+
-+ private static boolean acceptableCountryWildcard(final String cn) {
-+ // The CN better have at least two dots if it wants wildcard action,
-+ // but can't be [*.co.uk] or [*.co.jp] or [*.org.uk], etc...
-+ // The [*.co.uk] problem is an interesting one. Should we just
-+ // hope that CA's would never foolishly allow such a
-+ // certificate to happen?
-+
-+ String[] parts = cn.split("\\.");
-+ // Only checks for 3 levels, with country code of 2 letters.
-+ if (parts.length > 3 || parts[parts.length - 1].length() != 2) {
-+ return true;
-+ }
-+ String countryCode = parts[parts.length - 2];
-+ return Arrays.binarySearch(BAD_COUNTRY_2LDS, countryCode) < 0;
-+ }
-+
-+ private static boolean matchesWildCard(final String cn,
-+ final String hostName) {
-+ String parts[] = cn.split("\\.");
-+ boolean match = false;
-+ String firstpart = parts[0];
-+ if (firstpart.length() > 1) {
-+ // server∗
-+ // e.g. server
-+ String prefix = firstpart.substring(0, firstpart.length() - 1);
-+ // skipwildcard part from cn
-+ String suffix = cn.substring(firstpart.length());
-+ // skip wildcard part from host
-+ String hostSuffix = hostName.substring(prefix.length());
-+ match = hostName.startsWith(prefix) && hostSuffix.endsWith(suffix);
-+ } else {
-+ match = hostName.endsWith(cn.substring(1));
-+ }
-+ if (match) {
-+ // I f we're in strict mode ,
-+ // [ ∗.foo.com] is not allowed to match [a.b.foo.com]
-+ match = countDots(hostName) == countDots(cn);
-+ }
-+ return match;
-+ }
-+
-+ private static int countDots(final String data) {
-+ int dots = 0;
-+ for (int i = 0; i < data.length(); i++) {
-+ if (data.charAt(i) == '.') {
-+ dots += 1;
-+ }
-+ }
-+ return dots;
-+ }
-+
-+ private static String getCN(X509Certificate cert) {
-+ // Note: toString() seems to do a better job than getName()
-+ //
-+ // For example, getName() gives me this:
-+ // 1.2.840.113549.1.9.1=#16166a756c6975736461766965734063756362632e636f6d
-+ //
-+ // whereas toString() gives me this:
-+ // EMAILADDRESS=juliusdavies@cucbc.com
-+ String subjectPrincipal = cert.getSubjectX500Principal().toString();
-+
-+ return getCN(subjectPrincipal);
-+
-+ }
-+ private static String getCN(String subjectPrincipal) {
-+ StringTokenizer st = new StringTokenizer(subjectPrincipal, ",");
-+ while(st.hasMoreTokens()) {
-+ String tok = st.nextToken().trim();
-+ if (tok.length() > 3) {
-+ if (tok.substring(0, 3).equalsIgnoreCase("CN=")) {
-+ return tok.substring(3);
-+ }
-+ }
-+ }
-+ return null;
-+ }
-
- /**
- * All instances of SSLProtocolSocketFactory are the same.
diff --git a/dev-java/commons-imaging/Manifest b/dev-java/commons-imaging/Manifest
index 5472b1ce60c6..f9c3e790ff64 100644
--- a/dev-java/commons-imaging/Manifest
+++ b/dev-java/commons-imaging/Manifest
@@ -1 +1,3 @@
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
+DIST apache-sanselan-incubating-0.97-src.tar.gz 33317875 BLAKE2B c9db6c30accc308d2c5d5977b84da118ab50b010b3728665a75dab13f9fecb70075e2d2208a62fabc57af7396f7c39b1ec498e0840e5a2c9c8de9b95d2dd597a SHA512 b7e8af01f4b4ca812313bbf573758d9c0e1355266bfb83898336b14c4b492a8979f2a593f00d53c076e83cf807a049df624491a26623cfbceb00560b748f05f2
diff --git a/dev-java/commons-imaging/commons-imaging-0.97.ebuild b/dev-java/commons-imaging/commons-imaging-0.97.ebuild
new file mode 100644
index 000000000000..6017ef9c71e8
--- /dev/null
+++ b/dev-java/commons-imaging/commons-imaging-0.97.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A minimalistic realtime charting library for Java"
+HOMEPAGE="https://commons.apache.org/proper/commons-imaging/"
+SRC_URI="https://archive.apache.org/dist/commons/sanselan/source/apache-sanselan-incubating-${PV}-src.tar.gz"
+S="${WORKDIR}/sanselan-${PV}-incubator"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test" # 5/48 failures, dunno why :(
+
+DEPEND=">=virtual/jdk-1.8:*
+ test? ( dev-java/junit:4 )"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_ENCODING="ISO-8859-1"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # Tsk, Windows developers…
+ find src/test/java -name "*.java" -exec sed -i 's:\\:/:g' {} + || die
+}
+
+src_test() {
+ local DIR="src/test/java"
+ local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4)"
+
+ local TESTS=$(find "${DIR}" -name "*Test.java" \
+ ! -name "*BaseTest.java" ! -name SanselanTest.java ! -name ByteSourceTest.java)
+ TESTS="${TESTS//src\/test\/java\/}"
+ TESTS="${TESTS//.java}"
+ TESTS="${TESTS//\//.}"
+
+ ejavac -cp "${CP}" -d "${DIR}" $(find "${DIR}" -name "*.java")
+ ejunit4 -classpath "${CP}" ${TESTS}
+}
diff --git a/dev-java/commons-imaging/commons-imaging-1.0_alpha3-r2.ebuild b/dev-java/commons-imaging/commons-imaging-1.0_alpha3-r2.ebuild
new file mode 100644
index 000000000000..73382ff1998c
--- /dev/null
+++ b/dev-java/commons-imaging/commons-imaging-1.0_alpha3-r2.ebuild
@@ -0,0 +1,36 @@
+# 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="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="1"
+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/commons-io/Manifest b/dev-java/commons-io/Manifest
index 322cd4d655c9..10661d3ab0c6 100644
--- a/dev-java/commons-io/Manifest
+++ b/dev-java/commons-io/Manifest
@@ -1 +1,2 @@
-DIST commons-io-2.11.0-sources.tar.gz 498841 BLAKE2B e45ae4400246d7469e8628f08d2f647ea670b994360c1150fe1f414beee5177e7af7c94589a5c81ce6996f2fb755441f29080ca9b69b98cb5ae1ad897f8f00b5 SHA512 e2ab8ebc9c328093a460f8f5f96c80bb45f5073ec7aaa0beabdcdeac2e97324292eab2e2cb8b64d8e78b2c5d89048ba84e50daa0965dffcbe2fd0da7ab789ee3
+DIST commons-io-2.15.1-src.tar.gz 618534 BLAKE2B 6fc539f28ce610e9947bf529154c79f6924d74872d6f03561d477feba6013e48d74cb5097c851173b690b27052d59c38a9ca4048c1ed54736d29d962746182d6 SHA512 809c7aa66354f2e35fd23f295c4e2f325596ee7f842b7f63f6acc3bd9377c17d4dd276ce62c477fff8d51d0d660e9addbc068270a876097cbecfe3e64f57f385
+DIST commons-io-2.15.1-src.tar.gz.asc 488 BLAKE2B 5fb3128a63d2fbc74cd96bf00919cca0fbf7b0a2cbd48287c8495c0fdb78c9df53dcc06a443b626b52ff3f9c32c55425ba619a4f61de542f3dd912916f3b2469 SHA512 1d358d3acd88816fb4d95746d8e4bd4351062cf35caad8c6f4d2da42c7974a4a583db4f7d98d8768ca7fcb4900172b869c6d6f714b8df71bb214634f83c7a55a
diff --git a/dev-java/commons-io/commons-io-2.11.0-r1.ebuild b/dev-java/commons-io/commons-io-2.11.0-r1.ebuild
deleted file mode 100644
index 29bd88fca479..000000000000
--- a/dev-java/commons-io/commons-io-2.11.0-r1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2023 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 https://mirror.dkm.cz/apache//commons/io/source/commons-io-2.11.0-src.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos" --ebuild commons-io-2.11.0.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="commons-io:commons-io:2.11.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Utility classes, stream implementations, file filters, and much more"
-HOMEPAGE="https://commons.apache.org/proper/commons-io/"
-SRC_URI="mirror://apache/commons/io/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-# Compile dependencies
-# POM: pom.xml
-# test? com.google.jimfs:jimfs:1.2 -> !!!groupId-not-found!!!
-# test? org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
-# test? org.junit-pioneer:junit-pioneer:1.4.2 -> !!!groupId-not-found!!!
-# test? org.junit.jupiter:junit-jupiter:5.7.2 -> !!!groupId-not-found!!!
-# test? org.mockito:mockito-inline:3.11.2 -> !!!artifactId-not-found!!!
-# test? org.openjdk.jmh:jmh-core:1.32 -> !!!groupId-not-found!!!
-# test? org.openjdk.jmh:jmh-generator-annprocess:1.32 -> !!!groupId-not-found!!!
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- >=dev-java/commons-lang-3.12.0:3.6
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-# some test dependencies are missing
-RESTRICT="test"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="iso-8859-1"
-
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="commons-lang-3.6"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.io"
diff --git a/dev-java/commons-io/commons-io-2.15.1.ebuild b/dev-java/commons-io/commons-io-2.15.1.ebuild
new file mode 100644
index 000000000000..99a17eafd8b9
--- /dev/null
+++ b/dev-java/commons-io/commons-io-2.15.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# No tests, #839681
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="commons-io:commons-io:${PV}"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Utility classes, stream implementations, file filters, and much more"
+HOMEPAGE="https://commons.apache.org/proper/commons-io/"
+SRC_URI="mirror://apache/commons/io/source/${P}-src.tar.gz
+ verify-sig? ( https://archive.apache.org/dist/commons/io/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+RESTRICT="test" #839681
+
+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:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.io"
+JAVA_ENCODING="iso-8859-1"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-io/metadata.xml b/dev-java/commons-io/metadata.xml
index 6021501589e0..571ffcd30f0e 100644
--- a/dev-java/commons-io/metadata.xml
+++ b/dev-java/commons-io/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">apache/commons-io</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/commons-lang/Manifest b/dev-java/commons-lang/Manifest
index 070187d939f5..1ba8bac86a69 100644
--- a/dev-java/commons-lang/Manifest
+++ b/dev-java/commons-lang/Manifest
@@ -1,2 +1,4 @@
DIST commons-lang-3.13.0-sources.tar.gz 1133483 BLAKE2B bf2239b03129f3cc6104c8ff66ac9d0c2dc7367111e4a8c4d76b5e2773c56a17607e28b24f5d7283b2119c3421f1526dac4ef98ed16da9e8bf9d033fbb7a4b80 SHA512 6fca0ce86aea84458021360bac3f6775135a1a5c1826194921e2d4ead7c12f6ac560e7c3fc240112f862aaee24be8754c37dd867f45e9449cde4a388018d8691
DIST commons-lang-3.13.0-sources.tar.gz.asc 488 BLAKE2B ecfc26f598b4a683a14803f5eee42f9b9ebfc7c02dac5b9fdc72ef97839e80ac648489da4e136f94044852fb09eff05bc08021cf1678ea9c19065a5b69c1375f SHA512 4d9dca040d9f06791f7f67ad7313e5a2c6bc19a07a62ae4dbcd10712afbcc51e926258938a54f0507d8cd1486041b46b29ed070b488b55833c30cbb6786c4145
+DIST commons-lang-3.14.0-src.tar.gz 1153353 BLAKE2B 78d116864e488baf5c0c241b2304244f207c7b56b2f72006648de217d407d7c577a43ed89d78b0c868a2842eb1985c842e214078cc8e55bc5d93fac5553fa2ed SHA512 1ee4176c3588c11594a79f416a1f34b063cddb10c2124a37640fee48e5d8135091573002b6bf1eda5a60a324c1125665dadc93f9bfda32c9270c35113b6e1bea
+DIST commons-lang-3.14.0-src.tar.gz.asc 488 BLAKE2B 3ef9b7529a1681e2687f533bf8d45a8394f6633e0a56e8e17ae63b2f8631f94c854b35e50b0f780908ffdcd0f8a8d99d8132aaa1ade5e932ee1ff56181b1ce77 SHA512 025673c12587970de5ebb62aad0d2d34cdbd57c575ebb6c83359b975b3d1ec50ff3caa544395ad04aecd59df454a12a769025635aa55d860195e39086ddcf47e
diff --git a/dev-java/commons-lang/commons-lang-3.14.0.ebuild b/dev-java/commons-lang/commons-lang-3.14.0.ebuild
new file mode 100644
index 000000000000..51add8c5a5af
--- /dev/null
+++ b/dev-java/commons-lang/commons-lang-3.14.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# No tests because of missing eclass support of junit-jupiter, #902723
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.commons:commons-lang3:${PV}"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Commons components to manipulate core java classes"
+HOMEPAGE="https://commons.apache.org/proper/commons-lang/"
+SRC_URI="https://archive.apache.org/dist/commons/lang/source/${PN}3-${PV}-src.tar.gz -> ${P}-src.tar.gz
+ verify-sig? ( https://archive.apache.org/dist/commons/lang/source/${PN}3-${PV}-src.tar.gz.asc -> ${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${PN}3-${PV}-src"
+
+LICENSE="Apache-2.0"
+SLOT="3.6"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.lang3"
+JAVA_ENCODING="ISO-8859-1"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-net/Manifest b/dev-java/commons-net/Manifest
index f32a1d4c9b0e..a5f5fc2ada38 100644
--- a/dev-java/commons-net/Manifest
+++ b/dev-java/commons-net/Manifest
@@ -1,2 +1,4 @@
+DIST commons-net-3.10.0-src.tar.gz 450082 BLAKE2B 0df46b21ca298393500494e41d918b3fc6e700485c4d9dfb2bab61d8f834a4f44dd881c464c4008731deec9fc82ca36e0442022f0942b3e59e384a2b44329660 SHA512 d9d80255feddfb434d3baa629aa9e6d8feffd530c5e3172106fec55bbc986f6423a46dc9e737a1bb7020c62447229e6b83d0b7f9582d041e1def423536cc92dd
+DIST commons-net-3.10.0-src.tar.gz.asc 488 BLAKE2B 31a15e952c55079e595f33be1730126b85c669b481c649e401cb4617a5489fc3e3025e8c172f8193b190b16fe55d9c78c171d16d4adf7fa1a8e71648e295bc77 SHA512 ab27b1fa2c02d79eff26f93697fafc54f22a7368db631bb6f7173b8702cda10836ac8b656df987135fe5c1d39a557840fefb0355d8d52f0e4815808d4938de18
DIST commons-net-3.9.0-src.tar.gz 440911 BLAKE2B d7f24bff2e36d727bc12bf700b5a5ba9bf6b34a1d63cf892124b81ced113e4b66ebdb8b1eb54fbac33b76efcfc7333150c8d5ce87039cc7204ebf16bb64c8044 SHA512 a2d4ef4937701f28304fdb9a39a0d4a8fdd5fd7ae84c6d647a6b9e05eee68cb4fde8ae9eedd94f45fdc0194d160dd9f64b3c1cfbdd8bcea2214e9826ace32877
DIST commons-net-3.9.0-src.tar.gz.asc 488 BLAKE2B 7999c63348fdb63de670cf1ace3c928796c663aa960494e0d4a398529b19c4834e9c3d2d8dbdb13e2ba392909e1761458c99332f35e39e0efb0f212b3c0f32de SHA512 72da1fe78bc6c0dea70d171c3c60c7eee8387bb28244f8b67bf38b66c3e7f2c183e4413c3f090a5b1a591ce64a6d43434093425f44c10a9dd03f0b354306e017
diff --git a/dev-java/commons-net/commons-net-3.10.0.ebuild b/dev-java/commons-net/commons-net-3.10.0.ebuild
new file mode 100644
index 000000000000..d49ece23e44e
--- /dev/null
+++ b/dev-java/commons-net/commons-net-3.10.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# No tests because of missing eclass support of junit-jupiter, #902723
+JAVA_PKG_IUSE="doc examples source"
+MAVEN_ID="commons-net:commons-net:${PV}"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Client-oriented Java library to implement many Internet protocols"
+HOMEPAGE="https://commons.apache.org/proper/commons-net/"
+SRC_URI="mirror://apache/commons/net/source/commons-net-${PV}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/net/source/commons-net-${PV}-src.tar.gz.asc )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+
+DOCS=(
+ CONTRIBUTING.md
+ NOTICE.txt
+ README.md
+ RELEASE-NOTES.txt
+)
+
+S="${WORKDIR}/${P}-src"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.net"
+JAVA_ENCODING="iso-8859-1"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-validator/Manifest b/dev-java/commons-validator/Manifest
index 8b0c5a34c397..05a4e983603d 100644
--- a/dev-java/commons-validator/Manifest
+++ b/dev-java/commons-validator/Manifest
@@ -1 +1,3 @@
DIST commons-validator-1.7-src.tar.gz 289870 BLAKE2B 576c6ac00187b67618eee251a69e7166cd817bb6184f4cf138a226539fc100a1a4e32ebc4ef6cea567aff581d11c63a817a9dad4836142de4d9a3b313d59a31b SHA512 4007872fda856e9e154f325270748081920d21a716143389713706ca0e5a8ec3c88b9b978d75801a5926723764a81f1dbfd77a8fd4b361b16cd65e84cf47a868
+DIST commons-validator-1.8.0-src.tar.gz 291779 BLAKE2B 0a0a0f9019b39ff1899be2f65e5e6750e12ed7b6833cc7e03279b5bedd3b3c3e02561891ba8885b50c356d103dabe207bf18adf04d8e6ba627397c5b81656603 SHA512 f0c2662e5db0bbc6ee9d05d5508caa02bf45b7c7ada92f4a97a867848f3d704b35552d47859a46567705194248e7b88cd8df8f082939012ab60b6aed446e36b2
+DIST commons-validator-1.8.0-src.tar.gz.asc 488 BLAKE2B 9e9b7f54f430c5a42de8af6d8c55a0f4029e3a41f0bc41efb08863a9470f0935ad23d6ba6757cf4d5e28c11626e15ae392807ae9c33529a3feb15b90a2316ca5 SHA512 f04709f64026560bfd2f5cc51ebf373d44359452f41af73b53d105059a6760786f49d89837c624cd133875de0a37358af1cf587a6db567e7cc76ce823efa9efd
diff --git a/dev-java/commons-validator/commons-validator-1.8.0.ebuild b/dev-java/commons-validator/commons-validator-1.8.0.ebuild
new file mode 100644
index 000000000000..293c25a82599
--- /dev/null
+++ b/dev-java/commons-validator/commons-validator-1.8.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-validator:commons-validator:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Commons component to validate user input, or data input"
+HOMEPAGE="https://commons.apache.org/proper/commons-validator/"
+SRC_URI="mirror://apache/commons/validator/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/validator/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+RESTRICT="test" #839681
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+CP_DEPEND="
+ dev-java/commons-beanutils:1.7
+ dev-java/commons-digester:2.1
+ dev-java/commons-logging:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/commons-validator/metadata.xml b/dev-java/commons-validator/metadata.xml
index 7a495722507b..b356ec45e875 100644
--- a/dev-java/commons-validator/metadata.xml
+++ b/dev-java/commons-validator/metadata.xml
@@ -7,6 +7,9 @@
</maintainer>
<upstream>
<bugs-to>https://issues.apache.org/jira/projects/VALIDATOR/issues/</bugs-to>
- <changelog>http://commons.apache.org/proper/commons-validator/changes-report.html</changelog>
+ <changelog>
+ http://commons.apache.org/proper/commons-validator/changes-report.html
+ </changelog>
+ <remote-id type="github">apache/commons-validator</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/commons-vfs/commons-vfs-2.0-r2.ebuild b/dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild
index 6a24d0bb811e..418ad23cc41f 100644
--- a/dev-java/commons-vfs/commons-vfs-2.0-r2.ebuild
+++ b/dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
JAVA_PKG_IUSE="source"
@@ -9,14 +9,15 @@ inherit java-pkg-2 java-ant-2
DESCRIPTION="A single API for accessing various different file systems"
HOMEPAGE="https://commons.apache.org/vfs/"
-SRC_URI="mirror://apache/commons/vfs/source/${P}-src.tar.gz"
+SRC_URI="https://archive.apache.org/dist/commons/vfs/source/${P}-src.tar.gz"
+S="${WORKDIR}/${P}/core"
LICENSE="Apache-2.0"
SLOT="2"
KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux"
CDEPEND="
- dev-java/ant-core:0
+ dev-java/ant:0
dev-java/commons-collections:0
dev-java/commons-logging:0
dev-java/commons-net:0
@@ -34,10 +35,8 @@ PATCHES=(
"${FILESDIR}"/${P}-incompatibility.patch
)
-S="${WORKDIR}/${P}/core"
-
EANT_GENTOO_CLASSPATH="
- ant-core
+ ant
commons-collections
commons-logging
commons-net
diff --git a/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild b/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild
index 1cc5901e7454..89a267f52c52 100644
--- a/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild
+++ b/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -15,7 +15,7 @@ S="${WORKDIR}/${PN%lru}${P}"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm ~arm64"
CP_DEPEND="dev-java/jsr305:0"
diff --git a/dev-java/conversant-disruptor/metadata.xml b/dev-java/conversant-disruptor/metadata.xml
index 75321cfb5598..44a1037d7ce3 100644
--- a/dev-java/conversant-disruptor/metadata.xml
+++ b/dev-java/conversant-disruptor/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">conversant/disruptor</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/coursier-bin/Manifest b/dev-java/coursier-bin/Manifest
index d8d59c15783b..0876b79d106f 100644
--- a/dev-java/coursier-bin/Manifest
+++ b/dev-java/coursier-bin/Manifest
@@ -1,2 +1,3 @@
-DIST coursier-bin-2.1.5.gz 20679081 BLAKE2B 8ab0d971949b7a5527c82686fab9d62f6dc360ce7ff72bfc4d5a123401e577f17b2392e9a919aebe1c988a477a273d77cd3eb86dcb7b73c0c1a609cccac77eea SHA512 6397f13f82c91079575f58ccbd35e788a2760179cf5c11a986962e3bbe9c669b6e06730a6ff12e0aeb26198df4448e822e927a5d6bd031f67dab8072835979f6
DIST coursier-bin-2.1.7.gz 20790038 BLAKE2B 6e362ae784fcb7007f0adc58604d72dba33cb37f0726883b69f9f298e38759e3acea0232edac30c7cb34c5b837598e6b2c0947345938bce196f7a326a4aa3f0e SHA512 b6df4d7ad89f735989dfb4bb8cacbdf1559dd5ea4f494b7e72df544bd24a3a208738cf37d1cfd7944bb6aebc0e1b6d32b1bfd48c9f333cf54919a055afd5348e
+DIST coursier-bin-2.1.8.gz 20863902 BLAKE2B 13ce0a1aa6dd2c1272567a76f3a762e31d9d6794e034e033d5d5accd0b6c534702fc62b5cab83070bb1081c7072ad7a04be86c38b4929d75f2d1f050f320820d SHA512 9cc8f13ecd0c166d46aaeeedb9279eb2885a7edac24c5b106ca30968c4c6fc5f47efe3a38e7aa6864dee517a7bc2cfba71fdd32741d295887bdb62594832bb9e
+DIST coursier-bin-2.1.9.gz 20870390 BLAKE2B 720698e6c55a8c070d02f01ec528bab06f397b3c580fa3e533a45cf0073d8b9caf506cfff10d1b68eb9348c8b0da9abab9e7fb183f0561b62a82a96d21d35f5e SHA512 102c351aa0647fe5cd9d00ee164c1cebbcd6bd133a11bdfd653f70a5347da02e32ba74d5b51ea425e9189bb7113ef16c3902219bfa1ef0172bac7955712031c6
diff --git a/dev-java/coursier-bin/coursier-bin-2.1.5.ebuild b/dev-java/coursier-bin/coursier-bin-2.1.8.ebuild
index 4c77d05f1d13..536fb0da7de1 100644
--- a/dev-java/coursier-bin/coursier-bin-2.1.5.ebuild
+++ b/dev-java/coursier-bin/coursier-bin-2.1.8.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
diff --git a/dev-java/coursier-bin/coursier-bin-2.1.9.ebuild b/dev-java/coursier-bin/coursier-bin-2.1.9.ebuild
new file mode 100644
index 000000000000..af4c8329d0bf
--- /dev/null
+++ b/dev-java/coursier-bin/coursier-bin-2.1.9.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+get_orig_coursier_pv() {
+ local orig_pv=$(ver_rs 3 -)
+ orig_pv=${orig_pv/rc/RC}
+ orig_pv=${orig_pv/pre/M}
+ echo "${orig_pv}"
+}
+
+DESCRIPTION="Java/Scala artifact fetching, bundling and deploying"
+HOMEPAGE="https://get-coursier.io/"
+SRC_URI="https://github.com/coursier/coursier/releases/download/v$(get_orig_coursier_pv)/cs-x86_64-pc-linux.gz -> ${P}.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+S="${WORKDIR}"
+
+RDEPEND=">=virtual/jre-8"
+
+QA_FLAGS_IGNORED="usr/bin/coursier"
+QA_TEXTRELS="usr/bin/coursier"
+
+src_install() {
+ newbin "${P}" coursier
+}
diff --git a/dev-java/cpptasks/cpptasks-1.0_beta5-r1.ebuild b/dev-java/cpptasks/cpptasks-1.0_beta5-r2.ebuild
index 38a0c3f54a50..425390046c7e 100644
--- a/dev-java/cpptasks/cpptasks-1.0_beta5-r1.ebuild
+++ b/dev-java/cpptasks/cpptasks-1.0_beta5-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -8,7 +8,7 @@ JAVA_PKG_IUSE="doc examples source test"
inherit java-pkg-2 java-ant-2
DESCRIPTION="Ant-tasks to compile various source languages and produce executables"
-HOMEPAGE="http://ant-contrib.sourceforge.net/"
+HOMEPAGE="https://ant-contrib.sourceforge.net/"
SRC_URI="mirror://sourceforge/ant-contrib/ant-contrib/${P/_/-}/${P/_beta/b}.tar.gz"
S="${WORKDIR}/${P/_beta/b}"
@@ -17,7 +17,7 @@ SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CP_DEPEND="
- dev-java/ant-core:0
+ >=dev-java/ant-1.10.14:0
dev-java/xerces:2
"
@@ -25,7 +25,7 @@ DEPEND="
>=virtual/jdk-1.8:*
${CP_DEPEND}
test? (
- dev-java/ant-junit:0
+ >=dev-java/ant-1.10.14:0[junit]
dev-java/junit:0
)
"
diff --git a/dev-java/eclipse-ecj/Manifest b/dev-java/eclipse-ecj/Manifest
index b68a29378f06..3f8812e6ada6 100644
--- a/dev-java/eclipse-ecj/Manifest
+++ b/dev-java/eclipse-ecj/Manifest
@@ -1,3 +1,6 @@
DIST ecjsrc-4.15.jar 2166228 BLAKE2B 794e0ba1a19b325e2dd8ad0b288ccbe04866627670b50d39dd327c13fe1fac56200eb3a6c1c3d1af043cad795508b9b714a5243049671414b5a62a97725d3297 SHA512 ada55b2522cf26570f0cd43f415eb5cf20e6840f83dadc72e1ae474ebf10eadca73f9fa3d1db51e13fd2762c38cd3e3567db3c7840d43ae3d8665ebe35e1889d
+DIST ecjsrc-4.20.jar 2255761 BLAKE2B 42e16e1bd3d90b8d9bf3e57f83b3e06f2857a20db3e3ac065ce39e95fc47e75de33186115c36dede691bc37fd55fa8123f2220d13f3d5819404f5de702b10fd2 SHA512 fb27c0a37ed5cdfdcdbc904d067bfdd0477ddfd873a6cd8477d3b473734fd0e37329f0e9ab85dc5f89994d68d9886a488bd88568bc00e25f54c1a5a468dc1384
DIST ecjsrc-4.26.jar 2347137 BLAKE2B 22e627178fe35f34cee7ba63e740ef2699bca691d460c81e97c2f18c197042cc0d901eea988331b3fa2ac7daa87daef9ee90bc1e62901935a6f2f3fe5f1e8534 SHA512 e53534160e6a2cdc8c5db7caec617d5671eb59954a86b9dcb36a514024c3205167c8416560796ce61d1aa188f551660f3bfd8eab46fefe9111c8f0b7a977342f
+DIST ecjsrc-4.27.jar 2301849 BLAKE2B 77f35d1a9f36086e8515dc9437894b84c88fd440bd48b5248b141191bc04babfcf1af288643ed21e41cb054bdcfa94125a7eb139cbec9ead97e366c65c1dbe95 SHA512 689fe9ed2327f1d0e89fd13c3543369e0e13d7f15f521fc7667352e7f8d7f0b48107bc180ac16cfad375449cc2b61de74bc8ca56c95cab9ef172260a9d3a530b
DIST ecjsrc-4.30.jar 2330181 BLAKE2B 7f3ba7f8dbfcaea9f8bbcdb8161ae8f164e2bf3469cf2242b6b7df5d375c98322f810b9c6de7209f622740a2cc61704915d255559bd376bf158b114e30a17d40 SHA512 ddc1569082fad0dcf91a9d41d5ef5f2f694f007e1378af5f5f28893aeb91e99acef91af59c762010eba071fa8b8b8a9d367b08e23f91b8c73ceacc6e6150bb23
+DIST ecjsrc-4.31.jar 2347993 BLAKE2B edb1a525646fc3152661a6583ab5c50a1dd7f06dac0b7cdae0913843e0ed6ef2c9862889351557857140c79c479505aeca154958b649d05ace6a5b83f6ccac45 SHA512 3e72ae5e5209dd80f7b3f208aeb0a6eece28ab416c56eedd590c67724c6a905b39b8f27a41394e3cf6a96acc16a9c7dd91d12df9651bc289839648036ac2d430
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.15-r1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.15-r1.ebuild
new file mode 100644
index 000000000000..63723662da43
--- /dev/null
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.15-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple prefix
+
+DMF="R-${PV}-202003050155"
+
+DESCRIPTION="Eclipse Compiler for Java"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
+SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
+S="${WORKDIR}"
+
+LICENSE="EPL-1.0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+SLOT="4.15"
+
+BDEPEND="
+ app-arch/unzip
+ app-arch/zip
+"
+COMMON_DEP="app-eselect/eselect-java"
+DEPEND="${COMMON_DEP}
+ >=dev-java/ant-1.10.14:0
+ >=virtual/jdk-11:*"
+RDEPEND="${COMMON_DEP}
+ !dev-java/ant-eclipse-ecj:4.15
+ >=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch"
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_JAR_FILENAME="ecj.jar"
+JAVA_LAUNCHER_FILENAME="ecj-${SLOT}"
+JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main"
+JAVA_RESOURCE_DIRS="res"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ find org META-INF -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ insinto /usr/share/java-config-2/compiler
+ doins "${FILESDIR}/ecj-${SLOT}"
+ eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
+}
+
+pkg_postinst() {
+ einfo "To select between slots of ECJ..."
+ einfo " # eselect ecj"
+
+ eselect ecj update ecj-${SLOT}
+}
+
+pkg_postrm() {
+ eselect ecj update
+}
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.15.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.15.ebuild
deleted file mode 100644
index fbd6934fc695..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.15.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="ecj"
-DMF="R-${PV}-202003050155"
-
-DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="https://www.eclipse.org/"
-SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
-SLOT="4.15"
-IUSE="+ant"
-
-COMMON_DEP="
- app-eselect/eselect-java
- dev-java/ant-core:0"
-RDEPEND="${COMMON_DEP}
- virtual/jre"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-11
- app-arch/unzip"
-PDEPEND="
- ant? ( ~dev-java/ant-eclipse-ecj-${PV} )"
-
-JAVA_PKG_WANT_SOURCE="1.8"
-JAVA_PKG_WANT_TARGET="1.8"
-JAVA_JAR_FILENAME="${MY_PN}.jar"
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-S="${WORKDIR}"
-
-# See https://bugs.eclipse.org/bugs/show_bug.cgi?id=479134 for details
-src_prepare() {
- default
-
- # These have their own package.
- rm org/eclipse/jdt/core/JDTCompilerAdapter.java || die
- rm -r org/eclipse/jdt/internal/antadapter || die
-
- # JavaCore is not distributed in the jar
- sed -i -e '/import org.eclipse.jdt.core.JavaCore;/d' \
- -e 's|JavaCore.getOptions()||g' \
- org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- find org META-INF -type f ! -name "*.java" | xargs jar uvf "${JAVA_JAR_FILENAME}" || die "jar update failed"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${MY_PN}-${SLOT} --main \
- org.eclipse.jdt.internal.compiler.batch.Main
-}
-
-pkg_postinst() {
- einfo "To select between slots of ECJ..."
- einfo " # eselect ecj"
-
- eselect ecj update ecj-${SLOT}
-}
-
-pkg_postrm() {
- eselect ecj update
-}
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild
new file mode 100644
index 000000000000..9e78dd4ea2d0
--- /dev/null
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.20.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple prefix
+
+DMF="R-${PV/_rc/RC}-202106111600"
+
+DESCRIPTION="Eclipse Compiler for Java"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
+SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar"
+
+LICENSE="EPL-1.0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+SLOT="4.20"
+
+BDEPEND="app-arch/unzip"
+COMMON_DEP="app-eselect/eselect-java"
+DEPEND="${COMMON_DEP}
+ dev-java/ant:0
+ >=virtual/jdk-11:*"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-1.8:*"
+
+HTML_DOCS=( about.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch"
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_JAR_FILENAME="ecj.jar"
+JAVA_LAUNCHER_FILENAME="ecj-${SLOT}"
+JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main"
+JAVA_RESOURCE_DIRS="res"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ # Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
+ rm META-INF/ECLIPSE_* || die
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ find -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ insinto /usr/share/java-config-2/compiler
+ doins "${FILESDIR}/ecj-${SLOT}"
+ eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
+}
+
+pkg_postinst() {
+ einfo "To select between slots of ECJ..."
+ einfo " # eselect ecj"
+
+ eselect ecj update ecj-${SLOT}
+}
+
+pkg_postrm() {
+ eselect ecj update
+}
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild
new file mode 100644
index 000000000000..0a750385f6ab
--- /dev/null
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.26-r2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple prefix
+
+DMF="R-${PV}-202211231800"
+
+DESCRIPTION="Eclipse Compiler for Java"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
+SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
+S="${WORKDIR}"
+
+LICENSE="EPL-1.0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+SLOT="4.26"
+
+BDEPEND="
+ app-arch/unzip
+ app-arch/zip
+"
+COMMON_DEP="app-eselect/eselect-java"
+DEPEND="${COMMON_DEP}
+ >=dev-java/ant-1.10.14:0
+ >=virtual/jdk-17:*"
+RDEPEND="${COMMON_DEP}
+ !dev-java/ant-eclipse-ecj:4.26
+ >=virtual/jre-11:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch"
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_JAR_FILENAME="ecj.jar"
+JAVA_LAUNCHER_FILENAME="ecj-${SLOT}"
+JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main"
+JAVA_RESOURCE_DIRS="res"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ find org META-INF -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ #925083
+ # Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
+ zip -d ecj.jar "META-INF/ECLIPSE_.RSA" || die "Failed to remove ECLIPSE_.RSA"
+ zip -d ecj.jar "META-INF/ECLIPSE_.SF" || die "Failed to remove ECLIPSE_.SF"
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ insinto /usr/share/java-config-2/compiler
+ doins "${FILESDIR}/ecj-${SLOT}"
+ eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
+}
+
+pkg_postinst() {
+ einfo "To select between slots of ECJ..."
+ einfo " # eselect ecj"
+
+ eselect ecj update ecj-${SLOT}
+}
+
+pkg_postrm() {
+ eselect ecj update
+}
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.26.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.26.ebuild
deleted file mode 100644
index 4ad6e3222bb1..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.26.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="ecj"
-DMF="R-${PV}-202211231800"
-
-DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="https://www.eclipse.org/"
-SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
-SLOT="4.26"
-IUSE="+ant"
-
-COMMON_DEP="
- app-eselect/eselect-java
- dev-java/ant-core:0"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-11:*"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-17:*
- app-arch/unzip"
-PDEPEND="
- ant? ( ~dev-java/ant-eclipse-ecj-${PV} )"
-
-JAVA_JAR_FILENAME="${MY_PN}.jar"
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-S="${WORKDIR}"
-
-# See https://bugs.eclipse.org/bugs/show_bug.cgi?id=479134 for details
-src_prepare() {
- default
-
- # These have their own package.
- rm org/eclipse/jdt/core/JDTCompilerAdapter.java || die
- rm -r org/eclipse/jdt/internal/antadapter || die
-
- # JavaCore is not distributed in the jar
- sed -i -e '/import org.eclipse.jdt.core.JavaCore;/d' \
- -e 's|JavaCore.getOptions()||g' \
- org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- find org META-INF -type f ! -name "*.java" | xargs jar uvf "${JAVA_JAR_FILENAME}" || die "jar update failed"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${MY_PN}-${SLOT} --main \
- org.eclipse.jdt.internal.compiler.batch.Main
-}
-
-pkg_postinst() {
- einfo "To select between slots of ECJ..."
- einfo " # eselect ecj"
-
- eselect ecj update ecj-${SLOT}
-}
-
-pkg_postrm() {
- eselect ecj update
-}
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.27.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.27.ebuild
new file mode 100644
index 000000000000..590dc3324bcb
--- /dev/null
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.27.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+# 3.36.0 according to
+# https://github.com/eclipse-jdt/eclipse.jdt.core/blob/R4_30/org.eclipse.jdt.core.compiler.batch/pom.xml#L20
+MAVEN_ID="org.eclipse.jdt:org.eclipse.jdt.core.compiler.batch:3.33.0"
+
+inherit java-pkg-2 java-pkg-simple prefix
+
+DMF="R-${PV/_rc/RC}-202303020300"
+
+DESCRIPTION="Eclipse Compiler for Java"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
+SRC_URI="https://archive.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar"
+
+LICENSE="EPL-1.0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+SLOT="4.27"
+
+BDEPEND="app-arch/unzip"
+COMMON_DEP="app-eselect/eselect-java"
+DEPEND="${COMMON_DEP}
+ dev-java/ant:0
+ >=virtual/jdk-17:*"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-11:*"
+
+HTML_DOCS=( about.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch"
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_JAR_FILENAME="ecj.jar"
+JAVA_LAUNCHER_FILENAME="ecj-${SLOT}"
+JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main"
+JAVA_RESOURCE_DIRS="res"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ # Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
+ rm META-INF/ECLIPSE_* || die
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ find -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ insinto /usr/share/java-config-2/compiler
+ doins "${FILESDIR}/ecj-${SLOT}"
+ eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
+}
+
+pkg_postinst() {
+ einfo "To select between slots of ECJ..."
+ einfo " # eselect ecj"
+
+ eselect ecj update ecj-${SLOT}
+}
+
+pkg_postrm() {
+ eselect ecj update
+}
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.30.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild
index 4dcc76c35f8f..b87cee1c3b1a 100644
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.30.ebuild
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.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
@@ -13,12 +13,12 @@ inherit java-pkg-2 java-pkg-simple prefix
DMF="R-${PV/_rc/RC}-202312010110"
DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="https://www.eclipse.org/"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
SRC_URI="https://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar"
S="${WORKDIR}"
LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
SLOT="4.30"
BDEPEND="
@@ -29,7 +29,7 @@ COMMON_DEP="app-eselect/eselect-java"
# ElementsImpl9.java:206: error:
# method does not override or implement a method from a supertype
DEPEND="${COMMON_DEP}
- dev-java/ant-core:0
+ >=dev-java/ant-1.10.14:0
>=virtual/jdk-21:*"
# Parser.java:1095: error:
# pattern matching in instanceof is not supported in -source 11
@@ -39,7 +39,7 @@ RDEPEND="${COMMON_DEP}
DOCS=( org/eclipse/jdt/core/README.md )
JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch"
-JAVA_CLASSPATH_EXTRA="ant-core"
+JAVA_CLASSPATH_EXTRA="ant"
JAVA_JAR_FILENAME="ecj.jar"
JAVA_LAUNCHER_FILENAME="ecj-${SLOT}"
JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main"
diff --git a/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild
new file mode 100644
index 000000000000..44e5c0c826be
--- /dev/null
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+# 3.36.0 according to
+# https://github.com/eclipse-jdt/eclipse.jdt.core/blob/R4_30/org.eclipse.jdt.core.compiler.batch/pom.xml#L20
+MAVEN_ID="org.eclipse.jdt:org.eclipse.jdt.core.compiler.batch:3.37.0"
+
+inherit java-pkg-2 java-pkg-simple prefix
+
+DMF="R-${PV/_rc/RC}-202402290520"
+
+DESCRIPTION="Eclipse Compiler for Java"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
+SRC_URI="https://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV/_rc/RC}.jar"
+S="${WORKDIR}"
+
+LICENSE="EPL-1.0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+SLOT="4.31"
+
+BDEPEND="app-arch/unzip"
+COMMON_DEP="app-eselect/eselect-java"
+# ElementsImpl9.java:206: error:
+# method does not override or implement a method from a supertype
+DEPEND="${COMMON_DEP}
+ >=dev-java/ant-1.10.14:0
+ >=virtual/jdk-21:*"
+# Parser.java:1095: error:
+# pattern matching in instanceof is not supported in -source 11
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-17:*"
+
+DOCS=( org/eclipse/jdt/core/README.md )
+PATCHES=( "${FILESDIR}/eclipse-ecj-4.31-java21.patch" )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.core.compiler.batch"
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_JAR_FILENAME="ecj.jar"
+JAVA_LAUNCHER_FILENAME="ecj-${SLOT}"
+JAVA_MAIN_CLASS="org.eclipse.jdt.internal.compiler.batch.Main"
+JAVA_RESOURCE_DIRS="res"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+
+ # Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
+ rm META-INF/ECLIPSE_* || die
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ find -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ insinto /usr/share/java-config-2/compiler
+ doins "${FILESDIR}/ecj-${SLOT}"
+ eprefixify "${ED}"/usr/share/java-config-2/compiler/ecj-${SLOT}
+}
+
+pkg_postinst() {
+ einfo "To select between slots of ECJ..."
+ einfo " # eselect ecj"
+
+ eselect ecj update ecj-${SLOT}
+}
+
+pkg_postrm() {
+ eselect ecj update
+}
diff --git a/dev-java/ant-eclipse-ecj/files/ecj-4.15 b/dev-java/eclipse-ecj/files/ecj-4.15
index f943dedcc19b..f943dedcc19b 100644
--- a/dev-java/ant-eclipse-ecj/files/ecj-4.15
+++ b/dev-java/eclipse-ecj/files/ecj-4.15
diff --git a/dev-java/eclipse-ecj/files/ecj-4.20 b/dev-java/eclipse-ecj/files/ecj-4.20
new file mode 100644
index 000000000000..c6ecf2c0deeb
--- /dev/null
+++ b/dev-java/eclipse-ecj/files/ecj-4.20
@@ -0,0 +1,7 @@
+JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.20"
+PACKAGE="=dev-java/eclipse-ecj-4.20*"
+SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13 14 15 16 17 18 19"
+SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13 14 15 16 17 18 19"
+ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
+ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.20"
+GENERATION="2"
diff --git a/dev-java/ant-eclipse-ecj/files/ecj-4.26 b/dev-java/eclipse-ecj/files/ecj-4.26
index 950088453264..950088453264 100644
--- a/dev-java/ant-eclipse-ecj/files/ecj-4.26
+++ b/dev-java/eclipse-ecj/files/ecj-4.26
diff --git a/dev-java/eclipse-ecj/files/ecj-4.27 b/dev-java/eclipse-ecj/files/ecj-4.27
new file mode 100644
index 000000000000..29fb3b51444e
--- /dev/null
+++ b/dev-java/eclipse-ecj/files/ecj-4.27
@@ -0,0 +1,7 @@
+JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.27"
+PACKAGE="=dev-java/eclipse-ecj-4.27*"
+SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13 14 15 16 17 18 19"
+SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13 14 15 16 17 18 19"
+ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
+ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.27"
+GENERATION="2"
diff --git a/dev-java/eclipse-ecj/files/ecj-4.31 b/dev-java/eclipse-ecj/files/ecj-4.31
new file mode 100644
index 000000000000..b5ed4e32a326
--- /dev/null
+++ b/dev-java/eclipse-ecj/files/ecj-4.31
@@ -0,0 +1,7 @@
+JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.31"
+PACKAGE="=dev-java/eclipse-ecj-4.31*"
+SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13 14 15 16 17 18 19 20 21 22"
+SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13 14 15 16 17 18 19 20 21 22"
+ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
+ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.31"
+GENERATION="2"
diff --git a/dev-java/eclipse-ecj/files/eclipse-ecj-4.31-java21.patch b/dev-java/eclipse-ecj/files/eclipse-ecj-4.31-java21.patch
new file mode 100644
index 000000000000..fc131777bcba
--- /dev/null
+++ b/dev-java/eclipse-ecj/files/eclipse-ecj-4.31-java21.patch
@@ -0,0 +1,12 @@
+# ./org/eclipse/jdt/internal/compiler/parser/Parser.java:4511: \
+# error: reference to StringTemplate is ambiguous
+--- a/org/eclipse/jdt/internal/compiler/parser/Parser.java
++++ b/org/eclipse/jdt/internal/compiler/parser/Parser.java
+@@ -56,6 +56,7 @@ import org.eclipse.jdt.core.compiler.InvalidInputException;
+ import org.eclipse.jdt.internal.compiler.ASTVisitor;
+ import org.eclipse.jdt.internal.compiler.CompilationResult;
+ import org.eclipse.jdt.internal.compiler.ast.*;
++import org.eclipse.jdt.internal.compiler.ast.StringTemplate;
+ import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
+ import org.eclipse.jdt.internal.compiler.codegen.ConstantPool;
+ import org.eclipse.jdt.internal.compiler.env.ICompilationUnit;
diff --git a/dev-java/eclipse-ecj/metadata.xml b/dev-java/eclipse-ecj/metadata.xml
index 218c1eb894a3..d59675e7a795 100644
--- a/dev-java/eclipse-ecj/metadata.xml
+++ b/dev-java/eclipse-ecj/metadata.xml
@@ -15,7 +15,4 @@ used with Ant by using the -lib option to and and setting
<upstream>
<remote-id type="github">eclipse-jdt/eclipse.jdt.core</remote-id>
</upstream>
-<use>
- <flag name="ant">Support using ecj in Ant builds via <pkg>dev-java/ant-eclipse-ecj</pkg></flag>
-</use>
</pkgmetadata>
diff --git a/dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild b/dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild
index f21d16d11598..388dee136ffc 100644
--- a/dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild
+++ b/dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,7 +16,7 @@ S="${WORKDIR}/eclipse.jdt.core-R${PV//./_}/org.eclipse.jdt.annotation"
LICENSE="EPL-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm ~arm64"
RDEPEND=">=virtual/jre-1.8:*"
DEPEND=">=virtual/jdk-1.8:*"
diff --git a/dev-java/emma/emma-2.0.5312-r4.ebuild b/dev-java/emma/emma-2.0.5312-r4.ebuild
deleted file mode 100644
index 0ea013aa1a3e..000000000000
--- a/dev-java/emma/emma-2.0.5312-r4.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Free Java code coverage tool"
-HOMEPAGE="http://emma.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip"
-
-LICENSE="CPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-IUSE="+launcher"
-
-CDEPEND="
- dev-java/ant-core
- launcher? ( !sci-biology/emboss )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-BDEPEND="app-arch/unzip"
-
-EANT_BUILD_TARGET="build"
-
-src_prepare() {
- default
- eapply "${FILESDIR}/${P}-java15api.patch"
- # bcp mangling unneccessary for 1.4+ and breaks with IBM 1.6 - bug #220463
- sed -e '/bootclasspathref/d' -e '/extdirs/d' -i build.xml || die
-}
-
-src_install() {
- java-pkg_dojar "dist/${PN}.jar"
- java-pkg_dojar "dist/${PN}_ant.jar"
- java-pkg_register-ant-task
-
- use launcher && java-pkg_dolauncher ${PN} --main emmarun
-
- # One of these does not have java sources
- use source && java-pkg_dosrc */*/com 2> /dev/null
-}
diff --git a/dev-java/emma/emma-2.0.5312-r5.ebuild b/dev-java/emma/emma-2.0.5312-r6.ebuild
index 66d41e71a6ba..10a18486c01d 100644
--- a/dev-java/emma/emma-2.0.5312-r5.ebuild
+++ b/dev-java/emma/emma-2.0.5312-r6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,12 +18,12 @@ S="${WORKDIR}/${P}"
LICENSE="CPL-1.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
IUSE="+launcher"
BDEPEND="app-arch/unzip"
-CP_DEPEND="dev-java/ant-core:0"
+CP_DEPEND=">=dev-java/ant-1.10.14:0"
DEPEND="${CP_DEPEND}
>=virtual/jdk-1.8:*"
RDEPEND="${CP_DEPEND}
@@ -32,6 +32,12 @@ RDEPEND="${CP_DEPEND}
PATCHES=( "${FILESDIR}/emma-2.0.5312-java15api.patch" )
+JAVADOC_CLASSPATH="ant"
+JAVADOC_SRC_DIRS=(
+ core/data core/java1{2,3,4}
+ ant/ant1{4,5}
+)
+
src_prepare() {
default #780585
}
@@ -55,15 +61,7 @@ src_compile() {
JAVA_GENTOO_CLASSPATH_EXTRA+=":emma_ant.jar"
rm -r target || die
- if use doc; then
- einfo "Compiling javadocs"
- JAVA_SRC_DIR=(
- core/data core/java1{2,3,4}
- ant/ant1{4,5}
- )
- JAVA_JAR_FILENAME="ignoreme.jar"
- java-pkg-simple_src_compile
- fi
+ use doc && ejavadoc
}
src_install() {
diff --git a/dev-java/error-prone-annotations/Manifest b/dev-java/error-prone-annotations/Manifest
index 9cb3038bb4fa..4a467474141e 100644
--- a/dev-java/error-prone-annotations/Manifest
+++ b/dev-java/error-prone-annotations/Manifest
@@ -1 +1 @@
-DIST error-prone-2.16.tar.gz 2685946 BLAKE2B e10d38e5d0f6be102d64c4d24543f525c192300665a141d136d4bcb1db0e8553c16828411b60e2bca0d27a89fe7e094ac2fc2a367028091a4ad28b303c023a43 SHA512 c61d14e237ae45f3d1196e03ecdb5e77aa8aaa2f5983eee3667cc73951a12b1f0c85bd8a15c477c18fd517d486024d3b1f115928affb3697afc064d561b5f405
+DIST error-prone-2.24.0.tar.gz 2808121 BLAKE2B a112cb2c2699b2522321c89f7875cf5978748f653225db2ce89dbca16eacb357689db79c1d584c034f987178e523baa07cedd43ecb96a53941cb2ebd3c26fe63 SHA512 9c3626c7d9e05a3dacf190c6e463b66ef5cb7b0de3b049884e243502ef7bb325c92433f2ac65dfcd72ddc0edada88dde0822c4fe91043de552d69f3b06611c26
diff --git a/dev-java/error-prone-annotations/error-prone-annotations-2.16.ebuild b/dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild
index d000706c8189..0c56d4a3fbca 100644
--- a/dev-java/error-prone-annotations/error-prone-annotations-2.16.ebuild
+++ b/dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild
@@ -1,9 +1,6 @@
-# Copyright 1999-2023 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 pom.xml --download-uri https://github.com/google/error-prone/archive/v2.16.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild error-prone-annotations-2.16.ebuild
-
EAPI=8
JAVA_PKG_IUSE="doc source"
@@ -14,6 +11,7 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Java annotations for the Error Prone static analysis tool"
HOMEPAGE="https://errorprone.info"
SRC_URI="https://github.com/google/error-prone/archive/v${PV}.tar.gz -> error-prone-${PV}.tar.gz"
+S="${WORKDIR}/error-prone-${PV}/annotations"
LICENSE="Apache-2.0"
SLOT="0"
@@ -22,7 +20,5 @@ KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND=">=virtual/jdk-1.8:*"
RDEPEND=">=virtual/jre-1.8:*"
-S="${WORKDIR}/error-prone-${PV}/annotations"
-
JAVA_AUTOMATIC_MODULE_NAME="com.google.errorprone.annotations"
JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/failureaccess/Manifest b/dev-java/failureaccess/Manifest
deleted file mode 100644
index beb166188cf0..000000000000
--- a/dev-java/failureaccess/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST guava-32.1.2.tar.gz 5746736 BLAKE2B e10f9ca81acfd14c0bdc595d777c2738f88e35d3caf2ebaec5b3f3dcd6ee87672830671b8f99b0ce030d040adcbf0a88a4cba13a42dfb980bc926540b663167e SHA512 43a9b6068bd4b636f742a6a418a34f3b4d218a0ec14b39d5fbe67b4d3c11813295c3c0eb2cf41b5de7a2383eaba639001faab60dbf3821b7546e29fe9cf3dd78
diff --git a/dev-java/failureaccess/failureaccess-32.1.2.ebuild b/dev-java/failureaccess/failureaccess-32.1.2.ebuild
deleted file mode 100644
index fff769f48fc7..000000000000
--- a/dev-java/failureaccess/failureaccess-32.1.2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MY_P=guava-${PV}
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="com.google.guava:failureaccess:1.0.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Guava's InternalFutureFailureAccess and InternalFutures classes."
-HOMEPAGE="https://github.com/google/guava/"
-SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> guava-${PV}.tar.gz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-JAVA_SRC_DIR="futures/${PN}/src/com/google/common/util/concurrent/internal/"
diff --git a/dev-java/failureaccess/metadata.xml b/dev-java/failureaccess/metadata.xml
deleted file mode 100644
index 599c42537433..000000000000
--- a/dev-java/failureaccess/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
-Contains com.google.common.util.concurrent.internal.InternalFutureFailureAccess
-and InternalFutures. Most users will never need to use this artifact. Its
-classes are conceptually a part of Guava, but they're in this separate artifact
-so that Android libraries can use them without pulling in all of Guava (just as
-they can use ListenableFuture by depending on the listenablefuture artifact).
- </longdescription>
- <upstream>
- <remote-id type="github">google/guava</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild b/dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild
index ce4df3018c1d..1367fbdf68df 100644
--- a/dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild
+++ b/dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ S="${WORKDIR}/org.apache.felix.gogo.runtime-${PV}"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64 ~arm ~arm64"
CP_DEPEND="
dev-java/osgi-annotation:0
diff --git a/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild b/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild
index 5270eda74562..99153285f62d 100644
--- a/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild
+++ b/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
@@ -12,8 +12,9 @@ MAVEN_ID="com.google.code.findbugs:findbugs-annotations:3.0.1"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Annotation defined by the FindBugs tool"
-HOMEPAGE="http://findbugs.sourceforge.net/"
+HOMEPAGE="https://findbugs.sourceforge.net/"
SRC_URI="https://repo1.maven.org/maven2/com/google/code/findbugs/${PN}/${PV}/${P}-sources.jar"
+S="${WORKDIR}"
LICENSE="LGPL-3"
SLOT="0"
@@ -37,5 +38,3 @@ RDEPEND="
${CP_DEPEND}"
BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
diff --git a/dev-java/findbugs-annotations/metadata.xml b/dev-java/findbugs-annotations/metadata.xml
index 75321cfb5598..8a3dfbf0281d 100644
--- a/dev-java/findbugs-annotations/metadata.xml
+++ b/dev-java/findbugs-annotations/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="sourceforge">findbugs</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/fishbowl/metadata.xml b/dev-java/fishbowl/metadata.xml
index 75321cfb5598..9a4cc6850f96 100644
--- a/dev-java/fishbowl/metadata.xml
+++ b/dev-java/fishbowl/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">stefanbirkner/fishbowl</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/fop/Manifest b/dev-java/fop/Manifest
index 5080bc909c93..09319bb63d30 100644
--- a/dev-java/fop/Manifest
+++ b/dev-java/fop/Manifest
@@ -1,6 +1,4 @@
DIST fop-2.7-jars.tar.xz 7348 BLAKE2B 79a5b4f1948bbc9628e571a9873494e2d2088d7a90296e81e03cafa6ecd8f9d1c8dd6779d15c47a0e110304aa07e706c56412e3766a84e0a66c8224fdd92f61c SHA512 71c39cbb20416dc29beb8628ae8bac2a663c0b0d1f0418a241f3795a2d5e01159572c210b5a2d2eff8274247dc3631980de50fea4f94182ddde095d0e5e605c6
-DIST fop-2.8-src.tar.gz 22855369 BLAKE2B 183649f531068b8f7513613c89f9f66a48894ab97a659e110b91853d5dffc1664d3830a8ced9ba221e22ca02fc51aed991ddee0e927cab59b9160a504f6dab02 SHA512 22e1737b5cd87dc5e014838e2ad867ccf46bdc564fb5c231cc6b4c1f8a9862864679ea7ddf143126058553ed90045941fb07aa2657db9e3ed35660ce11169357
-DIST fop-2.8-src.tar.gz.asc 833 BLAKE2B f761b427bac89249ab4ab5f2194468e44f997e28ed77392a785764fb60dd2fbbc716ef881e2009a3dbad416ef195fc8ae4d2ebdbd63c3fb3f47d355acab8389b SHA512 c25e94ac4a72c9ff9bfa487369ee1510ab5b19a6178f14f5076b9cf0548044e79eca707025e962c63d268d0f48661cc7110f604036957e447f8413cdb582d3de
DIST fop-2.9-src.tar.gz 20642865 BLAKE2B 6ab265ddfb1c07b9266687930af21ac4653438800772da836dbceb14de126333dcff50c2cea1352ad77988ec7f7a3d4eef91341983edc13684abf2531634eb0a SHA512 d346c8fffd0d3ff5e803bea4233ce171972ded39b0c475b367333e37247da8f9e823c7e2e75fab735bf9282654d67befa2fa473f53a199cbd96b0f7305b3c093
DIST fop-2.9-src.tar.gz.asc 833 BLAKE2B 284f04d450bcfb6583d353ae21bbadad8da14b59d946e094453b564e700c8cfdcb448ed206a5a246b725b453a1b3feea69f96ff3b2a683320bce6743cc5a167f SHA512 404d5df54cf84ddb11c7f5ebc6772d61cd04fc434dea421429a9a270e1d0ca17f61df8a33600db5a41c6d45f828a67fc26becfa9b4ac18342e9dfb4781dd0bdc
DIST fop-hyph-2.0.jar 6655933 BLAKE2B bfbefcc2ebd9a9a467c23a70d7cef256f83cf2335f6e17db6bbefceaf8a3cee78de0302f269d096eb3238b3f4883429e09cc640bed11a42da4ef67ab9f0cb164 SHA512 3d5f27623008c7beba5332387bd42c501b7ae1dddfc98014b3fb35273394ca5f0a4ce69e7726090ec468c9b4f7983fb8b1a5759f49e81ea342c81c61311d87b3
diff --git a/dev-java/fop/files/fop-2.8-skip-failing-tests.patch b/dev-java/fop/files/fop-2.8-skip-failing-tests.patch
deleted file mode 100644
index 729795e93fd2..000000000000
--- a/dev-java/fop/files/fop-2.8-skip-failing-tests.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-# https://bugs.gentoo.org/903880
---- a/fop-core/src/test/java/org/apache/fop/accessibility/fo/FO2StructureTreeConverterTestCase.java
-+++ b/fop-core/src/test/java/org/apache/fop/accessibility/fo/FO2StructureTreeConverterTestCase.java
-@@ -43,6 +43,7 @@ import javax.xml.transform.stream.StreamSource;
-
- import org.custommonkey.xmlunit.Diff;
- import org.junit.Test;
-+import org.junit.Ignore;
- import org.w3c.dom.Document;
- import org.xml.sax.SAXException;
- import org.xml.sax.helpers.AttributesImpl;
-@@ -144,7 +145,7 @@ public class FO2StructureTreeConverterTestCase {
- assertNull(d.getStructureTreeEventHandler().startNode("table-body", null, null));
- }
-
-- @Test
-+ @Test @Ignore
- public void testRemoveBlocks() throws Exception {
- keepEmptyTags = false;
- compare("<fo:root xmlns:fo=\"http://www.w3.org/1999/XSL/Format\">\n"
-@@ -180,7 +181,7 @@ public class FO2StructureTreeConverterTestCase {
- + "</structure-tree-sequence>\n");
- }
-
-- @Test
-+ @Test @Ignore
- public void testRemoveTableHeader() throws Exception {
- keepEmptyTags = false;
- String fo = IOUtils.toString(getResource("table-artifact.fo"), "utf8").replace("role=\"artifact\"", "");
---- a/fop-core/src/test/java/org/apache/fop/render/pdf/PDFEncodingTestCase.java
-+++ b/fop-core/src/test/java/org/apache/fop/render/pdf/PDFEncodingTestCase.java
-@@ -25,6 +25,7 @@ import java.io.File;
- import java.io.IOException;
-
- import org.junit.Test;
-+import org.junit.Ignore;
- import org.xml.sax.SAXException;
-
- import static org.junit.Assert.assertEquals;
-@@ -61,7 +62,7 @@ public class PDFEncodingTestCase extends BasePDFTest {
- * Test using a standard FOP font
- * @throws Exception checkstyle wants a comment here, even a silly one
- */
-- @Test
-+ @Test @Ignore
- public void testPDFEncodingWithStandardFont() throws Exception {
-
- /* If the PDF encoding is correct, a text dump of the generated PDF file contains this (excerpts)
diff --git a/dev-java/fop/fop-2.8-r1.ebuild b/dev-java/fop/fop-2.8-r1.ebuild
deleted file mode 100644
index 89f3be35d3bc..000000000000
--- a/dev-java/fop/fop-2.8-r1.ebuild
+++ /dev/null
@@ -1,188 +0,0 @@
-# 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.apache.xmlgraphics:fop:${PV}"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple verify-sig
-
-DESCRIPTION="XML Graphics Format Object Processor All-In-One"
-HOMEPAGE="https://xmlgraphics.apache.org/fop/"
-SRC_URI="
- mirror://apache/xmlgraphics/fop/source/${P}-src.tar.gz
- https://dev.gentoo.org/~flow/distfiles/fop/fop-2.7-jars.tar.xz
- verify-sig? ( https://www.apache.org/dist/xmlgraphics/fop/source/${P}-src.tar.gz.asc )
- test? ( https://repo1.maven.org/maven2/net/sf/offo/fop-hyph/2.0/fop-hyph-2.0.jar )
-"
-S="${WORKDIR}/fop-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="2.8"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-CP_DEPEND="
- dev-java/batik:1.16
- dev-java/commons-io:1
- dev-java/commons-logging:0
- dev-java/fontbox:0
- dev-java/qdox:1.12
- dev-java/xmlgraphics-commons:2
-"
-
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.8:*
- dev-java/ant-core:0
- dev-java/javax-servlet-api:2.2
- dev-java/sun-jai-bin:0
- test? (
- dev-java/mockito:2
- dev-java/pdfbox:0
- dev-java/xmlunit:1
- )
-"
-
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.8:*"
-
-BDEPEND="dev-java/xalan:0"
-
-DOCS=( NOTICE README )
-
-PATCHES=( "${FILESDIR}/fop-2.8-skip-failing-tests.patch" )
-
-JAVA_CLASSPATH_EXTRA="
- ant-core
- javax-servlet-api-2.2
- sun-jai-bin
-"
-
-BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-apache-xmlgraphics-fop )"
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xmlgraphics-fop.apache.org.asc"
-
-src_unpack() {
- if use verify-sig; then
- verify-sig_verify_detached "${DISTDIR}"/${P}-src.tar.gz{,.asc}
- fi
- default
-}
-
-src_prepare() {
- java-pkg_clean
- java-pkg-2_src_prepare
- default
-}
-
-src_compile() {
- JAVA_JAR_FILENAME="fop-util.jar"
- JAVA_SRC_DIR="fop-util/src/main/java"
- java-pkg-simple_src_compile
- JAVA_GENTOO_CLASSPATH_EXTRA+=":fop-util.jar"
- rm -r target || die
-
- JAVA_JAR_FILENAME="fop-events.jar"
- JAVA_RESOURCE_DIRS="fop-events/src/main/resources"
- JAVA_SRC_DIR="fop-events/src/main/java"
- java-pkg-simple_src_compile
- JAVA_GENTOO_CLASSPATH_EXTRA+=":fop-events.jar"
- rm -r target || die
-
- JAVA_JAR_FILENAME="fop-core.jar"
- JAVA_MAIN_CLASS=$( sed -n 's:.*<mainClass>\(.*\)</mainClass>:\1:p' fop-core/pom.xml )
- JAVA_RESOURCE_DIRS="fop-core/src/main/resources"
- JAVA_SRC_DIR="fop-core/src/main/java"
- # Code generation according to
- # https://github.com/apache/xmlgraphics-fop/blob/fop-2_8/fop-core/pom.xml#L156-L225
- pushd fop-core/src/main/codegen/fonts > /dev/null || die
- local fonts=$(find . -name "Courier*.xml" \
- -o -name "Helvetica*.xml" \
- -o -name "Times*.xml" \
- -o -name "Symbol.xml" \
- -o -name "ZapfDingbats.xml"
- )
- for font in ${fonts}; do \
- xalan -XSLTC \
- -IN $font \
- -XSL font-file.xsl \
- -OUT ../../java/org/apache/fop/fonts/base14/${font//.xml}.java || die
- done
- xalan -XSLTC \
- -IN encodings.xml \
- -XSL code-point-mapping.xsl \
- -OUT ../../java/org/apache/fop/fonts/base14/CodePointMapping.java || die
- popd > /dev/null || die
- java-pkg-simple_src_compile
-
- # Update "fop-core.jar" with "event-mode.xml" files produced manually
- # by running "mvn package".
- # Upstream does this with maven-antrun-plugin:
- # https://github.com/apache/xmlgraphics-fop/blob/fop-2_8/fop-core/pom.xml#L269-L290
- mkdir event-model && pushd $_ > /dev/null || die
- jar -xf "${WORKDIR}/fop-2.7-core-event-models.jar"
- popd > /dev/null || die
-
- jar -uf "fop-core.jar" -C event-model . || die
- JAVA_GENTOO_CLASSPATH_EXTRA+=":fop-core.jar"
- rm -r target || die
-
- if use doc; then \
- JAVA_SRC_DIR=(
- "fop-util/src/main/java"
- "fop-events/src/main/java"
- "fop-core/src/main/java"
- )
- JAVA_JAR_FILENAME="ignoreme.jar"
- java-pkg-simple_src_compile
- fi
-}
-
-src_test() {
- JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito-2,pdfbox,xmlunit-1"
-
- einfo "Testing fop-events"
- JAVA_TEST_EXCLUDES="org.apache.fop.events.TestEventProducer"
- JAVA_TEST_SRC_DIR="fop-events/src/test/java"
- # This jar file was created manually from the output of "mvn test".
- # Upstream does this with maven-antrun-plugin
- jar -xf "${WORKDIR}/fop-2.7-test-event-model.jar" || die
- java-pkg-simple_src_test
-
- einfo "Testing fop-core"
- pushd fop-core/src/test/java > /dev/null || die
- # Excluding one test, see https://bugs.gentoo.org/903880
- local JAVA_TEST_RUN_ONLY=$(find * -type f \
- -name "*TestCase.java" \
- ! -name 'MissingLanguageWarningTestCase.java' \
- )
- JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
- JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
- popd > /dev/null || die
- # https://github.com/apache/xmlgraphics-fop/blob/fop-2_8/fop-core/pom.xml#L297-L307
- # <workingDirectory>../fop</workingDirectory>
- pushd fop > /dev/null || die
- JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/fop-hyph-2.0.jar"
- JAVA_GENTOO_CLASSPATH_EXTRA+=":../fop-util.jar"
- JAVA_GENTOO_CLASSPATH_EXTRA+=":../fop-events.jar"
- JAVA_GENTOO_CLASSPATH_EXTRA+=":../fop-core.jar"
- JAVA_TEST_RESOURCE_DIRS="../fop-core/src/test/resources"
- JAVA_TEST_SRC_DIR="../fop-core/src/test/java"
- java-pkg-simple_src_test
- popd > /dev/null || die
-}
-
-src_install() {
- local module
- for module in fop-util fop-events fop-core ; do
- java-pkg_dojar "${module}.jar"
- if use source; then
- java-pkg_dosrc "${module}/src/main/java/*"
- fi
- done
- if use doc; then
- java-pkg_dojavadoc target/api
- fi
- java-pkg_dolauncher "fop-${SLOT}" --main "org.apache.fop.cli.Main"
- einstalldocs
-}
diff --git a/dev-java/fop/fop-2.9.ebuild b/dev-java/fop/fop-2.9.ebuild
index 63bf4d2080f1..e691baf0a9e9 100644
--- a/dev-java/fop/fop-2.9.ebuild
+++ b/dev-java/fop/fop-2.9.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
@@ -14,14 +14,21 @@ HOMEPAGE="https://xmlgraphics.apache.org/fop/"
SRC_URI="
mirror://apache/xmlgraphics/fop/source/${P}-src.tar.gz
https://dev.gentoo.org/~flow/distfiles/fop/fop-2.7-jars.tar.xz
- verify-sig? ( https://www.apache.org/dist/xmlgraphics/fop/source/${P}-src.tar.gz.asc )
+ verify-sig? ( https://downloads.apache.org/xmlgraphics/fop/source/${P}-src.tar.gz.asc )
test? ( https://repo1.maven.org/maven2/net/sf/offo/fop-hyph/2.0/fop-hyph-2.0.jar )
"
S="${WORKDIR}/fop-${PV}"
LICENSE="Apache-2.0"
SLOT="2.8"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm64 ppc64 x86"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xmlgraphics-fop.apache.org.asc"
+
+BDEPEND="
+ dev-java/xalan:0
+ verify-sig? ( sec-keys/openpgp-keys-apache-xmlgraphics-fop )
+"
CP_DEPEND="
dev-java/batik:1.16
@@ -47,8 +54,6 @@ DEPEND="${CP_DEPEND}
RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"
-BDEPEND="dev-java/xalan:0"
-
DOCS=( NOTICE README )
PATCHES=(
@@ -64,8 +69,6 @@ JAVA_CLASSPATH_EXTRA="
sun-jai-bin
"
-BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-xmlgraphics-fop )"
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xmlgraphics-fop.apache.org.asc"
src_unpack() {
if use verify-sig; then
verify-sig_verify_detached "${DISTDIR}"/${P}-src.tar.gz{,.asc}
@@ -151,6 +154,8 @@ src_test() {
# This jar file was created manually from the output of "mvn test".
# Upstream does this with maven-antrun-plugin
jar -xf "${WORKDIR}/fop-2.7-test-event-model.jar" || die
+ mkdir generated-test || die
+ mv {target/test-classes,generated-test}/org || die
java-pkg-simple_src_test
einfo "Testing fop-core"
diff --git a/dev-java/gin/metadata.xml b/dev-java/gin/metadata.xml
index 0aaeb43aefdc..ffdab2e387f8 100644
--- a/dev-java/gin/metadata.xml
+++ b/dev-java/gin/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gienah@gentoo.org</email>
- <name>Mark Wright</name>
- </maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
diff --git a/dev-java/glassfish-persistence/Manifest b/dev-java/glassfish-persistence/Manifest
deleted file mode 100644
index bdd1ede41798..000000000000
--- a/dev-java/glassfish-persistence/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-9_0-b48-src.zip 35162972 BLAKE2B ff96f2135c6bbdc60eadab6a6bd60b623ac1a3635e4465591ee75f6c1229e83f9f6424b46e42eb333eb6edd3ba1aba51897ab80ca5bd5c754e516a27a03381d9 SHA512 512ccd1c89a1bbd88ca1e45b1e60693bd3c4a6c6ffa19376febb786eb73556f27bc0ce4f0e760d6d80b0711206f6701e7c7da70ef3a5e0084ad0482246506a48
diff --git a/dev-java/glassfish-persistence/files/glassfish-persistence-1.0-python2.7-sax-parser.patch b/dev-java/glassfish-persistence/files/glassfish-persistence-1.0-python2.7-sax-parser.patch
deleted file mode 100644
index 51b1e8af9429..000000000000
--- a/dev-java/glassfish-persistence/files/glassfish-persistence-1.0-python2.7-sax-parser.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- glassfish/bootstrap/build.xml
-+++ glassfish/bootstrap/build.xml
-@@ -23,7 +23,7 @@
- -->
-
- <!DOCTYPE project [
-- <!ENTITY glassfish SYSTEM "file:./glassfish.xml">
-+ <!ENTITY glassfish SYSTEM "file:glassfish.xml">
- ]>
-
- <project name="Top Level Build" default="all" basedir=".">
diff --git a/dev-java/glassfish-persistence/glassfish-persistence-1.0-r2.ebuild b/dev-java/glassfish-persistence/glassfish-persistence-1.0-r2.ebuild
deleted file mode 100644
index 9bfaadee8841..000000000000
--- a/dev-java/glassfish-persistence/glassfish-persistence-1.0-r2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Glassfish implementation of persistence API"
-HOMEPAGE="https://javaee.github.io/glassfish/"
-SRC_URI="https://download.java.net/javaee5/fcs_branch/promoted/source/glassfish-9_0-b48-src.zip"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-BDEPEND="app-arch/unzip"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/glassfish"
-
-EANT_BUILD_XML="persistence-api/build.xml"
-EANT_BUILD_TARGET="all"
-
-PATCHES=(
- "${FILESDIR}"/${P}-python2.7-sax-parser.patch
-)
-
-src_prepare() {
- default
-}
-
-src_install() {
- cd "${WORKDIR}"/publish/glassfish || die
- java-pkg_newjar lib/javaee.jar
-
- insinto /usr/share/${PN}/lib/schemas
- doins lib/schemas/*.xsd
-}
diff --git a/dev-java/glassfish-persistence/metadata.xml b/dev-java/glassfish-persistence/metadata.xml
deleted file mode 100644
index 851b900d2361..000000000000
--- a/dev-java/glassfish-persistence/metadata.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-java/gnu-jaf/Manifest b/dev-java/gnu-jaf/Manifest
deleted file mode 100644
index bc1c053be9b8..000000000000
--- a/dev-java/gnu-jaf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST activation-1.1.2.tar.gz 290644 BLAKE2B 15ec89a5c757bb134b9ec71e384a80dea5394b9b6463ca1fe44e2e622993fa8809231379b262b0a54595c32451a49ef508bea45ce82120138efe07d81939a817 SHA512 26534f7bb47daddf97b850ab74fc8ef2c5bd62d12cfb96e28e235071af7dcfc7761fa15f2d8f3a2d194f035665cef127812b7476af6cc81f6d6374f1fa725584
diff --git a/dev-java/gnu-jaf/gnu-jaf-1.1.2-r1.ebuild b/dev-java/gnu-jaf/gnu-jaf-1.1.2-r1.ebuild
deleted file mode 100644
index 6835f9c1d704..000000000000
--- a/dev-java/gnu-jaf/gnu-jaf-1.1.2-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="GNU implementation of the JavaBeans Activation Framework"
-HOMEPAGE="https://www.gnu.org/software/classpathx/jaf/jaf.html"
-SRC_URI="mirror://gnu/classpathx/activation-${PV}.tar.gz"
-
-LICENSE="GPL-2-with-linking-exception"
-SLOT="1"
-KEYWORDS="amd64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/activation-${PV}"
-
-EANT_BUILD_TARGET="activation.jar"
-
-src_install() {
- java-pkg_dojar activation.jar
- einstalldocs
- use doc && java-pkg_dojavadoc docs
- use source && java-pkg_dosrc source/*
-}
diff --git a/dev-java/gnu-jaf/metadata.xml b/dev-java/gnu-jaf/metadata.xml
deleted file mode 100644
index ab2d72bd90a7..000000000000
--- a/dev-java/gnu-jaf/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-GNU JAF is a framework for declaring what beans operate on what MIME
-type data. Content handler beans can be defined to handle particular
-MIME content. The JAF unites internet standards for declaring content
-with JavaBeans™.
-
-The JAF defines two mechanisms within the framework. The first, the
-file type map, specifies the MIME content type for a given file. The
-default implementation of this uses the UNIX mime.types format to map
-filename extensions to MIME types. The second mechanism, the command
-map, specifies the actions that can be applied to a given MIME content
-type. The default implementation of this uses the standard mailcap format
-to map actions to JavaBean™ classes. These beans can then view, edit,
-print, or perform whatever other action is required on the underlying
-resource.
-</longdescription>
-
-</pkgmetadata>
diff --git a/dev-java/gradle-bin/Manifest b/dev-java/gradle-bin/Manifest
index 539c6ffe4fde..98941f07f28e 100644
--- a/dev-java/gradle-bin/Manifest
+++ b/dev-java/gradle-bin/Manifest
@@ -1,12 +1,3 @@
-DIST gradle-bin-6.8.3.zip 150631445 BLAKE2B 935a6631167481e289ac5a468b822ffeec204519edf42c8a0f05a911ef716715b706e3c22637763b4a7a0c7cbfa89f163673ef5631c115c025c5634b353fcee6 SHA512 fdd5c347142c2a8e2a1455d8886ddb103531de6e69d41f20d199a488d10165600924876761b452da213759a1dc6d47ed00a069f1a9f8af99fdbf1af3bb2e0564
-DIST gradle-bin-7.1.1.zip 154838841 BLAKE2B 0a0ad08101f0c5fa7c0cb2a4c9ad6e53320cc6214fe1a139f390b73d9aa656ebfaf90c21816d57964f37e9cad51faed21f82f55b7e24fcf0f5a3ffd861c990ad SHA512 95cc2de9b7c3d6019d7780b17238ff8f0db14c9a1e494b391c84d75619eb3064322bb2c56fa9127b0a5681c94b32283090a15b06fefeccdb95a1f8fb9e58c75c
-DIST gradle-bin-7.2.zip 157058280 BLAKE2B 918213df58ac2afbd075c74588f60676cd7dc99030834828138c621348ac1abd368e0b54c2f6937cbfc9533e55e310b46cf841c92dcb1039b898c6f456032d38 SHA512 6ccc79f08afdc20b3d5abf876c3cabb69114d1ab4285cdb77158cd8c5e09207589edefb6c79f2bcffe4629a38c6b9e2f473de42dab29a24310965bc5816b907d
-DIST gradle-bin-7.3.3.zip 158875257 BLAKE2B 94f86e06da3eae4a9522d35a28577d033d64ce1bc2f36d0f5c1992e9b92ec311d25bd98bbeaf4b8a9869f22d93e14c88952e12166e436a0a6c206541d1f967aa SHA512 03f2bdd77202788cd43bb3e3a6390340f4d083d69ade5a53e0163204fb85307f5bbbbf4e04077c6ae558bc36ab3c478674f941079bc14a8344f55631fbba1490
-DIST gradle-bin-7.4.2.zip 159315974 BLAKE2B c7c8dbe82d22dec699d1997a781f3a66110c9910dfe67df2304c48cead96c130ca072550b8c5fa2362744cd2ea3c9723c45a6ecf6e0737fe3c9b7e286b44f4ae SHA512 2e1d05486baa9661d5c8ffead2df87874a66f6cfc958ee6840432b89d221d8b0af9e3cad3675766f5413d12aa61c5b5fb0dd82f4164e5da3022865eba9ceadbf
-DIST gradle-bin-7.5.1.zip 166101707 BLAKE2B e018f8ae0e4cbe1fff2e3fb3029ef4c3f35e1bf541ce75f22561e16c43d8501c2f2501db72081656a836ab1c3358020dbf0be3499e7c16b385d9940c852c62ae SHA512 89189d529df1258a01ad2e6c38b1374dfb3a1440706c1c7f27ace89b6fd5b6849f9809f209e3e410f226aeeb9348d144de70397ac94b4e59fd311a2b0dee0dc9
-DIST gradle-bin-7.6.1.zip 165594858 BLAKE2B 623ed41b7e0dfbfa015578c6915ca382cb441082e181f96d00d058a1bd42b5e749b807f8c0444c4cd41de17a7f754960f55aa69e8dd4339bd64444432ad8748e SHA512 72d051d8cf348c13dda20eec56526a3c212e9a9635920b3260281e2f98cf113ffaf4efb8efbb96081c36b9fae847c291125e24d175d6fb832b8dd6e0e74779ae
-DIST gradle-bin-8.0.2.zip 167671533 BLAKE2B e5cb4bef61ea89cfbf42c72c14e739f049b4930521dabaeb88fa6e2fffec81d6ee6514b615a6c1732db3bad4539e72ebbbeeb37b2f22a72fd2d2e08f7bf8d1b8 SHA512 70f114e353ec3e114b003e733e21c47fd26d2777363d015872aa9eab73c68b3186f77698aa1d72d4f4eedb2c53b0cd47a98f26ef5f0a9b2c1e42c6c877cca80f
-DIST gradle-bin-8.1.1.zip 168381151 BLAKE2B 334727108ccfd374daaa91c363ebf10d8b13e00c61fe14e097b3baa5bb8bf0d2fdde509ef4ac0d90db1fd075c7552a0f7ba90b67d549e45a3c1cb37d036ae000 SHA512 185a831dc37b946e348f9d98ff88eefaad303cdb385d45a5f65c401dd51d4d0c1225d8d716e7345167e53d41cade2bf3008bbde1d66a18d9a4925a589853b598
-DIST gradle-bin-8.2.1.zip 193042584 BLAKE2B 10381d2601c707c6a391fb515e753d583eec0d7e89213fef690df4259aedbdde0ea8981e474eae5c7b21ff12d621897158271c5e2ee964190bca02bf6882c237 SHA512 a3d05873460c4045e2b43c41e39120b444ad5896c6561104ccf8cca4e58fa95bd512e356faa3a507b0e3c4212548002ff02845791dd42518635f4bc6ae67475b
-DIST gradle-bin-8.3.zip 200258206 BLAKE2B f9909266e2887971f2f7480dbfe441c040fcd2ae12146bd9393d0836bca48f931124e60a1095d79ba6b172136ebb1734976e28d255aa3f16a22125a2662b80f1 SHA512 c328b597ff0c28b8071c050b6f1e57bf3eccca4d0eaeda0974700fc2d380667aca2e1a7b3548314519e99b7a823ede4c83a5786147a6a002d081920afa9c490b
DIST gradle-bin-8.4.zip 212870963 BLAKE2B da32c1010e85f6cded0c1b539b243db6d41fcd033266be3b03b389e6a2e317bea17ddbe65c597c7ea82628cc5bec913954ec998d018b68daa67d39f9a8958e7e SHA512 52d5f622b8ad0ab36ff84589733b47423b12f94211086a84eca9810690af29e396877f1155ee31279c4325e98cd1d55b32137d52efcf48eb1e258caeece08f22
+DIST gradle-bin-8.5.zip 218636663 BLAKE2B 0360f240f6183abec540f7755a966767a8dc175ca0ea047273e05c4b2219fd80cb92e62e9b961481d646157418cc91ea211eb83530cc6ec815ea790f6ad8380a SHA512 37a1c2989c46dad0f843565d05fd29010df10ac199d81f0ccddf56ffd490642039046d43a320ba04d1f87cbbc6d4cebf20ff66ce45ec005931cfc85aee2e0180
+DIST gradle-bin-8.7.zip 224435312 BLAKE2B 1926765aea8931b25a9f0b7b9a224dd70756cfd337eecb364c6d288486187dd6311f888c7e1c36b1fc81b454c3514d2807884343e7782f1be45fce03e611496b SHA512 fc18863654cbe8dd2357f388c0fc5f699ca2d40ffd32c283f00cfd5bda94e1711ab7b7a3b154e7da66c17468f00c3c72fe6b6603c4a29617b33b0f292cbac3de
diff --git a/dev-java/gradle-bin/gradle-bin-6.8.3.ebuild b/dev-java/gradle-bin/gradle-bin-6.8.3.ebuild
deleted file mode 100644
index 1e7b593a8227..000000000000
--- a/dev-java/gradle-bin/gradle-bin-6.8.3.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-7.1.1.ebuild b/dev-java/gradle-bin/gradle-bin-7.1.1.ebuild
deleted file mode 100644
index 1e7b593a8227..000000000000
--- a/dev-java/gradle-bin/gradle-bin-7.1.1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-7.2.ebuild b/dev-java/gradle-bin/gradle-bin-7.2.ebuild
deleted file mode 100644
index fe6f492c7e4e..000000000000
--- a/dev-java/gradle-bin/gradle-bin-7.2.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-7.3.3.ebuild b/dev-java/gradle-bin/gradle-bin-7.3.3.ebuild
deleted file mode 100644
index fe6f492c7e4e..000000000000
--- a/dev-java/gradle-bin/gradle-bin-7.3.3.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-7.4.2.ebuild b/dev-java/gradle-bin/gradle-bin-7.4.2.ebuild
deleted file mode 100644
index fe6f492c7e4e..000000000000
--- a/dev-java/gradle-bin/gradle-bin-7.4.2.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-7.6.1.ebuild b/dev-java/gradle-bin/gradle-bin-7.6.1.ebuild
deleted file mode 100644
index 7d07ab9dc4b0..000000000000
--- a/dev-java/gradle-bin/gradle-bin-7.6.1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-8.0.2.ebuild b/dev-java/gradle-bin/gradle-bin-8.0.2.ebuild
deleted file mode 100644
index 7d07ab9dc4b0..000000000000
--- a/dev-java/gradle-bin/gradle-bin-8.0.2.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-8.1.1.ebuild b/dev-java/gradle-bin/gradle-bin-8.1.1.ebuild
deleted file mode 100644
index 7d07ab9dc4b0..000000000000
--- a/dev-java/gradle-bin/gradle-bin-8.1.1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-8.3.ebuild b/dev-java/gradle-bin/gradle-bin-8.3.ebuild
deleted file mode 100644
index afe46bd7d1c6..000000000000
--- a/dev-java/gradle-bin/gradle-bin-8.3.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-IUSE="doc"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2
-
-MY_PN=${PN%%-bin}
-MY_P="${MY_PN}-${PV/_rc/-rc-}"
-
-DESCRIPTION="A project automation and build tool with a Groovy based DSL"
-SRC_URI="https://services.gradle.org/distributions/${MY_P}-all.zip -> ${P}.zip"
-HOMEPAGE="https://www.gradle.org/"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="amd64 ~x86"
-
-DEPEND="app-eselect/eselect-gradle"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${DEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-src_compile() {
- :
-}
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- if use source; then
- java-pkg_dosrc src
- fi
-
- docinto html
- dodoc -r docs/release-notes.html
- if use doc; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- insinto "${gradle_dir}"
- doins -r bin/ lib/
- fperms 755 "${gradle_dir}/bin/gradle"
- dosym "${gradle_dir}/bin/gradle" "/usr/bin/${PN}-${SLOT}"
-}
-
-pkg_postinst() {
- eselect gradle update ifunset
-}
-
-pkg_postrm() {
- eselect gradle update ifunset
-}
diff --git a/dev-java/gradle-bin/gradle-bin-8.4.ebuild b/dev-java/gradle-bin/gradle-bin-8.4.ebuild
index 6fceca3ae5c8..1d63ca89fe19 100644
--- a/dev-java/gradle-bin/gradle-bin-8.4.ebuild
+++ b/dev-java/gradle-bin/gradle-bin-8.4.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
@@ -17,7 +17,7 @@ HOMEPAGE="https://www.gradle.org/"
LICENSE="Apache-2.0"
SLOT="${PV}"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
DEPEND="app-eselect/eselect-gradle"
BDEPEND="app-arch/unzip"
diff --git a/dev-java/gradle-bin/gradle-bin-8.2.1.ebuild b/dev-java/gradle-bin/gradle-bin-8.5.ebuild
index afe46bd7d1c6..1d63ca89fe19 100644
--- a/dev-java/gradle-bin/gradle-bin-8.2.1.ebuild
+++ b/dev-java/gradle-bin/gradle-bin-8.5.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
diff --git a/dev-java/gradle-bin/gradle-bin-7.5.1.ebuild b/dev-java/gradle-bin/gradle-bin-8.7.ebuild
index 0e7b49ee8847..61b08c49be55 100644
--- a/dev-java/gradle-bin/gradle-bin-7.5.1.ebuild
+++ b/dev-java/gradle-bin/gradle-bin-8.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="https://www.gradle.org/"
LICENSE="Apache-2.0"
SLOT="${PV}"
-KEYWORDS="amd64 x86"
+KEYWORDS="~amd64 ~x86"
DEPEND="app-eselect/eselect-gradle"
BDEPEND="app-arch/unzip"
diff --git a/dev-java/gson/Manifest b/dev-java/gson/Manifest
index b2d31e9659c7..be2124b47485 100644
--- a/dev-java/gson/Manifest
+++ b/dev-java/gson/Manifest
@@ -1,3 +1,2 @@
DIST gson-2.10.2_pre20231128.tar.gz 451312 BLAKE2B d16e0510e0806fd33e8d49b5a8fb73e969b89acb2598ca34a43faa97a09debc99466ab472176d60d617aa20b2190884def25881f0bf651e96be2c1bb9a976d70 SHA512 37f2073e5eee2cb85626040552ac750f4917abd05e3b7944c30a2d5ace6888424870a95a0ceba89bf2dadf9ab33e6bbae1591509b84f35aba4521780764c0877
-DIST gson-parent-2.10.1.tar.gz 394777 BLAKE2B e118a7c39b17c4119b4140f3c105fef4c3cb07580dbc530d9bfd59edc4f152f62ac5ff93db1a3861c73758e369ecef4f8ed4e94d556869291469764ea848bbbd SHA512 074f40f7f9aa48daf5b5a3ec371713db02f6f8fceb959b01e8a16732862645d2350f3276ab7ff8021d48082f890b53c6e80d992af6af4b74e4646f85494b8e70
DIST truth-1.1.3.jar 243021 BLAKE2B a59149038c62ef5dd352b13d4b393e1b7715fbafe5ed86ec2d16d722c738a31dcdca10132fc73b17b367ac4309e5407ba2e489f8d4c8fbca60ce5f35ae75d1e3 SHA512 f29a9fb070aff8a32358a7b6c8998c0095de5d8d68afa7f7bac759c7050309deff929e767657ecbbefd96163460f10255ca01bc567ab30df4834b9d916a4fae8
diff --git a/dev-java/gson/gson-2.10.1.ebuild b/dev-java/gson/gson-2.10.1.ebuild
deleted file mode 100644
index 96e7d452fb78..000000000000
--- a/dev-java/gson/gson-2.10.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# 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="com.google.code.gson:gson:${PV}"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Gson JSON library"
-HOMEPAGE="https://github.com/google/gson"
-SRC_URI="https://github.com/google/gson/archive/gson-parent-${PV}.tar.gz"
-S="${WORKDIR}/gson-gson-parent-${PV}/gson"
-
-LICENSE="Apache-2.0"
-SLOT="2.6"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-17:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-DOCS=(
- ../CHANGELOG.md
- ../GsonDesignDocument.md
- ../README.md
- ../Troubleshooting.md
- ../UserGuide.md
-)
-
-JAVA_SRC_DIR=(
- "src/main/java"
- "src/main/java-templates"
-)
-
-JAVA_TEST_EXCLUDES=(
- # requires the test class to be obfuscated using proguard which we do not have atm
- "com.google.gson.functional.EnumWithObfuscatedTest"
- # FAILURES!!!
- # Tests run: 1258, Failures: 2
- # testComGoogleGsonAnnotationsPackage(com.google.gson.regression.OSGiTest)
- # junit.framework.AssertionFailedError: Cannot find com.google.gson OSGi bundle manifest
- "com.google.gson.regression.OSGiTest"
-)
-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
- sed -e "s/\${project.version}/${PV}/g" \
- -i src/main/java-templates/com/google/gson/internal/GsonBuildConfig.java \
- || die "Failed to set version"
- # error: records are not supported in -source 8
- # This test would pass "OK (25 tests)" only with >=jre-17
- # pom.xml, lines 20-22
- rm src/test/java/com/google/gson/functional/Java17RecordTest.java || die
-}
diff --git a/dev-java/gson/gson-2.10.2_pre20231128.ebuild b/dev-java/gson/gson-2.10.2_pre20231128.ebuild
index a8544b4d9312..4247c08c2190 100644
--- a/dev-java/gson/gson-2.10.2_pre20231128.ebuild
+++ b/dev-java/gson/gson-2.10.2_pre20231128.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,8 +19,8 @@ SRC_URI="https://github.com/google/gson/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.
S="${WORKDIR}/gson-${MY_COMMIT}/gson"
LICENSE="Apache-2.0"
-SLOT="2.6"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND="
dev-java/error-prone-annotations:0
diff --git a/dev-java/guava-testlib/Manifest b/dev-java/guava-testlib/Manifest
index 2c2239d9e6bf..9e4363a3129a 100644
--- a/dev-java/guava-testlib/Manifest
+++ b/dev-java/guava-testlib/Manifest
@@ -1,2 +1,2 @@
-DIST guava-32.1.2.tar.gz 5746736 BLAKE2B e10f9ca81acfd14c0bdc595d777c2738f88e35d3caf2ebaec5b3f3dcd6ee87672830671b8f99b0ce030d040adcbf0a88a4cba13a42dfb980bc926540b663167e SHA512 43a9b6068bd4b636f742a6a418a34f3b4d218a0ec14b39d5fbe67b4d3c11813295c3c0eb2cf41b5de7a2383eaba639001faab60dbf3821b7546e29fe9cf3dd78
-DIST truth-1.1.3.jar 243021 BLAKE2B a59149038c62ef5dd352b13d4b393e1b7715fbafe5ed86ec2d16d722c738a31dcdca10132fc73b17b367ac4309e5407ba2e489f8d4c8fbca60ce5f35ae75d1e3 SHA512 f29a9fb070aff8a32358a7b6c8998c0095de5d8d68afa7f7bac759c7050309deff929e767657ecbbefd96163460f10255ca01bc567ab30df4834b9d916a4fae8
+DIST guava-33.0.0.tar.gz 5779322 BLAKE2B b7790f4207e2061b364f3dfac8d3f6f0de180f33f1f1c24078c40b6e69d3a372fc7f681bdd51a670a4b913c0e537731ecbff849a08411c250de4dc6b255e70cf SHA512 4f97aca4621a703b69535c1d56c0b09b3b4ed893e3f136ae5622fe727ce43f920dcdf39a6e8c9667d4f51eccc7f8297c088bc3c34e1f8d6e84a0b7164855ce7c
+DIST truth-1.1.5.jar 244558 BLAKE2B c6a0889c9b50334d16cedff3974a1526b190b56a082d986dbcfce40c902a1d0e8689e387edc5b5f54f6b1ae079f2efd1e785398711b7b9363ed4dc6c1fe297f8 SHA512 b840a4ff9bd44189b0ada2770e53669b6368ad06b40a182d7ddb497866df872892f8ee5139f707f53b83cf0b860073f9d24a0f711dfb15b2f64b63e3f5013749
diff --git a/dev-java/guava-testlib/guava-testlib-32.1.2.ebuild b/dev-java/guava-testlib/guava-testlib-33.0.0.ebuild
index f2a7f38e6762..dfe7882178a8 100644
--- a/dev-java/guava-testlib/guava-testlib-32.1.2.ebuild
+++ b/dev-java/guava-testlib/guava-testlib-33.0.0.ebuild
@@ -1,9 +1,8 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-# No tests because "error: package com.google.common.truth does not exist"
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="com.google.guava:guava-testlib:${PV}-jre"
JAVA_TESTING_FRAMEWORKS="junit-4"
@@ -14,7 +13,7 @@ DESCRIPTION="A set of java classes to assist the tests for Guava itself"
HOMEPAGE="https://github.com/google/guava"
# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> guava-${PV}.tar.gz
- test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.5/truth-1.1.5.jar )"
S="${WORKDIR}/guava-${PV}"
LICENSE="Apache-2.0"
@@ -22,25 +21,26 @@ SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CP_DEPEND="
- dev-java/checker-framework-qual:0
- dev-java/error-prone-annotations:0
+ >=dev-java/error-prone-annotations-2.24.0:0
~dev-java/guava-${PV}:0
- dev-java/j2objc-annotations:0
dev-java/jsr305:0
dev-java/junit:4
"
DEPEND="${CP_DEPEND}
+ dev-java/checker-framework-qual:0
+ dev-java/j2objc-annotations:0
>=virtual/jdk-1.8:*"
RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"
+JAVA_CLASSPATH_EXTRA="checker-framework-qual j2objc-annotations"
JAVA_SRC_DIR="${PN}/src"
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="${PN}/test"
src_test() {
- JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.5.jar:testdata.jar"
java-pkg-simple_src_test
}
diff --git a/dev-java/guava-testlib/metadata.xml b/dev-java/guava-testlib/metadata.xml
index 8f8ff281cf6a..5dcc33c704ec 100644
--- a/dev-java/guava-testlib/metadata.xml
+++ b/dev-java/guava-testlib/metadata.xml
@@ -4,6 +4,9 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">google/guava</remote-id>
+ </upstream>
<longdescription>
Guava testlib is a set of java classes used for more convenient unit testing - particularly to assist the tests for Guava itself.
</longdescription>
diff --git a/dev-java/guava/Manifest b/dev-java/guava/Manifest
index beb166188cf0..044968475684 100644
--- a/dev-java/guava/Manifest
+++ b/dev-java/guava/Manifest
@@ -1 +1 @@
-DIST guava-32.1.2.tar.gz 5746736 BLAKE2B e10f9ca81acfd14c0bdc595d777c2738f88e35d3caf2ebaec5b3f3dcd6ee87672830671b8f99b0ce030d040adcbf0a88a4cba13a42dfb980bc926540b663167e SHA512 43a9b6068bd4b636f742a6a418a34f3b4d218a0ec14b39d5fbe67b4d3c11813295c3c0eb2cf41b5de7a2383eaba639001faab60dbf3821b7546e29fe9cf3dd78
+DIST guava-33.0.0.tar.gz 5779322 BLAKE2B b7790f4207e2061b364f3dfac8d3f6f0de180f33f1f1c24078c40b6e69d3a372fc7f681bdd51a670a4b913c0e537731ecbff849a08411c250de4dc6b255e70cf SHA512 4f97aca4621a703b69535c1d56c0b09b3b4ed893e3f136ae5622fe727ce43f920dcdf39a6e8c9667d4f51eccc7f8297c088bc3c34e1f8d6e84a0b7164855ce7c
diff --git a/dev-java/guava/guava-32.1.2-r1.ebuild b/dev-java/guava/guava-33.0.0.ebuild
index dfa306985777..b47d69abc5a9 100644
--- a/dev-java/guava/guava-32.1.2-r1.ebuild
+++ b/dev-java/guava/guava-33.0.0.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
@@ -18,22 +18,18 @@ SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CP_DEPEND="
- dev-java/checker-framework-qual:0
- dev-java/error-prone-annotations:0
- ~dev-java/failureaccess-${PV}:0
+ >=dev-java/error-prone-annotations-2.24.0:0
dev-java/j2objc-annotations:0
dev-java/jsr305:0
"
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CP_DEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CP_DEPEND}
-"
+DEPEND="${CP_DEPEND}
+ dev-java/checker-framework-qual:0
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
JAVA_AUTOMATIC_MODULE_NAME="com.google.common"
+JAVA_CLASSPATH_EXTRA="checker-framework-qual"
+JAVA_GENTOO_CLASSPATH_EXTRA=":futures/failureaccess/src"
JAVA_SRC_DIR="guava/src"
diff --git a/dev-java/guice/metadata.xml b/dev-java/guice/metadata.xml
index fbbc13fd826c..a8f059e86374 100644
--- a/dev-java/guice/metadata.xml
+++ b/dev-java/guice/metadata.xml
@@ -6,7 +6,6 @@
<name>Java</name>
</maintainer>
<upstream>
- <remote-id type="google-code">google-guice</remote-id>
<remote-id type="github">google/guice</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/gwt/metadata.xml b/dev-java/gwt/metadata.xml
index 18f25b56258f..cd120d3bccba 100644
--- a/dev-java/gwt/metadata.xml
+++ b/dev-java/gwt/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gienah@gentoo.org</email>
- <name>Mark Wright</name>
- </maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
diff --git a/dev-java/htmlcleaner/Manifest b/dev-java/htmlcleaner/Manifest
index ee70232228bb..e19159c540f6 100644
--- a/dev-java/htmlcleaner/Manifest
+++ b/dev-java/htmlcleaner/Manifest
@@ -1,2 +1 @@
-DIST htmlcleaner-2.26-src.zip 414195 BLAKE2B c73533054bf7a8a66a767e53cbafecca1f174cb3be16e116ddd0e025e627603e225323e9095ea40b38a06c661ebe9f2a9e1f53736bf74fd8a2e41d909381c4fb SHA512 df1f9ccc696d538289a0addd19f8d955a3bcb0da88640208c513b2f4f0c4a3ee516b459aa3aae25d36d6ec09c4082b96484df287fb422add2eb160072668af5a
DIST htmlcleaner-src-2.29.zip 394326 BLAKE2B 6317e5dd51facd901e7a5bdc72322c58deb5d3a2e2d0a784e6cd71b938c7b46b7a612d0610a1e5f96ac6c55714942e00ffa68f2259416fe1e6be8cb5ad96c0b3 SHA512 87c3884f56c01d4f34be71b5a016a839f949f03ea429a3c10cc5518fe954b09aa42d05fdf821e7b0bf2115787cffff6ae72dbe13e3d7e08537c4ffbf51d6b34f
diff --git a/dev-java/htmlcleaner/files/htmlcleaner-2.24-fix-tests.patch b/dev-java/htmlcleaner/files/htmlcleaner-2.24-fix-tests.patch
deleted file mode 100644
index 0e10ccee4816..000000000000
--- a/dev-java/htmlcleaner/files/htmlcleaner-2.24-fix-tests.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/src/test/java/org/htmlcleaner/DomSerializerTest.java b/src/test/java/org/htmlcleaner/DomSerializerTest.java
-index b09c6d6..f4e83f0 100644
---- a/src/test/java/org/htmlcleaner/DomSerializerTest.java
-+++ b/src/test/java/org/htmlcleaner/DomSerializerTest.java
-@@ -132,7 +132,7 @@ public class DomSerializerTest extends AbstractHtmlCleanerTest {
- + "</html>";
-
- final String expectedOutput =
-- "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
-+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
- + "<html>\n" +
- " <head/>\n" +
- " <body>\n" +
-diff --git a/src/test/java/org/htmlcleaner/TraversalDomSerializerTest.java b/src/test/java/org/htmlcleaner/TraversalDomSerializerTest.java
-index 3e1d1e9..d406c40 100644
---- a/src/test/java/org/htmlcleaner/TraversalDomSerializerTest.java
-+++ b/src/test/java/org/htmlcleaner/TraversalDomSerializerTest.java
-@@ -143,7 +143,7 @@ public class TraversalDomSerializerTest extends AbstractHtmlCleanerTest {
- + "</html>";
-
- final String expectedOutput =
-- "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n"
-+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
- + "<html>\n" +
- " <head/>\n" +
- " <body>\n" +
diff --git a/dev-java/htmlcleaner/htmlcleaner-2.26.ebuild b/dev-java/htmlcleaner/htmlcleaner-2.26.ebuild
deleted file mode 100644
index 11ae5880fbc2..000000000000
--- a/dev-java/htmlcleaner/htmlcleaner-2.26.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="net.sourceforge.htmlcleaner:htmlcleaner:2.26"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="HTML parser written in Java that can be used as a tool, library or Ant task"
-HOMEPAGE="http://htmlcleaner.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/htmlcleaner/htmlcleaner/htmlcleaner%20v${PV}/htmlcleaner-${PV}-src.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CP_DEPEND="dev-java/jdom:2"
-
-RDEPEND="
- ${CP_DEPEND}
- >=virtual/jre-1.8:*
-"
-
-DEPEND="
- ${CP_DEPEND}
- dev-java/ant-core:0
- >=virtual/jdk-1.8:*
- test? ( dev-java/junit:4 )
-"
-
-BDEPEND="app-arch/unzip"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.24-fix-tests.patch"
-)
-
-JAVA_CLASSPATH_EXTRA="ant-core"
-JAVA_SRC_DIR="src/main/java"
-JAVA_MAIN_CLASS="org.htmlcleaner.CommandLine"
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-
-src_prepare() {
- default # https://bugs.gentoo.org/780585
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_register-ant-task
-
- insinto "${JAVA_PKG_SHAREPATH}"
- newins example.xml default.xml
-}
diff --git a/dev-java/htmlcleaner/htmlcleaner-2.29.ebuild b/dev-java/htmlcleaner/htmlcleaner-2.29-r1.ebuild
index 39354c4424da..ed7088f6cec6 100644
--- a/dev-java/htmlcleaner/htmlcleaner-2.29.ebuild
+++ b/dev-java/htmlcleaner/htmlcleaner-2.29-r1.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
@@ -15,18 +15,18 @@ SRC_URI="mirror://sourceforge/project/htmlcleaner/htmlcleaner/htmlcleaner%20v${P
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
BDEPEND="app-arch/unzip"
CP_DEPEND="dev-java/jdom:2"
DEPEND="${CP_DEPEND}
- dev-java/ant-core:0
+ dev-java/ant:0
>=virtual/jdk-1.8:*
test? ( dev-java/junit:4 )"
RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"
-JAVA_CLASSPATH_EXTRA="ant-core"
+JAVA_CLASSPATH_EXTRA="ant"
JAVA_MAIN_CLASS="org.htmlcleaner.CommandLine"
JAVA_SRC_DIR="src/main/java"
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
diff --git a/dev-java/icedtea-bin/icedtea-bin-3.16.0-r2.ebuild b/dev-java/icedtea-bin/icedtea-bin-3.16.0-r2.ebuild
index 329f90ac4a8d..d81265453bcb 100644
--- a/dev-java/icedtea-bin/icedtea-bin-3.16.0-r2.ebuild
+++ b/dev-java/icedtea-bin/icedtea-bin-3.16.0-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -32,7 +32,7 @@ HOMEPAGE="http://icedtea.classpath.org"
LICENSE="GPL-2-with-classpath-exception"
SLOT="8"
-KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="-* amd64 ~arm arm64 ppc64 x86"
IUSE="+alsa big-endian cups doc examples +gtk headless-awt pulseaudio selinux source"
REQUIRED_USE="gtk? ( !headless-awt )"
diff --git a/dev-java/icedtea-bin/icedtea-bin-3.16.0.ebuild b/dev-java/icedtea-bin/icedtea-bin-3.16.0.ebuild
deleted file mode 100644
index 0d8ff65ee21c..000000000000
--- a/dev-java/icedtea-bin/icedtea-bin-3.16.0.ebuild
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-vm-2 multilib-build toolchain-funcs
-
-abi_uri() {
- echo "${2-$1}? (
- ${BASE_URI}/${PN}-core-${PV}${3+-r${3}}-${1}.tar.xz
- examples? ( ${BASE_URI}/${PN}-examples-${PV}${3+-r${3}}-${1}.tar.xz )
- )"
-}
-
-BASE_URI="https://dev.gentoo.org/~gyakovlev/distfiles"
-SRC_URI="
- doc? ( ${BASE_URI}/${PN}-doc-${PV}.tar.xz )
- source? ( ${BASE_URI}/${PN}-src-${PV}.tar.xz )
- big-endian? ( $(abi_uri ppc64) )
- !big-endian? ( $(abi_uri ppc64le ppc64) )
- $(abi_uri amd64)
- $(abi_uri arm)
- $(abi_uri arm64)
- $(abi_uri x86)
-"
-
-DESCRIPTION="A Gentoo-made binary build of the IcedTea JDK"
-HOMEPAGE="http://icedtea.classpath.org"
-
-LICENSE="GPL-2-with-classpath-exception"
-SLOT="8"
-KEYWORDS="-* amd64 ~arm arm64 ppc64 x86"
-IUSE="+alsa big-endian cups doc examples +gtk headless-awt pulseaudio selinux source"
-
-REQUIRED_USE="gtk? ( !headless-awt )"
-
-RESTRICT="preserve-libs strip"
-QA_PREBUILT="opt/.*"
-
-DEPEND="app-arch/xz-utils"
-
-RDEPEND="
- >=dev-libs/glib-2.60.7:2
- >=media-libs/fontconfig-2.13:1.0
- >=media-libs/freetype-2.9.1:2
- >=media-libs/lcms-2.9:2
- >=sys-apps/baselayout-java-0.1.0-r1
- >=sys-libs/zlib-1.2.11-r2
- virtual/jpeg-compat:62
- alsa? ( >=media-libs/alsa-lib-1.2 )
- cups? ( >=net-print/cups-2.0 )
- gtk? (
- >=dev-libs/atk-2.32.0
- >=x11-libs/cairo-1.16.0
- x11-libs/gdk-pixbuf:2
- >=x11-libs/gtk+-2.24:2
- >=x11-libs/pango-1.42
- )
- selinux? ( sec-policy/selinux-java )
- virtual/ttf-fonts
- !headless-awt? (
- media-libs/giflib:0/7
- =media-libs/libpng-1.6*
- >=x11-libs/libX11-1.6
- >=x11-libs/libXcomposite-0.4
- >=x11-libs/libXext-1.3
- >=x11-libs/libXi-1.7
- >=x11-libs/libXrender-0.9.10
- >=x11-libs/libXtst-1.2
- )
-"
-
-PDEPEND="pulseaudio? ( dev-java/icedtea-sound )"
-
-S="${WORKDIR}"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]]; then
- die "These binaries require a hardfloat system."
- fi
-}
-
-src_prepare() {
- default
-
- # I wouldn't normally use -f below but symlinks in the arm files
- # make this fail otherwise and any other approach would be tedious.
-
- if ! use alsa; then
- rm -fv */jre/lib/*/libjsoundalsa.* || die
- fi
-
- if use headless-awt; then
- rm -fvr */jre/lib/*/lib*{[jx]awt,splashscreen}* \
- */{,jre/}bin/policytool */bin/appletviewer || die
- fi
-}
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED}${dest#/}"
- dodir "${dest}"
-
- dodoc ${P}-${ABI}/doc/{ASSEMBLY_EXCEPTION,AUTHORS,NEWS,README,THIRD_PARTY_README}
- use doc && dodoc -r ${P}/doc/html
-
- # doins doesn't preserve executable bits.
- cp -pRP ${P}-${ABI}/{bin,include,jre,lib,man} "${ddest}" || die
-
- if use examples; then
- cp -pRP ${P}-${ABI}/{demo,sample} "${ddest}" || die
- fi
-
- if use source; then
- cp ${P}/src.zip "${ddest}" || die
- fi
-
- # use system-wide cacert store
- rm "${ddest}"/jre/lib/security/cacerts || die
- dosym ../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
-
- java-vm_install-env "${FILESDIR}/icedtea-bin.env.sh"
-
- # Both icedtea itself and the icedtea ebuild set PAX markings but we
- # disable them for the icedtea-bin build because the line below will
- # respect end-user settings when icedtea-bin is actually installed.
- java-vm_set-pax-markings "${ddest}"
-
- # Each invocation appends to the config.
- java-vm_revdep-mask "${EPREFIX}${dest}"
- java-vm_sandbox-predict /proc/self/coredump_filter
-}
diff --git a/dev-java/icedtea-bin/metadata.xml b/dev-java/icedtea-bin/metadata.xml
index 97520fe245f0..ba41cd79150b 100644
--- a/dev-java/icedtea-bin/metadata.xml
+++ b/dev-java/icedtea-bin/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
- </maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
diff --git a/dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild b/dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild
index 186bb18591b3..f36cb218a52d 100644
--- a/dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild
+++ b/dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,10 +23,10 @@ RESTRICT="test"
BDEPEND="
app-arch/zip
- sys-devel/bc
+ app-alternatives/bc
virtual/pkgconfig
virtual/rust
- doc? ( sys-devel/bc )
+ doc? ( app-alternatives/bc )
"
# Build within Portage using JDK 11+ (also presumably 9+) fails during
diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest
deleted file mode 100644
index 6adf8d98b5fa..000000000000
--- a/dev-java/icedtea/Manifest
+++ /dev/null
@@ -1,13 +0,0 @@
-DIST icedtea-3.21-aarch32-3.21.0.tar.xz 7207712 BLAKE2B bb9001aa31011fd0b29141caa1ba48344f2ca08e5dbe69cb3501a4830886d02b7a8782336a84273aad2ea721f26db2d3f51cdc72a9eccde1ad45a2790fb2caf1 SHA512 fc44c3c59164f6904ad92e04cb8023f39e82d6a2704fb5a91bf84d41066183ca6140273fa4c13d08a0dda47f263bd2d7d5138a5c45f205c58f649e6b87f15a9e
-DIST icedtea-3.21-corba-3.21.0.tar.xz 949700 BLAKE2B b845a46b5dcb22545073f894fbc5464e014f8f0e02e0cc66bccda0db6bd5566908a886823189ecf476847adb7f3fa5c009814e54c69d65a3a4a6c3cfc692564d SHA512 55110b92c6eddeb29eab97cbe644d8cc171a489b9fa806c81e4af88a1e5e3e6776fb97371715782935222944464f68e7d6783c46bd0d0de5659123f46c577a7a
-DIST icedtea-3.21-hotspot-3.21.0.tar.xz 7121192 BLAKE2B 64813c6a71405c5c093792dadf8613361a056b590fa4fa7453887ac5eb1eda1da63777a2f1e529e50eefe033d6f7f757d3235d53ba8f0f45d40dad6f0c215334 SHA512 678f6c53db5858ba828e063eeeddb727dbeb0586ff26a4287f9735dc01ad00ddcd9f41fa65343b81d5f5c512a944f47a447d4bdc929ca26ba78a68a7e3dfc1cd
-DIST icedtea-3.21-jaxp-3.21.0.tar.xz 2269276 BLAKE2B a1848fa6832a8c87c9a6edcfc5ac45fc487b5378368c07bafe5a3e54b849b81b781fb3652593e3506ffbd220a933cb5a04ae6dee86b3a44be7a1138813f5454c SHA512 ff14c9b63cee2a7b9213872b8710b1c5b901ccaf4122c8ddf5d8437d1cdd35cf9af50f461d05f004b74802ba8a21c7e9f288ec080b2b5f7daad065d40dc39258
-DIST icedtea-3.21-jaxws-3.21.0.tar.xz 2278396 BLAKE2B 1fb8608df94937447e192d010465379b2c3aa578f9c1ebd2eba445b1cd92ea9427511fd72351537ae78796d90d130497b02bc3e89b9e1ff1765013c681e6cf83 SHA512 e21bd36b6cfa92f648856532647150243f2184943dc6f5003fea02cf69aa9b6a94fb18d6478db28d5ee5e3af9b780122c0539fd3207cf4dfcb69a042835c13d6
-DIST icedtea-3.21-jdk-3.21.0.tar.xz 40714380 BLAKE2B be2bda5027d20515717ffecef71996bd56c4246a2a0e4d670bb386ea9ed2ff71c91ca8faa17ee209a5894784dff8e1b7d8df544c0b88b8f9da946514d9070bc7 SHA512 06385f14d093be250aa530d0659576d75aed57b0264ec7329d6b2c9309cf4ed660a9ecbfb6f199868ae23aedfbdb97036fccda501c00e9d2e3b1562c92b0ed37
-DIST icedtea-3.21-langtools-3.21.0.tar.xz 2081452 BLAKE2B 97c0820a9c734fc8d155fd5ec8fa9c56b4eaa0bf6fe5df5235b2dc5680f8c1989e608210007faa8e0120ad7dadfe682f4fe174e5cdae64d34624f239a7b1bb16 SHA512 949366138278104fc06452d8227bbe5d0829a9124503928cab34e5e9df37e25d25964a5c755e46d9ca74e63f1b318b2e3366f8f08e144524a8043bc2a7ca626e
-DIST icedtea-3.21-nashorn-3.21.0.tar.xz 2324264 BLAKE2B d7bcd9dd6df244004e3cb3ea1cdc178d781dd7f1b1d7b97df32385b67829bc3d9cb168caa64dc13fc15f27a9eeab276576d22cb804de5bc0d0209b98308a7105 SHA512 eda17f94ed2f34dd5bc4670dd3340d50de956723213948fd15963b0a589433bbe2e0ba8be7761974754b6a5d875ef58c31839daa6fef7215af552842f787bb44
-DIST icedtea-3.21-openjdk-3.21.0.tar.xz 367068 BLAKE2B 7fe212e84f1f527c229a854212617cd99457c0a4c5fdbd41a1ae65098706a22843e52a108cbf62fac341b9aa85e22f00746bb5a84e7d249ebbd605630bee127a SHA512 6a1706dfcb5e5d79191c01db6da30ca0ca48cea628a26a3a35f6e43c710091e25c97ec95122e8bc19b4ac69ede27a8dae37b49e1a7e4db07a635ded69e2e0336
-DIST icedtea-3.21-shenandoah-3.21.0.tar.xz 7295776 BLAKE2B c139711d81ccf593a93f786c398371eaddbaa9aa5044683669204ef9671cd17e80488ba2d290565ba5f1e27a62fa696c3d331c215442ddd29f3067b60682adec SHA512 c0282207854ad13d57dc7e1dd73412fb184406e7783d720cacbf58152177ae70af51bb4d577442bc1bebc75e88458cdb86356b79857b01eafb1eb214dbc439f4
-DIST icedtea-3.21.0.tar.xz 1574548 BLAKE2B 55dca04bf55a272a92f161a96a1cabe7c0e1f46289d95d74e9253c4da45d8df00e292e5d806118805241ea5c4b914643e380b05ad7996d850a8e5eebd7a2959a SHA512 874f91f3c3311d7017efb91aaff4e2fb660f55c58a626bcf5b120b7158df15e9b94abda7cd28f9620ad76c50bfa89cc8c1d251c193404c0db51ff1430167b018
-DIST icedtea-cacao-c182f119eaad.tar.xz 3056520 BLAKE2B 6b1be66ce19f491d49f1591babcd8c088e8e327f828dca3f30b8f8b04c132140f8b9f487ef6d91aed212aebab2c7c3052d79fa3f2d76d3832341d94d48e77089 SHA512 22e8a031db5f93f82b276b310c175f1e926e48d64e1e50bebe51138e0f66391cd005501491a959d31663f338f27a29ec984ac29f77078f59472856e4d08edef7
-DIST icedtea-jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz 317187 BLAKE2B 1ca581a02be4cf5c09162687bbc90ec01b58b4910d866d11512cf17a1caff181fdc69e42f7498b2df9deb875ddc6efc6bc2888428f411da94bbc2313ddf5a2c9 SHA512 a31348481e1c02747f5bb9db333f855c45a1555aa187ee35de5ef553a10a8a47dfcc1beb1e69502046c1758438b91958a328e0a0015812c153221f67734a70a6
diff --git a/dev-java/icedtea/files/icedtea.env.sh b/dev-java/icedtea/files/icedtea.env.sh
deleted file mode 100644
index ac8303bda073..000000000000
--- a/dev-java/icedtea/files/icedtea.env.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="IcedTea JDK ${PV}"
-JAVA_HOME="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}"
-JDK_HOME="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}"
-JAVAC="\${JAVA_HOME}/bin/javac"
-PATH="\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin"
-ROOTPATH="\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin"
-LDPATH="\${JAVA_HOME}/jre/lib/$(get_system_arch)/:\${JAVA_HOME}/jre/lib/$(get_system_arch)/server/"
-MANPATH="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}/man"
-PROVIDES_TYPE="JDK JRE"
-PROVIDES_VERSION="1.${SLOT}"
-# Taken from sun.boot.class.path property
-BOOTCLASSPATH="\${JAVA_HOME}/jre/lib/resources.jar:\${JAVA_HOME}/jre/lib/rt.jar:\${JAVA_HOME}/jre/lib/sunrsasign.jar:\${JAVA_HOME}/jre/lib/jsse.jar:\${JAVA_HOME}/jre/lib/jce.jar:\${JAVA_HOME}/jre/lib/charsets.jar:\${JAVA_HOME}/jre/lib/jfr.jar"
-GENERATION="2"
-ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch b/dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch
deleted file mode 100644
index ba5283f15771..000000000000
--- a/dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Workarounds build error:
-Error: dl failure on line 895
-Error relocating .../libjvm.so: _ZN14ArrayAllocatorImL10MemoryType7EE4freeEv: symbol not found
-
-Possibly due to g++ 10.x error on not properly instantiating the template.
-
---- openjdk/hotspot/src/share/vm/utilities/bitMap.cpp.orig 2020-11-10 14:07:08.372045326 +0200
-+++ openjdk/hotspot/src/share/vm/utilities/bitMap.cpp 2020-11-10 14:08:07.911412813 +0200
-@@ -42,6 +42,7 @@
- # include "os_bsd.inline.hpp"
- #endif
-
-+template class ArrayAllocator<BitMap::bm_word_t, mtInternal>;
-
- BitMap::BitMap(bm_word_t* map, idx_t size_in_bits) :
- _map(map), _size(size_in_bits), _map_allocator(false)
diff --git a/dev-java/icedtea/icedtea-3.21.0.ebuild b/dev-java/icedtea/icedtea-3.21.0.ebuild
deleted file mode 100644
index 9e6737770814..000000000000
--- a/dev-java/icedtea/icedtea-3.21.0.ebuild
+++ /dev/null
@@ -1,385 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
-
-# *********************************************************
-# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL *
-# *********************************************************
-
-EAPI=6
-SLOT="8"
-
-inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs xdg-utils
-
-ICEDTEA_VER=$(ver_cut 1-3)
-ICEDTEA_BRANCH=$(ver_cut 1-2)
-ICEDTEA_PKG=icedtea-${ICEDTEA_VER}
-
-CORBA_TARBALL="${PV}.tar.xz"
-JAXP_TARBALL="${PV}.tar.xz"
-JAXWS_TARBALL="${PV}.tar.xz"
-JDK_TARBALL="${PV}.tar.xz"
-LANGTOOLS_TARBALL="${PV}.tar.xz"
-OPENJDK_TARBALL="${PV}.tar.xz"
-NASHORN_TARBALL="${PV}.tar.xz"
-HOTSPOT_TARBALL="${PV}.tar.xz"
-SHENANDOAH_TARBALL="${PV}.tar.xz"
-AARCH32_TARBALL="${PV}.tar.xz"
-
-CACAO_TARBALL="cacao-c182f119eaad.tar.xz"
-JAMVM_TARBALL="jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz"
-
-CORBA_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-corba-${CORBA_TARBALL}"
-JAXP_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxp-${JAXP_TARBALL}"
-JAXWS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxws-${JAXWS_TARBALL}"
-JDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jdk-${JDK_TARBALL}"
-LANGTOOLS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-langtools-${LANGTOOLS_TARBALL}"
-OPENJDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-openjdk-${OPENJDK_TARBALL}"
-NASHORN_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-nashorn-${NASHORN_TARBALL}"
-HOTSPOT_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-hotspot-${HOTSPOT_TARBALL}"
-SHENANDOAH_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-shenandoah-${SHENANDOAH_TARBALL}"
-AARCH32_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-aarch32-${AARCH32_TARBALL}"
-
-CACAO_GENTOO_TARBALL="icedtea-${CACAO_TARBALL}"
-JAMVM_GENTOO_TARBALL="icedtea-${JAMVM_TARBALL}"
-
-DROP_URL="https://icedtea.classpath.org/download/drops"
-ICEDTEA_URL="${DROP_URL}/icedtea${SLOT}/${ICEDTEA_VER}"
-
-DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies"
-HOMEPAGE="https://icedtea.classpath.org"
-SRC_PKG="${ICEDTEA_PKG}.tar.xz"
-SRC_URI="
- https://icedtea.classpath.org/download/source/${SRC_PKG}
- ${ICEDTEA_URL}/openjdk.tar.xz -> ${OPENJDK_GENTOO_TARBALL}
- ${ICEDTEA_URL}/corba.tar.xz -> ${CORBA_GENTOO_TARBALL}
- ${ICEDTEA_URL}/jaxp.tar.xz -> ${JAXP_GENTOO_TARBALL}
- ${ICEDTEA_URL}/jaxws.tar.xz -> ${JAXWS_GENTOO_TARBALL}
- ${ICEDTEA_URL}/jdk.tar.xz -> ${JDK_GENTOO_TARBALL}
- ${ICEDTEA_URL}/hotspot.tar.xz -> ${HOTSPOT_GENTOO_TARBALL}
- ${ICEDTEA_URL}/nashorn.tar.xz -> ${NASHORN_GENTOO_TARBALL}
- ${ICEDTEA_URL}/langtools.tar.xz -> ${LANGTOOLS_GENTOO_TARBALL}
- shenandoah? ( ${ICEDTEA_URL}/shenandoah.tar.xz -> ${SHENANDOAH_GENTOO_TARBALL} )
- arm? ( ${ICEDTEA_URL}/aarch32.tar.xz -> ${AARCH32_GENTOO_TARBALL} )
- ${DROP_URL}/cacao/${CACAO_TARBALL} -> ${CACAO_GENTOO_TARBALL}
- ${DROP_URL}/jamvm/${JAMVM_TARBALL} -> ${JAMVM_GENTOO_TARBALL}"
-
-LICENSE="Apache-1.1 Apache-2.0 GPL-1 GPL-2 GPL-2-with-linking-exception LGPL-2 MPL-1.0 MPL-1.1 public-domain W3C"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-IUSE="+alsa cacao +cups doc examples +gtk headless-awt
- jamvm +jbootstrap kerberos pax-kernel pch
- pulseaudio sctp selinux shenandoah smartcard +source +system-lcms test zero"
-
-RESTRICT="!test? ( test )"
-REQUIRED_USE="gtk? ( !headless-awt )"
-
-# Ideally the following were optional at build time.
-ALSA_COMMON_DEP=">=media-libs/alsa-lib-1.0"
-CUPS_COMMON_DEP=">=net-print/cups-1.2.12"
-
-X_COMMON_DEP="
- >=media-libs/giflib-4.1.6:0=
- >=media-libs/libpng-1.2:0=
- >=x11-libs/libX11-1.1.3
- >=x11-libs/libXext-1.1.1
- >=x11-libs/libXi-1.1.3
- >=x11-libs/libXrender-0.9.4
- >=x11-libs/libXtst-1.0.3
- x11-libs/libXcomposite
-"
-
-X_DEPEND="
- x11-base/xorg-proto
- >=x11-libs/libXau-1.0.3
- >=x11-libs/libXdmcp-1.0.2
- >=x11-libs/libXinerama-1.0.2
-"
-
-# The Javascript requirement is obsolete; OpenJDK 8+ has Nashorn
-COMMON_DEP="
- >=dev-libs/glib-2.26:2=
- >=dev-util/systemtap-1
- media-libs/fontconfig:1.0=
- >=media-libs/freetype-2.5.3:2=
- >=sys-libs/zlib-1.2.3
- virtual/jpeg:0=
- gtk? (
- >=dev-libs/atk-1.30.0
- >=x11-libs/cairo-1.8.8
- x11-libs/gdk-pixbuf:2
- >=x11-libs/gtk+-2.8:2
- >=x11-libs/pango-1.24.5
- )
- kerberos? ( virtual/krb5 )
- sctp? ( net-misc/lksctp-tools )
- smartcard? ( sys-apps/pcsc-lite )
- system-lcms? ( >=media-libs/lcms-2.9:2= )
-"
-
-RDEPEND="${COMMON_DEP}
- !dev-java/icedtea:0
- !dev-java/icedtea-web:7
- >=gnome-base/gsettings-desktop-schemas-3.12.2
- >=sys-apps/baselayout-java-0.1.0-r1
- virtual/ttf-fonts
- alsa? ( ${ALSA_COMMON_DEP} )
- cups? ( ${CUPS_COMMON_DEP} )
- !headless-awt? ( ${X_COMMON_DEP} )
- selinux? ( sec-policy/selinux-java )
-"
-
-# perl is needed for running the SystemTap tests and the bootstrap javac
-# lsb-release is used to obtain distro information for the version & crash dump output
-# attr is needed for xattr.h which defines the extended attribute syscalls used by NIO2
-# x11-libs/libXt is needed for headers only (Intrinsic.h, IntrinsicP.h, Shell.h, StringDefs.h)
-# Ant is no longer needed under the new build system
-DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND}
- || (
- dev-java/openjdk-bin:8
- dev-java/openjdk:8
- dev-java/icedtea-bin:8
- dev-java/icedtea:8
- )
- app-arch/cpio
- app-arch/unzip
- app-arch/zip
- app-misc/ca-certificates
- dev-lang/perl
- dev-libs/openssl:0
- sys-apps/attr
- sys-apps/lsb-release
- x11-libs/libXt
- virtual/pkgconfig
- pax-kernel? ( sys-apps/elfix )"
-
-PDEPEND="pulseaudio? ( dev-java/icedtea-sound )"
-
-S="${WORKDIR}"/${ICEDTEA_PKG}
-
-icedtea_check_requirements() {
- local CHECKREQS_DISK_BUILD
-
- if use doc; then
- CHECKREQS_DISK_BUILD="9000M"
- else
- CHECKREQS_DISK_BUILD="8500M"
- fi
-
- check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- icedtea_check_requirements
-}
-
-pkg_setup() {
- icedtea_check_requirements
-
- JAVA_PKG_WANT_BUILD_VM="
- openjdk-8 openjdk-bin-8
- icedtea-8 icedtea-bin-8"
- JAVA_PKG_WANT_SOURCE="1.5"
- JAVA_PKG_WANT_TARGET="1.5"
-
- java-vm-2_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-src_unpack() {
- unpack ${SRC_PKG}
-}
-
-src_configure() {
- # GCC10/-fno-common handling, #723102
- if [[ $(gcc-major-version) -ge 10 ]]; then
- append-flags -fcommon
- append-flags -fno-delete-null-pointer-checks -fno-lifetime-dse
- fi
- # this patch helps with gcc10 as well
- # since build system unpacks tarballs itself, this is a way to force makefile
- # to apply our patch. it expects relative path inside source, so we can't specify
- # ${FILESDIR} directly.
- mkdir -v gentoo_patches || die
- cp -v "${FILESDIR}/openjdk-8-hotspot-arrayallocator.patch" gentoo_patches || die
- export DISTRIBUTION_PATCHES="gentoo_patches//openjdk-8-hotspot-arrayallocator.patch"
-
- # For bootstrap builds as the sandbox control file might not yet exist.
- addpredict /proc/self/coredump_filter #nowarn
-
- # icedtea doesn't like some locales. #330433 #389717
- export LANG="C" LC_ALL="C"
-
- local cacao_config config hotspot_port hs_config jamvm_config use_cacao use_jamvm use_zero zero_config
- local vm=$(java-pkg_get-current-vm)
-
- # gcj-jdk ensures ecj is present.
- if use jbootstrap || has "${vm}" gcj-jdk; then
- use jbootstrap || einfo "bootstrap is necessary when building with ${vm}, ignoring USE=\"-jbootstrap\""
- config+=" --enable-bootstrap"
- else
- config+=" --disable-bootstrap"
- fi
-
- # Use Zero if requested
- if use zero; then
- use_zero="yes"
- fi
-
- # Use JamVM if requested
- if use jamvm; then
- use_jamvm="yes"
- fi
-
- # Use CACAO if requested
- if use cacao; then
- use_cacao="yes"
- fi
-
- # Are we on a architecture with a HotSpot port?
- # In-tree JIT ports are available for amd64, arm, arm64, ppc64 (be&le), SPARC and x86.
- if { use amd64 || use arm || use arm64 || use ppc64 || use sparc || use x86; }; then
- hotspot_port="yes"
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
- fi
-
- # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ...
- # Otherwise use Zero for now until alternate VMs are working
- if test "x${hotspot_port}" != "xyes"; then
- use_zero="yes"
- fi
-
- if use shenandoah; then
- if { use amd64 || use arm64; }; then
- hs_config="--with-hotspot-build=shenandoah"
- hs_config+=" --with-hotspot-src-zip="${DISTDIR}/${SHENANDOAH_GENTOO_TARBALL}""
- else
- eerror "Shenandoah is only supported on arm64 and x86_64. Please re-build with USE="-shenandoah""
- fi
- else
- if use arm ; then
- hs_config="--with-hotspot-src-zip="${DISTDIR}/${AARCH32_GENTOO_TARBALL}""
- else
- hs_config="--with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_GENTOO_TARBALL}""
- fi
- fi
-
- # Turn on JamVM if needed (non-HS archs) or requested
- if test "x${use_jamvm}" = "xyes"; then
- if test "x${hotspot_port}" = "xyes"; then
- ewarn 'Enabling JamVM on an architecture with HotSpot support; issues may result.'
- ewarn 'If so, please rebuild with USE="-jamvm"'
- fi
- ewarn 'JamVM is known to still have issues with IcedTea 3.x; please rebuild with USE="-jamvm"'
- jamvm_config="--enable-jamvm"
- fi
-
- # Turn on CACAO if needed (non-HS archs) or requested
- if test "x${use_cacao}" = "xyes"; then
- if test "x${hotspot_port}" = "xyes"; then
- ewarn 'Enabling CACAO on an architecture with HotSpot support; issues may result.'
- ewarn 'If so, please rebuild with USE="-cacao"'
- fi
- ewarn 'CACAO is known to still have issues with IcedTea 3.x; please rebuild with USE="-cacao"'
- cacao_config="--enable-cacao"
- fi
-
- # Turn on Zero if needed (non-HS/CACAO archs) or requested
- if test "x${use_zero}" = "xyes"; then
- if test "x${hotspot_port}" = "xyes"; then
- ewarn 'Enabling Zero on an architecture with HotSpot support; performance will be significantly reduced.'
- fi
- zero_config="--enable-zero"
- fi
-
- # PaX breaks pch, bug #601016
- if use pch && ! host-is-pax; then
- config+=" --enable-precompiled-headers"
- else
- config+=" --disable-precompiled-headers"
- fi
-
- config+=" --with-parallel-jobs=$(makeopts_jobs)"
-
- unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS
-
- # force bash for now https://bugs.gentoo.org/722292
- CONFIG_SHELL="${EPREFIX}/bin/bash" econf ${config} \
- --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_GENTOO_TARBALL}" \
- --with-corba-src-zip="${DISTDIR}/${CORBA_GENTOO_TARBALL}" \
- --with-jaxp-src-zip="${DISTDIR}/${JAXP_GENTOO_TARBALL}" \
- --with-jaxws-src-zip="${DISTDIR}/${JAXWS_GENTOO_TARBALL}" \
- --with-jdk-src-zip="${DISTDIR}/${JDK_GENTOO_TARBALL}" \
- --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_GENTOO_TARBALL}" \
- --with-nashorn-src-zip="${DISTDIR}/${NASHORN_GENTOO_TARBALL}" \
- --with-cacao-src-zip="${DISTDIR}/${CACAO_GENTOO_TARBALL}" \
- --with-jamvm-src-zip="${DISTDIR}/${JAMVM_GENTOO_TARBALL}" \
- --with-jdk-home="$(java-config -O)" \
- --prefix="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}" \
- --mandir="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}/man" \
- --with-pkgversion="Gentoo ${PF}" \
- --disable-ccache \
- --disable-downloading --disable-Werror --disable-tests \
- --disable-systemtap-tests --enable-improved-font-rendering \
- --enable-system-jpeg --enable-system-zlib \
- $(use_enable headless-awt headless) \
- $(use_enable !headless-awt system-gif) \
- $(use_enable !headless-awt system-png) \
- $(use_enable doc docs) \
- $(use_enable kerberos system-kerberos) \
- $(use_enable system-lcms) \
- $(use_with pax-kernel pax "${EPREFIX}/usr/sbin/paxmark.sh") \
- $(use_enable sctp system-sctp) \
- $(use_enable smartcard system-pcsc) \
- ${zero_config} ${cacao_config} ${jamvm_config} ${hs_config}
-}
-
-src_compile() {
- default
-}
-
-src_test() {
- default
-}
-
-src_install() {
- default
-
- local dest="/usr/$(get_libdir)/icedtea${SLOT}"
- local ddest="${ED}${dest#/}"
-
- if ! use alsa; then
- rm -v "${ddest}"/jre/lib/$(get_system_arch)/libjsoundalsa.* || die
- fi
-
- if ! use examples; then
- rm -r "${ddest}"/demo "${ddest}"/sample || die
- fi
-
- if ! use source; then
- rm -v "${ddest}"/src.zip || die
- fi
-
- dosym ../../../usr/share/doc/"${PF}" usr/share/doc/"${PN}${SLOT}"
-
- # Fix the permissions.
- find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die
-
- dosym ../../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
-
- java-vm_install-env "${FILESDIR}/icedtea.env.sh"
- java-vm_sandbox-predict /proc/self/coredump_filter
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- java-vm-2_pkg_postinst
- einfo "JavaWebStart functionality provided by icedtea-web package"
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- java-vm-2_pkg_postrm
-}
diff --git a/dev-java/icedtea/metadata.xml b/dev-java/icedtea/metadata.xml
deleted file mode 100644
index ed7f1f695903..000000000000
--- a/dev-java/icedtea/metadata.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>gnu_andrew@member.fsf.org</email>
- <name>Andrew John Hughes</name>
- </maintainer>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <longdescription>
- The IcedTea project provides a harness to build the source code from OpenJDK (http://openjdk.java.net) using Free Software build tools along with additional tools such as a browser plugin and Web Start support via NetX.
- </longdescription>
- <use>
- <flag name="cacao">Use the CACAO virtual machine rather than HotSpot.</flag>
- <flag name="cups">Link against the CUPS library at compile time, rather than using it dynamically at runtime.</flag>
- <flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
- <flag name="jamvm">Use the JamVM virtual machine rather than HotSpot.</flag>
- <flag name="jbootstrap">If possible, recompile the final IcedTea executables with itself.</flag>
- <flag name="kerberos">Link against Kerberos in order to obtain the cache location.</flag>
- <flag name="pax-kernel">Apply patch needed for pax enabled kernels.</flag>
- <flag name="pch">Build using pre-compiled headers.</flag>
- <flag name="sctp">Build the SCTP NIO channel implementation against lksctp</flag>
- <flag name="shenandoah">Include the Shenandoah ultra-low pause time garbage collector (-XX:+UseShenandoahGC) (arm64 and x86_64 only)</flag>
- <flag name="smartcard">Build the PCSC driver against pcsc-lite</flag>
- <flag name="system-lcms">Build against the system LCMS installation rather than the in-tree copy.</flag>
- <flag name="zero">Enable Zero assembler port (usually for non-HotSpot architectures)</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-java/icu4j/Manifest b/dev-java/icu4j/Manifest
index 654f43047d9e..2333f7ea8c09 100644
--- a/dev-java/icu4j/Manifest
+++ b/dev-java/icu4j/Manifest
@@ -1 +1 @@
-DIST icu-73.2.tar.gz 81522943 BLAKE2B 006d7ccab04385f0aa60e2e60b616be9598f448f27d9b0f6dba554874bfe1dd442ba0719a7677ba8aba7e4e0f05e5e50dca74855a900da1f496aad0cd54c3cdc SHA512 f234fb9c76af62dad59e159ef7f7792aca563d88f2988d3d1ecc8be6250837beb9a530ec121e0949f6925ee8e5171a0d04fa41a0c50d9993c4061fa55be6836e
+DIST icu-74.2.tar.gz 65888936 BLAKE2B 81d5acddbfc58a859906cb61660b6f230b88f4a1b1cfd56838843e9445b5858d3dd4888707026340581322143f6a4b7b81f53b6431fd5d4cc3fb90531c4d82fb SHA512 728ae0f09ffc802d675bcf5b849e3081472de8417736bf8b7df0f4db9d1fb8073779be76536764c9111f7cb0e5ab2d2af6c644cc24be432b9eeae9063802ad6c
diff --git a/dev-java/icu4j/icu4j-73.2.ebuild b/dev-java/icu4j/icu4j-73.2.ebuild
deleted file mode 100644
index bb57ea2829c9..000000000000
--- a/dev-java/icu4j/icu4j-73.2.ebuild
+++ /dev/null
@@ -1,240 +0,0 @@
-# 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="com.ibm.icu:icu4j:${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:*"
-
-HTML_DOCS=( ../{APIChangeReport,readme}.html )
-
-JAVA_TEST_EXCLUDES=(
- # Invalid tests, not run by maven
- "com.ibm.icu.dev.data.TestDataElements_testtypes"
- "com.ibm.icu.dev.data.resources.TestDataElements_en_Latn_US"
- "com.ibm.icu.dev.data.resources.TestDataElements_en_US"
- "com.ibm.icu.dev.data.resources.TestDataElements_fr_Latn_FR"
- "com.ibm.icu.dev.data.resources.TestDataElements_te"
- "com.ibm.icu.dev.data.resources.TestMessages"
- "com.ibm.icu.dev.test.ModuleTest"
- "com.ibm.icu.dev.test.TestBoilerplate"
- "com.ibm.icu.dev.test.TestDataModule"
- "com.ibm.icu.dev.test.bidi.TestData"
- "com.ibm.icu.dev.test.calendar.ChineseTestCase"
- "com.ibm.icu.dev.test.calendar.TestCase"
- "com.ibm.icu.dev.test.format.ExhaustivePersonNameFormatterTest"
- "com.ibm.icu.dev.test.localespi.TestUtil"
- "com.ibm.icu.dev.test.message2.TestCase"
- "com.ibm.icu.dev.test.stringprep.TestData"
- "com.ibm.icu.dev.test.translit.TestUtility"
- # Maven: [INFO] Tests run: 364, Failures: 0, Errors: 0, Skipped: 0
- "com.ibm.icu.dev.test.serializable.CompatibilityTest" # Tests run: 364, Failures: 4
- # Maven: [INFO] Tests run: 90, Failures: 0, Errors: 0, Skipped: 0
- "com.ibm.icu.dev.test.serializable.CoverageTest" # Tests run: 99, Failures: 9
- # Following tests need to run separately:
- com.ibm.icu.dev.test.calendar.CalendarRegressionTest
- com.ibm.icu.dev.test.calendar.CompatibilityTest
- com.ibm.icu.dev.test.calendar.DataDrivenCalendarTest
- com.ibm.icu.dev.test.calendar.HolidayTest
- com.ibm.icu.dev.test.calendar.IndianTest
- com.ibm.icu.dev.test.calendar.IslamicTest
- com.ibm.icu.dev.test.calendar.JapaneseTest
- com.ibm.icu.dev.test.format.DataDrivenFormatTest
- com.ibm.icu.dev.test.format.DateFormatRegressionTest
- com.ibm.icu.dev.test.format.DateFormatRoundTripTest
- com.ibm.icu.dev.test.format.DateIntervalFormatTest
- com.ibm.icu.dev.test.format.DateTimeGeneratorTest
- com.ibm.icu.dev.test.format.TestMessageFormat
- com.ibm.icu.dev.test.message2.MessageFormat2Test
- com.ibm.icu.dev.test.message2.Mf2FeaturesTest
- com.ibm.icu.dev.test.message2.Mf2IcuTest
- com.ibm.icu.dev.test.timezone.TimeZoneBoundaryTest
- com.ibm.icu.dev.test.util.CurrencyTest
-)
-JAVA_TEST_EXTRA_ARGS="-Djava.locale.providers=CLDR,COMPAT,SPI"
-JAVA_TEST_GENTOO_CLASSPATH="junit-4,junitparams"
-JAVA_TEST_RESOURCE_DIRS=(
- tests/res/collate/src
- tests/res/core/src
- tests/res/translit/src
-)
-JAVA_TEST_SRC_DIR=(
- tests/charset/src
- tests/collate/src
- tests/core/src
- tests/localespi/src
- tests/packaging/src
- tests/translit/src
-)
-
-src_prepare() {
- java-pkg_clean ! -path "./shared/data/*" # keep icudata.jar, icutzdata.jar, testdata.jar
- java-pkg-2_src_prepare
-
- # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
- mkdir -p resources || die
-
- pushd classes > /dev/null || die
- find -type f \
- ! -name '*.java' \
- ! -name 'license.html' \
- | xargs cp --parent -t ../resources || die
- popd > /dev/null || die
-
- pushd resources/core/src > /dev/null || die
- # icudata and icutzdata for "icu4j.jar"
- jar -xf "${S}"/shared/data/icudata.jar || die
- jar -xf "${S}"/shared/data/icutzdata.jar || die
- # move these resources to "icu4j-charset.jar"
- mkdir -p "${S}"/resources/charset/src/com/ibm/icu/impl/data/icudt"$(ver_cut 1)"b || die
- mv com/ibm/icu/impl/data/icudt"$(ver_cut 1)"b/{*.cnv,cnvalias.icu} \
- "${S}"/resources/charset/src/com/ibm/icu/impl/data/icudt"$(ver_cut 1)"b || die
-
- # create 9 files com/ibm/icu/impl/data/icudt69b/*/fullLocaleNames.lst
- for dir in $(find com/ibm/icu/impl/data/icudt"$(ver_cut 1)"b/ -type d ! -name 'unit' -exec echo {} +); do
- ls -1 $dir/*.res | sed -e 's%.*\/%%' -e 's%\..*$%%' -e '/pool/d' -e '/res_index/d' -e '/tzdbNames/d'\
- > $dir/'fullLocaleNames.lst';
- done || die "fullLocaleNames.lst failed"
- popd > /dev/null || die
-
- if use test; then
- # initializationError(com.ibm.icu.dev.data.resources.TestDataElements)
- # but test_excluding it would kill tousands of other tests.
- mkdir -p tests/framework/src/com/ibm/icu/dev/data/resources || die
- mv tests/{core,framework}/src/com/ibm/icu/dev/data/resources/TestDataElements.java || die
-
- # Separate tests resources
- mkdir tests/res || die
- pushd tests > /dev/null || die
- find -type f \
- ! -name '*.java' \
- | xargs cp --parent -t res || die
- popd > /dev/null || die
-
- cp -r ../tools/misc/{src,resources} || die
- find ../tools/misc/resources -type f -name '*.java' -exec rm -rf {} + || die
- fi
-}
-
-src_compile() {
- 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="resources/core/src"
- JAVA_SRC_DIR=(
- classes/collate/src
- classes/core/src
- classes/currdata/src
- classes/langdata/src
- classes/regiondata/src
- classes/translit/src
- )
- java-pkg-simple_src_compile
- JAVA_GENTOO_CLASSPATH_EXTRA+=":icu4j.jar"
- 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="resources/charset/src"
- JAVA_SRC_DIR=( classes/charset/src )
- java-pkg-simple_src_compile
- JAVA_GENTOO_CLASSPATH_EXTRA+=":icu4j-charset.jar"
- 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="resources/localespi/src"
- JAVA_SRC_DIR=( classes/localespi/src )
- java-pkg-simple_src_compile
- JAVA_GENTOO_CLASSPATH_EXTRA+=":icu4j-localespi.jar"
- rm -r target || die
-
- # main/test/framework
- # needed for compilicg the tests
- # but "No runnable methods" ("Invalid test class")
- if use test; then
- JAVA_JAR_FILENAME="framework.jar"
- JAVA_RESOURCE_DIRS=( tests/res/framework/src ../tools/misc/resources )
- JAVA_SRC_DIR=( tests/framework/src ../tools/misc/src )
- java-pkg-simple_src_compile
- rm -fr target || die
- fi
-
- # javadocs
- if use doc; then
- JAVA_JAR_FILENAME="ignoreme.jar"
- JAVA_SRC_DIR=( classes )
- 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_GENTOO_CLASSPATH_EXTRA+=":framework.jar:shared/data/testdata.jar"
-
- JAVA_TEST_RUN_ONLY=(
- com.ibm.icu.dev.test.rbbi.AbstractBreakIteratorTests
- com.ibm.icu.dev.test.calendar.CalendarRegressionTest
- com.ibm.icu.dev.test.calendar.CompatibilityTest
- com.ibm.icu.dev.test.calendar.DataDrivenCalendarTest
- com.ibm.icu.dev.test.calendar.HolidayTest
- com.ibm.icu.dev.test.calendar.IndianTest
- com.ibm.icu.dev.test.calendar.IslamicTest
- com.ibm.icu.dev.test.calendar.JapaneseTest
- com.ibm.icu.dev.test.format.DataDrivenFormatTest
- com.ibm.icu.dev.test.format.DateFormatRegressionTest
- com.ibm.icu.dev.test.format.DateFormatRoundTripTest
- com.ibm.icu.dev.test.format.DateIntervalFormatTest
- com.ibm.icu.dev.test.format.DateTimeGeneratorTest
- com.ibm.icu.dev.test.format.TestMessageFormat
- com.ibm.icu.dev.test.message2.MessageFormat2Test
- com.ibm.icu.dev.test.message2.Mf2FeaturesTest
- com.ibm.icu.dev.test.message2.Mf2IcuTest
- com.ibm.icu.dev.test.timezone.TimeZoneBoundaryTest
- com.ibm.icu.dev.test.util.CurrencyTest
- )
- java-pkg-simple_src_test
-
- JAVA_TEST_RUN_ONLY=()
- # ../maven-build/maven-icu4j-localespi/pom.xml#L133-L143
- 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/icu4j/icu4j-74.2-r1.ebuild b/dev-java/icu4j/icu4j-74.2-r1.ebuild
new file mode 100644
index 000000000000..df2c5aa4daba
--- /dev/null
+++ b/dev-java/icu4j/icu4j-74.2-r1.ebuild
@@ -0,0 +1,193 @@
+# Copyright 1999-2024 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="0"
+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_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/jackson-core/metadata.xml b/dev-java/jackson-core/metadata.xml
index 7c4f08455c28..b23e2bb1f6ba 100644
--- a/dev-java/jackson-core/metadata.xml
+++ b/dev-java/jackson-core/metadata.xml
@@ -6,5 +6,6 @@
</maintainer>
<upstream>
<bugs-to>https://github.com/FasterXML/jackson-core/issues</bugs-to>
+ <remote-id type="github">FasterXML/jackson-core</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jackson-databind/metadata.xml b/dev-java/jackson-databind/metadata.xml
index 7db69d87c0d8..de712481f022 100644
--- a/dev-java/jackson-databind/metadata.xml
+++ b/dev-java/jackson-databind/metadata.xml
@@ -6,5 +6,6 @@
</maintainer>
<upstream>
<bugs-to>https://github.com/FasterXML/jackson-databind/issues</bugs-to>
+ <remote-id type="github">FasterXML/jackson-databind</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jackson-dataformat-xml/metadata.xml b/dev-java/jackson-dataformat-xml/metadata.xml
index 76dcd355d49d..8891308e2cbd 100644
--- a/dev-java/jackson-dataformat-xml/metadata.xml
+++ b/dev-java/jackson-dataformat-xml/metadata.xml
@@ -9,5 +9,6 @@
</longdescription>
<upstream>
<bugs-to>https://github.com/FasterXML/jackson-dataformat-xml/issues</bugs-to>
+ <remote-id type="github">FasterXML/jackson-dataformat-xml</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jackson-module-jakarta-xmlbind/metadata.xml b/dev-java/jackson-module-jakarta-xmlbind/metadata.xml
index d8255baa3203..b32b36b8af8e 100644
--- a/dev-java/jackson-module-jakarta-xmlbind/metadata.xml
+++ b/dev-java/jackson-module-jakarta-xmlbind/metadata.xml
@@ -9,5 +9,6 @@
</longdescription>
<upstream>
<bugs-to>https://github.com/FasterXML/jackson-modules-base/issues</bugs-to>
+ <remote-id type="github">FasterXML/jackson-modules-base</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jakarta-mail-api/Manifest b/dev-java/jakarta-mail-api/Manifest
index 501667971499..0c2e67d3398e 100644
--- a/dev-java/jakarta-mail-api/Manifest
+++ b/dev-java/jakarta-mail-api/Manifest
@@ -1 +1,2 @@
DIST jakarta-mail-api-2.1.1.tar.gz 1214949 BLAKE2B d92861ed3c957db8d7fda2ec25269ed7b3ec27d55c6b8865278cd6b1dcdef750ecb126136760f15bf86216c14bb00a856a60719f6121ccb87b41523662754ab1 SHA512 e367c27d85aa9513ab1a4ff0a1eb9ef947b6fad6b0c24263c5f0c0befc8f152e193eedb4a0c9687aa3decac07615094904639e11db395d25dd45c5d9fd8677cc
+DIST jakarta-mail-api-2.1.3.tar.gz 1219840 BLAKE2B 6fff0fc63bcdb9f52e02c957408fffdc77be9733bc612f461500b23212572407b3a26dcef2434043d6b38011f8f8c8983a450a043f540c9217783247cf2bfd2b SHA512 274f8dfac3d228df4161a293ef02ca22cd7e411ee9143216eb6784a8bd049b9d2849566ce78baee0ba8e65ed5a7e84b4e03d8b551ac1e6273de1ed44e7798931
diff --git a/dev-java/jakarta-mail-api/jakarta-mail-api-2.1.3.ebuild b/dev-java/jakarta-mail-api/jakarta-mail-api-2.1.3.ebuild
new file mode 100644
index 000000000000..2f43cfc96efe
--- /dev/null
+++ b/dev-java/jakarta-mail-api/jakarta-mail-api-2.1.3.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="jakarta.mail:jakarta.mail-api:2.1.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Mail API 2.1 Specification API"
+HOMEPAGE="https://jakartaee.github.io/mail-api/"
+SRC_URI="https://github.com/jakartaee/mail-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/mail-api-${PV}/api"
+
+LICENSE="EPL-1.0 EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+DEPEND="
+ dev-java/jakarta-activation-api:2
+ >=virtual/jdk-11:*
+ test? (
+ dev-java/angus-activation:0
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-2"
+JAVA_SRC_DIR="src/main/"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,angus-activation"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # bug #853151 - copying from target/classes as a workaraound
+ # handing of module-info.java in java-pkg-simple_src_test seems not aware of target/classes
+ mkdir -p generated-test/jakarta/mail || die
+ cp -r {target/classes,generated-test}/jakarta/mail/event || die
+ cp -r {target/classes,generated-test}/jakarta/mail/util || die
+ cp -r target/classes/jakarta/mail/Provider* generated-test/jakarta/mail || die
+
+ # These tests need to run separately, otherwise would fail
+ JAVA_TEST_EXCLUDES=(
+ jakarta.mail.internet.ContentDispositionNoStrictTest
+ jakarta.mail.internet.WindowsFileNamesTest
+ jakarta.mail.internet.AppleFileNamesTest
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="jakarta.mail.internet.ContentDispositionNoStrictTest"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="jakarta.mail.internet.WindowsFileNamesTest"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="jakarta.mail.internet.AppleFileNamesTest"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jakarta-mail/files/jakarta-mail-2.0.1-LogManagerPropertiesTest.patch b/dev-java/jakarta-mail/files/jakarta-mail-2.0.1-LogManagerPropertiesTest.patch
new file mode 100644
index 000000000000..7848f1e77c9a
--- /dev/null
+++ b/dev-java/jakarta-mail/files/jakarta-mail-2.0.1-LogManagerPropertiesTest.patch
@@ -0,0 +1,11 @@
+--- a/src/test/java/com/sun/mail/util/logging/LogManagerPropertiesTest.java
++++ b/src/test/java/com/sun/mail/util/logging/LogManagerPropertiesTest.java
+@@ -78,7 +78,7 @@ public class LogManagerPropertiesTest extends AbstractLogging {
+ assertEquals(Arrays.toString(declared), 0, declared.length);
+ }
+
+- @Test
++ @Test @Ignore
+ public void testCheckAccessPresent() {
+ LogManager m = LogManager.getLogManager();
+ m.checkAccess();
diff --git a/dev-java/jakarta-mail/jakarta-mail-2.0.1.ebuild b/dev-java/jakarta-mail/jakarta-mail-2.0.1.ebuild
index 2fcf73b3a66e..0e12088b9f5e 100644
--- a/dev-java/jakarta-mail/jakarta-mail-2.0.1.ebuild
+++ b/dev-java/jakarta-mail/jakarta-mail-2.0.1.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 pom.xml --download-uri https://github.com/jakartaee/mail-api/archive/2.0.1.tar.gz --slot 0 --keywords "~amd64" --ebuild jakarta-mail-2.0.1.ebuild
-
EAPI=8
JAVA_PKG_IUSE="doc source test"
@@ -15,31 +12,22 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Implementation of the Jakarta Mail API"
HOMEPAGE="https://github.com/jakartaee/mail-api"
SRC_URI="https://github.com/jakartaee/mail-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/mail-api-${PV}/mail"
LICENSE="EPL-1.0 EPL-2.0 GPL-2-with-classpath-exception"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-# Common dependencies
-# POM: pom.xml
-# com.sun.activation:jakarta.activation:2.0.1 -> >=dev-java/jakarta-activation-2.0.1:2
-
CP_DEPEND="dev-java/jakarta-activation:2"
-DEPEND="
- >=virtual/jdk-11:*
- ${CP_DEPEND}
-"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CP_DEPEND}
-"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
-S="${WORKDIR}/mail-api-${PV}/mail"
-
JAVA_ENCODING="iso-8859-1"
JAVA_SRC_DIR="src/main/java"
@@ -56,15 +44,25 @@ src_prepare() {
}
src_test() {
+ # test failure with jdk:21
+ # 1) testCheckAccessPresent(com.sun.mail.util.logging.LogManagerPropertiesTest)
+ # java.lang.UnsupportedOperationException:
+ # The Security Manager is deprecated and will be removed in a future release
+ # at java.base/java.lang.System.setSecurityManager(System.java:429)
+ # at com.sun.mail.util.logging.LogManagerPropertiesTest.testCheckAccessPresent(LogManagerPropertiesTest.java:89)
+ # https://github.com/jakartaee/mail-api/pull/704#issuecomment-1911924741
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 21; then
+ eapply "${FILESDIR}/jakarta-mail-2.0.1-LogManagerPropertiesTest.patch"
+ fi
pushd src/test/java || die
# Selection according to 137,138 pom.xml
- # This one does not run because of
+ # MailHandlerTest does not run because of
# "java.io.IOException: Permission denied"
# excluding it costs 141 tests.
- # 1) com.sun.mail.util.logging.MailHandlerTest
local JAVA_TEST_RUN_ONLY=$(find * \
- \( -wholename "**/*TestSuite.java" \
- -o -wholename "**/*Test.java" \) \
+ \( -path "**/*TestSuite.java" \
+ -o -path "**/*Test.java" \) \
! -name "MailHandlerTest.java" \
)
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
diff --git a/dev-java/jakartaee-migration/Manifest b/dev-java/jakartaee-migration/Manifest
index 085e1f137a17..604ff981904b 100644
--- a/dev-java/jakartaee-migration/Manifest
+++ b/dev-java/jakartaee-migration/Manifest
@@ -1 +1 @@
-DIST jakartaee-migration-1.0.7-sources.tar.gz 43381 BLAKE2B 9a1a6bfd217f77890940240c6c860e21e0b72c758a63426a0c63009213738a9322a758d4525a9a8a8c69883c490edf128d8b70a6120ede431da434c4d1408e19 SHA512 f7edd70b997b2ae2a93b14b93c5b6dcb80de04f554125729f89e62eddaecfbfea21b304226887edb029c8a7b255b50a55a38381d017c7d44859f2e56b912f25a
+DIST jakartaee-migration-1.0.8-sources.tar.gz 43466 BLAKE2B f9ffbb46ef6a26c9884e1d3eb55f283556cf8dbaf0955c9efe7e9766f77eadaae1e5bd066225948e9d97adac0f2f34fee3d6ad552bbbdad7303a0abb98d3070c SHA512 ecb1db63cb258b1b8c0e8106ea171e80e66622a48cafa62f8fb75e1b1ba6d539cfefc5dfe0ba9536d06b102c599afeba80d094598d2af3fe1d2ca153ef61ced8
diff --git a/dev-java/jakartaee-migration/jakartaee-migration-1.0.7-r1.ebuild b/dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild
index 4308d151f1bf..4ee56f6fa8ae 100644
--- a/dev-java/jakartaee-migration/jakartaee-migration-1.0.7-r1.ebuild
+++ b/dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.apache.tomcat:jakartaee-migration:1.0.7"
+MAVEN_ID="org.apache.tomcat:jakartaee-migration:1.0.8"
JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
@@ -12,73 +12,51 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Apache Tomcat tool for migration from Java EE 8 to Jakarta EE 9"
HOMEPAGE="https://tomcat.apache.org"
SRC_URI="mirror://apache/tomcat/${PN}/v${PV}/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
+S="${WORKDIR}/${P}"
+
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64"
-# Common dependencies
-# POM: pom.xml
-# commons-io:commons-io:2.11.0 -> >=dev-java/commons-io-2.11.0:1
-# org.apache.bcel:bcel:6.6.0 -> >=dev-java/bcel-6.6.0:0
-# org.apache.commons:commons-compress:1.22 -> !!!suitable-mavenVersion-not-found!!!
-
-CDEPEND="
- dev-java/ant-core:0
+CP_DEPEND="
+ >=dev-java/ant-1.10.14-r1:0
dev-java/bcel:0
- dev-java/commons-compress:0
+ >=dev-java/commons-compress-1.26.0:0
dev-java/commons-io:1
"
-# Compile dependencies
-# POM: pom.xml
-# org.apache.ant:ant:1.10.12 -> !!!suitable-mavenVersion-not-found!!!
-# POM: pom.xml
-# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
-
# we need jdk-11 just for some tests as those need stuff from newer jdk,
# otherwise the package as of version 1.0.7 compiles fine with jdk 1.8
# with tests disabled
# see bug https://bugs.gentoo.org/910499
-DEPEND="
- >=virtual/jdk-11:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
-JAVA_LAUNCHER_FILENAME="${PN}"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
-JAVA_GENTOO_CLASSPATH="ant-core,bcel,commons-compress,commons-io-1"
-JAVA_SRC_DIR="src/main/java"
JAVA_MAIN_CLASS="org.apache.tomcat.jakartaee.MigrationCLI"
-JAVA_RESOURCE_DIRS=(
- "src/main/resources"
-)
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "src/test/resources"
-)
JAVA_TEST_EXCLUDES=(
"org.apache.tomcat.jakartaee.TesterConstants"
)
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
src_prepare() {
- default
+ java-pkg-2_src_prepare
sed -i "s/\${project.version}/${PV}/g" src/main/resources/info.properties
}
src_test() {
# we need to create jar files for the tests the same way as it's done using pom.xml
local implementation_version=$(grep Implementation-Version pom.xml | grep -oE "[0-9]+\.[0-9]+\.[0-9]+")
- mkdir -p target/test-classes/META-INF || die
- pushd target/test-classes || die
+ mkdir -p generated-test/META-INF || die
+ pushd generated-test || die
echo "Implementation-Version: ${implementation_version}" > META-INF/MANIFEST.MF
ejavac -d . -encoding ${JAVA_ENCODING} $(find "${S}/${JAVA_TEST_SRC_DIR}" -name CommonGatewayInterface.java) || die
jar cfm cgi-api.jar META-INF/MANIFEST.MF $(find -name CommonGatewayInterface.class) || die
diff --git a/dev-java/jakartaee-migration/metadata.xml b/dev-java/jakartaee-migration/metadata.xml
index 6021501589e0..e9aebc513f50 100644
--- a/dev-java/jakartaee-migration/metadata.xml
+++ b/dev-java/jakartaee-migration/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">apache/tomcat-jakartaee-migration</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jal/jal-20031117-r6.ebuild b/dev-java/jal/jal-20031117-r7.ebuild
index d8d008aab7b0..184a2ce24dc7 100644
--- a/dev-java/jal/jal-20031117-r6.ebuild
+++ b/dev-java/jal/jal-20031117-r7.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
@@ -10,27 +10,24 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Partial port of the C++ Standard Template Library"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
+S="${WORKDIR}/${P}"
LICENSE="HPND"
SLOT="0"
KEYWORDS="amd64 x86"
-CP_DEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- ${CP_DEPEND}
- >=virtual/jre-1.8:*"
-
DEPEND="
- ${CP_DEPEND}
- >=virtual/jdk-1.8:*"
+ dev-java/ant:0
+ >=virtual/jdk-1.8:*
+"
-S="${WORKDIR}/${P}"
+RDEPEND=">=virtual/jre-1.8:*"
+JAVA_CLASSPATH_EXTRA="ant"
JAVA_SRC_DIR="src/jal"
src_prepare() {
- default
+ java-pkg-2_src_prepare
# Generate sources.
./instantiate -n byte bytes || die
diff --git a/dev-java/java-config/java-config-2.3.3-r1.ebuild b/dev-java/java-config/java-config-2.3.3-r1.ebuild
index b63dbff8d490..ab1cb1b890e9 100644
--- a/dev-java/java-config/java-config-2.3.3-r1.ebuild
+++ b/dev-java/java-config/java-config-2.3.3-r1.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} = 9999 ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/java-config.git"
else
SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+ KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="Java environment configuration query tool"
diff --git a/dev-java/java-diff-utils/java-diff-utils-4.12.ebuild b/dev-java/java-diff-utils/java-diff-utils-4.12.ebuild
index bb67109d452d..eda5f5df35e7 100644
--- a/dev-java/java-diff-utils/java-diff-utils-4.12.ebuild
+++ b/dev-java/java-diff-utils/java-diff-utils-4.12.ebuild
@@ -16,7 +16,7 @@ S="${WORKDIR}/java-diff-utils-java-diff-utils-parent-${PV}/java-diff-utils"
LICENSE="Apache-2.0"
SLOT="4"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 arm64 ppc64 x86"
RESTRICT="test" #839681
BDEPEND="app-arch/unzip"
diff --git a/dev-java/javacc/Manifest b/dev-java/javacc/Manifest
index b126cef8bf5a..b05142bce90b 100644
--- a/dev-java/javacc/Manifest
+++ b/dev-java/javacc/Manifest
@@ -1 +1,4 @@
+DIST javacc-4.1.tar.gz 769476 BLAKE2B c2a22fa78ff4dcf1e36221a23ca1e3cd1eecb473a59ea94ce52e298673f6bd18c0ea0cf757dd68885696ebc8cc724d271c69c923a21ffa433d03c1062b1201ee SHA512 911e5e9f062561ade1748dcef3596e0f25c399c4d52dd174773783dadf24a4ceea8d3feab9ab08880370677959051d8557aed815d4c4184f5ecd5789ee8a5754
DIST javacc-5.0src.tar.gz 810123 BLAKE2B 6833e79a33c7ae8b28902d1c372162a2f9e326629f0d4c1936a8c3638d3aa3f6bd5713aca8398ba5f1ff963fe585eb683fcd3009602ee592ba79692c8ba0f3d6 SHA512 91896a0affac1c4fd00a093a731dfd02bda548d1a4d83e1077ed36a67f4f9deab0ce9f2d0212fd4c08ab00065d3029533adbafbc026a22ca071285093bd3bba6
+DIST javacc-7.0.13.tar.gz 3199783 BLAKE2B 7e3dddbe53a6e417a31bb7386d154c0e9589f17f88e652f5e146a4e344d72cd948d4d8e55fab753bb983e5d31971efc948c1ecdca4e875031bea3f8a38bfc082 SHA512 ed71e47fc4a382c9c53067bbf73bd9736ee0c41d65e328d5e4843cd71c88d3b7715d7a8fe38f10152ef7ef3be064abf9e801c6ea78066c4fcbabf124dfc4e144
+DIST javacc-7.0.4.tar.gz 2842349 BLAKE2B e5a2e24c99e5e3883270cf0e3931d7667e5b5b49a11c1d9b79b98767f74f4addf2dc7d3d620550bc1b5bb0bfbef8bf07af48a40d250d0902d97c8215f6cb8e01 SHA512 b93c93e8490aae9a26b0de948896ec6d7a044c205d09584c3908988e24a3ea63a1147365115b17a15c6fb311c44f53ddff7c11f092731cbd05d3ec1950ef57f1
diff --git a/dev-java/javacc/javacc-4.1.ebuild b/dev-java/javacc/javacc-4.1.ebuild
new file mode 100644
index 000000000000..f74f36d4eb2f
--- /dev/null
+++ b/dev-java/javacc/javacc-4.1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc examples source test"
+MAVAN_ID="net.java.dev.javacc:javacc:${PV}"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Java Compiler Compiler - The Java Parser Generator"
+HOMEPAGE="https://javacc.github.io/javacc/"
+SRC_URI="https://github.com/javacc/javacc/archive/release_${PV//./}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/javacc-release_${PV//./}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="dev-java/junit:0"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( >=dev-java/ant-1.10.14:0[junit] )"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.0-javadoc.patch
+)
+
+JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./bootstrap/*"
+}
+
+src_test() {
+ java-pkg-2_src_test
+}
+
+src_install() {
+ java-pkg_dojar bin/lib/"${PN}".jar
+
+ if use doc; then
+ java-pkg_dohtml -r www/*
+ java-pkg_dojavadoc target/javadoc
+ fi
+
+ use examples && java-pkg_doexamples examples
+ use source && java-pkg_dosrc src/*
+
+ echo "JAVACC_HOME=${EPREFIX}/usr/share/javacc/" > "${T}"/22javacc-${SLOT} || die
+ doenvd "${T}"/22javacc-${SLOT}
+
+ echo "export VERSION=${PV}" > "${T}"/pre || die
+
+ local launcher
+ for launcher in javacc jjdoc jjtree; do
+ java-pkg_dolauncher ${launcher} -pre "${T}"/pre --main ${launcher}
+ done
+
+ einstalldocs
+}
diff --git a/dev-java/javacc/javacc-5.0-r4.ebuild b/dev-java/javacc/javacc-5.0-r5.ebuild
index f63c12eccf55..6df77f9fca66 100644
--- a/dev-java/javacc/javacc-5.0-r4.ebuild
+++ b/dev-java/javacc/javacc-5.0-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,7 +25,7 @@ RDEPEND="
DEPEND="
${CDEPEND}
>=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )"
+ test? ( >=dev-java/ant-1.10.14:0[junit] )"
S="${WORKDIR}/${PN}"
@@ -39,7 +39,7 @@ JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
EANT_GENTOO_CLASSPATH="junit"
src_prepare() {
- default
+ default #780585
rm -v lib/junit*/*.jar || die
}
diff --git a/dev-java/javacc/javacc-7.0.13.ebuild b/dev-java/javacc/javacc-7.0.13.ebuild
new file mode 100644
index 000000000000..29c7faf60f0d
--- /dev/null
+++ b/dev-java/javacc/javacc-7.0.13.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc examples source test"
+MAVAN_ID="net.java.dev.javacc:javacc:${PV}"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Java Compiler Compiler - The Java Parser Generator"
+HOMEPAGE="https://javacc.github.io/javacc/"
+SRC_URI="https://github.com/javacc/javacc/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="BSD-2"
+SLOT="7.0.13"
+KEYWORDS="~amd64 ~arm ~arm64"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? ( >=dev-java/ant-1.10.14:0[junit] )"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./bootstrap/*"
+}
+
+src_test() {
+ java-pkg-2_src_test
+}
+
+src_install() {
+ java-pkg_dojar "target/${PN}.jar"
+
+ use doc && java-pkg_dojavadoc target/javadoc
+
+ use examples && java-pkg_doexamples examples
+ use source && java-pkg_dosrc src/*
+
+ echo "JAVACC_HOME=${EPREFIX}/usr/share/javacc/" > "${T}"/22javacc-${SLOT} || die
+ doenvd "${T}"/22javacc-${SLOT}
+
+ echo "export VERSION=${PV}" > "${T}"/pre || die
+
+ local launcher
+ for launcher in javacc jjdoc jjtree; do
+ java-pkg_dolauncher ${launcher}-${SLOT} -pre "${T}"/pre --main ${launcher}
+ done
+
+ einstalldocs
+}
diff --git a/dev-java/javacc/javacc-7.0.4.ebuild b/dev-java/javacc/javacc-7.0.4.ebuild
new file mode 100644
index 000000000000..2451936f64aa
--- /dev/null
+++ b/dev-java/javacc/javacc-7.0.4.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc examples source test"
+MAVAN_ID="net.java.dev.javacc:javacc:${PV}"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Java Compiler Compiler - The Java Parser Generator"
+HOMEPAGE="https://javacc.github.io/javacc/"
+SRC_URI="https://github.com/javacc/javacc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="7.0.4"
+KEYWORDS="~amd64 ~arm ~arm64"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? ( >=dev-java/ant-1.10.14:0[junit] )"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=(
+ README
+ javacc-releases.notes
+ jjdoc-releases.notes
+ jjtree-releases.notes
+ release.notes
+)
+
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./bootstrap/*"
+}
+
+src_test() {
+ java-pkg-2_src_test
+}
+
+src_install() {
+ java-pkg_dojar "target/${PN}.jar"
+
+ if use doc; then
+ java-pkg_dohtml -r www/*
+ java-pkg_dojavadoc target/javadoc
+ fi
+
+ use examples && java-pkg_doexamples examples
+ use source && java-pkg_dosrc src/*
+
+ echo "JAVACC_HOME=${EPREFIX}/usr/share/javacc/" > "${T}"/22javacc-${SLOT} || die
+ doenvd "${T}"/22javacc-${SLOT}
+
+ echo "export VERSION=${PV}" > "${T}"/pre || die
+
+ local launcher
+ for launcher in javacc jjdoc jjtree; do
+ java-pkg_dolauncher ${launcher}-${SLOT} -pre "${T}"/pre --main ${launcher}
+ done
+
+ einstalldocs
+}
diff --git a/dev-java/javacc/metadata.xml b/dev-java/javacc/metadata.xml
index 6021501589e0..ceba116c02a9 100644
--- a/dev-java/javacc/metadata.xml
+++ b/dev-java/javacc/metadata.xml
@@ -5,4 +5,7 @@
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+<upstream>
+ <remote-id type="github">javacc/javacc</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-java/javaparser-core/Manifest b/dev-java/javaparser-core/Manifest
new file mode 100644
index 000000000000..44d5620a8988
--- /dev/null
+++ b/dev-java/javaparser-core/Manifest
@@ -0,0 +1 @@
+DIST javaparser-3.13.10.tar.gz 7043664 BLAKE2B 5d2e35cfa22dbcb425365e2e7806c46b989b92a84472fbd80d42716fbb2a5ddcad2daec6214be689b1dcc6541890527e422953c083e713e9f1d22ce5b3035e90 SHA512 b90a6b7b2fbb6a13cc36cdd17acd09a22adb9e62311862c2a67a9ea339b98e245c93ba371645e3c695e76966b21e3bc01accf040482e30b2b6882a5569db5806
diff --git a/dev-java/javaparser-core/javaparser-core-3.13.10.ebuild b/dev-java/javaparser-core/javaparser-core-3.13.10.ebuild
new file mode 100644
index 000000000000..aeef1b1b9b05
--- /dev/null
+++ b/dev-java/javaparser-core/javaparser-core-3.13.10.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.github.javaparser:javaparser-core:3.13.10"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java 1-17 Parser and Abstract Syntax Tree for Java"
+HOMEPAGE="https://javaparser.org/"
+SRC_URI="https://github.com/javaparser/javaparser/archive/v${PV}.tar.gz -> javaparser-${PV}.tar.gz"
+S="${WORKDIR}/javaparser-${PV}"
+
+LICENSE="Apache-2.0 LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64"
+
+JAVACC_SLOT="7.0.4"
+
+BDEPEND="dev-java/javacc:7.0.4"
+# Does not compile with Java 21
+DEPEND="<=virtual/jdk-17:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( CONTRIBUTING.md changelog.md readme.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="com.github.javaparser.core"
+JAVA_SRC_DIR=(
+ "${PN}/src/main/java"
+ "${PN}/src/main/java-templates"
+ "${PN}/src/main/javacc-support"
+)
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ mkdir -p "${PN}/src/main/java/com/github/javaparser"
+ javacc-${JAVACC_SLOT} -GRAMMAR_ENCODING=UTF-8 \
+ -JDK_VERSION=1.8 \
+ -OUTPUT_DIRECTORY="${PN}/src/main/java/com/github/javaparser" \
+ "javaparser-core/src/main/javacc/java.jj" \
+ || die "Code generation with java.jj failed"
+}
diff --git a/dev-java/javaparser-core/metadata.xml b/dev-java/javaparser-core/metadata.xml
new file mode 100644
index 000000000000..297067f408d2
--- /dev/null
+++ b/dev-java/javaparser-core/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">javaparser/javaparser</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/javax-inject/metadata.xml b/dev-java/javax-inject/metadata.xml
index 6ef2d50cf07e..72c0c8eb4e70 100644
--- a/dev-java/javax-inject/metadata.xml
+++ b/dev-java/javax-inject/metadata.xml
@@ -5,4 +5,7 @@
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">javax-inject/javax-inject</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/javax-mail/Manifest b/dev-java/javax-mail/Manifest
index 25170c74c15f..35dd8eaf5b5a 100644
--- a/dev-java/javax-mail/Manifest
+++ b/dev-java/javax-mail/Manifest
@@ -1 +1,2 @@
-DIST javax-mail-1.6.7.tar.gz 1854297 BLAKE2B 70dac40cdf67c413db3370f9cdf5b9786fcebce4ba12725758bf6120a2b6874e079a5beef08ee1190e30bfe2f14ad21e73ef1710c982e3f658a2f2f11e524f2e SHA512 9e8754839efb43d14ade6189428c4b86f5fc180e2e18b4e121a9463aaa52c34a431dbf05a6264ef8221faf0b09cc08f914ff758cbb3931df97cea1a897c54c08
+DIST javax-mail-1.6.7-java21.patch 108038 BLAKE2B 41dd770dc9de5b17d9a4b4a427f31fd3158d45420a3bf1b7949075f1c65103c4093d945e224d70fec66045c314d41aca721b8a7667b6c839fd3f1c3d448c00a4 SHA512 f6f777f7a158114707196321f4480c98bd04ab9a807cbc65a6166bbb55dd9e33853ec4074a5fd23540a1d70629368f1e187e9e839c2bd775ad6d309b4d59fca7
+DIST javax-mail-1.6.7.tar.gz 1854403 BLAKE2B b6681995202c5fd9ed978314d79a6e3c6ee0edeecbbcdb147b94e1f789f7706e090342df8e6491dc23a67d9b3b2b12150cdd0c8ab17a120d1bc0dd4e153be846 SHA512 eb9d1bf863ef2404bdcfde4d9c23089e8d6f76c3f8fd2fc817dd365811636d23d57a60e6991e0349842b1f29b5a1b36b3af78533077858fd2d4550560d2e2d8c
diff --git a/dev-java/javax-mail/javax-mail-1.6.7-r1.ebuild b/dev-java/javax-mail/javax-mail-1.6.7-r2.ebuild
index cb0feeaf01ef..f19bd8c2717b 100644
--- a/dev-java/javax-mail/javax-mail-1.6.7-r1.ebuild
+++ b/dev-java/javax-mail/javax-mail-1.6.7-r2.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
@@ -11,45 +11,42 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Jakarta Mail API"
HOMEPAGE="https://jakartaee.github.io/mail-api/"
-SRC_URI="https://github.com/jakartaee/mail-api/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/mail-${PV}/mail"
+SRC_URI="https://github.com/jakartaee/mail-api/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/jakartaee/mail-api/commit/86ee859eb1.patch -> ${P}-java21.patch"
+S="${WORKDIR}/mail-api-${PV}"
LICENSE="EPL-1.0 EPL-2.0 GPL-2-with-classpath-exception"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-CDEPEND="
- dev-java/jakarta-activation:1
-"
-
DEPEND="
+ dev-java/jakarta-activation:1
>=virtual/jdk-11:*
- ${CDEPEND}
"
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
+RDEPEND=">=virtual/jre-1.8:*"
-DOCS=( ../{NOTICE,README}.md )
+DOCS=( {NOTICE,README}.md )
+PATCHES=( "${DISTDIR}/javax-mail-1.6.7-java21.patch" ) #917068
src_prepare() {
+ default #780585
java-pkg-2_src_prepare
- mv src/main/{resources,java}/javax/mail/Version.java || die
+ mv mail/src/main/{resources,java}/javax/mail/Version.java || die
}
+JAVA_CLASSPATH_EXTRA="jakarta-activation-1"
JAVA_ENCODING="iso-8859-1"
-JAVA_GENTOO_CLASSPATH="jakarta-activation-1"
-JAVA_RESOURCE_DIRS="src/main/resources"
-JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="mail/src/main/resources"
+JAVA_SRC_DIR="mail/src/main/java"
JAVA_TEST_EXTRA_ARGS=( -ea )
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="mail/src/test/resources"
+JAVA_TEST_SRC_DIR="mail/src/test/java"
src_test() {
- pushd src/test/java || die
+ pushd mail/src/test/java || die
# Selection according to 137,138 pom.xml
# 1) com.sun.mail.util.logging.MailHandlerTest
# java.io.IOException: Permission denied
@@ -60,6 +57,5 @@ src_test() {
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
popd
-
java-pkg-simple_src_test
}
diff --git a/dev-java/jaxb-api/Manifest b/dev-java/jaxb-api/Manifest
index d20a942ff296..f15afae30ea2 100644
--- a/dev-java/jaxb-api/Manifest
+++ b/dev-java/jaxb-api/Manifest
@@ -1,3 +1,4 @@
DIST jaxb-api-2.3.3.tar.gz 193025 BLAKE2B 1cf4461fdc67cc05ee43e880c254290b9dbe8a40b1dc39444d8fb6656698876a4bb16c679ee551ec7baa95c07eaf83e2fe5638a71eafbb158805c14c38888cb8 SHA512 37d6705fc1563f0d35a215e2f176473ee5e817a4a3017afe22042a4235c86b8556ea1fb23210d07ca7ea3cd1e0a3271daa4be8c9652cfe92ce2898f1381de3bf
DIST jaxb-api-3.0.1.tar.gz 420695 BLAKE2B 70da435e75f6fcb155d57ee20659897d7d1a72dc38e77f0348eaa767b56e2c5fbb7df88c3b0c794cfc7eaad3d839550a197288dab59520a63562f083388764c0 SHA512 16d62a1fd6045a57f1d215227ce75860340c286eb0986b1086a0312dbc8ca8119b25533c42fe54f367231ec1c34795fec6a9355417f71ce826ee28d5fb6cf9fe
DIST jaxb-api-4.0.0.tar.gz 543827 BLAKE2B 12a113126290fdf46270d2713d88836e8f5d01059127747a343816a10deb45ecc8c8dc8cf2cf7e2b71754977900645d4fef6e08fa8c47f583945fea34bc62357 SHA512 eb4eab396b894ab801433e0e31f93a4980f3913176a1960591a69e4fd55f10f316a7edb712df323c59f7dc9ca6cebacb7257be06aec72446059dd8b93c6de175
+DIST jaxb-api-4.0.2.tar.gz 544391 BLAKE2B fc143248645eb7ea5e17724531c3b6bd902d8c787c735abf16a97259850386d330de67b96837fcbb2be74182e0abbca585e4d6766dd4efffc31b73cb6040e336 SHA512 9fa4cb55a2771011d372fee670672062a12d9eb12aeb3a250ec86cc7814d9ea9fe80aca01039b37f96d5997b15938b2371d8fa323a132caf3be1093e76db1869
diff --git a/dev-java/jaxb-api/files/jaxb-api-2.3.3-dropSecurityManager.patch b/dev-java/jaxb-api/files/jaxb-api-2.3.3-dropSecurityManager.patch
new file mode 100644
index 000000000000..36fed49987b4
--- /dev/null
+++ b/dev-java/jaxb-api/files/jaxb-api-2.3.3-dropSecurityManager.patch
@@ -0,0 +1,10 @@
+--- a/jaxb-api-test/src/test/java/javax/xml/bind/test/JAXBContextTest.java
++++ b/jaxb-api-test/src/test/java/javax/xml/bind/test/JAXBContextTest.java
+@@ -265,7 +265,6 @@ public class JAXBContextTest {
+ private void enableSM() {
+ System.setSecurityManager(null);
+ System.setProperty("java.security.policy", classesDir + "javax/xml/bind/test.policy");
+- System.setSecurityManager(new SecurityManager());
+ }
+
+ private void cleanResource(Path resource) {
diff --git a/dev-java/jaxb-api/files/jaxb-api-4.0.2-dropSecurityManager.patch b/dev-java/jaxb-api/files/jaxb-api-4.0.2-dropSecurityManager.patch
new file mode 100644
index 000000000000..3d78b40cdaba
--- /dev/null
+++ b/dev-java/jaxb-api/files/jaxb-api-4.0.2-dropSecurityManager.patch
@@ -0,0 +1,12 @@
+# java.lang.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
+# https://github.com/jakartaee/jaxb-api/issues/303#issuecomment-1962748051
+--- a/jaxb-api-test/src/test/java/jakarta/xml/bind/test/JAXBContextTest.java
++++ b/jaxb-api-test/src/test/java/jakarta/xml/bind/test/JAXBContextTest.java
+@@ -265,7 +265,6 @@ public class JAXBContextTest {
+ private void enableSM() {
+ System.setSecurityManager(null);
+ System.setProperty("java.security.policy", classesDir + "jakarta/xml/bind/test.policy");
+- System.setSecurityManager(new SecurityManager());
+ }
+
+ private void cleanResource(Path resource) {
diff --git a/dev-java/jaxb-api/jaxb-api-2.3.3-r1.ebuild b/dev-java/jaxb-api/jaxb-api-2.3.3-r1.ebuild
deleted file mode 100644
index 179eb6a32e3c..000000000000
--- a/dev-java/jaxb-api/jaxb-api-2.3.3-r1.ebuild
+++ /dev/null
@@ -1,50 +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 https://github.com/eclipse-ee4j/jaxb-api/archive/refs/tags/2.3.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jaxb-api-2.3.3.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="jakarta.xml.bind:jakarta.xml.bind-api:2.3.3"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Jakarta XML Binding API"
-HOMEPAGE="https://github.com/eclipse-ee4j/jaxb-api"
-SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="2"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-# Common dependencies
-# POM: pom.xml
-# jakarta.activation:jakarta.activation-api:1.2.2 -> >=dev-java/jakarta-activation-api-2.0.1:0
-# jakarta.xml.bind:jakarta.xml.bind-api:2.3.3 -> >=dev-java/jaxb-api-2.3.3:0
-
-CDEPEND="dev-java/jakarta-activation-api:1"
-DEPEND="${CDEPEND}
- >=virtual/jdk-11:*"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DOCS=( ../{LICENSE,NOTICE,README}.md )
-
-S="${WORKDIR}/${P}/${PN}"
-
-JAVA_GENTOO_CLASSPATH="jakarta-activation-api-1"
-JAVA_GENTOO_CLASSPATH_EXTRA="jaxb-api.jar"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="../${PN}-test/src/test/java"
-JAVA_TEST_RESOURCE_DIRS="../${PN}-test/src/test/resources"
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/jaxb-api/jaxb-api-2.3.3-r2.ebuild b/dev-java/jaxb-api/jaxb-api-2.3.3-r2.ebuild
new file mode 100644
index 000000000000..abe2f8cfb559
--- /dev/null
+++ b/dev-java/jaxb-api/jaxb-api-2.3.3-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="jakarta.xml.bind:jakarta.xml.bind-api:2.3.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta XML Binding API"
+HOMEPAGE="https://github.com/jakartaee/jaxb-api"
+SRC_URI="https://github.com/jakartaee/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="EPL-1.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CDEPEND="dev-java/jakarta-activation-api:1"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( {LICENSE,NOTICE,README}.md )
+PATCHES=( "${FILESDIR}/jaxb-api-2.3.3-dropSecurityManager.patch" )
+
+JAVA_GENTOO_CLASSPATH="jakarta-activation-api-1"
+JAVA_GENTOO_CLASSPATH_EXTRA="jaxb-api.jar"
+JAVA_RESOURCE_DIRS="${PN}/src/main/resources"
+JAVA_SRC_DIR="${PN}/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="${PN}-test/src/test/resources"
+JAVA_TEST_SRC_DIR="${PN}-test/src/test/java"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/jaxb-api/jaxb-api-4.0.2.ebuild b/dev-java/jaxb-api/jaxb-api-4.0.2.ebuild
new file mode 100644
index 000000000000..98d999e2aa19
--- /dev/null
+++ b/dev-java/jaxb-api/jaxb-api-4.0.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="jakarta.xml.bind:jakarta.xml.bind-api:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta XML Binding API"
+HOMEPAGE="https://github.com/jakartaee/jaxb-api"
+SRC_URI="https://github.com/jakartaee/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="EPL-1.0"
+SLOT="4"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+CP_DEPEND="dev-java/jakarta-activation:2"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+
+# reason: '<>' with anonymous inner classes is not supported in -source 8
+# (use -source 9 or higher to enable '<>' with anonymous inner classes)
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-11:*"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+PATCHES=( "${FILESDIR}/jaxb-api-4.0.2-dropSecurityManager.patch" )
+
+JAVA_RESOURCE_DIRS="api/src/main/resources"
+JAVA_SRC_DIR="api/src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="jaxb-api-test/src/test/resources"
+JAVA_TEST_SRC_DIR="jaxb-api-test/src/test/java"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/jaxb-api/metadata.xml b/dev-java/jaxb-api/metadata.xml
index 44d0d808c013..82e13368f4e7 100644
--- a/dev-java/jaxb-api/metadata.xml
+++ b/dev-java/jaxb-api/metadata.xml
@@ -5,7 +5,7 @@
<email>java@gentoo.org</email>
</maintainer>
<upstream>
- <remote-id type="github">eclipse-ee4j/jaxb-api</remote-id>
- <bugs-to>https://github.com/eclipse-ee4j/jaxb-api/issues</bugs-to>
+ <bugs-to>https://github.com/jakartaee/jaxb-api/issues</bugs-to>
+ <remote-id type="github">jakartaee/jaxb-api</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jboss-jms-api/metadata.xml b/dev-java/jboss-jms-api/metadata.xml
index 75321cfb5598..754269297a20 100644
--- a/dev-java/jboss-jms-api/metadata.xml
+++ b/dev-java/jboss-jms-api/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">jboss/jboss-jms-api_spec</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jctools-core/Manifest b/dev-java/jctools-core/Manifest
index cce5c24db238..dc7d15805cb7 100644
--- a/dev-java/jctools-core/Manifest
+++ b/dev-java/jctools-core/Manifest
@@ -1,2 +1 @@
-DIST jctools-4.0.1.tar.gz 4234647 BLAKE2B 652cfc70d92a37e04056e306050b156632ba92b2cacd9b759556ea92e1b9b6dda3d766e33936cdd92ec690abb6fb51a562305f82746f500f89d9d797e27f9c54 SHA512 9c8f55be4640f7b1315e7f93c20cf6b4b8d84c542103d69a2e34c0abe00c25fb362b6d8c4042feb4462559e5f6babd90ab0a59a66c3d407e13004ff02ce95c8f
-DIST jctools-4.0.2.tar.gz 4237275 BLAKE2B 9bac4f8442f7a64aac47208ecf98799506244783d71a5444b6a3ff74ddca4e16232cf19dd5e7a9243dfcc3510674717982ef915759c8b6b2de74d4711d996302 SHA512 d19237929ab18360427efdf2844adc08589fc8ba2838b1f983118e1d6f1270bacad34477cb000e6bc85aeab38e7e337c397181b4351681f18977547c5b2e8f37
+DIST jctools-4.0.3.tar.gz 4237279 BLAKE2B be74c2b0997ec68b90249c8d2b841737fffa4e09724a25b5f5e15b8c4bbf811215023358bc674ed20f81d06a10db3ac2428b29d159ac99ef6dff7e6c36bf7fe2 SHA512 3d7cede6beba54871365cc2f49dc30f014a6f36a5e1f66e9cebd523d202806d49f24c23dbfd6bef0c25cbea0ca230b5d1afefd2b83b0150d335e8e99b6cec90f
diff --git a/dev-java/jctools-core/files/jctools-core-4.0.3-increase-TEST_TIMEOUT.patch b/dev-java/jctools-core/files/jctools-core-4.0.3-increase-TEST_TIMEOUT.patch
new file mode 100644
index 000000000000..6eccce942b62
--- /dev/null
+++ b/dev-java/jctools-core/files/jctools-core-4.0.3-increase-TEST_TIMEOUT.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/863977
+https://bugs.gentoo.org/924135
+--- a/src/test/java/org/jctools/util/TestUtil.java
++++ b/src/test/java/org/jctools/util/TestUtil.java
+@@ -19,7 +19,7 @@ import static org.jctools.util.UnpaddedQueueFactory.newUnpaddedQueue;
+ public class TestUtil {
+ public static final int CONCURRENT_TEST_DURATION = Integer.getInteger("org.jctools.concTestDurationMs", 500);
+ public static final int CONCURRENT_TEST_THREADS = Integer.getInteger("org.jctools.concTestThreads", Math.min(4, Runtime.getRuntime().availableProcessors()));
+- public static final int TEST_TIMEOUT = 30000;
++ public static final int TEST_TIMEOUT = 60000;
+ private static final AtomicInteger threadIndex = new AtomicInteger();
+ public static void sleepQuietly(long timeMs) {
+ LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(timeMs));
diff --git a/dev-java/jctools-core/jctools-core-4.0.1.ebuild b/dev-java/jctools-core/jctools-core-4.0.1.ebuild
deleted file mode 100644
index f72f40a764d5..000000000000
--- a/dev-java/jctools-core/jctools-core-4.0.1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2023 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 https://github.com/JCTools/JCTools/archive/v4.0.1.tar.gz --slot 3 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jctools-core-4.0.1.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.jctools:jctools-core:4.0.1"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java Concurrency Tools Core Library"
-HOMEPAGE="https://jctools.github.io/JCTools/"
-SRC_URI="https://github.com/JCTools/JCTools/archive/v${PV}.tar.gz -> jctools-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*
- test? (
- dev-java/guava-testlib:0
- dev-java/hamcrest-library:1.3
- )"
-
-RDEPEND=">=virtual/jre-1.8:*"
-
-DOCS=( ../{README,RELEASE-NOTES}.md )
-
-S="${WORKDIR}/JCTools-${PV}/jctools-core"
-
-JAVA_AUTOMATIC_MODULE_NAME="org.jctools.core"
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="guava-testlib,hamcrest-library-1.3,junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-
-# Using the defaults of java-pkg-simple would skip more than half the number of tests.
-src_test() {
- # org.jetbrains.kotlinx.lincheck is not yet packaged
- rm -r src/test/java/org/jctools/maps/linearizability_test || die
- # These tests would fail and are not run by "mvn test".
- # "org.jctools.queues.MpqSanityTest"
- # "org.jctools.queues.QueueSanityTest"
- # "org.jctools.queues.ScQueueRemoveTest"
- # "org.jctools.util.TestUtil"
- # Test timeout on arm64, https://bugs.gentoo.org/863977
- # "org.jctools.queues.atomic.AtomicMpqSanityTestMpscLinked"
- # "org.jctools.queues.MpqSanityTestMpscLinked"
- pushd src/test/java || die
- local JAVA_TEST_RUN_ONLY=$(find * \
- \( -name "*Test*.java" \
- -o -name "nbsi_tester.java" \
- -o -name "nbhs_tester.java" \)\
- ! -name "MpqSanityTest.java" \
- ! -name "QueueSanityTest.java" \
- ! -name "ScQueueRemoveTest.java" \
- ! -name "TestUtil.java" \
- ! -name "AtomicMpqSanityTestMpscLinked.java" \
- ! -name "MpqSanityTestMpscLinked.java" \
- )
- popd
- JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
- JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
- java-pkg-simple_src_test
- # OK (7226 tests)
-}
diff --git a/dev-java/jctools-core/jctools-core-4.0.2.ebuild b/dev-java/jctools-core/jctools-core-4.0.3.ebuild
index 7b344074414a..5b54f3488a28 100644
--- a/dev-java/jctools-core/jctools-core-4.0.2.ebuild
+++ b/dev-java/jctools-core/jctools-core-4.0.3.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
@@ -16,7 +16,7 @@ S="${WORKDIR}/JCTools-${PV}/jctools-core"
LICENSE="Apache-2.0"
SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND="
dev-java/osgi-annotation:0
@@ -29,6 +29,7 @@ DEPEND="
RDEPEND=">=virtual/jre-1.8:*"
DOCS=( ../{README,RELEASE-NOTES}.md )
+PATCHES=( "${FILESDIR}/jctools-core-4.0.3-increase-TEST_TIMEOUT.patch" )
JAVA_AUTOMATIC_MODULE_NAME="org.jctools.core"
JAVA_CLASSPATH_EXTRA="osgi-annotation"
@@ -37,6 +38,11 @@ JAVA_SRC_DIR="src/main/java"
JAVA_TEST_GENTOO_CLASSPATH="guava-testlib,hamcrest,junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
# Using the defaults of java-pkg-simple would skip more than half the number of tests.
src_test() {
# org.jetbrains.kotlinx.lincheck is not yet packaged
@@ -46,9 +52,6 @@ src_test() {
# "org.jctools.queues.QueueSanityTest"
# "org.jctools.queues.ScQueueRemoveTest"
# "org.jctools.util.TestUtil"
- # Test timeout on arm64, https://bugs.gentoo.org/863977
- # "org.jctools.queues.atomic.AtomicMpqSanityTestMpscLinked"
- # "org.jctools.queues.MpqSanityTestMpscLinked"
pushd src/test/java || die
local JAVA_TEST_RUN_ONLY=$(find * \
\( -name "*Test*.java" \
@@ -58,12 +61,10 @@ src_test() {
! -name "QueueSanityTest.java" \
! -name "ScQueueRemoveTest.java" \
! -name "TestUtil.java" \
- ! -name "AtomicMpqSanityTestMpscLinked.java" \
- ! -name "MpqSanityTestMpscLinked.java" \
)
popd
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
java-pkg-simple_src_test
- # OK (7226 tests)
+ # OK (8746 tests)
}
diff --git a/dev-java/jdbc-mysql/Manifest b/dev-java/jdbc-mysql/Manifest
index b39662917f89..27c5a47904df 100644
--- a/dev-java/jdbc-mysql/Manifest
+++ b/dev-java/jdbc-mysql/Manifest
@@ -1,2 +1,4 @@
DIST mysql-connector-j-8.1.0.tar.gz 4241696 BLAKE2B 930257a876b1b512b598ebf8397125145bb9d1a438fe33bb55ca208dddfdd29bd436a365cc35b9128cdee6eee436da688dd53cc3ed6cd04efb22d1f5af731863 SHA512 f8a7c621397f49981dd7d19e880d92ee051015ad011c027380ac85760dc22ce2f4117fd27b8d72325c5e2bc40a1a9c22e9534f7200208916ee62bbf1e5ad0c75
+DIST mysql-connector-j-8.3.0.tar.gz 4255433 BLAKE2B b5cd437e4ab87052c0fd8e4da6a2612d4c068193a4fe2d207505b2f42d664a414c8a0f3131f34b471a30bfa6b6bb9e76ad0dd4779abbecb46ea014ab5d06e36d SHA512 0849ff13f4adc4ae2d2b9f64ff192435dd9560763a50c7df117a171ae1d90fc97bc36dc89097472d0a2c182492a45ca14ffcf577a9c54267be79e5b3f147dc41
DIST oci-java-sdk-common-2.47.0.jar 439209 BLAKE2B b3b28bb0cf4b8dbca37bb34df7bb48029901be5d9f7754a2ccce888a9af4a06b3348cd545d480127f942687b9b0d63336c37b5f95ecb9f96111c9388a4bc6053 SHA512 73e7376c92d47d81e0630e2ad2d510a483068664874ae31622629dad6dc016d746499c2d29682563e5cdee35ddb6e9e59a2e7557d32e1eeec5fb12206f9d1d6e
+DIST oci-java-sdk-common-3.29.0.jar 453619 BLAKE2B 41a68344a9cf4733c642e3a6e4254f3991f19c13edf57b3c61352b1e6ffdfabfe29cd8dccaa9b128fae618a492fb342007d14ad65b06cd614da572c787cf35ab SHA512 b6def960e114b69d3f34706d5e293f0a05b30c31a1443a92e454631712bb633eaea3795beeeabe4eb1303b8ad42ef2b73d69880b73d360e193f8f1b532bc3430
diff --git a/dev-java/jdbc-mysql/jdbc-mysql-8.1.0.ebuild b/dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.ebuild
index 09f0063500d1..649d226c823b 100644
--- a/dev-java/jdbc-mysql/jdbc-mysql-8.1.0.ebuild
+++ b/dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.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
@@ -27,7 +27,7 @@ KEYWORDS="amd64 ppc64 x86"
CP_DEPEND="
dev-java/c3p0:0
- dev-java/protobuf-java:0
+ <dev-java/protobuf-java-3.26.0:0
dev-java/slf4j-api:0
"
DEPEND=" ${CP_DEPEND}
diff --git a/dev-java/jdbc-mysql/jdbc-mysql-8.3.0.ebuild b/dev-java/jdbc-mysql/jdbc-mysql-8.3.0.ebuild
new file mode 100644
index 000000000000..b1f06a0b4fbd
--- /dev/null
+++ b/dev-java/jdbc-mysql/jdbc-mysql-8.3.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.mysql:mysql-connector-j:8.3.0"
+# Tests disabled, see bug #902723
+# JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+# Bundling a binary version of oci-java-sdk-common
+# https://github.com/oracle/oci-java-sdk/blob/v2.47.0/bmc-common/pom.xml
+OSC="3.29.0"
+
+DESCRIPTION="JDBC Type 4 driver for MySQL"
+HOMEPAGE="https://dev.mysql.com/doc/connector-j/en/"
+SRC_URI="https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-j-${PV}.tar.gz
+ https://repo1.maven.org/maven2/com/oracle/oci/sdk/oci-java-sdk-common/${OSC}/oci-java-sdk-common-${OSC}.jar"
+
+S="${WORKDIR}/mysql-connector-j-${PV}"
+
+LICENSE="GPL-2-with-MySQL-FLOSS-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+
+CP_DEPEND="
+ dev-java/c3p0:0
+ >=dev-java/protobuf-java-3.25:0 <dev-java/protobuf-java-3.26:0
+ dev-java/slf4j-api:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:5 )"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( CHANGES README )
+
+JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/oci-java-sdk-common-${OSC}.jar"
+JAVA_JAR_FILENAME="mysql-connector-j.jar"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR=(
+ "src/generated"
+ "src/legacy/java"
+ "src/main/core-api/java"
+ "src/main/core-impl/java"
+ "src/main/protocol-impl/java"
+ "src/main/user-api/java"
+ "src/main/user-impl/java"
+)
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,junit-5"
+JAVA_TEST_RESOURCE_DIRS="src/test/config"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/jdbc-postgresql/Manifest b/dev-java/jdbc-postgresql/Manifest
index 974801227dbe..ac27a538f20a 100644
--- a/dev-java/jdbc-postgresql/Manifest
+++ b/dev-java/jdbc-postgresql/Manifest
@@ -1 +1 @@
-DIST postgresql-jdbc-42.6.0.src.tar.gz 986703 BLAKE2B 24784805583d66f14370031015ff9c53faa2b512c5092b40294c8c1b7aa5e5128910a93f816138dc4a32fdd42dea165cc37c23c2f6d9b9aa5f36269d66e43d95 SHA512 8abf85b4be716ac94d312588d2bc69a56f803f3da573731ec66be0139b87eaa533965ad1431aa705ab17bf2b413b55a8ed038fa8181897df7c83582457449793
+DIST postgresql-jdbc-42.7.1.src.tar.gz 1000212 BLAKE2B 9c09931f15dc0a6dd72fec5148d6eea48226bc2af0de44111c8ea6c3ed798357139aa25c65cc3e6aea33e55201c86864c0e30f5c9b5eadbc980399fbc2f68e36 SHA512 a722415cb29551a59a830c6287873e9ba0cb75e1aa456175b8678caa96be871f42b9294c25a532a67109c7a7e48e3d6d7d5773e99ffb124019b1895430b213ef
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-42.6.0.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-42.6.0.ebuild
deleted file mode 100644
index bafd90834dd0..000000000000
--- a/dev-java/jdbc-postgresql/jdbc-postgresql-42.6.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2023 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 https://jdbc.postgresql.org/download/postgresql-jdbc-42.6.0.src.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild jdbc-postgresql-42.6.0.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.postgresql:postgresql:42.6.0"
-# We don't have junit-vintage and junit-jupiter.
-# JAVA_TESTING_FRAMEWORKS="junit-vintage junit-jupiter junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java JDBC 4.2 (JRE 8+) driver for PostgreSQL database"
-HOMEPAGE="https://jdbc.postgresql.org/"
-SRC_URI="https://jdbc.postgresql.org/download/postgresql-jdbc-${PV}.src.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-# Common dependencies
-# POM: pom.xml
-# com.ongres.scram:client:2.1 -> >=dev-java/scram-2.1:0
-# uk.org.webcompere:system-stubs-jupiter:2.0.1 -> !!!groupId-not-found!!!
-
-CP_DEPEND="dev-java/scram:0"
-
-# Compile dependencies
-# POM: pom.xml
-# test? junit:junit:4.13 -> >=dev-java/junit-4.13.2:4
-# test? org.junit.jupiter:junit-jupiter-api:5.8.2 -> !!!groupId-not-found!!!
-# test? org.junit.jupiter:junit-jupiter-engine:5.8.2 -> !!!groupId-not-found!!!
-# test? org.junit.jupiter:junit-jupiter-params:5.8.2 -> !!!groupId-not-found!!!
-# test? org.junit.vintage:junit-vintage-engine:5.8.2 -> !!!groupId-not-found!!!
-# test? se.jiderhamn:classloader-leak-test-framework:1.1.1 -> !!!groupId-not-found!!!
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CP_DEPEND}"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CP_DEPEND}"
-
-S="${WORKDIR}/postgresql-${PV}-jdbc-src"
-
-JAVA_MAIN_CLASS="org.postgresql.util.PGJDBCMain"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-42.7.1.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-42.7.1.ebuild
new file mode 100644
index 000000000000..ab85f684bb07
--- /dev/null
+++ b/dev-java/jdbc-postgresql/jdbc-postgresql-42.7.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.postgresql:postgresql:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java JDBC 4.2 (JRE 8+) driver for PostgreSQL database"
+HOMEPAGE="https://jdbc.postgresql.org/"
+SRC_URI="https://jdbc.postgresql.org/download/postgresql-jdbc-${PV}.src.tar.gz"
+S="${WORKDIR}/postgresql-${PV}-jdbc-src"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+# package se.jiderhamn.classloader does not exist
+# package se.jiderhamn.classloader.leak does not exist
+# package uk.org.webcompere.systemstubs.environment does not exist
+# package uk.org.webcompere.systemstubs.jupiter does not exist
+# package uk.org.webcompere.systemstubs.properties does not exist
+# package uk.org.webcompere.systemstubs.resource does not exist
+RESTRICT="test" #839681
+
+DEPEND="
+ dev-java/checker-framework-qual:0
+ dev-java/jna:4
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ dev-java/scram:0
+ dev-java/waffle-jna:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:5 )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_CLASSPATH_EXTRA="
+ checker-framework-qual
+ jna-4
+ osgi-cmpn-8
+ osgi-core
+ scram
+ waffle-jna
+"
+JAVA_AUTOMATIC_MODULE_NAME="org.postgresql.jdbc"
+JAVA_MAIN_CLASS="org.postgresql.util.PGJDBCMain"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ junit-5
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/jdepend/jdepend-2.10-r1.ebuild b/dev-java/jdepend/jdepend-2.10-r1.ebuild
new file mode 100644
index 000000000000..dcf930ec4582
--- /dev/null
+++ b/dev-java/jdepend/jdepend-2.10-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Traverses Java class file directories and generates design quality metrics"
+HOMEPAGE="https://github.com/clarkware/jdepend"
+SRC_URI="https://github.com/clarkware/jdepend/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+RESTRICT="test" #921147
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+JAVA_SRC_DIR="src"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="test"
diff --git a/dev-java/jdepend/jdepend-2.10.ebuild b/dev-java/jdepend/jdepend-2.10.ebuild
deleted file mode 100644
index 3c0c49c331b5..000000000000
--- a/dev-java/jdepend/jdepend-2.10.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Traverses Java class file directories and generates design quality metrics"
-HOMEPAGE="https://github.com/clarkware/jdepend"
-SRC_URI="https://github.com/clarkware/jdepend/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-src_install() {
- java-pkg_newjar dist/jdepend-${PV}.jar
- dodoc README.md LICENSE.md ClassFileFormat-Java5.pdf
- docinto html
- dodoc -r docs/*
- use doc && java-pkg_dojavadoc build/docs/api
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/jdepend/metadata.xml b/dev-java/jdepend/metadata.xml
index 6021501589e0..df92bf507738 100644
--- a/dev-java/jdepend/metadata.xml
+++ b/dev-java/jdepend/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">clarkware/jdepend</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jeromq/metadata.xml b/dev-java/jeromq/metadata.xml
index 75321cfb5598..d82f36ba2afd 100644
--- a/dev-java/jeromq/metadata.xml
+++ b/dev-java/jeromq/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">zeromq/jeromq</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jimfs/Manifest b/dev-java/jimfs/Manifest
new file mode 100644
index 000000000000..b43255dddabd
--- /dev/null
+++ b/dev-java/jimfs/Manifest
@@ -0,0 +1,2 @@
+DIST jimfs-1.3.0.tar.gz 157568 BLAKE2B 1febcf132c162ebb87ec9507bc12e05d6a9354195f36b0e198fd50faa22284608adafd1989a79390271ced4c063dda44c477fc7ae051c32960afca0f4f2ee2b7 SHA512 1c769ba74d45de1656fd30bd695b61caaa5ec9bd6c6e051310d371012fa6c746d0b2ba85d3f94490ebfb9f74ca75f173b879144673f8e3af8fde1a132725490d
+DIST truth-1.1.3.jar 243021 BLAKE2B a59149038c62ef5dd352b13d4b393e1b7715fbafe5ed86ec2d16d722c738a31dcdca10132fc73b17b367ac4309e5407ba2e489f8d4c8fbca60ce5f35ae75d1e3 SHA512 f29a9fb070aff8a32358a7b6c8998c0095de5d8d68afa7f7bac759c7050309deff929e767657ecbbefd96163460f10255ca01bc567ab30df4834b9d916a4fae8
diff --git a/dev-java/jimfs/jimfs-1.3.0.ebuild b/dev-java/jimfs/jimfs-1.3.0.ebuild
new file mode 100644
index 000000000000..bfbb80454d52
--- /dev/null
+++ b/dev-java/jimfs/jimfs-1.3.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 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.jimfs:jimfs:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An in-memory file system for Java 7+"
+HOMEPAGE="https://github.com/google/jimfs"
+SRC_URI="https://github.com/google/jimfs/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/${P}/jimfs"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+CP_DEPEND="
+ dev-java/auto-service-annotations:0
+ dev-java/error-prone-annotations:0
+ dev-java/guava:0
+ >=dev-java/icu4j-74.2-r1:0
+ dev-java/jsr305:0
+"
+
+DEPEND="${CP_DEPEND}
+ dev-java/checker-framework-qual:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava-testlib:0
+ )"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_CLASSPATH_EXTRA="checker-framework-qual"
+JAVA_AUTOMATIC_MODULE_NAME="com.google.common.jimfs"
+JAVA_RESOURCE_DIRS="src/main/res"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="guava-testlib junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p src/main/res/META-INF/services || die
+ echo "com.google.common.jimfs.SystemJimfsFileSystemProvider" > \
+ src/main/res/META-INF/services/java.nio.file.spi.FileSystemProvider || die
+}
+
+src_test() {
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar"
+ # Using the defaults of java-pkg-simple would exclude
+ # several tests which are run by "mvn test".
+ pushd src/test/java > /dev/null || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "*Test.java" \
+ ! -name AbstractGlob*.java \
+ ! -name AbstractPathMatcherTest.java \
+ ! -name AbstractJimfsIntegrationTest.java \
+ ! -name AbstractAttributeProviderTest.java \
+ )
+ popd > /dev/null
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jimfs/metadata.xml b/dev-java/jimfs/metadata.xml
new file mode 100644
index 000000000000..e1353ba1e585
--- /dev/null
+++ b/dev-java/jimfs/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">google/jimfs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jmh-core/Manifest b/dev-java/jmh-core/Manifest
index 918f4672b6dd..396f6a6ab0c2 100644
--- a/dev-java/jmh-core/Manifest
+++ b/dev-java/jmh-core/Manifest
@@ -1 +1 @@
-DIST jmh-core-1.35.tar.gz 645087 BLAKE2B ce33167a58c2eaf64c38148f27493c86ac9c0084cb58a438b49148b41d3e2db66d8a78e0be8a78db39aebf06fc0b5767be61100b22ce77e018ac8ca29c05c17f SHA512 53ce7300f5e10f1efcb639f0d4d01adad48cadc8daea2e00db34113e42b192e49a6a04cc2b5fd4d291ac81a73a5b30613d22390722d35f54139f14ebbb01013c
+DIST jmh-1.37.tar.gz 658673 BLAKE2B 696997907f3505f84ed400d75f46625b9f2aa9faf8a6d4250e6380db9088a8d6a61792eed8163703cb0003dba6ee5a2061d08a1b09bed5c058612142cd594469 SHA512 a3aac7d2e774dd7e7457cc1dce9edbe5923fcdae266854d709b926580638a28057bd6b32b8d7dedc4707ab2ae9aa7d5cda04eb72b0116f1cb98480a8b8b02707
diff --git a/dev-java/jmh-core/jmh-core-1.35.ebuild b/dev-java/jmh-core/jmh-core-1.37.ebuild
index 6d518ed16c03..0fcaad366369 100644
--- a/dev-java/jmh-core/jmh-core-1.35.ebuild
+++ b/dev-java/jmh-core/jmh-core-1.37.ebuild
@@ -1,17 +1,18 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.openjdk.jmh:jmh-core:1.35"
+MAVEN_ID="org.openjdk.jmh:jmh-core:${PV}"
JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Harness for building, running, and analysing nano/micro/milli/macro benchmarks"
-HOMEPAGE="https://openjdk.java.net/projects/code-tools/jmh/"
-SRC_URI="https://github.com/openjdk/jmh/archive/${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://openjdk.org/projects/code-tools/jmh/"
+SRC_URI="https://github.com/openjdk/jmh/archive/${PV}.tar.gz -> jmh-${PV}.tar.gz"
+S="${WORKDIR}/jmh-${PV}"
LICENSE="Apache-2.0"
SLOT="0"
@@ -21,22 +22,15 @@ CP_DEPEND="
dev-java/commons-math:3
dev-java/jopt-simple:0"
-DEPEND=">=virtual/jdk-1.8:*
- ${CP_DEPEND}"
-
-RDEPEND=">=virtual/jre-1.8:*
- ${CP_DEPEND}"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
-S="${WORKDIR}/jmh-${PV}"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
-JAVA_SRC_DIR="jmh-core/src/main/java"
JAVA_RESOURCE_DIRS="jmh-core/src/main/resources"
+JAVA_SRC_DIR="jmh-core/src/main/java"
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="jmh-core/src/test/java"
JAVA_TEST_RESOURCE_DIRS="jmh-core/src/test/resources"
-
-src_install() {
- default # https://bugs.gentoo.org/789582
- java-pkg-simple_src_install
-}
+JAVA_TEST_SRC_DIR="jmh-core/src/test/java"
diff --git a/dev-java/jmh-generator-annprocess/Manifest b/dev-java/jmh-generator-annprocess/Manifest
new file mode 100644
index 000000000000..396f6a6ab0c2
--- /dev/null
+++ b/dev-java/jmh-generator-annprocess/Manifest
@@ -0,0 +1 @@
+DIST jmh-1.37.tar.gz 658673 BLAKE2B 696997907f3505f84ed400d75f46625b9f2aa9faf8a6d4250e6380db9088a8d6a61792eed8163703cb0003dba6ee5a2061d08a1b09bed5c058612142cd594469 SHA512 a3aac7d2e774dd7e7457cc1dce9edbe5923fcdae266854d709b926580638a28057bd6b32b8d7dedc4707ab2ae9aa7d5cda04eb72b0116f1cb98480a8b8b02707
diff --git a/dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild b/dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild
new file mode 100644
index 000000000000..a4d3d8c5c886
--- /dev/null
+++ b/dev-java/jmh-generator-annprocess/jmh-generator-annprocess-1.37.ebuild
@@ -0,0 +1,28 @@
+# 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.openjdk.jmh:jmh-generator-annprocess:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Harness for building, running, and analysing nano/micro/milli/macro benchmarks"
+HOMEPAGE="https://openjdk.org/projects/code-tools/jmh/"
+SRC_URI="https://github.com/openjdk/jmh/archive/${PV}.tar.gz -> jmh-${PV}.tar.gz"
+S="${WORKDIR}/jmh-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+DEPEND="
+ dev-java/jmh-core:0
+ >=virtual/jdk-1.8:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_CLASSPATH_EXTRA="jmh-core"
+JAVA_RESOURCE_DIRS="jmh-generator-annprocess/src/main/resources"
+JAVA_SRC_DIR="jmh-generator-annprocess/src/main/java"
diff --git a/dev-java/ant-apache-bcel/metadata.xml b/dev-java/jmh-generator-annprocess/metadata.xml
index 4221e170cbc0..09c955c1f8a5 100644
--- a/dev-java/ant-apache-bcel/metadata.xml
+++ b/dev-java/jmh-generator-annprocess/metadata.xml
@@ -5,4 +5,7 @@
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">openjdk/jmh</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jna/Manifest b/dev-java/jna/Manifest
index 5a75b4046036..667bee66b18f 100644
--- a/dev-java/jna/Manifest
+++ b/dev-java/jna/Manifest
@@ -1 +1,2 @@
DIST jna-5.13.0.tar.gz 116027625 BLAKE2B 1f2bc7ab28adefa0bbad122957ed2c6ef55ab88e79b30c05f0d2d88e0e05152f7bb5e28097906a7e24f78304dfa2b225587adb0ada205ca3c2ceac1cdbab3f04 SHA512 aefd0becc03bb7fd753e8c5cdcbcb20f6d590125a5fb03048bef0024e826ab0254b750e22a8bb26bea38cc89262ad45e5030b666cb2c857b01b15a6a55379a0f
+DIST jna-5.14.0.tar.gz 116167104 BLAKE2B 3ccb9e53e843690f9c90272c2e94fb2d903dd9bbcb7b6294a6ed3d973d3945c2b3fe5ac5e4c472830a7d07f4f32d84e781bb2ae3bd73cdd1894392331554e2cd SHA512 5758898052b3b099cd8b40046f764813377970a428e66370ba2a7125403661e25379d55fdb0ff75de32d66cbff20f0a05f438b2ca18804cc53f2edf4b1927ff0
diff --git a/dev-java/jna/jna-5.14.0-r1.ebuild b/dev-java/jna/jna-5.14.0-r1.ebuild
new file mode 100644
index 000000000000..183ba4f35027
--- /dev/null
+++ b/dev-java/jna/jna-5.14.0-r1.ebuild
@@ -0,0 +1,198 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="
+ net.java.dev.jna:jna:${PV}
+ net.java.dev.jna:jna-platform:${PV}
+"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs
+
+DESCRIPTION="Java Native Access"
+HOMEPAGE="https://github.com/java-native-access/jna"
+SRC_URI="https://github.com/java-native-access/jna/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="|| ( Apache-2.0 LGPL-2.1+ )"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+CDEPEND="
+ >=dev-libs/libffi-3.4:=
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ x11-base/xorg-proto:0
+ test? (
+ dev-java/reflections:0
+ )
+ ${CDEPEND}
+ x11-libs/libXt
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CDEPEND}
+"
+
+DOCS=( README.md CHANGES.md OTHERS TODO )
+PATCHES=(
+ "${FILESDIR}/5.11.0-makefile-flags.patch"
+ "${FILESDIR}/jna-5.11.0-no-Werror.patch"
+ "${FILESDIR}/jna-5.13.0-testpath.patch"
+ "${FILESDIR}/jna-5.13.0-LibCTest.patch"
+)
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+ java-pkg_clean
+ mkdir -p "res/META-INF" || die
+ echo "Main-Class: com.sun.jna.Native" > "res/META-INF/MANIFEST.MF" || die
+
+ # https://github.com/java-native-access/jna/blob/5.13.0/build.xml#L402-L407
+ sed \
+ -e "/VERSION =/s:TEMPLATE:${PV}:" \
+ -e '/VERSION_NATIVE =/s:TEMPLATE:5.1.0:' \
+ -i src/com/sun/jna/Version.java || die
+}
+
+src_compile() {
+ einfo "Compiling jna.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.sun.jna"
+ JAVA_JAR_FILENAME="jna.jar"
+ JAVA_RESOURCE_DIRS="res"
+ JAVA_SRC_DIR="src"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jna.jar"
+ rm -r target || die
+
+ einfo "Compiling jna-platform.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.sun.jna.platform"
+ JAVA_JAR_FILENAME="jna-platform.jar"
+ JAVA_RESOURCE_DIRS=""
+ JAVA_SRC_DIR="contrib/platform/src"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jna-platform.jar"
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_SRC_DIR=(
+ "src"
+ "contrib/platform/src"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+
+ einfo "Generating headers com_sun_jna_Native.h com_sun_jna_Function.h"
+ ejavac -h native -classpath "src" \
+ "src/com/sun/jna/Function.java" \
+ "src/com/sun/jna/Native.java" || die
+
+ einfo "Building native library"
+ cd native || die
+ local args=(
+ CC="$(tc-getCC)"
+ STRIP=true
+ DYNAMIC_LIBFFI=true
+ )
+ # Using -j1 since otherwise fails to build:
+ # cannot find ../build/native/libtestlib.so: No such file or directory
+ # [Makefile:505: ../build/native/libtestlib2.so] Error 1
+ emake -j1 "${args[@]}"
+}
+
+src_test() {
+ JAVA_TEST_EXTRA_ARGS=(
+ -Djna.nosys=true
+ -Djna.boot.library.path=build/native
+ -Djna.library.path=build/native
+ )
+ JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ reflections
+ "
+
+ JAVA_TEST_SRC_DIR="contrib/platform/test"
+ rm -r contrib/platform/test/com/sun/jna/platform/{mac,unix,win32} || die
+ JAVA_TEST_EXCLUDES=(
+ # 1) testGetXAttr(com.sun.jna.platform.linux.XAttrUtilTest)
+ # java.io.IOException: errno: 95
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:85)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:70)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:56)
+ # at com.sun.jna.platform.linux.XAttrUtilTest.testGetXAttr(XAttrUtilTest.java:83)
+ # 2) setXAttr(com.sun.jna.platform.linux.XAttrUtilTest)
+ # java.io.IOException: errno: 95
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:85)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:70)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:56)
+ # at com.sun.jna.platform.linux.XAttrUtilTest.setXAttr(XAttrUtilTest.java:53)
+ com.sun.jna.platform.linux.XAttrUtilTest
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_SRC_DIR="test"
+ rm -r test/com/sun/jna/wince || die
+ rm -r test/com/sun/jna/win32 || die
+
+ # 1) testLoadFromJarAbsolute(com.sun.jna.LibraryLoadTest)
+ # java.lang.UnsatisfiedLinkError: Unable to load library '/libtestlib-jar.so':
+ # /libtestlib-jar.so: cannot open shared object file: No such file or directory
+ jar cvf build/jna-test.jar \
+ -C build/native libtestlib-jar.so \
+ -C test com/sun/jna/data || die
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":build/jna-test.jar"
+
+ JAVA_TEST_EXCLUDES=(
+ com.sun.jna.CallbacksTest # Needs to run separately
+ com.sun.jna.DirectTest # Needs to run separately
+ com.sun.jna.NativeTest # Needs to run separately
+ com.sun.jna.TypeMapperTest # Needs to run separately
+ com.sun.jna.UnionTest # Needs to run separately
+ com.sun.jna.VMCrashProtectionTest # Needs to run separately
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=(
+ com.sun.jna.CallbacksTest
+ com.sun.jna.DirectTest
+ com.sun.jna.UnionTest
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=( com.sun.jna.NativeTest )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=( com.sun.jna.VMCrashProtectionTest )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=( com.sun.jna.TypeMapperTest )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default
+ java-pkg_dojar jna.jar jna-platform.jar
+ java-pkg_doso build/native/libjnidispatch.so
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "src/*"
+ java-pkg_dosrc "contrib/platform/src/*"
+ fi
+}
diff --git a/dev-java/jnacl/metadata.xml b/dev-java/jnacl/metadata.xml
index 85fac4d279d3..4be1272c32fb 100644
--- a/dev-java/jnacl/metadata.xml
+++ b/dev-java/jnacl/metadata.xml
@@ -9,5 +9,6 @@
</longdescription>
<upstream>
<bugs-to>https://github.com/neilalexander/jnacl/issues</bugs-to>
+ <remote-id type="github">neilalexander/jnacl</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild b/dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild
index eea65095cac2..0a12a3826469 100644
--- a/dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild
+++ b/dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
@@ -40,6 +40,16 @@ S="${WORKDIR}/jsch-agent-proxy-${MY_COMMIT}"
JAVA_GENTOO_CLASSPATH="jna-4,jsch"
JAVA_GENTOO_CLASSPATH_EXTRA="jsch-agentproxy-core.jar:jsch-agentproxy-pageant.jar:jsch-agentproxy-sshagent.jar:jsch-agentproxy-usocket-jna.jar:jsch-agentproxy-usocket-nc.jar"
+JAVADOC_CLASSPATH="${JAVA_GENTOO_CLASSPATH}"
+JAVADOC_SRC_DIRS=(
+ "${PN}-core"
+ "${PN}-jsch"
+ "${PN}-pageant"
+ "${PN}-sshagent"
+ "${PN}-usocket-jna"
+ "${PN}-usocket-nc"
+ "${PN}-connector-factory"
+)
src_compile() {
JAVA_SRC_DIR="${PN}-core"
@@ -77,17 +87,7 @@ src_compile() {
java-pkg-simple_src_compile
rm -fr target || die
- JAVA_SRC_DIR=(
- "${PN}-core"
- "${PN}-jsch"
- "${PN}-pageant"
- "${PN}-sshagent"
- "${PN}-usocket-jna"
- "${PN}-usocket-nc"
- "${PN}-connector-factory"
- )
- JAVA_JAR_FILENAME="ignoreme.jar"
- java-pkg-simple_src_compile
+ use doc && ejavadoc
}
src_install() {
diff --git a/dev-java/json-smart/json-smart-2.5.0.ebuild b/dev-java/json-smart/json-smart-2.5.0.ebuild
index 9b20d2f17507..04a95c02d05f 100644
--- a/dev-java/json-smart/json-smart-2.5.0.ebuild
+++ b/dev-java/json-smart/json-smart-2.5.0.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 @@ S="${WORKDIR}/${PN}-v2-${PV}"
LICENSE="Apache-2.0"
SLOT="2"
-KEYWORDS="amd64 ~arm ~arm64 ~x86"
+KEYWORDS="amd64 ~arm ~arm64 x86"
RESTRICT="test" #839681
DEPEND="
diff --git a/dev-java/json/Manifest b/dev-java/json/Manifest
index 549c5a166a89..05f94127628e 100644
--- a/dev-java/json/Manifest
+++ b/dev-java/json/Manifest
@@ -1,3 +1,4 @@
-DIST json-20220320.tar.gz 229462 BLAKE2B 9d549e4e905e2a63985b0b2d9a6cfbf7483776799d6b907455356940b48242fda9344874f1625da06215991eae1cfa1e87f3f8f0a204807795ed50f3f9afdbc2 SHA512 1bcd99c69201ea6609a41ec1679467504cd129a8c5a9caede0829cd8eb70b0e59e504a4bc409f57e6b27091e11acbf6108830c6f1fe16919d0cb1daff643bdf0
DIST json-20231013.tar.gz 240211 BLAKE2B c0594f89c2b02273c736c0fc362f1e3d519d3d88b7e708e64bbd5ca202f539368e9856e311dd9ad42a24c317cfd727feed5af215fbc5e9bbcb18e797323684c8 SHA512 4c5eb3e9ef77825c9e7b874c9084b5bb75b39c527c3cb419fc45171e0d11b24796931a2d16255500ed86610da3ac7805b302ec0b1051f97c97795580dca7c183
+DIST json-20240205.tar.gz 245788 BLAKE2B 2c4fa44aa16a53cce153879af6a31364e21e9cc140bc7472535d2a8d2d0fc346502fd4a6e5022d326c80fe23557ce4ce408faf142bcdeec0c9b22aca13b044df SHA512 55e79510819b8e318e15b04cab317fdfd9785ac6b8fe60ef740b2f1eb7298548622556b968def89f4f2eb7761765149f192747b0966698b431cfeb9f2ea72284
DIST json-path-2.1.0.jar 189658 BLAKE2B 2813abfc3b6c758f600bb5e8f8b73eac8dc2a642d461bc26c569a650378ea65cebf691afe975fa2dca406eb324863c36c4623b21c1df2cb83c92e6859b5a9d85 SHA512 c16fc68a04945ad49eb96c38f68a8b4ff351ab1bbc51685f42d22723b2dee4b827ba45cb6b8167199e3f4d22e668ef58665558beec8e11399ac547e9fcebd9f6
+DIST json-path-2.9.0.jar 276633 BLAKE2B bb83d6c6d972ea05dce3ef9878c0db0b93d6168cb796b63365a4615434c24edaad86bf021d6bf8736d67504ed8803c423efe01a323e094a59854cd9e73eb6862 SHA512 9a9dbb2cd36662c8049419ed891290602baeca2549eb7df62122cb20c91e66bc8c2c0e5e13199c4a70bf0b6e62ea4c2601f84e4c79d2af25ff1704481c86740a
diff --git a/dev-java/json/json-20220320.ebuild b/dev-java/json/json-20220320.ebuild
deleted file mode 100644
index 86e62eab5ee3..000000000000
--- a/dev-java/json/json-20220320.ebuild
+++ /dev/null
@@ -1,57 +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 https://codeload.github.com/stleary/JSON-java/tar.gz/20220320 --slot 0 --keywords "~amd64 ~x86" --ebuild json-20220320.ebuild
-
-EAPI=8
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.json:json:20220320"
-# We don't have com.jayway.jsonpath:json-path
-# JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A reference implementation of a JSON package in Java"
-HOMEPAGE="https://github.com/stleary/JSON-java"
-SRC_URI="https://codeload.github.com/stleary/JSON-java/tar.gz/${PV} -> ${P}.tar.gz"
-
-LICENSE="JSON"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-# Compile dependencies
-# POM: pom.xml
-# test? com.jayway.jsonpath:json-path:2.1.0 -> !!!groupId-not-found!!!
-# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
-# test? org.mockito:mockito-core:1.9.5 -> >=dev-java/mockito-1.9.5:0
-
-DEPEND="
- >=virtual/jdk-1.8:*"
-# test? (
-# !!!groupId-not-found!!!
-# >=dev-java/mockito-1.9.5:0
-# )
-#"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-DOCS=( {README,SECURITY}.md )
-
-S="${WORKDIR}/JSON-java-${PV}"
-
-JAVA_SRC_DIR="src/main/java"
-
-# JAVA_TEST_GENTOO_CLASSPATH="!!!groupId-not-found!!!,junit-4,mockito"
-# JAVA_TEST_SRC_DIR="src/test/java"
-# JAVA_TEST_RESOURCE_DIRS=(
-# "src/test/resources"
-# )
-
-src_install() {
- default # https://bugs.gentoo.org/789582
- java-pkg-simple_src_install
-}
diff --git a/dev-java/json/json-20231013-r1.ebuild b/dev-java/json/json-20231013-r1.ebuild
index ff26a6b1c443..33b11fb0702e 100644
--- a/dev-java/json/json-20231013-r1.ebuild
+++ b/dev-java/json/json-20231013-r1.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 @@ S="${WORKDIR}/JSON-java-${PV}"
LICENSE="JSON"
SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
DEPEND="
>=virtual/jdk-1.8:*
diff --git a/dev-java/json/json-20240205-r1.ebuild b/dev-java/json/json-20240205-r1.ebuild
new file mode 100644
index 000000000000..49f6e727afd8
--- /dev/null
+++ b/dev-java/json/json-20240205-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.json:json:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A reference implementation of a JSON package in Java"
+HOMEPAGE="https://github.com/stleary/JSON-java"
+JPV="2.9.0"
+SRC_URI="https://codeload.github.com/stleary/JSON-java/tar.gz/${PV} -> ${P}.tar.gz
+ test? (
+ https://repo1.maven.org/maven2/com/jayway/jsonpath/json-path/${JPV}/json-path-${JPV}.jar
+ )"
+S="${WORKDIR}/JSON-java-${PV}"
+
+LICENSE="JSON"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/asm:9
+ dev-java/json-smart:2
+ dev-java/mockito:4
+ dev-java/slf4j-api:0
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,README,SECURITY}.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.json"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ asm-9
+ json-smart-2
+ junit-4
+ mockito-4
+ slf4j-api
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ JAVA_TEST_EXTRA_ARGS=( -Xss2M )
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/json-path-${JPV}.jar" # Test compile dependency
+
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 17; then
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.io=ALL-UNNAMED )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jtidy/jtidy-938.ebuild b/dev-java/jtidy/jtidy-938.ebuild
index a358bb13a064..63fdea8d2708 100644
--- a/dev-java/jtidy/jtidy-938.ebuild
+++ b/dev-java/jtidy/jtidy-938.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://master.dl.sourceforge.net/project/jtidy/JTidy/r${PV}/jtidy-r${P
LICENSE="HTML-Tidy W3C"
SLOT="9"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
BDEPEND="app-arch/unzip"
CP_DEPEND="dev-java/ant-core:0"
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..1ae3c516fb3d
--- /dev/null
+++ b/dev-java/jtwig-core/jtwig-core-5.87.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2023-2024 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 ~arm ~arm64"
+# 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/ant-antlr/metadata.xml b/dev-java/jtwig-core/metadata.xml
index 4221e170cbc0..488c6bf7458e 100644
--- a/dev-java/ant-antlr/metadata.xml
+++ b/dev-java/jtwig-core/metadata.xml
@@ -3,6 +3,8 @@
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
- <name>Java</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">jtwig/jtwig</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild b/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild
index 4ce9372091fa..aaac0c8e5c2c 100644
--- a/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild
+++ b/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,7 +16,7 @@ S="${WORKDIR}/${P}.RELEASE"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64 ~arm ~arm64"
DEPEND="
dev-java/commons-lang:3.6
diff --git a/dev-java/junit-dataprovider/metadata.xml b/dev-java/junit-dataprovider/metadata.xml
index 75321cfb5598..b37d0d1e2439 100644
--- a/dev-java/junit-dataprovider/metadata.xml
+++ b/dev-java/junit-dataprovider/metadata.xml
@@ -4,4 +4,7 @@
<maintainer type="project">
<email>java@gentoo.org</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">TNG/junit-dataprovider</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/junit/Manifest b/dev-java/junit/Manifest
index 02e2cf8a230a..88d8a813f89d 100644
--- a/dev-java/junit/Manifest
+++ b/dev-java/junit/Manifest
@@ -1,3 +1,6 @@
DIST junit-4.13.2.tar.gz 1077147 BLAKE2B c083982cd604812ba3375f90e0486bb3683ecbc3b08e3d14d4541845c5b91cd85100fe86028c70a7cec4e1ab6f6794bcb9333686b3c9b0705eacb75ac36e64da SHA512 29f8f8717efe50b9c7e27805a699f3664a0a068e32ce93e3a1a2bc67a045417490ac04251ef8f8bbd21c77a759bf7e4c6b7a5a07141227bd17de0c526c5031bb
+DIST junit-4.13.2_p20240222.tar.gz 1007781 BLAKE2B 4eeab59aa7ff3cc65c73318acb562523e6ba781da6a0baf28f8fa82042f1affddb583d188c550207a7e267b3475f4a546e8e25eba61d5ba36d13bd7e277ad156 SHA512 89506413b7aca7c2d0b41c8297dde48c1b90a44133bfb3ebf300247c7837839a3aff2d785d891ddb8762427d718eacf016a1d67e2e24edda05f4eae36ca311f1
+DIST junit-5.10.2.tar.gz 2942035 BLAKE2B 4880df74b7cbf23acd34c716f9fce26edd28b31c14d720e129e9e1f06aa35b70c447a0d87904e083a54663fba17e0b2b470678dc32480e0a11c5ebf46d5fe38e SHA512 c36ff7c2bd21f9a64c93b836fc1017a8a96ebcc0079cf1d95b09f5b764435178c2dc2336f2493e7e4df561013693dce4f08dfe0cf3bd76cc9b820313f64d064f
DIST junit-5.9.2.tar.gz 2882173 BLAKE2B 6baf8768654b399d64237a110dcb6a821ab7dc8964254a5d00f7ffb65c789818aed51ad7042a963a47669042baaeec87b5d0453643a2b0eeeaf6393a42c75fd6 SHA512 5673577f773042b4e253241d27298a60dbac239502788e1d999fbe0d3ffe76b29c90d4fb43660f2e2e00e3e9b8d4c1b6b909ff95dc6e87ccb6f7b009ae6b0e78
DIST junit3.8.2.zip 461426 BLAKE2B 8fbef1ccdf7f71c611976d63f45838f4cb2564da5f5064e7abc39931a3c99039a40660093aba2cc3c70af761171125f434c16c52021226f2e92fdf23597dbf25 SHA512 f203332ccc2bdc38c683a95bdbe448f38cbfbeea81ecc431bf9ebf0a3292f0150fcfe5cd5dd6da481be034366820f95775a33581931aed9e4cc12a6ff27e3930
+DIST junit5-java18-compatibility.patch 742 BLAKE2B 89bfa36330278cdee2f7f66ed5527895e650a7b490d3f3695772a27541be1d8383c1742bab4e8494f3a84c29f93f553880a3bd5cd4d84792cf662fbc33a6e594 SHA512 5a9a562eb61a875764da369ff40da6ff95c6de8b3b3ecb612634112076741d75d6eab385743843b4fe7ca8a1827960e06550f6e90c8b7ef75b55006b41c416cd
diff --git a/dev-java/junit/files/junit-4.13.2_p20240222-ignore-failing-test.patch b/dev-java/junit/files/junit-4.13.2_p20240222-ignore-failing-test.patch
new file mode 100644
index 000000000000..512f680c3aaf
--- /dev/null
+++ b/dev-java/junit/files/junit-4.13.2_p20240222-ignore-failing-test.patch
@@ -0,0 +1,85 @@
+1) lookingForStuckThread_threadGroupNotLeaked[lookingForStuckThread = true](org.junit.internal.runners.statements.FailOnTimeoutTest)
+java.lang.AssertionError: the 'FailOnTimeoutGroup' thread group should be destroyed after running the test
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.assertTrue(Assert.java:42)
+ at org.junit.internal.runners.statements.FailOnTimeoutTest.lookingForStuckThread_threadGroupNotLeaked(FailOnTimeoutTest.java:207)
+ at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
+ at java.base/java.lang.reflect.Method.invoke(Method.java:580)
+ at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
+ at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
+ at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:61)
+ at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
+ at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
+ at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
+ at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.junit.runners.Suite.runChild(Suite.java:128)
+ at org.junit.runners.Suite.runChild(Suite.java:27)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.junit.runners.Suite.runChild(Suite.java:128)
+ at org.junit.runners.Suite.runChild(Suite.java:27)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.junit.runners.Suite.runChild(Suite.java:128)
+ at org.junit.runners.Suite.runChild(Suite.java:27)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.junit.runners.Suite.runChild(Suite.java:128)
+ at org.junit.runners.Suite.runChild(Suite.java:27)
+ at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
+ at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
+ at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
+ at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
+ at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
+ at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
+ at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
+ at org.junit.runner.JUnitCore.run(JUnitCore.java:141)
+ at org.junit.runner.JUnitCore.run(JUnitCore.java:119)
+ at org.junit.runner.JUnitCore.runMain(JUnitCore.java:81)
+ at org.junit.runner.JUnitCore.runMain(JUnitCore.java:40)
+ at org.junit.runner.JUnitCore.main(JUnitCore.java:36)
+
+FAILURES!!!
+Tests run: 1106, Failures: 1
+--- a/src/test/java/org/junit/internal/runners/statements/FailOnTimeoutTest.java
++++ b/src/test/java/org/junit/internal/runners/statements/FailOnTimeoutTest.java
+@@ -23,6 +23,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
+ import java.util.concurrent.atomic.AtomicReference;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.function.ThrowingRunnable;
+ import org.junit.runner.RunWith;
+ import org.junit.runners.Parameterized;
+@@ -181,7 +182,7 @@ public class FailOnTimeoutTest {
+ }
+ }
+
+- @Test
++ @Test @Ignore
+ public void lookingForStuckThread_threadGroupNotLeaked() throws Throwable {
+ assumeTrue(lookingForStuckThread);
+ final AtomicReference<ThreadGroup> innerThreadGroup = new AtomicReference<ThreadGroup>();
diff --git a/dev-java/junit/junit-3.8.2-r2.ebuild b/dev-java/junit/junit-3.8.2-r2.ebuild
index 2872a332ce63..da6bba7b5fed 100644
--- a/dev-java/junit/junit-3.8.2-r2.ebuild
+++ b/dev-java/junit/junit-3.8.2-r2.ebuild
@@ -1,31 +1,30 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
JAVA_PKG_IUSE="doc source"
MAVEN_ID="junit:junit:3.8.2"
inherit java-pkg-2 java-pkg-simple
-MY_P=${P/-/}
-
DESCRIPTION="Simple framework to write repeatable tests"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip"
-HOMEPAGE="http://www.junit.org/"
+HOMEPAGE="https://junit.org/"
+SRC_URI="mirror://sourceforge/project/junit/junit/${PV}/junit${PV}.zip"
+S="${WORKDIR}/junit${PV}"
+
LICENSE="CPL-1.0"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+BDEPEND="app-arch/unzip"
DEPEND=">=virtual/jdk-1.8"
RDEPEND=">=virtual/jre-1.8"
-DOCS=( README.html cpl-v10.html )
+HTML_DOCS=( README.html cpl-v10.html )
JAVA_SRC_DIR="${PN}"
-S="${WORKDIR}/${MY_P}"
-
src_unpack() {
unpack ${A}
cd "${S}" || die
@@ -33,11 +32,6 @@ src_unpack() {
}
src_prepare() {
- default
+ java-pkg-2_src_prepare
java-pkg_clean
}
-
-src_install() {
- java-pkg-simple_src_install
- einstalldocs
-}
diff --git a/dev-java/junit/junit-4.13.2-r1.ebuild b/dev-java/junit/junit-4.13.2-r1.ebuild
index af5e4f424217..0fa825c0272c 100644
--- a/dev-java/junit/junit-4.13.2-r1.ebuild
+++ b/dev-java/junit/junit-4.13.2-r1.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
diff --git a/dev-java/junit/junit-4.13.2_p20240222.ebuild b/dev-java/junit/junit-4.13.2_p20240222.ebuild
new file mode 100644
index 000000000000..3ca8e79546cc
--- /dev/null
+++ b/dev-java/junit/junit-4.13.2_p20240222.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="junit:junit:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Simple framework to write repeatable tests"
+HOMEPAGE="https://junit.org/junit4/"
+MY_COMMIT="28fa2cae48b365c949935b28967ffb3f388e77ef"
+SRC_URI="https://github.com/${PN}-team/${PN}4/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}4-${MY_COMMIT}"
+
+LICENSE="EPL-1.0"
+SLOT="4"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CP_DEPEND="dev-java/hamcrest-core:1.3"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/hamcrest-library:1.3 )"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+PATCHES=( "${FILESDIR}/junit-4.13.2_p20240222-ignore-failing-test.patch" )
+
+JAVA_AUTOMATIC_MODULE_NAME="junit"
+JAVA_ENCODING="ISO-8859-1"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="hamcrest-core-1.3,hamcrest-library-1.3"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
+src_test() {
+ cd "${JAVA_TEST_SRC_DIR}" || die
+
+ local CP=".:../resources:${S}/${PN}.jar:$(java-pkg_getjars ${JAVA_TEST_GENTOO_CLASSPATH})"
+
+ ejavac -cp "${CP}" -d . $(find * -name "*.java")
+ # pom.xml lines 264-268
+ java -cp "${CP}" -Djava.awt.headless=true \
+ org.junit.runner.JUnitCore org.junit.tests.AllTests || die "Running junit failed"
+}
diff --git a/dev-java/junit/junit-5.10.2.ebuild b/dev-java/junit/junit-5.10.2.ebuild
new file mode 100644
index 000000000000..4036eedeb0a5
--- /dev/null
+++ b/dev-java/junit/junit-5.10.2.ebuild
@@ -0,0 +1,351 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Declare the 'doc' USE flag in IUSE -- not JAVA_PKG_IUSE -- to
+# prevent java-pkg-simple.eclass from handling Javadoc; instead,
+# let this ebuild handle Javadoc generation and installation itself.
+# This ebuild invokes java-pkg-simple.eclass's phase functions
+# multiple times to build multiple modules, but the eclass always
+# installs each module's Javadoc to the same directory, which would
+# trigger an error when the second module's Javadoc is installed.
+JAVA_PKG_IUSE="source test"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Simple framework to write repeatable tests"
+HOMEPAGE="https://junit.org/junit5/"
+DEB="5.10.1-1"
+SRC_URI="https://github.com/junit-team/junit5/archive/r${PV}.tar.gz -> ${P}.tar.gz
+ https://sources.debian.org/data/main/j/junit5/${DEB}/debian/patches/18-java-compatibility.patch \
+ -> junit5-java18-compatibility.patch"
+S="${WORKDIR}/junit5-r${PV}"
+
+LICENSE="EPL-2.0"
+SLOT="5"
+KEYWORDS="~amd64"
+IUSE="doc migration-support suite vintage"
+
+CP_DEPEND="
+ dev-java/apiguardian-api:0
+ dev-java/opentest4j:0
+ dev-java/open-test-reporting-events:0
+ dev-java/picocli:0
+ dev-java/univocity-parsers:0
+"
+
+# java-utils-2.eclass does not support
+# USE-conditional dependencies in CP_DEPEND
+COND_DEPEND="
+ migration-support? ( dev-java/junit:4 )
+ vintage? ( dev-java/junit:4 )
+"
+
+# Limiting JDK version to >=11 for module-info.java in this package
+# https://bugs.gentoo.org/796875#c3
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ ${COND_DEPEND}
+ test? ( dev-java/jimfs:0 )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+ ${COND_DEPEND}
+"
+
+PATCHES=(
+ "${DISTDIR}/junit5-java18-compatibility.patch"
+)
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
+src_configure() {
+ # Please make sure to declare a module's dependencies before the module itself.
+ # Useful upstream documentation regarding modules and dependencies:
+ # https://junit.org/junit5/docs/current/user-guide/index.html#dependency-metadata
+ # https://junit.org/junit5/docs/current/user-guide/index.html#dependency-diagram
+ JUNIT5_MODULES=(
+ junit-platform-commons
+ junit-platform-engine
+ junit-platform-launcher
+ junit-platform-reporting
+ junit-platform-console # For launching tests from CLI;
+ # an eclass would need it to support running tests using JUnit 5
+
+ $(use suite && echo \
+ junit-platform-suite-api \
+ junit-platform-suite-commons \
+ junit-platform-suite-engine \
+ )
+
+ junit-jupiter-api
+ junit-jupiter-engine # For JUnit Jupiter tests -- the so-called
+ # "JUnit 5 tests", which cannot run on earlier JUnit versions
+ junit-jupiter-params # For parameterized tests; the junit-jupiter
+ # aggregator module includes it, so building it unconditionally
+ $(usev migration-support junit-jupiter-migrationsupport)
+
+ $(usev vintage junit-vintage-engine)
+
+ # Modules not included:
+ # - junit-bom: Has no sources; solely for helping Maven and Gradle
+ # projects that use JUnit 5 manage dependencies easier
+ # - junit-jupiter: Aggregator; does not have 'src/main/java'
+ # - junit-platform-console-standalone: Has no sources; solely used
+ # by the upstream to build a fat JAR that bundles everything, so
+ # users can use just this single JAR to run JUnit 5
+ # - junit-platform-jfr: For an experimental feature
+ # - junit-platform-runner: Deprecated
+ # - junit-platform-suite: Aggregator; does not have 'src/main/java'
+ # - junit-platform-testkit: Requires >=dev-java/assertj-core-3.14.0
+ )
+ local cp_packages=()
+ (use migration-support || use vintage) && cp_packages+=( junit-4 )
+ local save_IFS="${IFS}"
+ IFS=',' JAVA_GENTOO_CLASSPATH="${cp_packages[*]}"
+ IFS="${save_IFS}"
+
+ JUNIT5_VM_VERSION="$(java-config --get-env PROVIDES_VERSION)"
+}
+
+junit5_foreach_module() {
+ local module
+ for module in "${JUNIT5_MODULES[@]}"; do
+ junit5_module_do "${module}" "${@}"
+ done
+}
+
+junit5_module_do() {
+ local module="${1}"
+ # Invocation of the passed function will not be guarded by '|| die'.
+ # Like the case for multibuild_foreach_variant(), it is recommended
+ # that the passed function itself calls 'die'.
+ local func=( "${@:2}" )
+
+ einfo "Running '${func[@]}' for ${module} ..."
+ pushd "${module}" > /dev/null || die "Failed to enter directory '${module}'"
+
+ # Set up Java eclass variables that are
+ # supposed to be set in the ebuild global scope
+
+ local JAVA_JAR_FILENAME="${module}.jar"
+
+ local JAVA_SRC_DIR=(
+ src/main/java
+ src/module
+ )
+
+ local JAVA_RESOURCE_DIRS=()
+ local default_resource_dir="src/main/resources"
+ [[ -d "${default_resource_dir}" ]] &&
+ JAVA_RESOURCE_DIRS+=( "${default_resource_dir}" )
+
+ if [[ "${module}" == junit-platform-console ]]; then
+ local JAVA_MAIN_CLASS="org.junit.platform.console.ConsoleLauncher"
+ local JAVA_LAUNCHER_FILENAME="${module}"
+ fi
+
+ # Invoke the passed function
+ "${func[@]}"
+ local ret="${?}"
+
+ popd > /dev/null || die "Failed to leave directory '${module}'"
+ return "${ret}"
+}
+
+junit5_gen_cp() {
+ echo "$(java-pkg_getjars --build-only --with-dependencies \
+ "${JAVA_GENTOO_CLASSPATH}"):${JAVA_GENTOO_CLASSPATH_EXTRA}"
+}
+
+junit5_module_compile() {
+ if [[ "${module}" == junit-platform-console ]]; then
+ # Unlike other modules that have a src/main/java9 directory, for this
+ # module, the upstream puts the class files built from src/main/java9
+ # in their JAR's top-level directory instead of META-INF/versions/9
+ cp -rv src/main/java9/* src/main/java/ ||
+ die "Failed to merge ${module}'s sources for Java 9+"
+ # Remove for the [[ -d src/main/java9 ]] test
+ # during versioned directory handling
+ rm -rv src/main/java9 ||
+ die "Failed to remove ${module}'s Java 9+ source directory"
+ fi
+
+ java-pkg-simple_src_compile
+ local sources="sources.lst"
+ local classes="target/classes"
+
+ # Collect a list of all compiler input files for building Javadoc
+ local source
+ while read source; do
+ echo "${module}/${source}" >> "${all_sources}"
+ done < "${sources}" ||
+ die "Failed to add ${module}'s sources to Javadoc input list"
+
+ # Handle classes that will go into versioned directories. This will be
+ # no longer needed after https://bugs.gentoo.org/900433 is implemented.
+ local vm_ver
+ for vm_ver in 9 17; do
+ local versioned_src="src/main/java${vm_ver}"
+ if [[ -d "${versioned_src}" ]]; then
+ if ver_test "${JUNIT5_VM_VERSION}" -ge "${vm_ver}"; then
+ local versioned_classes="target/${vm_ver}/classes"
+ mkdir -p "${versioned_classes}" ||
+ die "Failed to create directory for ${module}'s Java ${vm_ver}+ classes"
+ ejavac -d "${versioned_classes}" -encoding "${JAVA_ENCODING}" \
+ -classpath "${classes}:$(junit5_gen_cp)" ${JAVAC_ARGS} \
+ $(find "${versioned_src}" -type f -name '*.java')
+ "$(java-config --jar)" -uvf "${JAVA_JAR_FILENAME}" \
+ --release "${vm_ver}" -C "${versioned_classes}" . ||
+ die "Failed to add ${module}'s Java ${vm_ver}+ classes to JAR"
+ else
+ # Modules that may hit this branch as of 5.9.2:
+ # - junit-platform-console:
+ # src/main/java17/.../ConsoleUtils.java tries to use
+ # java.io.Console.charset() (available since Java 17) to get
+ # the default output charset. It is fine to not use this
+ # file, even if the built artifacts will be used on JRE 17+,
+ # as src/main/java/.../ConsoleUtils.java still gets the
+ # default from java.nio.charset.Charset.defaultCharset().
+ elog "JDK ${JUNIT5_VM_VERSION} used; skipping Java ${vm_ver}-dependent parts in ${module}"
+ fi
+ fi
+ done
+
+ # Add the current module's JAR to classpath
+ # for the module's reverse dependencies in this package
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${S}/${module}/${JAVA_JAR_FILENAME}"
+}
+
+src_compile() {
+ local all_sources="${S}/all-sources.lst"
+ junit5_foreach_module junit5_module_compile
+
+ if use doc; then
+ einfo "Generating Javadoc for all modules ..."
+ local apidoc="target/api"
+ mkdir -p "${apidoc}" || die "Failed to create Javadoc directory"
+ ejavadoc -d "${apidoc}" \
+ -encoding "${JAVA_ENCODING}" -docencoding UTF-8 -charset UTF-8 \
+ -classpath "$(junit5_gen_cp)" ${JAVADOC_ARGS:- -quiet} \
+ -windowtitle "JUnit ${PV} API" \
+ "@${all_sources}"
+ fi
+}
+
+src_test() {
+ # Running the JUnit 5 modules' tests (located in each module's
+ # 'src/test/java') has a few obstacles:
+ # - Some test sources use text blocks -- a feature introduced in Java 15.
+ # A JDK at a lower version, e.g. 11, cannot compile them.
+ # - Some test classes depend on JUnit 5 modules that this ebuild does not
+ # include, like junit-platform-runner and junit-platform-testkit.
+ #
+ # Therefore, this ebuild uses a simpler approach to test the artifacts just
+ # built: it uses the artifacts to run tests in examples under the
+ # 'documentation/src' directory. The test coverage will not be impressive,
+ # but at least this approach verifies that the copy of JUnit 5 just built
+ # is capable of running some simple tests launched from CLI.
+
+ local JUNIT5_TEST_SRC_DIR="documentation/src/test/java"
+ local JUNIT5_TEST_RESOURCE_DIR="documentation/src/test/resources"
+ local JUNIT5_TEST_RM=(
+ $(usev !migration-support example/IgnoredTestsDemo.java)
+ $(use !suite && echo \
+ example/DocumentationTestSuite.java \
+ example/SuiteDemo.java \
+ )
+ $(usev !vintage example/JUnit4Tests.java)
+
+ # Need excluded module junit-platform-runner
+ example/JUnitPlatformClassDemo.java
+ example/JUnitPlatformSuiteDemo.java
+
+ # Need excluded module junit-platform-testkit
+ example/testkit/
+
+ # Not necessary for the tests; some files even require extra dependency
+ org/junit/api/tools/
+
+ # Needs dev-java/hamcrest; no need to pull in extra dependency
+ # as the examples already provide ample tests to run
+ example/HamcrestAssertionsDemo.java
+
+ # Makes an HTTP request and expects a certain response
+ example/session/HttpTests.java
+ )
+
+ pushd "${JUNIT5_TEST_SRC_DIR}" > /dev/null ||
+ die "Failed to enter test source directory"
+ rm -rv "${JUNIT5_TEST_RM[@]}" ||
+ die "Failed to remove unneeded test sources"
+ # Test sources expect the working directory to be 'documentation'
+ sed -i -e "s|src/test/resources|${JUNIT5_TEST_RESOURCE_DIR}|g" \
+ example/ParameterizedTestDemo.java ||
+ die "Failed to update file paths in test sources"
+ popd > /dev/null || die "Failed to leave test source directory"
+
+ local test_dir="${T}/junit5_src_test"
+ local example_classes="${test_dir}/classes"
+ local test_classes="${test_dir}/test-classes"
+ mkdir -p "${example_classes}" "${test_classes}" ||
+ die "Failed to create test directories"
+
+ local example_sources="${test_dir}/sources.lst"
+ local test_sources="${test_dir}/test-sources.lst"
+ find documentation/src/main/java -type f -name '*.java' > "${example_sources}" ||
+ die "Failed to get a list of example sources"
+ find documentation/src/test/java -type f -name '*.java' > "${test_sources}" ||
+ die "Failed to get a list of test sources"
+
+ ejavac -d "${example_classes}" -encoding "${JAVA_ENCODING}" \
+ -classpath "$(junit5_gen_cp)" ${JAVAC_ARGS} \
+ "@${example_sources}"
+
+ local test_cp="${example_classes}:${JUNIT5_TEST_RESOURCE_DIR}:$(junit5_gen_cp)"
+ test_cp="${test_cp}:$(java-pkg_getjars --build-only --with-dependencies jimfs)"
+ ejavac -d "${test_classes}" -encoding "${JAVA_ENCODING}" \
+ -classpath "${test_cp}" ${JAVAC_ARGS} \
+ "@${test_sources}"
+
+ set -- "$(java-config --java)" -classpath "${test_classes}:${test_cp}" \
+ org.junit.platform.console.ConsoleLauncher \
+ --disable-ansi-colors --fail-if-no-tests --scan-classpath \
+ --include-classname='^(Test.*|.+[.$]Test.*|.*Tests?|.*Demo)$' \
+ --exclude-tag="exclude"
+ echo "${@}" >&2
+ "${@}"
+ local status="${?}"
+ [[ "${status}" -eq 2 ]] && die "JUnit did not discover any tests"
+ [[ "${status}" -eq 0 ]] || die "ConsoleLauncher failed"
+}
+
+junit5_module_install() {
+ # It is OK to let java-pkg-simple_src_install call einstalldocs for
+ # each module as long as each documentation file being installed
+ # has a unique filename among _all_ modules; otherwise, some files
+ # would overwrite other ones.
+ if [[ -f README.md ]]; then
+ mv -v README.md "README-${module}.md" ||
+ die "Failed to rename ${module}'s README.md"
+ fi
+ java-pkg-simple_src_install
+}
+
+src_install() {
+ junit5_foreach_module junit5_module_install
+ einstalldocs # For project-global documentation
+
+ if use doc; then
+ einfo "Installing Javadoc for all modules ..."
+ local apidoc="target/api"
+ java-pkg_dojavadoc "${apidoc}"
+ fi
+}
diff --git a/dev-java/junit/junit-5.9.2.ebuild b/dev-java/junit/junit-5.9.2.ebuild
index 6b6d656db44a..46efd8fcf0d8 100644
--- a/dev-java/junit/junit-5.9.2.ebuild
+++ b/dev-java/junit/junit-5.9.2.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
@@ -11,7 +11,6 @@ EAPI=8
# installs each module's Javadoc to the same directory, which would
# trigger an error when the second module's Javadoc is installed.
JAVA_PKG_IUSE="source"
-IUSE="doc migration-support suite vintage"
inherit java-pkg-2 java-pkg-simple
@@ -19,10 +18,11 @@ DESCRIPTION="Simple framework to write repeatable tests"
HOMEPAGE="https://junit.org/junit5/"
SRC_URI="https://github.com/junit-team/junit5/archive/r${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/junit5-r${PV}"
-
LICENSE="EPL-2.0"
+
SLOT="5"
KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+IUSE="doc migration-support suite vintage"
CP_DEPEND="
dev-java/apiguardian-api:0
diff --git a/dev-java/leiningen-bin/Manifest b/dev-java/leiningen-bin/Manifest
index 573922fb97a0..61b3224c3455 100644
--- a/dev-java/leiningen-bin/Manifest
+++ b/dev-java/leiningen-bin/Manifest
@@ -1,2 +1,2 @@
-DIST leiningen-2.9.8-standalone.jar 12834369 BLAKE2B 6c9bc9a2f990bb4959aa06f8f8b31c1084f0d2bad2e19c8343fb7e8a02acb6f6173737cbf36b028e113577ef26e380d7ace035316dee840c6da92512afa7ac0b SHA512 de4989bf31fe86bfb943d90b683dd17a7417c267e67ac8036967ed352e47a4361b8b6ec8378a1e6cf24fd8df51bcabb9578bc8f487d812c9fb5c2f5f476016cd
-DIST leiningen-2.9.8.sh 4555 BLAKE2B c876d19a4ba9a53d84c31874af442e57e6184ce1f7145512355a88b833d2d236bd73eef93f260d22b51e6200c5579c3721a8b6bcb16d516e503a98a2eaf26126 SHA512 58cba7d457c98546e530ad821273cb3f51445ed3191022d0963dd51683cb6b24d0f7d557da34313083b0df11a2c9885bf6d5bb073dea736731de95e8fbbca492
+DIST leiningen-2.11.2-standalone.jar 16481883 BLAKE2B 556e9fdcd5f8c14e046ff8e12f9c5d52c214f0c7cf8af9469e140dc21187a0cb2d5acc02b0ab48b110278d5143cdeef2b4eb8d2945d5acaf568cfe35e1877c04 SHA512 a49e82acccdaae4f619796adf1ef9d0cfc4998c01f4c918520bb3f757b9f7808fb5c65241f79aea730d1e90181c9c2983b7219ef0893103f7abcedf94afcafd5
+DIST leiningen-2.11.2.sh 7467 BLAKE2B bfd9031e1f0c2b8cedf435832f2da5f45ac4c9fbdb2684f4900b43e62c3ffec03781ca2491f1a305c480a7fa8bf5cccf9e934ecc12e6e0ce1da539d9d8fe01dd SHA512 b4e0c553148f81bced1d8df09811f337352149bba879b0828fdeb6efd176fcebf0c4f263a5c8b74241b6a2dd7df52d932271cbf8f11f71279b498f8a9e2399b4
diff --git a/dev-java/leiningen-bin/leiningen-bin-2.9.8.ebuild b/dev-java/leiningen-bin/leiningen-bin-2.11.2.ebuild
index 182f3392805f..9b67aaa8bbc5 100644
--- a/dev-java/leiningen-bin/leiningen-bin-2.9.8.ebuild
+++ b/dev-java/leiningen-bin/leiningen-bin-2.11.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-java/libg/Manifest b/dev-java/libg/Manifest
index 8f4c666567aa..a890570b45c8 100644
--- a/dev-java/libg/Manifest
+++ b/dev-java/libg/Manifest
@@ -1,2 +1 @@
DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
-DIST bndlib-2.1.0.tar.gz 123217291 BLAKE2B ab8e6876b13db538746f77aa1fe7800e5a3b5e539e1980da78f69c64344f4964bf0a21f2329f7684b055d0de39a10c8df36e030922e9933b29fccb9a35aa669a SHA512 6965143ced45c15fc2316716de32e80506cc411d52309b24313fff37e0713a45ad200d5b3701f0d47a131a3163ec266ed8acb4544884cd1c59c9716c7a2b285e
diff --git a/dev-java/libg/libg-2.1.0-r2.ebuild b/dev-java/libg/libg-2.1.0-r2.ebuild
deleted file mode 100644
index 426364b8ed10..000000000000
--- a/dev-java/libg/libg-2.1.0-r2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Lots of small utilities for bndlib, a swiss army knife for OSGi"
-HOMEPAGE="https://bnd.bndtools.org/"
-SRC_URI="https://github.com/bndtools/bnd/archive/${PV}.REL.tar.gz -> bndlib-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-# Tests depend on biz.aQute.junit, which depends on biz.aQute.bndlib, which on
-# its own turn again depends on aQute.libg again; we can temporarily assume that
-# if bndlib tests pass that libg is sufficiently tested, in the future we should
-# look whether it is feasible to combine the packages or otherwise temporarily
-# build biz.aquite.bndlib and biz.aqute.junit in this package.
-RESTRICT="test"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/bnd-${PV}.REL/aQute.${PN}"
-
-EANT_BUILD_TARGET="build"
-
-src_prepare() {
- default
- # Move the correct build.xml into place, needed for testing.
- cp ../cnf/build.xml . || die "Failed to move build file into the right place."
-
- # Remove bundled jar files.
- find . -name '*.jar' -delete
-
- # Remove test files
- if ! use test ; then
- find src/test -name '*.java' -delete || die "Failed to remove test files."
- fi
-}
-
-src_install() {
- java-pkg_newjar generated/aQute.${PN}.jar
-}
diff --git a/dev-java/libg/libg-7.0.0.ebuild b/dev-java/libg/libg-7.0.0.ebuild
index 21d7e22cd82e..7acbb7965c60 100644
--- a/dev-java/libg/libg-7.0.0.ebuild
+++ b/dev-java/libg/libg-7.0.0.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
@@ -15,7 +15,7 @@ S="${WORKDIR}/bnd-${PV}"
LICENSE="Apache-2.0 EPL-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
# aQute.bnd.test.jupiter does not exist
# org.assertj.core.api.junit.jupiter does not exist
RESTRICT="test" #839681
diff --git a/dev-java/lz4-java/files/lz4-java-1.8.0-gentoo-classpath.xml b/dev-java/lz4-java/files/lz4-java-1.8.0-gentoo-classpath.xml
deleted file mode 100644
index 2392679c4a69..000000000000
--- a/dev-java/lz4-java/files/lz4-java-1.8.0-gentoo-classpath.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<project name="gentoo-classpath">
- <path id="mvel.classpath">
- <pathelement path="${gentoo.classpath}" />
- </path>
-</project>
diff --git a/dev-java/lz4-java/files/lz4-java-1.8.0-print-os-props.patch b/dev-java/lz4-java/files/lz4-java-1.8.0-print-os-props.patch
deleted file mode 100644
index d4363b6853e4..000000000000
--- a/dev-java/lz4-java/files/lz4-java-1.8.0-print-os-props.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From b8d50d44ba1c0e4b5bf297f7499ad0fb5b82706e Mon Sep 17 00:00:00 2001
-From: Yuan Liao <liaoyuan@gmail.com>
-Date: Wed, 19 Jan 2022 10:09:14 -0800
-Subject: [PATCH] build.xml: Add target that prints JVM system properties os.*
-
-The Gentoo custom JNI Makefile needs some of those properties.
-
-Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
----
- build.xml | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/build.xml b/build.xml
-index b7940ab..96e52ea 100644
---- a/build.xml
-+++ b/build.xml
-@@ -62,6 +62,11 @@
- <javaversion atleast="10"/>
- </condition>
-
-+ <target name="os-props"
-+ description="echo values of JVM system properties os.* to file os.properties">
-+ <echoproperties prefix="os." destfile="os.properties" />
-+ </target>
-+
- <target name="clean" description="clean working copy">
- <delete dir="${build}" />
- <delete dir="${dist}" />
---
-2.34.1
-
diff --git a/dev-java/lz4-java/files/lz4-java-1.8.0-r1-Makefile b/dev-java/lz4-java/files/lz4-java-1.8.0-r1-Makefile
deleted file mode 100644
index 4a766552c65e..000000000000
--- a/dev-java/lz4-java/files/lz4-java-1.8.0-r1-Makefile
+++ /dev/null
@@ -1,47 +0,0 @@
-# Gentoo custom Makefile for the JNI portion of lz4-java
-#
-# Adapted from the logic for target "compile-jni" in build.xml,
-# but uses lz4 installed on the system. This Makefile respects
-# custom CFLAGS and LDFLAGS settings, whereas build.xml does not.
-
-# Java system properties read by build.xml
-PLATFORM ?= linux
-SRC ?= src
-BUILD ?= build
-JAVA_HOME ?=
-# Requires lz4-java-*-print-os-props.patch
-OS_ARCH := $(shell ant os-props 2>&1 > /dev/null && \
- grep 'os\.arch=' os.properties | sed -e 's/os\.arch=//')
-
-MKDIR_P = mkdir -p
-
-SRC_DIR := $(SRC)/jni
-OBJS_DIR_PREFIX := $(BUILD)/objects
-OBJS_DIR := $(OBJS_DIR_PREFIX)/$(SRC_DIR)
-OUT_DIR := $(BUILD)/jni/net/jpountz/util/$(PLATFORM)/$(OS_ARCH)
-
-SRC_FILES := $(wildcard $(SRC_DIR)/*.c)
-OBJS := $(addprefix $(OBJS_DIR_PREFIX)/,$(SRC_FILES:.c=.o))
-SONAME = liblz4-java.so
-
-# C compiler arguments may be obtained by running 'ant -v compile-jni',
-# as long as dev-java/cpptasks is in the classpath
-CFLAGS := -fPIC $(CFLAGS)
-
-$(OUT_DIR)/$(SONAME): $(OBJS) | $(OUT_DIR)
- # '-llz4' must be listed after this package's objects
- # https://wiki.gentoo.org/wiki/Project:Quality_Assurance/As-needed#Importance_of_linking_order
- $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname,$(SONAME) -o $@ $^ -llz4
-
-$(OBJS_DIR_PREFIX)/%.o: %.c | $(OBJS_DIR)
- $(CC) $(CFLAGS) -c -o $@ \
- -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/$(PLATFORM) \
- -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/$(PLATFORM) \
- -I$(BUILD)/jni-headers \
- $<
-
-$(OUT_DIR):
- $(MKDIR_P) $@
-
-$(OBJS_DIR):
- $(MKDIR_P) $@
diff --git a/dev-java/lz4-java/files/lz4-java-1.8.0-skip-ivy.patch b/dev-java/lz4-java/files/lz4-java-1.8.0-skip-ivy.patch
deleted file mode 100644
index 26c09e147072..000000000000
--- a/dev-java/lz4-java/files/lz4-java-1.8.0-skip-ivy.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 95ae85542f39cecd1af6a3e661ad6120195d2304 Mon Sep 17 00:00:00 2001
-From: Yuan Liao <liaoyuan@gmail.com>
-Date: Mon, 20 Dec 2021 09:57:31 -0800
-Subject: [PATCH] build.xml: Skip Ivy logic and use Gentoo classpath
-
-Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
----
- build.xml | 22 +++++++---------------
- 1 file changed, 7 insertions(+), 15 deletions(-)
-
-diff --git a/build.xml b/build.xml
-index b7940ab..ff321c6 100644
---- a/build.xml
-+++ b/build.xml
-@@ -20,6 +20,8 @@
- xmlns:junit4="antlib:com.carrotsearch.junit4"
- xmlns:mvn="antlib:org.apache.maven.artifact.ant">
-
-+ <import file="gentoo-classpath.xml" />
-+
- <property name="src" location="src"/>
- <property name="build" location="build"/>
- <property name="dist" location="dist"/>
-@@ -81,8 +83,6 @@
- </target>
-
- <target name="install-cpptasks" unless="cpptasks.available">
-- <ivy:cachepath organisation="ant-contrib" module="cpptasks" revision="1.0b5"
-- inline="true" conf="default" transitive="true" pathid="cpptasks.classpath"/>
- <taskdef uri="antlib:net.sf.antcontrib.cpptasks" resource="net/sf/antcontrib/cpptasks/antlib.xml" classpathref="cpptasks.classpath"/>
- <property name="cpptasks.available" value="true"/>
- </target>
-@@ -117,22 +117,14 @@
-
- <target name="init">
- <tstamp />
-- <ivy:resolve file="${ivy.xml.name}" conf="test" />
-- <ivy:retrieve />
- </target>
-
- <target name="install-junit4" depends="init" unless="junit4.available">
-- <taskdef uri="antlib:com.carrotsearch.junit4">
-- <classpath>
-- <fileset dir="${lib}" includes="*.jar" />
-- </classpath>
-- </taskdef>
-+ <taskdef uri="antlib:com.carrotsearch.junit4" resource="com/carrotsearch/junit4/antlib.xml" classpath="${gentoo.classpath}"/>
- <property name="junit4.available" value="true" />