summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java')
-rw-r--r--dev-java/absolutelayout/Manifest1
-rw-r--r--dev-java/absolutelayout/absolutelayout-6.7_beta-r1.ebuild23
-rw-r--r--dev-java/absolutelayout/metadata.xml8
-rw-r--r--dev-java/airline/Manifest1
-rw-r--r--dev-java/airline/airline-0.7-r1.ebuild34
-rw-r--r--dev-java/airline/metadata.xml11
-rw-r--r--dev-java/android-util/Manifest1
-rw-r--r--dev-java/android-util/android-util-4.1.1.4.ebuild29
-rw-r--r--dev-java/android-util/metadata.xml8
-rw-r--r--dev-java/angus-activation/Manifest1
-rw-r--r--dev-java/angus-activation/angus-activation-1.0.0-r1.ebuild34
-rw-r--r--dev-java/angus-activation/metadata.xml10
-rw-r--r--dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15-r1.ebuild23
-rw-r--r--dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15.ebuild22
-rw-r--r--dev-java/animal-sniffer-annotations/metadata.xml2
-rw-r--r--dev-java/annogen/Manifest1
-rw-r--r--dev-java/annogen/annogen-0.1.0-r3.ebuild55
-rw-r--r--dev-java/annogen/metadata.xml11
-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-antlr/metadata.xml8
-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-bcel/metadata.xml8
-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-bsf/metadata.xml8
-rw-r--r--dev-java/ant-apache-log4j/Manifest2
-rw-r--r--dev-java/ant-apache-log4j/ant-apache-log4j-1.10.9.ebuild15
-rw-r--r--dev-java/ant-apache-log4j/metadata.xml8
-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-contrib/Manifest1
-rw-r--r--dev-java/ant-contrib/ant-contrib-1.0_beta3-r2.ebuild80
-rw-r--r--dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123-r2.ebuild70
-rw-r--r--dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123.ebuild75
-rw-r--r--dev-java/ant-contrib/files/tests-visibility.patch12
-rw-r--r--dev-java/ant-contrib/metadata.xml2
-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.ebuild109
-rw-r--r--dev-java/ant-core/metadata.xml7
-rw-r--r--dev-java/ant-eclipse-ecj/Manifest5
-rw-r--r--dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.10-r1.ebuild48
-rw-r--r--dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.13.ebuild50
-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.4.2.ebuild48
-rw-r--r--dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.5.1.ebuild48
-rw-r--r--dev-java/ant-eclipse-ecj/files/ecj-4.107
-rw-r--r--dev-java/ant-eclipse-ecj/files/ecj-4.137
-rw-r--r--dev-java/ant-eclipse-ecj/files/ecj-4.47
-rw-r--r--dev-java/ant-eclipse-ecj/files/ecj-4.57
-rw-r--r--dev-java/ant-eclipse-ecj/metadata.xml15
-rw-r--r--dev-java/ant-ivy/Manifest3
-rw-r--r--dev-java/ant-ivy/ant-ivy-1.4.1-r2.ebuild82
-rw-r--r--dev-java/ant-ivy/ant-ivy-2.3.0-r3.ebuild106
-rw-r--r--dev-java/ant-ivy/ant-ivy-2.5.0-r2.ebuild197
-rw-r--r--dev-java/ant-ivy/files/1.4.1-javadoc.patch14
-rw-r--r--dev-java/ant-ivy/metadata.xml7
-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.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.xml10
-rw-r--r--dev-java/antlr-runtime/Manifest2
-rw-r--r--dev-java/antlr-runtime/antlr-runtime-3.5.3.ebuild38
-rw-r--r--dev-java/antlr-runtime/antlr-runtime-4.9.3.ebuild130
-rw-r--r--dev-java/antlr-runtime/files/4.9.3-test-fixes.patch26
-rw-r--r--dev-java/antlr-runtime/metadata.xml10
-rw-r--r--dev-java/antlr-tool/Manifest4
-rw-r--r--dev-java/antlr-tool/antlr-tool-3.5.3-r1.ebuild77
-rw-r--r--dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild142
-rw-r--r--dev-java/antlr-tool/files/4.9.3-test-fixes.patch26
-rw-r--r--dev-java/antlr-tool/files/antlr-tool-3.5.3-java21.patch11
-rw-r--r--dev-java/antlr-tool/metadata.xml12
-rw-r--r--dev-java/antlr/Manifest8
-rw-r--r--dev-java/antlr/antlr-2.7.7-r7.ebuild44
-rw-r--r--dev-java/antlr/antlr-2.7.7-r9.ebuild2
-rw-r--r--dev-java/antlr/antlr-3.2-r1.ebuild101
-rw-r--r--dev-java/antlr/antlr-3.2-r2.ebuild102
-rw-r--r--dev-java/antlr/antlr-3.5.2-r1.ebuild91
-rw-r--r--dev-java/antlr/antlr-3.5.3.ebuild63
-rw-r--r--dev-java/antlr/antlr-4.5.1.ebuild91
-rw-r--r--dev-java/antlr/antlr-4.5.3.ebuild92
-rw-r--r--dev-java/antlr/antlr-4.9.3.ebuild63
-rw-r--r--dev-java/antlr/files/3.5.2-test-fixes.patch36
-rw-r--r--dev-java/antlr/files/antlr-3.2-java21.patch31
-rw-r--r--dev-java/antlr/metadata.xml2
-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/aopalliance/aopalliance-1.0-r2.ebuild34
-rw-r--r--dev-java/aopalliance/aopalliance-1.0-r3.ebuild37
-rw-r--r--dev-java/aopalliance/metadata.xml2
-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/Manifest2
-rw-r--r--dev-java/apache-rat/apache-rat-0.15-r1.ebuild109
-rw-r--r--dev-java/apache-rat/files/apache-rat-0.15-fix-tests.patch39
-rw-r--r--dev-java/apache-rat/metadata.xml11
-rw-r--r--dev-java/apiguardian-api/Manifest1
-rw-r--r--dev-java/apiguardian-api/apiguardian-api-1.1.2-r1.ebuild24
-rw-r--r--dev-java/apiguardian-api/metadata.xml13
-rw-r--r--dev-java/appframework/Manifest1
-rw-r--r--dev-java/appframework/appframework-1.03-r5.ebuild51
-rw-r--r--dev-java/appframework/files/appframework-1.03-fix-imports.patch24
-rw-r--r--dev-java/appframework/metadata.xml16
-rw-r--r--dev-java/apple-java-extensions-bin/Manifest1
-rw-r--r--dev-java/apple-java-extensions-bin/apple-java-extensions-bin-1.5-r2.ebuild24
-rw-r--r--dev-java/apple-java-extensions-bin/metadata.xml14
-rw-r--r--dev-java/args4j/Manifest2
-rw-r--r--dev-java/args4j/args4j-2.32.ebuild19
-rw-r--r--dev-java/args4j/args4j-2.33.ebuild20
-rw-r--r--dev-java/args4j/metadata.xml11
-rw-r--r--dev-java/asm-analysis/Manifest1
-rw-r--r--dev-java/asm-analysis/asm-analysis-9.1.ebuild28
-rw-r--r--dev-java/asm-analysis/metadata.xml26
-rw-r--r--dev-java/asm-commons/Manifest1
-rw-r--r--dev-java/asm-commons/asm-commons-9.1.ebuild28
-rw-r--r--dev-java/asm-commons/metadata.xml26
-rw-r--r--dev-java/asm-tree/Manifest1
-rw-r--r--dev-java/asm-tree/asm-tree-9.1.ebuild28
-rw-r--r--dev-java/asm-tree/metadata.xml26
-rw-r--r--dev-java/asm-util/Manifest1
-rw-r--r--dev-java/asm-util/asm-util-9.1.ebuild28
-rw-r--r--dev-java/asm-util/metadata.xml26
-rw-r--r--dev-java/asm/Manifest4
-rw-r--r--dev-java/asm/asm-5.1-r1.ebuild48
-rw-r--r--dev-java/asm/asm-9.1.ebuild23
-rw-r--r--dev-java/asm/asm-9.6.ebuild94
-rw-r--r--dev-java/asm/metadata.xml4
-rw-r--r--dev-java/aspectj/Manifest2
-rw-r--r--dev-java/aspectj/aspectj-1.9.6.ebuild44
-rw-r--r--dev-java/aspectj/aspectj-1.9.7-r1.ebuild79
-rw-r--r--dev-java/aspectj/metadata.xml6
-rw-r--r--dev-java/assertj-core/Manifest2
-rw-r--r--dev-java/assertj-core/assertj-core-2.3.0.ebuild34
-rw-r--r--dev-java/assertj-core/assertj-core-3.10.0.ebuild109
-rw-r--r--dev-java/assertj-core/files/assertj-core-3.10.0-java11-compatibility.patch456
-rw-r--r--dev-java/assertj-core/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.xml10
-rw-r--r--dev-java/avalon-framework/Manifest1
-rw-r--r--dev-java/avalon-framework/avalon-framework-4.2.0-r2.ebuild40
-rw-r--r--dev-java/avalon-framework/files/build.xml48
-rw-r--r--dev-java/avalon-framework/metadata.xml8
-rw-r--r--dev-java/avalon-logkit/Manifest1
-rw-r--r--dev-java/avalon-logkit/avalon-logkit-2.1-r9.ebuild63
-rw-r--r--dev-java/avalon-logkit/files/avalon-logkit-2.1-java7.patch30
-rw-r--r--dev-java/avalon-logkit/metadata.xml8
-rw-r--r--dev-java/backport-util-concurrent/Manifest1
-rw-r--r--dev-java/backport-util-concurrent/backport-util-concurrent-3.1-r1.ebuild54
-rw-r--r--dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-notest.patch14
-rw-r--r--dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-test.patch11
-rw-r--r--dev-java/backport-util-concurrent/metadata.xml15
-rw-r--r--dev-java/batik/Manifest3
-rw-r--r--dev-java/batik/batik-1.17-r1.ebuild247
-rw-r--r--dev-java/batik/batik-1.9.ebuild109
-rw-r--r--dev-java/batik/files/batik-1.9-ImportInfo.patch10
-rw-r--r--dev-java/batik/metadata.xml6
-rw-r--r--dev-java/bcel/Manifest3
-rw-r--r--dev-java/bcel/bcel-6.5.0-r1.ebuild80
-rw-r--r--dev-java/bcel/bcel-6.5.0.ebuild31
-rw-r--r--dev-java/bcel/bcel-6.6.0.ebuild59
-rw-r--r--dev-java/bcel/metadata.xml33
-rw-r--r--dev-java/bcmail/Manifest3
-rw-r--r--dev-java/bcmail/bcmail-1.45-r5.ebuild53
-rw-r--r--dev-java/bcmail/bcmail-1.50-r3.ebuild66
-rw-r--r--dev-java/bcmail/bcmail-1.77-r1.ebuild59
-rw-r--r--dev-java/bcmail/metadata.xml8
-rw-r--r--dev-java/bcpg/Manifest2
-rw-r--r--dev-java/bcpg/bcpg-1.50-r1.ebuild70
-rw-r--r--dev-java/bcpg/bcpg-1.50-r2.ebuild73
-rw-r--r--dev-java/bcpg/bcpg-1.77.ebuild60
-rw-r--r--dev-java/bcpg/metadata.xml8
-rw-r--r--dev-java/bcpkix/Manifest3
-rw-r--r--dev-java/bcpkix/bcpkix-1.50-r2.ebuild33
-rw-r--r--dev-java/bcpkix/bcpkix-1.77.ebuild102
-rw-r--r--dev-java/bcpkix/metadata.xml8
-rw-r--r--dev-java/bcprov/Manifest8
-rw-r--r--dev-java/bcprov/bcprov-1.45-r2.ebuild58
-rw-r--r--dev-java/bcprov/bcprov-1.50-r2.ebuild65
-rw-r--r--dev-java/bcprov/bcprov-1.50-r4.ebuild61
-rw-r--r--dev-java/bcprov/bcprov-1.52-r2.ebuild65
-rw-r--r--dev-java/bcprov/bcprov-1.68-r2.ebuild51
-rw-r--r--dev-java/bcprov/bcprov-1.74.ebuild106
-rw-r--r--dev-java/bcprov/bcprov-1.77.ebuild106
-rw-r--r--dev-java/bcprov/metadata.xml8
-rw-r--r--dev-java/bctsp/Manifest1
-rw-r--r--dev-java/bctsp/bctsp-1.45-r1.ebuild42
-rw-r--r--dev-java/bctsp/metadata.xml8
-rw-r--r--dev-java/bcutil/Manifest1
-rw-r--r--dev-java/bcutil/bcutil-1.77.ebuild55
-rw-r--r--dev-java/bcutil/metadata.xml13
-rw-r--r--dev-java/beansbinding/Manifest1
-rw-r--r--dev-java/beansbinding/beansbinding-1.2.1-r3.ebuild27
-rw-r--r--dev-java/beansbinding/metadata.xml11
-rw-r--r--dev-java/blowfishj/Manifest1
-rw-r--r--dev-java/blowfishj/blowfishj-2.14-r3.ebuild43
-rw-r--r--dev-java/blowfishj/metadata.xml18
-rw-r--r--dev-java/bnd-annotation/Manifest2
-rw-r--r--dev-java/bnd-annotation/bnd-annotation-6.3.1.ebuild48
-rw-r--r--dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild29
-rw-r--r--dev-java/bnd-annotation/metadata.xml10
-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.xml10
-rw-r--r--dev-java/bnd-junit/Manifest1
-rw-r--r--dev-java/bnd-junit/bnd-junit-2.1.0-r1.ebuild48
-rw-r--r--dev-java/bnd-junit/bnd-junit-2.1.0.ebuild53
-rw-r--r--dev-java/bnd-junit/metadata.xml11
-rw-r--r--dev-java/bnd-util/Manifest1
-rw-r--r--dev-java/bnd-util/bnd-util-7.0.0.ebuild43
-rw-r--r--dev-java/bnd-util/metadata.xml10
-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/Manifest2
-rw-r--r--dev-java/bndlib/bndlib-2.1.0.ebuild71
-rw-r--r--dev-java/bndlib/bndlib-7.0.0.ebuild55
-rw-r--r--dev-java/bndlib/metadata.xml15
-rw-r--r--dev-java/boot-bin/Manifest6
-rw-r--r--dev-java/boot-bin/boot-bin-2.7.1-r1.ebuild71
-rw-r--r--dev-java/boot-bin/boot-bin-2.8.3.ebuild75
-rw-r--r--dev-java/boot-bin/files/boot7
-rw-r--r--dev-java/boot-bin/metadata.xml10
-rw-r--r--dev-java/brotli-dec/brotli-dec-0.1.2.ebuild6
-rw-r--r--dev-java/brotli-dec/metadata.xml13
-rw-r--r--dev-java/browserlauncher2/browserlauncher2-1.3-r2.ebuild49
-rw-r--r--dev-java/browserlauncher2/browserlauncher2-1.3-r3.ebuild33
-rw-r--r--dev-java/browserlauncher2/metadata.xml2
-rw-r--r--dev-java/bsf/Manifest1
-rw-r--r--dev-java/bsf/bsf-2.4.0-r2.ebuild107
-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.xml6
-rw-r--r--dev-java/bsh/Manifest2
-rw-r--r--dev-java/bsh/bsh-2.0_beta6-r1.ebuild67
-rw-r--r--dev-java/bsh/bsh-2.1.1.ebuild115
-rw-r--r--dev-java/bsh/files/bsh-2.1.1-skip-tests.patch119
-rw-r--r--dev-java/bsh/metadata.xml2
-rw-r--r--dev-java/btf/Manifest1
-rw-r--r--dev-java/btf/btf-1.2.ebuild37
-rw-r--r--dev-java/btf/metadata.xml11
-rw-r--r--dev-java/byaccj/byaccj-1.15-r2.ebuild28
-rw-r--r--dev-java/byaccj/byaccj-1.15-r3.ebuild31
-rw-r--r--dev-java/byaccj/files/byaccj-1.15-implicit-function-declaration.patch17
-rw-r--r--dev-java/byaccj/metadata.xml2
-rw-r--r--dev-java/byte-buddy/Manifest1
-rw-r--r--dev-java/byte-buddy/byte-buddy-1.14.0.ebuild161
-rw-r--r--dev-java/byte-buddy/metadata.xml13
-rw-r--r--dev-java/bytelist/Manifest1
-rw-r--r--dev-java/bytelist/bytelist-1.0.15.ebuild47
-rw-r--r--dev-java/bytelist/metadata.xml11
-rw-r--r--dev-java/c3p0/Manifest2
-rw-r--r--dev-java/c3p0/c3p0-0.9.5.1.ebuild59
-rw-r--r--dev-java/c3p0/c3p0-0.9.5.5-r1.ebuild57
-rw-r--r--dev-java/c3p0/metadata.xml3
-rw-r--r--dev-java/cache2k-api/Manifest1
-rw-r--r--dev-java/cache2k-api/cache2k-api-0.23.1.ebuild23
-rw-r--r--dev-java/cache2k-api/metadata.xml19
-rw-r--r--dev-java/cache2k-core/Manifest1
-rw-r--r--dev-java/cache2k-core/cache2k-core-0.23.1.ebuild37
-rw-r--r--dev-java/cache2k-core/metadata.xml19
-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/cal10n/Manifest1
-rw-r--r--dev-java/cal10n/cal10n-0.8.1.ebuild67
-rw-r--r--dev-java/cal10n/metadata.xml11
-rw-r--r--dev-java/cdi-api/Manifest3
-rw-r--r--dev-java/cdi-api/cdi-api-1.2-r1.ebuild41
-rw-r--r--dev-java/cdi-api/cdi-api-1.2.ebuild36
-rw-r--r--dev-java/cdi-api/cdi-api-4.0.1-r2.ebuild102
-rw-r--r--dev-java/cdi-api/files/cdi-api-4.0.1-skip-tests.patch72
-rw-r--r--dev-java/cdi-api/metadata.xml12
-rw-r--r--dev-java/cglib/cglib-3.3.0-r2.ebuild71
-rw-r--r--dev-java/cglib/cglib-3.3.0.ebuild57
-rw-r--r--dev-java/cglib/metadata.xml2
-rw-r--r--dev-java/checker-framework-qual/Manifest1
-rw-r--r--dev-java/checker-framework-qual/checker-framework-qual-3.42.0.ebuild24
-rw-r--r--dev-java/checker-framework-qual/metadata.xml19
-rw-r--r--dev-java/cofoja/Manifest2
-rw-r--r--dev-java/cofoja/cofoja-1.2.ebuild41
-rw-r--r--dev-java/cofoja/cofoja-1.3.ebuild41
-rw-r--r--dev-java/cofoja/metadata.xml16
-rw-r--r--dev-java/colt/Manifest1
-rw-r--r--dev-java/colt/colt-1.2.0-r3.ebuild45
-rw-r--r--dev-java/colt/files/colt-1.2.0-benchmark-no-deprecation.patch31
-rw-r--r--dev-java/colt/files/colt-1.2.0-remove-concurrent-util-imports.patch210
-rw-r--r--dev-java/colt/metadata.xml8
-rw-r--r--dev-java/commons-beanutils/Manifest3
-rw-r--r--dev-java/commons-beanutils/commons-beanutils-1.9.2.ebuild64
-rw-r--r--dev-java/commons-beanutils/commons-beanutils-1.9.4-r2.ebuild84
-rw-r--r--dev-java/commons-beanutils/commons-beanutils-1.9.4.ebuild69
-rw-r--r--dev-java/commons-beanutils/files/commons-collections-3.2.2-fixes.patch187
-rw-r--r--dev-java/commons-beanutils/metadata.xml2
-rw-r--r--dev-java/commons-chain/Manifest1
-rw-r--r--dev-java/commons-chain/commons-chain-1.2.ebuild65
-rw-r--r--dev-java/commons-chain/files/commons-chain-1.2-build.xml215
-rw-r--r--dev-java/commons-chain/metadata.xml8
-rw-r--r--dev-java/commons-cli/Manifest2
-rw-r--r--dev-java/commons-cli/commons-cli-1.4.ebuild43
-rw-r--r--dev-java/commons-cli/commons-cli-1.5.0.ebuild43
-rw-r--r--dev-java/commons-cli/metadata.xml2
-rw-r--r--dev-java/commons-codec/Manifest3
-rw-r--r--dev-java/commons-codec/commons-codec-1.15.ebuild50
-rw-r--r--dev-java/commons-codec/commons-codec-1.16.1.ebuild46
-rw-r--r--dev-java/commons-codec/metadata.xml5
-rw-r--r--dev-java/commons-collections/Manifest4
-rw-r--r--dev-java/commons-collections/commons-collections-3.2.2-r2.ebuild51
-rw-r--r--dev-java/commons-collections/commons-collections-3.2.2.ebuild67
-rw-r--r--dev-java/commons-collections/commons-collections-4.1-r1.ebuild53
-rw-r--r--dev-java/commons-collections/commons-collections-4.1.ebuild53
-rw-r--r--dev-java/commons-collections/commons-collections-4.4-r2.ebuild59
-rw-r--r--dev-java/commons-collections/metadata.xml19
-rw-r--r--dev-java/commons-compress/Manifest3
-rw-r--r--dev-java/commons-compress/commons-compress-1.20.ebuild41
-rw-r--r--dev-java/commons-compress/commons-compress-1.26.1.ebuild43
-rw-r--r--dev-java/commons-compress/metadata.xml13
-rw-r--r--dev-java/commons-csv/Manifest1
-rw-r--r--dev-java/commons-csv/commons-csv-1.9.0.ebuild55
-rw-r--r--dev-java/commons-csv/metadata.xml12
-rw-r--r--dev-java/commons-daemon/Manifest4
-rw-r--r--dev-java/commons-daemon/commons-daemon-1.0.15.ebuild58
-rw-r--r--dev-java/commons-daemon/commons-daemon-1.1.0.ebuild58
-rw-r--r--dev-java/commons-daemon/commons-daemon-1.3.4.ebuild55
-rw-r--r--dev-java/commons-daemon/files/commons-daemon-1.3.1-Make.patch21
-rw-r--r--dev-java/commons-daemon/metadata.xml17
-rw-r--r--dev-java/commons-dbcp/Manifest1
-rw-r--r--dev-java/commons-dbcp/commons-dbcp-2.1.ebuild82
-rw-r--r--dev-java/commons-dbcp/metadata.xml8
-rw-r--r--dev-java/commons-dbutils/Manifest1
-rw-r--r--dev-java/commons-dbutils/commons-dbutils-1.6.ebuild53
-rw-r--r--dev-java/commons-dbutils/files/commons-dbutils-1.6-build.xml263
-rw-r--r--dev-java/commons-dbutils/metadata.xml8
-rw-r--r--dev-java/commons-digester/Manifest3
-rw-r--r--dev-java/commons-digester/commons-digester-1.8.1-r2.ebuild57
-rw-r--r--dev-java/commons-digester/commons-digester-2.1-r1.ebuild58
-rw-r--r--dev-java/commons-digester/commons-digester-2.1-r2.ebuild68
-rw-r--r--dev-java/commons-digester/commons-digester-3.2-r2.ebuild60
-rw-r--r--dev-java/commons-digester/commons-digester-3.2-r3.ebuild77
-rw-r--r--dev-java/commons-digester/files/1.8.1-build.xml-jar-target.patch27
-rw-r--r--dev-java/commons-digester/files/commons-digester-2.1-build.xml294
-rw-r--r--dev-java/commons-digester/metadata.xml13
-rw-r--r--dev-java/commons-discovery/Manifest1
-rw-r--r--dev-java/commons-discovery/commons-discovery-0.5.ebuild30
-rw-r--r--dev-java/commons-discovery/metadata.xml8
-rw-r--r--dev-java/commons-email/Manifest2
-rw-r--r--dev-java/commons-email/commons-email-1.4.ebuild53
-rw-r--r--dev-java/commons-email/commons-email-1.5.ebuild28
-rw-r--r--dev-java/commons-email/files/commons-email-1.4-build.xml261
-rw-r--r--dev-java/commons-email/metadata.xml8
-rw-r--r--dev-java/commons-graph/Manifest1
-rw-r--r--dev-java/commons-graph/commons-graph-0.1.ebuild47
-rw-r--r--dev-java/commons-graph/files/commons-graph-0.1-build.xml258
-rw-r--r--dev-java/commons-graph/metadata.xml8
-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-httpclient/metadata.xml2
-rw-r--r--dev-java/commons-imaging/Manifest2
-rw-r--r--dev-java/commons-imaging/commons-imaging-0.97.ebuild30
-rw-r--r--dev-java/commons-imaging/commons-imaging-1.0_alpha3-r2.ebuild36
-rw-r--r--dev-java/commons-imaging/files/commons-imaging-1.0_alpha3-PngChunk.javadoc.patch12
-rw-r--r--dev-java/commons-imaging/metadata.xml2
-rw-r--r--dev-java/commons-io/Manifest3
-rw-r--r--dev-java/commons-io/commons-io-2.15.1.ebuild30
-rw-r--r--dev-java/commons-io/commons-io-2.8.0.ebuild33
-rw-r--r--dev-java/commons-io/metadata.xml13
-rw-r--r--dev-java/commons-jexl/Manifest2
-rw-r--r--dev-java/commons-jexl/commons-jexl-1.1-r1.ebuild48
-rw-r--r--dev-java/commons-jexl/commons-jexl-2.1.1.ebuild59
-rw-r--r--dev-java/commons-jexl/files/1.1-test-target.patch12
-rw-r--r--dev-java/commons-jexl/files/2.1.1-build.xml127
-rw-r--r--dev-java/commons-jexl/metadata.xml8
-rw-r--r--dev-java/commons-junit4/Manifest1
-rw-r--r--dev-java/commons-junit4/commons-junit4-1.2.17.ebuild39
-rw-r--r--dev-java/commons-junit4/metadata.xml10
-rw-r--r--dev-java/commons-jxpath/Manifest1
-rw-r--r--dev-java/commons-jxpath/commons-jxpath-1.3-r3.ebuild63
-rw-r--r--dev-java/commons-jxpath/commons-jxpath-1.3-r4.ebuild63
-rw-r--r--dev-java/commons-jxpath/metadata.xml8
-rw-r--r--dev-java/commons-lang/Manifest6
-rw-r--r--dev-java/commons-lang/commons-lang-2.0-r3.ebuild33
-rw-r--r--dev-java/commons-lang/commons-lang-2.6-r1.ebuild37
-rw-r--r--dev-java/commons-lang/commons-lang-3.1.ebuild35
-rw-r--r--dev-java/commons-lang/commons-lang-3.12.0.ebuild33
-rw-r--r--dev-java/commons-lang/commons-lang-3.14.0.ebuild29
-rw-r--r--dev-java/commons-lang/metadata.xml13
-rw-r--r--dev-java/commons-launcher/Manifest1
-rw-r--r--dev-java/commons-launcher/commons-launcher-1.1-r2.ebuild43
-rw-r--r--dev-java/commons-launcher/metadata.xml8
-rw-r--r--dev-java/commons-logging/Manifest4
-rw-r--r--dev-java/commons-logging/commons-logging-1.2-r3.ebuild82
-rw-r--r--dev-java/commons-logging/commons-logging-1.3.0_pre20230319.ebuild121
-rw-r--r--dev-java/commons-logging/commons-logging-1.3.1.ebuild153
-rw-r--r--dev-java/commons-logging/files/commons-logging-1.2-gentoo.patch26
-rw-r--r--dev-java/commons-logging/files/commons-logging-1.2-servletapi.patch42
-rw-r--r--dev-java/commons-logging/metadata.xml24
-rw-r--r--dev-java/commons-math/Manifest2
-rw-r--r--dev-java/commons-math/commons-math-3.6.1-r1.ebuild24
-rw-r--r--dev-java/commons-math/commons-math-3.6.1-r2.ebuild25
-rw-r--r--dev-java/commons-math/metadata.xml2
-rw-r--r--dev-java/commons-net/Manifest3
-rw-r--r--dev-java/commons-net/commons-net-3.10.0.ebuild38
-rw-r--r--dev-java/commons-net/commons-net-3.8.0.ebuild21
-rw-r--r--dev-java/commons-net/metadata.xml2
-rw-r--r--dev-java/commons-nullanalysis/Manifest1
-rw-r--r--dev-java/commons-nullanalysis/commons-nullanalysis-1.2.17.ebuild24
-rw-r--r--dev-java/commons-nullanalysis/metadata.xml10
-rw-r--r--dev-java/commons-pool/Manifest1
-rw-r--r--dev-java/commons-pool/commons-pool-2.2.ebuild49
-rw-r--r--dev-java/commons-pool/metadata.xml8
-rw-r--r--dev-java/commons-primitives/Manifest1
-rw-r--r--dev-java/commons-primitives/commons-primitives-1.0-r3.ebuild32
-rw-r--r--dev-java/commons-primitives/metadata.xml15
-rw-r--r--dev-java/commons-text/Manifest1
-rw-r--r--dev-java/commons-text/commons-text-1.9.ebuild43
-rw-r--r--dev-java/commons-text/metadata.xml8
-rw-r--r--dev-java/commons-validator/Manifest4
-rw-r--r--dev-java/commons-validator/commons-validator-1.4.0.ebuild79
-rw-r--r--dev-java/commons-validator/commons-validator-1.4.1.ebuild81
-rw-r--r--dev-java/commons-validator/commons-validator-1.8.0.ebuild36
-rw-r--r--dev-java/commons-validator/files/validator-1.4.build.xml.patch20
-rw-r--r--dev-java/commons-validator/metadata.xml17
-rw-r--r--dev-java/commons-vfs/Manifest1
-rw-r--r--dev-java/commons-vfs/commons-vfs-1.0-r1.ebuild40
-rw-r--r--dev-java/commons-vfs/commons-vfs-2.0-r1.ebuild69
-rw-r--r--dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild71
-rw-r--r--dev-java/commons-vfs/commons-vfs-2.0-r4.ebuild56
-rw-r--r--dev-java/commons-vfs/files/commons-vfs-2.0-incompatibility.patch10
-rw-r--r--dev-java/commons-vfs/files/commons-vfs-2.0-utf8.patch13
-rw-r--r--dev-java/commons-vfs/metadata.xml2
-rw-r--r--dev-java/concurrentlinkedhashmap-lru/Manifest1
-rw-r--r--dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild36
-rw-r--r--dev-java/concurrentlinkedhashmap-lru/metadata.xml10
-rw-r--r--dev-java/constantine/Manifest1
-rw-r--r--dev-java/constantine/constantine-0.7-r1.ebuild38
-rw-r--r--dev-java/constantine/metadata.xml11
-rw-r--r--dev-java/conversant-disruptor/Manifest1
-rw-r--r--dev-java/conversant-disruptor/conversant-disruptor-1.2.20.ebuild62
-rw-r--r--dev-java/conversant-disruptor/metadata.xml10
-rw-r--r--dev-java/core-specs-alpha/Manifest3
-rw-r--r--dev-java/core-specs-alpha/core-specs-alpha-0.1.24.ebuild41
-rw-r--r--dev-java/core-specs-alpha/core-specs-alpha-0.2.44.ebuild41
-rw-r--r--dev-java/core-specs-alpha/core-specs-alpha-0.2.56.ebuild44
-rw-r--r--dev-java/core-specs-alpha/files/build.xml37
-rw-r--r--dev-java/core-specs-alpha/metadata.xml15
-rw-r--r--dev-java/cortado/cortado-0.6.0-r1.ebuild30
-rw-r--r--dev-java/cortado/cortado-0.6.0-r2.ebuild37
-rw-r--r--dev-java/cortado/metadata.xml2
-rw-r--r--dev-java/coursier-bin/Manifest3
-rw-r--r--dev-java/coursier-bin/coursier-bin-2.1.7.ebuild30
-rw-r--r--dev-java/coursier-bin/coursier-bin-2.1.8.ebuild30
-rw-r--r--dev-java/coursier-bin/coursier-bin-2.1.9.ebuild30
-rw-r--r--dev-java/coursier-bin/metadata.xml13
-rw-r--r--dev-java/cpptasks/cpptasks-1.0_beta5-r2.ebuild64
-rw-r--r--dev-java/cpptasks/cpptasks-1.0_beta5.ebuild47
-rw-r--r--dev-java/cpptasks/files/cpptasks-1.0_beta5-test-classpath.patch33
-rw-r--r--dev-java/cpptasks/metadata.xml2
-rw-r--r--dev-java/cssparser/Manifest2
-rw-r--r--dev-java/cssparser/cssparser-0.9.25.ebuild27
-rw-r--r--dev-java/cssparser/cssparser-0.9.26.ebuild27
-rw-r--r--dev-java/cssparser/metadata.xml14
-rw-r--r--dev-java/dict4j/Manifest1
-rw-r--r--dev-java/dict4j/dict4j-1.1.ebuild24
-rw-r--r--dev-java/dict4j/metadata.xml14
-rw-r--r--dev-java/disruptor/Manifest1
-rw-r--r--dev-java/disruptor/disruptor-3.2.0.ebuild20
-rw-r--r--dev-java/disruptor/metadata.xml11
-rw-r--r--dev-java/dnsjava/Manifest1
-rw-r--r--dev-java/dnsjava/dnsjava-2.1.8.ebuild50
-rw-r--r--dev-java/dnsjava/files/2.1.6-no-network-tests.patch44
-rw-r--r--dev-java/dnsjava/metadata.xml18
-rw-r--r--dev-java/dom4j/Manifest4
-rw-r--r--dev-java/dom4j/dom4j-1.6.1-r8.ebuild84
-rw-r--r--dev-java/dom4j/dom4j-1.6.1-r9.ebuild84
-rw-r--r--dev-java/dom4j/dom4j-2.1.4.ebuild59
-rw-r--r--dev-java/dom4j/metadata.xml5
-rw-r--r--dev-java/dynalang/Manifest1
-rw-r--r--dev-java/dynalang/dynalang-0.4-r1.ebuild65
-rw-r--r--dev-java/dynalang/files/build.xml179
-rw-r--r--dev-java/dynalang/metadata.xml11
-rw-r--r--dev-java/easymock/Manifest1
-rw-r--r--dev-java/easymock/easymock-2.5.2.ebuild57
-rw-r--r--dev-java/easymock/easymock-3.3.1-r1.ebuild17
-rw-r--r--dev-java/easymock/files/easymock-2.5.5-nameClash.patch230
-rw-r--r--dev-java/easymock/files/easymock-2.5.5-tests2nameClash.patch420
-rw-r--r--dev-java/easymock/metadata.xml2
-rw-r--r--dev-java/ecj-gcj/Manifest1
-rw-r--r--dev-java/ecj-gcj/ecj-gcj-4.4.2.ebuild93
-rw-r--r--dev-java/ecj-gcj/files/ecj-gcj.in23
-rw-r--r--dev-java/ecj-gcj/metadata.xml11
-rw-r--r--dev-java/eclipse-ecj/Manifest9
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.10.ebuild70
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.13-r2.ebuild74
-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.27.ebuild67
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild81
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.31.ebuild75
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.4.2-r1.ebuild62
-rw-r--r--dev-java/eclipse-ecj/eclipse-ecj-4.5.1.ebuild68
-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.267
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.277
-rw-r--r--dev-java/eclipse-ecj/files/ecj-4.307
-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.xml8
-rw-r--r--dev-java/eclipse-jdt-annotation/Manifest1
-rw-r--r--dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild24
-rw-r--r--dev-java/eclipse-jdt-annotation/metadata.xml10
-rw-r--r--dev-java/eclipsito/Manifest1
-rw-r--r--dev-java/eclipsito/eclipsito-20180510.ebuild28
-rw-r--r--dev-java/eclipsito/metadata.xml8
-rw-r--r--dev-java/ecs/Manifest1
-rw-r--r--dev-java/ecs/ecs-1.4.2-r2.ebuild42
-rw-r--r--dev-java/ecs/files/ecs-1.4.2-java7-enum.patch217
-rw-r--r--dev-java/ecs/metadata.xml8
-rw-r--r--dev-java/edtftpj/Manifest1
-rw-r--r--dev-java/edtftpj/edtftpj-2.4.0.ebuild48
-rw-r--r--dev-java/edtftpj/metadata.xml19
-rw-r--r--dev-java/emma/emma-2.0.5312-r3.ebuild49
-rw-r--r--dev-java/emma/emma-2.0.5312-r6.ebuild82
-rw-r--r--dev-java/emma/metadata.xml2
-rw-r--r--dev-java/error-prone-annotations/Manifest2
-rw-r--r--dev-java/error-prone-annotations/error-prone-annotations-2.0.14.ebuild23
-rw-r--r--dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild24
-rw-r--r--dev-java/error-prone-annotations/metadata.xml2
-rw-r--r--dev-java/fastinfoset/Manifest1
-rw-r--r--dev-java/fastinfoset/fastinfoset-2.1.0-r1.ebuild41
-rw-r--r--dev-java/fastinfoset/metadata.xml7
-rw-r--r--dev-java/fastutil/Manifest1
-rw-r--r--dev-java/fastutil/fastutil-7.0.10.ebuild38
-rw-r--r--dev-java/fastutil/metadata.xml11
-rw-r--r--dev-java/fec/fec-1.0.4-r2.ebuild69
-rw-r--r--dev-java/fec/fec-1.0.4-r4.ebuild68
-rw-r--r--dev-java/fec/files/fec-1.0.4-build.patch4
-rw-r--r--dev-java/fec/files/fec-1.0.4-libfec8path.patch4
-rw-r--r--dev-java/fec/files/fec-1.0.4-remove-concurrent-util-imports.patch4
-rw-r--r--dev-java/fec/files/fec-1.0.4-soname.patch4
-rw-r--r--dev-java/fec/metadata.xml8
-rw-r--r--dev-java/felix-bundlerepository/Manifest1
-rw-r--r--dev-java/felix-bundlerepository/felix-bundlerepository-1.6.6.ebuild50
-rw-r--r--dev-java/felix-bundlerepository/files/felix-bundlerepository-1.6.6-build.xml195
-rw-r--r--dev-java/felix-bundlerepository/metadata.xml8
-rw-r--r--dev-java/felix-framework/Manifest2
-rw-r--r--dev-java/felix-framework/felix-framework-7.0.5-r2.ebuild89
-rw-r--r--dev-java/felix-framework/metadata.xml12
-rw-r--r--dev-java/felix-gogo-command/Manifest1
-rw-r--r--dev-java/felix-gogo-command/felix-gogo-command-0.12.0.ebuild44
-rw-r--r--dev-java/felix-gogo-command/files/felix-gogo-command-0.12.0-build.xml276
-rw-r--r--dev-java/felix-gogo-command/metadata.xml8
-rw-r--r--dev-java/felix-gogo-runtime/Manifest3
-rw-r--r--dev-java/felix-gogo-runtime/felix-gogo-runtime-0.10.0.ebuild42
-rw-r--r--dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild55
-rw-r--r--dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-build.xml294
-rw-r--r--dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-event-properties-to-map.patch22
-rw-r--r--dev-java/felix-gogo-runtime/files/felix-gogo-runtime-1.1.6-skip-tests-non-java-8.patch22
-rw-r--r--dev-java/felix-gogo-runtime/metadata.xml14
-rw-r--r--dev-java/felix-main/Manifest2
-rw-r--r--dev-java/felix-main/felix-main-7.0.5-r2.ebuild74
-rw-r--r--dev-java/felix-main/metadata.xml15
-rw-r--r--dev-java/felix-resolver/Manifest2
-rw-r--r--dev-java/felix-resolver/felix-resolver-2.0.4-r1.ebuild61
-rw-r--r--dev-java/felix-resolver/metadata.xml11
-rw-r--r--dev-java/felix-shell/Manifest1
-rw-r--r--dev-java/felix-shell/felix-shell-1.4.3.ebuild44
-rw-r--r--dev-java/felix-shell/files/felix-shell-1.4.3-build.xml299
-rw-r--r--dev-java/felix-shell/metadata.xml8
-rw-r--r--dev-java/felix-utils/Manifest3
-rw-r--r--dev-java/felix-utils/felix-utils-1.11.8-r1.ebuild51
-rw-r--r--dev-java/felix-utils/felix-utils-1.2.0.ebuild45
-rw-r--r--dev-java/felix-utils/files/felix-utils-1.11.8-Port-to-osgi-cmpn.patch123
-rw-r--r--dev-java/felix-utils/files/felix-utils-1.2.0-build.xml299
-rw-r--r--dev-java/felix-utils/files/felix-utils-1.2.0-java-fixes.patch47
-rw-r--r--dev-java/felix-utils/metadata.xml13
-rw-r--r--dev-java/findbugs-annotations/Manifest1
-rw-r--r--dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild40
-rw-r--r--dev-java/findbugs-annotations/metadata.xml10
-rw-r--r--dev-java/fishbowl/Manifest1
-rw-r--r--dev-java/fishbowl/fishbowl-1.4.1.ebuild53
-rw-r--r--dev-java/fishbowl/metadata.xml10
-rw-r--r--dev-java/fontbox/Manifest8
-rw-r--r--dev-java/fontbox/files/fontbox-1.7.1-build.xml250
-rw-r--r--dev-java/fontbox/fontbox-1.7.1-r1.ebuild50
-rw-r--r--dev-java/fontbox/fontbox-1.8.11.ebuild51
-rw-r--r--dev-java/fontbox/fontbox-2.0.27.ebuild63
-rw-r--r--dev-java/fontbox/metadata.xml7
-rw-r--r--dev-java/fop/Manifest5
-rw-r--r--dev-java/fop/files/fop-2.9-FO2StructureTreeConverterTestCase.patch45
-rw-r--r--dev-java/fop/files/fop-2.9-MissingLanguageWarningTestCase.patch88
-rw-r--r--dev-java/fop/files/fop-2.9-PDFEncodingTestCase.patch31
-rw-r--r--dev-java/fop/files/fop-2.9-PDFToUnicodeCMapTestCase.patch33
-rw-r--r--dev-java/fop/files/headless-launcher.bash1
-rw-r--r--dev-java/fop/fop-2.0-r3.ebuild129
-rw-r--r--dev-java/fop/fop-2.9-r1.ebuild201
-rw-r--r--dev-java/fop/metadata.xml14
-rw-r--r--dev-java/forehead/Manifest1
-rw-r--r--dev-java/forehead/forehead-1.0_beta5-r2.ebuild28
-rw-r--r--dev-java/forehead/metadata.xml8
-rw-r--r--dev-java/freehep-graphics2d/Manifest2
-rw-r--r--dev-java/freehep-graphics2d/freehep-graphics2d-2.4.ebuild74
-rw-r--r--dev-java/freehep-graphics2d/metadata.xml11
-rw-r--r--dev-java/freehep-graphicsbase/Manifest1
-rw-r--r--dev-java/freehep-graphicsbase/freehep-graphicsbase-2.4.ebuild49
-rw-r--r--dev-java/freehep-graphicsbase/metadata.xml11
-rw-r--r--dev-java/freehep-graphicsio-emf/Manifest1
-rw-r--r--dev-java/freehep-graphicsio-emf/files/github-30.patch34
-rw-r--r--dev-java/freehep-graphicsio-emf/freehep-graphicsio-emf-2.4.ebuild61
-rw-r--r--dev-java/freehep-graphicsio-emf/metadata.xml11
-rw-r--r--dev-java/freehep-graphicsio-svg/Manifest1
-rw-r--r--dev-java/freehep-graphicsio-svg/freehep-graphicsio-svg-2.4.ebuild51
-rw-r--r--dev-java/freehep-graphicsio-svg/metadata.xml11
-rw-r--r--dev-java/freehep-graphicsio-tests/Manifest1
-rw-r--r--dev-java/freehep-graphicsio-tests/freehep-graphicsio-tests-2.4.ebuild44
-rw-r--r--dev-java/freehep-graphicsio-tests/metadata.xml11
-rw-r--r--dev-java/freehep-graphicsio/Manifest1
-rw-r--r--dev-java/freehep-graphicsio/freehep-graphicsio-2.4.ebuild51
-rw-r--r--dev-java/freehep-graphicsio/metadata.xml11
-rw-r--r--dev-java/freehep-io/Manifest1
-rw-r--r--dev-java/freehep-io/freehep-io-2.2.2.ebuild37
-rw-r--r--dev-java/freehep-io/metadata.xml11
-rw-r--r--dev-java/freemarker/Manifest1
-rw-r--r--dev-java/freemarker/files/build.xml.patch60
-rw-r--r--dev-java/freemarker/freemarker-2.3.25.ebuild69
-rw-r--r--dev-java/freemarker/metadata.xml12
-rw-r--r--dev-java/freenet-ext/Manifest1
-rw-r--r--dev-java/freenet-ext/files/freenet-ext-29-convert-jcpuid.patch46
-rw-r--r--dev-java/freenet-ext/freenet-ext-29.ebuild79
-rw-r--r--dev-java/freenet-ext/metadata.xml10
-rw-r--r--dev-java/gcj-jdk/files/javac.in57
-rw-r--r--dev-java/gcj-jdk/gcj-jdk-5.4.0-r1.ebuild107
-rw-r--r--dev-java/gcj-jdk/metadata.xml19
-rw-r--r--dev-java/geoip-java/Manifest1
-rw-r--r--dev-java/geoip-java/geoip-java-1.3.0.ebuild43
-rw-r--r--dev-java/geoip-java/metadata.xml15
-rw-r--r--dev-java/gin/Manifest1
-rw-r--r--dev-java/gin/gin-2.1.2.ebuild77
-rw-r--r--dev-java/gin/metadata.xml17
-rw-r--r--dev-java/glassfish-deployment-api/Manifest1
-rw-r--r--dev-java/glassfish-deployment-api/glassfish-deployment-api-3.1.1.ebuild22
-rw-r--r--dev-java/glassfish-deployment-api/metadata.xml8
-rw-r--r--dev-java/glassfish-ejb-api/Manifest1
-rw-r--r--dev-java/glassfish-ejb-api/glassfish-ejb-api-3.2.ebuild38
-rw-r--r--dev-java/glassfish-ejb-api/metadata.xml8
-rw-r--r--dev-java/glassfish-interceptor-api/Manifest1
-rw-r--r--dev-java/glassfish-interceptor-api/files/glassfish-interceptor-api-3.1-build.xml.patch10
-rw-r--r--dev-java/glassfish-interceptor-api/glassfish-interceptor-api-3.1.ebuild41
-rw-r--r--dev-java/glassfish-interceptor-api/metadata.xml8
-rw-r--r--dev-java/glassfish-jms-api/Manifest1
-rw-r--r--dev-java/glassfish-jms-api/glassfish-jms-api-1.1.2.2.04-r2.ebuild48
-rw-r--r--dev-java/glassfish-jms-api/metadata.xml8
-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/glassfish-servlet-api/Manifest1
-rw-r--r--dev-java/glassfish-servlet-api/glassfish-servlet-api-3.1.1.ebuild22
-rw-r--r--dev-java/glassfish-servlet-api/metadata.xml8
-rw-r--r--dev-java/glassfish-transaction-api/Manifest1
-rw-r--r--dev-java/glassfish-transaction-api/glassfish-transaction-api-1.1.2.2.04-r1.ebuild40
-rw-r--r--dev-java/glassfish-transaction-api/metadata.xml8
-rw-r--r--dev-java/glassfish-xmlrpc-api/Manifest1
-rw-r--r--dev-java/glassfish-xmlrpc-api/glassfish-xmlrpc-api-1.1.1.ebuild37
-rw-r--r--dev-java/glassfish-xmlrpc-api/metadata.xml8
-rw-r--r--dev-java/glazedlists/Manifest1
-rw-r--r--dev-java/glazedlists/glazedlists-1.8.0-r1.ebuild27
-rw-r--r--dev-java/glazedlists/metadata.xml8
-rw-r--r--dev-java/gnu-classpath/Manifest1
-rw-r--r--dev-java/gnu-classpath/files/gnu-classpath-0.98-freetype-2.5.3-support.patch32
-rw-r--r--dev-java/gnu-classpath/gnu-classpath-0.98-r6.ebuild115
-rw-r--r--dev-java/gnu-classpath/metadata.xml17
-rw-r--r--dev-java/gnu-crypto/Manifest1
-rw-r--r--dev-java/gnu-crypto/files/gnu-crypto-2.0.1-jdk15.patch30
-rw-r--r--dev-java/gnu-crypto/gnu-crypto-2.0.1-r3.ebuild66
-rw-r--r--dev-java/gnu-crypto/metadata.xml15
-rw-r--r--dev-java/gnu-hylafax/Manifest1
-rw-r--r--dev-java/gnu-hylafax/files/gnu-hylafax-1.0.3-ClientPool.patch70
-rw-r--r--dev-java/gnu-hylafax/gnu-hylafax-1.0.3-r2.ebuild50
-rw-r--r--dev-java/gnu-hylafax/metadata.xml11
-rw-r--r--dev-java/gnu-jaf/Manifest2
-rw-r--r--dev-java/gnu-jaf/gnu-jaf-1.1.1-r1.ebuild35
-rw-r--r--dev-java/gnu-jaf/gnu-jaf-1.1.2.ebuild29
-rw-r--r--dev-java/gnu-jaf/metadata.xml26
-rw-r--r--dev-java/gnu-regexp/gnu-regexp-1.1.4-r3.ebuild45
-rw-r--r--dev-java/gnu-regexp/gnu-regexp-1.1.4-r4.ebuild40
-rw-r--r--dev-java/gnu-regexp/metadata.xml2
-rw-r--r--dev-java/gradle-bin/Manifest4
-rw-r--r--dev-java/gradle-bin/gradle-bin-6.3.ebuild49
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.4.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.5.ebuild61
-rw-r--r--dev-java/gradle-bin/gradle-bin-8.7.ebuild61
-rw-r--r--dev-java/gradle-bin/metadata.xml9
-rw-r--r--dev-java/greenmail/Manifest1
-rw-r--r--dev-java/greenmail/greenmail-2.0.0_alpha2.ebuild57
-rw-r--r--dev-java/greenmail/metadata.xml10
-rw-r--r--dev-java/gson/Manifest3
-rw-r--r--dev-java/gson/files/gson-2.10.2-GsonVersionDiagnosticsTest.patch13
-rw-r--r--dev-java/gson/gson-2.10.2_pre20231128.ebuild87
-rw-r--r--dev-java/gson/gson-2.7-r1.ebuild22
-rw-r--r--dev-java/gson/metadata.xml2
-rw-r--r--dev-java/guava-testlib/Manifest2
-rw-r--r--dev-java/guava-testlib/guava-testlib-33.0.0.ebuild46
-rw-r--r--dev-java/guava-testlib/metadata.xml13
-rw-r--r--dev-java/guava/Manifest2
-rw-r--r--dev-java/guava/guava-20.0.ebuild36
-rw-r--r--dev-java/guava/guava-33.0.0.ebuild35
-rw-r--r--dev-java/guava/metadata.xml2
-rw-r--r--dev-java/guice/Manifest2
-rw-r--r--dev-java/guice/guice-4.1.ebuild51
-rw-r--r--dev-java/guice/guice-5.1.0-r1.ebuild57
-rw-r--r--dev-java/guice/metadata.xml3
-rw-r--r--dev-java/gwt/Manifest4
-rw-r--r--dev-java/gwt/files/gwt-2.8.2-build-system.patch13
-rw-r--r--dev-java/gwt/files/gwt-2.9.0-jsinterop-classpath.patch20
-rw-r--r--dev-java/gwt/files/gwt-2.9.0-remove-git-usage.patch26
-rw-r--r--dev-java/gwt/gwt-2.8.2.ebuild77
-rw-r--r--dev-java/gwt/gwt-2.9.0.ebuild96
-rw-r--r--dev-java/gwt/metadata.xml21
-rw-r--r--dev-java/hamcrest-core/Manifest2
-rw-r--r--dev-java/hamcrest-core/files/hamcrest-core-1.3-java-11.patch22
-rw-r--r--dev-java/hamcrest-core/files/hamcrest-core-1.3-r3-java-11.patch26
-rw-r--r--dev-java/hamcrest-core/hamcrest-core-1.1-r4.ebuild4
-rw-r--r--dev-java/hamcrest-core/hamcrest-core-1.3-r2.ebuild62
-rw-r--r--dev-java/hamcrest-core/hamcrest-core-1.3-r3.ebuild53
-rw-r--r--dev-java/hamcrest-core/metadata.xml4
-rw-r--r--dev-java/hamcrest-generator/Manifest2
-rw-r--r--dev-java/hamcrest-generator/files/hamcrest-generator-1.3-no_jarjar.patch16
-rw-r--r--dev-java/hamcrest-generator/hamcrest-generator-1.3-r3.ebuild53
-rw-r--r--dev-java/hamcrest-generator/hamcrest-generator-1.3-r4.ebuild28
-rw-r--r--dev-java/hamcrest-generator/metadata.xml5
-rw-r--r--dev-java/hamcrest-library/Manifest2
-rw-r--r--dev-java/hamcrest-library/files/hamcrest-library-1.3-java-11.patch44
-rw-r--r--dev-java/hamcrest-library/files/hamcrest-library-1.3-r3-java-11.patch44
-rw-r--r--dev-java/hamcrest-library/hamcrest-library-1.3-r2.ebuild63
-rw-r--r--dev-java/hamcrest-library/hamcrest-library-1.3-r3.ebuild58
-rw-r--r--dev-java/hamcrest-library/metadata.xml4
-rw-r--r--dev-java/hamcrest/Manifest1
-rw-r--r--dev-java/hamcrest/files/hamcrest-2.2-java-11.patch127
-rw-r--r--dev-java/hamcrest/hamcrest-2.2-r1.ebuild41
-rw-r--r--dev-java/hamcrest/metadata.xml10
-rw-r--r--dev-java/hashcash/Manifest1
-rw-r--r--dev-java/hashcash/hashcash-1.1.ebuild23
-rw-r--r--dev-java/hashcash/metadata.xml16
-rw-r--r--dev-java/hawtjni-runtime/Manifest2
-rw-r--r--dev-java/hawtjni-runtime/hawtjni-runtime-1.15-r1.ebuild29
-rw-r--r--dev-java/hawtjni-runtime/hawtjni-runtime-1.18.ebuild27
-rw-r--r--dev-java/hawtjni-runtime/metadata.xml2
-rw-r--r--dev-java/headius-options/Manifest1
-rw-r--r--dev-java/headius-options/files/headius-options-1.1-build.xml210
-rw-r--r--dev-java/headius-options/headius-options-1.1.ebuild45
-rw-r--r--dev-java/headius-options/metadata.xml11
-rw-r--r--dev-java/hessian/Manifest1
-rw-r--r--dev-java/hessian/hessian-4.0.37.ebuild32
-rw-r--r--dev-java/hessian/metadata.xml14
-rw-r--r--dev-java/hoteqn/Manifest1
-rw-r--r--dev-java/hoteqn/hoteqn-4.0.0-r1.ebuild36
-rw-r--r--dev-java/hoteqn/metadata.xml8
-rw-r--r--dev-java/htmlcleaner/Manifest2
-rw-r--r--dev-java/htmlcleaner/files/htmlcleaner-2.24-fix-tests.patch26
-rw-r--r--dev-java/htmlcleaner/htmlcleaner-2.24.ebuild73
-rw-r--r--dev-java/htmlcleaner/htmlcleaner-2.29-r1.ebuild40
-rw-r--r--dev-java/htmlcleaner/metadata.xml2
-rw-r--r--dev-java/htmlparser-org/Manifest1
-rw-r--r--dev-java/htmlparser-org/htmlparser-org-1.6.ebuild48
-rw-r--r--dev-java/htmlparser-org/metadata.xml11
-rw-r--r--dev-java/htmlparser/Manifest1
-rw-r--r--dev-java/htmlparser/files/build.xml19
-rw-r--r--dev-java/htmlparser/htmlparser-1.4-r1.ebuild46
-rw-r--r--dev-java/htmlparser/metadata.xml8
-rw-r--r--dev-java/httpcomponents-client/Manifest1
-rw-r--r--dev-java/httpcomponents-client/httpcomponents-client-4.5.13-r1.ebuild74
-rw-r--r--dev-java/httpcomponents-client/metadata.xml10
-rw-r--r--dev-java/httpcore/Manifest1
-rw-r--r--dev-java/httpcore/httpcore-4.4.14.ebuild54
-rw-r--r--dev-java/httpcore/metadata.xml7
-rw-r--r--dev-java/icedtea-bin/Manifest14
-rw-r--r--dev-java/icedtea-bin/files/icedtea-bin.env.sh17
-rw-r--r--dev-java/icedtea-bin/icedtea-bin-3.16.0.ebuild132
-rw-r--r--dev-java/icedtea-bin/metadata.xml15
-rw-r--r--dev-java/icedtea-sound/icedtea-sound-1.0.1-r1.ebuild42
-rw-r--r--dev-java/icedtea-sound/icedtea-sound-1.0.1.ebuild43
-rw-r--r--dev-java/icedtea-sound/metadata.xml2
-rw-r--r--dev-java/icedtea-web/Manifest2
-rw-r--r--dev-java/icedtea-web/files/README.gentoo-r316
-rw-r--r--dev-java/icedtea-web/icedtea-web-1.8.4-r1.ebuild94
-rw-r--r--dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild118
-rw-r--r--dev-java/icedtea-web/metadata.xml2
-rw-r--r--dev-java/icedtea/Manifest24
-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.18.0.ebuild385
-rw-r--r--dev-java/icedtea/icedtea-3.19.0.ebuild385
-rw-r--r--dev-java/icedtea/metadata.xml38
-rw-r--r--dev-java/icu4j/Manifest5
-rw-r--r--dev-java/icu4j/icu4j-54.1.1.ebuild47
-rw-r--r--dev-java/icu4j/icu4j-55.1.ebuild48
-rw-r--r--dev-java/icu4j/icu4j-56.1.ebuild47
-rw-r--r--dev-java/icu4j/icu4j-74.2-r1.ebuild193
-rw-r--r--dev-java/icu4j/icu4j-75.1.ebuild192
-rw-r--r--dev-java/icu4j/metadata.xml6
-rw-r--r--dev-java/identicon/Manifest1
-rw-r--r--dev-java/identicon/identicon-1.0.ebuild35
-rw-r--r--dev-java/identicon/metadata.xml19
-rw-r--r--dev-java/injection-api/Manifest1
-rw-r--r--dev-java/injection-api/injection-api-2.0.1.ebuild29
-rw-r--r--dev-java/injection-api/metadata.xml10
-rw-r--r--dev-java/invokebinder/Manifest1
-rw-r--r--dev-java/invokebinder/files/invokebinder-1.6-build.xml230
-rw-r--r--dev-java/invokebinder/invokebinder-1.6.ebuild44
-rw-r--r--dev-java/invokebinder/metadata.xml11
-rw-r--r--dev-java/iso-relax/iso-relax-20050331-r5.ebuild39
-rw-r--r--dev-java/iso-relax/iso-relax-20050331-r6.ebuild29
-rw-r--r--dev-java/iso-relax/metadata.xml2
-rw-r--r--dev-java/istack-commons-runtime/Manifest3
-rw-r--r--dev-java/istack-commons-runtime/istack-commons-runtime-2.22.ebuild21
-rw-r--r--dev-java/istack-commons-runtime/istack-commons-runtime-3.0.12.ebuild37
-rw-r--r--dev-java/istack-commons-runtime/istack-commons-runtime-4.1.1-r1.ebuild52
-rw-r--r--dev-java/istack-commons-runtime/metadata.xml9
-rw-r--r--dev-java/istack-commons-soimp/Manifest1
-rw-r--r--dev-java/istack-commons-soimp/istack-commons-soimp-2.22.ebuild27
-rw-r--r--dev-java/istack-commons-soimp/metadata.xml8
-rw-r--r--dev-java/j2objc-annotations/Manifest3
-rw-r--r--dev-java/j2objc-annotations/j2objc-annotations-1.2.ebuild23
-rw-r--r--dev-java/j2objc-annotations/j2objc-annotations-2.8.ebuild33
-rw-r--r--dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild30
-rw-r--r--dev-java/j2objc-annotations/metadata.xml2
-rw-r--r--dev-java/jackcess/jackcess-4.0.0.ebuild6
-rw-r--r--dev-java/jackcess/metadata.xml2
-rw-r--r--dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-CSRFUtilTest.java.patch21
-rw-r--r--dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-OutputContextImplTest.java.patch16
-rw-r--r--dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-build.xml350
-rw-r--r--dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1-r3.ebuild51
-rw-r--r--dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1.ebuild65
-rw-r--r--dev-java/jackrabbit-webdav/metadata.xml2
-rw-r--r--dev-java/jackson-annotations/Manifest2
-rw-r--r--dev-java/jackson-annotations/jackson-annotations-2.13.4.ebuild38
-rw-r--r--dev-java/jackson-annotations/jackson-annotations-2.9.10.ebuild47
-rw-r--r--dev-java/jackson-annotations/metadata.xml2
-rw-r--r--dev-java/jackson-core/Manifest1
-rw-r--r--dev-java/jackson-core/jackson-core-2.13.4.ebuild64
-rw-r--r--dev-java/jackson-core/metadata.xml11
-rw-r--r--dev-java/jackson-databind/Manifest1
-rw-r--r--dev-java/jackson-databind/jackson-databind-2.13.4.1.ebuild76
-rw-r--r--dev-java/jackson-databind/metadata.xml11
-rw-r--r--dev-java/jackson-dataformat-xml/Manifest1
-rw-r--r--dev-java/jackson-dataformat-xml/jackson-dataformat-xml-2.13.4-r1.ebuild105
-rw-r--r--dev-java/jackson-dataformat-xml/metadata.xml14
-rw-r--r--dev-java/jackson-dataformat-yaml/Manifest1
-rw-r--r--dev-java/jackson-dataformat-yaml/jackson-dataformat-yaml-2.13.4-r1.ebuild60
-rw-r--r--dev-java/jackson-dataformat-yaml/metadata.xml11
-rw-r--r--dev-java/jackson-module-jakarta-xmlbind/Manifest1
-rw-r--r--dev-java/jackson-module-jakarta-xmlbind/jackson-module-jakarta-xmlbind-2.13.4-r1.ebuild79
-rw-r--r--dev-java/jackson-module-jakarta-xmlbind/metadata.xml14
-rw-r--r--dev-java/jackson/Manifest1
-rw-r--r--dev-java/jackson/jackson-2.9.10.ebuild59
-rw-r--r--dev-java/jackson/metadata.xml11
-rw-r--r--dev-java/jacl/jacl-1.4.1-r1.ebuild52
-rw-r--r--dev-java/jacl/jacl-1.4.1-r2.ebuild52
-rw-r--r--dev-java/jacl/metadata.xml54
-rw-r--r--dev-java/jacoco/Manifest4
-rw-r--r--dev-java/jacoco/jacoco-0.7.9.ebuild38
-rw-r--r--dev-java/jacoco/metadata.xml11
-rw-r--r--dev-java/jade/Manifest1
-rw-r--r--dev-java/jade/jade-3.3-r3.ebuild29
-rw-r--r--dev-java/jade/metadata.xml8
-rw-r--r--dev-java/jai-imageio-core/Manifest1
-rw-r--r--dev-java/jai-imageio-core/jai-imageio-core-1.4.0.ebuild33
-rw-r--r--dev-java/jai-imageio-core/metadata.xml16
-rw-r--r--dev-java/jai-imageio-jpeg2000/Manifest1
-rw-r--r--dev-java/jai-imageio-jpeg2000/jai-imageio-jpeg2000-1.4.0.ebuild41
-rw-r--r--dev-java/jai-imageio-jpeg2000/metadata.xml17
-rw-r--r--dev-java/jakarta-activation-api/Manifest3
-rw-r--r--dev-java/jakarta-activation-api/jakarta-activation-api-1.2.2-r1.ebuild48
-rw-r--r--dev-java/jakarta-activation-api/jakarta-activation-api-2.0.1.ebuild33
-rw-r--r--dev-java/jakarta-activation-api/jakarta-activation-api-2.1.1.ebuild26
-rw-r--r--dev-java/jakarta-activation-api/metadata.xml6
-rw-r--r--dev-java/jakarta-activation/Manifest2
-rw-r--r--dev-java/jakarta-activation/jakarta-activation-1.2.2-r1.ebuild49
-rw-r--r--dev-java/jakarta-activation/jakarta-activation-2.0.1-r1.ebuild24
-rw-r--r--dev-java/jakarta-activation/metadata.xml11
-rw-r--r--dev-java/jakarta-annotations-api/Manifest1
-rw-r--r--dev-java/jakarta-annotations-api/jakarta-annotations-api-2.1.1.ebuild31
-rw-r--r--dev-java/jakarta-annotations-api/metadata.xml10
-rw-r--r--dev-java/jakarta-el-api/Manifest1
-rw-r--r--dev-java/jakarta-el-api/jakarta-el-api-5.0.1-r1.ebuild33
-rw-r--r--dev-java/jakarta-el-api/metadata.xml7
-rw-r--r--dev-java/jakarta-interceptors/Manifest1
-rw-r--r--dev-java/jakarta-interceptors/jakarta-interceptors-2.1.0.ebuild33
-rw-r--r--dev-java/jakarta-interceptors/metadata.xml13
-rw-r--r--dev-java/jakarta-json-api/Manifest1
-rw-r--r--dev-java/jakarta-json-api/jakarta-json-api-1.1.6-r1.ebuild31
-rw-r--r--dev-java/jakarta-json-api/metadata.xml11
-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-api/metadata.xml14
-rw-r--r--dev-java/jakarta-mail/Manifest1
-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.ebuild73
-rw-r--r--dev-java/jakarta-mail/metadata.xml10
-rw-r--r--dev-java/jakarta-oro/jakarta-oro-2.0.8-r5.ebuild4
-rw-r--r--dev-java/jakarta-oro/metadata.xml2
-rw-r--r--dev-java/jakarta-regexp/Manifest2
-rw-r--r--dev-java/jakarta-regexp/jakarta-regexp-1.3-r5.ebuild33
-rw-r--r--dev-java/jakarta-regexp/jakarta-regexp-1.4-r2.ebuild33
-rw-r--r--dev-java/jakarta-regexp/jakarta-regexp-1.4-r3.ebuild32
-rw-r--r--dev-java/jakarta-regexp/jakarta-regexp-1.5.ebuild33
-rw-r--r--dev-java/jakarta-regexp/metadata.xml2
-rw-r--r--dev-java/jakarta-servlet-api/Manifest2
-rw-r--r--dev-java/jakarta-servlet-api/jakarta-servlet-api-4.0.4.ebuild35
-rw-r--r--dev-java/jakarta-servlet-api/jakarta-servlet-api-6.0.0.ebuild39
-rw-r--r--dev-java/jakarta-servlet-api/metadata.xml11
-rw-r--r--dev-java/jakarta-xml-soap-api/Manifest1
-rw-r--r--dev-java/jakarta-xml-soap-api/files/jakarta-xml-soap-api-1.4.2-dropSecurityManager.patch14
-rw-r--r--dev-java/jakarta-xml-soap-api/jakarta-xml-soap-api-1.4.2-r2.ebuild55
-rw-r--r--dev-java/jakarta-xml-soap-api/metadata.xml11
-rw-r--r--dev-java/jakartaee-migration/Manifest2
-rw-r--r--dev-java/jakartaee-migration/jakartaee-migration-1.0.0.ebuild89
-rw-r--r--dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild72
-rw-r--r--dev-java/jakartaee-migration/metadata.xml13
-rw-r--r--dev-java/jal/jal-20031117-r5.ebuild50
-rw-r--r--dev-java/jal/jal-20031117-r7.ebuild45
-rw-r--r--dev-java/jal/metadata.xml2
-rw-r--r--dev-java/jama/Manifest1
-rw-r--r--dev-java/jama/jama-1.0.3-r1.ebuild28
-rw-r--r--dev-java/jama/metadata.xml8
-rw-r--r--dev-java/jamon/Manifest1
-rw-r--r--dev-java/jamon/jamon-2.81.ebuild82
-rw-r--r--dev-java/jamon/metadata.xml16
-rw-r--r--dev-java/jamvm/Manifest1
-rw-r--r--dev-java/jamvm/files/jamvm-2.0.0-classes-location.patch27
-rw-r--r--dev-java/jamvm/files/jamvm-2.0.0-env.file15
-rw-r--r--dev-java/jamvm/files/jamvm-2.0.0-javac.in57
-rw-r--r--dev-java/jamvm/files/jamvm-2.0.0-noexecstack.patch48
-rw-r--r--dev-java/jamvm/jamvm-2.0.0-r1.ebuild126
-rw-r--r--dev-java/jamvm/metadata.xml11
-rw-r--r--dev-java/janino/Manifest1
-rw-r--r--dev-java/janino/janino-2.7.0.ebuild47
-rw-r--r--dev-java/janino/metadata.xml8
-rw-r--r--dev-java/jansi-native/jansi-native-1.8.ebuild2
-rw-r--r--dev-java/jansi-native/metadata.xml2
-rw-r--r--dev-java/jansi/Manifest3
-rw-r--r--dev-java/jansi/files/jansi-1.11-build.xml298
-rw-r--r--dev-java/jansi/jansi-1.11-r2.ebuild54
-rw-r--r--dev-java/jansi/jansi-1.13.ebuild38
-rw-r--r--dev-java/jansi/jansi-2.4.0-r1.ebuild78
-rw-r--r--dev-java/jansi/metadata.xml2
-rw-r--r--dev-java/japitools/Manifest1
-rw-r--r--dev-java/japitools/japitools-0.9.7-r4.ebuild50
-rw-r--r--dev-java/japitools/metadata.xml16
-rw-r--r--dev-java/jargs/Manifest1
-rw-r--r--dev-java/jargs/jargs-1.0.ebuild29
-rw-r--r--dev-java/jargs/metadata.xml12
-rw-r--r--dev-java/jarjar/Manifest1
-rw-r--r--dev-java/jarjar/files/0.9-bootclasspath.patch11
-rw-r--r--dev-java/jarjar/files/0.9-system-jars.patch20
-rw-r--r--dev-java/jarjar/jarjar-1.4.ebuild64
-rw-r--r--dev-java/jarjar/metadata.xml11
-rw-r--r--dev-java/java-apicheck/Manifest1
-rw-r--r--dev-java/java-apicheck/java-apicheck-0_p20150907.ebuild22
-rw-r--r--dev-java/java-apicheck/metadata.xml11
-rw-r--r--dev-java/java-config/Manifest1
-rw-r--r--dev-java/java-config/java-config-2.3.1-r1.ebuild43
-rw-r--r--dev-java/java-config/java-config-2.3.1.ebuild38
-rw-r--r--dev-java/java-config/java-config-2.3.3-r1.ebuild78
-rw-r--r--dev-java/java-config/java-config-9999.ebuild68
-rw-r--r--dev-java/java-config/metadata.xml9
-rw-r--r--dev-java/java-dep-check/files/Main-0.5.java2
-rw-r--r--dev-java/java-dep-check/java-dep-check-0.5-r3.ebuild28
-rw-r--r--dev-java/java-dep-check/java-dep-check-0.5.ebuild32
-rw-r--r--dev-java/java-dep-check/metadata.xml2
-rw-r--r--dev-java/java-diff-utils/Manifest2
-rw-r--r--dev-java/java-diff-utils/java-diff-utils-1.3.0.ebuild26
-rw-r--r--dev-java/java-diff-utils/java-diff-utils-4.12.ebuild33
-rw-r--r--dev-java/java-diff-utils/metadata.xml10
-rw-r--r--dev-java/java-getopt/java-getopt-1.0.14-r1.ebuild33
-rw-r--r--dev-java/java-getopt/java-getopt-1.0.14-r2.ebuild32
-rw-r--r--dev-java/java-getopt/metadata.xml13
-rw-r--r--dev-java/java-service-wrapper/Manifest2
-rw-r--r--dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-as-needed.patch157
-rw-r--r--dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch2
-rw-r--r--dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-testsuite.patch12
-rw-r--r--dev-java/java-service-wrapper/java-service-wrapper-3.5.25-r2.ebuild68
-rw-r--r--dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild94
-rw-r--r--dev-java/java-service-wrapper/metadata.xml2
-rw-r--r--dev-java/javacc/Manifest4
-rw-r--r--dev-java/javacc/javacc-4.1.ebuild66
-rw-r--r--dev-java/javacc/javacc-5.0-r3.ebuild73
-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.xml5
-rw-r--r--dev-java/javacsv/Manifest1
-rw-r--r--dev-java/javacsv/javacsv-2.1.ebuild41
-rw-r--r--dev-java/javacsv/metadata.xml15
-rw-r--r--dev-java/javacup/javacup-0.11b_p20151001-r1.ebuild2
-rw-r--r--dev-java/javacup/metadata.xml2
-rw-r--r--dev-java/javahelp/javahelp-2.0.05_p20170719-r3.ebuild73
-rw-r--r--dev-java/javahelp/javahelp-2.0.05_p20170719.ebuild70
-rw-r--r--dev-java/javahelp/metadata.xml5
-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/javassist/Manifest3
-rw-r--r--dev-java/javassist/javassist-2.6-r2.ebuild32
-rw-r--r--dev-java/javassist/javassist-3.18.2.ebuild40
-rw-r--r--dev-java/javassist/javassist-3.29.2.ebuild79
-rw-r--r--dev-java/javassist/metadata.xml5
-rw-r--r--dev-java/javatoolkit/Manifest2
-rw-r--r--dev-java/javatoolkit/javatoolkit-0.6.5.ebuild28
-rw-r--r--dev-java/javatoolkit/javatoolkit-0.6.7.ebuild28
-rw-r--r--dev-java/javatoolkit/metadata.xml6
-rw-r--r--dev-java/javax-el-api/Manifest1
-rw-r--r--dev-java/javax-el-api/javax-el-api-2.2.ebuild29
-rw-r--r--dev-java/javax-el-api/metadata.xml7
-rw-r--r--dev-java/javax-inject/Manifest1
-rw-r--r--dev-java/javax-inject/javax-inject-1-r2.ebuild28
-rw-r--r--dev-java/javax-inject/javax-inject-1-r3.ebuild22
-rw-r--r--dev-java/javax-inject/javax-inject-1-r4.ebuild23
-rw-r--r--dev-java/javax-inject/metadata.xml5
-rw-r--r--dev-java/javax-jms-api/Manifest1
-rw-r--r--dev-java/javax-jms-api/javax-jms-api-2.0.3.ebuild29
-rw-r--r--dev-java/javax-jms-api/metadata.xml10
-rw-r--r--dev-java/javax-jsp-api/Manifest2
-rw-r--r--dev-java/javax-jsp-api/javax-jsp-api-2.0.ebuild37
-rw-r--r--dev-java/javax-jsp-api/javax-jsp-api-2.2.ebuild27
-rw-r--r--dev-java/javax-jsp-api/metadata.xml11
-rw-r--r--dev-java/javax-mail/Manifest2
-rw-r--r--dev-java/javax-mail/javax-mail-1.6.7-r2.ebuild61
-rw-r--r--dev-java/javax-mail/metadata.xml10
-rw-r--r--dev-java/javax-persistence-api/Manifest1
-rw-r--r--dev-java/javax-persistence-api/javax-persistence-api-2.2-r1.ebuild33
-rw-r--r--dev-java/javax-persistence-api/metadata.xml7
-rw-r--r--dev-java/javax-servlet-api/Manifest4
-rw-r--r--dev-java/javax-servlet-api/javax-servlet-api-2.2.ebuild30
-rw-r--r--dev-java/javax-servlet-api/javax-servlet-api-2.5.ebuild29
-rw-r--r--dev-java/javax-servlet-api/javax-servlet-api-3.0.1.ebuild30
-rw-r--r--dev-java/javax-servlet-api/javax-servlet-api-3.1.0.ebuild30
-rw-r--r--dev-java/javax-servlet-api/metadata.xml16
-rw-r--r--dev-java/jax-rpc-api/Manifest1
-rw-r--r--dev-java/jax-rpc-api/jax-rpc-api-1.1.4.ebuild38
-rw-r--r--dev-java/jax-rpc-api/metadata.xml10
-rw-r--r--dev-java/jaxb-api/Manifest3
-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-r2.ebuild42
-rw-r--r--dev-java/jaxb-api/jaxb-api-3.0.1-r1.ebuild38
-rw-r--r--dev-java/jaxb-api/jaxb-api-4.0.2.ebuild43
-rw-r--r--dev-java/jaxb-api/metadata.xml11
-rw-r--r--dev-java/jaxb-runtime/Manifest2
-rw-r--r--dev-java/jaxb-runtime/jaxb-runtime-2.3.8.ebuild65
-rw-r--r--dev-java/jaxb-runtime/jaxb-runtime-4.0.0-r1.ebuild108
-rw-r--r--dev-java/jaxb-runtime/metadata.xml10
-rw-r--r--dev-java/jaxb-stax-ex/Manifest2
-rw-r--r--dev-java/jaxb-stax-ex/jaxb-stax-ex-1.8.3.ebuild35
-rw-r--r--dev-java/jaxb-stax-ex/jaxb-stax-ex-2.1.0-r1.ebuild37
-rw-r--r--dev-java/jaxb-stax-ex/metadata.xml10
-rw-r--r--dev-java/jaxen/Manifest3
-rw-r--r--dev-java/jaxen/jaxen-1.1.6-r2.ebuild39
-rw-r--r--dev-java/jaxen/jaxen-1.2.0-r1.ebuild84
-rw-r--r--dev-java/jaxen/jaxen-2.0.0.ebuild67
-rw-r--r--dev-java/jaxen/metadata.xml2
-rw-r--r--dev-java/jaxrs-api/Manifest1
-rw-r--r--dev-java/jaxrs-api/jaxrs-api-2.1.6-r1.ebuild50
-rw-r--r--dev-java/jaxrs-api/metadata.xml10
-rw-r--r--dev-java/jaxws-api/Manifest1
-rw-r--r--dev-java/jaxws-api/jaxws-api-2.3.3.ebuild35
-rw-r--r--dev-java/jaxws-api/metadata.xml13
-rw-r--r--dev-java/jazzy/Manifest1
-rw-r--r--dev-java/jazzy/jazzy-0.5.2-r1.ebuild39
-rw-r--r--dev-java/jazzy/metadata.xml11
-rw-r--r--dev-java/jbcrypt/Manifest1
-rw-r--r--dev-java/jbcrypt/jbcrypt-0.4.ebuild26
-rw-r--r--dev-java/jbcrypt/metadata.xml16
-rw-r--r--dev-java/jbig2-imageio/Manifest1
-rw-r--r--dev-java/jbig2-imageio/jbig2-imageio-3.0.3.ebuild41
-rw-r--r--dev-java/jbig2-imageio/metadata.xml14
-rw-r--r--dev-java/jbitcollider-core/jbitcollider-core-0.8-r1.ebuild6
-rw-r--r--dev-java/jbitcollider-core/metadata.xml7
-rw-r--r--dev-java/jboss-jms-api/Manifest1
-rw-r--r--dev-java/jboss-jms-api/jboss-jms-api-1.0.1.ebuild32
-rw-r--r--dev-java/jboss-jms-api/metadata.xml10
-rw-r--r--dev-java/jboss-marshalling-river/Manifest1
-rw-r--r--dev-java/jboss-marshalling-river/jboss-marshalling-river-1.3.0.ebuild31
-rw-r--r--dev-java/jboss-marshalling-river/metadata.xml8
-rw-r--r--dev-java/jboss-marshalling-serial/Manifest1
-rw-r--r--dev-java/jboss-marshalling-serial/jboss-marshalling-serial-1.3.0.ebuild31
-rw-r--r--dev-java/jboss-marshalling-serial/metadata.xml8
-rw-r--r--dev-java/jboss-marshalling/Manifest1
-rw-r--r--dev-java/jboss-marshalling/jboss-marshalling-1.3.0-r2.ebuild26
-rw-r--r--dev-java/jboss-marshalling/metadata.xml8
-rw-r--r--dev-java/jboss-modules/Manifest1
-rw-r--r--dev-java/jboss-modules/jboss-modules-1.3.3-r1.ebuild30
-rw-r--r--dev-java/jboss-modules/metadata.xml11
-rw-r--r--dev-java/jcalendar/jcalendar-1.4-r1.ebuild52
-rw-r--r--dev-java/jcalendar/jcalendar-1.4.ebuild50
-rw-r--r--dev-java/jcalendar/metadata.xml2
-rw-r--r--dev-java/jchardet/Manifest1
-rw-r--r--dev-java/jchardet/jchardet-1.1-r1.ebuild28
-rw-r--r--dev-java/jchardet/metadata.xml11
-rw-r--r--dev-java/jchart2d/jchart2d-3.2.2-r1.ebuild56
-rw-r--r--dev-java/jchart2d/jchart2d-3.2.2.ebuild39
-rw-r--r--dev-java/jchart2d/metadata.xml2
-rw-r--r--dev-java/jcifs/Manifest1
-rw-r--r--dev-java/jcifs/jcifs-1.3.17-r2.ebuild45
-rw-r--r--dev-java/jcifs/jcifs-1.3.19-r2.ebuild45
-rw-r--r--dev-java/jcifs/jcifs-1.3.19.ebuild45
-rw-r--r--dev-java/jcifs/metadata.xml2
-rw-r--r--dev-java/jcip-annotations/Manifest1
-rw-r--r--dev-java/jcip-annotations/jcip-annotations-1.0.1-r1.ebuild30
-rw-r--r--dev-java/jcip-annotations/metadata.xml12
-rw-r--r--dev-java/jclasslib/jclasslib-3.1-r1.ebuild34
-rw-r--r--dev-java/jclasslib/jclasslib-3.1.ebuild34
-rw-r--r--dev-java/jclasslib/metadata.xml2
-rw-r--r--dev-java/jcodings/Manifest3
-rw-r--r--dev-java/jcodings/files/maven-build.xml176
-rw-r--r--dev-java/jcodings/jcodings-1.0.11-r1.ebuild41
-rw-r--r--dev-java/jcodings/jcodings-1.0.5-r1.ebuild36
-rw-r--r--dev-java/jcodings/jcodings-1.0.55.ebuild37
-rw-r--r--dev-java/jcodings/metadata.xml12
-rw-r--r--dev-java/jcommander/Manifest3
-rw-r--r--dev-java/jcommander/files/jcommander-1.64-DynamicParameterTest.patch57
-rw-r--r--dev-java/jcommander/jcommander-1.48.ebuild27
-rw-r--r--dev-java/jcommander/jcommander-1.64-r1.ebuild36
-rw-r--r--dev-java/jcommander/jcommander-1.82.ebuild60
-rw-r--r--dev-java/jcommander/metadata.xml2
-rw-r--r--dev-java/jcommon/Manifest1
-rw-r--r--dev-java/jcommon/jcommon-1.0.23.ebuild56
-rw-r--r--dev-java/jcommon/metadata.xml11
-rw-r--r--dev-java/jctools-core/Manifest1
-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.3.ebuild70
-rw-r--r--dev-java/jctools-core/metadata.xml11
-rw-r--r--dev-java/jdbc-mssqlserver/Manifest1
-rw-r--r--dev-java/jdbc-mssqlserver/jdbc-mssqlserver-6.2.2.ebuild27
-rw-r--r--dev-java/jdbc-mssqlserver/metadata.xml8
-rw-r--r--dev-java/jdbc-mysql/Manifest5
-rw-r--r--dev-java/jdbc-mysql/jdbc-mysql-8.0.25.ebuild54
-rw-r--r--dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.ebuild56
-rw-r--r--dev-java/jdbc-mysql/jdbc-mysql-8.3.0.ebuild55
-rw-r--r--dev-java/jdbc-mysql/metadata.xml5
-rw-r--r--dev-java/jdbc-postgresql/Manifest6
-rw-r--r--dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1201-remove-osgi.patch37
-rw-r--r--dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1204-remove-sspi.patch138
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-42.7.1.ebuild58
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1003.ebuild79
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1004.ebuild79
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-9.3_p1100.ebuild79
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1205.ebuild102
-rw-r--r--dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1206.ebuild102
-rw-r--r--dev-java/jdbc-postgresql/metadata.xml12
-rw-r--r--dev-java/jdepend/Manifest2
-rw-r--r--dev-java/jdepend/jdepend-2.10-r1.ebuild25
-rw-r--r--dev-java/jdepend/jdepend-2.9-r6.ebuild33
-rw-r--r--dev-java/jdepend/metadata.xml13
-rw-r--r--dev-java/jdisasm/Manifest1
-rw-r--r--dev-java/jdisasm/jdisasm-1.0.6.ebuild110
-rw-r--r--dev-java/jdisasm/metadata.xml10
-rw-r--r--dev-java/jdom/Manifest2
-rw-r--r--dev-java/jdom/files/build-xml-2.patch36
-rw-r--r--dev-java/jdom/files/jdom-2.0.6.1-skip-failing-tests.patch248
-rw-r--r--dev-java/jdom/jdom-2.0.6-r5.ebuild64
-rw-r--r--dev-java/jdom/jdom-2.0.6.1.ebuild110
-rw-r--r--dev-java/jdom/metadata.xml5
-rw-r--r--dev-java/jdynamite/Manifest1
-rw-r--r--dev-java/jdynamite/jdynamite-1.2-r1.ebuild35
-rw-r--r--dev-java/jdynamite/metadata.xml11
-rw-r--r--dev-java/jempbox/Manifest2
-rw-r--r--dev-java/jempbox/files/jempbox-1.7.1_maven-build.xml247
-rw-r--r--dev-java/jempbox/jempbox-1.7.1-r1.ebuild47
-rw-r--r--dev-java/jempbox/jempbox-1.8.11-r1.ebuild46
-rw-r--r--dev-java/jempbox/metadata.xml11
-rw-r--r--dev-java/jeromq/Manifest1
-rw-r--r--dev-java/jeromq/jeromq-0.5.2.ebuild50
-rw-r--r--dev-java/jeromq/metadata.xml10
-rw-r--r--dev-java/jetty-alpn-api/Manifest1
-rw-r--r--dev-java/jetty-alpn-api/jetty-alpn-api-1.1.2.ebuild26
-rw-r--r--dev-java/jetty-alpn-api/metadata.xml16
-rw-r--r--dev-java/jetty-npn-api/Manifest1
-rw-r--r--dev-java/jetty-npn-api/jetty-npn-api-1.1.1.ebuild24
-rw-r--r--dev-java/jetty-npn-api/metadata.xml13
-rw-r--r--dev-java/jexcelapi/Manifest1
-rw-r--r--dev-java/jexcelapi/jexcelapi-2.6.8-r2.ebuild46
-rw-r--r--dev-java/jexcelapi/metadata.xml14
-rw-r--r--dev-java/jffi/Manifest2
-rw-r--r--dev-java/jffi/files/jffi-1.2.8-junit-4.11.patch14
-rw-r--r--dev-java/jffi/files/jffi-1.2.8-makefile.patch52
-rw-r--r--dev-java/jffi/files/jffi-1.3.8-GNUmakefile.patch39
-rw-r--r--dev-java/jffi/files/jffi_maven-build.xml259
-rw-r--r--dev-java/jffi/jffi-1.2.9-r1.ebuild131
-rw-r--r--dev-java/jffi/jffi-1.3.10.ebuild118
-rw-r--r--dev-java/jffi/metadata.xml2
-rw-r--r--dev-java/jflex/jflex-1.6.1-r1.ebuild124
-rw-r--r--dev-java/jflex/jflex-1.6.1-r2.ebuild126
-rw-r--r--dev-java/jflex/jflex-1.6.1.ebuild121
-rw-r--r--dev-java/jflex/metadata.xml2
-rw-r--r--dev-java/jformatstring/Manifest1
-rw-r--r--dev-java/jformatstring/jformatstring-2.0.3-r1.ebuild31
-rw-r--r--dev-java/jformatstring/metadata.xml12
-rw-r--r--dev-java/jfreechart/Manifest1
-rw-r--r--dev-java/jfreechart/files/jfreechart-1.0.19-build.xml.patch25
-rw-r--r--dev-java/jfreechart/files/jfreechart-1.0.19-fix-TimeSeriesCollectionTest.patch24
-rw-r--r--dev-java/jfreechart/jfreechart-1.0.19-r1.ebuild71
-rw-r--r--dev-java/jfreechart/metadata.xml11
-rw-r--r--dev-java/jfreesvg/Manifest2
-rw-r--r--dev-java/jfreesvg/jfreesvg-2.1-r1.ebuild42
-rw-r--r--dev-java/jfreesvg/jfreesvg-3.0.ebuild39
-rw-r--r--dev-java/jfreesvg/metadata.xml19
-rw-r--r--dev-java/jgoodies-animation/Manifest1
-rw-r--r--dev-java/jgoodies-animation/jgoodies-animation-1.2.0-r2.ebuild56
-rw-r--r--dev-java/jgoodies-animation/metadata.xml8
-rw-r--r--dev-java/jgoodies-binding/Manifest1
-rw-r--r--dev-java/jgoodies-binding/jgoodies-binding-1.1.2-r2.ebuild40
-rw-r--r--dev-java/jgoodies-binding/metadata.xml8
-rw-r--r--dev-java/jgoodies-common/jgoodies-common-1.8.0-r1.ebuild40
-rw-r--r--dev-java/jgoodies-common/jgoodies-common-1.8.0.ebuild39
-rw-r--r--dev-java/jgoodies-common/metadata.xml2
-rw-r--r--dev-java/jgoodies-forms/Manifest2
-rw-r--r--dev-java/jgoodies-forms/jgoodies-forms-1.3.0-r1.ebuild39
-rw-r--r--dev-java/jgoodies-forms/jgoodies-forms-1.8.0.ebuild39
-rw-r--r--dev-java/jgoodies-forms/metadata.xml8
-rw-r--r--dev-java/jgoodies-looks/Manifest2
-rw-r--r--dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-build.xml83
-rw-r--r--dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-plastic.txt8
-rw-r--r--dev-java/jgoodies-looks/files/jgoodies-looks-2.3.1-build.xml.patch61
-rw-r--r--dev-java/jgoodies-looks/jgoodies-looks-1.2.2-r2.ebuild48
-rw-r--r--dev-java/jgoodies-looks/jgoodies-looks-2.3.1-r1.ebuild60
-rw-r--r--dev-java/jgoodies-looks/metadata.xml2
-rw-r--r--dev-java/jgraph/Manifest1
-rw-r--r--dev-java/jgraph/jgraph-5.12.0.4-r1.ebuild35
-rw-r--r--dev-java/jgraph/metadata.xml11
-rw-r--r--dev-java/jgrapht/Manifest1
-rw-r--r--dev-java/jgrapht/jgrapht-0.8.3.ebuild48
-rw-r--r--dev-java/jgrapht/metadata.xml11
-rw-r--r--dev-java/jibx-tools/Manifest1
-rw-r--r--dev-java/jibx-tools/files/1.1.5-build.patch20
-rw-r--r--dev-java/jibx-tools/jibx-tools-1.1.5-r2.ebuild52
-rw-r--r--dev-java/jibx-tools/jibx-tools-1.1.5-r3.ebuild51
-rw-r--r--dev-java/jibx-tools/metadata.xml11
-rw-r--r--dev-java/jibx/Manifest4
-rw-r--r--dev-java/jibx/jibx-1.1.5-r3.ebuild52
-rw-r--r--dev-java/jibx/jibx-1.2.6-r1.ebuild47
-rw-r--r--dev-java/jibx/metadata.xml11
-rw-r--r--dev-java/jide-oss/Manifest3
-rw-r--r--dev-java/jide-oss/jide-oss-3.6.12.ebuild30
-rw-r--r--dev-java/jide-oss/jide-oss-3.6.18.ebuild30
-rw-r--r--dev-java/jide-oss/jide-oss-3.7.12.ebuild58
-rw-r--r--dev-java/jide-oss/metadata.xml2
-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/jlex/Manifest1
-rw-r--r--dev-java/jlex/jlex-1.2.6-r2.ebuild50
-rw-r--r--dev-java/jlex/metadata.xml8
-rw-r--r--dev-java/jlfgr/Manifest1
-rw-r--r--dev-java/jlfgr/jlfgr-1.0-r2.ebuild30
-rw-r--r--dev-java/jlfgr/metadata.xml8
-rw-r--r--dev-java/jline/Manifest3
-rw-r--r--dev-java/jline/files/maven-build.properties13
-rw-r--r--dev-java/jline/files/maven-build.xml199
-rw-r--r--dev-java/jline/jline-1.0-r1.ebuild70
-rw-r--r--dev-java/jline/jline-2.12.1-r1.ebuild66
-rw-r--r--dev-java/jline/jline-2.14.6.ebuild66
-rw-r--r--dev-java/jline/metadata.xml2
-rw-r--r--dev-java/jmc/Manifest1
-rw-r--r--dev-java/jmc/jmc-8.3.0.ebuild74
-rw-r--r--dev-java/jmc/metadata.xml10
-rw-r--r--dev-java/jmdns/Manifest1
-rw-r--r--dev-java/jmdns/jmdns-3.4.1-r1.ebuild27
-rw-r--r--dev-java/jmdns/metadata.xml16
-rw-r--r--dev-java/jmh-core/Manifest3
-rw-r--r--dev-java/jmh-core/jmh-core-1.21.ebuild34
-rw-r--r--dev-java/jmh-core/jmh-core-1.37.ebuild36
-rw-r--r--dev-java/jmh-core/jmh-core-1.4.1.ebuild37
-rw-r--r--dev-java/jmh-core/metadata.xml5
-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.xml11
-rw-r--r--dev-java/jmi-interface/Manifest2
-rw-r--r--dev-java/jmi-interface/files/jmi-interface-1.0-enum.patch22
-rw-r--r--dev-java/jmi-interface/jmi-interface-1.0-r4.ebuild52
-rw-r--r--dev-java/jmi-interface/jmi-interface-1.0-r5.ebuild51
-rw-r--r--dev-java/jmi-interface/metadata.xml8
-rw-r--r--dev-java/jmock/Manifest2
-rw-r--r--dev-java/jmock/jmock-2.12.0.ebuild98
-rw-r--r--dev-java/jmock/jmock-2.6.1-r1.ebuild43
-rw-r--r--dev-java/jmock/metadata.xml2
-rw-r--r--dev-java/jna/Manifest3
-rw-r--r--dev-java/jna/files/4.2.2-build.xml.patch23
-rw-r--r--dev-java/jna/files/4.2.2-makefile-flags.patch25
-rw-r--r--dev-java/jna/files/5.11.0-makefile-flags.patch34
-rw-r--r--dev-java/jna/files/jna-5.11.0-no-Werror.patch17
-rw-r--r--dev-java/jna/files/jna-5.13.0-LibCTest.patch12
-rw-r--r--dev-java/jna/files/jna-5.13.0-testpath.patch103
-rw-r--r--dev-java/jna/jna-4.2.2-r2.ebuild87
-rw-r--r--dev-java/jna/jna-5.13.0-r1.ebuild197
-rw-r--r--dev-java/jna/jna-5.14.0-r1.ebuild198
-rw-r--r--dev-java/jna/metadata.xml8
-rw-r--r--dev-java/jnacl/Manifest1
-rw-r--r--dev-java/jnacl/jnacl-1.0.ebuild51
-rw-r--r--dev-java/jnacl/metadata.xml14
-rw-r--r--dev-java/jnlp-api/Manifest1
-rw-r--r--dev-java/jnlp-api/jnlp-api-6.0.18.ebuild25
-rw-r--r--dev-java/jnlp-api/metadata.xml8
-rw-r--r--dev-java/jnr-a64asm/jnr-a64asm-1.0.0.ebuild4
-rw-r--r--dev-java/jnr-a64asm/metadata.xml2
-rw-r--r--dev-java/jnr-constants/Manifest2
-rw-r--r--dev-java/jnr-constants/files/jnr-constants_maven-build.xml259
-rw-r--r--dev-java/jnr-constants/jnr-constants-0.10.4.ebuild29
-rw-r--r--dev-java/jnr-constants/jnr-constants-0.8.6.ebuild49
-rw-r--r--dev-java/jnr-constants/metadata.xml2
-rw-r--r--dev-java/jnr-enxio/Manifest1
-rw-r--r--dev-java/jnr-enxio/files/jnr-enxio-0.7-build.xml320
-rw-r--r--dev-java/jnr-enxio/jnr-enxio-0.7-r1.ebuild40
-rw-r--r--dev-java/jnr-enxio/metadata.xml11
-rw-r--r--dev-java/jnr-ffi/Manifest2
-rw-r--r--dev-java/jnr-ffi/files/jnr-ffi-2.0.2-junit48.patch11
-rw-r--r--dev-java/jnr-ffi/files/jnr-ffi_maven-build.xml250
-rw-r--r--dev-java/jnr-ffi/jnr-ffi-2.0.2.ebuild60
-rw-r--r--dev-java/jnr-ffi/jnr-ffi-2.2.12.ebuild47
-rw-r--r--dev-java/jnr-ffi/metadata.xml2
-rw-r--r--dev-java/jnr-netdb/Manifest2
-rw-r--r--dev-java/jnr-netdb/files/jnr-netdb_maven-build.xml231
-rw-r--r--dev-java/jnr-netdb/jnr-netdb-1.1.4-r1.ebuild55
-rw-r--r--dev-java/jnr-netdb/jnr-netdb-1.2.0.ebuild43
-rw-r--r--dev-java/jnr-netdb/metadata.xml2
-rw-r--r--dev-java/jnr-posix/Manifest2
-rw-r--r--dev-java/jnr-posix/files/jnr-posix_maven-build.xml256
-rw-r--r--dev-java/jnr-posix/jnr-posix-3.0.10.ebuild53
-rw-r--r--dev-java/jnr-posix/jnr-posix-3.1.16.ebuild95
-rw-r--r--dev-java/jnr-posix/metadata.xml2
-rw-r--r--dev-java/jnr-unixsocket/Manifest1
-rw-r--r--dev-java/jnr-unixsocket/files/jnr-unixsocket-0.6-build.xml321
-rw-r--r--dev-java/jnr-unixsocket/jnr-unixsocket-0.6-r1.ebuild42
-rw-r--r--dev-java/jnr-unixsocket/metadata.xml11
-rw-r--r--dev-java/jnr-x86asm/Manifest2
-rw-r--r--dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r1.ebuild25
-rw-r--r--dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r2.ebuild25
-rw-r--r--dev-java/jnr-x86asm/metadata.xml2
-rw-r--r--dev-java/joda-convert/Manifest2
-rw-r--r--dev-java/joda-convert/files/joda-convert-1.3.1-build.xml248
-rw-r--r--dev-java/joda-convert/joda-convert-1.3.1-r1.ebuild43
-rw-r--r--dev-java/joda-convert/joda-convert-2.2.2-r2.ebuild65
-rw-r--r--dev-java/joda-convert/metadata.xml5
-rw-r--r--dev-java/joda-time/Manifest2
-rw-r--r--dev-java/joda-time/files/joda-time-2.11.0-test.patch14
-rw-r--r--dev-java/joda-time/joda-time-2.10.10-r1.ebuild75
-rw-r--r--dev-java/joda-time/joda-time-2.11.2.ebuild95
-rw-r--r--dev-java/joda-time/metadata.xml2
-rw-r--r--dev-java/jol-core/Manifest1
-rw-r--r--dev-java/jol-core/jol-core-0.16-r1.ebuild40
-rw-r--r--dev-java/jol-core/metadata.xml11
-rw-r--r--dev-java/joni/Manifest2
-rw-r--r--dev-java/joni/joni-2.1.0-r1.ebuild37
-rw-r--r--dev-java/joni/joni-2.1.41.ebuild46
-rw-r--r--dev-java/joni/metadata.xml12
-rw-r--r--dev-java/jopt-simple/Manifest3
-rw-r--r--dev-java/jopt-simple/jopt-simple-4.6.ebuild32
-rw-r--r--dev-java/jopt-simple/jopt-simple-5.0.4.ebuild30
-rw-r--r--dev-java/jopt-simple/jopt-simple-5.0.ebuild33
-rw-r--r--dev-java/jopt-simple/metadata.xml4
-rw-r--r--dev-java/jrexx/Manifest1
-rw-r--r--dev-java/jrexx/jrexx-1.1.1-r2.ebuild24
-rw-r--r--dev-java/jrexx/metadata.xml11
-rw-r--r--dev-java/jrobin/jrobin-1.6.0-r1.ebuild65
-rw-r--r--dev-java/jrobin/jrobin-1.6.0-r2.ebuild74
-rw-r--r--dev-java/jrobin/metadata.xml2
-rw-r--r--dev-java/jrrd/Manifest1
-rw-r--r--dev-java/jrrd/files/jrrd-1.0.1-javacflags.patch11
-rw-r--r--dev-java/jrrd/jrrd-1.0.1-r2.ebuild45
-rw-r--r--dev-java/jrrd/metadata.xml11
-rw-r--r--dev-java/jsch-agent-proxy/Manifest1
-rw-r--r--dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild109
-rw-r--r--dev-java/jsch-agent-proxy/metadata.xml7
-rw-r--r--dev-java/jsch/Manifest2
-rw-r--r--dev-java/jsch/jsch-0.1.54.ebuild53
-rw-r--r--dev-java/jsch/jsch-0.1.55.ebuild38
-rw-r--r--dev-java/jsch/metadata.xml2
-rw-r--r--dev-java/json-simple/Manifest2
-rw-r--r--dev-java/json-simple/json-simple-1.1-r2.ebuild30
-rw-r--r--dev-java/json-simple/json-simple-2.3.1.ebuild26
-rw-r--r--dev-java/json-simple/metadata.xml4
-rw-r--r--dev-java/json-smart/Manifest2
-rw-r--r--dev-java/json-smart/json-smart-1.3.3.ebuild26
-rw-r--r--dev-java/json-smart/json-smart-2.5.0.ebuild71
-rw-r--r--dev-java/json-smart/metadata.xml20
-rw-r--r--dev-java/json/Manifest6
-rw-r--r--dev-java/json/json-20150729.ebuild33
-rw-r--r--dev-java/json/json-20160212.ebuild33
-rw-r--r--dev-java/json/json-20231013-r1.ebuild65
-rw-r--r--dev-java/json/json-20240205-r1.ebuild62
-rw-r--r--dev-java/json/metadata.xml13
-rw-r--r--dev-java/jsonrpc2-base/Manifest1
-rw-r--r--dev-java/jsonrpc2-base/jsonrpc2-base-1.38.2.ebuild35
-rw-r--r--dev-java/jsonrpc2-base/metadata.xml19
-rw-r--r--dev-java/jsonrpc2-server/Manifest1
-rw-r--r--dev-java/jsonrpc2-server/jsonrpc2-server-1.11.1.ebuild50
-rw-r--r--dev-java/jsonrpc2-server/metadata.xml19
-rw-r--r--dev-java/jsoup/Manifest1
-rw-r--r--dev-java/jsoup/jsoup-1.8.3.ebuild48
-rw-r--r--dev-java/jsoup/metadata.xml20
-rw-r--r--dev-java/jspeex/Manifest1
-rw-r--r--dev-java/jspeex/files/jspeex-0.9.7-remove-junit-report.patch16
-rw-r--r--dev-java/jspeex/files/jspeex-0.9.7-remove-proguard-taskdef.patch53
-rw-r--r--dev-java/jspeex/jspeex-0.9.7-r2.ebuild63
-rw-r--r--dev-java/jspeex/metadata.xml11
-rw-r--r--dev-java/jsr101/Manifest1
-rw-r--r--dev-java/jsr101/jsr101-1.4-r3.ebuild36
-rw-r--r--dev-java/jsr101/metadata.xml8
-rw-r--r--dev-java/jsr173/Manifest1
-rw-r--r--dev-java/jsr173/jsr173-1.0-r4.ebuild44
-rw-r--r--dev-java/jsr173/metadata.xml8
-rw-r--r--dev-java/jsr181/Manifest1
-rw-r--r--dev-java/jsr181/jsr181-1.0-r2.ebuild24
-rw-r--r--dev-java/jsr181/metadata.xml8
-rw-r--r--dev-java/jsr223/Manifest1
-rw-r--r--dev-java/jsr223/jsr223-1.0-r2.ebuild19
-rw-r--r--dev-java/jsr223/metadata.xml7
-rw-r--r--dev-java/jsr225/Manifest1
-rw-r--r--dev-java/jsr225/jsr225-1.0.ebuild24
-rw-r--r--dev-java/jsr225/metadata.xml10
-rw-r--r--dev-java/jsr250/Manifest1
-rw-r--r--dev-java/jsr250/jsr250-1.2.ebuild19
-rw-r--r--dev-java/jsr250/metadata.xml8
-rw-r--r--dev-java/jsr305/Manifest3
-rw-r--r--dev-java/jsr305/jsr305-3.0.1.ebuild19
-rw-r--r--dev-java/jsr305/jsr305-3.0.2-r1.ebuild20
-rw-r--r--dev-java/jsr305/jsr305-3.0.2.ebuild18
-rw-r--r--dev-java/jsr305/metadata.xml2
-rw-r--r--dev-java/jsr311-api/Manifest1
-rw-r--r--dev-java/jsr311-api/jsr311-api-1.1.1.ebuild19
-rw-r--r--dev-java/jsr311-api/metadata.xml11
-rw-r--r--dev-java/jsr322/Manifest1
-rw-r--r--dev-java/jsr322/jsr322-1.5.ebuild22
-rw-r--r--dev-java/jsr322/metadata.xml8
-rw-r--r--dev-java/jsr67/Manifest1
-rw-r--r--dev-java/jsr67/jsr67-1.3-r1.ebuild24
-rw-r--r--dev-java/jsr67/metadata.xml8
-rw-r--r--dev-java/jss/Manifest1
-rw-r--r--dev-java/jss/files/jss-3.4-target_source.patch12
-rw-r--r--dev-java/jss/files/jss-4.2.5-use_pkg-config.patch25
-rw-r--r--dev-java/jss/files/jss-4.3-cflags.patch11
-rw-r--r--dev-java/jss/files/jss-4.3-javadoc.patch11
-rw-r--r--dev-java/jss/files/jss-4.3-secitem.patch154
-rw-r--r--dev-java/jss/files/jss-4.3.2-ldflags.patch11
-rw-r--r--dev-java/jss/jss-4.3.2.ebuild93
-rw-r--r--dev-java/jss/metadata.xml16
-rw-r--r--dev-java/jssc/Manifest1
-rw-r--r--dev-java/jssc/files/jssc-2.8.0-library-load.patch117
-rw-r--r--dev-java/jssc/jssc-2.8.0-r1.ebuild60
-rw-r--r--dev-java/jssc/metadata.xml14
-rw-r--r--dev-java/jstl-api/Manifest1
-rw-r--r--dev-java/jstl-api/jstl-api-1.2.7.ebuild42
-rw-r--r--dev-java/jstl-api/metadata.xml10
-rw-r--r--dev-java/jstl/Manifest1
-rw-r--r--dev-java/jstl/jstl-1.2.7.ebuild58
-rw-r--r--dev-java/jstl/metadata.xml10
-rw-r--r--dev-java/jta/Manifest1
-rw-r--r--dev-java/jta/jta-1.1-r1.ebuild49
-rw-r--r--dev-java/jta/metadata.xml8
-rw-r--r--dev-java/jtds/jtds-1.3.1-r1.ebuild45
-rw-r--r--dev-java/jtds/jtds-1.3.1.ebuild43
-rw-r--r--dev-java/jtds/metadata.xml18
-rw-r--r--dev-java/jtidy/files/jtidy-1.0-build.xml.patch31
-rw-r--r--dev-java/jtidy/jtidy-1.0-r2.ebuild31
-rw-r--r--dev-java/jtidy/jtidy-1.0.ebuild52
-rw-r--r--dev-java/jtidy/metadata.xml2
-rw-r--r--dev-java/jtreemap/Manifest1
-rw-r--r--dev-java/jtreemap/jtreemap-1.1.0-r1.ebuild40
-rw-r--r--dev-java/jtreemap/metadata.xml10
-rw-r--r--dev-java/jts-core/Manifest1
-rw-r--r--dev-java/jts-core/jts-core-1.14.ebuild44
-rw-r--r--dev-java/jts-core/metadata.xml11
-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.xml10
-rw-r--r--dev-java/jtwig-reflection/Manifest1
-rw-r--r--dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild67
-rw-r--r--dev-java/jtwig-reflection/metadata.xml10
-rw-r--r--dev-java/juel/Manifest1
-rw-r--r--dev-java/juel/juel-2.1.0-r2.ebuild38
-rw-r--r--dev-java/juel/metadata.xml11
-rw-r--r--dev-java/jul-to-slf4j/Manifest1
-rw-r--r--dev-java/jul-to-slf4j/jul-to-slf4j-2.0.3.ebuild55
-rw-r--r--dev-java/jul-to-slf4j/metadata.xml13
-rw-r--r--dev-java/jump/Manifest1
-rw-r--r--dev-java/jump/jump-0.5-r1.ebuild36
-rw-r--r--dev-java/jump/metadata.xml11
-rw-r--r--dev-java/jung/Manifest1
-rw-r--r--dev-java/jung/jung-1.7.6-r1.ebuild40
-rw-r--r--dev-java/jung/metadata.xml16
-rw-r--r--dev-java/junit-clptr/Manifest1
-rw-r--r--dev-java/junit-clptr/junit-clptr-1.2.2.ebuild45
-rw-r--r--dev-java/junit-clptr/metadata.xml12
-rw-r--r--dev-java/junit-dataprovider/Manifest1
-rw-r--r--dev-java/junit-dataprovider/junit-dataprovider-2.9.ebuild94
-rw-r--r--dev-java/junit-dataprovider/metadata.xml10
-rw-r--r--dev-java/junit/Manifest5
-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.ebuild26
-rw-r--r--dev-java/junit/junit-4.13.2.ebuild68
-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.ebuild337
-rw-r--r--dev-java/junit/metadata.xml8
-rw-r--r--dev-java/junitparams/junitparams-1.1.1-r1.ebuild64
-rw-r--r--dev-java/junitparams/junitparams-1.1.1.ebuild67
-rw-r--r--dev-java/junitparams/metadata.xml4
-rw-r--r--dev-java/junitperf/Manifest1
-rw-r--r--dev-java/junitperf/junitperf-1.9.1-r2.ebuild50
-rw-r--r--dev-java/junitperf/metadata.xml8
-rw-r--r--dev-java/jupidator/Manifest1
-rw-r--r--dev-java/jupidator/jupidator-0.6.0-r1.ebuild34
-rw-r--r--dev-java/jupidator/metadata.xml11
-rw-r--r--dev-java/jutils/Manifest1
-rw-r--r--dev-java/jutils/jutils-1.0.0-r1.ebuild20
-rw-r--r--dev-java/jutils/metadata.xml9
-rw-r--r--dev-java/jvyaml/Manifest1
-rw-r--r--dev-java/jvyaml/jvyaml-0.2.1-r2.ebuild31
-rw-r--r--dev-java/jvyaml/metadata.xml8
-rw-r--r--dev-java/jvyamlb/Manifest1
-rw-r--r--dev-java/jvyamlb/jvyamlb-0.2.5-r2.ebuild52
-rw-r--r--dev-java/jvyamlb/metadata.xml11
-rw-r--r--dev-java/jython/Manifest1
-rw-r--r--dev-java/jython/files/CVE-2016-4000.patch158
-rw-r--r--dev-java/jython/files/jython-2.5.2-distutils_scripts_location.patch11
-rw-r--r--dev-java/jython/files/jython-2.5.2-respect_PYTHONPATH.patch15
-rw-r--r--dev-java/jython/files/jython-2.7.0-build.xml.patch11
-rw-r--r--dev-java/jython/files/jython-2.7_beta1-ant.patch28
-rw-r--r--dev-java/jython/files/jython-2.7_beta1-dont-always-recompile-classes.patch11
-rw-r--r--dev-java/jython/files/jython-2.7_beta2-maxrepeat-import.patch16
-rw-r--r--dev-java/jython/jython-2.7.0-r2.ebuild151
-rw-r--r--dev-java/jython/metadata.xml11
-rw-r--r--dev-java/jzlib/jzlib-1.1.3-r2.ebuild5
-rw-r--r--dev-java/jzlib/metadata.xml2
-rw-r--r--dev-java/kafka-clients/Manifest1
-rw-r--r--dev-java/kafka-clients/kafka-clients-1.1.1.ebuild37
-rw-r--r--dev-java/kafka-clients/metadata.xml8
-rw-r--r--dev-java/kunststoff/Manifest1
-rw-r--r--dev-java/kunststoff/kunststoff-2.0.2-r2.ebuild19
-rw-r--r--dev-java/kunststoff/metadata.xml17
-rw-r--r--dev-java/kxml/Manifest1
-rw-r--r--dev-java/kxml/files/kxml-2.3.0-build.xml62
-rw-r--r--dev-java/kxml/kxml-2.3.0.ebuild47
-rw-r--r--dev-java/kxml/metadata.xml11
-rw-r--r--dev-java/laf-plugin/Manifest2
-rw-r--r--dev-java/laf-plugin/files/laf-plugin-0.2-enum.patch42
-rw-r--r--dev-java/laf-plugin/laf-plugin-0.2-r2.ebuild31
-rw-r--r--dev-java/laf-plugin/laf-plugin-1.1-r1.ebuild36
-rw-r--r--dev-java/laf-plugin/metadata.xml8
-rw-r--r--dev-java/leiningen-bin/Manifest10
-rw-r--r--dev-java/leiningen-bin/leiningen-bin-2.11.2.ebuild62
-rw-r--r--dev-java/leiningen-bin/leiningen-bin-2.8.0.ebuild62
-rw-r--r--dev-java/leiningen-bin/leiningen-bin-2.8.1.ebuild62
-rw-r--r--dev-java/leiningen-bin/leiningen-bin-2.8.3.ebuild62
-rw-r--r--dev-java/leiningen-bin/leiningen-bin-2.9.1.ebuild62
-rw-r--r--dev-java/leiningen-bin/metadata.xml2
-rw-r--r--dev-java/libg/Manifest2
-rw-r--r--dev-java/libg/libg-2.1.0-r2.ebuild48
-rw-r--r--dev-java/libg/libg-7.0.0.ebuild51
-rw-r--r--dev-java/libg/metadata.xml15
-rw-r--r--dev-java/libreadline-java/Manifest1
-rw-r--r--dev-java/libreadline-java/files/libreadline-java-0.8.0-gmake.patch19
-rw-r--r--dev-java/libreadline-java/files/libreadline-java-0.8.0-respect-flags.patch27
-rw-r--r--dev-java/libreadline-java/files/termcap-to-ncurses.patch13
-rw-r--r--dev-java/libreadline-java/libreadline-java-0.8.0-r5.ebuild66
-rw-r--r--dev-java/libreadline-java/metadata.xml11
-rw-r--r--dev-java/lmax-disruptor/Manifest1
-rw-r--r--dev-java/lmax-disruptor/lmax-disruptor-3.4.4.ebuild41
-rw-r--r--dev-java/lmax-disruptor/metadata.xml11
-rw-r--r--dev-java/log4j-12-api/Manifest1
-rw-r--r--dev-java/log4j-12-api/log4j-12-api-2.19.0.ebuild88
-rw-r--r--dev-java/log4j-12-api/metadata.xml7
-rw-r--r--dev-java/log4j-api/Manifest2
-rw-r--r--dev-java/log4j-api/log4j-api-2.19.0.ebuild76
-rw-r--r--dev-java/log4j-api/metadata.xml7
-rw-r--r--dev-java/log4j-core/Manifest1
-rw-r--r--dev-java/log4j-core/log4j-core-2.19.0.ebuild179
-rw-r--r--dev-java/log4j-core/metadata.xml7
-rw-r--r--dev-java/log4j-over-slf4j/Manifest1
-rw-r--r--dev-java/log4j-over-slf4j/log4j-over-slf4j-2.0.3.ebuild60
-rw-r--r--dev-java/log4j-over-slf4j/metadata.xml13
-rw-r--r--dev-java/log4j/Manifest1
-rw-r--r--dev-java/log4j/log4j-1.2.17-r3.ebuild70
-rw-r--r--dev-java/log4j/metadata.xml12
-rw-r--r--dev-java/lucene/Manifest1
-rw-r--r--dev-java/lucene/lucene-2.4.1-r2.ebuild79
-rw-r--r--dev-java/lucene/lucene-2.4.1-r3.ebuild83
-rw-r--r--dev-java/lucene/lucene-3.6.2-r2.ebuild189
-rw-r--r--dev-java/lucene/metadata.xml5
-rw-r--r--dev-java/lz4-java/Manifest1
-rw-r--r--dev-java/lz4-java/files/lz4-java-1.8.0-fix-load.patch32
-rw-r--r--dev-java/lz4-java/lz4-java-1.8.0-r4.ebuild93
-rw-r--r--dev-java/lz4-java/metadata.xml11
-rw-r--r--dev-java/lzma/Manifest2
-rw-r--r--dev-java/lzma/lzma-22.01.ebuild23
-rw-r--r--dev-java/lzma/lzma-9.18.ebuild23
-rw-r--r--dev-java/lzma/metadata.xml6
-rw-r--r--dev-java/lzmajio/lzmajio-0.95-r1.ebuild29
-rw-r--r--dev-java/lzmajio/lzmajio-0.95-r2.ebuild32
-rw-r--r--dev-java/lzmajio/lzmajio-0.95-r3.ebuild32
-rw-r--r--dev-java/lzmajio/metadata.xml11
-rw-r--r--dev-java/maven-bin/Manifest3
-rw-r--r--dev-java/maven-bin/maven-bin-3.8.1.ebuild67
-rw-r--r--dev-java/maven-bin/maven-bin-3.8.8-r1.ebuild64
-rw-r--r--dev-java/maven-bin/maven-bin-3.9.6.ebuild64
-rw-r--r--dev-java/maven-bin/metadata.xml2
-rw-r--r--dev-java/maven-hawtjni-plugin/Manifest1
-rw-r--r--dev-java/maven-hawtjni-plugin/maven-hawtjni-plugin-1.15.ebuild29
-rw-r--r--dev-java/maven-hawtjni-plugin/metadata.xml11
-rw-r--r--dev-java/mchange-commons/Manifest2
-rw-r--r--dev-java/mchange-commons/mchange-commons-0.2.10.ebuild43
-rw-r--r--dev-java/mchange-commons/mchange-commons-0.2.20.ebuild44
-rw-r--r--dev-java/mchange-commons/metadata.xml2
-rw-r--r--dev-java/memoryfilesystem/Manifest1
-rw-r--r--dev-java/memoryfilesystem/memoryfilesystem-2.3.0.ebuild53
-rw-r--r--dev-java/memoryfilesystem/metadata.xml10
-rw-r--r--dev-java/mersennetwister/mersennetwister-0_pre23765-r1.ebuild22
-rw-r--r--dev-java/mersennetwister/mersennetwister-0_pre23765-r2.ebuild22
-rw-r--r--dev-java/mersennetwister/metadata.xml8
-rw-r--r--dev-java/metadata-extractor/Manifest1
-rw-r--r--dev-java/metadata-extractor/metadata-extractor-2.8.1.ebuild52
-rw-r--r--dev-java/metadata-extractor/metadata.xml20
-rw-r--r--dev-java/metadata.xml2
-rw-r--r--dev-java/metainf-services/Manifest2
-rw-r--r--dev-java/metainf-services/files/metainf-services-1.7-build.xml192
-rw-r--r--dev-java/metainf-services/metadata.xml2
-rw-r--r--dev-java/metainf-services/metainf-services-1.7.ebuild27
-rw-r--r--dev-java/metainf-services/metainf-services-1.9.ebuild22
-rw-r--r--dev-java/microba/Manifest1
-rw-r--r--dev-java/microba/metadata.xml12
-rw-r--r--dev-java/microba/microba-0.4.4.3-r1.ebuild42
-rw-r--r--dev-java/miglayout/Manifest2
-rw-r--r--dev-java/miglayout/metadata.xml8
-rw-r--r--dev-java/miglayout/miglayout-4.0-r1.ebuild64
-rw-r--r--dev-java/miglayout/miglayout-4.0-r2.ebuild64
-rw-r--r--dev-java/miglayout/miglayout-5.3.ebuild78
-rw-r--r--dev-java/mill-bin/Manifest3
-rw-r--r--dev-java/mill-bin/metadata.xml13
-rw-r--r--dev-java/mill-bin/mill-bin-0.11.5.ebuild26
-rw-r--r--dev-java/mill-bin/mill-bin-0.11.6.ebuild26
-rw-r--r--dev-java/mill-bin/mill-bin-0.11.7.ebuild26
-rw-r--r--dev-java/milton-api/Manifest1
-rw-r--r--dev-java/milton-api/metadata.xml8
-rw-r--r--dev-java/milton-api/milton-api-2.7.1.3.ebuild34
-rw-r--r--dev-java/milton-mail-api/Manifest1
-rw-r--r--dev-java/milton-mail-api/metadata.xml8
-rw-r--r--dev-java/milton-mail-api/milton-mail-api-2.7.1.3.ebuild38
-rw-r--r--dev-java/mimepull/Manifest1
-rw-r--r--dev-java/mimepull/metadata.xml14
-rw-r--r--dev-java/mimepull/mimepull-1.9.6-r2.ebuild22
-rw-r--r--dev-java/mina-core/Manifest2
-rw-r--r--dev-java/mina-core/metadata.xml8
-rw-r--r--dev-java/mina-core/mina-core-1.1.7-r1.ebuild29
-rw-r--r--dev-java/mina-core/mina-core-2.0.7-r1.ebuild39
-rw-r--r--dev-java/minidns-core/Manifest1
-rw-r--r--dev-java/minidns-core/metadata.xml19
-rw-r--r--dev-java/minidns-core/minidns-core-1.0.4.ebuild27
-rw-r--r--dev-java/mockito/Manifest4
-rw-r--r--dev-java/mockito/files/mockito-2.28.2-skip-failing-tests.patch82
-rw-r--r--dev-java/mockito/metadata.xml3
-rw-r--r--dev-java/mockito/mockito-1.9.5-r1.ebuild42
-rw-r--r--dev-java/mockito/mockito-1.9.5-r2.ebuild43
-rw-r--r--dev-java/mockito/mockito-1.9.5-r4.ebuild31
-rw-r--r--dev-java/mockito/mockito-2.28.2.ebuild103
-rw-r--r--dev-java/mockito/mockito-4.11.0.ebuild52
-rw-r--r--dev-java/mojarra/Manifest1
-rw-r--r--dev-java/mojarra/files/mojarra-2.2.12-Util.java.patch25
-rw-r--r--dev-java/mojarra/metadata.xml8
-rw-r--r--dev-java/mojarra/mojarra-2.2.12-r1.ebuild54
-rw-r--r--dev-java/moshi/Manifest1
-rw-r--r--dev-java/moshi/metadata.xml11
-rw-r--r--dev-java/moshi/moshi-1.1.0.ebuild36
-rw-r--r--dev-java/msv/Manifest1
-rw-r--r--dev-java/msv/metadata.xml15
-rw-r--r--dev-java/msv/msv-2022.7.ebuild70
-rw-r--r--dev-java/mvel/Manifest1
-rw-r--r--dev-java/mvel/metadata.xml11
-rw-r--r--dev-java/mvel/mvel-2.5.0.ebuild66
-rw-r--r--dev-java/myfaces-api/Manifest1
-rw-r--r--dev-java/myfaces-api/metadata.xml8
-rw-r--r--dev-java/myfaces-api/myfaces-api-2.2.14.ebuild42
-rw-r--r--dev-java/myfaces-builder-annotations/Manifest1
-rw-r--r--dev-java/myfaces-builder-annotations/metadata.xml8
-rw-r--r--dev-java/myfaces-builder-annotations/myfaces-builder-annotations-1.0.9.ebuild21
-rw-r--r--dev-java/nachocalendar/Manifest1
-rw-r--r--dev-java/nachocalendar/metadata.xml10
-rw-r--r--dev-java/nachocalendar/nachocalendar-0.23-r1.ebuild39
-rw-r--r--dev-java/nanoxml/Manifest1
-rw-r--r--dev-java/nanoxml/files/nanoxml-2.2.3-enum.patch208
-rw-r--r--dev-java/nanoxml/files/nanoxml-2.2.3-lite-enum.patch53
-rw-r--r--dev-java/nanoxml/metadata.xml11
-rw-r--r--dev-java/nanoxml/nanoxml-2.2.3-r4.ebuild45
-rw-r--r--dev-java/netty-buffer/Manifest2
-rw-r--r--dev-java/netty-buffer/files/netty-buffer-4.0.21-build.xml229
-rw-r--r--dev-java/netty-buffer/metadata.xml11
-rw-r--r--dev-java/netty-buffer/netty-buffer-4.0.21.ebuild56
-rw-r--r--dev-java/netty-buffer/netty-buffer-4.0.36.ebuild49
-rw-r--r--dev-java/netty-common/Manifest2
-rw-r--r--dev-java/netty-common/metadata.xml11
-rw-r--r--dev-java/netty-common/netty-common-4.0.21.ebuild45
-rw-r--r--dev-java/netty-common/netty-common-4.0.36.ebuild62
-rw-r--r--dev-java/netty-tcnative/Manifest2
-rw-r--r--dev-java/netty-tcnative/metadata.xml11
-rw-r--r--dev-java/netty-tcnative/netty-tcnative-1.1.33.15.ebuild68
-rw-r--r--dev-java/netty-tcnative/netty-tcnative-2.0.31.ebuild71
-rw-r--r--dev-java/netty-transport/Manifest2
-rw-r--r--dev-java/netty-transport/files/netty-transport-4.0.21-build.xml229
-rw-r--r--dev-java/netty-transport/metadata.xml11
-rw-r--r--dev-java/netty-transport/netty-transport-4.0.21-r1.ebuild48
-rw-r--r--dev-java/netty-transport/netty-transport-4.0.36.ebuild61
-rw-r--r--dev-java/neuroph/Manifest1
-rw-r--r--dev-java/neuroph/metadata.xml11
-rw-r--r--dev-java/neuroph/neuroph-2.4.ebuild39
-rw-r--r--dev-java/objenesis-test/Manifest1
-rw-r--r--dev-java/objenesis-test/metadata.xml12
-rw-r--r--dev-java/objenesis-test/objenesis-test-3.2.ebuild32
-rw-r--r--dev-java/objenesis/Manifest2
-rw-r--r--dev-java/objenesis/metadata.xml2
-rw-r--r--dev-java/objenesis/objenesis-3.2.ebuild44
-rw-r--r--dev-java/objenesis/objenesis-3.3.ebuild45
-rw-r--r--dev-java/offo-hyphenation/Manifest1
-rw-r--r--dev-java/offo-hyphenation/metadata.xml11
-rw-r--r--dev-java/offo-hyphenation/offo-hyphenation-2.0.ebuild37
-rw-r--r--dev-java/ognl/Manifest2
-rw-r--r--dev-java/ognl/metadata.xml11
-rw-r--r--dev-java/ognl/ognl-3.0.8.ebuild52
-rw-r--r--dev-java/okio/Manifest1
-rw-r--r--dev-java/okio/files/okio-remove-maven-animal-jre.patch44
-rw-r--r--dev-java/okio/metadata.xml11
-rw-r--r--dev-java/okio/okio-1.11.0.ebuild36
-rw-r--r--dev-java/open-test-reporting-events/Manifest1
-rw-r--r--dev-java/open-test-reporting-events/metadata.xml10
-rw-r--r--dev-java/open-test-reporting-events/open-test-reporting-events-0.1.0_pre1.ebuild28
-rw-r--r--dev-java/open-test-reporting-schema/Manifest1
-rw-r--r--dev-java/open-test-reporting-schema/metadata.xml10
-rw-r--r--dev-java/open-test-reporting-schema/open-test-reporting-schema-0.1.0_pre1.ebuild26
-rw-r--r--dev-java/opencsv/Manifest1
-rw-r--r--dev-java/opencsv/metadata.xml11
-rw-r--r--dev-java/opencsv/opencsv-2.3.ebuild36
-rw-r--r--dev-java/openjdk-bin/Manifest52
-rw-r--r--dev-java/openjdk-bin/files/openjdk-bin-11.env.sh16
-rw-r--r--dev-java/openjdk-bin/files/openjdk-bin-8.env.sh5
-rw-r--r--dev-java/openjdk-bin/files/openjdk-bin.env.sh13
-rw-r--r--dev-java/openjdk-bin/metadata.xml7
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-11.0.11_p9-r1.ebuild136
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild135
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild135
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-17.0.10_p7.ebuild136
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild136
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild133
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-8.292_p10.ebuild120
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-8.402_p06.ebuild131
-rw-r--r--dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild131
-rw-r--r--dev-java/openjdk-jre-bin/Manifest9
-rw-r--r--dev-java/openjdk-jre-bin/files/openjdk-jre-bin-11.env.sh16
-rw-r--r--dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh5
-rw-r--r--dev-java/openjdk-jre-bin/files/openjdk-jre-bin.env.sh11
-rw-r--r--dev-java/openjdk-jre-bin/metadata.xml7
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.11_p9.ebuild97
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild83
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-8.292_p10.ebuild80
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-8.382_p05.ebuild82
-rw-r--r--dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild82
-rw-r--r--dev-java/openjdk/Manifest36
-rw-r--r--dev-java/openjdk/files/openjdk-11.env.sh16
-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/files/openjdk-8.env.sh5
-rw-r--r--dev-java/openjdk/files/openjdk.env.sh13
-rw-r--r--dev-java/openjdk/metadata.xml15
-rw-r--r--dev-java/openjdk/openjdk-11.0.11_p9-r1.ebuild275
-rw-r--r--dev-java/openjdk/openjdk-11.0.22_p7.ebuild312
-rw-r--r--dev-java/openjdk/openjdk-11.0.23_p9.ebuild311
-rw-r--r--dev-java/openjdk/openjdk-17.0.10_p7.ebuild321
-rw-r--r--dev-java/openjdk/openjdk-17.0.11_p9.ebuild320
-rw-r--r--dev-java/openjdk/openjdk-21.0.3_p9.ebuild319
-rw-r--r--dev-java/openjdk/openjdk-8.292_p10.ebuild253
-rw-r--r--dev-java/openjdk/openjdk-8.402_p06-r2.ebuild284
-rw-r--r--dev-java/openjdk/openjdk-8.412_p08.ebuild283
-rw-r--r--dev-java/openjfx/Manifest2
-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/don-t-force-msse-11.0.11.patch92
-rw-r--r--dev-java/openjfx/files/11/ffmpeg5.patch17
-rw-r--r--dev-java/openjfx/files/11/gstreamer-CVE-2021-3522.patch31
-rw-r--r--dev-java/openjfx/files/11/respect-cc.patch15
-rw-r--r--dev-java/openjfx/files/11/respect-user-cflags-11.0.11.patch227
-rw-r--r--dev-java/openjfx/files/11/strip-blank-elements-flags.patch29
-rw-r--r--dev-java/openjfx/files/11/wno-error-11.0.11.patch43
-rw-r--r--dev-java/openjfx/metadata.xml6
-rw-r--r--dev-java/openjfx/openjfx-11.0.11_p1-r3.ebuild231
-rw-r--r--dev-java/openjfx/openjfx-11.0.9_p0.ebuild226
-rw-r--r--dev-java/openjfx/openjfx-8.1000-r2.ebuild195
-rw-r--r--dev-java/openjfx/openjfx-8.1000.ebuild199
-rw-r--r--dev-java/opentest4j/Manifest1
-rw-r--r--dev-java/opentest4j/metadata.xml10
-rw-r--r--dev-java/opentest4j/opentest4j-1.2.0-r1.ebuild34
-rw-r--r--dev-java/oracle-javamail/Manifest1
-rw-r--r--dev-java/oracle-javamail/metadata.xml8
-rw-r--r--dev-java/oracle-javamail/oracle-javamail-1.5.6-r1.ebuild49
-rw-r--r--dev-java/osgi-annotation/Manifest1
-rw-r--r--dev-java/osgi-annotation/metadata.xml7
-rw-r--r--dev-java/osgi-annotation/osgi-annotation-8.1.0.ebuild28
-rw-r--r--dev-java/osgi-cmpn/Manifest1
-rw-r--r--dev-java/osgi-cmpn/metadata.xml8
-rw-r--r--dev-java/osgi-cmpn/osgi-cmpn-8.0.0-r1.ebuild45
-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-r2.ebuild43
-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-r1.ebuild30
-rw-r--r--dev-java/osgi-core/Manifest1
-rw-r--r--dev-java/osgi-core/metadata.xml7
-rw-r--r--dev-java/osgi-core/osgi-core-8.0.0.ebuild33
-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-r1.ebuild38
-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-obr/Manifest1
-rw-r--r--dev-java/osgi-obr/files/osgi-obr-1.0.2-build.xml233
-rw-r--r--dev-java/osgi-obr/metadata.xml8
-rw-r--r--dev-java/osgi-obr/osgi-obr-1.0.2.ebuild41
-rw-r--r--dev-java/osgi-service-log/Manifest1
-rw-r--r--dev-java/osgi-service-log/metadata.xml7
-rw-r--r--dev-java/osgi-service-log/osgi-service-log-1.3.0.ebuild31
-rw-r--r--dev-java/osgi-service-subsystem/Manifest1
-rw-r--r--dev-java/osgi-service-subsystem/metadata.xml7
-rw-r--r--dev-java/osgi-service-subsystem/osgi-service-subsystem-1.1.0.ebuild32
-rw-r--r--dev-java/owasp-java-encoder/Manifest1
-rw-r--r--dev-java/owasp-java-encoder/files/owasp-java-encoder-1.2.3-BenchmarkTest.patch46
-rw-r--r--dev-java/owasp-java-encoder/metadata.xml10
-rw-r--r--dev-java/owasp-java-encoder/owasp-java-encoder-1.2.3.ebuild34
-rw-r--r--dev-java/parboiled/Manifest1
-rw-r--r--dev-java/parboiled/metadata.xml11
-rw-r--r--dev-java/parboiled/parboiled-1.4.1.ebuild68
-rw-r--r--dev-java/pat/Manifest1
-rw-r--r--dev-java/pat/metadata.xml8
-rw-r--r--dev-java/pat/pat-1.5.3-r1.ebuild26
-rw-r--r--dev-java/pdf-renderer/Manifest1
-rw-r--r--dev-java/pdf-renderer/metadata.xml8
-rw-r--r--dev-java/pdf-renderer/pdf-renderer-1.0.5-r1.ebuild22
-rw-r--r--dev-java/pdfbox/Manifest43
-rw-r--r--dev-java/pdfbox/metadata.xml6
-rw-r--r--dev-java/pdfbox/pdfbox-1.8.15.ebuild78
-rw-r--r--dev-java/pdfbox/pdfbox-2.0.27.ebuild259
-rw-r--r--dev-java/piccolo/Manifest1
-rw-r--r--dev-java/piccolo/metadata.xml11
-rw-r--r--dev-java/piccolo/piccolo-1.04.ebuild31
-rw-r--r--dev-java/piccolo2d/Manifest2
-rw-r--r--dev-java/piccolo2d/metadata.xml12
-rw-r--r--dev-java/piccolo2d/piccolo2d-3.0-r1.ebuild49
-rw-r--r--dev-java/piccolo2d/piccolo2d-3.0-r2.ebuild49
-rw-r--r--dev-java/picocli/Manifest1
-rw-r--r--dev-java/picocli/metadata.xml12
-rw-r--r--dev-java/picocli/picocli-4.6.3-r1.ebuild46
-rw-r--r--dev-java/plexus-classworlds/Manifest2
-rw-r--r--dev-java/plexus-classworlds/files/2.2.3-build.xml126
-rw-r--r--dev-java/plexus-classworlds/metadata.xml5
-rw-r--r--dev-java/plexus-classworlds/plexus-classworlds-2.2.3.ebuild41
-rw-r--r--dev-java/plexus-classworlds/plexus-classworlds-2.7.0-r1.ebuild47
-rw-r--r--dev-java/poi/Manifest2
-rw-r--r--dev-java/poi/metadata.xml2
-rw-r--r--dev-java/poi/poi-5.0.0.ebuild64
-rw-r--r--dev-java/poi/poi-5.2.3.ebuild61
-rw-r--r--dev-java/portletapi/Manifest2
-rw-r--r--dev-java/portletapi/metadata.xml8
-rw-r--r--dev-java/portletapi/portletapi-1.0-r1.ebuild23
-rw-r--r--dev-java/portletapi/portletapi-2.0-r1.ebuild36
-rw-r--r--dev-java/protobuf-java/Manifest13
-rw-r--r--dev-java/protobuf-java/files/protobuf-java-3.23.0-unittest_retention.proto.patch35
-rw-r--r--dev-java/protobuf-java/files/protobuf-java-3.26.0-unittest.protos.patch23
-rw-r--r--dev-java/protobuf-java/metadata.xml15
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.15.8.ebuild57
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.16.0.ebuild55
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.17.0.ebuild55
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.17.1.ebuild55
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.17.2.ebuild55
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.17.3.ebuild55
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.23.0.ebuild165
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.23.3.ebuild164
-rw-r--r--dev-java/protobuf-java/protobuf-java-3.25.1.ebuild166
-rw-r--r--dev-java/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/protobuf-java/protobuf-java-9999.ebuild55
-rw-r--r--dev-java/qdox/Manifest2
-rw-r--r--dev-java/qdox/metadata.xml4
-rw-r--r--dev-java/qdox/qdox-1.12.1-r2.ebuild87
-rw-r--r--dev-java/qdox/qdox-1.12.1-r4.ebuild86
-rw-r--r--dev-java/qdox/qdox-1.6.3-r2.ebuild32
-rw-r--r--dev-java/qdox/qdox-2.0.1.ebuild102
-rw-r--r--dev-java/randomized-runner/Manifest2
-rw-r--r--dev-java/randomized-runner/metadata.xml5
-rw-r--r--dev-java/randomized-runner/randomized-runner-2.7.8.ebuild53
-rw-r--r--dev-java/randomized-runner/randomized-runner-2.8.0.ebuild57
-rw-r--r--dev-java/rat/metadata.xml8
-rw-r--r--dev-java/rat/rat-0.13.ebuild29
-rw-r--r--dev-java/reflectasm/Manifest2
-rw-r--r--dev-java/reflectasm/metadata.xml11
-rw-r--r--dev-java/reflectasm/reflectasm-1.11.0.ebuild37
-rw-r--r--dev-java/reflectasm/reflectasm-1.11.1.ebuild37
-rw-r--r--dev-java/reflections/Manifest2
-rw-r--r--dev-java/reflections/metadata.xml2
-rw-r--r--dev-java/reflections/reflections-0.9.10-r1.ebuild31
-rw-r--r--dev-java/reflections/reflections-0.9.12-r6.ebuild94
-rw-r--r--dev-java/relaxng-datatype/Manifest2
-rw-r--r--dev-java/relaxng-datatype/metadata.xml2
-rw-r--r--dev-java/relaxng-datatype/relaxng-datatype-1.0-r2.ebuild39
-rw-r--r--dev-java/relaxng-datatype/relaxng-datatype-20020414.ebuild21
-rw-r--r--dev-java/reload4j/Manifest1
-rw-r--r--dev-java/reload4j/metadata.xml7
-rw-r--r--dev-java/reload4j/reload4j-1.2.22.ebuild113
-rw-r--r--dev-java/resin-servlet-api/Manifest4
-rw-r--r--dev-java/resin-servlet-api/metadata.xml8
-rw-r--r--dev-java/resin-servlet-api/resin-servlet-api-3.0.25-r1.ebuild40
-rw-r--r--dev-java/resin-servlet-api/resin-servlet-api-4.0.27.ebuild47
-rw-r--r--dev-java/resin-servlet-api/resin-servlet-api-4.0.46.ebuild47
-rw-r--r--dev-java/rhino/Manifest2
-rw-r--r--dev-java/rhino/files/rhino-1.7.7-testsrc-build.xml.patch40
-rw-r--r--dev-java/rhino/metadata.xml4
-rw-r--r--dev-java/rhino/rhino-1.7.14-r1.ebuild113
-rw-r--r--dev-java/rhino/rhino-1.7.7-r1.ebuild93
-rw-r--r--dev-java/rngom/Manifest1
-rw-r--r--dev-java/rngom/metadata.xml8
-rw-r--r--dev-java/rngom/rngom-20100718-r1.ebuild53
-rw-r--r--dev-java/rome/files/rome-0.9-build.xml-test-upstream.patch17
-rw-r--r--dev-java/rome/metadata.xml11
-rw-r--r--dev-java/rome/rome-0.9-r3.ebuild50
-rw-r--r--dev-java/rome/rome-0.9-r4.ebuild72
-rw-r--r--dev-java/rundoc/Manifest1
-rw-r--r--dev-java/rundoc/metadata.xml15
-rw-r--r--dev-java/rundoc/rundoc-0.11-r1.ebuild35
-rw-r--r--dev-java/rxtx/files/rxtx-2.1-7r2-ppcioh.diff16
-rw-r--r--dev-java/rxtx/files/rxtx-2.1-7r2-ttyPZ.diff20
-rw-r--r--dev-java/rxtx/files/rxtx-2.2_pre2-fix-for-java-10+.patch50
-rw-r--r--dev-java/rxtx/files/rxtx-2.2_pre2-fix-invalid-javadoc.patch229
-rw-r--r--dev-java/rxtx/files/rxtx-2.2_pre2-format-security.patch118
-rw-r--r--dev-java/rxtx/metadata.xml2
-rw-r--r--dev-java/rxtx/rxtx-2.2_pre2-r1.ebuild101
-rw-r--r--dev-java/rxtx/rxtx-2.2_pre2-r2.ebuild111
-rw-r--r--dev-java/sablecc-anttask/Manifest1
-rw-r--r--dev-java/sablecc-anttask/metadata.xml11
-rw-r--r--dev-java/sablecc-anttask/sablecc-anttask-1.1.0-r2.ebuild33
-rw-r--r--dev-java/sablecc/Manifest1
-rw-r--r--dev-java/sablecc/metadata.xml11
-rw-r--r--dev-java/sablecc/sablecc-3.7-r1.ebuild38
-rw-r--r--dev-java/sac/Manifest1
-rw-r--r--dev-java/sac/metadata.xml8
-rw-r--r--dev-java/sac/sac-1.3-r2.ebuild32
-rw-r--r--dev-java/sac/sac-1.3-r3.ebuild32
-rw-r--r--dev-java/saslprep/Manifest1
-rw-r--r--dev-java/saslprep/metadata.xml10
-rw-r--r--dev-java/saslprep/saslprep-1.1-r1.ebuild23
-rw-r--r--dev-java/sax/metadata.xml2
-rw-r--r--dev-java/sax/sax-2.2.1-r3.ebuild32
-rw-r--r--dev-java/sax/sax-2.2.1-r4.ebuild37
-rw-r--r--dev-java/sax/sax-2.2.1-r5.ebuild42
-rw-r--r--dev-java/saxon/metadata.xml2
-rw-r--r--dev-java/saxon/saxon-6.5.5-r2.ebuild49
-rw-r--r--dev-java/saxon/saxon-6.5.5-r3.ebuild48
-rw-r--r--dev-java/saxon/saxon-9.2.0.6-r2.ebuild91
-rw-r--r--dev-java/saxon/saxon-9.2.0.6-r4.ebuild90
-rw-r--r--dev-java/saxpath/Manifest1
-rw-r--r--dev-java/saxpath/metadata.xml11
-rw-r--r--dev-java/saxpath/saxpath-1.0-r3.ebuild19
-rw-r--r--dev-java/sbt-bin/Manifest3
-rw-r--r--dev-java/sbt-bin/metadata.xml5
-rw-r--r--dev-java/sbt-bin/sbt-bin-1.3.10.ebuild49
-rw-r--r--dev-java/sbt-bin/sbt-bin-1.3.2.ebuild49
-rw-r--r--dev-java/sbt-bin/sbt-bin-1.8.0.ebuild49
-rw-r--r--dev-java/sbt/Manifest5
-rw-r--r--dev-java/sbt/metadata.xml9
-rw-r--r--dev-java/sbt/sbt-0.13.13.ebuild162
-rw-r--r--dev-java/sbt/sbt-0.13.18-r1.ebuild147
-rw-r--r--dev-java/sbt/sbt-0.13.18.ebuild144
-rw-r--r--dev-java/scala-cli-bin/Manifest15
-rw-r--r--dev-java/scala-cli-bin/metadata.xml13
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.0.4.ebuild78
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.1.0.ebuild78
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.1.1.ebuild78
-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/Manifest1
-rw-r--r--dev-java/scram/metadata.xml10
-rw-r--r--dev-java/scram/scram-2.1.ebuild81
-rw-r--r--dev-java/shared-objects/Manifest1
-rw-r--r--dev-java/shared-objects/metadata.xml8
-rw-r--r--dev-java/shared-objects/shared-objects-1.4-r4.ebuild29
-rw-r--r--dev-java/shrinkwrap-api/Manifest1
-rw-r--r--dev-java/shrinkwrap-api/metadata.xml10
-rw-r--r--dev-java/shrinkwrap-api/shrinkwrap-api-1.2.6.ebuild33
-rw-r--r--dev-java/shrinkwrap-impl-base/Manifest1
-rw-r--r--dev-java/shrinkwrap-impl-base/metadata.xml10
-rw-r--r--dev-java/shrinkwrap-impl-base/shrinkwrap-impl-base-1.2.6.ebuild68
-rw-r--r--dev-java/shrinkwrap-spi/Manifest1
-rw-r--r--dev-java/shrinkwrap-spi/metadata.xml10
-rw-r--r--dev-java/shrinkwrap-spi/shrinkwrap-spi-1.2.6.ebuild32
-rw-r--r--dev-java/simplyhtml/Manifest1
-rw-r--r--dev-java/simplyhtml/metadata.xml11
-rw-r--r--dev-java/simplyhtml/simplyhtml-0.13.1-r1.ebuild61
-rw-r--r--dev-java/sjsxp/Manifest2
-rw-r--r--dev-java/sjsxp/metadata.xml3
-rw-r--r--dev-java/sjsxp/sjsxp-1.0.1-r3.ebuild38
-rw-r--r--dev-java/sjsxp/sjsxp-1.0.2.ebuild38
-rw-r--r--dev-java/slf4j-api/Manifest2
-rw-r--r--dev-java/slf4j-api/metadata.xml6
-rw-r--r--dev-java/slf4j-api/slf4j-api-1.7.30-r1.ebuild55
-rw-r--r--dev-java/slf4j-api/slf4j-api-2.0.3.ebuild40
-rw-r--r--dev-java/slf4j-ext/Manifest1
-rw-r--r--dev-java/slf4j-ext/metadata.xml12
-rw-r--r--dev-java/slf4j-ext/slf4j-ext-2.0.3.ebuild61
-rw-r--r--dev-java/slf4j-log4j12/Manifest1
-rw-r--r--dev-java/slf4j-log4j12/metadata.xml8
-rw-r--r--dev-java/slf4j-log4j12/slf4j-log4j12-1.7.30.ebuild73
-rw-r--r--dev-java/slf4j-nop/Manifest2
-rw-r--r--dev-java/slf4j-nop/metadata.xml14
-rw-r--r--dev-java/slf4j-nop/slf4j-nop-1.7.30.ebuild58
-rw-r--r--dev-java/slf4j-nop/slf4j-nop-2.0.3.ebuild47
-rw-r--r--dev-java/slf4j-reload4j/Manifest1
-rw-r--r--dev-java/slf4j-reload4j/metadata.xml12
-rw-r--r--dev-java/slf4j-reload4j/slf4j-reload4j-2.0.3.ebuild82
-rw-r--r--dev-java/slf4j-simple/Manifest2
-rw-r--r--dev-java/slf4j-simple/metadata.xml6
-rw-r--r--dev-java/slf4j-simple/slf4j-simple-1.7.30-r1.ebuild74
-rw-r--r--dev-java/slf4j-simple/slf4j-simple-2.0.3.ebuild72
-rw-r--r--dev-java/snakeyaml/Manifest3
-rw-r--r--dev-java/snakeyaml/files/snakeyaml-1.28-fix-test-check.patch14
-rw-r--r--dev-java/snakeyaml/metadata.xml7
-rw-r--r--dev-java/snakeyaml/snakeyaml-1.28-r1.ebuild95
-rw-r--r--dev-java/snakeyaml/snakeyaml-1.33.ebuild74
-rw-r--r--dev-java/snakeyaml/snakeyaml-2.0.ebuild76
-rw-r--r--dev-java/snappy/Manifest4
-rw-r--r--dev-java/snappy/files/1.0.3_rc3-gentoo.patch14
-rw-r--r--dev-java/snappy/files/1.0.3_rc3-unbundle-snappy.patch52
-rw-r--r--dev-java/snappy/files/1.1.0.1-gentoo.patch14
-rw-r--r--dev-java/snappy/files/1.1.0.1-unbundle-snappy.patch51
-rw-r--r--dev-java/snappy/files/1.1.7.8-gentoo.patch28
-rw-r--r--dev-java/snappy/files/1.1.7.8-java-version-target.patch47
-rw-r--r--dev-java/snappy/files/1.1.7.8-unbundle-bitshuffle.patch26
-rw-r--r--dev-java/snappy/files/1.x-build.xml185
-rw-r--r--dev-java/snappy/files/snappy-1.1.10.1-commons-lang3.patch11
-rw-r--r--dev-java/snappy/files/snappy-1.1.10.1-unbundle-snappy.patch51
-rw-r--r--dev-java/snappy/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch30
-rw-r--r--dev-java/snappy/metadata.xml2
-rw-r--r--dev-java/snappy/snappy-1.0.3_rc3.ebuild65
-rw-r--r--dev-java/snappy/snappy-1.1.0.1.ebuild72
-rw-r--r--dev-java/snappy/snappy-1.1.10.5-r1.ebuild125
-rw-r--r--dev-java/snip/Manifest1
-rw-r--r--dev-java/snip/metadata.xml15
-rw-r--r--dev-java/snip/snip-0.11-r1.ebuild35
-rw-r--r--dev-java/sparsebitset/metadata.xml2
-rw-r--r--dev-java/sparsebitset/sparsebitset-1.2.ebuild4
-rw-r--r--dev-java/spec-alpha/Manifest3
-rw-r--r--dev-java/spec-alpha/files/build.xml37
-rw-r--r--dev-java/spec-alpha/metadata.xml15
-rw-r--r--dev-java/spec-alpha/spec-alpha-0.1.143.ebuild41
-rw-r--r--dev-java/spec-alpha/spec-alpha-0.2.176.ebuild41
-rw-r--r--dev-java/spec-alpha/spec-alpha-0.2.194.ebuild39
-rw-r--r--dev-java/spice-jndikit/Manifest1
-rw-r--r--dev-java/spice-jndikit/metadata.xml16
-rw-r--r--dev-java/spice-jndikit/spice-jndikit-1.4.ebuild40
-rw-r--r--dev-java/spin/Manifest1
-rw-r--r--dev-java/spin/files/1.5-build.xml197
-rw-r--r--dev-java/spin/files/1.5-maven-build.properties16
-rw-r--r--dev-java/spin/metadata.xml11
-rw-r--r--dev-java/spin/spin-1.5-r1.ebuild48
-rw-r--r--dev-java/squareness-jlf/Manifest1
-rw-r--r--dev-java/squareness-jlf/files/build.xml17
-rw-r--r--dev-java/squareness-jlf/metadata.xml10
-rw-r--r--dev-java/squareness-jlf/squareness-jlf-2.3.0-r1.ebuild41
-rw-r--r--dev-java/stax2-api/Manifest1
-rw-r--r--dev-java/stax2-api/metadata.xml14
-rw-r--r--dev-java/stax2-api/stax2-api-4.2.1-r1.ebuild35
-rw-r--r--dev-java/stringprep/Manifest1
-rw-r--r--dev-java/stringprep/metadata.xml10
-rw-r--r--dev-java/stringprep/stringprep-1.1.ebuild20
-rw-r--r--dev-java/stringtemplate/Manifest5
-rw-r--r--dev-java/stringtemplate/files/3.2.1-test-fixes.patch53
-rw-r--r--dev-java/stringtemplate/files/4.0.8-r1-test-fixes.patch73
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-3.2.1-TestStringTemplate.patch11
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-4.0.8-fix-tests.patch72
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-4.3.4-BaseTest-javac-source-target.patch26
-rw-r--r--dev-java/stringtemplate/files/stringtemplate-4.3.4-Java21-TestRenderers.patch41
-rw-r--r--dev-java/stringtemplate/metadata.xml3
-rw-r--r--dev-java/stringtemplate/stringtemplate-3.2.1-r1.ebuild62
-rw-r--r--dev-java/stringtemplate/stringtemplate-3.2.1-r2.ebuild59
-rw-r--r--dev-java/stringtemplate/stringtemplate-3.2.1-r3.ebuild52
-rw-r--r--dev-java/stringtemplate/stringtemplate-4.0.8-r1.ebuild75
-rw-r--r--dev-java/stringtemplate/stringtemplate-4.3.4.ebuild96
-rw-r--r--dev-java/sun-jaf/Manifest1
-rw-r--r--dev-java/sun-jaf/metadata.xml8
-rw-r--r--dev-java/sun-jaf/sun-jaf-1.1.1-r1.ebuild21
-rw-r--r--dev-java/sun-jai-bin/metadata.xml2
-rw-r--r--dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r1.ebuild53
-rw-r--r--dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r2.ebuild4
-rw-r--r--dev-java/sun-jai-bin/sun-jai-bin-1.1.3.ebuild45
-rw-r--r--dev-java/sun-jimi/Manifest1
-rw-r--r--dev-java/sun-jimi/metadata.xml19
-rw-r--r--dev-java/sun-jimi/sun-jimi-1.0-r3.ebuild49
-rw-r--r--dev-java/sun-jms/Manifest1
-rw-r--r--dev-java/sun-jms/metadata.xml13
-rw-r--r--dev-java/sun-jms/sun-jms-1.1-r3.ebuild61
-rw-r--r--dev-java/super-csv/Manifest1
-rw-r--r--dev-java/super-csv/files/super-csv-2.3.1-build.xml235
-rw-r--r--dev-java/super-csv/metadata.xml15
-rw-r--r--dev-java/super-csv/super-csv-2.3.1.ebuild41
-rw-r--r--dev-java/swing-layout/metadata.xml2
-rw-r--r--dev-java/swing-layout/swing-layout-1.0.4-r1.ebuild30
-rw-r--r--dev-java/swing-layout/swing-layout-1.0.4-r2.ebuild29
-rw-r--r--dev-java/swingx-beaninfo/metadata.xml2
-rw-r--r--dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4-r1.ebuild33
-rw-r--r--dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4.ebuild31
-rw-r--r--dev-java/swingx-ws/Manifest1
-rw-r--r--dev-java/swingx-ws/files/swingx-ws-1.0_p20110515-replace-sun.misc-classes-for-java-9+.patch40
-rw-r--r--dev-java/swingx-ws/metadata.xml2
-rw-r--r--dev-java/swingx-ws/swingx-ws-1.0-r1.ebuild54
-rw-r--r--dev-java/swingx-ws/swingx-ws-1.0_p20110515-r1.ebuild67
-rw-r--r--dev-java/swingx-ws/swingx-ws-1.0_p20110515-r2.ebuild74
-rw-r--r--dev-java/swingx/metadata.xml2
-rw-r--r--dev-java/swt/Manifest12
-rw-r--r--dev-java/swt/files/as-needed-and-flag-fixes-3.6.patch8
-rw-r--r--dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch243
-rw-r--r--dev-java/swt/files/swt-3.8-manifest17
-rw-r--r--dev-java/swt/files/swt-3.8.2-gthread.patch44
-rw-r--r--dev-java/swt/files/swt-4.10-as-needed-and-flag-fixes.patch5
-rw-r--r--dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch81
-rw-r--r--dev-java/swt/metadata.xml7
-rw-r--r--dev-java/swt/swt-3.7.2-r3.ebuild16
-rw-r--r--dev-java/swt/swt-3.7.2-r4.ebuild169
-rw-r--r--dev-java/swt/swt-3.8.2-r3.ebuild155
-rw-r--r--dev-java/swt/swt-4.10-r1.ebuild174
-rw-r--r--dev-java/swt/swt-4.10-r2.ebuild172
-rw-r--r--dev-java/swt/swt-4.10-r3.ebuild168
-rw-r--r--dev-java/swt/swt-4.29.ebuild147
-rw-r--r--dev-java/swt/swt-4.30-r1.ebuild148
-rw-r--r--dev-java/swt/swt-4.31.ebuild151
-rw-r--r--dev-java/system-rules/Manifest1
-rw-r--r--dev-java/system-rules/metadata.xml7
-rw-r--r--dev-java/system-rules/system-rules-1.19.0.ebuild58
-rw-r--r--dev-java/tablelayout/Manifest1
-rw-r--r--dev-java/tablelayout/metadata.xml8
-rw-r--r--dev-java/tablelayout/tablelayout-1.0.ebuild27
-rw-r--r--dev-java/telnetd/Manifest1
-rw-r--r--dev-java/telnetd/metadata.xml11
-rw-r--r--dev-java/telnetd/telnetd-2.0-r1.ebuild48
-rw-r--r--dev-java/testng/Manifest6
-rw-r--r--dev-java/testng/metadata.xml4
-rw-r--r--dev-java/testng/testng-6.11-r1.ebuild101
-rw-r--r--dev-java/testng/testng-6.9.10.ebuild69
-rw-r--r--dev-java/texhyphj/Manifest1
-rw-r--r--dev-java/texhyphj/metadata.xml11
-rw-r--r--dev-java/texhyphj/texhyphj-1.1.ebuild26
-rw-r--r--dev-java/tijmp/Manifest1
-rw-r--r--dev-java/tijmp/files/tijmp-0.8-respect-javacflags.patch11
-rw-r--r--dev-java/tijmp/files/tijmp-jni.h.patch34
-rw-r--r--dev-java/tijmp/metadata.xml15
-rw-r--r--dev-java/tijmp/tijmp-0.8-r1.ebuild47
-rw-r--r--dev-java/tomcat-jstl-compat/Manifest1
-rw-r--r--dev-java/tomcat-jstl-compat/files/tomcat-jstl-compat-1.2.5-build.xml194
-rw-r--r--dev-java/tomcat-jstl-compat/metadata.xml8
-rw-r--r--dev-java/tomcat-jstl-compat/tomcat-jstl-compat-1.2.5-r1.ebuild70
-rw-r--r--dev-java/tomcat-jstl-el/Manifest1
-rw-r--r--dev-java/tomcat-jstl-el/files/tomcat-jstl-el-1.2.5-build.xml241
-rw-r--r--dev-java/tomcat-jstl-el/metadata.xml8
-rw-r--r--dev-java/tomcat-jstl-el/tomcat-jstl-el-1.2.5-r1.ebuild69
-rw-r--r--dev-java/tomcat-jstl-impl/Manifest1
-rw-r--r--dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-ImportSupport.patch35
-rw-r--r--dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-SetSupport.patch33
-rw-r--r--dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-build.xml244
-rw-r--r--dev-java/tomcat-jstl-impl/metadata.xml8
-rw-r--r--dev-java/tomcat-jstl-impl/tomcat-jstl-impl-1.2.5-r1.ebuild81
-rw-r--r--dev-java/tomcat-jstl-spec/Manifest1
-rw-r--r--dev-java/tomcat-jstl-spec/files/tomcat-jstl-spec-1.2.5-build.xml225
-rw-r--r--dev-java/tomcat-jstl-spec/metadata.xml8
-rw-r--r--dev-java/tomcat-jstl-spec/tomcat-jstl-spec-1.2.5-r1.ebuild66
-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/metadata.xml8
-rw-r--r--dev-java/tomcat-native/tomcat-native-1.2.28.ebuild62
-rw-r--r--dev-java/tomcat-native/tomcat-native-1.2.30.ebuild62
-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.ebuild79
-rw-r--r--dev-java/tomcat-servlet-api/Manifest9
-rw-r--r--dev-java/tomcat-servlet-api/files/2.5-build-r1.xml90
-rw-r--r--dev-java/tomcat-servlet-api/files/jsp-api-2.0-manifest11
-rw-r--r--dev-java/tomcat-servlet-api/files/servlet-api-2.4-manifest9
-rw-r--r--dev-java/tomcat-servlet-api/files/tomcat-servlet-api-10.0.2-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch20
-rw-r--r--dev-java/tomcat-servlet-api/files/tomcat-servlet-api-9.0.40-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch20
-rw-r--r--dev-java/tomcat-servlet-api/metadata.xml2
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.5.ebuild103
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.6.ebuild98
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-4.1.40.ebuild4
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-5.5.36.ebuild49
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-6.0.53-r1.ebuild36
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-7.0.109.ebuild98
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.65.ebuild99
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.66.ebuild99
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.45.ebuild104
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.46.ebuild99
-rw-r--r--dev-java/toolbar/Manifest1
-rw-r--r--dev-java/toolbar/metadata.xml8
-rw-r--r--dev-java/toolbar/toolbar-1.1.0-r2.ebuild31
-rw-r--r--dev-java/touchgraph-graphlayout/Manifest1
-rw-r--r--dev-java/touchgraph-graphlayout/metadata.xml11
-rw-r--r--dev-java/touchgraph-graphlayout/touchgraph-graphlayout-1.22-r1.ebuild33
-rw-r--r--dev-java/treelayout/Manifest2
-rw-r--r--dev-java/treelayout/metadata.xml2
-rw-r--r--dev-java/treelayout/treelayout-1.0.2.ebuild42
-rw-r--r--dev-java/treelayout/treelayout-1.0.3-r1.ebuild44
-rw-r--r--dev-java/trident/Manifest1
-rw-r--r--dev-java/trident/files/1.3-build.xml.patch29
-rw-r--r--dev-java/trident/metadata.xml8
-rw-r--r--dev-java/trident/trident-1.3-r1.ebuild54
-rw-r--r--dev-java/trident/trident-1.3.ebuild46
-rw-r--r--dev-java/trove/Manifest2
-rw-r--r--dev-java/trove/metadata.xml11
-rw-r--r--dev-java/trove/trove-3.0.2-r3.ebuild40
-rw-r--r--dev-java/trove/trove-3.0.3.ebuild30
-rw-r--r--dev-java/txw2-runtime/Manifest1
-rw-r--r--dev-java/txw2-runtime/metadata.xml8
-rw-r--r--dev-java/txw2-runtime/txw2-runtime-20110809.ebuild26
-rw-r--r--dev-java/txw2/Manifest1
-rw-r--r--dev-java/txw2/metadata.xml7
-rw-r--r--dev-java/txw2/txw2-2.3.8-r1.ebuild23
-rw-r--r--dev-java/typesafe-config/Manifest3
-rw-r--r--dev-java/typesafe-config/metadata.xml2
-rw-r--r--dev-java/typesafe-config/typesafe-config-1.2.1.ebuild22
-rw-r--r--dev-java/typesafe-config/typesafe-config-1.3.0-r2.ebuild22
-rw-r--r--dev-java/typesafe-config/typesafe-config-1.4.2.ebuild33
-rw-r--r--dev-java/unbescape/Manifest1
-rw-r--r--dev-java/unbescape/metadata.xml10
-rw-r--r--dev-java/unbescape/unbescape-1.1.6.ebuild36
-rw-r--r--dev-java/univocity-parsers/Manifest1
-rw-r--r--dev-java/univocity-parsers/files/univocity-parsers-2.9.1-explicitly-import-Record.patch159
-rw-r--r--dev-java/univocity-parsers/metadata.xml13
-rw-r--r--dev-java/univocity-parsers/univocity-parsers-2.9.1.ebuild42
-rw-r--r--dev-java/unkrig-nullanalysis/Manifest1
-rw-r--r--dev-java/unkrig-nullanalysis/metadata.xml8
-rw-r--r--dev-java/unkrig-nullanalysis/unkrig-nullanalysis-0_pre1644.ebuild22
-rw-r--r--dev-java/upnplib/Manifest1
-rw-r--r--dev-java/upnplib/metadata.xml11
-rw-r--r--dev-java/upnplib/upnplib-1.0.7.ebuild40
-rw-r--r--dev-java/validation-api/Manifest2
-rw-r--r--dev-java/validation-api/metadata.xml8
-rw-r--r--dev-java/validation-api/validation-api-1.0.0-r1.ebuild20
-rw-r--r--dev-java/validation-api/validation-api-1.1.0-r1.ebuild22
-rw-r--r--dev-java/vecmath/Manifest1
-rw-r--r--dev-java/vecmath/metadata.xml11
-rw-r--r--dev-java/vecmath/vecmath-1.6.0_pre12.ebuild39
-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.xml13
-rw-r--r--dev-java/velocity/velocity-2.3.ebuild10
-rw-r--r--dev-java/velocity/velocity-2.3_p20240314.ebuild108
-rw-r--r--dev-java/vldocking/Manifest1
-rw-r--r--dev-java/vldocking/metadata.xml15
-rw-r--r--dev-java/vldocking/vldocking-3.0.5.ebuild38
-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/werken-xpath/Manifest1
-rw-r--r--dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-gentoo.patch35
-rw-r--r--dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jdom-1.0.patch86
-rw-r--r--dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-compile.patch24
-rw-r--r--dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-jdom.patch86
-rw-r--r--dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-tests.patch10
-rw-r--r--dev-java/werken-xpath/metadata.xml11
-rw-r--r--dev-java/werken-xpath/werken-xpath-0.9.4_beta-r5.ebuild59
-rw-r--r--dev-java/woodstox-core/Manifest1
-rw-r--r--dev-java/woodstox-core/metadata.xml11
-rw-r--r--dev-java/woodstox-core/woodstox-core-6.4.0-r1.ebuild89
-rw-r--r--dev-java/ws-commons-util/Manifest1
-rw-r--r--dev-java/ws-commons-util/metadata.xml8
-rw-r--r--dev-java/ws-commons-util/ws-commons-util-1.0.1-r1.ebuild25
-rw-r--r--dev-java/wsdl4j/Manifest3
-rw-r--r--dev-java/wsdl4j/files/1.6.2-tests-sandbox.patch11
-rw-r--r--dev-java/wsdl4j/metadata.xml4
-rw-r--r--dev-java/wsdl4j/wsdl4j-1.6.2-r1.ebuild61
-rw-r--r--dev-java/wsdl4j/wsdl4j-1.6.3.ebuild26
-rw-r--r--dev-java/xalan-serializer/Manifest3
-rw-r--r--dev-java/xalan-serializer/metadata.xml2
-rw-r--r--dev-java/xalan-serializer/xalan-serializer-2.7.2-r1.ebuild41
-rw-r--r--dev-java/xalan-serializer/xalan-serializer-2.7.3-r1.ebuild46
-rw-r--r--dev-java/xalan/Manifest4
-rw-r--r--dev-java/xalan/metadata.xml2
-rw-r--r--dev-java/xalan/xalan-2.7.2-r1.ebuild66
-rw-r--r--dev-java/xalan/xalan-2.7.3-r1.ebuild45
-rw-r--r--dev-java/xerces/Manifest4
-rw-r--r--dev-java/xerces/files/xerces-2.12.0-overrides.patch66
-rw-r--r--dev-java/xerces/metadata.xml13
-rw-r--r--dev-java/xerces/xerces-2.12.0.ebuild52
-rw-r--r--dev-java/xerces/xerces-2.12.1.ebuild42
-rw-r--r--dev-java/xerces/xerces-2.12.2-r2.ebuild62
-rw-r--r--dev-java/xerial-core/Manifest2
-rw-r--r--dev-java/xerial-core/files/2.0.1-build.xml140
-rw-r--r--dev-java/xerial-core/metadata.xml4
-rw-r--r--dev-java/xerial-core/xerial-core-2.0.1.ebuild46
-rw-r--r--dev-java/xerial-core/xerial-core-2.1.ebuild53
-rw-r--r--dev-java/xjavac/Manifest1
-rw-r--r--dev-java/xjavac/metadata.xml8
-rw-r--r--dev-java/xjavac/xjavac-2.4.0.ebuild29
-rw-r--r--dev-java/xml-commons-external/Manifest1
-rw-r--r--dev-java/xml-commons-external/metadata.xml2
-rw-r--r--dev-java/xml-commons-external/xml-commons-external-1.3.04-r1.ebuild38
-rw-r--r--dev-java/xml-commons-external/xml-commons-external-1.4.01-r1.ebuild27
-rw-r--r--dev-java/xml-commons-external/xml-commons-external-1.4.01-r2.ebuild26
-rw-r--r--dev-java/xml-commons-resolver/metadata.xml2
-rw-r--r--dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r1.ebuild36
-rw-r--r--dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r3.ebuild42
-rw-r--r--dev-java/xml-commons/Manifest1
-rw-r--r--dev-java/xml-commons/metadata.xml16
-rw-r--r--dev-java/xml-commons/xml-commons-1.4.01.ebuild29
-rw-r--r--dev-java/xml-security/Manifest1
-rw-r--r--dev-java/xml-security/files/1.5.7-build.xml.patch38
-rw-r--r--dev-java/xml-security/metadata.xml8
-rw-r--r--dev-java/xml-security/xml-security-1.5.7-r1.ebuild66
-rw-r--r--dev-java/xml-writer/Manifest1
-rw-r--r--dev-java/xml-writer/metadata.xml8
-rw-r--r--dev-java/xml-writer/xml-writer-0.2-r1.ebuild37
-rw-r--r--dev-java/xml-xmlbeans/Manifest1
-rw-r--r--dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-SchemaCompiler.java.patch14
-rw-r--r--dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-jam.patch64
-rw-r--r--dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-piccolo.patch14
-rw-r--r--dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-remove-jamsupport.patch37
-rw-r--r--dev-java/xml-xmlbeans/metadata.xml25
-rw-r--r--dev-java/xml-xmlbeans/xml-xmlbeans-2.6.0.ebuild106
-rw-r--r--dev-java/xmldb/Manifest1
-rw-r--r--dev-java/xmldb/files/xmldb-20011111-enum.patch15
-rw-r--r--dev-java/xmldb/files/xmldb-20011111-unreachable.patch11
-rw-r--r--dev-java/xmldb/metadata.xml17
-rw-r--r--dev-java/xmldb/xmldb-20011111-r2.ebuild52
-rw-r--r--dev-java/xmlgraphics-commons/Manifest3
-rw-r--r--dev-java/xmlgraphics-commons/metadata.xml13
-rw-r--r--dev-java/xmlgraphics-commons/xmlgraphics-commons-2.0.1.ebuild63
-rw-r--r--dev-java/xmlgraphics-commons/xmlgraphics-commons-2.9.ebuild50
-rw-r--r--dev-java/xmlrpc/Manifest2
-rw-r--r--dev-java/xmlrpc/metadata.xml13
-rw-r--r--dev-java/xmlrpc/xmlrpc-3.1.3.ebuild61
-rw-r--r--dev-java/xmlunit-assertj/Manifest1
-rw-r--r--dev-java/xmlunit-assertj/metadata.xml10
-rw-r--r--dev-java/xmlunit-assertj/xmlunit-assertj-2.9.1.ebuild63
-rw-r--r--dev-java/xmlunit-core/Manifest1
-rw-r--r--dev-java/xmlunit-core/metadata.xml10
-rw-r--r--dev-java/xmlunit-core/xmlunit-core-2.9.1.ebuild57
-rw-r--r--dev-java/xmlunit-matchers/Manifest1
-rw-r--r--dev-java/xmlunit-matchers/metadata.xml10
-rw-r--r--dev-java/xmlunit-matchers/xmlunit-matchers-2.9.1.ebuild61
-rw-r--r--dev-java/xmlunit/metadata.xml2
-rw-r--r--dev-java/xmlunit/xmlunit-1.6-r2.ebuild43
-rw-r--r--dev-java/xmlunit/xmlunit-1.6.ebuild54
-rw-r--r--dev-java/xmpbox/Manifest1
-rw-r--r--dev-java/xmpbox/metadata.xml13
-rw-r--r--dev-java/xmpbox/xmpbox-2.0.27.ebuild56
-rw-r--r--dev-java/xmpcore/Manifest1
-rw-r--r--dev-java/xmpcore/metadata.xml8
-rw-r--r--dev-java/xmpcore/xmpcore-5.1.2.ebuild18
-rw-r--r--dev-java/xom/Manifest2
-rw-r--r--dev-java/xom/files/xom-1.3.7-disable-invalid-test.patch13
-rw-r--r--dev-java/xom/metadata.xml5
-rw-r--r--dev-java/xom/xom-1.3.7.ebuild66
-rw-r--r--dev-java/xom/xom-1.3.8-r1.ebuild103
-rw-r--r--dev-java/xp/Manifest1
-rw-r--r--dev-java/xp/files/xp-0.5-fix-jdk-1.7-enum.patch30
-rw-r--r--dev-java/xp/metadata.xml8
-rw-r--r--dev-java/xp/xp-0.5-r4.ebuild31
-rw-r--r--dev-java/xpp2/metadata.xml2
-rw-r--r--dev-java/xpp2/xpp2-2.1.10-r3.ebuild8
-rw-r--r--dev-java/xpp3/metadata.xml2
-rw-r--r--dev-java/xpp3/xpp3-1.1.4c-r3.ebuild24
-rw-r--r--dev-java/xpp3/xpp3-1.1.4c-r4.ebuild20
-rw-r--r--dev-java/xpp3/xpp3-1.1.4c-r6.ebuild35
-rw-r--r--dev-java/xsdlib/Manifest2
-rw-r--r--dev-java/xsdlib/metadata.xml5
-rw-r--r--dev-java/xsdlib/xsdlib-20090415-r1.ebuild53
-rw-r--r--dev-java/xsdlib/xsdlib-2022.7.ebuild73
-rw-r--r--dev-java/xsom/Manifest1
-rw-r--r--dev-java/xsom/metadata.xml8
-rw-r--r--dev-java/xsom/xsom-20140925.ebuild29
-rw-r--r--dev-java/xz-java/Manifest3
-rw-r--r--dev-java/xz-java/metadata.xml8
-rw-r--r--dev-java/xz-java/xz-java-1.8-r1.ebuild36
-rw-r--r--dev-java/xz-java/xz-java-1.9-r1.ebuild39
-rw-r--r--dev-java/yanfs/Manifest1
-rw-r--r--dev-java/yanfs/files/1.0-make.patch82
-rw-r--r--dev-java/yanfs/metadata.xml8
-rw-r--r--dev-java/yanfs/yanfs-1.0.ebuild45
-rw-r--r--dev-java/zstd-jni/Manifest2
-rw-r--r--dev-java/zstd-jni/metadata.xml5
-rw-r--r--dev-java/zstd-jni/zstd-jni-1.4.9.1.ebuild46
-rw-r--r--dev-java/zstd-jni/zstd-jni-1.5.2.5.ebuild63
-rw-r--r--dev-java/zxing-core/Manifest1
-rw-r--r--dev-java/zxing-core/metadata.xml19
-rw-r--r--dev-java/zxing-core/zxing-core-3.5.1.ebuild33
-rw-r--r--dev-java/zxing-javase/Manifest1
-rw-r--r--dev-java/zxing-javase/files/3.5.1-test-available-formats.patch31
-rw-r--r--dev-java/zxing-javase/metadata.xml19
-rw-r--r--dev-java/zxing-javase/zxing-javase-3.5.1.ebuild46
2479 files changed, 37762 insertions, 50760 deletions
diff --git a/dev-java/absolutelayout/Manifest b/dev-java/absolutelayout/Manifest
deleted file mode 100644
index fe5cf9e55641..000000000000
--- a/dev-java/absolutelayout/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST absolutelayout-6.7_beta.tar.bz2 3359 BLAKE2B 3753b864a8609b58f37679700651c928b113da03cc3294e7dbf27d45dc4cd00f163cbd196b503f382301c12212df071c833f3cab20e2dd1db827bbb39763e9a2 SHA512 2e14300fca85d2d81533147de4dbfa13660749a46134d9a80facd992948ed18147e02fcf2ca3590154823342201bd99f6e84eb251176ae1906c09477718a36e3
diff --git a/dev-java/absolutelayout/absolutelayout-6.7_beta-r1.ebuild b/dev-java/absolutelayout/absolutelayout-6.7_beta-r1.ebuild
deleted file mode 100644
index cdcf73e5abab..000000000000
--- a/dev-java/absolutelayout/absolutelayout-6.7_beta-r1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="AbsoluteLayout files extracted from Netbeans"
-HOMEPAGE="http://www.netbeans.org/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-LICENSE="|| ( GPL-2 CDDL )"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}"
diff --git a/dev-java/absolutelayout/metadata.xml b/dev-java/absolutelayout/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/absolutelayout/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/airline/Manifest b/dev-java/airline/Manifest
deleted file mode 100644
index f7ba0e5d112e..000000000000
--- a/dev-java/airline/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dev-java-airline-0.7.tar.gz 40489 BLAKE2B 507ee6cb7757d16c5b015269a61ff1b176898ae820eecb7d8cad0d9aacad5b8ab732c197b9c0ef71a62b06e98d6ad9e9637a3f36b9b065a7861c9f0cb3f28d7f SHA512 5c9bd29de0e48c94552daf4206a9a894abe5f67ea955217c487095167ed25db2e38b1d0d297322ed2901cb1615d0067e526e10c0d7a0842bbf540d2ab4cbafea
diff --git a/dev-java/airline/airline-0.7-r1.ebuild b/dev-java/airline/airline-0.7-r1.ebuild
deleted file mode 100644
index acbb765ec82f..000000000000
--- a/dev-java/airline/airline-0.7-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java annotation-based framework for parsing Git like command line structures"
-HOMEPAGE="https://github.com/airlift/airline/"
-# Renaming to avoid conflict with app-vim/airline:
-SRC_URI="https://github.com/airlift/${PN}/archive/${PV}.tar.gz -> ${CATEGORY}-${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CP_DEPEND="dev-java/guava:20
- dev-java/javax-inject:0
- dev-java/jsr305:0"
-
-DEPEND=">=virtual/jdk-1.7
- ${CP_DEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CP_DEPEND}"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src/main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README.md
-}
diff --git a/dev-java/airline/metadata.xml b/dev-java/airline/metadata.xml
deleted file mode 100644
index 718292830bb1..000000000000
--- a/dev-java/airline/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">airlift/airline</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/android-util/Manifest b/dev-java/android-util/Manifest
deleted file mode 100644
index e38814679ee4..000000000000
--- a/dev-java/android-util/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST android-4.1.1.4-sources.jar 12140689 BLAKE2B 272059646bd8b393e623467df457c17b011064a7fb6d2da14910c5c4414719bda51e6c59bcc7f63f3671207e9293f3229e62a4067cb12e98635561a40dd6e58d SHA512 39bbe77447adce554d323a55c6324c4af51cdf130ad9d8f4578e27ac99564d56513705bc2de6969deb6c35f70f2edf2f3724571d57c931ff768b437912ff637d
diff --git a/dev-java/android-util/android-util-4.1.1.4.ebuild b/dev-java/android-util/android-util-4.1.1.4.ebuild
deleted file mode 100644
index 401834050baa..000000000000
--- a/dev-java/android-util/android-util-4.1.1.4.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN/-util}"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Library providing APIs for applications written for Google Android"
-HOMEPAGE="https://source.android.com/"
-SRC_URI="http://central.maven.org/maven2/com/google/${MY_PN}/${MY_PN}/${PV}/${MY_P}-sources.jar"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/xerces:2
- dev-java/xpp3:0"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-JAVA_SRC_DIR="${MY_PN}/util"
-
-JAVA_GENTOO_CLASSPATH="xerces-2,xpp3"
diff --git a/dev-java/android-util/metadata.xml b/dev-java/android-util/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/android-util/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/angus-activation/Manifest b/dev-java/angus-activation/Manifest
new file mode 100644
index 000000000000..666de9926257
--- /dev/null
+++ b/dev-java/angus-activation/Manifest
@@ -0,0 +1 @@
+DIST angus-activation-1.0.0.tar.gz 26068 BLAKE2B 45151d8d0bc3c2b1835d2ceab62e9d4ab5294dcfbbf606d3298013f0dd5f27a7bbe950effbd053a6e54ec1179884870c167e8967b3536dd79902dbda506bb8c8 SHA512 e6e7b32f1aab8d293d5855a3e6b155922c18aeddf13b3daab6928c1b95b4af6dd292c5670351a70870723bc80a58ef4366e8b4fe40c5f5b995266751bccfdef6
diff --git a/dev-java/angus-activation/angus-activation-1.0.0-r1.ebuild b/dev-java/angus-activation/angus-activation-1.0.0-r1.ebuild
new file mode 100644
index 000000000000..9f8f2247f80d
--- /dev/null
+++ b/dev-java/angus-activation/angus-activation-1.0.0-r1.ebuild
@@ -0,0 +1,34 @@
+# 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/angus-activation/archive/refs/tags/1.0.0.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild angus-activation-1.0.0-r1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.eclipse.angus:angus-activation:1.0.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Provides the implementation of the Jakarta Activation Specification"
+HOMEPAGE="https://github.com/eclipse-ee4j/angus-activation"
+SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/jakarta-activation-api:2
+ >=virtual/jdk-11:*"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/${P}/activation-registry"
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-2"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/angus-activation/metadata.xml b/dev-java/angus-activation/metadata.xml
new file mode 100644
index 000000000000..0174e643d7c7
--- /dev/null
+++ b/dev-java/angus-activation/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">eclipse-ee4j/angus-activation</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15-r1.ebuild b/dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15-r1.ebuild
new file mode 100644
index 000000000000..265decdfdc6f
--- /dev/null
+++ b/dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN%-annotations}"
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.codehaus.mojo:animal-sniffer-annotations:1.15"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java annotations for marking methods that Animal Sniffer should ignore"
+HOMEPAGE="http://www.mojohaus.org/animal-sniffer/animal-sniffer-annotations/"
+SRC_URI="https://github.com/mojohaus/${MY_PN}/archive/${MY_PN}-parent-${PV}.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${MY_PN}-${MY_PN}-parent-${PV}/${PN}"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15.ebuild b/dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15.ebuild
deleted file mode 100644
index 465628dcbe99..000000000000
--- a/dev-java/animal-sniffer-annotations/animal-sniffer-annotations-1.15.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PN="${PN%-annotations}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java annotations for marking methods that Animal Sniffer should ignore"
-HOMEPAGE="http://www.mojohaus.org/animal-sniffer/animal-sniffer-annotations/"
-SRC_URI="https://github.com/mojohaus/${MY_PN}/archive/${MY_PN}-parent-${PV}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_PN}-parent-${PV}/${PN}"
-JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/animal-sniffer-annotations/metadata.xml b/dev-java/animal-sniffer-annotations/metadata.xml
index 488b657d1844..21c0ec4e9f63 100644
--- a/dev-java/animal-sniffer-annotations/metadata.xml
+++ b/dev-java/animal-sniffer-annotations/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/annogen/Manifest b/dev-java/annogen/Manifest
deleted file mode 100644
index f60ebe50d3ab..000000000000
--- a/dev-java/annogen/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST annogen-0.1.0.zip 1008931 BLAKE2B ca0da18f095c0db0aedfca1b83c5df6bc8fd348be3764e9ed182807189e151302f88f10c78c05a44dace66509a5a4d0e532541356758373a76932b8d284101dc SHA512 f5c4eeb92ef8c87874df6619ef701b99dace01bd3ebc87f201ee3ab523fe612b6d143da2646c280d4831bc8e3051887514aa06b8bad6928b68ddd6cd6357fa16
diff --git a/dev-java/annogen/annogen-0.1.0-r3.ebuild b/dev-java/annogen/annogen-0.1.0-r3.ebuild
deleted file mode 100644
index f6d31072bfeb..000000000000
--- a/dev-java/annogen/annogen-0.1.0-r3.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A tool which helps you work with JSR175 annotations"
-HOMEPAGE="https://github.com/codehaus/annogen"
-SRC_URI="http://dist.codehaus.org/${PN}/distributions/${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 ~x86"
-
-CDEPEND="
- dev-java/qdox:1.6
- dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-# com.sun.mirror.declaration was removed from JDK 7 onwards.
-# These two files are just interfaces anyway.
-JAVA_RM_FILES=(
- org/codehaus/annogen/view/MirrorAnnoViewer.java
- org/codehaus/annogen/override/MirrorElementIdPool.java
-)
-
-JAVA_GENTOO_CLASSPATH="
- ant-core
- qdox-1.6
-"
-
-src_unpack() {
- default
- unzip -o -q "${S}/${PN}-src-${PV}.zip" || die
-}
-
-java_prepare() {
- java-pkg_clean
- rm -rv examples || die
-}
-
-src_compile() {
- # Needed for com.sun.* imports
- JAVA_GENTOO_CLASSPATH_EXTRA="$(java-config -t)" \
- java-pkg-simple_src_compile
-}
diff --git a/dev-java/annogen/metadata.xml b/dev-java/annogen/metadata.xml
deleted file mode 100644
index 3073b0da13b9..000000000000
--- a/dev-java/annogen/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">codehaus/annogen</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 3ce97311a972..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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-antlr/metadata.xml b/dev-java/ant-antlr/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-antlr/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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-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 50062198e79c..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-DEPEND=">=dev-java/bcel-5.1-r3:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-bcel/metadata.xml b/dev-java/ant-apache-bcel/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-apache-bcel/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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-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 4d3aa5991cf6..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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-bsf/metadata.xml b/dev-java/ant-apache-bsf/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-apache-bsf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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-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.ebuild b/dev-java/ant-apache-log4j/ant-apache-log4j-1.10.9.ebuild
deleted file mode 100644
index d30b5fb9410a..000000000000
--- a/dev-java/ant-apache-log4j/ant-apache-log4j-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="log4j"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-DEPEND=">=dev-java/log4j-1.2.13-r2:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-apache-log4j/metadata.xml b/dev-java/ant-apache-log4j/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-apache-log4j/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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-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 17605232d18d..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..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 "http://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 c3e9f34c688f..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..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 "http://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 de1b69fee991..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..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 "http://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 ead0fda47fce..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..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 "http://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 ccf0ff8e4db5..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..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 "http://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 41b732a1847a..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..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 "http://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-contrib/Manifest b/dev-java/ant-contrib/Manifest
index 8b26c2ae497b..f56a40d13f5d 100644
--- a/dev-java/ant-contrib/Manifest
+++ b/dev-java/ant-contrib/Manifest
@@ -1,2 +1 @@
DIST ant-contrib-1.0_beta6_pre20201123.tar.gz 473435 BLAKE2B f73f0a3cfbf92719143a806e1b4b753f7809aeef4976fd6f75aef85490daa0a44a90c03779aba0784e9e59dfe9b9abf7b19c405287fa20838b29e621fa5f7dac SHA512 0b4d05c90c16c5d076364aa140d3ce503b7b7abf187d7d4cccbf0170dd3afab879bb71b002b3c467f73d2632a57dfd70f74715e8b48f26376cb88e872ec1014e
-DIST ant-contrib-1.0b3-src.tar.bz2 3298187 BLAKE2B 0572d583a770c239880fb7e8e4a1e91331dfe80a52d7cf83a90d108f1e717caa26699dce43b72fb1944a74c8c738ad659f60864e2e8e945c8e91569d80c1214b SHA512 8147ed51612eed9d41515c00ef2bb7210ebd50dba8b471abfadf8a56c67b53c030602ce9e49e9070d72d383de61f290e941a76c282e223330fee606f3633b0a8
diff --git a/dev-java/ant-contrib/ant-contrib-1.0_beta3-r2.ebuild b/dev-java/ant-contrib/ant-contrib-1.0_beta3-r2.ebuild
deleted file mode 100644
index 68d5f869ed7b..000000000000
--- a/dev-java/ant-contrib/ant-contrib-1.0_beta3-r2.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-WANT_ANT_TASKS="ant-ivy"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A collection of tasks for Apache Ant"
-HOMEPAGE="http://ant-contrib.sourceforge.net/"
-SRC_URI="mirror://sourceforge/ant-contrib/${PN}-${PV/_beta/b}-src.tar.bz2"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-# test? ( dev-java/ant-junit dev-java/ant-testutil )
-CP_DEPEND="
- >=dev-java/ant-core-1.7.0:0
- dev-java/ant-ivy:0
- >=dev-java/bcel-5.1:0
- dev-java/commons-httpclient:3
- dev-java/xerces:2
-"
-
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.4"
-
-# javatoolkit for cElementTree
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.4
- >=dev-java/javatoolkit-0.3.0-r2"
-
-S="${WORKDIR}/${PN}"
-PATCHES=( "${FILESDIR}"/tests-visibility.patch )
-
-rewrite_build_xml() {
- python <<EOF
-import xml.etree.cElementTree as et
-tree = et.ElementTree(file='build.xml')
-root = tree.getroot()
-root.append(et.Element('path',id='test.classpath'))
-root.append(et.Element('path',id='compile.classpath'))
-skip=['resolve','classpath']
-for target in tree.getiterator("target"):
- if target.attrib['name'] in skip:
- target.attrib['if'] = 'false'
-
-tree.write('build.xml')
-EOF
- [[ $? != 0 ]] && die "Removing taskdefs failed"
-}
-
-src_prepare() {
- default
- rewrite_build_xml
- java-pkg_clean
- java-pkg-2_src_prepare
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_EXTRA_ARGS="-Dversion=${PV} -Ddep.available=true"
-
-# Can't load bcel for some reason
-RESTRICT="test"
-# for tests
-EANT_GENTOO_CLASSPATH_EXTRA="target/${PN}.jar"
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
-
- java-pkg_register-ant-task
-
- use doc && java-pkg_dojavadoc target/docs/api
- use source && java-pkg_dosrc src/java/net
-
- java-pkg_dohtml -r docs/manual
-}
diff --git a/dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123-r2.ebuild b/dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123-r2.ebuild
new file mode 100644
index 000000000000..172467ec6ed4
--- /dev/null
+++ b/dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123-r2.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="ant-contrib:ant-contrib:1.0b6"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_COMMIT="0228412be2ef648cfabc1d74416d3188755aff9b"
+DESCRIPTION="Ant-contrib tasks for Apache Ant"
+HOMEPAGE="https://ant-contrib.sourceforge.net/"
+SRC_URI="https://github.com/cniweb/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}/${PN}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+# Too many tests fail
+RESTRICT="test"
+
+# Common dependencies
+# POM: pom.xml
+# commons-httpclient:commons-httpclient:3.1 -> >=dev-java/commons-httpclient-3.1:3
+# org.apache.ant:ant:1.9.15 -> >=dev-java/ant-core-1.10.9:0
+# org.apache.bcel:bcel:5.1 -> >=dev-java/bcel-6.5.0:0
+# org.apache.ivy:ivy:2.5.0 -> >=dev-java/ant-ivy-2.5.0:2
+# org.jvnet.hudson:ivy:1.4.1 -> !!!groupId-not-found!!!
+# xerces:xercesImpl:2.12.0 -> >=dev-java/xerces-2.12.0:2
+
+CDEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/ant-ivy:2
+ dev-java/bcel:0
+ dev-java/commons-httpclient:3
+ dev-java/xerces:2
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
+# test? org.apache.ant:ant-launcher:1.9.5 -> >=dev-java/ant-core-1.10.9:0
+
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ >=dev-java/ant-1.10.14-r3:0[junit4]
+ )"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+# JAVA_GENTOO_CLASSPATH="commons-httpclient-3,ant-core,bcel,ant-ivy-2,!!!groupId-not-found!!!,xerces-2"
+JAVA_GENTOO_CLASSPATH="commons-httpclient-3,ant,bcel,ant-ivy-2,xerces-2"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,ant"
+JAVA_TEST_SRC_DIR="test/src"
+JAVA_TEST_RESOURCE_DIRS="test/resources"
+
+src_prepare() {
+ default
+ sed -i \
+ -e '/^import/s/fr.jayasoft.ivy.ant/org.apache.ivy.ant/' \
+ src/main/java/net/sf/antcontrib/net/Ivy14Adapter.java || die
+}
diff --git a/dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123.ebuild b/dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123.ebuild
deleted file mode 100644
index f652e7eadd71..000000000000
--- a/dev-java/ant-contrib/ant-contrib-1.0_beta6_pre20201123.ebuild
+++ /dev/null
@@ -1,75 +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 pom.xml --download-uri https://github.com/cniweb/ant-contrib/archive/0228412be2ef648cfabc1d74416d3188755aff9b.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild ant-contrib-1.0_beta6_pre20201123.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="ant-contrib:ant-contrib:1.0b6"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_COMMIT="0228412be2ef648cfabc1d74416d3188755aff9b"
-DESCRIPTION="Ant-contrib tasks for Apache Ant"
-HOMEPAGE="http://ant-contrib.sourceforge.net:80"
-SRC_URI="https://github.com/cniweb/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-# Common dependencies
-# POM: pom.xml
-# commons-httpclient:commons-httpclient:3.1 -> >=dev-java/commons-httpclient-3.1:3
-# org.apache.ant:ant:1.9.15 -> >=dev-java/ant-core-1.10.9:0
-# org.apache.bcel:bcel:5.1 -> >=dev-java/bcel-6.5.0:0
-# org.apache.ivy:ivy:2.5.0 -> >=dev-java/ant-ivy-2.5.0:2
-# org.jvnet.hudson:ivy:1.4.1 -> !!!groupId-not-found!!!
-# xerces:xercesImpl:2.12.0 -> >=dev-java/xerces-2.12.0:2
-
-CDEPEND="
- >=dev-java/ant-core-1.10.9:0
- >=dev-java/ant-ivy-2.3.0:2
- >=dev-java/bcel-6.5.0:0
- >=dev-java/commons-httpclient-3.1:3
- >=dev-java/xerces-2.12.0:2
-"
-
-# Compile dependencies
-# POM: pom.xml
-# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
-# test? org.apache.ant:ant-launcher:1.9.5 -> >=dev-java/ant-core-1.10.9:0
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- >=dev-java/ant-core-1.10.9:0
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}
-"
-
-S="${WORKDIR}/${PN}-${MY_COMMIT}/${PN}"
-
-# JAVA_GENTOO_CLASSPATH="commons-httpclient-3,ant-core,bcel,ant-ivy-2,!!!groupId-not-found!!!,xerces-2"
-JAVA_GENTOO_CLASSPATH="commons-httpclient-3,ant-core,bcel,ant-ivy-2,xerces-2"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4,ant-core"
-JAVA_TEST_SRC_DIR="test/src"
-JAVA_TEST_RESOURCE_DIRS="test/resources"
-
-src_prepare() {
- default
- sed -i \
- -e '/^import/s/fr.jayasoft.ivy.ant/org.apache.ivy.ant/' \
- src/main/java/net/sf/antcontrib/net/Ivy14Adapter.java || die
-}
diff --git a/dev-java/ant-contrib/files/tests-visibility.patch b/dev-java/ant-contrib/files/tests-visibility.patch
deleted file mode 100644
index 182a17f054e0..000000000000
--- a/dev-java/ant-contrib/files/tests-visibility.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur ant-contrib.old/test/src/net/sf/antcontrib/BuildFileTestBase.java ant-contrib/test/src/net/sf/antcontrib/BuildFileTestBase.java
---- ant-contrib.old/test/src/net/sf/antcontrib/BuildFileTestBase.java 2008-03-05 23:56:16.000000000 +0200
-+++ ant-contrib/test/src/net/sf/antcontrib/BuildFileTestBase.java 2008-03-05 23:56:55.000000000 +0200
-@@ -76,7 +76,7 @@
- * @param filename name of project file to run
- * @exception BuildException Description of the Exception
- */
-- protected void configureProject( String filename ) throws BuildException {
-+ public void configureProject( String filename ) throws BuildException {
- // find the build file
- File f = new File( filename );
- if ( !f.exists() ) {
diff --git a/dev-java/ant-contrib/metadata.xml b/dev-java/ant-contrib/metadata.xml
index b0770934cd36..ae7fc6239f35 100644
--- a/dev-java/ant-contrib/metadata.xml
+++ b/dev-java/ant-contrib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
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.ebuild b/dev-java/ant-core/ant-core-1.10.9.ebuild
deleted file mode 100644
index 86eeb87ed9ba..000000000000
--- a/dev-java/ant-core/ant-core-1.10.9.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# 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"
-
-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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-CDEPEND=">=virtual/jdk-1.8:*"
-DEPEND="${CDEPEND}"
-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 \
- $(use_doc javadocs) || die "build failed"
-}
-
-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 952a4b9b605c..d0bcffb03628 100644
--- a/dev-java/ant-core/metadata.xml
+++ b/dev-java/ant-core/metadata.xml
@@ -1,8 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<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 ed26372e0153..000000000000
--- a/dev-java/ant-eclipse-ecj/Manifest
+++ /dev/null
@@ -1,5 +0,0 @@
-DIST ecjsrc-4.10.jar 2036945 BLAKE2B cf9e50e53dac970a0b6b1231024a4efdc9adc92e02585aa4767c6511b367b32eefaf6fb3461c3c5c8160cf7205c0f708af0c433f4636b5a49caf637ba60fa092 SHA512 e85cacf6d2e21d464ff0226eac12bab8388df7a1413cb16d2982e255eb7369341792562f5080354279be0643c08fd80564a8eb2d8f59b72c8443c02577e4e1ee
-DIST ecjsrc-4.13.jar 2074963 BLAKE2B d74caf3b81543ac12497148a477dcd99fb6d14bd1d601b9e2baa0fb82d12f1211533f5ee909465b190c780ac18f1fbc1f8e12c22cddfce10501923effd7a4cc1 SHA512 f7e49b29e8aa80d627230059c9aba3f1e1fe3824bfd43eac962331d545471df5af0ac49b489aa3795e79e161101a3c6406b29f71a06143914f241916ae6953a9
-DIST ecjsrc-4.15.jar 2166228 BLAKE2B 794e0ba1a19b325e2dd8ad0b288ccbe04866627670b50d39dd327c13fe1fac56200eb3a6c1c3d1af043cad795508b9b714a5243049671414b5a62a97725d3297 SHA512 ada55b2522cf26570f0cd43f415eb5cf20e6840f83dadc72e1ae474ebf10eadca73f9fa3d1db51e13fd2762c38cd3e3567db3c7840d43ae3d8665ebe35e1889d
-DIST ecjsrc-4.4.2.jar 1764959 BLAKE2B 402bcbb040c28fa10dad07c4223daed9976f3246d6984ac74d95087a6cdcd5a742072126a999435eb2d49d49bb2884474461ae8439a9839617b2891297cd7c07 SHA512 53e850fc64994b104d45f58c22f1302ceb1f23bcf69300940be5689dfa6278bea14b4506746fec7b14db6f48c24ccbee16755943fffcdd7f6ad4fe5d9ddc1f20
-DIST ecjsrc-4.5.1.jar 1809543 BLAKE2B 6d9dfed1756ac3e7edf8dd5b30f945afac8bb09bfb5b10f9abed46fff917f600afaebd28451665005b38831f20846090bd3cd19b979130043adbc6a7970d6b36 SHA512 ee615e6fb7fb4a16ef4aeefdff93bafdbf36c9d0ce15713b81f1d4dce0ae87379fa4a6de34c32a134f78db6ed1a68d6c7b4e2a431b7de57bf8262a718fdd6553
diff --git a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.10-r1.ebuild b/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.10-r1.ebuild
deleted file mode 100644
index 2749b9e70173..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.10-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple prefix
-
-DMF="R-${PV}-201812060815"
-
-DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.10"
-IUSE=""
-
-CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
- >=dev-java/ant-core-1.7"
-RDEPEND="${CDEPEND}
- >=virtual/jre-11"
-DEPEND="${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-11"
-
-JAVA_GENTOO_CLASSPATH="ant-core,eclipse-ecj-${SLOT}"
-
-java_prepare() {
- # 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 "${D}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
diff --git a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.13.ebuild b/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.13.ebuild
deleted file mode 100644
index de1022b748c7..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.13.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 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}-201909161045"
-
-DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.13"
-IUSE=""
-
-CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
- dev-java/ant-core:0"
-RDEPEND="${CDEPEND}
- >=virtual/jre-11"
-DEPEND="${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-11"
-
-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 "${D}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
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 478fe1efa829..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.15-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2021 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="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-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 "${D}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
diff --git a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.4.2.ebuild b/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.4.2.ebuild
deleted file mode 100644
index 3656f27ea48d..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.4.2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple prefix
-
-DMF="R-${PV}-201502041700"
-
-DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.4"
-IUSE=""
-
-CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
- >=dev-java/ant-core-1.7"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-DEPEND="${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="ant-core,eclipse-ecj-${SLOT}"
-
-java_prepare() {
- # 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 "${D}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
diff --git a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.5.1.ebuild b/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.5.1.ebuild
deleted file mode 100644
index 3e841d328273..000000000000
--- a/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-4.5.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple prefix
-
-DMF="R-${PV}-201509040015"
-
-DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.5"
-IUSE=""
-
-CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
- >=dev-java/ant-core-1.7"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-DEPEND="${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.7"
-
-JAVA_GENTOO_CLASSPATH="ant-core,eclipse-ecj-${SLOT}"
-
-java_prepare() {
- # 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 "${D}"/usr/share/java-config-2/compiler/ecj-${SLOT}
-}
diff --git a/dev-java/ant-eclipse-ecj/files/ecj-4.10 b/dev-java/ant-eclipse-ecj/files/ecj-4.10
deleted file mode 100644
index cc87bb2fc4d6..000000000000
--- a/dev-java/ant-eclipse-ecj/files/ecj-4.10
+++ /dev/null
@@ -1,7 +0,0 @@
-JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.10"
-PACKAGE="=dev-java/ant-eclipse-ecj-4.10*"
-SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11"
-SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11"
-ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
-ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.10,ant-eclipse-ecj-4.10"
-GENERATION="2"
diff --git a/dev-java/ant-eclipse-ecj/files/ecj-4.13 b/dev-java/ant-eclipse-ecj/files/ecj-4.13
deleted file mode 100644
index d9c479e37367..000000000000
--- a/dev-java/ant-eclipse-ecj/files/ecj-4.13
+++ /dev/null
@@ -1,7 +0,0 @@
-JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.13"
-PACKAGE="=dev-java/ant-eclipse-ecj-4.13*"
-SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12"
-SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12"
-ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
-ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.13,ant-eclipse-ecj-4.13"
-GENERATION="2"
diff --git a/dev-java/ant-eclipse-ecj/files/ecj-4.4 b/dev-java/ant-eclipse-ecj/files/ecj-4.4
deleted file mode 100644
index 36fef918e57b..000000000000
--- a/dev-java/ant-eclipse-ecj/files/ecj-4.4
+++ /dev/null
@@ -1,7 +0,0 @@
-JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.4"
-PACKAGE="=dev-java/ant-eclipse-ecj-4.4*"
-SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7"
-SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7"
-ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
-ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.4,ant-eclipse-ecj-4.4"
-GENERATION="2"
diff --git a/dev-java/ant-eclipse-ecj/files/ecj-4.5 b/dev-java/ant-eclipse-ecj/files/ecj-4.5
deleted file mode 100644
index e0a0eb367f50..000000000000
--- a/dev-java/ant-eclipse-ecj/files/ecj-4.5
+++ /dev/null
@@ -1,7 +0,0 @@
-JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.5"
-PACKAGE="=dev-java/ant-eclipse-ecj-4.5*"
-SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8"
-SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8"
-ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
-ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.5,ant-eclipse-ecj-4.5"
-GENERATION="2"
diff --git a/dev-java/ant-eclipse-ecj/metadata.xml b/dev-java/ant-eclipse-ecj/metadata.xml
deleted file mode 100644
index 410d61c1447b..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 "http://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-ivy/Manifest b/dev-java/ant-ivy/Manifest
index ef80fa17ff62..0d8fb7a2c918 100644
--- a/dev-java/ant-ivy/Manifest
+++ b/dev-java/ant-ivy/Manifest
@@ -1,2 +1 @@
-DIST apache-ivy-2.3.0-src.tar.gz 2790722 BLAKE2B 87a79bad15b9b74517ce240fcfd0ae9e58b67816f0ec1fbd14081a17bd837c497da419d0b45ad63b3782b151e86c85b79cafa11f8c1170ab0287597be78cabe7 SHA512 fde43ff288cd8c77f2bdecdcbf52f180247ed99a8526be9d875d60e209b66155d5526e968400382d2cef22cabb8899c3b0912e049ae7d23e2cb79be8a81fe00f
-DIST ivy-1.4.1-src.zip 751792 BLAKE2B 3a6ca8aaa49be9c664c3de4789debfe5770bb32084c548aa49a8d6146b55391729d5d68758e26f29253ab727e8a2a731961ba45419f3c1a212b26d74f33b0a0e SHA512 8ccb4680e8c32178bf12b74f4c6df668bbdd06c6dce6a2d0bf1b9daeec8fb5166d4d510cadb247dc4e2a91b71f5dc7fc429d0d7faed95a2898fd4f9d0888ee8d
+DIST apache-ivy-2.5.0-src.tar.gz 2719181 BLAKE2B 71c47e3493beac8de1bc4e8c86ae18383938265dd2803a1c4b9ad466306227dab9eeca256516ff94064d902d0694b4f0b35ce152c5f64b95b876e47289b25833 SHA512 59d9458345e3a51e8f527258ba26ebe2cf5cf257401c52fb5f75aced0da5f7bf36f8aa0f202bbc0cf029d1d49bd6634f7cb8b65ccc828eb55ff7084430879268
diff --git a/dev-java/ant-ivy/ant-ivy-1.4.1-r2.ebuild b/dev-java/ant-ivy/ant-ivy-1.4.1-r2.ebuild
deleted file mode 100644
index 62198fb29dc1..000000000000
--- a/dev-java/ant-ivy/ant-ivy-1.4.1-r2.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source test"
-
-# Registers as split-ant task.
-WANT_SPLIT_ANT="true"
-
-# Rewrites examples otherwise... bad.
-JAVA_PKG_BSFIX_ALL="no"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN##*-}"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Ivy is a free java based dependency manager"
-HOMEPAGE="https://ant.apache.org/ivy/"
-SRC_URI="http://www.jaya.free.fr/downloads/ivy/${PV}/${MY_P}-src.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-COMMON_DEP="
- dev-java/ant-core:0
- dev-java/commons-cli:1
- dev-java/commons-httpclient:3
- dev-java/commons-vfs:0
- dev-java/jakarta-oro:2.0
- dev-java/jsch:0"
-
-BDEPEND="app-arch/unzip"
-DEPEND="
- >=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )
- ${COMMON_DEP}"
-
-RDEPEND=">=virtual/jre-1.8:*
- ${COMMON_DEP}"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}/1.4.1-javadoc.patch"
-)
-
-src_prepare() {
- default
-
- # init-ivy expects existing ivy.jar, but we don't need actually it
- sed -i -e 's/depends="init-ivy, prepare"/depends="prepare"/' build.xml \
- || die
-
- rm -v src/java/fr/jayasoft/ivy/repository/vfs/IvyWebdav* || die
- java-ant_rewrite-classpath
- mkdir lib
-}
-
-EANT_GENTOO_CLASSPATH="
- ant-core,commons-cli-1,commons-httpclient-3
- commons-vfs,jakarta-oro-2.0,jsch"
-
-EANT_BUILD_TARGET="offline jar"
-
-src_test() {
- # TODO: find out why a couple of these fail
- java-pkg_jar-from --into lib junit
- ANT_TASKS="ant-junit" eant offline test
-}
-
-src_install() {
- java-pkg_dojar build/artifact/${MY_PN}.jar
-
- use doc && java-pkg_dojavadoc doc/ivy/api
- use examples && java-pkg_doexamples src/example
- use source && java-pkg_dosrc src/java/*
-
- java-pkg_register-ant-task
-}
diff --git a/dev-java/ant-ivy/ant-ivy-2.3.0-r3.ebuild b/dev-java/ant-ivy/ant-ivy-2.3.0-r3.ebuild
deleted file mode 100644
index 17350b9fc443..000000000000
--- a/dev-java/ant-ivy/ant-ivy-2.3.0-r3.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source test"
-
-# Register this as a split-ant task.
-WANT_SPLIT_ANT="true"
-
-# Don't rewrite examples, that's bad.
-JAVA_PKG_BSFIX_ALL="no"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="apache-ivy"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Ivy is a free java based dependency manager"
-HOMEPAGE="https://ant.apache.org/ivy/"
-SRC_URI="mirror://apache/ant/ivy/${PV}/${MY_P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-# We cannot build tests yet as there is no org.apache.tools.ant.BuildFileTest packaged anywhere yet.
-RESTRICT="test"
-
-# SLOT to use for all bc dependencies.
-BC_SLOT="1.50"
-
-# There may be additional optional dependencies (commons-logging, commons-lang...)
-CDEPEND="dev-java/jsch:0
- dev-java/bcpg:${BC_SLOT}
- dev-java/ant-core:0
- dev-java/bcpkix:${BC_SLOT}
- dev-java/bcprov:${BC_SLOT}
- dev-java/commons-vfs:0
- dev-java/jakarta-oro:2.0
- dev-java/commons-httpclient:3"
-
-DEPEND=">=virtual/jdk-1.8:*
- test? (
- dev-java/ant-junit:0
- )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
-
- # This stuff needs removing.
- local CLEANUP=(
- doc/reports
- test/triggers
- doc/configuration
- test/repositories
- test/java/org/apache/ivy/core/settings/custom-resolver.jar
- src/example/chained-resolvers/settings/repository/test-1.0.jar
- )
-
- rm -rf "${CLEANUP[@]}" || die
-
- java-ant_rewrite-classpath
- mkdir lib || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-EANT_GENTOO_CLASSPATH="
- jsch
- bcpkix-${BC_SLOT}
- ant-core
- bcpg-${BC_SLOT}
- commons-vfs
- bcprov-${BC_SLOT}
- jakarta-oro-2.0
- commons-httpclient-3
-"
-
-EANT_BUILD_TARGET="/offline jar"
-
-EANT_EXTRA_ARGS="-Dbuild.version=${PV} -Dbundle.version=${PV}"
-
-src_test() {
- java-pkg_jar-from --into lib junit
- ANT_TASKS="ant-junit" eant "/offline test"
-}
-
-src_install() {
- java-pkg_dojar build/artifact/jars/ivy.jar
- java-pkg_register-ant-task
-
- if use doc; then
- java-pkg_dojavadoc build/doc/reports/api
- java-pkg_dohtml -r doc
- fi
-
- use examples && java-pkg_doexamples src/example
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/ant-ivy/ant-ivy-2.5.0-r2.ebuild b/dev-java/ant-ivy/ant-ivy-2.5.0-r2.ebuild
new file mode 100644
index 000000000000..0158c70768f5
--- /dev/null
+++ b/dev-java/ant-ivy/ant-ivy-2.5.0-r2.ebuild
@@ -0,0 +1,197 @@
+# 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.ivy:ivy:2.5.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple java-osgi
+
+DESCRIPTION="Ivy is a free java based dependency manager"
+HOMEPAGE="https://ant.apache.org/ivy/"
+SRC_URI="https://archive.apache.org/dist/ant/ivy/${PV}/apache-ivy-${PV}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ppc64 x86"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+CDEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/bcpg:0
+ dev-java/bcprov:0
+ dev-java/httpcomponents-client
+ dev-java/commons-vfs:2
+ dev-java/httpcore:0
+ dev-java/jakarta-oro:2.0
+ dev-java/jsch:0
+ dev-java/jsch-agent-proxy:0
+ test? (
+ >=dev-java/ant-1.10.14-r3:0[junit,junit4,junitlauncher,testutil]
+ dev-java/hamcrest-core:1.3
+ dev-java/hamcrest-library:1.3
+ dev-java/xmlunit:1
+ )"
+
+# Restrict to jdk:1.8 since java.util.jar.Pack200 was removed.
+DEPEND="${CDEPEND}
+ virtual/jdk:1.8"
+RDEPEND="${CDEPEND}
+ virtual/jre:1.8"
+
+DOCS=( LICENSE NOTICE README.adoc )
+
+S="${WORKDIR}/apache-ivy-${PV}"
+
+JAVA_GENTOO_CLASSPATH="
+ ant
+ bcpg
+ bcprov
+ httpcomponents-client-4
+ commons-vfs-2
+ httpcore
+ jakarta-oro-2.0
+ jsch
+ jsch-agent-proxy
+"
+JAVA_MAIN_CLASS="org.apache.ivy.Main"
+JAVA_SRC_DIR="src/java"
+JAVA_RESOURCE_DIRS="resources/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ ant
+ hamcrest-core-1.3
+ hamcrest-library-1.3
+ junit-4
+ xmlunit-1
+"
+JAVA_TEST_SRC_DIR="test-src/java"
+JAVA_TEST_RESOURCE_DIRS="test"
+JAVA_GENTOO_CLASSPATH_EXTRA="ant-ivy.jar:test.jar:custom-resolver.jar"
+
+# according to 57,60 build-release.xml
+# https://github.com/apache/ant-ivy/commit/c0c8df492d2312c983f50cfdc5841e18177f6f7b
+JAVA_TEST_EXTRA_ARGS="-Divy.cache.ttl.default=1s -Dskip.download=true -Divy.home=/tmp -D/offline=true"
+
+# Several tests require a certain treatment to "generate-bundles":
+# https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L426-L428
+# <ant dir="${basedir}/test/test-repo" target="generate-bundles"/>
+#
+# The procedure is coded in https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/test/test-repo/build.xml#L19-L71
+# but appears too difficult to be reprodused with 'java-pkg-simple.eclass'.
+# So the failing tests will be excluded, saved for a later attempt.
+#
+# Not excluding any test classes results in "Tests run: 1109, Failures: 98"
+# Excluding those test classes listed below leads to "OK (812 tests)"
+JAVA_TEST_EXCLUDES=(
+ # https://github.com/apache/ant-ivy/blob/083e3f685c1fe29092e59c63b87e81d31fc9babe/build.properties#L56
+ # test.class.pattern = *Test
+ "org.apache.ivy.ant.testutil.AntTaskTestCase" # not in scope
+ "org.apache.ivy.core.TestPerformance" # not in scope
+ "org.apache.ivy.util.TestXmlHelper" # not in scope
+ "org.apache.ivy.TestFixture" # not in scope
+ "org.apache.ivy.TestHelper" # not in scope
+ # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L412-L420
+ # <exclude name="**/Abstract*Test.java"/>
+ "org.apache.ivy.util.url.AbstractURLHandlerTest"
+ "org.apache.ivy.plugins.resolver.AbstractDependencyResolverTest"
+ "org.apache.ivy.plugins.matcher.AbstractPatternMatcherTest"
+ # following excluded tests cause test failures
+ "org.apache.ivy.ant.BuildOBRTaskTest" # Tests run: 3, Failures: 2
+ "org.apache.ivy.core.deliver.DeliverTest" # Tests run: 1, Failures: 1
+ "org.apache.ivy.core.module.descriptor.IvyMakePomTest" # Tests run: 1, Failures: 1
+ "org.apache.ivy.core.settings.XmlSettingsParserTest" # Tests run: 29, Failures: 1
+ "org.apache.ivy.osgi.core.AggregatedOSGiResolverTest" # Tests run: 3, Failures: 1
+ "org.apache.ivy.osgi.obr.OBRResolverTest" # Tests run: 16, Failures: 16
+ "org.apache.ivy.osgi.repo.BundleRepoTest" # Tests run: 4, Failures: 3
+ "org.apache.ivy.plugins.parser.m2.PomModuleDescriptorParserTest" # Tests run: 46, Failures: 1
+ "org.apache.ivy.plugins.parser.xml.XmlModuleDescriptorParserTest" # Tests run: 44, Failures: 7
+ "org.apache.ivy.plugins.parser.xml.XmlModuleDescriptorWriterTest" # Tests run: 10, Failures: 1
+ "org.apache.ivy.plugins.parser.xml.XmlModuleUpdaterTest" # Tests run: 14, Failures: 3
+ "org.apache.ivy.plugins.resolver.JarResolverTest" # Tests run: 3, Failures: 3
+ # following excluded tests can pass if run individually
+ "org.apache.ivy.ant.IvyConfigureTest" # OK (14 tests)
+ "org.apache.ivy.IvyTest" # OK (1 test)
+ "org.apache.ivy.MainTest" # OK (12 tests)
+ "org.apache.ivy.plugins.report.XmlReportWriterTest" # OK (3 tests)
+ "org.apache.ivy.plugins.resolver.BintrayResolverTest" # OK (12 tests)
+ "org.apache.ivy.plugins.resolver.ChainResolverTest" # OK (15 tests)
+ "org.apache.ivy.plugins.resolver.FileSystemResolverTest" # OK (27 tests)
+ "org.apache.ivy.plugins.resolver.IBiblioMavenSnapshotsResolutionTest" # OK (1 test)
+ "org.apache.ivy.plugins.resolver.IvyRepResolverTest" # OK (3 tests)
+ "org.apache.ivy.plugins.resolver.Maven2LocalTest" # OK (2 tests)
+ "org.apache.ivy.plugins.resolver.PackagerResolverTest" # OK (3 tests)
+ "org.apache.ivy.plugins.resolver.URLResolverTest" # OK (5 tests)
+ "org.apache.ivy.plugins.trigger.LogTriggerTest" # OK (3 tests)
+ # Without PROPERTIES="test_network", the following test cause additional failures.
+ "org.apache.ivy.core.settings.OnlineXmlSettingsParserTest"
+# "org.apache.ivy.osgi.updatesite.UpdateSiteAndIbiblioResolverTest"
+ "org.apache.ivy.osgi.updatesite.UpdateSiteLoaderTest"
+# "org.apache.ivy.plugins.resolver.IBiblioResolverTest"
+# "org.apache.ivy.plugins.resolver.MirroredURLResolverTest"
+ "org.apache.ivy.util.url.ArtifactoryListingTest"
+# "org.apache.ivy.util.url.BasicURLHandlerTest"
+# "org.apache.ivy.util.url.HttpclientURLHandlerTest"
+)
+
+src_prepare() {
+ default
+
+ mkdir --parents "${JAVA_RESOURCE_DIRS}/META-INF" || die
+ pushd "${JAVA_RESOURCE_DIRS}"
+ cp "${S}"/{NOTICE,LICENSE} META-INF/ || die
+ cp -r "${S}"/src/java/* . || die
+
+ # DEPRECATED: 'ivyconf' element is deprecated, use 'ivysettings' instead
+ # according to 210,221 build.xml and still in the upstream .jar file
+ cp org/apache/ivy/core/settings/ivy{settings,conf}-local.xml || die
+ cp org/apache/ivy/core/settings/ivy{settings,conf}-default-chain.xml || die
+ cp org/apache/ivy/core/settings/ivy{settings,conf}-main-chain.xml || die
+ cp org/apache/ivy/core/settings/ivy{settings,conf}-public.xml || die
+ cp org/apache/ivy/core/settings/ivy{settings,conf}-shared.xml || die
+ cp org/apache/ivy/core/settings/ivy{settings,conf}.xml || die
+
+ find . -type f -name '*.java' -exec rm -rf {} + || die
+ popd || die
+}
+
+src_test() {
+ # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L396-L407
+ # name="build-custom-resolver-jar"
+ JAVA_SRC_DIR="test/custom-classpath"
+ JAVA_JAR_FILENAME="test/java/org/apache/ivy/core/settings/custom-resolver.jar"
+ java-pkg-simple_src_compile
+
+ # Without "license.xml" the tests won't even start. "Tests run: 1109, Failures: 318"
+ jar -cf test.jar \
+ -C test/java org/apache/ivy/plugins/parser/xml/license.xml \
+ -C test/java org/apache/ivy/plugins/parser/m2/license.xml || die
+
+ # Reduce number of failures to "Tests run: 1109, Failures: 98"
+ jar -uf "test.jar" -C test/java . || die
+
+ # Separate *.java files from test resources
+ # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L389-L393
+ mkdir test-src || die
+ cp -r test/java test-src/ || die
+ find test -type f -name '*.java' -exec rm -rf {} + || die
+
+ # https://github.com/apache/ant-ivy/blob/48234fc5ede85a865eb874a96c08472ce1751fd1/build.xml#L430-L438
+ # name="prepare-test-jar-repositories"
+ mkdir test/jar-repos || die
+ jar -cfM "test/jar-repos/jarrepo1.jar" -C test/repositories/1 . || die
+# jar -cfM "test/jar-repos/jarrepo1_subdir.jar" -C test/repositories 1/**/*/ || die
+
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default
+ java-osgi_dojar-fromfile "ant-ivy.jar" "META-INF/MANIFEST.MF" "ant-ivy"
+ use doc && java-pkg_dojavadoc target/api
+ use source && java-pkg_dosrc src/*
+}
diff --git a/dev-java/ant-ivy/files/1.4.1-javadoc.patch b/dev-java/ant-ivy/files/1.4.1-javadoc.patch
deleted file mode 100644
index 4a0b47d8a714..000000000000
--- a/dev-java/ant-ivy/files/1.4.1-javadoc.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -ur ivy-1.4.1.old/build.xml ivy-1.4.1/build.xml
---- ivy-1.4.1.old/build.xml 2007-09-04 02:44:23.000000000 +0300
-+++ ivy-1.4.1/build.xml 2007-09-04 02:44:53.000000000 +0300
-@@ -245,9 +245,7 @@
- </target>
-
- <target name="javadoc">
-- <javadoc destdir="${javadoc.build.dir}">
-- <fileset dir="${src.dir}"/>
-- </javadoc>
-+ <javadoc destdir="${javadoc.build.dir}" sourcepath="${src.dir}" />
- </target>
-
- <target name="get-dxml" description="download dxml doc file from web site">
diff --git a/dev-java/ant-ivy/metadata.xml b/dev-java/ant-ivy/metadata.xml
index 231bfe529dc0..84db44eaed66 100644
--- a/dev-java/ant-ivy/metadata.xml
+++ b/dev-java/ant-ivy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -14,4 +14,9 @@
to a local lib dir, and it does it for you by locating the artifacts of
your dependencies in repositories, such as ibiblio.
</longdescription>
+ <upstream>
+ <remote-id type="github">apache/ant-ivy</remote-id>
+ <doc>https://ant.apache.org/ivy/history/2.5.0/</doc>
+ <bugs-to>https://issues.apache.org/jira/browse/IVY</bugs-to>
+ </upstream>
</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 952a4b9b605c..000000000000
--- a/dev-java/ant-jai/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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.ebuild b/dev-java/ant-javamail/ant-javamail-1.10.9.ebuild
deleted file mode 100644
index 5619e69090d8..000000000000
--- a/dev-java/ant-javamail/ant-javamail-1.10.9.ebuild
+++ /dev/null
@@ -1,18 +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=( "gnu-jaf-1" "oracle-javamail" )
-
-inherit ant-tasks
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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/oracle-javamail:0"
-RDEPEND="${DEPEND}"
diff --git a/dev-java/ant-javamail/metadata.xml b/dev-java/ant-javamail/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-javamail/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 7f521961431b..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..000000000000
--- a/dev-java/ant-jdepend/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 279b33742d1e..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 ~sparc-solaris ~x86-solaris"
diff --git a/dev-java/ant-jmf/metadata.xml b/dev-java/ant-jmf/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-jmf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 5ba0611ed55b..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..000000000000
--- a/dev-java/ant-jsch/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 4e1f18fac3fc..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..000000000000
--- a/dev-java/ant-junit/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 71513c67cad9..000000000000
--- a/dev-java/ant-junit4/ant-junit4-1.10.9.ebuild
+++ /dev/null
@@ -1,37 +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="junit-4"
-
-inherit ant-tasks
-
-KEYWORDS="amd64 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 952a4b9b605c..000000000000
--- a/dev-java/ant-junit4/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 678678ee3bb9..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/dev-java/ant-junitlauncher/metadata.xml b/dev-java/ant-junitlauncher/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-junitlauncher/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 c5ca8815b298..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/dev-java/ant-swing/metadata.xml b/dev-java/ant-swing/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ant-swing/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 f9e728d3b51d..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..000000000000
--- a/dev-java/ant-testutil/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 5cf55ddc8731..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 952a4b9b605c..000000000000
--- a/dev-java/ant-xz/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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..4fdf2d20cd0a
--- /dev/null
+++ b/dev-java/ant/Manifest
@@ -0,0 +1,2 @@
+DIST apache-ant-1.10.14-src.tar.xz 3779488 BLAKE2B 40091c208c795d03b8f34656594cbf6c414f345cdacf637ece89a19a3ab0373cd8d65c342e0c4603569f9120f8f99a0b2eae8df874e6183649b39d7b88c614b8 SHA512 52936dfceb808a11dc842d2dc957a031508689270b59a2a6e3589f40465f6fa1aae87b189737cdd83eadfaf41b0c3f1ba2579bbd07591153107a5a27422521bd
+DIST apache-ant-1.10.14-src.tar.xz.asc 833 BLAKE2B 4f8b1bb8bbd6d77b6e9eedf86818d42bb448e1b394e00590163e96967e36fe8e8e73e3f4fbf3b5bd1dab51cf69a39b99409bd8604cb7695cd6ae875ff13344a9 SHA512 2b91eda436210247ba39b82ba8aa1859051cf9baaf8ac8b551052e7986aeaa03c8b594347b8a734e08d12d8e270e29bf89b814562550a418abd0d2393ad4ac66
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..e0ad3fce1fed
--- /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.xz
+ verify-sig? ( https://downloads.apache.org/ant/source/apache-${P}-src.tar.xz.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 335f26ca2924..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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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 0caea867de6f..1c03ec86e251 100644
--- a/dev-java/ant/metadata.xml
+++ b/dev-java/ant/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -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-runtime/Manifest b/dev-java/antlr-runtime/Manifest
new file mode 100644
index 000000000000..bb8fc82c34c3
--- /dev/null
+++ b/dev-java/antlr-runtime/Manifest
@@ -0,0 +1,2 @@
+DIST antlr-4.9.3.tar.gz 4640242 BLAKE2B fb58f5e533051cb2c439c32f0462c1d463c99df862ba7e1a37a1c61378ab36a9edb9525c2a342de5b517da6f02d8291de5976c550932314f3464aad1a778afb9 SHA512 61452404c9639b5a0908cda16605f17c0fed0c9adfc3278c7408f9971420e9d1fe8f9e974e0826c2e3e780fdd83324094c0246cd5b28fa63f5686b094ea08127
+DIST antlr-runtime-3.5.3-sources.jar 204572 BLAKE2B 8f4493497cbfef613028d4847d1a68a0fdd29f5bf80c3a72b33093aa048409fb740aa95e16e7ceb279b939fabf3a617ccc8046ef6b879eafdb4ae14599951799 SHA512 fbfb656b32aa40ce731996774c9a5df28e2dbf67d097a834b39ef137555ff618c26a881af599191fb75366dc3824e281e93a32dbed65d49cc39e2017d836ae95
diff --git a/dev-java/antlr-runtime/antlr-runtime-3.5.3.ebuild b/dev-java/antlr-runtime/antlr-runtime-3.5.3.ebuild
new file mode 100644
index 000000000000..5a2591a02713
--- /dev/null
+++ b/dev-java/antlr-runtime/antlr-runtime-3.5.3.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom antlr-runtime-3.5.3.pom --download-uri https://repo1.maven.org/maven2/org/antlr/antlr-runtime/3.5.3/antlr-runtime-3.5.3-sources.jar --slot 3.5 --keywords "~amd64 ~arm ~arm64~ppc64 ~x86" --ebuild antlr-runtime-3.5.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.antlr:antlr-runtime:3.5.3"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="ANTLR 3 Runtime"
+HOMEPAGE="https://www.antlr3.org/"
+SRC_URI="https://repo1.maven.org/maven2/org/antlr/${PN}/${PV}/${P}-sources.jar"
+
+LICENSE="BSD"
+SLOT="3.5"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: ${P}.pom
+# org.antlr:stringtemplate:3.2.1 -> >=dev-java/stringtemplate-3.2.1:0
+
+CP_DEPEND="
+ >=dev-java/stringtemplate-3.2.1:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
diff --git a/dev-java/antlr-runtime/antlr-runtime-4.9.3.ebuild b/dev-java/antlr-runtime/antlr-runtime-4.9.3.ebuild
new file mode 100644
index 000000000000..cf26c16eb71e
--- /dev/null
+++ b/dev-java/antlr-runtime/antlr-runtime-4.9.3.ebuild
@@ -0,0 +1,130 @@
+# 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="org.antlr:antlr4-runtime:4.9.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="${PN%-runtime}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="ANTLR 4 Runtime"
+HOMEPAGE="https://www.antlr.org/"
+SRC_URI="https://github.com/antlr/antlr4/archive/${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ ~dev-java/antlr-tool-${PV}:${SLOT}
+ dev-java/jol-core:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/${MY_PN}4-${PV}"
+
+JAVA_SRC_DIR="runtime/Java/src"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ antlr-tool-${SLOT}
+ jol-core
+"
+JAVA_TEST_SRC_DIR=(
+ runtime-testsuite/test
+ runtime-testsuite/annotations
+)
+JAVA_TEST_RESOURCE_DIRS=(
+ runtime-testsuite/resources
+)
+
+src_prepare() {
+ java-pkg_clean
+ eapply "${FILESDIR}/${PV}-test-fixes.patch"
+ java-pkg-2_src_prepare
+}
+
+src_test() {
+ # Build classpath for tests
+ # The JAR created during src_compile must appear in the classpath *before*
+ # any dependencies to ensure that *it* is the JAR being tested; otherwise,
+ # because the test suite depends on antlr-tool, which depends on this
+ # package, the copy of this package's JAR installed on the system would be
+ # tested instead when it appears earlier in the classpath, which might
+ # cause test failures when the version being built differs from the version
+ # already installed on the system, like https://bugs.gentoo.org/834138
+ local CP="${S}/${JAVA_JAR_FILENAME}"
+ local test_dep res_dir
+ for test_dep in ${JAVA_TEST_GENTOO_CLASSPATH}; do
+ CP+=":$(java-pkg_getjars --with-dependencies "${test_dep}")"
+ done
+ for res_dir in "${JAVA_TEST_RESOURCE_DIRS[@]}"; do
+ CP+=":${res_dir}"
+ done
+
+ pushd "${JAVA_TEST_SRC_DIR[0]}" > /dev/null ||
+ die "Failed to enter test source directory for ${PN}"
+
+ einfo "Removing tests for non-Java runtimes ..."
+ find org/antlr/v4/test/runtime/* -maxdepth 0 -type d \
+ -not -name category -not -name descriptors -not -name java \
+ -exec einfo " {}" \; -exec rm -r "{}" + ||
+ die "Failed to remove tests for non-Java runtimes"
+
+ einfo "Generating ANTLR 4 parsers for tests ..."
+ local java_exe="$(java-config -J)"
+ local g4_files=( $(find * -name "*.g4") )
+ local file
+ for file in "${g4_files[@]}"; do
+ local java_pkg="${file%/*.g4}"
+ java_pkg="${java_pkg//\//.}"
+ "${java_exe}" -cp "${CP}" org.antlr.v4.Tool \
+ -visitor -package "${java_pkg}" "${file}" ||
+ die "Failed to generate ANTLR 4 parser from ${file}"
+ done
+
+ # Create a list of tests to run
+ # https://github.com/antlr/antlr4/blob/4.9.3/runtime-testsuite/pom.xml#L100
+ # Excluding classes with "No runnable methods"
+ local TESTS=$(find * -type f -name "Test*.java" \
+ -not -name "TestContext.java" \
+ -not -name "TestOutputReading.java"
+ )
+ TESTS="${TESTS//.java}"
+ TESTS="${TESTS//\//.}"
+
+ popd > /dev/null || die "Failed to leave test source directory for ${PN}"
+
+ local classes="target/classes"
+
+ # Compile the annotation processor of @CommentHasStringValue
+ # before the test sources (requires tools.jar)
+ ejavac -d "${classes}" -cp "${CP}:$(java-config -t)" \
+ $(find runtime-testsuite/{annotations,processors} -name "*.java")
+ local processor_cp="${classes}:runtime-testsuite/processors/resources"
+
+ # Compile Java test sources, and process @CommentHasStringValue
+ # annotations at the same time
+ local javac_extra_args=()
+ if ver_test "$(java-config -g PROVIDES_VERSION)" -ge 17; then
+ javac_extra_args+=(
+ -J--add-opens=jdk.compiler/com.sun.tools.javac.{main,model,tree,util}=ALL-UNNAMED
+ )
+ fi
+ ejavac -d "${classes}" -cp "${CP}:${processor_cp}" \
+ "${javac_extra_args[@]}" \
+ $(find "${JAVA_TEST_SRC_DIR[@]}" -name "*.java")
+
+ ejunit4 -classpath "${classes}:${CP}" ${TESTS}
+}
diff --git a/dev-java/antlr-runtime/files/4.9.3-test-fixes.patch b/dev-java/antlr-runtime/files/4.9.3-test-fixes.patch
new file mode 100644
index 000000000000..9cb6884ba194
--- /dev/null
+++ b/dev-java/antlr-runtime/files/4.9.3-test-fixes.patch
@@ -0,0 +1,26 @@
+From 3eabbddff69dcbcaf9a59f407cc8bef4be8e215b Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Thu, 3 Feb 2022 11:51:53 -0800
+Subject: [PATCH] Use 1.8 as javac -source/-target for running tests on Java 17
+
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ .../test/org/antlr/v4/test/runtime/java/BaseJavaTest.java | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java b/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java
+index cc03bdc11..82061135e 100644
+--- a/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java
++++ b/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java
+@@ -137,7 +137,7 @@ public class BaseJavaTest extends BaseRuntimeTestSupport implements RuntimeTestS
+ fileManager.getJavaFileObjectsFromFiles(files);
+
+ Iterable<String> compileOptions =
+- Arrays.asList("-g", "-source", "1.6", "-target", "1.6", "-implicit:class", "-Xlint:-options", "-d", getTempDirPath(), "-cp", getTempDirPath() + PATH_SEP + CLASSPATH);
++ Arrays.asList("-g", "-source", "1.8", "-target", "1.8", "-implicit:class", "-Xlint:-options", "-d", getTempDirPath(), "-cp", getTempDirPath() + PATH_SEP + CLASSPATH);
+
+ JavaCompiler.CompilationTask task =
+ compiler.getTask(null, fileManager, null, compileOptions, null,
+--
+2.34.1
+
diff --git a/dev-java/antlr-runtime/metadata.xml b/dev-java/antlr-runtime/metadata.xml
new file mode 100644
index 000000000000..aa2f0f4c744d
--- /dev/null
+++ b/dev-java/antlr-runtime/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>
+ <longdescription>
+ A framework for constructing recognizers, compilers, and translators from grammatical descriptions containing Java, C#, C++, or Python actions.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/antlr-tool/Manifest b/dev-java/antlr-tool/Manifest
new file mode 100644
index 000000000000..3bd6f15319d5
--- /dev/null
+++ b/dev-java/antlr-tool/Manifest
@@ -0,0 +1,4 @@
+DIST antlr-3.5.3.tar.gz 6752328 BLAKE2B 8ebd098c9475122cddcadd5991b9f882b7fda5868ad979b29c9f4dab97e39cd31e7fc943476c3a854f3e3aee9c1c56384b7fcc893f87548482af5d5d0839fd30 SHA512 c565e1ade7a62bb127df707015afded9a9cea54cbf5488730a327671c57e8718f93f76c4fa28edd856810cb9c7ccbcb27b53a7c8f7e3efc8169e64cfcc535a4c
+DIST antlr-4.9.3.tar.gz 4640242 BLAKE2B fb58f5e533051cb2c439c32f0462c1d463c99df862ba7e1a37a1c61378ab36a9edb9525c2a342de5b517da6f02d8291de5976c550932314f3464aad1a778afb9 SHA512 61452404c9639b5a0908cda16605f17c0fed0c9adfc3278c7408f9971420e9d1fe8f9e974e0826c2e3e780fdd83324094c0246cd5b28fa63f5686b094ea08127
+DIST antlr-tool-3.5.3-sources.jar 949247 BLAKE2B f7afa52faae8324093206b7e56dfda58a79815cc2c13baca1cb93b3424c8b310325885ca8c86f0ca8a016a73e30740c2fa5f34ce71ed3a6cfc5fdeb6f2c4a9a7 SHA512 cfbc612c0257c4f0e09451cd76fe904680b6af132596696f2ef9c4e21dcfc53d53501e4d4d2b1c1cf4391355fa3766cf8dabc718dc3580728d24db3ebc14e696
+DIST antlr-tool-4.9.3-sources.jar 961749 BLAKE2B 294c7ba6dff9a1039d3e570d7d49f46a564302d1e7a25ac9f662a2c293cbabadd6a5a4a94d026c4e5fcca37c407e104956badbd1cbbf71b957e464dc67cf823e SHA512 7d70e80714b673eb8301def5e66a7133b2ac477e3cc219e37877ef9df673e0599a1148a8c1929ca8eab081d4e7375c9079241765a1f38832b21cfe8608ef4429
diff --git a/dev-java/antlr-tool/antlr-tool-3.5.3-r1.ebuild b/dev-java/antlr-tool/antlr-tool-3.5.3-r1.ebuild
new file mode 100644
index 000000000000..1997ce8c081f
--- /dev/null
+++ b/dev-java/antlr-tool/antlr-tool-3.5.3-r1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Artifact ID for antlr-tool is 'antlr'
+# https://github.com/antlr/antlr3/blob/3.5.3/tool/pom.xml#L4
+MAVEN_ID="org.antlr:antlr:3.5.3"
+
+JAVA_PKG_IUSE="doc source test"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="${PN%-tool}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="The ANTLR 3 tool"
+HOMEPAGE="https://www.antlr3.org/"
+# Maven Central sources JAR for *.java sources pre-generated from *.g files;
+# the source generation requires this package itself.
+# Tarball for resources, the test suite, and DOCS files
+SRC_URI="
+ https://repo1.maven.org/maven2/org/antlr/antlr/${PV}/${MY_P}-sources.jar -> ${P}-sources.jar
+ https://github.com/antlr/antlr3/archive/${PV}.tar.gz -> ${MY_P}.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="3.5"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CP_DEPEND="
+ ~dev-java/antlr-runtime-${PV}:${SLOT}
+ dev-java/stringtemplate:4
+"
+
+BDEPEND="
+ app-arch/unzip
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}"
+TARBALL_S="${S}/${MY_PN}3-${PV}"
+
+JAVA_SRC_DIR="org"
+JAVA_RESOURCE_DIRS=( "${TARBALL_S}/tool/src/main/resources" )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="${TARBALL_S}/tool/src/test/java"
+
+DOCS=( "${TARBALL_S}/tool/CHANGES.txt" )
+PATCHES=( "${FILESDIR}/antlr-tool-3.5.3-java21.patch" )
+
+src_prepare() {
+ java-pkg_clean
+ default #780585
+ java-pkg-2_src_prepare
+
+ # Some tests fail under Java 8 in ways that probably aren't limited
+ # to the tests. This is bad but upstream is never going to update
+ # 3.5. At the time of writing, we only use it to build 4 anyway.
+ rm -v "${JAVA_TEST_SRC_DIR}/org/antlr/test/"Test{DFAConversion,SemanticPredicates,TopologicalSort}.java || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ einstalldocs # https://bugs.gentoo.org/789582
+}
diff --git a/dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild b/dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild
new file mode 100644
index 000000000000..2891b009c53f
--- /dev/null
+++ b/dev-java/antlr-tool/antlr-tool-4.9.3-r2.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Artifact ID for antlr-tool is 'antlr4'
+# https://github.com/antlr/antlr4/blob/4.9.3/tool/pom.xml#L14
+MAVEN_ID="org.antlr:antlr4:4.9.3"
+
+JAVA_PKG_IUSE="doc source test"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="${PN%-tool}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="The ANTLR 4 grammar compiler"
+HOMEPAGE="https://www.antlr.org/"
+# Maven Central sources JAR for tool/src/org/antlr/v4/unicode/UnicodeData.java,
+# which requires string-template-maven-plugin to generate; tarball for the rest
+SRC_URI="
+ https://github.com/antlr/antlr4/archive/${PV}.tar.gz -> ${MY_P}.tar.gz
+ https://repo1.maven.org/maven2/org/antlr/antlr4/${PV}/antlr4-${PV}-sources.jar -> ${P}-sources.jar
+"
+
+LICENSE="BSD"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CP_DEPEND="
+ ~dev-java/antlr-runtime-${PV}:${SLOT}
+ dev-java/antlr-runtime:3.5
+ dev-java/jakarta-json-api:1
+ >=dev-java/icu4j-74.2-r1:0
+ dev-java/stringtemplate:4
+ dev-java/treelayout:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ dev-java/antlr-tool:3.5
+ test? (
+ dev-java/jol-core:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/${MY_PN}4-${PV}"
+
+JAVA_SRC_DIR=(
+ tool/src
+ ../src/org # For UnicodeData.java
+)
+JAVA_RESOURCE_DIRS=( tool/resources )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,jol-core"
+JAVA_TEST_SRC_DIR=(
+ tool-testsuite/test
+ # The runtime test suite is used as a library for tool test suite
+ runtime-testsuite/{annotations,test}
+)
+JAVA_TEST_RESOURCE_DIRS=(
+ # Some resources are mixed with test source files
+ "${JAVA_TEST_SRC_DIR[0]}"
+)
+
+pkg_setup() {
+ java-pkg-2_pkg_setup
+ MY_JAVA="$(java-config -J)"
+}
+
+src_prepare() {
+ java-pkg_clean
+ eapply "${FILESDIR}/${PV}-test-fixes.patch"
+ java-pkg-2_src_prepare
+}
+
+src_compile() {
+ einfo "Generating ANTLR 3 parsers"
+ "${MY_JAVA}" -cp "$(java-pkg_getjars \
+ --build-only --with-dependencies antlr-tool-3.5)" \
+ org.antlr.Tool $(find "${JAVA_SRC_DIR[@]}" -name "*.g") ||
+ die "Failed to generate ANTLR 3 parsers"
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # Build classpath for tests
+ local test_deps=(
+ "${JAVA_TEST_GENTOO_CLASSPATH}"
+ antlr-runtime-${SLOT}
+ antlr-runtime-3.5
+ jakarta-json-api-1
+ icu4j
+ stringtemplate-4
+ treelayout
+ )
+ local CP="${S}/${JAVA_JAR_FILENAME}"
+ for test_dep in "${test_deps[@]}"; do
+ CP+=":$(java-pkg_getjars --with-dependencies "${test_dep}")"
+ done
+ for res_dir in "${JAVA_TEST_RESOURCE_DIRS[@]}"; do
+ CP+=":${res_dir}"
+ done
+
+ einfo "Generating ANTLR 4 parsers for tests"
+ pushd runtime-testsuite/test > /dev/null ||
+ die "Failed to enter runtime test source directory"
+ g4_files=( $(find * -name "*.g4") )
+ for file in "${g4_files[@]}"; do
+ java_pkg="${file%/*.g4}"
+ java_pkg="${java_pkg//\//.}"
+ "${MY_JAVA}" -cp "${CP}" org.antlr.v4.Tool \
+ -visitor -package "${java_pkg}" "${file}" ||
+ die "Failed to generate ANTLR 4 parser from ${file}"
+ done
+ popd > /dev/null || die "Failed to leave runtime test source directory"
+
+ # Compile Java test sources
+ local classes="target/classes"
+ ejavac -d "${classes}" -cp "${CP}" \
+ $(find "${JAVA_TEST_SRC_DIR[@]}" -name "*.java")
+
+ # Create a list of tests to run
+ pushd "${JAVA_TEST_SRC_DIR[0]}" > /dev/null ||
+ die "Failed to enter test source directory for ${PN}"
+ local TESTS=$(find * -type f \
+ \( -name "Test*.java" -o -name "*Test.java" \) \
+ -not -name "BaseJavaToolTest.java" # No runnable methods
+ )
+ TESTS="${TESTS//.java}"
+ TESTS="${TESTS//\//.}"
+ popd > /dev/null || die "Failed to leave test source directory for ${PN}"
+
+ ejunit4 -classpath "${classes}:${CP}" ${TESTS}
+}
diff --git a/dev-java/antlr-tool/files/4.9.3-test-fixes.patch b/dev-java/antlr-tool/files/4.9.3-test-fixes.patch
new file mode 100644
index 000000000000..9cb6884ba194
--- /dev/null
+++ b/dev-java/antlr-tool/files/4.9.3-test-fixes.patch
@@ -0,0 +1,26 @@
+From 3eabbddff69dcbcaf9a59f407cc8bef4be8e215b Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Thu, 3 Feb 2022 11:51:53 -0800
+Subject: [PATCH] Use 1.8 as javac -source/-target for running tests on Java 17
+
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ .../test/org/antlr/v4/test/runtime/java/BaseJavaTest.java | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java b/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java
+index cc03bdc11..82061135e 100644
+--- a/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java
++++ b/runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseJavaTest.java
+@@ -137,7 +137,7 @@ public class BaseJavaTest extends BaseRuntimeTestSupport implements RuntimeTestS
+ fileManager.getJavaFileObjectsFromFiles(files);
+
+ Iterable<String> compileOptions =
+- Arrays.asList("-g", "-source", "1.6", "-target", "1.6", "-implicit:class", "-Xlint:-options", "-d", getTempDirPath(), "-cp", getTempDirPath() + PATH_SEP + CLASSPATH);
++ Arrays.asList("-g", "-source", "1.8", "-target", "1.8", "-implicit:class", "-Xlint:-options", "-d", getTempDirPath(), "-cp", getTempDirPath() + PATH_SEP + CLASSPATH);
+
+ JavaCompiler.CompilationTask task =
+ compiler.getTask(null, fileManager, null, compileOptions, null,
+--
+2.34.1
+
diff --git a/dev-java/antlr-tool/files/antlr-tool-3.5.3-java21.patch b/dev-java/antlr-tool/files/antlr-tool-3.5.3-java21.patch
new file mode 100644
index 000000000000..2e196df96ef9
--- /dev/null
+++ b/dev-java/antlr-tool/files/antlr-tool-3.5.3-java21.patch
@@ -0,0 +1,11 @@
+bug #919481
+--- a/org/antlr/codegen/templates/Java/ST.stg
++++ b/org/antlr/codegen/templates/Java/ST.stg
+@@ -32,6 +32,7 @@
+ @outputFile.imports() ::= <<
+ <@super.imports()>
+ import org.antlr.stringtemplate.*;
++import org.antlr.stringtemplate.StringTemplate;
+ import org.antlr.stringtemplate.language.*;
+ import java.util.HashMap;
+ >>
diff --git a/dev-java/antlr-tool/metadata.xml b/dev-java/antlr-tool/metadata.xml
new file mode 100644
index 000000000000..61e37d49ba13
--- /dev/null
+++ b/dev-java/antlr-tool/metadata.xml
@@ -0,0 +1,12 @@
+<?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">antlr/antlr4</remote-id>
+ <remote-id type="github">antlr/antlr3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/antlr/Manifest b/dev-java/antlr/Manifest
index b36664559005..1033fe86e07b 100644
--- a/dev-java/antlr/Manifest
+++ b/dev-java/antlr/Manifest
@@ -1,9 +1,5 @@
DIST antlr-2.7.7.tar.gz 1816180 BLAKE2B 3a9a51070f8651befeb4d22be344b544e119db34a78522828c2ffc3c481c14b9c7784f0a9997a61f6faedde5b6d1fe12214cfd84fb274f7065f3ffe6a44abf1c SHA512 faa72d2ddcba434ef1233e70c1549e63eba67c00793966322e821cf7f015cccb804448cb92d8fbef0429f59928fad65ec954f8ffbda0acbb8e983de0806d349d
DIST antlr-3.2.jar 1928009 BLAKE2B 9c56b0142abdb7d0caabebbae12618a665f91001e2f472519549a65b8601b81fcca485898c7420087a7b631351eb26e4b98589d7284960efcc3c65155919fd2a SHA512 25a61404c4b41e48eeaed49d41122f9400092248a10eb776d75ce3513295870eca1acc4b06c74925284a27cc64ca0506e34de39fb91996f09727cc5cc72dd9a6
DIST antlr-3.2.tar.gz 837320 BLAKE2B 3addcfed45e67a7f8f3841a890be418626d93229dc326fe4670c6b145a457203a26f01723695573692c65bb6c376349a8d8cd852b339b1f6da7b71a52e14bb4f SHA512 8984221cd89253c033a4596dd56cd51b297393a53b4682f5ab401172745d343371bf0d45417fa286ce972add1b4e474f1f3091fa1345158dbfc040702d61607c
-DIST antlr-3.5.2-complete.jar 2456317 BLAKE2B d9afa08ad98dbff16d30425b97a0ddac7402055916e6a7dd290c3b9a2b26a4751c02f405d8d13c186333430c370c94bd73419b14c8e46df2971f68536cc484a0 SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1
-DIST antlr-3.5.2.tar.gz 6927126 BLAKE2B 1907229549434dfea6ef1fa915137a2f733bd61f0a40aacb131689df619d1c92e125453ec3d1febc5d92da1841ffbde060af196cff1ca8fb6f4684600375e161 SHA512 e2a0520093fb2a77dcd9d44f26a9fdd612dceaffb398c53b2b8cd29f4630830647ede29e8dd55b434cb2c165b0fd1d77968ec6e6de0798f14d9cdfd9e6fccd99
-DIST antlr-4.5.1-complete.jar 1478820 BLAKE2B 7f6ab8d1bad6b75ede4930fe594a3302bd2bdeac8426d65d0a16610a8da4dd3bda23db68b7feafc90449bda5032115ad0f0dbe7c376c4095cb4ccac3e7a70e84 SHA512 1109087c44706694d75a7f88f6ce96e8653467d5721505db747e7e70a4f40a24469b1fb3ffcb327819bba1548b0025412e46a11a41e329b0ecf847cb1094238c
-DIST antlr-4.5.1.tar.gz 6158475 BLAKE2B 17cf84a60393c786d8b8addd93b87998178cea55f2a6bcc4ca244655a6d2aacc15226111b00fc0a8a6424f8a7c6eb3bfa49172e3b2149714a5c0c6ad69943cd9 SHA512 949306b0ee87a0c002664ee7ac0f32c43385c501b4e28f181417559ce09b07cc12a8441c3bb81f8a72feba3d4ccc693a3c03bcccad7fc81223cddb19e10468a9
-DIST antlr-4.5.3-complete.jar 1485121 BLAKE2B 84d41b17bd30dfad7a79e9759802c76d986299cc592c7b2c859225ed00989bb2709b14635ee40c8ecfe79e2441ecb697b2d17b7e6e789a7549868b93a3876f77 SHA512 53dcadf3007c9bdbeb391ea72fb9bab7c086fa0b9d1d93b83050b2ebb726c2f52743b5ba944c68f6da513d915ab5e8721676d74d823c32484928ccad2a28f1e4
-DIST antlr-4.5.3.tar.gz 6760401 BLAKE2B d436b4a964c527e230912a0ba23146af199478570cf5491eadeb5025e814642658cc71d71e6a09b5df3cc18e9b8991abf930cab70677d117a112e0922e046e07 SHA512 d0e61baebb338e5e4e8eaf87aa6ef52a568ec51bc86bc07acf8f82be0c173ea4f0f85978dfd034c2642505888c0849663f6b6fb030c4c19e0571f29277fb54f7
+DIST antlr-3.5.3.tar.gz 6752328 BLAKE2B 8ebd098c9475122cddcadd5991b9f882b7fda5868ad979b29c9f4dab97e39cd31e7fc943476c3a854f3e3aee9c1c56384b7fcc893f87548482af5d5d0839fd30 SHA512 c565e1ade7a62bb127df707015afded9a9cea54cbf5488730a327671c57e8718f93f76c4fa28edd856810cb9c7ccbcb27b53a7c8f7e3efc8169e64cfcc535a4c
+DIST antlr-4.9.3.tar.gz 4640242 BLAKE2B fb58f5e533051cb2c439c32f0462c1d463c99df862ba7e1a37a1c61378ab36a9edb9525c2a342de5b517da6f02d8291de5976c550932314f3464aad1a778afb9 SHA512 61452404c9639b5a0908cda16605f17c0fed0c9adfc3278c7408f9971420e9d1fe8f9e974e0826c2e3e780fdd83324094c0246cd5b28fa63f5686b094ea08127
diff --git a/dev-java/antlr/antlr-2.7.7-r7.ebuild b/dev-java/antlr/antlr-2.7.7-r7.ebuild
deleted file mode 100644
index dfa69c648825..000000000000
--- a/dev-java/antlr/antlr-2.7.7-r7.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A parser generator for many languages"
-HOMEPAGE="https://www.antlr2.org/"
-SRC_URI="https://www.antlr2.org/download/${P}.tar.gz"
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="examples source"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="${S}/${PN}"
-
-java_prepare() {
- java-pkg_clean
-
- # Delete build files from examples.
- find examples \( -name Makefile.in -o -name shiplist \) -delete || die
-}
-
-src_configure() {
- : # Avoid configure script.
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher antlr --main antlr.Tool
- dodoc {CHANGES,README}.txt
-
- use doc && java-pkg_dohtml -r doc/*
- use examples && java-pkg_doexamples examples/java
- use source && java-pkg_dosrc antlr
-}
diff --git a/dev-java/antlr/antlr-2.7.7-r9.ebuild b/dev-java/antlr/antlr-2.7.7-r9.ebuild
index 5b7e3a5f797a..3621f5776b75 100644
--- a/dev-java/antlr/antlr-2.7.7-r9.ebuild
+++ b/dev-java/antlr/antlr-2.7.7-r9.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://www.antlr2.org/download/${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="examples"
RDEPEND=">=virtual/jre-1.8:*"
diff --git a/dev-java/antlr/antlr-3.2-r1.ebuild b/dev-java/antlr/antlr-3.2-r1.ebuild
deleted file mode 100644
index fba666dc5ad6..000000000000
--- a/dev-java/antlr/antlr-3.2-r1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc test"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A parser generator for many languages"
-HOMEPAGE="https://www.antlr3.org/"
-SRC_URI="https://www.antlr3.org/download/${P}.tar.gz
- https://www.antlr3.org/download/${P}.jar" # Prebuilt version needed.
-
-LICENSE="BSD"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-RESTRICT="!test? ( test )"
-
-CDEPEND=">=dev-java/antlr-2.7.7-r7:0
- dev-java/stringtemplate:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8:*
- test? ( dev-java/junit:4 )"
-
-PATCHES=(
- # These fixes have been applied in 3.5.
- "${FILESDIR}/${PV}-test-fixes.patch"
- "${FILESDIR}/${PV}-java-8.patch"
-)
-
-S="${WORKDIR}/${P}"
-JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar"
-JAVA_GENTOO_CLASSPATH="antlr,stringtemplate"
-
-src_unpack() {
- unpack ${P}.tar.gz
-}
-
-src_prepare() {
- default
- java-pkg_clean
-
- # Some tests fail under Java 8 in ways that probably aren't limited
- # to the tests. This is bad but upstream is never going to update
- # 3.2 even though other projects still rely on it. If any issues
- # arise, we can only put pressure on those projects to upgrade.
- if java-pkg_is-vm-version-ge 1.8; then
- rm -v tool/src/test/java/org/antlr/test/Test{DFAConversion,SemanticPredicates,TopologicalSort}.java || die
- fi
-
- # 3.2 has strange hidden files.
- find -type f -name "._*.*" -delete || die
-}
-
-src_compile() {
- cd "${S}/runtime/Java/src/main" || die
- JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" java-pkg-simple_src_compile
-
- cd "${S}/tool/src/main" || die
-
- local G; for G in antlr codegen antlr.print assign.types buildnfa define; do # from pom.xml
- antlr -o antlr2/org/antlr/grammar/v2/{,${G}.g} || die
- done
-
- # We have applied a patch to fix this version under Java 8. Trouble
- # is that we need to run a prebuilt version before we can build our
- # own and that version doesn't have the fix applied. We work around
- # this by building just the offending class against the prebuilt
- # version and then putting them together in the classpath. That
- # isn't all. Due to a compiler limitation that Chewi doesn't fully
- # understand, this class cannot be compiled by itself without a
- # couple of tweaks that have been applied in the Java 8 patch.
- ejavac -classpath "${DISTDIR}/${P}.jar" java/org/antlr/tool/CompositeGrammar.java
-
- java -classpath "java:${DISTDIR}/${P}.jar" org.antlr.Tool $(find antlr3 -name "*.g") || die
- JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
- java-pkg_addres "${S}/${PN}-tool.jar" resources
-}
-
-src_install() {
- java-pkg_dojar ${PN}-{runtime,tool}.jar
- java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.Tool
- use doc && java-pkg_dojavadoc runtime/Java/src/main/target/api
-}
-
-src_test() {
- cd tool/src/test/java || die
- local CP=".:${S}/${PN}-runtime.jar:${S}/${PN}-tool.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
-
- local TESTS=$(find * -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/antlr/antlr-3.2-r2.ebuild b/dev-java/antlr/antlr-3.2-r2.ebuild
new file mode 100644
index 000000000000..9b58f9bff97e
--- /dev/null
+++ b/dev-java/antlr/antlr-3.2-r2.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc test"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A parser generator for many languages"
+HOMEPAGE="https://www.antlr3.org/"
+SRC_URI="https://www.antlr3.org/download/${P}.tar.gz
+ https://www.antlr3.org/download/${P}.jar" # Prebuilt version needed.
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+RESTRICT="!test? ( test )"
+
+CP_DEPEND=">=dev-java/antlr-2.7.7-r7:0
+ dev-java/stringtemplate:0"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:4 )"
+
+PATCHES=(
+ # These fixes have been applied in 3.5.
+ "${FILESDIR}/${PV}-test-fixes.patch"
+ "${FILESDIR}/${PV}-java-8.patch"
+ "${FILESDIR}/antlr-3.2-java21.patch"
+)
+
+JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar"
+
+src_unpack() {
+ unpack ${P}.tar.gz
+}
+
+src_prepare() {
+ default
+ java-pkg_clean
+
+ # Some tests fail under Java 8 in ways that probably aren't limited
+ # to the tests. This is bad but upstream is never going to update
+ # 3.2 even though other projects still rely on it. If any issues
+ # arise, we can only put pressure on those projects to upgrade.
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 1.8; then
+ rm -v tool/src/test/java/org/antlr/test/Test{DFAConversion,SemanticPredicates,TopologicalSort}.java || die
+ fi
+
+ # 3.2 has strange hidden files.
+ find -type f -name "._*.*" -delete || die
+}
+
+src_compile() {
+ cd "${S}/runtime/Java/src/main" || die
+ JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" java-pkg-simple_src_compile
+
+ cd "${S}/tool/src/main" || die
+
+ local G; for G in antlr codegen antlr.print assign.types buildnfa define; do # from pom.xml
+ antlr -o antlr2/org/antlr/grammar/v2/{,${G}.g} || die
+ done
+
+ # We have applied a patch to fix this version under Java 8. Trouble
+ # is that we need to run a prebuilt version before we can build our
+ # own and that version doesn't have the fix applied. We work around
+ # this by building just the offending class against the prebuilt
+ # version and then putting them together in the classpath. That
+ # isn't all. Due to a compiler limitation that Chewi doesn't fully
+ # understand, this class cannot be compiled by itself without a
+ # couple of tweaks that have been applied in the Java 8 patch.
+ ejavac -classpath "${DISTDIR}/${P}.jar" java/org/antlr/tool/CompositeGrammar.java
+
+ java -classpath "java:${DISTDIR}/${P}.jar" org.antlr.Tool $(find antlr3 -name "*.g") || die
+ JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
+ java-pkg_addres "${S}/${PN}-tool.jar" resources
+}
+
+src_install() {
+ java-pkg_dojar ${PN}-{runtime,tool}.jar
+ java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.Tool
+ use doc && java-pkg_dojavadoc runtime/Java/src/main/target/api
+}
+
+src_test() {
+ cd tool/src/test/java || die
+ local CP=".:${S}/${PN}-runtime.jar:${S}/${PN}-tool.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
+
+ local TESTS=$(find * -name "Test*.java")
+ TESTS="${TESTS//.java}"
+ TESTS="${TESTS//\//.}"
+
+ ejavac -classpath "${CP}" $(find -name "*.java")
+ ejunit4 -classpath "${CP}" ${TESTS}
+}
diff --git a/dev-java/antlr/antlr-3.5.2-r1.ebuild b/dev-java/antlr/antlr-3.5.2-r1.ebuild
deleted file mode 100644
index 0c83334bc403..000000000000
--- a/dev-java/antlr/antlr-3.5.2-r1.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A parser generator for many languages"
-HOMEPAGE="https://www.antlr3.org/"
-SRC_URI="https://github.com/${PN}/${PN}3/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://www.antlr3.org/download/${P}-complete.jar" # Prebuilt version needed.
-LICENSE="BSD"
-SLOT="3.5"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/stringtemplate:4"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${PN}3-${PV}"
-JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar"
-JAVA_GENTOO_CLASSPATH="stringtemplate-4"
-PATCHES=(
- "${FILESDIR}/${PV}-test-fixes.patch"
-)
-
-src_unpack() {
- unpack ${P}.tar.gz
-}
-
-src_prepare() {
- default
-
- java-pkg_clean
-
- # This requires StringTemplate v3 and is only needed for
- # output=template. Nothing in the tree currently needs that and the
- # dependency situation is already hairy enough as it is.
- rm -v runtime/Java/src/main/java/org/antlr/runtime/tree/DOTTreeGenerator.java || die
-
- # Some tests have to be removed as a result.
- rm -v tool/src/test/java/org/antlr/test/Test{RewriteTemplates,Templates}.java || die
-
- # Some tests fail under Java 8 in ways that probably aren't limited
- # to the tests. This is bad but upstream is never going to update
- # 3.5. At the time of writing, we only use it to build 4 anyway.
- if java-pkg_is-vm-version-ge 1.8; then
- rm -v tool/src/test/java/org/antlr/test/Test{DFAConversion,SemanticPredicates,TopologicalSort}.java || die
- fi
-}
-
-src_compile() {
- cd "${S}/runtime/Java/src/main" || die
- JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
-
- cd "${S}/tool/src/main" || die
- java -jar "${DISTDIR}/${P}-complete.jar" $(find antlr3 -name "*.g") || die
- JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
- java-pkg_addres "${S}/${PN}-tool.jar" resources
-}
-
-src_install() {
- java-pkg_dojar ${PN}-{runtime,tool}.jar
- java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.Tool
- use doc && java-pkg_dojavadoc runtime/Java/src/main/target/api
-}
-
-src_test() {
- cd tool/src/test/java || die
- local CP=".:${S}/${PN}-runtime.jar:${S}/${PN}-tool.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
-
- local TESTS=$(find * -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find -name "*.java")
-
- # ejunit automatically adds all registered subdependencies to the
- # classpath, which is annoying in this case because of the cyclic
- # dependency on stringtemplate. It will blow up when trying to find
- # antlr-3.5 on the system before it is installed. The easiest but
- # somewhat ugly way to avoid this is to unset JAVA_PKG_DEPEND_FILE.
- JAVA_PKG_DEPEND_FILE= ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/antlr/antlr-3.5.3.ebuild b/dev-java/antlr/antlr-3.5.3.ebuild
new file mode 100644
index 000000000000..c3bec26d0400
--- /dev/null
+++ b/dev-java/antlr/antlr-3.5.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+DESCRIPTION="A parser generator for many languages"
+HOMEPAGE="https://www.antlr3.org/"
+# Reuse tarball for DOCS
+SRC_URI="https://github.com/${PN}/${PN}3/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="3.5"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CP_DEPEND="
+ ~dev-java/antlr-runtime-${PV}:${SLOT}
+ ~dev-java/antlr-tool-${PV}:${SLOT}
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/${PN}3-${PV}"
+
+DOCS=( contributors.txt README.txt )
+
+src_compile() {
+ :
+}
+
+src_install() {
+ java-pkg_regjar "$(java-pkg_getjar "antlr-runtime-${SLOT}" antlr-runtime.jar)"
+ java-pkg_regjar "$(java-pkg_getjar "antlr-tool-${SLOT}" antlr-tool.jar)"
+
+ java-pkg_dolauncher "${PN}${SLOT}" --main org.antlr.Tool
+ einstalldocs # https://bugs.gentoo.org/789582
+}
+
+pkg_postinst() {
+ # If upgrading from a version of this slot that installs JARs,
+ # display a message about submodule split
+ local changed_ver="3.5.2-r2"
+ local should_show_msg
+ for replaced_ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${replaced_ver}" -lt "${changed_ver}"; then
+ should_show_msg=1
+ break
+ fi
+ done
+ [[ "${should_show_msg}" ]] || return
+ elog "Since version ${changed_ver}, ${PN}-${SLOT} no longer installs JARs."
+ elog "Please find the JARs from files installed by submodule packages"
+ elog "antlr-runtime-${SLOT} and antlr-tool-${SLOT}."
+}
diff --git a/dev-java/antlr/antlr-4.5.1.ebuild b/dev-java/antlr/antlr-4.5.1.ebuild
deleted file mode 100644
index 4c411e077bb3..000000000000
--- a/dev-java/antlr/antlr-4.5.1.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A parser generator for many languages"
-HOMEPAGE="https://www.antlr.org/"
-SRC_URI="https://github.com/${PN}/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://www.antlr.org/download/${P}-complete.jar" # Prebuilt version needed.
-LICENSE="BSD"
-SLOT="4"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/antlr:3.5
- dev-java/stringtemplate:4
- dev-java/treelayout:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- test? (
- dev-java/hamcrest-core:1.3
- dev-java/junit:4
- )"
-
-S="${WORKDIR}/${PN}4-${PV}"
-JAVA_GENTOO_CLASSPATH="stringtemplate-4,treelayout"
-
-src_unpack() {
- unpack ${P}.tar.gz
-}
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_configure() {
- # TODO: Make java-config accept a jar@package query.
- JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar:$(java-pkg_getjar antlr-3.5 antlr-runtime.jar)"
-}
-
-src_compile() {
- cd "${S}/runtime/Java/src"
- local G PKG
-
- for G in $(find * -name "*.g4"); do
- PKG="${G%/*}"
- PKG="${PKG//\//.}"
- java -jar "${DISTDIR}/${P}-complete.jar" -package "${PKG}" "${G}" || die
- done
-
- JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
-
- cd "${S}/tool/src"
- antlr3.5 $(find -name "*.g") || die
- JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
- java-pkg_addres "${S}/${PN}-tool.jar" ../resources
-}
-
-src_install() {
- java-pkg_dojar ${PN}-{runtime,tool}.jar
- java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.v4.Tool
- use doc && java-pkg_dojavadoc runtime/Java/src/target/api
- use source && java-pkg_dosrc runtime/Java/src/org tool/src/org
-}
-
-junit_suite() {
- cd "${S}/$1-testsuite/test" || die
- local CP=".:${S}/runtime-testsuite/test:${S}/${PN}-tool.jar:$(java-pkg_getjars hamcrest-core-1.3,junit-4,${JAVA_GENTOO_CLASSPATH}):${JAVA_GENTOO_CLASSPATH_EXTRA}"
-
- local TESTS=$(find ${2:-*} -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find ${2:-*} -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
-
-src_test() {
- # Only run Java runtime tests as we haven't built other languages.
- junit_suite runtime org/antlr/v4/test/runtime/java
- junit_suite tool
-}
diff --git a/dev-java/antlr/antlr-4.5.3.ebuild b/dev-java/antlr/antlr-4.5.3.ebuild
deleted file mode 100644
index 3cd757f2a8eb..000000000000
--- a/dev-java/antlr/antlr-4.5.3.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="source"
-MAVEN_ID="org.antlr:antlr4:4.5.3"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A parser generator for many languages"
-HOMEPAGE="https://www.antlr.org/"
-SRC_URI="https://github.com/${PN}/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://www.antlr.org/download/${P}-complete.jar" # Prebuilt version needed.
-LICENSE="BSD"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/antlr:3.5
- dev-java/stringtemplate:4
- dev-java/treelayout:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- test? (
- dev-java/hamcrest-core:1.3
- dev-java/junit:4
- )"
-
-S="${WORKDIR}/${PN}4-${PV}"
-JAVA_GENTOO_CLASSPATH="stringtemplate-4,treelayout"
-
-src_unpack() {
- unpack ${P}.tar.gz
-}
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_configure() {
- # TODO: Make java-config accept a jar@package query.
- JAVA_GENTOO_CLASSPATH_EXTRA="${S}/${PN}-runtime.jar:$(java-pkg_getjar antlr-3.5 antlr-runtime.jar)"
-}
-
-src_compile() {
- cd "${S}/runtime/Java/src"
- local G PKG
-
- for G in $(find * -name "*.g4"); do
- PKG="${G%/*}"
- PKG="${PKG//\//.}"
- java -jar "${DISTDIR}/${P}-complete.jar" -package "${PKG}" "${G}" || die
- done
-
- JAVA_JAR_FILENAME="${S}/${PN}-runtime.jar" JAVA_PKG_IUSE="doc" java-pkg-simple_src_compile
-
- cd "${S}/tool/src"
- antlr3.5 $(find -name "*.g") || die
- JAVA_JAR_FILENAME="${S}/${PN}-tool.jar" java-pkg-simple_src_compile
- java-pkg_addres "${S}/${PN}-tool.jar" ../resources
-}
-
-src_install() {
- java-pkg_dojar ${PN}-{runtime,tool}.jar
- java-pkg_dolauncher ${PN}${SLOT} --main org.antlr.v4.Tool
- use doc && java-pkg_dojavadoc runtime/Java/src/target/api
- use source && java-pkg_dosrc runtime/Java/src/org tool/src/org
-}
-
-junit_suite() {
- cd "${S}/$1-testsuite/test" || die
- local CP=".:${S}/runtime-testsuite/test:${S}/${PN}-tool.jar:$(java-pkg_getjars hamcrest-core-1.3,junit-4,${JAVA_GENTOO_CLASSPATH}):${JAVA_GENTOO_CLASSPATH_EXTRA}"
-
- local TESTS=$(find ${2:-*} -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find ${2:-*} -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
-
-src_test() {
- # Only run Java runtime tests as we haven't built other languages.
- junit_suite runtime org/antlr/v4/test/runtime/java
- junit_suite tool
-}
diff --git a/dev-java/antlr/antlr-4.9.3.ebuild b/dev-java/antlr/antlr-4.9.3.ebuild
new file mode 100644
index 000000000000..1050e440538e
--- /dev/null
+++ b/dev-java/antlr/antlr-4.9.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+DESCRIPTION="A parser generator for many languages"
+HOMEPAGE="https://www.antlr.org/"
+# Reuse tarball for DOCS
+SRC_URI="https://github.com/${PN}/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CP_DEPEND="
+ ~dev-java/antlr-runtime-${PV}:${SLOT}
+ ~dev-java/antlr-tool-${PV}:${SLOT}
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/${PN}4-${PV}"
+
+DOCS=( CHANGES.txt CONTRIBUTING.md contributors.txt README.md doc )
+
+src_compile() {
+ :
+}
+
+src_install() {
+ java-pkg_regjar "$(java-pkg_getjar "antlr-runtime-${SLOT}" antlr-runtime.jar)"
+ java-pkg_regjar "$(java-pkg_getjar "antlr-tool-${SLOT}" antlr-tool.jar)"
+
+ java-pkg_dolauncher "${PN}${SLOT}" --main org.antlr.v4.Tool
+ einstalldocs # https://bugs.gentoo.org/789582
+}
+
+pkg_postinst() {
+ # If upgrading from a version of this slot that installs JARs,
+ # display a message about submodule split
+ local changed_ver="4.9.3"
+ local should_show_msg
+ for replaced_ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${replaced_ver}" -lt "${changed_ver}"; then
+ should_show_msg=1
+ break
+ fi
+ done
+ [[ "${should_show_msg}" ]] || return
+ elog "Since version ${changed_ver}, ${PN}-${SLOT} no longer installs JARs."
+ elog "Please find the JARs from files installed by submodule packages"
+ elog "antlr-runtime-${SLOT} and antlr-tool-${SLOT}."
+}
diff --git a/dev-java/antlr/files/3.5.2-test-fixes.patch b/dev-java/antlr/files/3.5.2-test-fixes.patch
deleted file mode 100644
index f2609ac1f0b5..000000000000
--- a/dev-java/antlr/files/3.5.2-test-fixes.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -Naur antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestAttributes.java antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestAttributes.java
---- antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestAttributes.java 2014-03-25 11:47:54.000000000 +0000
-+++ antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestAttributes.java 2015-10-02 22:42:56.921263410 +0100
-@@ -2131,7 +2132,7 @@
- assertEquals(expecting, found);
- }
-
-- @Test public void testRuleLabelOnTwoDifferentRulesTemplate() throws Exception {
-+ @org.junit.Ignore @Test public void testRuleLabelOnTwoDifferentRulesTemplate() throws Exception {
- String grammar =
- "grammar T;\n"+
- "options {output=template;}\n"+
-diff -Naur antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java
---- antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java 2014-03-25 11:47:54.000000000 +0000
-+++ antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestSyntacticPredicateEvaluation.java 2015-10-02 22:43:07.303105023 +0100
-@@ -339,7 +340,7 @@
- assertEquals("b:alt 2 a:alt 1\n", found);
- }
-
-- @Test public void testSynPredWithOutputTemplate() throws Exception {
-+ @org.junit.Ignore @Test public void testSynPredWithOutputTemplate() throws Exception {
- // really just seeing if it will compile
- String grammar =
- "grammar T;\n" +
-diff -Naur antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestTreeParsing.java antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestTreeParsing.java
---- antlr3-3.5.2.orig/tool/src/test/java/org/antlr/test/TestTreeParsing.java 2014-03-25 11:47:54.000000000 +0000
-+++ antlr3-3.5.2/tool/src/test/java/org/antlr/test/TestTreeParsing.java 2015-10-02 22:41:32.235554776 +0100
-@@ -141,7 +142,7 @@
- assertEquals("alt 1\n", found);
- }
-
-- @Test public void testTemplateOutput() throws Exception {
-+ @org.junit.Ignore @Test public void testTemplateOutput() throws Exception {
- String grammar =
- "grammar T;\n" +
- "options {output=AST;}\n" +
diff --git a/dev-java/antlr/files/antlr-3.2-java21.patch b/dev-java/antlr/files/antlr-3.2-java21.patch
new file mode 100644
index 000000000000..8d885f9a5f11
--- /dev/null
+++ b/dev-java/antlr/files/antlr-3.2-java21.patch
@@ -0,0 +1,31 @@
+bug #919684
+--- a/tool/src/main/java/org/antlr/codegen/CodeGenerator.java
++++ b/tool/src/main/java/org/antlr/codegen/CodeGenerator.java
+@@ -36,6 +36,7 @@ import org.antlr.Tool;
+ import org.antlr.analysis.*;
+ import org.antlr.misc.*;
+ import org.antlr.stringtemplate.*;
++import org.antlr.stringtemplate.StringTemplate;
+ import org.antlr.stringtemplate.language.AngleBracketTemplateLexer;
+ import org.antlr.tool.*;
+
+--- a/tool/src/main/antlr2/org/antlr/grammar/v2/codegen.g
++++ b/tool/src/main/antlr2/org/antlr/grammar/v2/codegen.g
+@@ -32,6 +32,7 @@ header {
+ import org.antlr.misc.*;
+ import java.util.*;
+ import org.antlr.stringtemplate.*;
++ import org.antlr.stringtemplate.StringTemplate;
+ import antlr.TokenWithIndex;
+ import antlr.CommonToken;
+ import org.antlr.codegen.*;
+--- a/tool/src/main/resources/org/antlr/codegen/templates/Java/ST.stg
++++ b/tool/src/main/resources/org/antlr/codegen/templates/Java/ST.stg
+@@ -33,6 +33,7 @@ group ST;
+ @outputFile.imports() ::= <<
+ <@super.imports()>
+ import org.antlr.stringtemplate.*;
++import org.antlr.stringtemplate.StringTemplate;
+ import org.antlr.stringtemplate.language.*;
+ import java.util.HashMap;
+ >>
diff --git a/dev-java/antlr/metadata.xml b/dev-java/antlr/metadata.xml
index f70ce39614d6..b219362a9f8c 100644
--- a/dev-java/antlr/metadata.xml
+++ b/dev-java/antlr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
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/aopalliance/aopalliance-1.0-r2.ebuild b/dev-java/aopalliance/aopalliance-1.0-r2.ebuild
deleted file mode 100644
index 4c1a89b6d3d6..000000000000
--- a/dev-java/aopalliance/aopalliance-1.0-r2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Aspect-Oriented Programming (AOP) Alliance classes"
-SRC_URI="mirror://gentoo/${P}-gentoo.tar.bz2"
-#SRC_URI="mirror://gentoo/${P}.tar.bz2"
-# Tarball creation:
-# cvs -d:pserver:anonymous@aopalliance.cvs.sourceforge.net:/cvsroot/aopalliance login
-# cvs -z3 -d:pserver:anonymous@aopalliance.cvs.sourceforge.net:/cvsroot/aopalliance export -r interception_1_0 aopalliance
-# tar cjvf aopalliance-1.0-gentoo.tar.bz2 aopalliance
-HOMEPAGE="http://aopalliance.sourceforge.net/"
-LICENSE="public-domain"
-SLOT="1"
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux"
-
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src/main"
-
-java_prepare() {
- rm build.xml || die
-}
diff --git a/dev-java/aopalliance/aopalliance-1.0-r3.ebuild b/dev-java/aopalliance/aopalliance-1.0-r3.ebuild
new file mode 100644
index 000000000000..777a3412b445
--- /dev/null
+++ b/dev-java/aopalliance/aopalliance-1.0-r3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="aopalliance:aopalliance:1.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Aspect-Oriented Programming (AOP) Alliance classes"
+SRC_URI="mirror://gentoo/${P}-gentoo.tar.bz2"
+#SRC_URI="mirror://gentoo/${P}.tar.bz2"
+# Tarball creation:
+# cvs -d:pserver:anonymous@aopalliance.cvs.sourceforge.net:/cvsroot/aopalliance login
+# cvs -z3 -d:pserver:anonymous@aopalliance.cvs.sourceforge.net:/cvsroot/aopalliance export -r interception_1_0 aopalliance
+# tar cjvf aopalliance-1.0-gentoo.tar.bz2 aopalliance
+HOMEPAGE="http://aopalliance.sourceforge.net/"
+LICENSE="public-domain"
+SLOT="1"
+
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux"
+
+IUSE=""
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main"
+
+src_prepare() {
+ default
+
+ rm build.xml || die
+}
diff --git a/dev-java/aopalliance/metadata.xml b/dev-java/aopalliance/metadata.xml
index 9d0fd7b935b3..79ed622cb61c 100644
--- a/dev-java/aopalliance/metadata.xml
+++ b/dev-java/aopalliance/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
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 5e67269064c2..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 37998bf40746..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 "http://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 37998bf40746..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 "http://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/Manifest b/dev-java/apache-rat/Manifest
new file mode 100644
index 000000000000..586027309acd
--- /dev/null
+++ b/dev-java/apache-rat/Manifest
@@ -0,0 +1,2 @@
+DIST apache-rat-0.15-src.tar.bz2 203040 BLAKE2B 0727fb932cfbab7080eba5115bee69e5c46155a231509109a5c7aecf40ed539d4357f2d9b31342717306221891e4a411e01077ae55a0988abe4926e40f1fafc4 SHA512 7f9fb219a5ce0b95909f006140b20e7621d9f5ce583c42a57e2783ec40fd842e75b546843ab033a99bf5108d0d8369a0ab1aac80e33af9685f651fed3dd603ee
+DIST apache-rat-0.15-src.tar.bz2.asc 833 BLAKE2B b87e059a5a83d3d728c28c25926129743fdfb6a5c7cf2e258892d86711e7f5890d140ca1cfa5fc1012d56b6321ec2c93903ec30854bd3536216c8f1fd269f504 SHA512 f5abcb3df5d23834deab8c3c1a476100324452cba88e9185fb398dd6118c3c8ff8dc00c4c9f8166245833d6e602c51bc8cdf20361813bbe1e720022766412b8d
diff --git a/dev-java/apache-rat/apache-rat-0.15-r1.ebuild b/dev-java/apache-rat/apache-rat-0.15-r1.ebuild
new file mode 100644
index 000000000000..330f4023ee7a
--- /dev/null
+++ b/dev-java/apache-rat/apache-rat-0.15-r1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# javadoc is broken for java 17, see https://bugs.gentoo.org/914458
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="
+ org.apache.rat:apache-rat-core:${PV}
+ org.apache.rat:apache-rat-tasks:${PV}
+"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+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="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}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14:0
+ dev-java/commons-cli:1
+ dev-java/commons-collections:4
+ dev-java/commons-compress:0
+ dev-java/commons-io:1
+ dev-java/commons-lang:3.6
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? ( >=dev-java/ant-1.10.14:0[junit,testutil] )"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-creadur )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/creadur.apache.org.asc"
+
+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
+}
+
+src_compile() {
+ einfo "Compiling apache-rat-core.jar"
+ JAVA_JAR_FILENAME="${PN}-core.jar"
+ JAVA_RESOURCE_DIRS="${PN}-core/src/main/resources"
+ JAVA_SRC_DIR="${PN}-core/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${PN}-core.jar"
+ rm -r target || die
+
+ einfo "Compiling apache-rat-tasks.jar"
+ JAVA_JAR_FILENAME="${PN}-tasks.jar"
+ JAVA_RESOURCE_DIRS="${PN}-tasks/src/main/resources"
+ JAVA_SRC_DIR="${PN}-tasks/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${PN}-tasks.jar"
+ rm -r target || die
+
+ # javadoc is broken for java 17, see https://bugs.gentoo.org/914458
+ JAVADOC_CLASSPATH="${JAVA_GENTOO_CLASSPATH}"
+ use doc && ejavadoc
+}
+
+src_test() {
+ JAVA_TEST_GENTOO_CLASSPATH="ant,junit-4"
+
+ einfo "Testing apache-rat-core"
+ cp -r "${PN}"-core/src/{main,test} src || die
+ JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+ JAVA_TEST_SRC_DIR="src/test/java"
+ java-pkg-simple_src_test
+ rm -r src/{main,test} || die
+
+ einfo "Testing apache-rat-tasks"
+ cp -r "${PN}"-tasks/src/{main,test} src || die
+ mkdir -p target/it-sources || die
+ JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+ JAVA_TEST_SRC_DIR="src/test/java"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg_dojar "${PN}-core.jar"
+ java-pkg_dojar "${PN}-tasks.jar"
+ java-pkg_dolauncher "${PN}" --main org.apache.rat.Report
+
+ use doc && java-pkg_dojavadoc target/api
+
+ if use source; then
+ java-pkg_dosrc "${PN}-core/src/main/java/*"
+ java-pkg_dosrc "${PN}-tasks/src/main/java/*"
+ fi
+}
diff --git a/dev-java/apache-rat/files/apache-rat-0.15-fix-tests.patch b/dev-java/apache-rat/files/apache-rat-0.15-fix-tests.patch
new file mode 100644
index 000000000000..b9cb73648008
--- /dev/null
+++ b/dev-java/apache-rat/files/apache-rat-0.15-fix-tests.patch
@@ -0,0 +1,39 @@
+--- a/apache-rat-tasks/src/test/resources/antunit/report-junit.xml
++++ b/apache-rat-tasks/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/metadata.xml b/dev-java/apache-rat/metadata.xml
new file mode 100644
index 000000000000..7c36c1b69ae5
--- /dev/null
+++ b/dev-java/apache-rat/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">apache/creadur-rat</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/apiguardian-api/Manifest b/dev-java/apiguardian-api/Manifest
new file mode 100644
index 000000000000..da069140e71e
--- /dev/null
+++ b/dev-java/apiguardian-api/Manifest
@@ -0,0 +1 @@
+DIST apiguardian-api-1.1.2.tar.gz 67267 BLAKE2B 27bbe157f23c0904863d093930968854771f4c6b1bc6b6a6e6b86604383abd291348fa8b009d760b3bc739bbfbdb74e9429942ce1acf4bfc52e29e79386f2059 SHA512 7c56ee15e0aba07e95b6f2fe7cedd98e449e774958eb63b2467066c381e1e82ad67c982c2885e18154c62e55fda80a1c2e0f689253afe449db9f7e7563122db6
diff --git a/dev-java/apiguardian-api/apiguardian-api-1.1.2-r1.ebuild b/dev-java/apiguardian-api/apiguardian-api-1.1.2-r1.ebuild
new file mode 100644
index 000000000000..942785e74192
--- /dev/null
+++ b/dev-java/apiguardian-api/apiguardian-api-1.1.2-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apiguardian:apiguardian-api:1.1.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="@org.apiguardian.api.API Java annotation provider"
+HOMEPAGE="https://github.com/apiguardian-team/apiguardian"
+SRC_URI="https://github.com/apiguardian-team/apiguardian/archive/r${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${PN%-api}-r${PV}"
+
+JAVA_SRC_DIR=( src/{main,module}/java )
diff --git a/dev-java/apiguardian-api/metadata.xml b/dev-java/apiguardian-api/metadata.xml
new file mode 100644
index 000000000000..abafa97106c0
--- /dev/null
+++ b/dev-java/apiguardian-api/metadata.xml
@@ -0,0 +1,13 @@
+<?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">apiguardian-team/apiguardian</remote-id>
+ </upstream>
+ <longdescription>
+ Library that provides the @API annotation that is used to annotate public types, methods, constructors, and fields within a framework or application in order to publish their status and level of stability and to indicate how they are intended to be used by consumers of the API.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/appframework/Manifest b/dev-java/appframework/Manifest
deleted file mode 100644
index 3f14e746b421..000000000000
--- a/dev-java/appframework/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST appframework-1.03.zip 413438 BLAKE2B 8f7c397e1d1f8fcfd62b648648650f0a736615317ec37fbc2f8a9c2834e3e18b4a754f89f1b6d94836e2f775010135b740dd474d10ff13e3e115f554380060fb SHA512 7d24329361f0d5f2225a7248ba30b1f0db364efd93e0581e1f10d0f8e2b6354f9d578d585ff1a08b27846dfae0b805b0f609711234be616b3f0a065dc1801309
diff --git a/dev-java/appframework/appframework-1.03-r5.ebuild b/dev-java/appframework/appframework-1.03-r5.ebuild
deleted file mode 100644
index 5d1988117424..000000000000
--- a/dev-java/appframework/appframework-1.03-r5.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="AppFramework"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Set of Java classes to build desktop applications easily"
-HOMEPAGE="https://java.net/projects/appframework"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${MY_P}-src.zip -> ${P}.zip"
-
-LICENSE="LGPL-2.1"
-
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/jnlp-api:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="jnlp-api"
-
-JAVA_SRC_DIR="src"
-
-PATCHES=( "${FILESDIR}/${P}-fix-imports.patch" )
-
-RESTRICT="test"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- java-pkg_clean
- mv src/examples "${S}" || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples examples
-}
diff --git a/dev-java/appframework/files/appframework-1.03-fix-imports.patch b/dev-java/appframework/files/appframework-1.03-fix-imports.patch
deleted file mode 100644
index 3e5a958597e2..000000000000
--- a/dev-java/appframework/files/appframework-1.03-fix-imports.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/src/org/jdesktop/application/Task.java 2017-03-28 11:24:05.988108949 +0000
-+++ b/src/org/jdesktop/application/Task.java 2017-03-28 11:24:09.433122008 +0000
-@@ -15,8 +15,8 @@
- import java.util.concurrent.TimeUnit;
- import java.util.logging.Level;
- import java.util.logging.Logger;
--import org.jdesktop.swingworker.SwingWorker;
--import org.jdesktop.swingworker.SwingWorker.StateValue;
-+import javax.swing.SwingWorker;
-+import javax.swing.SwingWorker.StateValue;
-
-
- /**
---- a/src/org/jdesktop/application/TaskMonitor.java 2017-03-28 11:24:18.988158228 +0000
-+++ b/src/org/jdesktop/application/TaskMonitor.java 2017-03-28 11:24:31.895207149 +0000
-@@ -9,7 +9,7 @@
- import java.util.Iterator;
- import java.util.LinkedList;
- import java.util.List;
--import org.jdesktop.swingworker.SwingWorker.StateValue;
-+import javax.swing.SwingWorker.StateValue;
-
-
- /**
diff --git a/dev-java/appframework/metadata.xml b/dev-java/appframework/metadata.xml
deleted file mode 100644
index d217a05000e5..000000000000
--- a/dev-java/appframework/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- The JSR-296 Swing Application Framework prototype implementation is a small set of Java classes that simplify building desktop applications. The prototype provides infrastructure that's common to most desktop applications:
-
- * Application lifecyle, notably GUI startup and shutdown.
- * Support for managing and loading resources, like strings, formatted messages, images, colors, fonts, and other types common to desktop applications.
- * Support for defining, managing, and binding Actions, including Actions that run asynchronously (in the "background").
- * Persistent session state: support for automatically and selectively saving GUI state from one run of an application to the next.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/apple-java-extensions-bin/Manifest b/dev-java/apple-java-extensions-bin/Manifest
deleted file mode 100644
index 4379b2138bf6..000000000000
--- a/dev-java/apple-java-extensions-bin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST apple-java-extensions-bin-1.5.zip 18036 BLAKE2B 413ff37758ca59ab0114c747745619dc0886b47b7ebf05b0383f819eee12e3d0d2c01f95520395cdf5586ceaa784cb2ccb89ba13f56c6dbc6bb2879e37b64813 SHA512 9f3e9a8eab3980feda8584ca75d58da8b31ec0ed77fb2a4a1488d0b2ca0efd845ff705fc372ba3958753690f839b0ccb2e9310d6896564317b625ff9ba9cc456
diff --git a/dev-java/apple-java-extensions-bin/apple-java-extensions-bin-1.5-r2.ebuild b/dev-java/apple-java-extensions-bin/apple-java-extensions-bin-1.5-r2.ebuild
deleted file mode 100644
index aaef7a010e5e..000000000000
--- a/dev-java/apple-java-extensions-bin/apple-java-extensions-bin-1.5-r2.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
-
-inherit java-pkg-2
-
-DESCRIPTION="Apple eAWT and eIO APIs for Java on Mac OS X"
-HOMEPAGE="http://developer.apple.com/samplecode/AppleJavaExtensions/"
-SRC_URI="http://developer.apple.com/samplecode/AppleJavaExtensions/AppleJavaExtensions.zip -> ${P}.zip"
-
-LICENSE="Apple"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-BDEPEND="app-arch/unzip"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S=${WORKDIR}/AppleJavaExtensions
-
-src_install() {
- dodoc README.txt
- java-pkg_dojar AppleJavaExtensions.jar
-}
diff --git a/dev-java/apple-java-extensions-bin/metadata.xml b/dev-java/apple-java-extensions-bin/metadata.xml
deleted file mode 100644
index 17fc8259b81a..000000000000
--- a/dev-java/apple-java-extensions-bin/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-<longdescription>
-This is a pluggable jar of stub classes representing the new Apple eAWT
-and eIO APIs for Java 1.4 on Mac OS X. The purpose of these stubs is to
-allow for compilation of eAWT- or eIO-referencing code on platforms other
-than Mac OS X
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/args4j/Manifest b/dev-java/args4j/Manifest
deleted file mode 100644
index 7e7c314fe191..000000000000
--- a/dev-java/args4j/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST args4j-2.32-sources.jar 65381 BLAKE2B 6fe8d2bc9a8d564dbd324f64b9b528df6d52d721e1cb02b15352d9f2b2b0e02c70cdb64fbd1d3314a23ec38435f4dca49f7bff88c069de4cf45071f3d3a744e0 SHA512 97b48a133f6e3348e17a653aa15d92e0bc240e689615c22321573f7f82f01f22cffe43ef7b24f72a9a52cfb91ab6601463567b18f634fcc64362ea366456a12f
-DIST args4j-2.33-sources.jar 65430 BLAKE2B c1c4c38beac5d9de4bcc444953098d4b6745678332bd3203fffc5982fcaf81062bbd87814321fb3e3c1750d695d2f96e4c7c6e3674c491701dccf1a294b67189 SHA512 5cfdff97bc95c07dbea1f83a48f8a61edf4758c9284cd6b510ab0a628724561226b10d3a0d6bdeee71e7115cbcf8fa53858f40ad8ee40e614e882d734f881014
diff --git a/dev-java/args4j/args4j-2.32.ebuild b/dev-java/args4j/args4j-2.32.ebuild
deleted file mode 100644
index be60edae23d1..000000000000
--- a/dev-java/args4j/args4j-2.32.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="args4j is a Java command line arguments parser"
-HOMEPAGE="http://args4j.kohsuke.org/"
-SRC_URI="http://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="2"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.7"
-DEPEND=">=virtual/jdk-1.7
- app-arch/unzip"
diff --git a/dev-java/args4j/args4j-2.33.ebuild b/dev-java/args4j/args4j-2.33.ebuild
deleted file mode 100644
index 7d1a85dfca1a..000000000000
--- a/dev-java/args4j/args4j-2.33.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="args4j is a Java command line arguments parser"
-HOMEPAGE="http://args4j.kohsuke.org/"
-SRC_URI="http://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="2"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- >=virtual/jre-1.7"
-
-DEPEND="
- >=virtual/jdk-1.7"
diff --git a/dev-java/args4j/metadata.xml b/dev-java/args4j/metadata.xml
deleted file mode 100644
index 9c9024ca9bc7..000000000000
--- a/dev-java/args4j/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/asm-analysis/Manifest b/dev-java/asm-analysis/Manifest
deleted file mode 100644
index f6e1ec1670cd..000000000000
--- a/dev-java/asm-analysis/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST asm-ASM_9_1.tar.gz 1614561 BLAKE2B f19efad14a7bce5dd7311682a2e6c8625816d1b97ed390652681f14d6d341f559fee152b70474566752a80ff2fcc7cb83fea91f7382f898a0725beba5c9c6ada SHA512 84eb7bc0c7119d3ab0ddd9f3bad640662d96235d365da5bd85031abbdfed371c9742a01817ddd022fd4fb447441f423e4f5126d12dcadf12fa9669cd86b34f18
diff --git a/dev-java/asm-analysis/asm-analysis-9.1.ebuild b/dev-java/asm-analysis/asm-analysis-9.1.ebuild
deleted file mode 100644
index 4fbdb6554d9e..000000000000
--- a/dev-java/asm-analysis/asm-analysis-9.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.ow2.asm:asm-analysis:9.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bytecode manipulation framework for Java (Static code analysis API)"
-HOMEPAGE="http://asm.ow2.org"
-MY_P="ASM_${PV//./_}"
-SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT=`ver_cut 1`
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x64-macos"
-RESTRICT="test"
-
-CDEPEND="dev-java/asm-tree:${SLOT}"
-DEPEND=">=virtual/jdk-1.8
-${CDEPEND}
-"
-RDEPEND=">=virtual/jre-1.8
-${CDEPEND}
-"
-
-JAVA_GENTOO_CLASSPATH="asm-${SLOT} asm-tree-${SLOT}"
-JAVA_SRC_DIR="asm-${MY_P}/${PN}/src/main/java"
diff --git a/dev-java/asm-analysis/metadata.xml b/dev-java/asm-analysis/metadata.xml
deleted file mode 100644
index e1ae832ca03b..000000000000
--- a/dev-java/asm-analysis/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>kaiboma06@gmail.com</email>
- <name>Kaibo Ma</name>
- </maintainer>
- <longdescription>
- ASM is a Java bytecode manipulation framework. It can be used to
- dynamically generate stub classes or other proxy classes, directly in
- binary form, or to dynamically modify classes at load time, i.e., just
- before they are loaded into the Java Virtual Machine.
-
- ASM offers similar functionalities as BCEL or SERP, but is much more
- smaller (25KB instead of 350KB for BCEL and 150KB for SERP) and faster
- than these tools (the overhead of a load time class transformation is of
- the order of 60% with ASM, 700% or more with BCEL, and 1100% or more
- with SERP). Indeed ASM was designed to be used in a dynamic way* and was
- therefore designed and implemented to be as small and as fast as
- possible.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/asm-commons/Manifest b/dev-java/asm-commons/Manifest
deleted file mode 100644
index f6e1ec1670cd..000000000000
--- a/dev-java/asm-commons/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST asm-ASM_9_1.tar.gz 1614561 BLAKE2B f19efad14a7bce5dd7311682a2e6c8625816d1b97ed390652681f14d6d341f559fee152b70474566752a80ff2fcc7cb83fea91f7382f898a0725beba5c9c6ada SHA512 84eb7bc0c7119d3ab0ddd9f3bad640662d96235d365da5bd85031abbdfed371c9742a01817ddd022fd4fb447441f423e4f5126d12dcadf12fa9669cd86b34f18
diff --git a/dev-java/asm-commons/asm-commons-9.1.ebuild b/dev-java/asm-commons/asm-commons-9.1.ebuild
deleted file mode 100644
index 66b8a6ec335e..000000000000
--- a/dev-java/asm-commons/asm-commons-9.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.ow2.asm:asm-commons:9.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bytecode manipulation framework for Java (Common class adaptors)"
-HOMEPAGE="http://asm.ow2.org"
-MY_P="ASM_${PV//./_}"
-SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT=`ver_cut 1`
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x64-macos"
-RESTRICT="test"
-
-CDEPEND="dev-java/asm-analysis:${SLOT} dev-java/asm-tree:${SLOT} dev-java/asm:${SLOT}"
-DEPEND=">=virtual/jdk-1.8
-${CDEPEND}
-"
-RDEPEND=">=virtual/jre-1.8
-${CDEPEND}
-"
-
-JAVA_GENTOO_CLASSPATH="asm-${SLOT} asm-tree-${SLOT} asm-analysis-${SLOT}"
-JAVA_SRC_DIR="asm-${MY_P}/${PN}/src/main/java"
diff --git a/dev-java/asm-commons/metadata.xml b/dev-java/asm-commons/metadata.xml
deleted file mode 100644
index e1ae832ca03b..000000000000
--- a/dev-java/asm-commons/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>kaiboma06@gmail.com</email>
- <name>Kaibo Ma</name>
- </maintainer>
- <longdescription>
- ASM is a Java bytecode manipulation framework. It can be used to
- dynamically generate stub classes or other proxy classes, directly in
- binary form, or to dynamically modify classes at load time, i.e., just
- before they are loaded into the Java Virtual Machine.
-
- ASM offers similar functionalities as BCEL or SERP, but is much more
- smaller (25KB instead of 350KB for BCEL and 150KB for SERP) and faster
- than these tools (the overhead of a load time class transformation is of
- the order of 60% with ASM, 700% or more with BCEL, and 1100% or more
- with SERP). Indeed ASM was designed to be used in a dynamic way* and was
- therefore designed and implemented to be as small and as fast as
- possible.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/asm-tree/Manifest b/dev-java/asm-tree/Manifest
deleted file mode 100644
index f6e1ec1670cd..000000000000
--- a/dev-java/asm-tree/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST asm-ASM_9_1.tar.gz 1614561 BLAKE2B f19efad14a7bce5dd7311682a2e6c8625816d1b97ed390652681f14d6d341f559fee152b70474566752a80ff2fcc7cb83fea91f7382f898a0725beba5c9c6ada SHA512 84eb7bc0c7119d3ab0ddd9f3bad640662d96235d365da5bd85031abbdfed371c9742a01817ddd022fd4fb447441f423e4f5126d12dcadf12fa9669cd86b34f18
diff --git a/dev-java/asm-tree/asm-tree-9.1.ebuild b/dev-java/asm-tree/asm-tree-9.1.ebuild
deleted file mode 100644
index 01e3400a43ae..000000000000
--- a/dev-java/asm-tree/asm-tree-9.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.ow2.asm:asm-tree:9.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bytecode manipulation framework for Java (Tree API)"
-HOMEPAGE="http://asm.ow2.org"
-MY_P="ASM_${PV//./_}"
-SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT=`ver_cut 1`
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x64-macos"
-RESTRICT="test"
-
-CDEPEND="dev-java/asm:${SLOT}"
-DEPEND=">=virtual/jdk-1.8
-${CDEPEND}
-"
-RDEPEND=">=virtual/jre-1.8
-${CDEPEND}
-"
-
-JAVA_GENTOO_CLASSPATH="asm-${SLOT}"
-JAVA_SRC_DIR="asm-${MY_P}/${PN}/src/main/java"
diff --git a/dev-java/asm-tree/metadata.xml b/dev-java/asm-tree/metadata.xml
deleted file mode 100644
index e1ae832ca03b..000000000000
--- a/dev-java/asm-tree/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>kaiboma06@gmail.com</email>
- <name>Kaibo Ma</name>
- </maintainer>
- <longdescription>
- ASM is a Java bytecode manipulation framework. It can be used to
- dynamically generate stub classes or other proxy classes, directly in
- binary form, or to dynamically modify classes at load time, i.e., just
- before they are loaded into the Java Virtual Machine.
-
- ASM offers similar functionalities as BCEL or SERP, but is much more
- smaller (25KB instead of 350KB for BCEL and 150KB for SERP) and faster
- than these tools (the overhead of a load time class transformation is of
- the order of 60% with ASM, 700% or more with BCEL, and 1100% or more
- with SERP). Indeed ASM was designed to be used in a dynamic way* and was
- therefore designed and implemented to be as small and as fast as
- possible.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/asm-util/Manifest b/dev-java/asm-util/Manifest
deleted file mode 100644
index f6e1ec1670cd..000000000000
--- a/dev-java/asm-util/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST asm-ASM_9_1.tar.gz 1614561 BLAKE2B f19efad14a7bce5dd7311682a2e6c8625816d1b97ed390652681f14d6d341f559fee152b70474566752a80ff2fcc7cb83fea91f7382f898a0725beba5c9c6ada SHA512 84eb7bc0c7119d3ab0ddd9f3bad640662d96235d365da5bd85031abbdfed371c9742a01817ddd022fd4fb447441f423e4f5126d12dcadf12fa9669cd86b34f18
diff --git a/dev-java/asm-util/asm-util-9.1.ebuild b/dev-java/asm-util/asm-util-9.1.ebuild
deleted file mode 100644
index 8986257ddeec..000000000000
--- a/dev-java/asm-util/asm-util-9.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.ow2.asm:asm-util:9.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bytecode manipulation framework for Java (Utilities)"
-HOMEPAGE="http://asm.ow2.org"
-MY_P="ASM_${PV//./_}"
-SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT=`ver_cut 1`
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x64-macos"
-RESTRICT="test"
-
-CDEPEND="dev-java/asm-analysis:${SLOT} dev-java/asm-tree:${SLOT} dev-java/asm:${SLOT}"
-DEPEND=">=virtual/jdk-1.8
-${CDEPEND}
-"
-RDEPEND=">=virtual/jre-1.8
-${CDEPEND}
-"
-
-JAVA_GENTOO_CLASSPATH="asm-${SLOT} asm-tree-${SLOT} asm-analysis-${SLOT}"
-JAVA_SRC_DIR="asm-${MY_P}/${PN}/src/main/java"
diff --git a/dev-java/asm-util/metadata.xml b/dev-java/asm-util/metadata.xml
deleted file mode 100644
index e1ae832ca03b..000000000000
--- a/dev-java/asm-util/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>kaiboma06@gmail.com</email>
- <name>Kaibo Ma</name>
- </maintainer>
- <longdescription>
- ASM is a Java bytecode manipulation framework. It can be used to
- dynamically generate stub classes or other proxy classes, directly in
- binary form, or to dynamically modify classes at load time, i.e., just
- before they are loaded into the Java Virtual Machine.
-
- ASM offers similar functionalities as BCEL or SERP, but is much more
- smaller (25KB instead of 350KB for BCEL and 150KB for SERP) and faster
- than these tools (the overhead of a load time class transformation is of
- the order of 60% with ASM, 700% or more with BCEL, and 1100% or more
- with SERP). Indeed ASM was designed to be used in a dynamic way* and was
- therefore designed and implemented to be as small and as fast as
- possible.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/asm/Manifest b/dev-java/asm/Manifest
index 8e562f146da7..2ec40365fab3 100644
--- a/dev-java/asm/Manifest
+++ b/dev-java/asm/Manifest
@@ -1,3 +1 @@
-DIST asm-ASM_4_0.tar.gz 14789505 BLAKE2B 62b49d904f1ef2d32379f4f5d644cdc274b30f292ee4f64ad02be7d2226a90965f7b12421700e79dcd1e67a46e6a8543d5e353486a1577313616688ddc57f3b3 SHA512 e654623a882d9fe414e71861183f64840f7b6629231864872497d4bf9274e8ac05e05496593fa54a90d8c6a2e6d701b9a6f3876df611637f7d2079c5519def1e
-DIST asm-ASM_5_1.tar.gz 16258842 BLAKE2B bd7d717cdfa6ff652c96b88d7b7d33fae614acba390c256ea72ecfbb3edc48382621a076dedf9b8728fdb1d0961cda943f165f99de840824b766c9af45a49339 SHA512 4bb32ce6eba267928261238f8f13cd2365ab374780039ad1df31698cd791645a370aca58c44270ec05f8377d6aa0a0d00f9f3890961cbd32a10cbd2e79e2d518
-DIST asm-ASM_9_1.tar.gz 1614561 BLAKE2B f19efad14a7bce5dd7311682a2e6c8625816d1b97ed390652681f14d6d341f559fee152b70474566752a80ff2fcc7cb83fea91f7382f898a0725beba5c9c6ada SHA512 84eb7bc0c7119d3ab0ddd9f3bad640662d96235d365da5bd85031abbdfed371c9742a01817ddd022fd4fb447441f423e4f5126d12dcadf12fa9669cd86b34f18
+DIST asm-ASM_9_6.tar.bz2 1374579 BLAKE2B 621b19f1818ffdd451037af210ec7c3286e3dabdb1d6192157c2e6e8c101f599691cd4de57adf500f5413b4aaf4f808d6ac791e84626223a7be5672a17137670 SHA512 86b2db3e81c29c465d4128736f88ae3b73af8f312915921549d0acdb50a8d2c2c2beed5162af164b6e75278702af0c6f0a8d84b4133516eb4ac419520b7c764d
diff --git a/dev-java/asm/asm-5.1-r1.ebuild b/dev-java/asm/asm-5.1-r1.ebuild
deleted file mode 100644
index cae7bdcc920f..000000000000
--- a/dev-java/asm/asm-5.1-r1.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="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Bytecode manipulation framework for Java"
-HOMEPAGE="https://asm.ow2.io"
-MY_P="ASM_${PV//./_}"
-SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.gz https://gitlab.ow2.org/asm/asm/-/archive/ASM_4_0/asm-ASM_4_0.tar.gz"
-
-LICENSE="BSD"
-SLOT="4"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~x64-macos"
-
-CDEPEND=""
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/asm-${MY_P}"
-
-# Needs dependencies we don't have yet.
-RESTRICT="test"
-
-EANT_DOC_TARGET="jdoc"
-
-# Fails if this objectweb.ant.tasks.path is not set.
-# Java generics seem to break unless product.noshrink is set.
-EANT_EXTRA_ARGS="-Dobjectweb.ant.tasks.path=foobar -Dproduct.noshrink=true"
-
-src_prepare() {
- default
- # Borrow some ant scripts from an old version to avoid requiring
- # bndlib and friends. This may not work forever!
- cp -vf "../asm-ASM_4_0/archive"/*.xml archive/ || die
-}
-
-src_install() {
- for x in output/dist/lib/*.jar ; do
- java-pkg_newjar "${x}" $(basename "${x%-*}.jar")
- done
-
- use doc && java-pkg_dojavadoc output/dist/doc/javadoc/user/
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/asm/asm-9.1.ebuild b/dev-java/asm/asm-9.1.ebuild
deleted file mode 100644
index f4ae85d5b7d8..000000000000
--- a/dev-java/asm/asm-9.1.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
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.ow2.asm:asm:9.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bytecode manipulation framework for Java"
-HOMEPAGE="https://asm.ow2.io"
-MY_P="ASM_${PV//./_}"
-SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT="9"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~x64-macos"
-RESTRICT="test"
-
-CDEPEND=""
-DEPEND=">=virtual/jdk-1.8"
-RDEPEND=">=virtual/jre-1.8"
-
-JAVA_SRC_DIR="asm-${MY_P}/${PN}/src/main/java"
diff --git a/dev-java/asm/asm-9.6.ebuild b/dev-java/asm/asm-9.6.ebuild
new file mode 100644
index 000000000000..ac4e0a56d01f
--- /dev/null
+++ b/dev-java/asm/asm-9.6.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# tests not enabled because of missing eclass support of junit-jupiter
+JAVA_PKG_IUSE="doc source"
+MAVEN_PROVIDES="
+ org.ow2.asm:asm-bom:${PV}
+ org.ow2.asm:asm:${PV}
+ org.ow2.asm:asm-analysis:${PV}
+ org.ow2.asm:asm-commons:${PV}
+ org.ow2.asm:asm-tree:${PV}
+ org.ow2.asm:asm-util:${PV}
+"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Bytecode manipulation framework for Java"
+HOMEPAGE="https://asm.ow2.io"
+MY_P="ASM_${PV//./_}"
+SRC_URI="https://gitlab.ow2.org/asm/asm/-/archive/${MY_P}/asm-${MY_P}.tar.bz2"
+S="${WORKDIR}/asm-${MY_P}"
+
+LICENSE="BSD"
+SLOT="9"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~x64-macos"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+ASM_MODULES=( "asm" "asm-tree" "asm-analysis" "asm-commons" "asm-util" )
+
+src_prepare() {
+ default
+ local module
+ touch "${T}/asm.module" || die
+ for module in "${ASM_MODULES[@]}"; do
+ module=${module/-/.}
+ cat > ${module/./-}/src/main/java/module-info.java <<-EOF || die
+ open module org.objectweb.${module/analysis/tree.analysis} {
+ $(cat ${T}/asm.module)
+ requires java.base;
+ exports org.objectweb.${module/analysis/tree.analysis};
+ }
+ EOF
+ echo "requires transitive org.objectweb.${module/analysis/tree.analysis};" \
+ >> "${T}/asm.module" || die
+ done
+ sed -e '/^$/d' \
+ -e '/asm;/p;s:\(asm\)\(;\):\1.signature\2:' \
+ -i asm/src/main/java/module-info.java || die
+ sed -e '/analysis/d' \
+ -i asm-commons/src/main/java/module-info.java || die
+ sed -e '/commons/d' \
+ -i asm-util/src/main/java/module-info.java || die
+}
+
+src_compile() {
+ local module
+ for module in "${ASM_MODULES[@]}"; do
+ einfo "Compiling ${module}"
+ JAVA_JAR_FILENAME="${module}.jar"
+ JAVA_SRC_DIR="${module}/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${module}.jar"
+ rm -r target || die
+ done
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ JAVA_SRC_DIR=()
+ for module in "${ASM_MODULES[@]}"; do
+ rm "${module}/src/main/java/module-info.java" || die
+ JAVA_SRC_DIR+=("${module}/src/main/java")
+ done
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ local module
+ for module in "${ASM_MODULES[@]}"; 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
+ default
+}
diff --git a/dev-java/asm/metadata.xml b/dev-java/asm/metadata.xml
index 382aec39b1e3..930ec624c680 100644
--- a/dev-java/asm/metadata.xml
+++ b/dev-java/asm/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -25,6 +25,6 @@
</longdescription>
<upstream>
<doc>https://asm.ow2.io/documentation.html</doc>
- <bugs-to>https://gitlab.ow2.org/asm/asm/issues</bugs-to>
+ <bugs-to>https://gitlab.ow2.org/asm/asm/-/issues</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/aspectj/Manifest b/dev-java/aspectj/Manifest
index 84ea20608252..e373999baeaf 100644
--- a/dev-java/aspectj/Manifest
+++ b/dev-java/aspectj/Manifest
@@ -1 +1 @@
-DIST aspectj-1.9.6-src.jar 8616829 BLAKE2B adc12e181b2584287dd149657f0505b2d3ba877aa3e8cea1f2fd827b4d05c24728f120798019f1679ebafe850a8e68fa3db1467ac080c27692d5f81d31aebd48 SHA512 f15416a3921ef614ab8068c8ff8277f0fd3c177e9b277ac471786953615f1fe81638b8d13d77ebfe0643fdf089ee3cd5e718d522d2e588989a42df775f2a0516
+DIST aspectj-1.9.7.tar.gz 26472044 BLAKE2B a66605845e188903d50566df658fe636b8feb980bbafdc3b4c3e73e46558b24e4bbaf931790012266ac62bff70c3139f0034dafc7de4622827c0f09d4d626efa SHA512 5db2122d95e78056752bbca9adee72c0fa634963b4ea6979c0b75a9cc58b5ef4cf88b79ad640920363ebe7855311bedfa7e30eaba378274a0eebc31557dd57e7
diff --git a/dev-java/aspectj/aspectj-1.9.6.ebuild b/dev-java/aspectj/aspectj-1.9.6.ebuild
deleted file mode 100644
index b1bc3636c59f..000000000000
--- a/dev-java/aspectj/aspectj-1.9.6.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="A seamless aspect-oriented extension to the Java programming language"
-HOMEPAGE="https://eclipse.org/aspectj/"
-SRC_URI="https://www.eclipse.org/downloads/download.php?file=/tools/${PN}/${P}-src.jar&r=1 -> ${P}-src.jar"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/asm:9
- dev-java/commons-logging:0"
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8:*"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-BDEPEND="app-arch/zip"
-
-S=${WORKDIR}
-
-JAVA_SRC_DIR="${S}/src"
-JAVA_GENTOO_CLASSPATH="commons-logging,asm-9"
-JAVA_ENCODING="iso8859-1"
-
-src_unpack() {
- default
- unzip "${S}"/aspectjweaver-${PV}-sources.jar -d "${S}"/src/ || die
-}
-
-src_prepare() {
- default
-
- # needs part of BEA JRockit to compile
- rm "${S}"/src/org/aspectj/weaver/loadtime/JRockitAgent.java || die
- # aspectj uses a renamed version of asm:4
- find -name "*.java" -exec sed -i -e 's/import aj.org.objectweb.asm./import org.objectweb.asm./g' {} \; || die
- mkdir -p "${S}"/target/classes/org/aspectj/weaver/ || die
-}
diff --git a/dev-java/aspectj/aspectj-1.9.7-r1.ebuild b/dev-java/aspectj/aspectj-1.9.7-r1.ebuild
new file mode 100644
index 000000000000..e3b7c408c182
--- /dev/null
+++ b/dev-java/aspectj/aspectj-1.9.7-r1.ebuild
@@ -0,0 +1,79 @@
+# 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
+
+DESCRIPTION="A seamless aspect-oriented extension to the Java programming language"
+HOMEPAGE="https://eclipse.org/aspectj/"
+SRC_URI="https://github.com/eclipse-aspectj/aspectj/archive/V${PV//./_}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+CDEPEND="dev-java/asm:9
+ dev-java/commons-logging:0
+ dev-java/jakarta-regexp:1.4"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+S=${WORKDIR}/org.${P//./_}
+
+JAVA_GENTOO_CLASSPATH_EXTRA="aspectjweaver.jar"
+JAVA_GENTOO_CLASSPATH="commons-logging,asm-9,jakarta-regexp-1.4"
+JAVA_ENCODING="iso8859-1"
+
+src_compile() {
+ JAVA_SRC_DIR=( {asm,bcel-builder,bridge,loadtime,org.aspectj.matcher,runtime,util,weaver}/src/main/java )
+ JAVA_RESOURCE_DIRS=( {bridge,org.aspectj.matcher,weaver}/src/main/resources )
+ JAVA_JAR_FILENAME="aspectjweaver.jar"
+ java-pkg-simple_src_compile
+ rm -rf target || die
+
+ JAVA_SRC_DIR=( runtime/src/main )
+ JAVA_JAR_FILENAME="aspectjrt.jar"
+ java-pkg-simple_src_compile
+ zip -d aspectjrt.jar *.dtd org/aspectj/{bridge,weaver}/* || die
+ rm -rf target || die
+
+ # package org.eclipse.core.resources does not exist
+ # package org.eclipse.core.runtime does not exist
+# JAVA_SRC_DIR=( org/aspectj/{ajde,ajdt,apache,asm,bridge,internal,lang,org,runtime,tools,util,weaver} )
+# JAVA_JAR_FILENAME="aspectjtools.jar"
+# java-pkg-simple_src_compile
+
+ # bcel-verifier is needed for testing dev-java/asm:3
+ # should go away once aspectjtools.jar can be built (included there)
+ JAVA_SRC_DIR=( bcel-builder/verifier-src )
+ JAVA_JAR_FILENAME="bcel-verifier.jar"
+ java-pkg-simple_src_compile
+ rm -rf target || die
+
+ # once again for javadocs
+ if use doc; then
+ JAVA_SRC_DIR=( {asm,bcel-builder,bridge,loadtime,org.aspectj.matcher,runtime,util,weaver}/src/main/java )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ java-pkg_dojar "aspectjweaver.jar"
+ java-pkg_dojar "aspectjrt.jar"
+# java-pkg_dojar "aspectjtools.jar"
+ java-pkg_dojar "bcel-verifier.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "org"
+ fi
+}
diff --git a/dev-java/aspectj/metadata.xml b/dev-java/aspectj/metadata.xml
index b1dd050ac0fa..32a6a916de1c 100644
--- a/dev-java/aspectj/metadata.xml
+++ b/dev-java/aspectj/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">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/assertj-core/Manifest b/dev-java/assertj-core/Manifest
index ab50860a2085..7e6324ac741b 100644
--- a/dev-java/assertj-core/Manifest
+++ b/dev-java/assertj-core/Manifest
@@ -1 +1 @@
-DIST assertj-core-2.3.0.tar.gz 611609 BLAKE2B b99a01f67da75bad18e08df739c10943012f75eda9855ed906d407e474eeafe9a30be2e761de0bc791d72a6ff8c7ec8181cd37c6b6c9126f073df82a974163c3 SHA512 da67930d45afde12d317579edb62b5cff546283ea6a252c9b297f21b74404d7cfb63372d339f51733322205b89d35734e97888085387fb1a83c80d5963b05fd3
+DIST assertj-core-3.10.0.tar.gz 1100495 BLAKE2B 4050060e027588d9c62abd5f4c6b77affd96d94a6474c4acc750a946cd3906787f9b2194627abff6d2e0849d590f5a74bbc702b41de6cbfaa09fae951a1012cf SHA512 3763768c5572e133de69735b01fd64432c4330723aa7e6cc0de42e5948cb2d455ae52d9ada66391fb41e47c261816fe12a00d07962e253f0da13ef49255fc5c6
diff --git a/dev-java/assertj-core/assertj-core-2.3.0.ebuild b/dev-java/assertj-core/assertj-core-2.3.0.ebuild
deleted file mode 100644
index 72ee40183061..000000000000
--- a/dev-java/assertj-core/assertj-core-2.3.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.assertj:assertj-core:2.3.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library that provides a fluent interface for writing assertions"
-HOMEPAGE="http://joel-costigliola.github.io/assertj/"
-SRC_URI="https://github.com/joel-costigliola/${PN}/archive/${P}.tar.gz"
-LICENSE="Apache-2.0"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-SLOT="2"
-
-CDEPEND="dev-java/cglib:3
- dev-java/junit:4"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${PN}-${P}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="cglib-3,junit-4"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc {CONTRIBUTING,README}.md
-}
diff --git a/dev-java/assertj-core/assertj-core-3.10.0.ebuild b/dev-java/assertj-core/assertj-core-3.10.0.ebuild
new file mode 100644
index 000000000000..38d9cb8187f0
--- /dev/null
+++ b/dev-java/assertj-core/assertj-core-3.10.0.ebuild
@@ -0,0 +1,109 @@
+# 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/assertj/assertj-core/archive/assertj-core-3.10.0.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild assertj-core-3.10.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.assertj:assertj-core:3.10.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Rich and fluent assertions for testing for Java"
+HOMEPAGE="https://assertj.github.io/doc/"
+SRC_URI="https://github.com/assertj/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/byte-buddy-1.12.12:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ dev-java/hamcrest-core:1.3
+ dev-java/junit:4
+ dev-java/opentest4j:0
+ test? (
+ dev-java/guava:0
+ dev-java/junit-dataprovider:0
+ dev-java/memoryfilesystem:0
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( {CODE_OF_CONDUCT,CONTRIBUTING,README}.md )
+
+PATCHES=( "${FILESDIR}"/assertj-core-3.10.0-java11-compatibility.patch )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_CLASSPATH_EXTRA="junit-4,hamcrest-core-1.3,opentest4j"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-dataprovider,memoryfilesystem,mockito-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+# These test classes are not run by "mvn test"
+# FAILURES!!!
+# Tests run: 11514, Failures: 32
+# Exclusion should leave "OK (11486 tests)" with jdk-11
+# and 14 test failures with jdk-17
+JAVA_TEST_EXCLUDES=(
+ org.assertj.core.internal.BaseArraysTest
+ org.assertj.core.internal.TestDescription
+ org.assertj.core.navigation.BaseNavigableIterableAssert_Test
+ org.assertj.core.navigation.BaseNavigableListAssert_Test
+ org.assertj.core.navigation.GenericNavigableAssert_Test
+ org.assertj.core.api.assumptions.BaseAssumptionsRunnerTest
+ org.assertj.core.api.atomic.referencearray.AtomicReferenceArrayAssert_filtered_baseTest
+ org.assertj.core.api.iterable.IterableAssert_filtered_baseTest
+ org.assertj.core.api.objectarray.ObjectArrayAssert_filtered_baseTest
+ org.assertj.core.api.TestCondition
+ org.assertj.core.api.BaseAssertionsTest
+ org.assertj.core.util.Files_TestCase
+ org.assertj.core.test.EqualsHashCodeContractTestCase
+ org.assertj.core.test.TestClassWithRandomId
+ org.assertj.core.test.TestData
+ org.assertj.core.test.TestFailures
+)
+
+src_prepare() {
+ default
+ sed \
+ -e 's:verifyZeroInteractions:verifyNoInteractions:' \
+ -i src/test/java/org/assertj/core/api/Assertions_assertThat_with_DoubleStream_Test.java \
+ -i src/test/java/org/assertj/core/api/Assertions_assertThat_with_IntStream_Test.java \
+ -i src/test/java/org/assertj/core/api/Assertions_assertThat_with_Iterator_Test.java \
+ -i src/test/java/org/assertj/core/api/Assertions_assertThat_with_LongStream_Test.java \
+ -i src/test/java/org/assertj/core/api/Assertions_assertThat_with_Stream_Test.java \
+ -i src/test/java/org/assertj/core/matcher/AssertionMatcher_matches_Test.java || die
+}
+
+src_test() {
+ 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.io=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.math=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.util=ALL-UNNAMED )
+ # Before further test_excluds it should now read "Tests run: 11486, Failures: 3"
+ # Additional exclusions will leave "OK (11476 tests)"
+ JAVA_TEST_EXCLUDES+=(
+ org.assertj.core.internal.classes.Classes_assertHasMethods_Test
+ org.assertj.core.util.xml.XmlStringPrettyFormatter_prettyFormat_Test
+ )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/assertj-core/files/assertj-core-3.10.0-java11-compatibility.patch b/dev-java/assertj-core/files/assertj-core-3.10.0-java11-compatibility.patch
new file mode 100644
index 000000000000..3f5210ae8458
--- /dev/null
+++ b/dev-java/assertj-core/files/assertj-core-3.10.0-java11-compatibility.patch
@@ -0,0 +1,456 @@
+From 2e107db2a40c5ef60d4f5370e1e71fa780b67599 Mon Sep 17 00:00:00 2001
+From: Erhard Pointl <epeee@users.noreply.github.com>
+Date: Wed, 23 May 2018 11:45:35 +0200
+Subject: [PATCH] java11 compatibility (#1243)
+
+Fix java11 ea compile errors by adding assertThat method for StringBuilder and StringBuffer to disambiguate method resolution as StringBuilder and StringBuffer implements Comparable in java 11
+---
+ .../java/org/assertj/core/api/Assertions.java | 23 ++++++++++++
+ .../core/api/AssertionsForClassTypes.java | 24 +++++++++++++
+ .../org/assertj/core/api/Assumptions.java | 25 +++++++++++++
+ .../org/assertj/core/api/BDDAssertions.java | 24 +++++++++++++
+ .../api/Java6AbstractBDDSoftAssertions.java | 24 +++++++++++++
+ .../Java6AbstractStandardSoftAssertions.java | 24 +++++++++++++
+ .../org/assertj/core/api/Java6Assertions.java | 24 +++++++++++++
+ .../assertj/core/api/Java6BDDAssertions.java | 24 +++++++++++++
+ .../org/assertj/core/api/WithAssertions.java | 24 +++++++++++++
+ .../org/assertj/core/api/WithAssumptions.java | 23 ++++++++++++
+ ...ons_assertThat_with_StringBuffer_Test.java | 36 +++++++++++++++++++
+ ...ns_assertThat_with_StringBuilder_Test.java | 36 +++++++++++++++++++
+ 12 files changed, 311 insertions(+)
+ create mode 100644 src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuffer_Test.java
+ create mode 100644 src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuilder_Test.java
+
+diff --git a/src/main/java/org/assertj/core/api/Assertions.java b/src/main/java/org/assertj/core/api/Assertions.java
+index 28c457f4c7..664748dad3 100644
+--- a/src/main/java/org/assertj/core/api/Assertions.java
++++ b/src/main/java/org/assertj/core/api/Assertions.java
+@@ -2565,6 +2565,29 @@ public static <T> T assertThat(final AssertProvider<T> component) {
+ return AssertionsForInterfaceTypes.assertThat(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(StringBuilder actual) {
++ return AssertionsForClassTypes.assertThat(actual);
++ }
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(StringBuffer actual) {
++ return AssertionsForClassTypes.assertThat(actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link CharSequenceAssert}from a {@link String}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/AssertionsForClassTypes.java b/src/main/java/org/assertj/core/api/AssertionsForClassTypes.java
+index fd05593159..fb2e2acfbd 100644
+--- a/src/main/java/org/assertj/core/api/AssertionsForClassTypes.java
++++ b/src/main/java/org/assertj/core/api/AssertionsForClassTypes.java
+@@ -487,6 +487,30 @@ public static AbstractShortArrayAssert<?> assertThat(short[] actual) {
+ return new ShortArrayAssert(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(StringBuilder actual) {
++ return new CharSequenceAssert(actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(StringBuffer actual) {
++ return new CharSequenceAssert(actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link StringAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/Assumptions.java b/src/main/java/org/assertj/core/api/Assumptions.java
+index 9ce773bd44..d26b2453ce 100644
+--- a/src/main/java/org/assertj/core/api/Assumptions.java
++++ b/src/main/java/org/assertj/core/api/Assumptions.java
+@@ -308,6 +308,31 @@ public static AbstractCharArrayAssert<?> assumeThat(char[] actual) {
+ return asAssumption(CharSequenceAssert.class, CharSequence.class, actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> assumption from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assumption for assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assumeThat(StringBuilder actual) {
++ return asAssumption(CharSequenceAssert.class, CharSequence.class, actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> assumption from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assumption for assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assumeThat(StringBuffer actual) {
++ return asAssumption(CharSequenceAssert.class, CharSequence.class, actual);
++ }
++
++
+ /**
+ * Creates a new instance of <code>{@link ShortAssert}</code> assumption.
+ *
+diff --git a/src/main/java/org/assertj/core/api/BDDAssertions.java b/src/main/java/org/assertj/core/api/BDDAssertions.java
+index c558153faf..03e574a8d2 100644
+--- a/src/main/java/org/assertj/core/api/BDDAssertions.java
++++ b/src/main/java/org/assertj/core/api/BDDAssertions.java
+@@ -800,6 +800,30 @@ public static AbstractShortArrayAssert<?> then(short[] actual) {
+ return assertThat(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link org.assertj.core.api.CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> then(StringBuilder actual) {
++ return assertThat(actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link org.assertj.core.api.CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> then(StringBuffer actual) {
++ return assertThat(actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link org.assertj.core.api.StringAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/Java6AbstractBDDSoftAssertions.java b/src/main/java/org/assertj/core/api/Java6AbstractBDDSoftAssertions.java
+index bd54285ae1..edb0451067 100644
+--- a/src/main/java/org/assertj/core/api/Java6AbstractBDDSoftAssertions.java
++++ b/src/main/java/org/assertj/core/api/Java6AbstractBDDSoftAssertions.java
+@@ -487,6 +487,30 @@ public CharSequenceAssert then(CharSequence actual) {
+ return proxy(CharSequenceAssert.class, CharSequence.class, actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public CharSequenceAssert then(StringBuilder actual) {
++ return proxy(CharSequenceAssert.class, CharSequence.class, actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public CharSequenceAssert then(StringBuffer actual) {
++ return proxy(CharSequenceAssert.class, CharSequence.class, actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link StringAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/Java6AbstractStandardSoftAssertions.java b/src/main/java/org/assertj/core/api/Java6AbstractStandardSoftAssertions.java
+index ee9d3fb72d..4ff4315635 100644
+--- a/src/main/java/org/assertj/core/api/Java6AbstractStandardSoftAssertions.java
++++ b/src/main/java/org/assertj/core/api/Java6AbstractStandardSoftAssertions.java
+@@ -489,6 +489,30 @@ public CharSequenceAssert assertThat(CharSequence actual) {
+ return proxy(CharSequenceAssert.class, CharSequence.class, actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public CharSequenceAssert assertThat(StringBuilder actual) {
++ return proxy(CharSequenceAssert.class, CharSequence.class, actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public CharSequenceAssert assertThat(StringBuffer actual) {
++ return proxy(CharSequenceAssert.class, CharSequence.class, actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link StringAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/Java6Assertions.java b/src/main/java/org/assertj/core/api/Java6Assertions.java
+index e88ccde3c8..10912f41bc 100644
+--- a/src/main/java/org/assertj/core/api/Java6Assertions.java
++++ b/src/main/java/org/assertj/core/api/Java6Assertions.java
+@@ -924,6 +924,30 @@ public static AbstractShortArrayAssert<?> assertThat(short[] actual) {
+ return new CharSequenceAssert(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(StringBuilder actual) {
++ return new CharSequenceAssert(actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(StringBuffer actual) {
++ return new CharSequenceAssert(actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link StringAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/Java6BDDAssertions.java b/src/main/java/org/assertj/core/api/Java6BDDAssertions.java
+index 4ffc23475b..009929ebc9 100644
+--- a/src/main/java/org/assertj/core/api/Java6BDDAssertions.java
++++ b/src/main/java/org/assertj/core/api/Java6BDDAssertions.java
+@@ -795,6 +795,30 @@ public static AbstractShortArrayAssert<?> then(short[] actual) {
+ return assertThat(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link org.assertj.core.api.CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> then(StringBuilder actual) {
++ return assertThat(actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link org.assertj.core.api.CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ public static AbstractCharSequenceAssert<?, ? extends CharSequence> then(StringBuffer actual) {
++ return assertThat(actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link org.assertj.core.api.StringAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/WithAssertions.java b/src/main/java/org/assertj/core/api/WithAssertions.java
+index c87854dd89..b71250c1bd 100644
+--- a/src/main/java/org/assertj/core/api/WithAssertions.java
++++ b/src/main/java/org/assertj/core/api/WithAssertions.java
+@@ -564,6 +564,30 @@ default <VALUE> AtomicStampedReferenceAssert<VALUE> assertThat(AtomicStampedRefe
+ return Assertions.assertThat(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ default AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(final StringBuilder actual) {
++ return Assertions.assertThat(actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ default AbstractCharSequenceAssert<?, ? extends CharSequence> assertThat(final StringBuffer actual) {
++ return Assertions.assertThat(actual);
++ }
++
+ /**
+ * Creates a new instance of <code>{@link ShortArrayAssert}</code>.
+ *
+diff --git a/src/main/java/org/assertj/core/api/WithAssumptions.java b/src/main/java/org/assertj/core/api/WithAssumptions.java
+index 0703fa33dd..56539e36dd 100644
+--- a/src/main/java/org/assertj/core/api/WithAssumptions.java
++++ b/src/main/java/org/assertj/core/api/WithAssumptions.java
+@@ -371,6 +371,29 @@ default <VALUE> AtomicStampedReferenceAssert<VALUE> assumeThat(AtomicStampedRefe
+ return Assumptions.assumeThat(actual);
+ }
+
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> assumption from a {@link StringBuilder}.
++ *
++ * @param actual the actual value.
++ * @return the created assumption for assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ default AbstractCharSequenceAssert<?, ? extends CharSequence> assumeThat(final StringBuilder actual) {
++ return Assumptions.assumeThat(actual);
++ }
++
++ /**
++ * Creates a new instance of <code>{@link CharSequenceAssert}</code> assumption from a {@link StringBuffer}.
++ *
++ * @param actual the actual value.
++ * @return the created assumption for assertion object.
++ * @since 3.11.0
++ */
++ @CheckReturnValue
++ default AbstractCharSequenceAssert<?, ? extends CharSequence> assumeThat(final StringBuffer actual) {
++ return Assumptions.assumeThat(actual);
++ }
+ /**
+ * Creates a new instance of <code>{@link ShortArrayAssert}</code> assumption.
+ *
+diff --git a/src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuffer_Test.java b/src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuffer_Test.java
+new file mode 100644
+index 0000000000..b3f020f101
+--- /dev/null
++++ b/src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuffer_Test.java
+@@ -0,0 +1,36 @@
++/*
++ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
++ * the License. You may obtain a copy of the License at
++ *
++ * http://www.apache.org/licenses/LICENSE-2.0
++ *
++ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
++ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
++ * specific language governing permissions and limitations under the License.
++ *
++ * Copyright 2012-2018 the original author or authors.
++ */
++package org.assertj.core.api;
++
++import org.junit.Test;
++
++import static org.assertj.core.api.Assertions.assertThat;
++
++/**
++ * Tests for <code>{@link Assertions#assertThat(StringBuffer)}</code>.
++ */
++public class Assertions_assertThat_with_StringBuffer_Test {
++
++ @Test
++ public void should_create_Assert() {
++ AbstractCharSequenceAssert<?, ?> assertions = Assertions.assertThat(new StringBuffer("Yoda"));
++ assertThat(assertions).isNotNull();
++ }
++
++ @Test
++ public void should_pass_actual() {
++ StringBuffer actual = new StringBuffer("Yoda");
++ AbstractCharSequenceAssert<?, ?> assertions = Assertions.assertThat(actual);
++ assertThat(assertions.actual).isSameAs(actual);
++ }
++}
+diff --git a/src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuilder_Test.java b/src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuilder_Test.java
+new file mode 100644
+index 0000000000..315d6d4b9f
+--- /dev/null
++++ b/src/test/java/org/assertj/core/api/Assertions_assertThat_with_StringBuilder_Test.java
+@@ -0,0 +1,36 @@
++/*
++ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
++ * the License. You may obtain a copy of the License at
++ *
++ * http://www.apache.org/licenses/LICENSE-2.0
++ *
++ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
++ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
++ * specific language governing permissions and limitations under the License.
++ *
++ * Copyright 2012-2018 the original author or authors.
++ */
++package org.assertj.core.api;
++
++import org.junit.Test;
++
++import static org.assertj.core.api.Assertions.assertThat;
++
++/**
++ * Tests for <code>{@link Assertions#assertThat(StringBuilder)}</code>.
++ */
++public class Assertions_assertThat_with_StringBuilder_Test {
++
++ @Test
++ public void should_create_Assert() {
++ AbstractCharSequenceAssert<?, ?> assertions = Assertions.assertThat(new StringBuilder("Yoda"));
++ assertThat(assertions).isNotNull();
++ }
++
++ @Test
++ public void should_pass_actual() {
++ StringBuilder actual = new StringBuilder("Yoda");
++ AbstractCharSequenceAssert<?, ?> assertions = Assertions.assertThat(actual);
++ assertThat(assertions.actual).isSameAs(actual);
++ }
++}
diff --git a/dev-java/assertj-core/metadata.xml b/dev-java/assertj-core/metadata.xml
index e2ea74d8f3ec..a009a741c11e 100644
--- a/dev-java/assertj-core/metadata.xml
+++ b/dev-java/assertj-core/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -7,6 +7,6 @@
</maintainer>
<longdescription>AssertJ core is a Java library that provides a fluent interface for writing assertions. Its main goal is to improve test code readability and make maintenance of tests easier. AssertJ core provides assertions for JDK standard types can be used with either JUnit or TestNG.</longdescription>
<upstream>
- <remote-id type="github">joel-costigliola/assertj-core</remote-id>
+ <remote-id type="github">assertj/assertj-core</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..4cc72084bcfb
--- /dev/null
+++ b/dev-java/auto-service-annotations/auto-service-annotations-1.1.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.google.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 ~arm arm64 ppc64 x86"
+
+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/auto-service-annotations/metadata.xml b/dev-java/auto-service-annotations/metadata.xml
new file mode 100644
index 000000000000..5b0a6ef06e06
--- /dev/null
+++ b/dev-java/auto-service-annotations/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/auto</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/avalon-framework/Manifest b/dev-java/avalon-framework/Manifest
deleted file mode 100644
index 4766781ae621..000000000000
--- a/dev-java/avalon-framework/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST avalon-framework-4.2.0-src.tar.gz 68887 BLAKE2B da71631548bf725315c57439c5db017107d4dac529fbfdd59f68da6b97faa8b9a78fc5d89b05ccd05c7ec68b2de05d286ece6654137278b3e8873c78c65adf6c SHA512 b53dc20ecec058ef0b35a626bea6e04f85f6ae8b3645d7dc5c33c194db49b42071093cd305ef718f925b948ec1b885b2a0d8bec534592f97dc48d6e93db45671
diff --git a/dev-java/avalon-framework/avalon-framework-4.2.0-r2.ebuild b/dev-java/avalon-framework/avalon-framework-4.2.0-r2.ebuild
deleted file mode 100644
index b04d776db7a1..000000000000
--- a/dev-java/avalon-framework/avalon-framework-4.2.0-r2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Avalon Framework"
-HOMEPAGE="http://avalon.apache.org/"
-SRC_URI="mirror://apache/avalon/avalon-framework/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="4.2"
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-CDEPEND="dev-java/avalon-logkit:2.0
- dev-java/log4j:0"
-RDEPEND=">=virtual/jre-1.4
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.4
- ${CDEPEND}"
-
-S="${WORKDIR}/${PN}"
-
-java_prepare() {
- cp "${FILESDIR}"/build.xml ./build.xml || die "couldn't copy build.xml"
- local libs="log4j,avalon-logkit-2.0"
- echo "classpath=$(java-pkg_getjars ${libs})" > build.properties
-}
-
-src_install() {
- java-pkg_dojar "${S}"/dist/avalon-framework.jar
-
- dodoc NOTICE.TXT
- use doc && java-pkg_dojavadoc target/docs
- use source && java-pkg_dosrc impl/src/java/*
-}
diff --git a/dev-java/avalon-framework/files/build.xml b/dev-java/avalon-framework/files/build.xml
deleted file mode 100644
index 422246c2dbdc..000000000000
--- a/dev-java/avalon-framework/files/build.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="avalon-framework" basedir="." default="jar">
- <property file="build.properties"/>
- <property file="default.properties"/>
-
- <property name="api.src" value="${basedir}/api/src/java"/>
- <property name="api.test.src" value="${basedir}/api/src/test"/>
- <property name="impl.src" value="${basedir}/impl/src/java"/>
- <property name="impl.test.src" value="${basedir}/impl/src/test"/>
-
- <property name="target" value="${basedir}/target"/>
- <property name="dist" value="${basedir}/dist"/>
-
- <property name="jarfile" value="avalon-framework.jar"/>
-
- <property name="packages" value="org.apache.avalon.framework.*"/>
-
- <target name="init">
- <tstamp/>
- <mkdir dir="${target}"/>
- <mkdir dir="${target}/docs"/>
- <mkdir dir="${target}/tests"/>
- <mkdir dir="${dist}"/>
- </target>
-
- <target name="compile" depends="init">
- <javac srcdir="${api.src}" destdir="${target}" source="1.4" target="1.4" classpath="${classpath}"/>
- <javac srcdir="${impl.src}" destdir="${target}" source="1.4" target="1.4" classpath="${classpath}:${target}"/>
- </target>
-
- <target name="javadoc" depends="compile">
- <javadoc sourcepath="${api.src}" destdir="${target}/docs" packagenames="${packages}" classpath="${classpath}" source="1.4"/>
- <javadoc sourcepath="${impl.src}" destdir="${target}/docs" packagenames="${packages}" classpath="${classpath}:${target}" source="1.4"/>
- </target>
-
- <target name="jar" depends="compile">
- <jar jarfile="${dist}/${jarfile}" basedir="${target}"/>
- </target>
-
- <target name="clean">
- <delete dir="${target}/api"/>
- <delete dir="${target}/impl"/>
- <delete dir="${target}/docs"/>
- <delete dir="${target}"/>
- <delete dir="${dist}"/>
- </target>
-</project>
diff --git a/dev-java/avalon-framework/metadata.xml b/dev-java/avalon-framework/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/avalon-framework/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/avalon-logkit/Manifest b/dev-java/avalon-logkit/Manifest
deleted file mode 100644
index 10a23e81558a..000000000000
--- a/dev-java/avalon-logkit/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST avalon-logkit-2.1-src.tar.gz 60218 BLAKE2B 1c35b38a22d95cffabb19e099d42697adf7aa6ad471f6cb62e02a30b6612c8405b9f7473ca61ea4f7f9c1f3b1ece6ee68f7ec711b79672330db3ac9e57642e0d SHA512 9977a3a172ca4fb5c3ad1f623ff109214f71900d2e244f175cc5d140f5f9993caca7e5ca3220728f18a1d6242d11a48990f9ce0150c36b7a9bb10a7a6d5a905a
diff --git a/dev-java/avalon-logkit/avalon-logkit-2.1-r9.ebuild b/dev-java/avalon-logkit/avalon-logkit-2.1-r9.ebuild
deleted file mode 100644
index efbc19a52df0..000000000000
--- a/dev-java/avalon-logkit/avalon-logkit-2.1-r9.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-# NB: this project is dead and we should look into removing it from the tree.
-# Take a look at the homepage.
-DESCRIPTION="Easy-to-use Java logging toolkit"
-HOMEPAGE="https://avalon.apache.org/closed.html"
-SRC_URI="https://archive.apache.org/dist/excalibur/avalon-logkit/source/avalon-logkit-${PV}-src.tar.gz"
-
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-LICENSE="Apache-2.0"
-SLOT="2.0"
-IUSE=""
-
-CDEPEND="
- dev-java/log4j:0
- java-virtuals/jms:0
- dev-java/oracle-javamail:0
- java-virtuals/servlet-api:3.0"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8:*
- test? (
- dev-java/ant-junit:0
- )"
-
-src_prepare() {
- default
- # Doesn't like 1.6 / 1.7 changes to JDBC
- eapply "${FILESDIR}/${P}-java7.patch"
-
- java-ant_ignore-system-classes
-
- java-ant_xml-rewrite \
- -f build.xml \
- -c -e available \
- -a classpathref \
- -v 'build.classpath' || die
-
- java-pkg_filter-compiler jikes
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_ENCODING="UTF-8"
-
-EANT_GENTOO_CLASSPATH="oracle-javamail,jms,log4j,servlet-api-3.0"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/avalon-logkit/files/avalon-logkit-2.1-java7.patch b/dev-java/avalon-logkit/files/avalon-logkit-2.1-java7.patch
deleted file mode 100644
index cb2611bf0de4..000000000000
--- a/dev-java/avalon-logkit/files/avalon-logkit-2.1-java7.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Nur avalon-logkit-2.1/src/java/org/apache/log/output/db/DefaultDataSource.java avalon-logkit-2.1_patched//src/java/org/apache/log/output/db/DefaultDataSource.java
---- avalon-logkit-2.1/src/java/org/apache/log/output/db/DefaultDataSource.java 2005-08-30 05:03:49.000000000 +0300
-+++ avalon-logkit-2.1_patched//src/java/org/apache/log/output/db/DefaultDataSource.java 2011-09-27 08:27:49.313005212 +0300
-@@ -20,7 +20,9 @@
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.SQLException;
-+import java.sql.SQLFeatureNotSupportedException;
- import javax.sql.DataSource;
-+import java.util.logging.Logger;
-
- /**
- * A basic datasource that doesn't do any pooling but just wraps
-@@ -111,4 +113,16 @@
- {
- m_logWriter = logWriter;
- }
-+
-+ public boolean isWrapperFor(Class cls) {
-+ return false;
-+ }
-+
-+ public Object unwrap(Class cls) throws SQLException {
-+ throw new SQLException("Not a wrapper for " + cls);
-+ }
-+
-+ public Logger getParentLogger() throws SQLFeatureNotSupportedException {
-+ throw new SQLFeatureNotSupportedException("Not a supported feature");
-+ }
- }
diff --git a/dev-java/avalon-logkit/metadata.xml b/dev-java/avalon-logkit/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/avalon-logkit/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/backport-util-concurrent/Manifest b/dev-java/backport-util-concurrent/Manifest
deleted file mode 100644
index f00923c8a456..000000000000
--- a/dev-java/backport-util-concurrent/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST backport-util-concurrent-Java60-3.1-src.tar.bz2 622882 BLAKE2B 49dd1065fb80d697dc917aeff1bf653a1c82bc24e3edf6d1eb272f3cee17130a6db20f562f40e7911a6382f8c545bdf37e1ce34b69a6a7ddf5a569e114a78e87 SHA512 caef9eef43d0de5ee3d05a84b44d3d2f6bb9498bdc82105626bd2631494fcd0347387da9beb6000fe9c80efacbbf2c2c3603a97b53e4c74037eaf629d790cd54
diff --git a/dev-java/backport-util-concurrent/backport-util-concurrent-3.1-r1.ebuild b/dev-java/backport-util-concurrent/backport-util-concurrent-3.1-r1.ebuild
deleted file mode 100644
index eb44fa337d70..000000000000
--- a/dev-java/backport-util-concurrent/backport-util-concurrent-3.1-r1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-SF_PN="backport-jsr166"
-MY_P="${PN}-Java60-${PV}"
-
-DESCRIPTION="A portability wrapper for java.util.concurrent API (jsr166) 6.0"
-HOMEPAGE="http://backport-jsr166.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${SF_PN}/${PV}/${MY_P}-src.tar.bz2"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/junit:0
- )
- app-arch/unzip"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}-src"
-
-java_prepare() {
- if use test; then
- # make test not depend on make
- epatch "${FILESDIR}/${PN}-3.0-test.patch"
- else
- # don't compile test classes
- epatch "${FILESDIR}/${PN}-3.0-notest.patch"
- fi
-
- cd "${S}/external" || die
- rm -v *.jar || die
-
- use test && java-pkg_jar-from --build-only junit
-}
-
-EANT_BUILD_TARGET="javacompile archive"
-EANT_TEST_TARGET="test"
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- dohtml README.html
-
- use doc && java-pkg_dojavadoc doc/api
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-notest.patch b/dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-notest.patch
deleted file mode 100644
index 65642012fddb..000000000000
--- a/dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-notest.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- build.xml.orig 2007-05-09 23:23:00.000000000 +0200
-+++ build.xml 2007-05-09 23:23:34.000000000 +0200
-@@ -33,9 +33,9 @@
- deprecation="true" destdir="${dest}" nowarn="false"
- source="1.4" target="1.4">
- <src path="src"/>
-- <src path="test/tck/src"/>
-+<!-- <src path="test/tck/src"/>
- <src path="test/loops/src"/>
-- <src path="test/serialization"/>
-+ <src path="test/serialization"/>-->
- </javac>
- </target>
-
diff --git a/dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-test.patch b/dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-test.patch
deleted file mode 100644
index 493738b6055d..000000000000
--- a/dev-java/backport-util-concurrent/files/backport-util-concurrent-3.0-test.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- build.xml.original 2007-02-10 02:03:52.000000000 +0100
-+++ build.xml 2007-02-10 02:04:02.000000000 +0100
-@@ -107,7 +107,7 @@
- -Djunit.ui=swingui property.
- -->
-
-- <target name="test" depends="jdeps,make"
-+ <target name="test" depends="jdeps"
- description="runs TCK unit tests on the backport">
-
- <property name="junit.ui" value="textui"/>
diff --git a/dev-java/backport-util-concurrent/metadata.xml b/dev-java/backport-util-concurrent/metadata.xml
deleted file mode 100644
index 522fb4206926..000000000000
--- a/dev-java/backport-util-concurrent/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- This package is the backport of java.util.concurrent API, introduced
- in Java 5.0, to Java 1.4, and from Java 6.0 to Java 5.0"
- </longdescription>
- <upstream>
- <remote-id type="sourceforge">backport-jsr166</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/batik/Manifest b/dev-java/batik/Manifest
index d7732ad2c392..38cde9303492 100644
--- a/dev-java/batik/Manifest
+++ b/dev-java/batik/Manifest
@@ -1 +1,2 @@
-DIST batik-src-1.9.tar.gz 16748072 BLAKE2B 4e23c0de3d56ba130c5bc9ef80a01549e8c11ab4db3b1ac5dae8525cf0a3a8b7f4df3161c12f1f0df9c74229aaf2034fb6c9c2f91b7fc7407a0af580d144e606 SHA512 96a5c16bd3d61ea33ed5013fd0b00f1724470d9b667f0f84ef4a29dcaaa19b1cc8ffcc92dc49767f4e29d77a47f99df5afca479336ac5619778b51a6fb6cd952
+DIST batik-src-1.17.tar.gz 13578640 BLAKE2B c77f994674dd8e8054ad6f753e53304ce6daad9b9eadceef053ede0c746872528ecd1caa6e87064d41892fed0c39f07936779851777208229f817bf84cb529b2 SHA512 0879f298142630e96931f429ade5e7107d2d981c6c3a99b8f2ddca8e26ea4fde1b7c717d06412c57d64759bed6c5f2d056970d59e19e66caafb926cb30078516
+DIST batik-src-1.17.tar.gz.asc 833 BLAKE2B 33836c8f0cbc878410ce8b2738dbbb4dc47d6067c5f58febb3460d836424b1c1d815f369bd7aeb15a8ed9371628e03731c1338aa6524c8a935c48b8092e3bb1e SHA512 513bd3d5c212ce4d98daa911f36e1b00e2f2b7a637e93ea116a2ebe848e20664d722ccf6c8928eac7170fa84d3b38eec86a71c8a0a7e21fd8622c8d475991c60
diff --git a/dev-java/batik/batik-1.17-r1.ebuild b/dev-java/batik/batik-1.17-r1.ebuild
new file mode 100644
index 000000000000..b389f8994bd7
--- /dev/null
+++ b/dev-java/batik/batik-1.17-r1.ebuild
@@ -0,0 +1,247 @@
+# 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.xmlgraphics:batik:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit desktop java-pkg-2 java-pkg-simple xdg-utils verify-sig
+
+DESCRIPTION="XML Graphics Batik"
+HOMEPAGE="https://xmlgraphics.apache.org/batik/"
+SRC_URI="mirror://apache/xmlgraphics/batik/source/batik-src-${PV}.tar.gz
+ verify-sig? ( https://downloads.apache.org/xmlgraphics/batik/source/batik-src-${PV}.tar.gz.asc )"
+S="${WORKDIR}/batik-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="1.16"
+KEYWORDS="amd64 ~arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/jacl:0
+ dev-java/rhino:1.6
+ dev-java/xalan:0
+ dev-java/xml-commons-external:1.4
+ dev-java/xmlgraphics-commons:2
+"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+BDEPEND="
+ app-arch/zip
+ verify-sig? ( sec-keys/openpgp-keys-apache-xmlgraphics-batik )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xmlgraphics-batik.apache.org.asc"
+
+DOCS=( CHANGES NOTICE README )
+
+# Modules batik-rasterizer-ext and batik-squiggle-ext, upstream puts their jar files in the extensions
+# directory, see batik-extension/src/main/resources/org/apache/batik/extensions/README.txt
+# We comment them out but keep them in the mudules list for later.
+# The same for batik-test-old which depends on fop-transcoder-allinone which itself depends on batik.
+# We also don't build batik-shared-resources since we install those resources on global scope.
+# And we don't build batik-all. Instead we install the modules.
+# BATIK_MODULES is the "Reactor Build Order" extracted from the output of "mvn dependency:tree":
+# mvn -DskipTests dependency:tree \
+# | sed -n '/Reactor Build Order:/,/Building org/p' \
+# | cut -d':' -f2 | cut -d' ' -f1 | grep 'batik-' || die
+BATIK_MODULES=(
+# batik-shared-resources
+ batik-constants
+ batik-i18n
+ batik-test
+ batik-util
+ batik-awt-util
+ batik-css
+ batik-ext
+ batik-xml
+ batik-dom
+ batik-parser
+ batik-svg-dom
+ batik-anim
+ batik-gvt
+ batik-script
+ batik-bridge
+ batik-svggen
+ batik-transcoder
+ batik-codec
+ batik-extension
+ batik-gui-util
+ batik-svgrasterizer
+# batik-rasterizer-ext
+ batik-rasterizer
+ batik-slideshow
+ batik-swing
+ batik-svgbrowser
+# batik-squiggle-ext
+ batik-squiggle
+ batik-svgpp
+ batik-ttf2svg
+# batik-all
+ batik-test-swing
+ batik-test-svg
+# batik-test-old
+)
+
+src_prepare() {
+ java-pkg_clean
+ java-pkg-2_src_prepare
+ # We drop support for jython due to bug #825486.
+ rm batik-script/src/main/java/org/apache/batik/script/jpython/JPythonInterpreter.java || die
+ rm batik-script/src/main/java/org/apache/batik/script/jpython/JPythonInterpreterFactory.java || die
+
+ cat > "batik-squiggle-${SLOT}.desktop" <<-EOF || die
+ [Desktop Entry]
+ Name=Squiggle
+ Comment=SVG browser
+ Exec=batik-squiggle-${SLOT}
+ Icon=init
+ Terminal=false
+ Type=Application
+ Categories=Graphics;VectorGraphics;
+ MimeType=image/svg+xml
+ EOF
+}
+
+src_compile() {
+ # We loop over the modules list and compile the jar files.
+ local module
+ for module in "${BATIK_MODULES[@]}"; do
+ einfo "Compiling ${module}"
+
+ JAVA_JAR_FILENAME="${module}.jar"
+ JAVA_MAIN_CLASS=""
+ JAVA_RESOURCE_DIRS=""
+ JAVA_SRC_DIR=""
+
+ # Not all of the modules have resources.
+ if [[ -d "${module}/src/main/resources" ]]; then
+ JAVA_RESOURCE_DIRS="${module}/src/main/resources"
+ fi
+
+ # Get Main-Class from the module's pom.xml
+ JAVA_MAIN_CLASS=$( sed -n 's:.*<mainClass>\(.*\)</mainClass>:\1:p' "${module}/pom.xml" )
+
+ # Some modules don't have source code.
+ if [[ -d "${module}/src/main/java/org" ]]; then
+ JAVA_SRC_DIR="${module}/src/main/java"
+ java-pkg-simple_src_compile
+ else
+ # This case applies to batik-rasterizer.
+ if [[ -d "${module}/src/main/resources/org" ]]; then
+ jar -cfe "${module}.jar" "${JAVA_MAIN_CLASS}" -C "${module}/src/main/resources" . || die
+ # Else for batik-squiggle (also batik-rasterizer-ext, batik-squiggle-ext)
+ else
+ # Create the JAR file (not possible without adding at least one file).
+ jar -cfe "${module}.jar" "${JAVA_MAIN_CLASS}" -C . README || die
+ zip -d "${module}.jar" "README" || die
+ fi
+ fi
+
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${module}.jar"
+
+ rm -fr target || die
+ done
+
+ if use doc; then
+ JAVA_SRC_DIR=""
+ JAVA_JAR_FILENAME="ignoreme.jar"
+
+ for module in "${BATIK_MODULES[@]}"; do
+ # Some modules don't have source code
+ if [[ -d "${module}/src/main/java/org" ]]; then
+ JAVA_SRC_DIR+=( "${module}/src/main/java" )
+ fi
+ done
+
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test() {
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+ for module in "${BATIK_MODULES[@]}"; do
+ einfo "Testing ${module}"
+
+ JAVA_TEST_SRC_DIR=""
+ JAVA_TEST_RESOURCE_DIRS=""
+ JAVA_TEST_RUN_ONLY=""
+
+ if [[ -d "${module}/src/test/resources" ]]; then
+ JAVA_TEST_RESOURCE_DIRS="${module}/src/test/resources"
+ fi
+
+ # https://github.com/apache/xmlgraphics-batik/blob/refs/tags/batik-1_14/batik-util/pom.xml#L74-L75
+ if [[ "${module}" == batik-util ]]; then
+ JAVA_TEST_RUN_ONLY="org.apache.batik.util.Base64TestCases"
+ fi
+
+ if [[ -d "${module}/src/test/java/org" ]]; then
+ JAVA_TEST_SRC_DIR="${module}/src/test/java"
+ java-pkg-simple_src_test
+ fi
+ done
+}
+
+src_install() {
+ einstalldocs
+ domenu "batik-squiggle-${SLOT}.desktop"
+ newicon -s scalable \
+ batik-svgbrowser/src/main/resources/org/apache/batik/apps/svgbrowser/resources/init.svg \
+ squiggle-${SLOT}.svg
+
+ for module in "${BATIK_MODULES[@]}"; do
+ JAVA_MAIN_CLASS=$( sed -n 's:.*<mainClass>\(.*\)</mainClass>:\1:p' "${module}/pom.xml" )
+
+ java-pkg_dojar "${module}.jar"
+
+ # Add a launcher if the module has a MainClass.
+ if [[ -n "${JAVA_MAIN_CLASS}" ]]; then
+ java-pkg_dolauncher "${module}-${SLOT}" --main "${JAVA_MAIN_CLASS}"
+ fi
+
+ # Some modules don't have source code
+ if [[ -d "${module}/src/main/java/org" ]]; then
+ if use source; then
+ java-pkg_dosrc "${module}/src/main/java/*"
+ fi
+ fi
+ done
+
+ local java_policy_file="${JAVA_PKG_SHAREPATH}/etc/${PN}.policy"
+ insinto "$(dirname "${java_policy_file}")"
+ newins - "$(basename "${java_policy_file}")" <<- _EOF_
+ grant codeBase "file:${EPREFIX}${JAVA_PKG_JARDEST}/-" {
+ permission java.security.AllPermission;
+ };
+ _EOF_
+ java-pkg_register-environment-variable \
+ gjl_java_args \
+ "\$gjl_java_args -Djava.security.policy=file:${EPREFIX}${java_policy_file}"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/dev-java/batik/batik-1.9.ebuild b/dev-java/batik/batik-1.9.ebuild
deleted file mode 100644
index 2e905bf8073d..000000000000
--- a/dev-java/batik/batik-1.9.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc"
-
-inherit java-pkg-2 java-ant-2 epatch
-
-DESCRIPTION="Java based SVG toolkit"
-HOMEPAGE="https://xmlgraphics.apache.org/batik/"
-SRC_URI="http://apache.mirrors.ovh.net/ftp.apache.org/dist/xmlgraphics/${PN}/source/${PN}-src-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.9"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE="doc python tcl"
-
-CDEPEND="
- tcl? ( dev-java/jacl:0 )
- python? ( dev-java/jython:2.7 )
- dev-java/xalan:0
- dev-java/rhino:1.6
- dev-java/ant-core:0
- dev-java/xmlgraphics-commons:2
- dev-java/xml-commons-external:1.3"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-EANT_GENTOO_CLASSPATH="
- xml-commons-external-1.3
- xmlgraphics-commons-2
- rhino-1.6
- xalan"
-
-src_prepare() {
- default
-
- # See bug 318323.
- local file
- for file in build.xml contrib/rasterizertask/build.xml; do
- java-ant_xml-rewrite -f ${file} -c -e javadoc -a failonerror -v no -a maxmemory -v 512m
- done
-
- # See bug 628812.
- use tcl && epatch "${FILESDIR}/${P}-ImportInfo.patch"
-
- cd lib || die
- rm -v *.jar build/*.jar || die
- use python && java-pkg_jar-from jython-2.7
- use tcl && java-pkg_jar-from jacl
-}
-
-src_compile() {
- # Fails to build on amd64 without this
- export ANT_OPTS="-Xmx256m"
- use amd64 && export ANT_OPTS="-Xmx1g"
-
- eant jars all-jar $(use_doc)
- cd contrib/rasterizertask || die
- eant -Dgentoo.classpath="$(java-pkg_getjar ant-core ant.jar):../../classes" jar $(use_doc)
-}
-
-src_install() {
- batik_unversion_jars() {
- local jar
- for jar in batik-*.jar; do
- newj="${jar%-*}.jar"
- java-pkg_newjar ${jar} ${newj}
- done
- }
-
- # First unversion jars in ${P}/lib
- cd "${S}/${P}/lib" || die
- batik_unversion_jars
-
- # Then, only those in ${P}
- cd "${S}/${P}" || die
- batik_unversion_jars
-
- # Proceed with documentation installation
- cd "${S}" || die
- dodoc README CHANGES
- use doc && java-pkg_dojavadoc "${P}/docs/javadoc"
-
- # See bug #116976.
- java-pkg_dolauncher "batik-${SLOT}" \
- --pwd "${EPREFIX}/usr/share/${PN}-${SLOT}/" \
- --main org.apache.batik.apps.svgbrowser.Main
-
- # To find these lsjar batik-${SLOT} | grep Main.class
- local launcher
- for launcher in ttf2svg slideshow svgpp rasterizer; do
- java-pkg_dolauncher batik-${launcher}-${SLOT} \
- --main org.apache.batik.apps.${launcher}.Main
- done
-
- # Install and register the ant task.
- java-pkg_dojar contrib/rasterizertask/build/lib/RasterizerTask.jar
- java-pkg_register-ant-task
-}
diff --git a/dev-java/batik/files/batik-1.9-ImportInfo.patch b/dev-java/batik/files/batik-1.9-ImportInfo.patch
deleted file mode 100644
index 103b99e1b967..000000000000
--- a/dev-java/batik/files/batik-1.9-ImportInfo.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/batik-script/src/main/java/org/apache/batik/script/jacl/JaclInterpreterFactory.java 2017-10-28 17:24:11.401276868 +0000
-+++ b/batik-script/src/main/java/org/apache/batik/script/jacl/JaclInterpreterFactory.java 2017-10-28 17:27:13.314255999 +0000
-@@ -20,6 +20,7 @@
-
- import java.net.URL;
-
-+import org.apache.batik.script.ImportInfo;
- import org.apache.batik.script.Interpreter;
- import org.apache.batik.script.InterpreterFactory;
-
diff --git a/dev-java/batik/metadata.xml b/dev-java/batik/metadata.xml
index 2eec2d22b8d0..a9b2477896cb 100644
--- a/dev-java/batik/metadata.xml
+++ b/dev-java/batik/metadata.xml
@@ -1,10 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+<upstream>
+ <bugs-to>https://issues.apache.org/jira/projects/BATIK/issues/</bugs-to>
+ <remote-id type="github">apache/xmlgraphics-batik</remote-id>
+</upstream>
<longdescription>
Java toolkit for applications or applets that want to use
images in the Scalable Vector Graphics (SVG) format for various
diff --git a/dev-java/bcel/Manifest b/dev-java/bcel/Manifest
index 293f425488f6..387e9e378b12 100644
--- a/dev-java/bcel/Manifest
+++ b/dev-java/bcel/Manifest
@@ -1 +1,2 @@
-DIST bcel-6.5.0-sources.tar.gz 1009051 BLAKE2B fd07d8a5144112efe38e30a8d10c3b6a189a4ec70defa96c402fa88027acf84b07c15138d235354baac18bdb798d407c11ccfada7bbe7339532f829e814e2d2c SHA512 c6da4b4d4cbad3ad2b3a4c0208063e3858170356fc4f6670c95ce819f0aea69f103914875a12bf2715a869c2b19a3e79fcb55a695eb269d9937520db25da1e3d
+DIST bcel-6.6.0-src.tar.gz 1009654 BLAKE2B 9043cc077773383aebf9b56e8c67de9ffb9e278db1737eefb5966b32cbe36131bd6ec14454361daaf424a8114de21e804dadaebfbee6d11493026b8a98135668 SHA512 13f361be498625c3276860ae14c225c49135687f4ba69de4afaac2d135df4e5c6b51277e3cd4c05bac27156e4fab5316c102a25a67d8abb6c640499917d01917
+DIST bcel-6.6.0-src.tar.gz.asc 488 BLAKE2B b3d07f9d6f8f2b92215173d390281cab03b98dea2e926f5fe7f3ced74610c56dfa2915c5bfeeca360cd3904773cb66f8d9042062e6b3821f707853ef5c82fc73 SHA512 65830fcd5f5adb1deb92edd0b9181b9aeaf3d5357858a348606416dcfb416f58420ceb6c8ea58a550d5d7b4d1909dcff125b31496c00a9107ae211936c1d6e1d
diff --git a/dev-java/bcel/bcel-6.5.0-r1.ebuild b/dev-java/bcel/bcel-6.5.0-r1.ebuild
deleted file mode 100644
index 183c85a56fa3..000000000000
--- a/dev-java/bcel/bcel-6.5.0-r1.ebuild
+++ /dev/null
@@ -1,80 +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 pom.xml --download-uri https://ftp.wayne.edu/apache//commons/bcel/source/bcel-6.5.0-src.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" --ebuild bcel-6.5.0-r1.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.apache.bcel:bcel:6.5.0"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache Commons Bytecode Engineering Library"
-HOMEPAGE="https://commons.apache.org/proper/commons-bcel"
-SRC_URI="mirror://apache/commons/${PN}/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-# Compile dependencies
-# POM: pom.xml
-# test? javax:javaee-api:6.0 -> !!!groupId-not-found!!!
-# test? junit:junit:4.13 -> >=dev-java/junit-4.13.1:4
-# test? net.java.dev.jna:jna:5.5.0 -> !!!groupId-not-found!!!
-# test? net.java.dev.jna:jna-platform:5.5.0 -> !!!groupId-not-found!!!
-# test? org.apache.commons:commons-lang3:3.10 -> >=dev-java/commons-lang-3.11:3.6
-
-DEPEND="
- >=virtual/jdk-1.8:*
- !arm? (
- !arm64? (
- !ppc64? (
- test? (
- dev-java/commons-collections:4
- dev-java/commons-lang:3.6
- dev-java/jna:4
- dev-java/jmh-core:0
- dev-java/oracle-javamail:0
- )
- )
- )
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-RESTRICT="!test? ( test ) arm? ( test ) arm64? ( test ) ppc64? ( test )"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="commons-collections-4,commons-lang-3.6,jmh-core,jna-4,junit-4,oracle-javamail"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "src/test/resources"
-)
-JAVA_TEST_EXCLUDES=(
- # Invalid test class
- "org.apache.bcel.data.AnonymousClassTest"
- "org.apache.bcel.verifier.tests.TestArray01"
- "org.apache.bcel.verifier.tests.TestArrayAccess01"
- "org.apache.bcel.verifier.tests.TestArrayAccess02Creator"
- "org.apache.bcel.verifier.tests.TestArrayAccess03Creator"
- "org.apache.bcel.verifier.tests.TestArrayAccess04Creator"
- "org.apache.bcel.verifier.tests.TestLegalInvokeInterface01"
- "org.apache.bcel.verifier.tests.TestLegalInvokeSpecial01"
- "org.apache.bcel.verifier.tests.TestLegalInvokeSpecial02"
- "org.apache.bcel.verifier.tests.TestLegalInvokeStatic01"
- "org.apache.bcel.verifier.tests.TestLegalInvokeVirtual01"
- "org.apache.bcel.verifier.tests.TestLegalInvokeVirtual02"
- "org.apache.bcel.verifier.tests.TestReturn01Creator"
- "org.apache.bcel.verifier.tests.TestReturn02"
- "org.apache.bcel.verifier.tests.TestCreator"
- "org.apache.bcel.verifier.tests.TestReturn03Creator"
-)
diff --git a/dev-java/bcel/bcel-6.5.0.ebuild b/dev-java/bcel/bcel-6.5.0.ebuild
deleted file mode 100644
index b4fcd293facd..000000000000
--- a/dev-java/bcel/bcel-6.5.0.ebuild
+++ /dev/null
@@ -1,31 +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 bcel-6.5.0-src --pom pom.xml --download-uri https://ftp.wayne.edu/apache//commons/bcel/source/bcel-6.5.0-src.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" --ebuild bcel-6.5.0.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.bcel:bcel:6.5.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache Commons Bytecode Engineering Library"
-HOMEPAGE="https://commons.apache.org/proper/commons-bcel"
-SRC_URI="mirror://apache/commons/${PN}/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-DEPEND="
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/bcel/bcel-6.6.0.ebuild b/dev-java/bcel/bcel-6.6.0.ebuild
new file mode 100644
index 000000000000..24751a65c002
--- /dev/null
+++ b/dev-java/bcel/bcel-6.6.0.ebuild
@@ -0,0 +1,59 @@
+# 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 mirror://apache/commons/bcel/source/bcel-6.6.0-src.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" --ebuild bcel-6.6.0.ebuild
+
+EAPI=8
+
+# No tests, junit-jupiter is not packaged
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.bcel:bcel:6.6.0"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Apache Commons Bytecode Engineering Library"
+HOMEPAGE="https://commons.apache.org/proper/commons-bcel/"
+SRC_URI="https://archive.apache.org/dist/commons/bcel/source/bcel-${PV}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/bcel/source/bcel-${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"
+
+# Common dependencies
+# POM: pom.xml
+# org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
+
+CP_DEPEND="
+ dev-java/commons-lang:3.6
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? javax:javaee-api:6.0 -> !!!groupId-not-found!!!
+# test? net.java.dev.jna:jna:5.12.1 -> !!!suitable-mavenVersion-not-found!!!
+# test? net.java.dev.jna:jna-platform:5.12.1 -> !!!artifactId-not-found!!!
+# test? org.apache.commons:commons-exec:1.3 -> !!!artifactId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter:5.9.1 -> !!!groupId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+BDEPEND="
+ verify-sig? ( sec-keys/openpgp-keys-apache-commons )
+"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+
+DOCS=( NOTICE.txt RELEASE-NOTES.txt )
+
+S="${WORKDIR}/${P}-src"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.bcel"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/bcel/metadata.xml b/dev-java/bcel/metadata.xml
index a831a151c83a..5b5f89c96e8e 100644
--- a/dev-java/bcel/metadata.xml
+++ b/dev-java/bcel/metadata.xml
@@ -1,19 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">
- This is the main Reference implementation of the BCEL JavaClass API.
- The Byte Code Engineering Library (formerly known as JavaClass) is intended
- to give users a convenient possibility to analyze, create, and manipulate
- (binary) Java class files (those ending with .class). Classes are represented
- by objects which contain all the symbolic information of the given class:
- methods, fields and byte code instructions, in particular.
-</longdescription>
- <upstream>
- <remote-id type="github">apache/commons-bcel</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <longdescription lang="en">
+ This is the main Reference implementation of the BCEL JavaClass API.
+ The Byte Code Engineering Library (formerly known as JavaClass) is intended
+ to give users a convenient possibility to analyze, create, and manipulate
+ (binary) Java class files (those ending with .class). Classes are represented
+ by objects which contain all the symbolic information of the given class:
+ methods, fields and byte code instructions, in particular.
+ </longdescription>
+ <upstream>
+ <changelog>https://downloads.apache.org/commons/bcel/RELEASE-NOTES.txt</changelog>
+ <remote-id type="github">apache/commons-bcel</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/bcmail/Manifest b/dev-java/bcmail/Manifest
index 4482b5ba1fde..680d64e45a8b 100644
--- a/dev-java/bcmail/Manifest
+++ b/dev-java/bcmail/Manifest
@@ -1,2 +1 @@
-DIST bcmail-jdk15-145.tar.gz 483519 BLAKE2B aed9d4ef1ede10b97979652a012f18e45b7d4d597cb8b3ad168e847563ce14f7effe429b7f213adb77befeb144c4c3a279738b76718bde85ce04265d62ef8e75 SHA512 2d3232d5eb1cd75ad56a7316beb32880f3f935fcd3ed0a6cb2cc3e1861dc9f0bece0cbae53471760246505adb5c28328691eb82e11fedb0b160c1248d21c48bb
-DIST bcmail-jdk15on-150.tar.gz 221760 BLAKE2B 48c5d3b692295dcf2ce1e73ce58097b20c11cc353a8e13da9b8987f19eb69f1dbb37747e778e9323c170c0a3baa2ec7257681beea8da4e95343f71c5c6ed186a SHA512 91727ddc4bf932cfaedd3cb90a807b5fec3120e56fde3e5fc73bb5bf2e97db50a35a63e0b5e342fe29e4b974579c5cdd5d427d01c9dd8e7abd521ccd3d1959f1
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
diff --git a/dev-java/bcmail/bcmail-1.45-r5.ebuild b/dev-java/bcmail/bcmail-1.45-r5.ebuild
deleted file mode 100644
index 58f360aa517e..000000000000
--- a/dev-java/bcmail/bcmail-1.45-r5.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15-${PV/./}"
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="http://www.bouncycastle.org/java.html"
-SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="1.45"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-
-CDEPEND="
- dev-java/junit:0
- dev-java/oracle-javamail:0
- dev-java/bcprov:${SLOT}"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="
- junit
- bcprov-${SLOT}
- oracle-javamail
-"
-
-src_unpack() {
- default
- cd "${S}" || die
- unpack ./src.zip
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcmail/bcmail-1.50-r3.ebuild b/dev-java/bcmail/bcmail-1.50-r3.ebuild
deleted file mode 100644
index 8cf8473d44ec..000000000000
--- a/dev-java/bcmail/bcmail-1.50-r3.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="http://www.bouncycastle.org/java.html"
-SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="1.50"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-CDEPEND="
- dev-java/junit:0
- dev-java/bcprov:${SLOT}
- dev-java/bcpkix:${SLOT}
- dev-java/oracle-javamail:0"
-
-DEPEND="
- >=virtual/jdk-1.6
- ${CDEPEND}"
-
-RDEPEND="
- >=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="
- junit
- bcprov-${SLOT}
- bcpkix-${SLOT}
- oracle-javamail
-"
-
-# Package can't be built with test as bcprov and bcpkix can't be built with test.
-RESTRICT="test"
-
-src_unpack() {
- default
- cd "${S}" || die
- unpack ./src.zip
-}
-
-src_prepare() {
- default
- rm -rv \
- org/bouncycastle/mail/smime/test/* \
- org/bouncycastle/mail/smime/examples/CreateSignedMail.java || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcmail/bcmail-1.77-r1.ebuild b/dev-java/bcmail/bcmail-1.77-r1.ebuild
new file mode 100644
index 000000000000..fc5a0ce57369
--- /dev/null
+++ b/dev-java/bcmail/bcmail-1.77-r1.ebuild
@@ -0,0 +1,59 @@
+# 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:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz"
+S="${WORKDIR}/bc-java-${MY_PV}/mail"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+CP_DEPEND="
+ ~dev-java/bcpkix-${PV}:0
+ ~dev-java/bcprov-${PV}:0
+ ~dev-java/bcutil-${PV}:0
+ dev-java/javax-mail:0
+ "
+DEPEND="${CP_DEPEND}
+ dev-java/jakarta-activation:1
+ >=virtual/jdk-11:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.mail"
+JAVA_CLASSPATH_EXTRA="jakarta-activation-1"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" "../pkix/src/main/resources" )
+JAVA_TEST_RUN_ONLY="org.bouncycastle.mail.smime.test.AllTests"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcmail/metadata.xml b/dev-java/bcmail/metadata.xml
index 952a4b9b605c..d958ec9b5fa0 100644
--- a/dev-java/bcmail/metadata.xml
+++ b/dev-java/bcmail/metadata.xml
@@ -1,8 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">bcgit/bc-java</remote-id>
+ </upstream>
+ <longdescription>
+ The Bouncy Castle Java S/MIME APIs for handling S/MIME protocols. This jar contains S/MIME APIs for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs. The JavaMail API and the Java activation framework will also be needed.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/bcpg/Manifest b/dev-java/bcpg/Manifest
index ae13922d56a2..680d64e45a8b 100644
--- a/dev-java/bcpg/Manifest
+++ b/dev-java/bcpg/Manifest
@@ -1 +1 @@
-DIST bcpg-jdk15on-150.tar.gz 691012 BLAKE2B ee566fb6deb44177e31bfe80b6bd1f13d39d6820cffe3693bd85314ccfd65c4805275b3925d52a6bda6b1ad7e3ea267f1f0bed3926420b5920e5f300020ecd9a SHA512 763d253b9bb45b7e7fab75d557daa784c3d4a503ced979adc986e5688c3939db248853c864a2f4bec6d5b1dd9ed668d5f278c91b5607774fc703971d0b330fe6
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
diff --git a/dev-java/bcpg/bcpg-1.50-r1.ebuild b/dev-java/bcpg/bcpg-1.50-r1.ebuild
deleted file mode 100644
index b895d1674885..000000000000
--- a/dev-java/bcpg/bcpg-1.50-r1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="http://www.bouncycastle.org/java.html"
-SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="1.50"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-# Tests are currently broken. Appears to need older version of bcprov; but since bcprov is not slotted, this can cause conflicts.
-# Needs further investigation; though, only a small part has tests and there are no tests for bcpg itself.
-RESTRICT="test"
-
-CDEPEND="dev-java/bcprov:${SLOT}"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- test? (
- dev-java/ant-junit:0
- )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="bcprov-${SLOT}"
-
-src_unpack() {
- default
- cd "${S}"
- unpack ./src.zip
-}
-
-java_prepare() {
- if ! use test; then
- local RM_TEST_FILES=(
- org/bouncycastle/openpgp/test
- org/bouncycastle/openpgp/examples/test
- )
- rm -rf "${RM_TEST_FILES[@]}" || die
- fi
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_test() {
- local cp="${PN}.jar:bcprov.jar:junit.jar"
- local pkg="org.bouncycastle"
- java -cp ${cp} ${pkg}.openpgp.test.AllTests | tee openpgp.tests
- grep -q FAILURES *.tests && die "Tests failed."
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcpg/bcpg-1.50-r2.ebuild b/dev-java/bcpg/bcpg-1.50-r2.ebuild
deleted file mode 100644
index 6a89f6e93494..000000000000
--- a/dev-java/bcpg/bcpg-1.50-r2.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="http://www.bouncycastle.org/java.html"
-SRC_URI="http://polydistortion.net/bc/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="1.50"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-# Tests are currently broken. Appears to need older version of bcprov; but
-# since bcprov is not slotted, this can cause conflicts. Needs further
-# investigation; though, only a small part has tests and there are no tests for
-# bcpg itself.
-RESTRICT="test"
-
-CDEPEND="dev-java/bcprov:${SLOT}"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- test? ( dev-java/ant-junit:0 )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="bcprov-${SLOT}"
-
-src_unpack() {
- default
- cd "${S}" || die
- unpack ./src.zip
-}
-
-src_prepare() {
- default
- if ! use test; then
- local RM_TEST_FILES=(
- org/bouncycastle/openpgp/test
- org/bouncycastle/openpgp/examples/test
- )
- rm -rv "${RM_TEST_FILES[@]}" || die
- fi
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_test() {
- local cp="${PN}.jar:bcprov.jar:junit.jar"
- local pkg="org.bouncycastle"
- java -cp ${cp} ${pkg}.openpgp.test.AllTests | tee openpgp.tests
- grep -q FAILURES *.tests && die "Tests failed."
-}
-
-src_install() {
- einstalldocs
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcpg/bcpg-1.77.ebuild b/dev-java/bcpg/bcpg-1.77.ebuild
new file mode 100644
index 000000000000..cc3e0343f4be
--- /dev/null
+++ b/dev-java/bcpg/bcpg-1.77.ebuild
@@ -0,0 +1,60 @@
+# 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:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java cryptography APIs"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz"
+S="${WORKDIR}/bc-java-${MY_PV}/pg"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+CP_DEPEND="~dev-java/bcprov-${PV}:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.pg"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+src_test() {
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcpg/metadata.xml b/dev-java/bcpg/metadata.xml
index 952a4b9b605c..34cf5468297e 100644
--- a/dev-java/bcpg/metadata.xml
+++ b/dev-java/bcpg/metadata.xml
@@ -1,8 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">bcgit/bc-java</remote-id>
+ </upstream>
+ <longdescription>
+ The Bouncy Castle Java API for handling the OpenPGP protocol. This jar contains the OpenPGP API for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/bcpkix/Manifest b/dev-java/bcpkix/Manifest
index 77f16900fb38..34f73ef00305 100644
--- a/dev-java/bcpkix/Manifest
+++ b/dev-java/bcpkix/Manifest
@@ -1 +1,2 @@
-DIST bcpkix-jdk15on-1.50-sources.jar 401716 BLAKE2B 7a656218b96da46027c82a023404c32b92a640aa0ed5a1256213139e8dc54f9ef07453478dcc66372a0a49562b92165148f18a5063c24f7569a3e40f649494ba SHA512 6dc6d63db649a94f54c7739144b4120db4255e0a0a713389d54fcd427b95a3ff5ec326ae066cb5aa8a6cf19ccb959cbb22f9f898d39bfe5bf8e20c4d9de6931c
+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.50-r2.ebuild b/dev-java/bcpkix/bcpkix-1.50-r2.ebuild
deleted file mode 100644
index a1a5de24b451..000000000000
--- a/dev-java/bcpkix/bcpkix-1.50-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}-jdk15on"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="http://www.bouncycastle.org/java.html"
-SRC_URI="http://central.maven.org/maven2/org/bouncycastle/${MY_PN}/${PV}/${MY_P}-sources.jar"
-
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-LICENSE="BSD"
-SLOT="1.50"
-
-CDEPEND="dev-java/bcprov:${SLOT}"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="bcprov-${SLOT}"
-JAVA_ENCODING="ISO-8859-1"
-JAVA_SRC_DIR="org"
diff --git a/dev-java/bcpkix/bcpkix-1.77.ebuild b/dev-java/bcpkix/bcpkix-1.77.ebuild
new file mode 100644
index 000000000000..c4e5b0c09115
--- /dev/null
+++ b/dev-java/bcpkix/bcpkix-1.77.ebuild
@@ -0,0 +1,102 @@
+# 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:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple check-reqs
+
+DESCRIPTION="Java APIs for CMS, PKCS, EAC, TSP, CMP, CRMF, OCSP, and certificate generation"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz
+ test? ( https://github.com/bcgit/bc-test-data/archive/${MY_PV}.tar.gz -> bc-test-data-${MY_PV}.tar.gz )"
+S="${WORKDIR}/bc-java-${MY_PV}/pkix"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+# 1) testSANMismatchIP(org.bouncycastle.est.test.TestHostNameAuthorizer)
+# org.bouncycastle.est.ESTException: localhost.me: Temporary failure in name resolution HTTP Status Code: 0
+PROPERTIES="test_network"
+RESTRICT="test"
+
+CDEPEND="
+ ~dev-java/bcprov-${PV}:0
+ ~dev-java/bcutil-${PV}:0
+ "
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.pkix"
+JAVA_GENTOO_CLASSPATH="bcprov,bcutil"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_TEST_EXTRA_ARGS="-Dbc.test.data.home=${S}/../core/src/test/data"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+# https://bugs.gentoo.org/823347
+check_env() {
+ if use test; then
+ # this is needed only for tests
+ CHECKREQS_MEMORY="2048M"
+ check-reqs_pkg_pretend
+ fi
+}
+
+# https://bugs.gentoo.org/823347
+pkg_pretend() {
+ check_env
+}
+
+# https://bugs.gentoo.org/823347
+pkg_setup() {
+ check_env
+ java-pkg-2_pkg_setup
+}
+
+src_unpack() {
+ unpack bc-java-${MY_PV}.tar.gz
+ use test && unpack bc-test-data-${MY_PV}.tar.gz
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+# https://bugs.gentoo.org/823347
+src_test() {
+ mv ../../bc-test-data-${MY_PV} bc-test-data || die "cannot move bc-test-data"
+
+ JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}"
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" \
+ )
+ popd
+ einfo "${JAVA_TEST_RUN_ONLY}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcpkix/metadata.xml b/dev-java/bcpkix/metadata.xml
index 952a4b9b605c..3b63dd7f15eb 100644
--- a/dev-java/bcpkix/metadata.xml
+++ b/dev-java/bcpkix/metadata.xml
@@ -1,8 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">bcgit/bc-java</remote-id>
+ </upstream>
+ <longdescription>
+ The Bouncy Castle Java APIs for CMS, PKCS, EAC, TSP, CMP, CRMF, OCSP, and certificate generation. This jar contains APIs for JDK 1.8 and up. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/bcprov/Manifest b/dev-java/bcprov/Manifest
index 6b24428bb3d4..a9a299b3af1d 100644
--- a/dev-java/bcprov/Manifest
+++ b/dev-java/bcprov/Manifest
@@ -1,4 +1,4 @@
-DIST bcprov-jdk15on-150.tar.gz 4629743 BLAKE2B 7ab18e83f90db38b9af9530246806b4d413718531ce4b34b7aefa7189e28ade8a2afd5d3b3dc25c8cb2d5ef23a8c7f8157ac947ae7d0a46356b00ea7dd6d5f76 SHA512 95400c338a65cbb7d1e80c776de41d3d372b4237aee91526a06774c3d4beb735dcfb4c1ed182a12f2ccac8204b9c546863d79eb99723394d48c415fa32b6ee0e
-DIST bcprov-jdk15on-152.tar.gz 6334971 BLAKE2B 5ef7db891c29147ac48689a1f15e907f4a91d15ac63e8f6a031847d92ddad22cef3dff791d4036b74cd39550e9b48b1926033449beca240db2d7ac78510c22c7 SHA512 df769d2647c1c0b535b1f6922df3f02ed7e13c941f8d954256fddb2ff31d5682924fedf2f2908bc09ebd20058413f40a4c2d62190b63542aa7840b860aeab07c
-DIST bcprov-jdk15on-168.tar.gz 9716574 BLAKE2B 54c4fec3d614bfe6449a10789bf7fd8d01d8d03f0a133dfd01bb7a30d3545d4dda3bbd2b2543a3827ac8988d9c9000cf7c0ebe7d5d462c6f9145c467d3f53ddb SHA512 3cdb6e486f6d1afb8c98c08809d142430191feeb757608f4abf27640fc706decf3975e3bf3f36c2a00bbc77ad2564ff9652bdc5e13662638c66a87bd250302db
-DIST bcprov-jdk16-1.45-sources.jar 1286663 BLAKE2B da19e2343761f10248f315f6966d071a87660f22fe3e51a35308a3b51f907990ef339f05f0c2367babcb06322ffb4600247ecb22b5a19bba3f5c820ed6fe2d2a SHA512 541b390efafba17c21a25bdf84725fd0f9808555eec9c4db51b0642c348d552417d9ba8d584d54690146f3e72fe3b348ab49f92ca263ea8a7a8f7b27bb7b8e5d
+DIST bc-java-r1rv74.tar.gz 31236157 BLAKE2B ffdfe7aa34f361a559051f31fc57eeff39f7d080e4de4a94bdd0d79d92172b2646efa122edaf067633d6a840015e17271c186122598c18e3226622428fa9e1e7 SHA512 887183f825a8834ff512a66fa3f9075259b3266c2861e6e046990bd2dda80b896a8fd221ff2982a127de79fe998727ecc12cade4e6c381f2a152a72ee575d8a1
+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-r1rv77.tar.gz 2074825965 BLAKE2B b797821719ba0dcdd091e0fd4f14c79058a15702973978a055bcc998ff541a8c5e96feb757647a9696e4bbfa28bf80a317066a51fd4daac7b2508111d0d217b1 SHA512 c8701a270ddcfde353b480caa62e2237776b50b0937ac015ee3e5221a74d0817de9bc67f1fa9f53f5e48d861dbf94339cb45a08cb4dad37f1340f754cb1d910e
diff --git a/dev-java/bcprov/bcprov-1.45-r2.ebuild b/dev-java/bcprov/bcprov-1.45-r2.ebuild
deleted file mode 100644
index 3fe4eb54c7a3..000000000000
--- a/dev-java/bcprov/bcprov-1.45-r2.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}-jdk16"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="https://www.bouncycastle.org/java.html"
-SRC_URI="http://central.maven.org/maven2/org/bouncycastle/${MY_PN}/${PV}/${MY_P}-sources.jar"
-LICENSE="BSD"
-SLOT="1.45"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-CDEPEND=""
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-JAVA_ENCODING="ISO-8859-1"
-JAVA_SRC_DIR="org"
-
-# Package can't be built with test as bcprov and bcpkix can't be built with test.
-RESTRICT="test"
-
-java_prepare() {
- if ! use test; then
- # There are too many files to delete so we won't be using JAVA_RM_FILES
- # (it produces a lot of output).
- local RM_TEST_FILES=()
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Test*.java" -type f -print0)
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Mock*.java" -type f -print0)
-
- rm -v "${RM_TEST_FILES[@]}" || die
- fi
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcprov/bcprov-1.50-r2.ebuild b/dev-java/bcprov/bcprov-1.50-r2.ebuild
deleted file mode 100644
index a2a400806d60..000000000000
--- a/dev-java/bcprov/bcprov-1.50-r2.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="https://www.bouncycastle.org/java.html"
-SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="1.50"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-CDEPEND=""
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ENCODING="ISO-8859-1"
-
-# Package can't be built with test as bcprov and bcpkix can't be built with test.
-RESTRICT="test"
-
-src_unpack() {
- default
- cd "${S}"
- unpack ./src.zip
-}
-
-java_prepare() {
- if ! use test; then
- # There are too many files to delete so we won't be using JAVA_RM_FILES
- # (it produces a lot of output).
- local RM_TEST_FILES=()
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Test*.java" -type f -print0)
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Mock*.java" -type f -print0)
-
- rm -v "${RM_TEST_FILES[@]}"
- fi
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcprov/bcprov-1.50-r4.ebuild b/dev-java/bcprov/bcprov-1.50-r4.ebuild
deleted file mode 100644
index dce87d213ba8..000000000000
--- a/dev-java/bcprov/bcprov-1.50-r4.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="https://www.bouncycastle.org/java.html"
-SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="1.50"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ENCODING="ISO-8859-1"
-
-# Package can't be built with test as bcprov and bcpkix can't be built with test.
-RESTRICT="test"
-
-src_unpack() {
- default
- cd "${S}"
- unpack ./src.zip
-}
-
-java_prepare() {
- if ! use test; then
- # There are too many files to delete so we won't be using JAVA_RM_FILES
- # (it produces a lot of output).
- local RM_TEST_FILES=()
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Test*.java" -type f -print0)
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Mock*.java" -type f -print0)
-
- rm -v "${RM_TEST_FILES[@]}" || die
- fi
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcprov/bcprov-1.52-r2.ebuild b/dev-java/bcprov/bcprov-1.52-r2.ebuild
deleted file mode 100644
index 7f00aae4ba51..000000000000
--- a/dev-java/bcprov/bcprov-1.52-r2.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="https://www.bouncycastle.org/java.html"
-SRC_URI="http://polydistortion.net/bc/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-CDEPEND=""
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ENCODING="ISO-8859-1"
-
-# Package can't be build with test as bcprov and bcpkix can't be built with test.
-RESTRICT="test"
-
-src_unpack() {
- default
- cd "${S}"
- unpack ./src.zip
-}
-
-java_prepare() {
- if ! use test; then
- # There are too many files to delete so we won't be using JAVA_RM_FILES
- # (it produces a lot of output).
- local RM_TEST_FILES=()
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Test*.java" -type f -print0)
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Mock*.java" -type f -print0)
-
- rm -v "${RM_TEST_FILES[@]}" || die
- fi
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/bcprov/bcprov-1.68-r2.ebuild b/dev-java/bcprov/bcprov-1.68-r2.ebuild
deleted file mode 100644
index 9a985d3a815a..000000000000
--- a/dev-java/bcprov/bcprov-1.68-r2.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.bouncycastle:bcprov-jdk15on:1.68"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15on-${PV/./}"
-
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="https://www.bouncycastle.org/java.html"
-SRC_URI="https://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ENCODING="ISO-8859-1"
-
-src_unpack() {
- default
- cd "${S}" || die
- unpack ./src.zip
-}
-
-src_prepare() {
- default
-
-# if ! use test; then
- # There are too many files to delete so we won't be using JAVA_RM_FILES
- # (it produces a lot of output).
- local RM_TEST_FILES=()
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Test*.java" -type f -print0)
- while read -d $'\0' -r file; do
- RM_TEST_FILES+=("${file}")
- done < <(find . -name "*Mock*.java" -type f -print0)
-
- rm -v "${RM_TEST_FILES[@]}" || die
-# fi
-}
diff --git a/dev-java/bcprov/bcprov-1.74.ebuild b/dev-java/bcprov/bcprov-1.74.ebuild
new file mode 100644
index 000000000000..6918c239c192
--- /dev/null
+++ b/dev-java/bcprov/bcprov-1.74.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.bouncycastle:bcprov-jdk18on:1.74"
+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 )"
+
+LICENSE="BSD"
+SLOT="1.74"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+DOCS=( {README,SECURITY}.md )
+HTML_DOCS=( {CONTRIBUTORS,index}.html )
+
+S="${WORKDIR}/bc-java-r${PV/./rv}"
+
+check_env() {
+ if use test; then
+ # this is needed only for tests
+ CHECKREQS_MEMORY="2048M"
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_pretend() {
+ check_env
+}
+
+pkg_setup() {
+ check_env
+ java-pkg-2_pkg_setup
+}
+
+src_unpack() {
+ unpack bc-java-r${PV/./rv}.tar.gz
+ use test && unpack bc-test-data-r${PV/./rv}.tar.gz
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # TBD: unboundid-ldapsdk should be packaged from source.
+ java-pkg_clean ! -path "./libs/unboundid-ldapsdk-6.0.8.jar"
+}
+
+src_compile() {
+ JAVA_RESOURCE_DIRS=(
+ "core/src/main/resources"
+ "prov/src/main/resources"
+ )
+ JAVA_SRC_DIR=(
+ "core/src/main/java"
+ "prov/src/main/java"
+ "prov/src/main/jdk1.9"
+ )
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ mv ../bc-test-data-r${PV/./rv} bc-test-data || die "cannot move bc-test-data"
+
+ JAVA_TEST_EXTRA_ARGS="-Dbc.test.data.home=${S}/core/src/test/data"
+ JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}"
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+ einfo "Testing \"core\""
+ JAVA_TEST_RESOURCE_DIRS="core/src/test/resources"
+ JAVA_TEST_SRC_DIR="core/src/test/java"
+ pushd core/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+
+ einfo "Testing bcprov"
+ JAVA_GENTOO_CLASSPATH_EXTRA=":core.jar:libs/unboundid-ldapsdk-6.0.8.jar"
+ JAVA_TEST_RESOURCE_DIRS="prov/src/test/resources"
+ JAVA_TEST_SRC_DIR="prov/src/test/java"
+ pushd prov/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcprov/bcprov-1.77.ebuild b/dev-java/bcprov/bcprov-1.77.ebuild
new file mode 100644
index 000000000000..9e17d73d8035
--- /dev/null
+++ b/dev-java/bcprov/bcprov-1.77.ebuild
@@ -0,0 +1,106 @@
+# 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:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple check-reqs
+
+DESCRIPTION="Java cryptography APIs"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz
+ test? ( https://github.com/bcgit/bc-test-data/archive/${MY_PV}.tar.gz -> bc-test-data-${MY_PV}.tar.gz )"
+S="${WORKDIR}/bc-java-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+DOCS=( {README,SECURITY}.md )
+HTML_DOCS=( {CONTRIBUTORS,index}.html )
+
+check_env() {
+ if use test; then
+ # this is needed only for tests
+ CHECKREQS_MEMORY="2048M"
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_pretend() {
+ check_env
+}
+
+pkg_setup() {
+ check_env
+ java-pkg-2_pkg_setup
+}
+
+src_unpack() {
+ unpack bc-java-${MY_PV}.tar.gz
+ use test && unpack bc-test-data-${MY_PV}.tar.gz
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # TBD: unboundid-ldapsdk should be packaged from source.
+ java-pkg_clean ! -path "./libs/unboundid-ldapsdk-6.0.8.jar"
+}
+
+src_compile() {
+ JAVA_RESOURCE_DIRS=(
+ "core/src/main/resources"
+ "prov/src/main/resources"
+ )
+ JAVA_SRC_DIR=(
+ "core/src/main/java"
+ "prov/src/main/java"
+ "prov/src/main/jdk1.9"
+ )
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ mv ../bc-test-data-${MY_PV} bc-test-data || die "cannot move bc-test-data"
+
+ JAVA_TEST_EXTRA_ARGS="-Dbc.test.data.home=${S}/core/src/test/data"
+ JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}"
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+ einfo "Testing \"core\""
+ JAVA_TEST_RESOURCE_DIRS="core/src/test/resources"
+ JAVA_TEST_SRC_DIR="core/src/test/java"
+ pushd core/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+
+ einfo "Testing bcprov"
+ JAVA_GENTOO_CLASSPATH_EXTRA=":core.jar:libs/unboundid-ldapsdk-6.0.8.jar"
+ JAVA_TEST_RESOURCE_DIRS="prov/src/test/resources"
+ JAVA_TEST_SRC_DIR="prov/src/test/java"
+ pushd prov/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "AllTests.java" )
+ popd || die
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ docinto html
+ dodoc -r docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcprov/metadata.xml b/dev-java/bcprov/metadata.xml
index 952a4b9b605c..e3ec23b6df50 100644
--- a/dev-java/bcprov/metadata.xml
+++ b/dev-java/bcprov/metadata.xml
@@ -1,8 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">bcgit/bc-java</remote-id>
+ </upstream>
+ <longdescription>
+ The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.8 and up.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/bctsp/Manifest b/dev-java/bctsp/Manifest
deleted file mode 100644
index 688d159da2ba..000000000000
--- a/dev-java/bctsp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bctsp-jdk15-145.tar.gz 100494 BLAKE2B 916972fc2c0585b8ff22cfef890a9324391d1723030ce926d1ba041631162fcc800f4e3e43733191c2bb7eb39235a98c99f8a0b59df5b42b771d0a3389fee569 SHA512 8e06598b6286502a6cf908f60b9bcae134dca070869c58e408746470e1f4f80ad8bca8c6f2fe5265fed051b5ddbeb710154ae7bf3a50fff2980c6b562ba6a606
diff --git a/dev-java/bctsp/bctsp-1.45-r1.ebuild b/dev-java/bctsp/bctsp-1.45-r1.ebuild
deleted file mode 100644
index 8bfc4e6882a5..000000000000
--- a/dev-java/bctsp/bctsp-1.45-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-jdk15-${PV/./}"
-DESCRIPTION="Java cryptography APIs"
-HOMEPAGE="http://www.bouncycastle.org/java.html"
-SRC_URI="http://www.bouncycastle.org/download/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/bcprov:1.45
- dev-java/bcmail:1.45"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}"/${MY_P}
-
-JAVA_GENTOO_CLASSPATH="bcprov-1.45,bcmail-1.45"
-
-src_unpack() {
- default
- cd "${S}" || die
- unpack ./src.zip
-}
-
-java_prepare() {
- # Remove tests
- rm -R org/bouncycastle/tsp/test || die
-}
diff --git a/dev-java/bctsp/metadata.xml b/dev-java/bctsp/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/bctsp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/bcutil/Manifest b/dev-java/bcutil/Manifest
new file mode 100644
index 000000000000..680d64e45a8b
--- /dev/null
+++ b/dev-java/bcutil/Manifest
@@ -0,0 +1 @@
+DIST bc-java-r1rv77.tar.gz 31402744 BLAKE2B 1ca1e1dac1ed3d613ae66f08cd8a954e63d43a49ed402f5bd7c30cf1f0830ad29104aa91a9a0a3cbbb5ea750392bc285172a1ab38f2aba1600fa3ca4c469b4f5 SHA512 d75a0ce94bd006499eef9393491347ae70544643c93c2f7591df3ff0179bd477a5066891c7c3bdeb09bd693093c9dc7d29c48462a1d539e464cbf2ee9c1dfce4
diff --git a/dev-java/bcutil/bcutil-1.77.ebuild b/dev-java/bcutil/bcutil-1.77.ebuild
new file mode 100644
index 000000000000..03c870ae5331
--- /dev/null
+++ b/dev-java/bcutil/bcutil-1.77.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="org.bouncycastle:bcutil-jdk18on:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java APIs for ASN.1 extension and utility APIs used to support bcpkix and bctls"
+HOMEPAGE="https://www.bouncycastle.org/java.html"
+MY_PV="r${PV/./rv}"
+SRC_URI="https://github.com/bcgit/bc-java/archive/${MY_PV}.tar.gz -> bc-java-${MY_PV}.tar.gz"
+S="${WORKDIR}/bc-java-${MY_PV}/util"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+CDEPEND="~dev-java/bcprov-${PV}:0"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{README,SECURITY}.md )
+HTML_DOCS=( ../{CONTRIBUTORS,index}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.bouncycastle.util"
+JAVA_GENTOO_CLASSPATH="bcprov"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/jdk1.9"
+)
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY=(
+ "org.bouncycastle.asn1.util.test.AllTests"
+ "org.bouncycastle.oer.test.AllTests"
+)
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+}
+
+src_install() {
+ docinto html
+ dodoc -r ../docs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/bcutil/metadata.xml b/dev-java/bcutil/metadata.xml
new file mode 100644
index 000000000000..126e6e2a7798
--- /dev/null
+++ b/dev-java/bcutil/metadata.xml
@@ -0,0 +1,13 @@
+<?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">bcgit/bc-java</remote-id>
+ </upstream>
+ <longdescription>
+ The Bouncy Castle Java APIs for ASN.1 extension and utility APIs used to support bcpkix and bctls. This jar contains APIs for JDK 1.8 and up.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/beansbinding/Manifest b/dev-java/beansbinding/Manifest
deleted file mode 100644
index 10e0632a788a..000000000000
--- a/dev-java/beansbinding/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST beansbinding-1.2.1.zip 236905 BLAKE2B 81e48ef53c28106fc6e4fa4c7e85dc07ce4ce05635769d09d5d9bcd17f64f5b7ba44ab676311f44dd3906cc34c95539d1fbb8d3038c05a6ab4ba62f8bf8fe3ed SHA512 f617f0b5068c416bcaaa46fe141e9b8b1fec128403738093b205451f9bcd624d2588b9b77e0c67f6de97490f44a4cf7c5e58b1728d5d7d921bd861e3dfffb415
diff --git a/dev-java/beansbinding/beansbinding-1.2.1-r3.ebuild b/dev-java/beansbinding/beansbinding-1.2.1-r3.ebuild
deleted file mode 100644
index a6cca6a7abfb..000000000000
--- a/dev-java/beansbinding/beansbinding-1.2.1-r3.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Implementation of JSR295"
-HOMEPAGE="https://java.net/projects/beansbinding/"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}-src.zip -> ${P}.zip"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_SRC_DIR="src"
diff --git a/dev-java/beansbinding/metadata.xml b/dev-java/beansbinding/metadata.xml
deleted file mode 100644
index 68f46e763e7f..000000000000
--- a/dev-java/beansbinding/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-<longdescription lang="en">
-Beans Binding (JSR 295) is about keeping the properties of two beans in sync. This project provides the reference implementation of Beans Binding, with an additional emphasis on the ability to bind to Swing components, and easy integration with IDEs such as NetBeans.
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/blowfishj/Manifest b/dev-java/blowfishj/Manifest
deleted file mode 100644
index b966a35c07b4..000000000000
--- a/dev-java/blowfishj/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST blowfishj-2.14-src.tar.gz 33726 BLAKE2B 08977621403c16700396109364e9de0b473ca797934de6d62e5f942b37f6fc4b2bea451be4f53f4a56cb19bd9b540c5b277d8634f0687bc4a36619139a39bdf7 SHA512 3f508be61b494eddf6f276e21c7979d1f6a46dac19e8256f7451f3a434cd1d7df34c268aa2c13b7370129c84f289f331f47456c400ac31a9f0996fefeae12aec
diff --git a/dev-java/blowfishj/blowfishj-2.14-r3.ebuild b/dev-java/blowfishj/blowfishj-2.14-r3.ebuild
deleted file mode 100644
index 61fa2f641db2..000000000000
--- a/dev-java/blowfishj/blowfishj-2.14-r3.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Blowfish implementation in Java"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.tar.gz"
-HOMEPAGE="http://blowfishj.sourceforge.net/index.html"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- )"
-
-RDEPEND=">=virtual/jre-1.6"
-
-java_prepare() {
- cd "${S}" || die
- java-ant_ignore-system-classes
- mkdir -p target/lib || die
- cd target/lib || die
- use test && java-pkg_jar-from --build-only junit
-}
-
-src_test() {
- ANT_TASKS="ant-junit" eant test -DJunit.present=true
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
-
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/net
-}
diff --git a/dev-java/blowfishj/metadata.xml b/dev-java/blowfishj/metadata.xml
deleted file mode 100644
index e545108bd55c..000000000000
--- a/dev-java/blowfishj/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- The Blowfish implementation in Java, provides very fast ECB and CBC encryption.
- Comes with the BlowfishEasy class for simple string encryption, plus a solution
- for streaming, both are binary compatible to Blowfish.NET. Additionally this
- package includes its own SHA-1 class, all sources, JUnit test cases, demos and
- JavaDocs.
- </longdescription>
- <upstream>
- <remote-id type="sourceforge">blowfishj</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/bnd-annotation/Manifest b/dev-java/bnd-annotation/Manifest
new file mode 100644
index 000000000000..4a41f3f9f080
--- /dev/null
+++ b/dev-java/bnd-annotation/Manifest
@@ -0,0 +1,2 @@
+DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
+DIST biz.aQute.bnd.annotation-6.3.1-sources.jar 50600 BLAKE2B 6ace86a803c378be17b4ecfb658eb17e9c95f4f8797cdf22cbb9a5acb2a382fe0ee6791ad0280a2de9d9e85fbe2732487e693b2c93f08145b3633810f480f8b9 SHA512 751855a173e6d5f9d09f6d63775b97d971cebbfc019053988ec7fe144d0f49b4d09b9a2339d63bb43cea51d09d7d766554255f727cad8d73d9c196097e58d0fd
diff --git a/dev-java/bnd-annotation/bnd-annotation-6.3.1.ebuild b/dev-java/bnd-annotation/bnd-annotation-6.3.1.ebuild
new file mode 100644
index 000000000000..9522fc6820a9
--- /dev/null
+++ b/dev-java/bnd-annotation/bnd-annotation-6.3.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom biz.aQute.bnd.annotation-6.3.1.pom --download-uri https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.annotation/6.3.1/biz.aQute.bnd.annotation-6.3.1-sources.jar --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild aqute-bnd-annotation-6.3.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="biz.aQute.bnd:biz.aQute.bnd.annotation:6.3.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="bnd Annotations Library"
+HOMEPAGE="https://bnd.bndtools.org/"
+SRC_URI="https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.annotation/${PV}/biz.aQute.bnd.annotation-${PV}-sources.jar"
+
+LICENSE="Apache-2.0 EPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: biz.aQute.bnd.annotation-${PV}.pom
+# org.osgi:org.osgi.resource:1.0.0 -> !!!artifactId-not-found!!!
+# org.osgi:org.osgi.service.serviceloader:1.0.0 -> !!!artifactId-not-found!!!
+
+CP_DEPEND="dev-java/osgi-annotation:0"
+
+# Compile dependencies
+# POM: biz.aQute.bnd.annotation-${PV}.pom
+# org.osgi:org.osgi.namespace.extender:1.0.1 -> !!!artifactId-not-found!!!
+# org.osgi:org.osgi.namespace.service:1.0.0 -> !!!artifactId-not-found!!!
+# org.osgi:osgi.annotation:8.1.0 -> >=dev-java/osgi-annotation-8.1.0:0
+
+DEPEND=">=virtual/jdk-1.8:*
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ ${CP_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
+
+JAVA_CLASSPATH_EXTRA="osgi-cmpn-8,osgi-core"
+JAVA_SRC_DIR="."
diff --git a/dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild b/dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild
new file mode 100644
index 000000000000..a66b70291b68
--- /dev/null
+++ b/dev-java/bnd-annotation/bnd-annotation-7.0.0.ebuild
@@ -0,0 +1,29 @@
+# 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.annotation:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="bnd Annotations Library"
+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 ppc64 x86"
+
+DEPEND="
+ dev-java/osgi-cmpn:8
+ >=virtual/jdk-11:*
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="biz.aQute.bnd.annotation"
+JAVA_CLASSPATH_EXTRA="osgi-cmpn-8"
+JAVA_SRC_DIR="biz.aQute.bnd.annotation/src"
diff --git a/dev-java/bnd-annotation/metadata.xml b/dev-java/bnd-annotation/metadata.xml
new file mode 100644
index 000000000000..cb6317e530db
--- /dev/null
+++ b/dev-java/bnd-annotation/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/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..236236e86726
--- /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 ~x86"
+
+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/bnd-ant/metadata.xml b/dev-java/bnd-ant/metadata.xml
new file mode 100644
index 000000000000..cb6317e530db
--- /dev/null
+++ b/dev-java/bnd-ant/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/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-r1.ebuild b/dev-java/bnd-junit/bnd-junit-2.1.0-r1.ebuild
deleted file mode 100644
index eaf475c67bf3..000000000000
--- a/dev-java/bnd-junit/bnd-junit-2.1.0-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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.5
- test? ( dev-java/junit:4 )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.5"
-
-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/bnd-junit-2.1.0.ebuild b/dev-java/bnd-junit/bnd-junit-2.1.0.ebuild
deleted file mode 100644
index e4de5405feee..000000000000
--- a/dev-java/bnd-junit/bnd-junit-2.1.0.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-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=">=virtual/jdk-1.5
- test? ( dev-java/junit:4 )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.5
- ${CDEPEND}"
-
-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"
-
-java_prepare() {
- # 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
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-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 7ed2fdf0797a..000000000000
--- a/dev-java/bnd-junit/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/Manifest b/dev-java/bnd-util/Manifest
new file mode 100644
index 000000000000..a890570b45c8
--- /dev/null
+++ b/dev-java/bnd-util/Manifest
@@ -0,0 +1 @@
+DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
diff --git a/dev-java/bnd-util/bnd-util-7.0.0.ebuild b/dev-java/bnd-util/bnd-util-7.0.0.ebuild
new file mode 100644
index 000000000000..686d1ca62757
--- /dev/null
+++ b/dev-java/bnd-util/bnd-util-7.0.0.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"
+MAVEN_ID="biz.aQute.bnd:biz.aQute.bnd.util:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="AQute Bnd Utilities"
+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 ppc64 x86"
+
+CP_DEPEND="dev-java/osgi-annotation:0"
+
+DEPEND="${CP_DEPEND}
+ ~dev-java/bnd-annotation-${PV}:0
+ ~dev-java/libg-${PV}:0
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ dev-java/slf4j-api:0
+ >=virtual/jdk-17:*
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-17:*
+"
+
+JAVA_AUTOMATIC_MODULE_NAME="biz.aQute.bnd.util"
+JAVA_CLASSPATH_EXTRA="
+ bnd-annotation
+ libg
+ osgi-cmpn-8
+ osgi-core
+ slf4j-api
+"
+JAVA_SRC_DIR="biz.aQute.bnd.util/src"
diff --git a/dev-java/bnd-util/metadata.xml b/dev-java/bnd-util/metadata.xml
new file mode 100644
index 000000000000..cb6317e530db
--- /dev/null
+++ b/dev-java/bnd-util/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/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..b01e8447356e
--- /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 ~x86"
+
+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 068af0665527..a890570b45c8 100644
--- a/dev-java/bndlib/Manifest
+++ b/dev-java/bndlib/Manifest
@@ -1 +1 @@
-DIST bndlib-2.1.0.tar.gz 123217291 BLAKE2B ab8e6876b13db538746f77aa1fe7800e5a3b5e539e1980da78f69c64344f4964bf0a21f2329f7684b055d0de39a10c8df36e030922e9933b29fccb9a35aa669a SHA512 6965143ced45c15fc2316716de32e80506cc411d52309b24313fff37e0713a45ad200d5b3701f0d47a131a3163ec266ed8acb4544884cd1c59c9716c7a2b285e
+DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
diff --git a/dev-java/bndlib/bndlib-2.1.0.ebuild b/dev-java/bndlib/bndlib-2.1.0.ebuild
deleted file mode 100644
index aaac79713088..000000000000
--- a/dev-java/bndlib/bndlib-2.1.0.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="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 -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~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.5
- ${CDEPEND}
- test? ( dev-java/junit:4 )"
-
-RDEPEND=">=virtual/jre-1.5
- ${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"
-
-java_prepare() {
- # 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
new file mode 100644
index 000000000000..4a6bee66518d
--- /dev/null
+++ b/dev-java/bndlib/bndlib-7.0.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"
+MAVEN_ID="biz.aQute.bnd:biz.aQute.bndlib:${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}/bnd-${PV}"
+
+LICENSE="Apache-2.0 EPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ ~dev-java/bnd-annotation-${PV}:0
+ ~dev-java/bnd-util-${PV}:0
+ ~dev-java/libg-${PV}:0
+ dev-java/osgi-annotation:0
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ dev-java/slf4j-api:0
+"
+
+DEPEND="${CP_DEPEND}
+ dev-java/osgi-service-log:0
+ >=virtual/jdk-17:*
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-17:*
+"
+
+JAVA_AUTOMATIC_MODULE_NAME="biz.aQute.bndlib"
+JAVA_CLASSPATH_EXTRA="osgi-service-log"
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR="biz.aQute.bndlib/src"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir res || die
+
+ # java-pkg-simple wants resources in JAVA_RESOURCE_DIRS
+ mv biz.aQute.bndlib/img res || die
+ pushd biz.aQute.bndlib/src > /dev/null || die
+ find -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t ../../res || die
+ popd > /dev/null || die
+}
diff --git a/dev-java/bndlib/metadata.xml b/dev-java/bndlib/metadata.xml
index 7ed2fdf0797a..cb6317e530db 100644
--- a/dev-java/bndlib/metadata.xml
+++ b/dev-java/bndlib/metadata.xml
@@ -1,11 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <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/boot-bin/Manifest b/dev-java/boot-bin/Manifest
deleted file mode 100644
index ef394a4f8cef..000000000000
--- a/dev-java/boot-bin/Manifest
+++ /dev/null
@@ -1,6 +0,0 @@
-DIST boot-2.7.1-CHANGES.md 20380 BLAKE2B 84a57834b78b752b6be051aa9513ad3360cc81b1311248892b3f61760c181a2c53083da8c61eeae2930b2501b95b71dd74bfededa2325806a83abbb0ef0f35e3 SHA512 5f8b9866dcb5e784caee89c7a0569d6a2392cda19aa498d15eaa8d4ea054900bdc0dff950ca60f6c62f0cd262373a3cd0760c755b805d952bc96838de135aeb8
-DIST boot-2.7.1-README.md 16071 BLAKE2B de0f5168f1b4151ffc76bf02343a1d965ba418e90255d04ef8c6c0c30e32d1927042ed24d1e5e1e6dad3b9dc0e893bf7656a3cfc279f6e690a5c7587a3930897 SHA512 395b6fec79bd1299f4d84fda4ba3d0db0b54c9c591c7ffd2c3c0f239f5f1bade31bf6eb1b924d6e58775fb6d412417d251d77356698d54c93c3ee31b64c9652a
-DIST boot-2.7.1.jar 8388320 BLAKE2B a5af7ee5468cd6db1c955fd7a1726da6bc370ff8fb2b38312c42b9b6577c9605cfd472f86878c8706e50a1523f9e8789e7b92aa7244f2ce0450b7447cd8d5aa8 SHA512 d8101ba2c3a2bdec655f0fcea95a3cb33aee90c9471f6cd31f465c3716cb3f6d9027b7ec0c1c7cd277f8b43cbc0fd69d2e164fa33b112bba94d4d3245caafb3c
-DIST boot-2.8.3-CHANGES.md 28286 BLAKE2B 56ce0ba83292d1b0a9b22b34e3ac89a4f203ff7b20b3a9a0ca092e4594cb8430574d04ff15ec50dc431f4a32ebbcbe2651010abc48c46a241fff5147d1449297 SHA512 cab01416dcbd642953fa32ae5d8255722f61860752a32e7a4a55f0d5730363e305c5549e63777e3e032f2d098864cfa16b62889c66fe9aa481778ad7a0249e80
-DIST boot-2.8.3-README.md 19164 BLAKE2B cb2d63e332d427cd235868f9b25aa5b7baaa41ebbf1447c029019e2d4aa872eed26e79c027f06b201e21e0a1522d42fed57bf5eae5de683baf4a62e2c10b739a SHA512 2557f8ae6893ae6f3c576e8325f11edac5e4e91c45e3864957784092e8154aaa30f1a5de8acb52bb90e7c3ad034f2e9703e4b5aac2d621cbd885e8bbb102cc04
-DIST boot-2.8.3.jar 20940394 BLAKE2B 398264e467dc14c7df49dd75e4197ebd755e1afdc6ae8877de30cd72d35c0bf56a83b64573ec3aa976ae63fcffe9c371b0789bc0f95e43bbb509ff19cc305ee9 SHA512 039c8ed3320871a1227240ad8d0aac07cbb41e65096d71b9547733c49f02febff6ac5ed15cda744c7fbc0ee4830908597f0c3c8288d4d059c603057db24bd1db
diff --git a/dev-java/boot-bin/boot-bin-2.7.1-r1.ebuild b/dev-java/boot-bin/boot-bin-2.7.1-r1.ebuild
deleted file mode 100644
index 53777ba1edb0..000000000000
--- a/dev-java/boot-bin/boot-bin-2.7.1-r1.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit java-pkg-2
-
-MY_PN="${PN%-bin}"
-MY_PNV="${MY_PN}-${PV}"
-GITHUB_USER="boot-clj"
-
-DESCRIPTION="Build tooling for Clojure"
-HOMEPAGE="https://boot-clj.com/"
-SRC_URI="
- https://github.com/${GITHUB_USER}/${MY_PN}/releases/download/${PV}/${MY_PN}.jar -> ${MY_PNV}.jar
- https://raw.githubusercontent.com/${GITHUB_USER}/${MY_PN}/${PV}/README.md -> ${MY_PNV}-README.md
- https://raw.githubusercontent.com/${GITHUB_USER}/${MY_PN}/${PV}/CHANGES.md -> ${MY_PNV}-CHANGES.md
-"
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND=">=virtual/jre-1.7"
-DEPEND=">=virtual/jdk-1.7"
-
-RESTRICT="test"
-
-src_unpack() {
- mkdir -p "${S}" || die "Can't mkdir ${S}"
- cd "${S}" || die "Can't enter ${S}"
- for file in ${A}; do
- einfo "Copying ${file}"
- cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
- done
-}
-
-src_prepare() {
- einfo "Copying boot shell-script"
- cp "${FILESDIR}/boot" "${S}/" || die "Can't copy boot"
-
- for file in "README.md" "CHANGES.md"; do
- einfo "Renaming ${MY_PNV}-${file} to ${file}"
- mv "${S}/${MY_PNV}-${file}" "${S}/${file}" || die "Can't rename ${MY_PNV}-${file} to ${file}"
- done
-
- java-pkg_init_paths_
-
- sed -i "s|@@JAVA_PKG_SHAREPATH@@|${JAVA_PKG_SHAREPATH}|g" "${S}/boot" || die "Can't patch JAVA_PKG_SHAREPATH path in boot"
- sed -i "s|@@JAVA_PKG_JARDEST@@|${JAVA_PKG_JARDEST}|g" "${S}/boot" || die "Can't patch JAVA_PKG_JARDEST path in boot"
- sed -i "s|@@PN@@|${PN}|g" "${S}/boot" || die "Can't patch PN in boot"
-
- default
-}
-
-src_compile() { :; }
-
-src_install() {
- dobin "${S}/boot"
- dodoc "${S}/README.md"
- dodoc "${S}/CHANGES.md"
-
- java-pkg_newjar "${S}/${MY_PNV}.jar"
-}
-
-pkg_postinst() {
- einfo "This package will still download a whole lot of its own runtime"
- einfo "dependencies the first time you run it."
- einfo ""
- einfo "This currently can't be helped and is expected behaviour for a"
- einfo "java based development toolkit"
-}
diff --git a/dev-java/boot-bin/boot-bin-2.8.3.ebuild b/dev-java/boot-bin/boot-bin-2.8.3.ebuild
deleted file mode 100644
index 03e79137c50c..000000000000
--- a/dev-java/boot-bin/boot-bin-2.8.3.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit java-pkg-2
-
-MY_PN="${PN%-bin}"
-MY_PNV="${MY_PN}-${PV}"
-GITHUB_USER="boot-clj"
-
-DESCRIPTION="Build tooling for Clojure"
-HOMEPAGE="https://boot-clj.com/"
-SRC_URI="
- https://github.com/${GITHUB_USER}/${MY_PN}/releases/download/${PV}/${MY_PN}.jar -> ${MY_PNV}.jar
- https://raw.githubusercontent.com/${GITHUB_USER}/${MY_PN}/${PV}/README.md -> ${MY_PNV}-README.md
- https://raw.githubusercontent.com/${GITHUB_USER}/${MY_PN}/${PV}/CHANGES.md -> ${MY_PNV}-CHANGES.md
-"
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.7"
-DEPEND=">=virtual/jdk-1.7"
-
-RESTRICT="test"
-
-src_unpack() {
- mkdir -p "${S}" || die "Can't mkdir ${S}"
- cd "${S}" || die "Can't enter ${S}"
- for file in ${A}; do
- einfo "Copying ${file}"
- cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
- done
-}
-
-src_prepare() {
- einfo "Copying boot shell-script"
- cp "${FILESDIR}/boot" "${S}/" || die "Can't copy boot"
-
- for file in "README.md" "CHANGES.md"; do
- einfo "Renaming ${MY_PNV}-${file} to ${file}"
- mv "${S}/${MY_PNV}-${file}" "${S}/${file}" || die "Can't rename ${MY_PNV}-${file} to ${file}"
- done
-
- java-pkg_init_paths_
-
- sed -i "s|@@JAVA_PKG_SHAREPATH@@|${JAVA_PKG_SHAREPATH}|g" "${S}/boot" || die "Can't patch JAVA_PKG_SHAREPATH path in boot"
- sed -i "s|@@JAVA_PKG_JARDEST@@|${JAVA_PKG_JARDEST}|g" "${S}/boot" || die "Can't patch JAVA_PKG_JARDEST path in boot"
- sed -i "s|@@PN@@|${PN}|g" "${S}/boot" || die "Can't patch PN in boot"
-
- default
-}
-
-src_compile() { :; }
-
-src_install() {
- dobin "${S}/boot"
- dodoc "${S}/README.md"
- dodoc "${S}/CHANGES.md"
-
- java-pkg_newjar "${S}/${MY_PNV}.jar"
-}
-
-pkg_postinst() {
- einfo "This package will still download a whole lot of its own runtime"
- einfo "dependencies the first time you run it."
- einfo ""
- einfo "This currently can't be helped and is expected behaviour for a"
- einfo "java based development toolkit"
- einfo ""
- einfo "You may also need to nuke ~/.boot/boot.properties to get the"
- einfo "updated mechanics, and for boot --version to behave correctly"
- einfo "due to upstreams per-user/per-project version-locking mechanisms"
-}
diff --git a/dev-java/boot-bin/files/boot b/dev-java/boot-bin/files/boot
deleted file mode 100644
index 8d53ebd338a8..000000000000
--- a/dev-java/boot-bin/files/boot
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-source @@JAVA_PKG_SHAREPATH@@/package.env
-jarpath="@@JAVA_PKG_JARDEST@@/@@PN@@.jar"
-declare -a "options=($BOOT_JVM_OPTIONS)"
-self="${BASH_SOURCE[0]}"
-exec ${BOOT_JAVA_COMMAND:-java} "${options[@]}" -Dboot.app.path="$jarpath" -jar "$jarpath" "$@"
-
diff --git a/dev-java/boot-bin/metadata.xml b/dev-java/boot-bin/metadata.xml
deleted file mode 100644
index 77e2613dffaa..000000000000
--- a/dev-java/boot-bin/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="github">boot-clj/boot</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/brotli-dec/brotli-dec-0.1.2.ebuild b/dev-java/brotli-dec/brotli-dec-0.1.2.ebuild
index 58ed175f29ab..acbd619b97b7 100644
--- a/dev-java/brotli-dec/brotli-dec-0.1.2.ebuild
+++ b/dev-java/brotli-dec/brotli-dec-0.1.2.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
EAPI=7
@@ -9,12 +9,12 @@ MAVEN_ID="org.brotli:dec:${PV}"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Brotli decompressor"
-HOMEPAGE="https://github.com/google/brotli"
+HOMEPAGE="https://brotli.org/ https://github.com/google/brotli"
SRC_URI="https://repo1.maven.org/maven2/org/brotli/dec/${PV}/dec-${PV}-sources.jar -> ${P}-sources.jar"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
BDEPEND="app-arch/unzip"
DEPEND=">=virtual/jdk-1.8:*"
diff --git a/dev-java/brotli-dec/metadata.xml b/dev-java/brotli-dec/metadata.xml
index 2444066aa02b..44cc9d815d1f 100644
--- a/dev-java/brotli-dec/metadata.xml
+++ b/dev-java/brotli-dec/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">google/brotli</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/browserlauncher2/browserlauncher2-1.3-r2.ebuild b/dev-java/browserlauncher2/browserlauncher2-1.3-r2.ebuild
deleted file mode 100644
index 7f2370c1c9c6..000000000000
--- a/dev-java/browserlauncher2/browserlauncher2-1.3-r2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 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-ant-2
-
-MY_PV="$(ver_rs 1- _)"
-
-DESCRIPTION="A library that facilitates opening a browser from a Java application"
-HOMEPAGE="http://browserlaunch2.sourceforge.net/"
-SRC_URI="https://downloads.sourceforge.net/project/browserlaunch2/browserlauncher2/${PV}/BrowserLauncher2-all-${MY_PV}.jar"
-
-LICENSE="LGPL-2.1"
-SLOT="1.0"
-KEYWORDS="amd64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
-
-src_prepare() {
- default
- unpack ${A}
- find . -name "*.class" -exec rm -v {} \; || die
- # fixing build.xml
- sed -i -e "s: includes=\"\*\*/\*\.class\"::g" "${S}/build.xml" || die
-
- iconv -f ISO-8859-1 -t UTF8 -o "${S}/source/at/jta/Regor.java~" \
- "${S}/source/at/jta/Regor.java" || die "recoding failed"
- mv -f "${S}"/source/at/jta/Regor.java{~,} || die "cannot rename"
-}
-
-EANT_BUILD_TARGET="build"
-EANT_DOC_TARGET="api"
-
-src_install() {
- java-pkg_newjar deployment/*.jar
- java-pkg_dolauncher BrowserLauncherTestApp-${SLOT} \
- --main "edu.stanford.ejalbert.testing.BrowserLauncherTestApp"
-
- dodoc README*
- use doc && java-pkg_dojavadoc api
- use source && java-pkg_dosrc source
-}
diff --git a/dev-java/browserlauncher2/browserlauncher2-1.3-r3.ebuild b/dev-java/browserlauncher2/browserlauncher2-1.3-r3.ebuild
new file mode 100644
index 000000000000..6e0be61baf7e
--- /dev/null
+++ b/dev-java/browserlauncher2/browserlauncher2-1.3-r3.ebuild
@@ -0,0 +1,33 @@
+# 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-pkg-simple
+
+DESCRIPTION="A library that facilitates opening a browser from a Java application"
+HOMEPAGE="https://browserlaunch2.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/project/browserlaunch2/browserlauncher2/${PV}/BrowserLauncher2-all-${PV//./_}.jar"
+
+LICENSE="LGPL-2.1"
+SLOT="1.0"
+KEYWORDS="amd64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+
+JAVA_SRC_DIR="source"
+JAVA_RESOURCE_DIRS="resources"
+JAVA_MAIN_CLASS="edu.stanford.ejalbert.testing.BrowserLauncherTestApp"
+JAVA_ENCODING="ISO-8859-1"
+
+src_prepare() {
+ default
+ java-pkg_clean
+
+ cp -r source resources || die "Cannot create resources dir"
+ find resources -type f ! -name '*.properties' -exec rm -rf {} + || die
+}
diff --git a/dev-java/browserlauncher2/metadata.xml b/dev-java/browserlauncher2/metadata.xml
index 122c1b5ed38a..cc521cbf0ad4 100644
--- a/dev-java/browserlauncher2/metadata.xml
+++ b/dev-java/browserlauncher2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
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-r2.ebuild b/dev-java/bsf/bsf-2.4.0-r2.ebuild
deleted file mode 100644
index 01984239b9f1..000000000000
--- a/dev-java/bsf/bsf-2.4.0-r2.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 epatch java-ant-2
-
-DESCRIPTION="Bean Script Framework"
-HOMEPAGE="http://commons.apache.org/bsf/"
-SRC_URI="mirror://apache/jakarta/bsf/source/${PN}-src-${PV}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="2.3"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-java_prepare() {
- 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.
- epatch "${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 bef35c168e48..000000000000
--- a/dev-java/bsf/files/bsf-2.4.0-PyJavaInstance.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- src/org/apache/bsf/engines/jython/JythonEngine.java.orig 2015-07-04 08:00:17.120000000 +0000
-+++ 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 688e2583cfb6..90f0e6f3943c 100644
--- a/dev-java/bsf/metadata.xml
+++ b/dev-java/bsf/metadata.xml
@@ -1,11 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">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/bsh/Manifest b/dev-java/bsh/Manifest
index 45f1210949a7..f4efff50c5dc 100644
--- a/dev-java/bsh/Manifest
+++ b/dev-java/bsh/Manifest
@@ -1 +1 @@
-DIST bsh-2.0b6.tar.gz 1720334 BLAKE2B 7ade7d35ac66dad8c79dd2cb541c8851b321601bc6239f4d82e6b37269fdefc5cfa5efd1198f58030bb9dcc4712b42c1ca07071f0b042a59ebdbc4168e472fb0 SHA512 3d4458153f5e2a3b30d9afd79f0fe28862effa8e490fd1649d435c03bf90b060c255949a49780afee95069da4e8e8d2e4e2c5d979908370a525b3ca9a396458c
+DIST bsh-2.1.1.tar.gz 1922883 BLAKE2B d60ebfab96f81a17120733887468571dd991dce663d725d9bee2dc44146e320d36600be70a3b7f76516645030d40fcda17db70989d54e98ffdc69c91738bcaf1 SHA512 585fcb9fdc8c36063a7d4dfe9a909e68b61d611f023731c955b7ced3f894cb6c48b0d463735e6825cb6f0181ba97902279212d285e325267aa533490e0bbfe00
diff --git a/dev-java/bsh/bsh-2.0_beta6-r1.ebuild b/dev-java/bsh/bsh-2.0_beta6-r1.ebuild
deleted file mode 100644
index 6453015fe973..000000000000
--- a/dev-java/bsh/bsh-2.0_beta6-r1.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="beanshell"
-MY_BETA="b6"
-MY_PV="${PV%%_*}"
-MY_P="${PN}-${MY_PV}${MY_BETA}"
-
-DESCRIPTION="A small embeddable Java source interpreter"
-HOMEPAGE="https://github.com/beanshell/beanshell"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_PV}${MY_BETA}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-CDEPEND="
- dev-java/bsf:2.3
- java-virtuals/servlet-api:3.0
-"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8"
-
-DEPEND="
- ${CDEPEND}
- test? ( dev-java/ant-junit:0 )
- source? ( app-arch/zip )
- virtual/jdk:1.8"
-
-S="${WORKDIR}/${MY_PN}-${MY_PV}${MY_BETA}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_BUILD_TARGET="jarall"
-EANT_DOC_TARGET="javadoc"
-EANT_GENTOO_CLASSPATH="
- bsf-2.3
- servlet-api-3.0
-"
-
-java_prepare() {
- java-pkg_clean
-}
-
-EANT_TEST_TARGET="test"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "dist/${MY_P}.jar" "${PN}.jar"
-
- java-pkg_dolauncher "${PN}-console" --main bsh.Console
- java-pkg_dolauncher "${PN}-interpreter" --main bsh.Interpreter
-
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/bsh
-}
diff --git a/dev-java/bsh/bsh-2.1.1.ebuild b/dev-java/bsh/bsh-2.1.1.ebuild
new file mode 100644
index 000000000000..bfa3513a8e0a
--- /dev/null
+++ b/dev-java/bsh/bsh-2.1.1.ebuild
@@ -0,0 +1,115 @@
+# 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-extras.beanshell:bsh:2.1.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A small embeddable Java source interpreter"
+HOMEPAGE="https://github.com/beanshell/beanshell"
+SRC_URI="https://github.com/beanshell/beanshell/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/beanshell-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux"
+
+# There was 1 failure:
+# 1) do_not_access_non_open_methods(bsh.Java_9_Test)
+# bsh.TargetError: Sourced file: inline evaluation of: ``import java.net.URL;
+PROPERTIES="test_network"
+RESTRICT="test"
+
+CP_DEPEND="
+ dev-java/bsf:2.3
+ dev-java/jakarta-servlet-api:4"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="${CP_DEPEND}
+ virtual/jdk:1.8"
+
+DOCS=(
+ CHANGES.md
+ NOTICE
+ README.md
+)
+
+PATCHES=( "${FILESDIR}/bsh-2.1.1-skip-tests.patch" )
+
+JAVA_LAUNCHER_FILENAME="bsh-console"
+JAVA_MAIN_CLASS="bsh.Console"
+JAVA_RESOURCE_DIRS="resources/src"
+JAVA_SRC_DIR=( src bsf/src engine/src )
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="tests"
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./tests/test-scripts/*"
+
+ # These classes are not in upstream jar file
+ mkdir -p tests/src/bsh/engine || die
+ mv {engine,tests}/src/bsh/TestBshScriptEngine.java || die
+ mv {,tests/}src/bsh/JThis.java || die
+
+ # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
+ mkdir resources || die
+ find src -type f \
+ ! -name '*.java' \
+ ! -name 'bsh.jj*' \
+ ! -name '*.scripted' \
+ ! -name '*.txt' \
+ ! -name '*.xml' \
+ ! -name '.errLog' \
+ ! -name 'index.html' \
+ ! -name 'Changes.html' \
+ ! -name 'CodeMap.html' \
+ ! -name 'Manifest.*' \
+ | xargs cp --parent -t resources || die
+}
+
+src_test() {
+ # tests/junitTests/src/bsh/Issue_55_Test.java:47: error: cannot find symbol
+ # final Object scriptEngineResult = new BshScriptEngineFactory().getScriptEngine().eval(script);
+ # ^
+ # symbol: class BshScriptEngineFactory
+ # location: class Issue_55_Test
+# cp {engine,tests}/src/bsh/engine/BshScriptEngineFactory.java || die
+ rm tests/junitTests/src/bsh/Issue_55_Test.java || die
+
+ # We add 3 test classes which are not covered by the default test selection of java-pkg-simple
+ # We skip "OldScriptsTest" and 4 failing test classes.
+ # Test failures are documeted in bug #903519.
+ pushd tests/junitTests/src > /dev/null || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -type f \
+ ! -name 'OldScriptsTest.java' \
+ ! -name 'Class3_Test.java' \
+ ! -name 'Class13Test.java' \
+ ! -name 'Issue_7_Test.java' \
+ ! -name 'Issue_8_Test.java' \
+ \( \
+ -name "*Test.java" \
+ -o -name "AnnotationsParsing.java" \
+ -o -name "GoogleReports.java" \
+ -o -name "Namespace_chaining.java" \
+ \) )
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ popd > /dev/null || die
+
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ # The eclass installs only then main launcher.
+ java-pkg_dolauncher "${PN}-interpreter" --main bsh.Interpreter
+}
diff --git a/dev-java/bsh/files/bsh-2.1.1-skip-tests.patch b/dev-java/bsh/files/bsh-2.1.1-skip-tests.patch
new file mode 100644
index 000000000000..23c68e041fad
--- /dev/null
+++ b/dev-java/bsh/files/bsh-2.1.1-skip-tests.patch
@@ -0,0 +1,119 @@
+Test failures are documeted in https://bugs.gentoo.org/903519
+--- a/tests/junitTests/src/bsh/Project_Coin_Test.java
++++ b/tests/junitTests/src/bsh/Project_Coin_Test.java
+@@ -26,6 +26,7 @@
+ package bsh;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.experimental.categories.Category;
+ import org.junit.runner.RunWith;
+
+@@ -48,6 +49,7 @@ public class Project_Coin_Test {
+
+ @Test
+ @Category(ProjectCoinFeature.class)
++ @Ignore
+ public void integer_literal_enhancements() throws Exception {
+ final Interpreter interpreter = new Interpreter();
+ assertEquals("0x99", 153, interpreter.eval("return 0x99;"));
+@@ -61,6 +63,7 @@ public class Project_Coin_Test {
+
+ @Test
+ @Category(ProjectCoinFeature.class)
++ @Ignore
+ public void diamond_operator() throws Exception {
+ eval("List<String> list = new ArrayList<>()");
+ final Object anagrams = eval(
+@@ -98,6 +101,7 @@ public class Project_Coin_Test {
+
+ @Test
+ @Category(Project_Coin_Test.class)
++ @Ignore
+ public void try_with_resource() throws Exception {
+ final Interpreter interpreter = new Interpreter();
+ final AtomicBoolean closed = new AtomicBoolean(false);
+--- a/tests/junitTests/src/bsh/NumberLiteralTest.java
++++ b/tests/junitTests/src/bsh/NumberLiteralTest.java
+@@ -1,6 +1,7 @@
+ package bsh;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.runner.RunWith;
+
+ import static bsh.TestUtil.eval;
+@@ -22,6 +23,7 @@ public class NumberLiteralTest {
+ }
+
+ @Test
++ @Ignore
+ public void integer_literal_enhancements_binary() throws Exception {
+ assertEquals("0b10011001", 153, eval("return 0b10011001;"));
+ }
+@@ -49,11 +51,13 @@ public class NumberLiteralTest {
+ }
+
+ @Test
++ @Ignore
+ public void parsing_large_hex_literal() throws Exception {
+ assertEquals(0xff000000L, eval("return 0xff000000;"));
+ }
+
+ @Test
++ @Ignore
+ public void parsing_very_large_hex_literal() throws Exception {
+ assertEquals(new BigInteger("ff00000000000000", 16), eval("return 0xff00000000000000;"));
+ }
+--- a/tests/junitTests/src/bsh/ClassGeneratorTest.java
++++ b/tests/junitTests/src/bsh/ClassGeneratorTest.java
+@@ -27,6 +27,7 @@ package bsh;
+
+ import org.junit.Assert;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.experimental.categories.Category;
+ import org.junit.runner.RunWith;
+
+@@ -86,6 +87,7 @@ public class ClassGeneratorTest {
+ */
+ @Test
+ @Category(KnownIssue.class)
++ @Ignore
+ public void define_interface_with_constants() throws Exception {
+ // these three are treated equal in java
+ TestUtil.eval("interface Test { public static final int x = 1; }");
+--- a/tests/junitTests/src/bsh/GoogleReports.java
++++ b/tests/junitTests/src/bsh/GoogleReports.java
+@@ -26,6 +26,7 @@
+ package bsh;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.runner.RunWith;
+
+ import javax.script.ScriptEngine;
+@@ -69,6 +70,7 @@ public class GoogleReports {
+ * <a href="http://code.google.com/p/beanshell2/issues/detail?id=6">issue#60</a>
+ */
+ @Test
++ @Ignore
+ public void accessibility_issue_a() throws Exception {
+ final Interpreter interpreter = new Interpreter();
+ interpreter.set("x", this);
+@@ -83,6 +85,7 @@ public class GoogleReports {
+ * <a href="http://code.google.com/p/beanshell2/issues/detail?id=6">issue#60</a>
+ */
+ @Test
++ @Ignore
+ public void accessibility_issue_b() throws Exception {
+ final Interpreter interpreter = new Interpreter();
+ interpreter.set("x", this);
+@@ -96,6 +99,7 @@ public class GoogleReports {
+ * <a href="http://code.google.com/p/beanshell2/issues/detail?id=10">issue#10</a>
+ */
+ @Test(expected = ParseException.class)
++ @Ignore
+ public void parse_error() throws Exception {
+ eval("\1;");
+ }
diff --git a/dev-java/bsh/metadata.xml b/dev-java/bsh/metadata.xml
index 69b7ba94f68d..766e961a6abb 100644
--- a/dev-java/bsh/metadata.xml
+++ b/dev-java/bsh/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/btf/Manifest b/dev-java/btf/Manifest
deleted file mode 100644
index 3e6627c2c522..000000000000
--- a/dev-java/btf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST btf-1.2.tar.gz 66887 BLAKE2B 62230c1af0c3c8b7d0ab294bc1e1dee523990a9b4e9aaa515d9119d4feffbf7db5fb548db9641b5709ec016dbb8e6b342509e7cb19e9e99f2b2f467c4fc8244a SHA512 ba70eea4370f090bf0295c9ac9907869a6bff62dc6ff86a443a887413f0c0fbb5c12924df6166b8ecd2348ee6bad409d954a16fe5a4a4695492f47a486e35acd
diff --git a/dev-java/btf/btf-1.2.ebuild b/dev-java/btf/btf-1.2.ebuild
deleted file mode 100644
index 4cb97a387cb2..000000000000
--- a/dev-java/btf/btf-1.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Generic interfaces to the classical builder pattern"
-HOMEPAGE="https://github.com/fge/btf/"
-SRC_URI="https://github.com/fge/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( LGPL-3 Apache-2.0 )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-COMMON_DEP="
- dev-java/jsr305:0
-"
-
-RDEPEND="
- ${COMMON_DEP}
- >=virtual/jre-1.7
-"
-
-DEPEND="
- ${COMMON_DEP}
- >=virtual/jdk-1.7
-"
-
-JAVA_GENTOO_CLASSPATH="jsr305"
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/btf/metadata.xml b/dev-java/btf/metadata.xml
deleted file mode 100644
index 63ca9ada3053..000000000000
--- a/dev-java/btf/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">fge/btf</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/byaccj/byaccj-1.15-r2.ebuild b/dev-java/byaccj/byaccj-1.15-r2.ebuild
deleted file mode 100644
index ed88c9ebb229..000000000000
--- a/dev-java/byaccj/byaccj-1.15-r2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="A java extension of BSD YACC-compatible parser generator"
-HOMEPAGE="http://byaccj.sourceforge.net/"
-MY_P="${PN}${PV}_src"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
-IUSE=""
-
-S="${WORKDIR}/${PN}${PV}"
-
-src_compile() {
- cp "${FILESDIR}/Makefile" src/Makefile || die
- emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" CFLAGS="${CFLAGS}" -C src linux
-}
-
-src_install() {
- newbin src/yacc.linux "${PN}"
- dodoc docs/ACKNOWLEDGEMEN
-}
diff --git a/dev-java/byaccj/byaccj-1.15-r3.ebuild b/dev-java/byaccj/byaccj-1.15-r3.ebuild
new file mode 100644
index 000000000000..a7d59bbf3ade
--- /dev/null
+++ b/dev-java/byaccj/byaccj-1.15-r3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="A Java extension of BSD YACC-compatible parser generator"
+HOMEPAGE="https://byaccj.sourceforge.net/"
+MY_P="${PN}${PV}_src"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${MY_P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
+
+S="${WORKDIR}/${PN}${PV}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.15-implicit-function-declaration.patch
+)
+
+src_compile() {
+ cp "${FILESDIR}/Makefile" src/Makefile || die
+ emake CC="$(tc-getCC)" LDFLAGS="${LDFLAGS}" CFLAGS="${CFLAGS}" -C src linux
+}
+
+src_install() {
+ newbin src/yacc.linux "${PN}"
+ dodoc docs/ACKNOWLEDGEMEN
+}
diff --git a/dev-java/byaccj/files/byaccj-1.15-implicit-function-declaration.patch b/dev-java/byaccj/files/byaccj-1.15-implicit-function-declaration.patch
new file mode 100644
index 000000000000..e1a1235e8ae3
--- /dev/null
+++ b/dev-java/byaccj/files/byaccj-1.15-implicit-function-declaration.patch
@@ -0,0 +1,17 @@
+https://sourceforge.net/p/byaccj/patches/5/
+
+main.c: In function ‘done’:
+main.c:88:43: error: implicit declaration of function -Werror=implicit-function-declaration
+ 88 | if (action_file) { fclose(action_file); unlink(action_file_name); }
+ | ^~~~~~
+--- a/src/main.c
++++ b/src/main.c
+@@ -2,6 +2,8 @@
+ #include <stdlib.h>
+ #include <string.h>
+
++#include <unistd.h>
++
+ #ifndef __WIN32__ /*rwj -- make portable*/
+ #include <signal.h>
+ #else
diff --git a/dev-java/byaccj/metadata.xml b/dev-java/byaccj/metadata.xml
index 11872579d69e..0cef110d9a97 100644
--- a/dev-java/byaccj/metadata.xml
+++ b/dev-java/byaccj/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/byte-buddy/Manifest b/dev-java/byte-buddy/Manifest
new file mode 100644
index 000000000000..f5587d193af3
--- /dev/null
+++ b/dev-java/byte-buddy/Manifest
@@ -0,0 +1 @@
+DIST byte-buddy-1.14.0.tar.gz 1989303 BLAKE2B c284f54ebc6bf67e4706380f0876f403fcf5ae172a690888d13d6b3399cf41bf1fd8890bf15059f71a9457ec6343254ad1f421f8e4975aa70dd9a2103ab59610 SHA512 e6ccda287935b5ff7104d5c0e4904b0595918a21bcc90c6ac5b2358cc0371b22a4fcac2a95dde9e377c5d1e43077c8b57ea9520a9093b2380ab53c830f107ced
diff --git a/dev-java/byte-buddy/byte-buddy-1.14.0.ebuild b/dev-java/byte-buddy/byte-buddy-1.14.0.ebuild
new file mode 100644
index 000000000000..ed2c40b5bb64
--- /dev/null
+++ b/dev-java/byte-buddy/byte-buddy-1.14.0.ebuild
@@ -0,0 +1,161 @@
+# 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/raphw/byte-buddy/archive/byte-buddy-1.12.23.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild byte-buddy-1.12.23.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="net.bytebuddy:byte-buddy-agent:1.12.23 net.bytebuddy:byte-buddy:1.12.23"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Offers convenience for attaching an agent to the local or a remote VM"
+HOMEPAGE="https://bytebuddy.net"
+SRC_URI="https://github.com/raphw/byte-buddy/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ dev-java/asm:9
+ dev-java/findbugs-annotations:0
+ dev-java/jna:4
+ dev-java/jsr305:0
+ test? (
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/byte-buddy-${P}"
+
+JAVA_CLASSPATH_EXTRA="
+ asm-9
+ findbugs-annotations
+ jsr305
+ jna-4
+"
+
+src_prepare() {
+ default
+ # https://github.com/raphw/byte-buddy/blob/byte-buddy-1.12.20/byte-buddy-agent/pom.xml#L142-L176
+ cat > byte-buddy-agent/src/main/java/module-info.java <<-EOF || die
+ module net.bytebuddy.agent {
+ requires java.instrument;
+ requires static jdk.attach;
+ requires static com.sun.jna;
+ requires static com.sun.jna.platform;
+ requires java.base;
+ exports net.bytebuddy.agent;
+ exports net.bytebuddy.agent.utility.nullability;
+ }
+ EOF
+
+ # instead of shading byte-buddy-dep we move it into byte-buddy.
+ mv byte-buddy{-dep,}/src/main/java || die "cannot move sources"
+
+ # https://github.com/raphw/byte-buddy/blob/byte-buddy-1.12.20/byte-buddy/pom.xml#L159-L195
+ local exports="$( \
+ sed -n '/<packages.list.external>/,/<\/packages.list.external/p' \
+ byte-buddy/pom.xml \
+ | sed -e 's:^:exports :' -e 's:,:;:' \
+ | grep -v 'packages.list.external\|shade' | tr -s '[:space:]' \
+ )" || die
+ cat > byte-buddy/src/main/java/module-info.java <<-EOF || die
+ module net.bytebuddy {
+ requires static java.instrument;
+ requires static java.management;
+ requires static jdk.unsupported;
+ requires static net.bytebuddy.agent;
+ requires static com.sun.jna;
+ requires static com.sun.jna.platform;
+ requires java.base;
+ ${exports}
+ }
+ EOF
+}
+
+src_compile() {
+ einfo "Compiling byte-buddy-agent.jar"
+ JAVA_JAR_FILENAME="byte-buddy-agent.jar"
+ JAVA_RESOURCE_DIRS="byte-buddy-agent/src/main/resources"
+ JAVA_SRC_DIR="byte-buddy-agent/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":byte-buddy-agent.jar"
+ rm -r target || die
+
+ einfo "Compiling byte-buddy.jar"
+ JAVA_JAR_FILENAME="byte-buddy.jar"
+ JAVA_MAIN_CLASS="net.bytebuddy.build.Plugin\$Engine\$Default"
+ JAVA_RESOURCE_DIRS=()
+ JAVA_SRC_DIR="byte-buddy/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":byte-buddy.jar"
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ rm byte-buddy-agent/src/main/java/module-info.java || die
+ JAVA_SRC_DIR=(
+ "byte-buddy-agent/src/main/java"
+ "byte-buddy/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test() {
+ # instead of shading byte-buddy-dep we move it into byte-buddy.
+ mv byte-buddy{-dep,}/src/test || die "cannot move tests"
+
+ # @Ignore one of 4 tests, https://bugs.gentoo.org/863386
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testIgnoreExistingField()/i @Ignore' \
+ -i byte-buddy/src/test/java/net/bytebuddy/build/CachedReturnPluginOtherTest.java || die
+
+ # @Ignore one of 39 tests, https://bugs.gentoo.org/863386
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testNoParameterNameAndModifiers()/i @Ignore' \
+ -i byte-buddy/src/test/java/net/bytebuddy/description/method/AbstractMethodDescriptionTest.java || die
+
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito-4"
+
+ einfo "Testing byte-buddy-agent"
+ # https://github.com/raphw/byte-buddy/issues/1321#issuecomment-1252776459
+ JAVA_TEST_EXTRA_ARGS=( -Dnet.bytebuddy.test.jnapath="${EPREFIX}/usr/$(get_libdir)/jna-4/" )
+ JAVA_TEST_SRC_DIR="byte-buddy-agent/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing byte-buddy"
+ JAVA_TEST_RESOURCE_DIRS=( byte-buddy/src/test/{resources,precompiled*} )
+ JAVA_TEST_SRC_DIR="byte-buddy/src/test/java"
+
+ JAVA_TEST_EXCLUDES=(
+ # all tests in this class fail, https://bugs.gentoo.org/863386
+ net.bytebuddy.build.CachedReturnPluginTest
+ )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg_dojar "byte-buddy-agent.jar"
+ java-pkg_dojar "byte-buddy.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "byte-buddy-agent/src/main/java/*"
+ java-pkg_dosrc "byte-buddy/src/main/java/*"
+ fi
+}
diff --git a/dev-java/byte-buddy/metadata.xml b/dev-java/byte-buddy/metadata.xml
new file mode 100644
index 000000000000..7550729e01e8
--- /dev/null
+++ b/dev-java/byte-buddy/metadata.xml
@@ -0,0 +1,13 @@
+<?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">raphw/byte-buddy</remote-id>
+ </upstream>
+ <longdescription>
+ This artifact is a build of Byte Buddy with all ASM dependencies repackaged into its own name space.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/bytelist/Manifest b/dev-java/bytelist/Manifest
deleted file mode 100644
index a7640c923926..000000000000
--- a/dev-java/bytelist/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bytelist-1.0.15-sources.tar.gz 50512 BLAKE2B f17094ac4ef8ea68d48b05589b9fe3b8a90033dbc33992d0ebbcf70851c6877e20dcbe68f2e505e62301346653519833318d2c671bea9d6914d9f017610204f7 SHA512 1575a97229db7a7b99abd4fc74e713f79cd9bca4b7ffa13ba52607d84d5f7af8863c45dfd65dd32e12b03feb659808cf2f07ea494c87ca496061ab00280a40f4
diff --git a/dev-java/bytelist/bytelist-1.0.15.ebuild b/dev-java/bytelist/bytelist-1.0.15.ebuild
deleted file mode 100644
index 8800cb76ac02..000000000000
--- a/dev-java/bytelist/bytelist-1.0.15.ebuild
+++ /dev/null
@@ -1,47 +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 pom.xml --download-uri https://github.com/jruby/bytelist/archive/refs/tags/bytelist-1.0.15.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild bytelist-1.0.15.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.jruby.extras:bytelist:1.0.15"
-JAVA_TESTING_FRAMEWORKS="junit"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Byte array based container"
-HOMEPAGE="https://github.com/jruby/bytelist"
-SRC_URI="https://github.com/jruby/${PN}/archive/refs/tags/${P}.tar.gz -> ${P}-sources.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-# Common dependencies
-# POM: pom.xml
-# org.jruby.jcodings:jcodings:1.0.18 -> >=dev-java/jcodings-1.0.11:1
-
-CDEPEND="
- >=dev-java/jcodings-1.0.11:1
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}
-"
-
-S="${WORKDIR}/${PN}-${P}"
-
-JAVA_GENTOO_CLASSPATH="jcodings-1"
-JAVA_SRC_DIR="src"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit"
-JAVA_TEST_SRC_DIR="test"
diff --git a/dev-java/bytelist/metadata.xml b/dev-java/bytelist/metadata.xml
deleted file mode 100644
index 2ff0b0026b27..000000000000
--- a/dev-java/bytelist/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="github">jruby/bytelist</remote-id>
- <bugs-to>https://github.com/jruby/bytelist/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/c3p0/Manifest b/dev-java/c3p0/Manifest
index 9d8536667d68..bb4c017ae94d 100644
--- a/dev-java/c3p0/Manifest
+++ b/dev-java/c3p0/Manifest
@@ -1 +1 @@
-DIST c3p0-0.9.5.1.src.tgz 839657 BLAKE2B b8cf89ecb5b3766852355cdeb234698b0d1d8327233152e2e51ddcfe4a6e3be5f0fe4cc12a70d0df90d8ead90b3506b405f267f83bbb4a2a0ea1ac9d86051c64 SHA512 1843696d48e68f6120a68c42f0eb60c342ed8d1ddcc1d78c500d85c3d7e5e48358d100ecb1e0efa192aba34c5d9221437d53c2a968a42b797ff84bc12db4a724
+DIST c3p0-0.9.5.5.src.tgz 869069 BLAKE2B 6e1349d1cd02647a7c2424b8e89a8c21cfd8faefd26b7e05ee9e2da1a1a501b2b3102b142eef52f56dea672408d683a6f47b4c89b25d529a578c4b1fe4aa819c SHA512 fa96b5d0042442c773309090b9cf8f0db8e16f334e321ac952afb198ca06cd66f6f7162369f22a439a0e6b45b1ffcddf540af53804f223844d7a5465213bece1
diff --git a/dev-java/c3p0/c3p0-0.9.5.1.ebuild b/dev-java/c3p0/c3p0-0.9.5.1.ebuild
deleted file mode 100644
index 15e63cf24a7e..000000000000
--- a/dev-java/c3p0/c3p0-0.9.5.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source examples test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="JDBC drivers with JNDI-bindable DataSources"
-HOMEPAGE="http://c3p0.sourceforge.net/"
-
-MY_P="${P}.src"
-
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tgz"
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-CDEPEND="
- dev-java/log4j:0
- dev-java/mchange-commons:0"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/junit:4
- )
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-java_prepare() {
- java-pkg_clean
- java-pkg_jar-from --into lib/ mchange-commons
- java-pkg_jar-from --into lib/ log4j
-
-}
-
-EANT_TEST_TARGET="junit-tests"
-EANT_TEST_GENTOO_CLASSPATH="junit-4"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "build/${P}.jar"
- dodoc README-SRC
- use doc && java-pkg_dojavadoc build/apidocs
- use source && java-pkg_dosrc src/java/com/mchange/v2
- use examples && java-pkg_doexamples src/java/com/mchange/v2/c3p0/example
-}
diff --git a/dev-java/c3p0/c3p0-0.9.5.5-r1.ebuild b/dev-java/c3p0/c3p0-0.9.5.5-r1.ebuild
new file mode 100644
index 000000000000..4111832765af
--- /dev/null
+++ b/dev-java/c3p0/c3p0-0.9.5.5-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Tests require an existing running SQL server and 'junit.jar.file' property
+JAVA_PKG_IUSE="doc examples source"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="JDBC drivers with JNDI-bindable DataSources"
+HOMEPAGE="https://www.mchange.com/projects/c3p0/"
+SRC_URI="https://downloads.sourceforge.net/project/c3p0/c3p0-src/c3p0-${PV}/${P}.src.tgz"
+
+LICENSE="|| ( EPL-1.0 LGPL-2.1 )"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
+
+CP_DEPEND="
+ dev-java/log4j-12-api:2
+ dev-java/mchange-commons:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/${P}.src"
+
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+
+src_prepare() {
+ java-pkg_clean
+ java-pkg-2_src_prepare
+ java-pkg_jar-from --into lib/ log4j-12-api-2
+ java-pkg_jar-from --into lib/ mchange-commons
+
+ # Test sources interfere with Javadoc generation on JDK 11
+ # Remove since the tests will never be run
+ rm -r src/java/com/mchange/v2/c3p0/test ||
+ die "Failed to remove unused test sources"
+}
+
+src_install() {
+ java-pkg_newjar "build/${P}.jar"
+ einstalldocs
+
+ use doc && java-pkg_dojavadoc build/apidocs
+ use examples && java-pkg_doexamples src/java/com/mchange/v2/c3p0/example
+ use source && java-pkg_dosrc src/java/com/mchange/v2
+}
diff --git a/dev-java/c3p0/metadata.xml b/dev-java/c3p0/metadata.xml
index d6e27668bb3f..668db4bc7044 100644
--- a/dev-java/c3p0/metadata.xml
+++ b/dev-java/c3p0/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">c3p0</remote-id>
+ <remote-id type="github">swaldman/c3p0</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/cache2k-api/Manifest b/dev-java/cache2k-api/Manifest
new file mode 100644
index 000000000000..9a4aeb7fa00c
--- /dev/null
+++ b/dev-java/cache2k-api/Manifest
@@ -0,0 +1 @@
+DIST cache2k-0.23.1.tar.gz 552229 BLAKE2B 7cd47eeb4d0f154a2dba0617ef29c97eadf3cd142e815b0ac760e2b9b2bcf4a9698c17897931d612f9e544ec0aa496d115caf66128ecbfd08a9f74e1d9da01b4 SHA512 205315f13e634ba4f8f38938ea29e15d9750a7ac9542a4f6eb0839868b34b762b1db9de898ce59a47905b11712386de73c01a12756003fd586efcd24b3220233
diff --git a/dev-java/cache2k-api/cache2k-api-0.23.1.ebuild b/dev-java/cache2k-api/cache2k-api-0.23.1.ebuild
new file mode 100644
index 000000000000..ac521a305cf9
--- /dev/null
+++ b/dev-java/cache2k-api/cache2k-api-0.23.1.ebuild
@@ -0,0 +1,23 @@
+# 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.cache2k:cache2k-api:0.23.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="light weight and high performance Java caching library: API"
+HOMEPAGE="https://cache2k.org"
+SRC_URI="https://github.com/cache2k/cache2k/archive/v${PV}.tar.gz -> cache2k-${PV}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/cache2k-${PV}/api"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/cache2k-api/metadata.xml b/dev-java/cache2k-api/metadata.xml
new file mode 100644
index 000000000000..496a7c76e966
--- /dev/null
+++ b/dev-java/cache2k-api/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">cache2k/cache2k</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/cache2k-core/Manifest b/dev-java/cache2k-core/Manifest
new file mode 100644
index 000000000000..9a4aeb7fa00c
--- /dev/null
+++ b/dev-java/cache2k-core/Manifest
@@ -0,0 +1 @@
+DIST cache2k-0.23.1.tar.gz 552229 BLAKE2B 7cd47eeb4d0f154a2dba0617ef29c97eadf3cd142e815b0ac760e2b9b2bcf4a9698c17897931d612f9e544ec0aa496d115caf66128ecbfd08a9f74e1d9da01b4 SHA512 205315f13e634ba4f8f38938ea29e15d9750a7ac9542a4f6eb0839868b34b762b1db9de898ce59a47905b11712386de73c01a12756003fd586efcd24b3220233
diff --git a/dev-java/cache2k-core/cache2k-core-0.23.1.ebuild b/dev-java/cache2k-core/cache2k-core-0.23.1.ebuild
new file mode 100644
index 000000000000..54b82f7d35c9
--- /dev/null
+++ b/dev-java/cache2k-core/cache2k-core-0.23.1.ebuild
@@ -0,0 +1,37 @@
+# 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.cache2k:cache2k-core:0.23.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="light weight and high performance Java caching library: core"
+HOMEPAGE="https://cache2k.org"
+SRC_URI="https://github.com/cache2k/cache2k/archive/v${PV}.tar.gz -> cache2k-${PV}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+
+CP_DEPEND="
+ dev-java/cache2k-api:0
+ dev-java/commons-logging:0
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/cache2k-${PV}/core"
+
+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"
diff --git a/dev-java/cache2k-core/metadata.xml b/dev-java/cache2k-core/metadata.xml
new file mode 100644
index 000000000000..496a7c76e966
--- /dev/null
+++ b/dev-java/cache2k-core/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">cache2k/cache2k</remote-id>
+ </upstream>
+</pkgmetadata>
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/cal10n/Manifest b/dev-java/cal10n/Manifest
new file mode 100644
index 000000000000..664a8401ecfc
--- /dev/null
+++ b/dev-java/cal10n/Manifest
@@ -0,0 +1 @@
+DIST cal10n-0.8.1.tar.gz 358264 BLAKE2B 1561d2ea7309e470b5bf5990d166af1974ddbfc766ee14101bef33d3b41e5d18bcadbe1ba769eb028d6a41c43b7498c29118a5d7c7b4a93bd55d0a9db5d42eb4 SHA512 882146cddcc8489f08c7354b2029448cc084932fbb6c448271dbfc9ddb11740744bfe161a4e4d58071fc010bc3891d094681584a7a559514d443dcceedafbca2
diff --git a/dev-java/cal10n/cal10n-0.8.1.ebuild b/dev-java/cal10n/cal10n-0.8.1.ebuild
new file mode 100644
index 000000000000..625007115eaa
--- /dev/null
+++ b/dev-java/cal10n/cal10n-0.8.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="ch.qos.cal10n:cal10n-api:0.8.1"
+# JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="java library for writing localized messages using resource bundle"
+HOMEPAGE="http://cal10n.qos.ch/"
+SRC_URI="https://github.com/qos-ch/cal10n/archive/v_${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/cal10n-v_${PV}/${PN}-api"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+# There are compilation errors in test phase:
+# warning: Supported source version 'RELEASE_5' from annotation processor 'ch.qos.cal10n.verifier.processor.CAL10NAnnotationProcessor' less than -source '8'
+# src/test/java/ch/qos/cal10n/util/Fruit.java:30: error: Failed to locate resource bundle [fruits] for locale [fr] for enum type [ch.qos.cal10n.util.Fruit]
+# public enum Fruit {
+# ^
+# src/test/java/ch/qos/cal10n/util/Fruit.java:30: error: Failed to locate resource bundle [fruits] for locale [en] for enum type [ch.qos.cal10n.util.Fruit]
+# public enum Fruit {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Minimal.java:34: error: Missing or empty @LocaleData annotation in enum type [ch.qos.cal10n.sample.Minimal]. See http://cal10n.qos.ch/codes.html#missingLDAnnotation
+# public enum Minimal {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Labels.java:9: error: Missing or empty @LocaleData annotation in enum type [ch.qos.cal10n.sample.Labels]. See http://cal10n.qos.ch/codes.html#missingLDAnnotation
+# public enum Labels {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Host.java:8: error: Missing or empty @LocaleData annotation in enum type [ch.qos.cal10n.sample.Host.OtherColors]. See http://cal10n.qos.ch/codes.html#missingLDAnnotation
+# public enum OtherColors {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Furnitures.java:33: error: Failed to locate resource bundle [furnitures] for locale [en_UK] for enum type [ch.qos.cal10n.sample.Furnitures]
+# public enum Furnitures {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Countries.java:33: error: Key [CH] present in enum type [ch.qos.cal10n.sample.Countries] but absent in resource bundle named [countries] for locale [en]
+# public enum Countries {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Countries.java:33: error: Key [BR] present in resource bundle named [countries] for locale [en] but absent in enum type [ch.qos.cal10n.sample.Countries]
+# public enum Countries {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Countries.java:33: error: Key [CH] present in enum type [ch.qos.cal10n.sample.Countries] but absent in resource bundle named [countries] for locale [fr]
+# public enum Countries {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Countries.java:33: error: Key [CN] present in enum type [ch.qos.cal10n.sample.Countries] but absent in resource bundle named [countries] for locale [fr]
+# public enum Countries {
+# ^
+# src/test/java/ch/qos/cal10n/sample/Countries.java:33: error: Key [BR] present in resource bundle named [countries] for locale [fr] but absent in enum type [ch.qos.cal10n.sample.Countries]
+# public enum Countries {
+# ^
+# 11 errors
+
+# JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+# JAVA_TEST_SRC_DIR="src/test/java"
+# JAVA_TEST_RESOURCE_DIRS="src/test/resources"
diff --git a/dev-java/cal10n/metadata.xml b/dev-java/cal10n/metadata.xml
new file mode 100644
index 000000000000..792aa536ff7c
--- /dev/null
+++ b/dev-java/cal10n/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">qos-ch/cal10n</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/cdi-api/Manifest b/dev-java/cdi-api/Manifest
index 88e4075ffb4a..86f330ad3dd5 100644
--- a/dev-java/cdi-api/Manifest
+++ b/dev-java/cdi-api/Manifest
@@ -1,2 +1 @@
-DIST cdi-api-1.2-sources.jar 139331 BLAKE2B 40b1982610fbf4e4785410552055ef0e0b80aca3fb8bc1bcf25a31e2456b5ba5cc1ca28ab29ca8c33859c4400785a429074b2c8e3a40cb4fc8c90ae79473d95c SHA512 b24a16cc208cd865f561ecdc7590ddcdb08c2e83f8fea75eefa0e52598461cc98c804dfeeacb360278ddfbf5508e72f381b1379e19efe91f3c89b0e255b3cb9a
-DIST cdi-api-1.2.jar 139331 BLAKE2B 40b1982610fbf4e4785410552055ef0e0b80aca3fb8bc1bcf25a31e2456b5ba5cc1ca28ab29ca8c33859c4400785a429074b2c8e3a40cb4fc8c90ae79473d95c SHA512 b24a16cc208cd865f561ecdc7590ddcdb08c2e83f8fea75eefa0e52598461cc98c804dfeeacb360278ddfbf5508e72f381b1379e19efe91f3c89b0e255b3cb9a
+DIST cdi-api-4.0.1.tar.gz 280719 BLAKE2B 9c4cf34f1b0c096a3097bed658ba4c13ab6fa655cd8233b82b13a788dd047e1be89bcde69b3c69665c0987c4f62cd5e4596e51f6235c95db5239daf403dea4e9 SHA512 7f3e9ca45e0708b3c998ff6f743975a9995309d1fb93fde64ca8a0fca73e16ea653085ca743c921d52385f0fbcbdab10b45fd8b6e8b27c2e058871febbbeeb1e
diff --git a/dev-java/cdi-api/cdi-api-1.2-r1.ebuild b/dev-java/cdi-api/cdi-api-1.2-r1.ebuild
deleted file mode 100644
index bdf05ea4ffb4..000000000000
--- a/dev-java/cdi-api/cdi-api-1.2-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Contexts and Dependency Injection for the Java EE platform"
-HOMEPAGE="http://www.cdi-spec.org/"
-SRC_URI="https://repo1.maven.org/maven2/javax/enterprise/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-CDEPEND="
- dev-java/javax-inject:0
- dev-java/tomcat-servlet-api:3.0
- dev-java/glassfish-interceptor-api:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="javax-inject,tomcat-servlet-api-3.0,glassfish-interceptor-api"
-
-JAVA_SRC_DIR="javax"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" . -name "*.xsd"
-}
diff --git a/dev-java/cdi-api/cdi-api-1.2.ebuild b/dev-java/cdi-api/cdi-api-1.2.ebuild
deleted file mode 100644
index 5d3e5e09d79a..000000000000
--- a/dev-java/cdi-api/cdi-api-1.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Contexts and Dependency Injection for the Java EE platform"
-HOMEPAGE="http://www.cdi-spec.org/"
-SRC_URI="https://repo1.maven.org/maven2/javax/enterprise/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="1.2"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-CDEPEND="dev-java/javax-inject:0
- dev-java/glassfish-interceptor-api:0
- dev-java/tomcat-servlet-api:3.0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-JAVA_SRC_DIR="src"
-
-JAVA_GENTOO_CLASSPATH="javax-inject,tomcat-servlet-api-3.0,glassfish-interceptor-api"
-
-java_prepare() {
- mkdir src || die
- mv * src
-}
diff --git a/dev-java/cdi-api/cdi-api-4.0.1-r2.ebuild b/dev-java/cdi-api/cdi-api-4.0.1-r2.ebuild
new file mode 100644
index 000000000000..ca054b493d33
--- /dev/null
+++ b/dev-java/cdi-api/cdi-api-4.0.1-r2.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom api/pom.xml --download-uri https://github.com/jakartaee/cdi/archive/4.0.1.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild cdi-api-4.0.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1"
+JAVA_TESTING_FRAMEWORKS="testng"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="APIs for CDI (Contexts and Dependency Injection for Java)"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.cdi"
+SRC_URI="https://github.com/jakartaee/cdi/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+EL_API_SLOT="5.0"
+
+DEPEND="
+ dev-java/injection-api:0
+ dev-java/jakarta-annotations-api:0
+ dev-java/jakarta-el-api:${EL_API_SLOT}
+ dev-java/jakarta-interceptors:0
+ >=virtual/jdk-11:*
+"
+RDEPEND=">=virtual/jre-11:*"
+
+DOCS=( CONTRIBUTING.adoc {NOTICE,README}.md )
+
+PATCHES=(
+ # https://bugs.gentoo.org/856412
+ # org.jboss.cdi.api.test.se.SeContainerInitializerTest # Tests run: 4, Failures: 1
+ # org.jboss.cdi.api.test.CDITest # Tests run: 11, Failures: 5
+ "${FILESDIR}/cdi-api-4.0.1-skip-tests.patch"
+)
+
+S="${WORKDIR}/cdi-${PV}"
+
+JAVA_TEST_GENTOO_CLASSPATH="testng"
+JAVA_TEST_EXTRA_ARGS=( -DserviceDir="target/test-classes/META-INF/services" )
+JAVA_TEST_SRC_DIR="api/src/test/java"
+JAVA_TEST_RESOURCE_DIRS="api/src/test/resources"
+
+JAVA_TEST_EXCLUDES=(
+ # Tests run: 1, Failures: 1
+ org.jboss.cdi.api.test.privileged.CDIPrivilegedTest
+)
+
+src_prepare(){
+ default # https://bugs.gentoo.org/780585
+}
+
+src_compile() {
+ JAVA_CLASSPATH_EXTRA="
+ injection-api
+ jakarta-annotations-api
+ jakarta-el-api-${EL_API_SLOT}
+ jakarta-interceptors
+ "
+ JAVA_SRC_DIR="lang-model/src/main/java"
+ JAVA_JAR_FILENAME="lang-model.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":lang-model.jar"
+ rm -r target || die
+
+ JAVA_SRC_DIR="api/src/main/java"
+ JAVA_RESOURCE_DIRS="api/src/main/resources"
+ JAVA_JAR_FILENAME="cdi-api.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":cdi-api.jar"
+ rm -r target || die
+
+ if use doc; then
+ rm lang-model/src/main/java/module-info.java || die
+ JAVA_SRC_DIR=(
+ "lang-model/src/main/java"
+ "api/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ java-pkg_dojar "lang-model.jar"
+ java-pkg_dojar "cdi-api.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "lang-model/src/main/java/*"
+ java-pkg_dosrc "api/src/main/java/*"
+ fi
+}
diff --git a/dev-java/cdi-api/files/cdi-api-4.0.1-skip-tests.patch b/dev-java/cdi-api/files/cdi-api-4.0.1-skip-tests.patch
new file mode 100644
index 000000000000..f62b64b3d450
--- /dev/null
+++ b/dev-java/cdi-api/files/cdi-api-4.0.1-skip-tests.patch
@@ -0,0 +1,72 @@
+--- a/api/src/test/java/org/jboss/cdi/api/test/se/SeContainerInitializerTest.java
++++ b/api/src/test/java/org/jboss/cdi/api/test/se/SeContainerInitializerTest.java
+@@ -48,7 +48,7 @@ public class SeContainerInitializerTest {
+ SeContainerInitializer.newInstance();
+ }
+
+- @Test
++ @Test(enabled = false)
+ public void testWithOneGoodSeContainerInitializer() throws Exception {
+
+ FileWriter fw = new FileWriter(SERVICE_FILE_NAME);
+@@ -79,4 +79,4 @@ public class SeContainerInitializerTest {
+ Assert.assertTrue(SeContainerInitializer.newInstance().getClass().equals(DummySeContainerInitializer.class) ||
+ SeContainerInitializer.newInstance().getClass().equals(DummySeContainerInitializer2.class));
+ }
+-}
+\ No newline at end of file
++}
+--- a/api/src/test/java/org/jboss/cdi/api/test/CDITest.java
++++ b/api/src/test/java/org/jboss/cdi/api/test/CDITest.java
+@@ -59,7 +59,7 @@ public class CDITest {
+ }
+
+
+- @Test
++ @Test(enabled = false)
+ public void testWithOneGoodCDIProvider() throws Exception {
+
+ FileWriter fw = new FileWriter(SERVICE_FILE_NAME);
+@@ -90,7 +90,7 @@ public class CDITest {
+
+ }
+
+- @Test
++ @Test(enabled = false)
+ public void testWithTwoGoodCDIProvider() throws Exception {
+ FileWriter fw = new FileWriter(SERVICE_FILE_NAME);
+ fw.write(DummyCDIProvider2.class.getName());
+@@ -101,7 +101,7 @@ public class CDITest {
+ }
+
+
+- @Test
++ @Test(enabled = false)
+ public void testWithTwoGoodCDIProviderReverse() throws Exception {
+ FileWriter fw = new FileWriter(SERVICE_FILE_NAME);
+ fw.write(DummyCDIProvider.class.getName());
+@@ -111,7 +111,7 @@ public class CDITest {
+ Assert.assertTrue(CDI.current().getClass().equals(DummyCDIProvider.DummyCDI.class));
+ }
+
+- @Test
++ @Test(enabled = false)
+ public void testWithTwoCDIProviderOneWithNullCDIAndOneGood() throws Exception {
+ FileWriter fw = new FileWriter(SERVICE_FILE_NAME);
+ fw.write(DummyCDIProviderWithNullCDI.class.getName());
+@@ -122,7 +122,7 @@ public class CDITest {
+ }
+
+
+- @Test
++ @Test(enabled = false)
+ public void testWithThreeCDIProviderOneWithNullCDIAndOthersGood() throws Exception {
+ FileWriter fw = new FileWriter(SERVICE_FILE_NAME);
+ fw.write(DummyCDIProviderWithNullCDI.class.getName());
+@@ -163,4 +163,4 @@ public class CDITest {
+ ClosableCDIProvider.closeContainer();
+ CDI.current();
+ }
+-}
+\ No newline at end of file
++}
diff --git a/dev-java/cdi-api/metadata.xml b/dev-java/cdi-api/metadata.xml
index 2444066aa02b..5445151724ee 100644
--- a/dev-java/cdi-api/metadata.xml
+++ b/dev-java/cdi-api/metadata.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jakartaee/cdi</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/cglib/cglib-3.3.0-r2.ebuild b/dev-java/cglib/cglib-3.3.0-r2.ebuild
new file mode 100644
index 000000000000..fc4bba040586
--- /dev/null
+++ b/dev-java/cglib/cglib-3.3.0-r2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# doc USE flag is not in IUSE as the docs does not compile because of errors
+JAVA_PKG_IUSE="examples source test"
+MAVEN_ID="cglib:cglib:3.3.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PV=RELEASE_${PV//./_}
+MY_P=cglib-${MY_PV}
+
+DESCRIPTION="cglib is a powerful, high performance and quality Code Generation Library"
+HOMEPAGE="https://github.com/cglib/cglib"
+SRC_URI="https://github.com/cglib/cglib/archive//${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}"
+
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/asm:9
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+JAVA_SRC_DIR="${MY_P}/${PN}/src/main/java"
+JAVA_RESOURCE_DIRS="${MY_P}/${PN}/src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="${MY_P}/${PN}/src/test/java"
+JAVA_TEST_EXCLUDES=(
+ "net.sf.cglib.CodeGenTestCase" # not a test class
+ "net.sf.cglib.TestAll"
+ "net.sf.cglib.TestGenerator" # not a test class
+ "net.sf.cglib.proxy.TestEnhancer" # broken tests
+ "net.sf.cglib.proxy.TestInterceptor" # not a test class
+ "net.sf.cglib.reflect.TestFastClass" # broken tests
+)
+
+src_test() {
+ # Caused by: net.sf.cglib.core.CodeGenerationException:
+ # java.lang.reflect.InaccessibleObjectException-->Unable to make protected final java.lang.Class
+ # java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
+ # throws java.lang.ClassFormatError accessible: \
+ # module java.base does not "opens java.lang" to unnamed module @42bb2aee
+
+ 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 )
+ fi
+
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ use examples && java-pkg_doexamples --subdir samples ${MY_P}/cglib-sample/src/main/java
+}
diff --git a/dev-java/cglib/cglib-3.3.0.ebuild b/dev-java/cglib/cglib-3.3.0.ebuild
deleted file mode 100644
index df66cf8c3d65..000000000000
--- a/dev-java/cglib/cglib-3.3.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# doc USE flag is not in IUSE as the docs does not compile because of errors
-JAVA_PKG_IUSE="examples source test"
-MAVEN_ID="cglib:cglib:3.3.0"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PV=RELEASE_${PV//./_}
-MY_P=cglib-${MY_PV}
-
-DESCRIPTION="cglib is a powerful, high performance and quality Code Generation Library"
-HOMEPAGE="https://github.com/cglib/cglib"
-SRC_URI="https://github.com/cglib/cglib/archive/refs/tags/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 arm64 ppc64 x86"
-
-CDEPEND="dev-java/ant-core:0
- dev-java/asm:9
-"
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}
-"
-
-S="${WORKDIR}"
-
-JAVA_GENTOO_CLASSPATH="asm-9 ant-core"
-JAVA_SRC_DIR="${MY_P}/${PN}/src/main/java"
-JAVA_RESOURCE_DIRS="${MY_P}/${PN}/src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="${MY_P}/${PN}/src/test/java"
-JAVA_TEST_EXCLUDES=(
- "net.sf.cglib.CodeGenTestCase" # not a test class
- "net.sf.cglib.TestAll"
- "net.sf.cglib.TestGenerator" # not a test class
- "net.sf.cglib.proxy.TestEnhancer" # broken tests
- "net.sf.cglib.proxy.TestInterceptor" # not a test class
- "net.sf.cglib.reflect.TestFastClass" # broken tests
-)
-
-src_install() {
- java-pkg-simple_src_install
-
- use examples && java-pkg_doexamples --subdir samples ${MY_P}/cglib-sample/src/main/java
-}
diff --git a/dev-java/cglib/metadata.xml b/dev-java/cglib/metadata.xml
index d6cfa73169ff..9279f59e35a3 100644
--- a/dev-java/cglib/metadata.xml
+++ b/dev-java/cglib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/checker-framework-qual/Manifest b/dev-java/checker-framework-qual/Manifest
new file mode 100644
index 000000000000..a520abac15a6
--- /dev/null
+++ b/dev-java/checker-framework-qual/Manifest
@@ -0,0 +1 @@
+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.42.0.ebuild b/dev-java/checker-framework-qual/checker-framework-qual-3.42.0.ebuild
new file mode 100644
index 000000000000..5831dfb7010b
--- /dev/null
+++ b/dev-java/checker-framework-qual/checker-framework-qual-3.42.0.ebuild
@@ -0,0 +1,24 @@
+# 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.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://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"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+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
new file mode 100644
index 000000000000..29b8e33bf4e4
--- /dev/null
+++ b/dev-java/checker-framework-qual/metadata.xml
@@ -0,0 +1,19 @@
+<?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">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
+and prevent errors in their Java programs.
+
+A "checker" is a tool that warns you about certain errors or
+gives you a guarantee that those errors do not occur.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/cofoja/Manifest b/dev-java/cofoja/Manifest
deleted file mode 100644
index 14d605a520a6..000000000000
--- a/dev-java/cofoja/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST cofoja-1.2.zip 229127 BLAKE2B b668a731bb86b38caaa599a723dbf34b42781a1c86afc8f905631a98f48fc8d94593d23eea24a53488019cd8f87f094256a7f1f3eda69f5dfb71340ca1bb8d63 SHA512 d6d73d32adaceaeb4c34600c0761f272d4917d276eb654a3e43ad368bc77eae26e9d5b90cb93f7ae073b6dad81eece129337e3c2d52daf7bb3dbc0577dcc2e7e
-DIST cofoja-1.3.tar.gz 104211 BLAKE2B 82c84a4cd0ce788c88f97256a47228512776113e7587c79518dd9d64618a3f92d45b97db25b33105160ee7f51c65518cdd086cafba2d89db3189c3c5dfd8b842 SHA512 c82e3b08ed193715e29a3b0b966ff38e17f73b24384f364946f1f00af0c376ce537d16fe0d0430f4c314f86ea5b46238ae0fa94d79d350c727f143d33f418d8e
diff --git a/dev-java/cofoja/cofoja-1.2.ebuild b/dev-java/cofoja/cofoja-1.2.ebuild
deleted file mode 100644
index 9848bd6a3251..000000000000
--- a/dev-java/cofoja/cofoja-1.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Contracts for Java"
-HOMEPAGE="https://github.com/nhatminhle/cofoja"
-SRC_URI="https://github.com/nhatminhle/${PN}/archive/v${PV}.zip -> ${P}.zip"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RESTRICT="test"
-
-CDEPEND="dev-java/asm:4"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- source? ( app-arch/zip )
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="asm-4"
-JAVA_SRC_DIR="src/com/google/java/contract"
-
-# Relies on a bunch of classes in jsr308,
-# spec we don't have packaged in Gentoo.. yet.
-JAVA_RM_FILES=(
- src/com/google/java/contract/core/apt/JavacUtils.java
-)
diff --git a/dev-java/cofoja/cofoja-1.3.ebuild b/dev-java/cofoja/cofoja-1.3.ebuild
deleted file mode 100644
index 654d5541a289..000000000000
--- a/dev-java/cofoja/cofoja-1.3.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Contracts for Java"
-HOMEPAGE="https://github.com/nhatminhle/cofoja"
-SRC_URI="https://github.com/nhatminhle/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RESTRICT="test"
-
-CDEPEND="dev-java/asm:4"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="asm-4"
-JAVA_SRC_DIR="src/com/google/java/contract"
-
-src_prepare() {
- default
-
- # Relies on a bunch of classes in jsr308,
- # spec we don't have packaged in Gentoo.. yet.
- rm -v src/com/google/java/contract/core/apt/JavacUtils.java || die
-}
diff --git a/dev-java/cofoja/metadata.xml b/dev-java/cofoja/metadata.xml
deleted file mode 100644
index b6f3889baf54..000000000000
--- a/dev-java/cofoja/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <upstream>
- <remote-id type="google-code">cofoja</remote-id>
- <remote-id type="github">nhatminhle/cofoja</remote-id>
- </upstream>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- <name>Patrice Clement</name>
- </maintainer>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/colt/Manifest b/dev-java/colt/Manifest
deleted file mode 100644
index 90c27a167a80..000000000000
--- a/dev-java/colt/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST colt-1.2.0.tar.gz 2545695 BLAKE2B be5a1e2ca50650a3dfe003855801350f4b01b931b11b59f41e635c4daeb011b7a761a7db8532168157bfbfac5a4473a39e0b49698d9ccd32e0099149dd7d4adb SHA512 a5e88e0cf671faeb336241d120daeb1ad90f1e2061827d06c0c2dc507cd3ae2ab45f2b80451aaedca0f5a8b3de66c13533178e3b6352ed8b2df886d25a924ce0
diff --git a/dev-java/colt/colt-1.2.0-r3.ebuild b/dev-java/colt/colt-1.2.0-r3.ebuild
deleted file mode 100644
index 24cb77f19188..000000000000
--- a/dev-java/colt/colt-1.2.0-r3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-ant-2 epatch
-
-DESCRIPTION="Java Libraries for High Performance Scientific and Technical Computing"
-SRC_URI="http://dsd.lbl.gov/~hoschek/colt-download/releases/${P}.tar.gz"
-HOMEPAGE="http://www-itg.lbl.gov/~hoschek/colt/"
-
-LICENSE="colt"
-IUSE=""
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/${PN}"
-
-EANT_BUILD_TARGET="javac jar"
-JAVA_ANT_ENCODING="ISO-8859-1"
-
-# [0]: I don't know but it must be useful.
-# [1]: Monkey patch manually some classes to get rid of the
-# oswego.edu.concurrent.util imports.
-PATCHES=(
- "${FILESDIR}/${P}-benchmark-no-deprecation.patch"
- "${FILESDIR}/${P}-remove-concurrent-util-imports.patch"
-)
-
-java_prepare() {
- epatch "${PATCHES[@]}"
- java-pkg_clean
-}
-
-src_install() {
- java-pkg_dojar "lib/${PN}.jar"
-
- dohtml README.html
- use doc && java-pkg_dojavadoc doc/api
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/colt/files/colt-1.2.0-benchmark-no-deprecation.patch b/dev-java/colt/files/colt-1.2.0-benchmark-no-deprecation.patch
deleted file mode 100644
index 2617dc49ad57..000000000000
--- a/dev-java/colt/files/colt-1.2.0-benchmark-no-deprecation.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- src/cern/colt/matrix/impl/BenchmarkMatrix2D.java 2005-12-13 00:57:28.000000000 -0600
-+++ src/cern/colt/matrix/impl/BenchmarkMatrix2D.java 2005-12-13 01:20:09.000000000 -0600
-@@ -331,6 +331,8 @@
- cern.colt.Timer timer1 = new cern.colt.Timer();
- cern.colt.Timer timer2 = new cern.colt.Timer();
-
-+ cern.jet.math.Functions F = cern.jet.math.Functions.functions;
-+
- long size = (((long)rows)*columns)*runs;
-
- DoubleMatrix2D matrix = null;
-@@ -344,7 +346,8 @@
- //if (kind.equals("sparse")) ((SparseDoubleMatrix2D)matrix).elements.hashCollisions = 0;
- for (int i=0; i<runs; i++) {
- timer1.start();
-- cern.colt.matrix.doublealgo.Transform.mult(matrix, 3);
-+ //cern.colt.matrix.doublealgo.Transform.mult(matrix, 3);
-+ matrix.assign(F.mult(3));
- timer1.stop();
- }
- timer1.display();
-@@ -366,7 +369,8 @@
- //if (kind.equals("sparse")) ((SparseDoubleMatrix2D)matrix).elements.hashCollisions = 0;
- for (int i=0; i<runs; i++) {
- timer2.start();
-- cern.colt.matrix.doublealgo.Transform.mult(matrix,3);
-+ // cern.colt.matrix.doublealgo.Transform.mult(matrix,3);
-+ matrix.assign(F.mult(3));
- timer2.stop();
- }
- timer2.display();
diff --git a/dev-java/colt/files/colt-1.2.0-remove-concurrent-util-imports.patch b/dev-java/colt/files/colt-1.2.0-remove-concurrent-util-imports.patch
deleted file mode 100644
index 2cfbef761baf..000000000000
--- a/dev-java/colt/files/colt-1.2.0-remove-concurrent-util-imports.patch
+++ /dev/null
@@ -1,210 +0,0 @@
---- src/cern/colt/matrix/linalg/SmpBlas.java.orig 2015-10-07 22:23:44.969486000 +0000
-+++ src/cern/colt/matrix/linalg/SmpBlas.java 2015-10-07 22:29:15.475486000 +0000
-@@ -10,7 +10,8 @@
-
- import cern.colt.matrix.DoubleMatrix1D;
- import cern.colt.matrix.DoubleMatrix2D;
--import EDU.oswego.cs.dl.util.concurrent.FJTask;
-+
-+import java.util.concurrent.ForkJoinTask;
- /**
- Parallel implementation of the Basic Linear Algebra System for symmetric multi processing boxes.
- Currently only a few algorithms are parallelised; the others are fully functional, but run in sequential mode.
-@@ -198,7 +199,7 @@
-
- // set up concurrent tasks
- int span = width/noOfTasks;
-- final FJTask[] subTasks = new FJTask[noOfTasks];
-+ final ForkJoinTask[] subTasks = new ForkJoinTask[noOfTasks];
- for (int i=0; i<noOfTasks; i++) {
- final int offset = i*span;
- if (i==noOfTasks-1) span = width - span*i; // last span may be a bit larger
-@@ -217,24 +218,30 @@
- CC = C.viewPart(offset,0,span,p);
- }
-
-- subTasks[i] = new FJTask() {
-+ subTasks[i] = new ForkJoinTask() {
- public void run() {
- seqBlas.dgemm(transposeA,transposeB,alpha,AA,BB,beta,CC);
- //System.out.println("Hello "+offset);
- }
-+
-+ public boolean exec() { return true; }
-+ public void setRawResult(Object o) {}
-+ public Object getRawResult() {return null;}
- };
- }
-
- // run tasks and wait for completion
-- try {
-- this.smp.taskGroup.invoke(
-- new FJTask() {
-- public void run() {
-- coInvoke(subTasks);
-- }
-- }
-- );
-- } catch (InterruptedException exc) {}
-+ this.smp.taskGroup.invoke(
-+ new ForkJoinTask() {
-+ public void run() {
-+ invokeAll(subTasks);
-+ }
-+
-+ public boolean exec() { return true; }
-+ public void setRawResult(Object o) {}
-+ public Object getRawResult() {return null;}
-+ }
-+ );
- }
- public void dgemv(final boolean transposeA, final double alpha, DoubleMatrix2D A, final DoubleMatrix1D x, final double beta, DoubleMatrix1D y) {
- /*
-@@ -271,7 +278,7 @@
-
- // set up concurrent tasks
- int span = width/noOfTasks;
-- final FJTask[] subTasks = new FJTask[noOfTasks];
-+ final ForkJoinTask[] subTasks = new ForkJoinTask[noOfTasks];
- for (int i=0; i<noOfTasks; i++) {
- final int offset = i*span;
- if (i==noOfTasks-1) span = width - span*i; // last span may be a bit larger
-@@ -280,24 +287,30 @@
- final DoubleMatrix2D AA = A.viewPart(offset,0,span,n);
- final DoubleMatrix1D yy = y.viewPart(offset,span);
-
-- subTasks[i] = new FJTask() {
-+ subTasks[i] = new ForkJoinTask() {
- public void run() {
- seqBlas.dgemv(transposeA,alpha,AA,x,beta,yy);
- //System.out.println("Hello "+offset);
- }
-+
-+ public boolean exec() { return true; }
-+ public void setRawResult(Object o) {}
-+ public Object getRawResult() {return null;}
- };
- }
-
- // run tasks and wait for completion
-- try {
-- this.smp.taskGroup.invoke(
-- new FJTask() {
-- public void run() {
-- coInvoke(subTasks);
-- }
-- }
-- );
-- } catch (InterruptedException exc) {}
-+ this.smp.taskGroup.invoke(
-+ new ForkJoinTask() {
-+ public void run() {
-+ invokeAll(subTasks);
-+ }
-+
-+ public boolean exec() { return true; }
-+ public void setRawResult(Object o) {}
-+ public Object getRawResult() {return null;}
-+ }
-+ );
- }
- public void dger(double alpha, DoubleMatrix1D x, DoubleMatrix1D y, DoubleMatrix2D A) {
- seqBlas.dger(alpha,x,y,A);
-@@ -369,9 +382,6 @@
- /**
- * Prints various snapshot statistics to System.out; Simply delegates to {@link EDU.oswego.cs.dl.util.concurrent.FJTaskRunnerGroup#stats}.
- */
--public void stats() {
-- if (this.smp!=null) this.smp.stats();
--}
- private double xsum(DoubleMatrix2D A) {
- double[] sums = run(A,true,
- new Matrix2DMatrix2DFunction() {
---- src/cern/colt/matrix/linalg/Smp.java.orig 2015-10-07 21:08:19.443486000 +0000
-+++ src/cern/colt/matrix/linalg/Smp.java 2015-10-07 22:28:24.722486000 +0000
-@@ -9,12 +9,13 @@
- package cern.colt.matrix.linalg;
-
- import cern.colt.matrix.DoubleMatrix2D;
--import EDU.oswego.cs.dl.util.concurrent.FJTask;
--import EDU.oswego.cs.dl.util.concurrent.FJTaskRunnerGroup;
-+import java.util.concurrent.ForkJoinTask;
-+import java.util.concurrent.ForkJoinPool;
-+
- /*
- */
- class Smp {
-- protected FJTaskRunnerGroup taskGroup; // a very efficient and light weight thread pool
-+ protected ForkJoinPool taskGroup; // a very efficient and light weight thread pool
-
- protected int maxThreads;
- /**
-@@ -24,41 +25,39 @@
- maxThreads = Math.max(1,maxThreads);
- this.maxThreads = maxThreads;
- if (maxThreads>1) {
-- this.taskGroup = new FJTaskRunnerGroup(maxThreads);
-+ this.taskGroup = new ForkJoinPool(maxThreads);
- }
- else { // avoid parallel overhead
- this.taskGroup = null;
- }
- }
--/**
-- * Clean up deamon threads, if necessary.
-- */
--public void finalize() {
-- if (this.taskGroup!=null) this.taskGroup.interruptAll();
--}
- protected void run(final DoubleMatrix2D[] blocksA, final DoubleMatrix2D[] blocksB, final double[] results, final Matrix2DMatrix2DFunction function) {
-- final FJTask[] subTasks = new FJTask[blocksA.length];
-+ final ForkJoinTask[] subTasks = new ForkJoinTask[blocksA.length];
- for (int i=0; i<blocksA.length; i++) {
- final int k = i;
-- subTasks[i] = new FJTask() {
-+ subTasks[i] = new ForkJoinTask() {
- public void run() {
- double result = function.apply(blocksA[k],blocksB != null ? blocksB[k] : null);
- if (results!=null) results[k] = result;
- //System.out.print(".");
- }
-+ public boolean exec() { return true; }
-+ public void setRawResult(Object o) {}
-+ public Object getRawResult() {return null;}
- };
- }
-
- // run tasks and wait for completion
-- try {
-- this.taskGroup.invoke(
-- new FJTask() {
-- public void run() {
-- coInvoke(subTasks);
-- }
-- }
-- );
-- } catch (InterruptedException exc) {}
-+ this.taskGroup.invoke(
-+ new ForkJoinTask() {
-+ public void run() {
-+ invokeAll(subTasks);
-+ }
-+ public boolean exec() { return true; }
-+ public void setRawResult(Object o) {}
-+ public Object getRawResult() {return null;}
-+ }
-+ );
- }
- protected DoubleMatrix2D[] splitBlockedNN(DoubleMatrix2D A, int threshold, long flops) {
- /*
-@@ -186,10 +185,4 @@
- }
- return blocks;
- }
--/**
-- * Prints various snapshot statistics to System.out; Simply delegates to {@link EDU.oswego.cs.dl.util.concurrent.FJTaskRunnerGroup#stats}.
-- */
--public void stats() {
-- if (this.taskGroup!=null) this.taskGroup.stats();
--}
- }
diff --git a/dev-java/colt/metadata.xml b/dev-java/colt/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/colt/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-beanutils/Manifest b/dev-java/commons-beanutils/Manifest
index 35286cfbdc42..3d0920954f02 100644
--- a/dev-java/commons-beanutils/Manifest
+++ b/dev-java/commons-beanutils/Manifest
@@ -1,2 +1,3 @@
-DIST commons-beanutils-1.9.2-src.tar.gz 396910 BLAKE2B 1324c49605c9640aa3eee5c016a43bbb45b1984dd49eeab8f9b7a4ef1c5284ff8869228dda51719c2e6b3576517fdd02018a4f36654efc7f92d3fb7432008d05 SHA512 cf43aace33eb91368f86445874b16d977e827451f1355bb00e9b33bf0707855b5d757b0d58ad617f3a7f86f9065e7c900907dd604ba4de5ae61473d40cb758a9
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.2.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.9.2.ebuild
deleted file mode 100644
index b50bec906c0f..000000000000
--- a/dev-java/commons-beanutils/commons-beanutils-1.9.2.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Provides easy-to-use wrappers around Reflection and Introspection APIs"
-HOMEPAGE="http://commons.apache.org/beanutils/"
-SRC_URI="mirror://apache/commons/beanutils/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.7"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-CDEPEND="dev-java/commons-collections:0
- dev-java/commons-logging:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- dev-java/junit:0
- )
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}-src"
-
-# Buggy tests.
-JAVA_RM_FILES=(
- src/test/java/org/apache/commons/beanutils/IndexedPropertyTestCase.java
- src/test/java/org/apache/commons/beanutils/BeanMapTestCase.java
- src/test/java/org/apache/commons/beanutils/bugs/Jira422TestCase.java
- src/test/java/org/apache/commons/beanutils/BeanificationTestCase.java
- src/test/java/org/apache/commons/beanutils/DefaultIntrospectionContextTestCase.java
-)
-
-EANT_GENTOO_CLASSPATH="commons-logging,commons-collections"
-
-java_prepare() {
- JAVA_ANT_CLASSPATH_TAGS="javac java" java-ant_rewrite-classpath
-}
-
-src_test() {
- EANT_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit"
- ANT_TASKS="ant-junit" eant \
- -Dcommons-collections.jar=$(java-pkg_getjar commons-collections commons-collections.jar) \
- -Dcommons-collections-testframework.jar=$(java-pkg_getjar commons-collections commons-collections-testframework.jar) \
- -Dcommons-logging.jar=$(java-pkg_getjar commons-logging commons-logging.jar) \
- test
-}
-
-src_install() {
- java-pkg_newjar dist/${P}.jar
-
- dodoc RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/main/java/org
-}
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/commons-beanutils-1.9.4.ebuild b/dev-java/commons-beanutils/commons-beanutils-1.9.4.ebuild
deleted file mode 100644
index a36a6aea1cef..000000000000
--- a/dev-java/commons-beanutils/commons-beanutils-1.9.4.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 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=7
-
-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 ~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
-
-CDEPEND="
- 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="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- dev-java/commons-collections:0[test]
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}
-"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="iso-8859-1"
-
-JAVA_GENTOO_CLASSPATH="commons-collections,commons-logging"
-JAVA_SRC_DIR="src/main/java"
-# JAVA_RESOURCE_DIRS="src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="commons-collections,junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-# JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-
-JAVA_TEST_EXCLUDES=(
- "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
-)
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-beanutils/metadata.xml b/dev-java/commons-beanutils/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/commons-beanutils/metadata.xml
+++ b/dev-java/commons-beanutils/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/commons-chain/Manifest b/dev-java/commons-chain/Manifest
deleted file mode 100644
index 1ba559b40c69..000000000000
--- a/dev-java/commons-chain/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-chain-1.2-src.zip 316195 BLAKE2B 4f4b6221b5358634649cced0d558cfde4e7df133bda1b3edcb1264273c879ece2332310b65f0860d07b689d371397288db0b1aae7ab76966ce7a85664f10b248 SHA512 454cc3c00deb78f0c07e01ea5e2be9ea1210b7a0162e2490e5aba0df0788e1661aed88e4c4ac83e9f2046f62bdf063ecb7af7d3d49b7e87056aded1d5c1dad4b
diff --git a/dev-java/commons-chain/commons-chain-1.2.ebuild b/dev-java/commons-chain/commons-chain-1.2.ebuild
deleted file mode 100644
index 18ee9cf7307a..000000000000
--- a/dev-java/commons-chain/commons-chain-1.2.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_P="${P}-src"
-DESCRIPTION="API exposing the Chain of Responsability design pattern - by the ASF"
-HOMEPAGE="http://commons.apache.org/proper/commons-chain/"
-SRC_URI="mirror://apache/commons/chain/source/${MY_P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-# Too many missing imports from javax.servlet.* which causes the
-# "compile-tests" target to fail compiling.
-# I gave up on them after wasting nearly half a day.
-RESTRICT="test"
-
-IUSE=""
-
-CDEPEND="dev-java/commons-digester:0
- dev-java/mojarra:2.2
- dev-java/portletapi:2.0
- dev-java/commons-logging:0
- java-virtuals/servlet-api:3.0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="
- commons-logging
- commons-digester
- portletapi-2.0
- mojarra-2.2
- servlet-api-3.0
-"
-
-EANT_BUILD_TARGET="package"
-EANT_BUILD_XML="build.xml"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml
-}
-
-src_install() {
- java-pkg_newjar "${S}"/target/${P}.jar commons-chain.jar
-
- if use doc; then
- java-pkg_dohtml -r "${S}"/target/site/apidocs/
- fi
-
- if use source; then
- java-pkg_dosrc "${S}"/src/*
- fi
-}
diff --git a/dev-java/commons-chain/files/commons-chain-1.2-build.xml b/dev-java/commons-chain/files/commons-chain-1.2-build.xml
deleted file mode 100644
index 1ef9f3813c7c..000000000000
--- a/dev-java/commons-chain/files/commons-chain-1.2-build.xml
+++ /dev/null
@@ -1,215 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="commons-chain-1.2" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="commons-chain-1.2"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/java"/>
- <property name="maven.build.resourceDir.0" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test"/>
- <property name="maven.build.testResourceDir.0" value="src/test"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.0}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}">
- <include name="**/*.xml"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="iso-8859-1"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- source="1.3"
- linksource="true"
- failonerror="false"
- breakiterator="false">
- <link href="http://java.sun.com/j2se/1.4.2/docs/api/"/>
- <link href="http://java.sun.com/j2ee/1.4/docs/api/"/>
- <link href="http://commons.apache.org/digester/apidocs/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
-</project>
diff --git a/dev-java/commons-chain/metadata.xml b/dev-java/commons-chain/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/commons-chain/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-cli/Manifest b/dev-java/commons-cli/Manifest
index 5329dda11f02..5defc51942de 100644
--- a/dev-java/commons-cli/Manifest
+++ b/dev-java/commons-cli/Manifest
@@ -1 +1 @@
-DIST commons-cli-1.4-src.tar.gz 148530 BLAKE2B 72460ee073b4e8c5179da03c3d599cf04b37b5b3aff89e4927b07765bd879acc9ac56f52e7dee03214e21f7ba9e5af3adf54d2f943aebb266bfa9b4983ba0380 SHA512 a5db856f6154e4340aab1865e3b34c752c0dceb8063faa64740ed470d8e6b3e7782242ae51d6bb57a535a6d6dad2943cc3130d7202223b8f89b8cbecdc3d9d4f
+DIST commons-cli-1.5.0-src.tar.gz 156731 BLAKE2B b3bc3c7426f4564187f6b2fecf2977a8d307277cb244bb51064f32e6d2fc0ddb08c539b3bae68bba5ccc2319d0e483f01f6765ae3e86ebfe99eb775564fd7c8f SHA512 aa2165695177c3e4561f68585cafb5434758138d8a863f3db1860477f660cf78664d2afb07cc3bc767bc8fa87befc7eaa5bdead423ee8b883c62ff00aec7cdda
diff --git a/dev-java/commons-cli/commons-cli-1.4.ebuild b/dev-java/commons-cli/commons-cli-1.4.ebuild
deleted file mode 100644
index cfe05d27ae26..000000000000
--- a/dev-java/commons-cli/commons-cli-1.4.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="commons-cli:commons-cli:1.4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Java library for working with the command line arguments and options"
-HOMEPAGE="http://commons.apache.org/cli/"
-SRC_URI="mirror://apache/commons/cli/source/${P}-src.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.7"
-
-DEPEND=">=virtual/jdk-1.7
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${P}-src"
-JAVA_SRC_DIR="src/main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc CONTRIBUTING.md NOTICE.txt README.md RELEASE-NOTES.txt
-}
-
-src_test() {
- cd src/test/java || die
-
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4)"
- local TESTS=$(find * -name "*Test.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/commons-cli/commons-cli-1.5.0.ebuild b/dev-java/commons-cli/commons-cli-1.5.0.ebuild
new file mode 100644
index 000000000000..576a7661f095
--- /dev/null
+++ b/dev-java/commons-cli/commons-cli-1.5.0.ebuild
@@ -0,0 +1,43 @@
+# 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-cli:commons-cli:1.5.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A Java library for working with the command line arguments and options"
+HOMEPAGE="https://commons.apache.org/proper/commons-cli/"
+SRC_URI="mirror://apache/commons/cli/source/${P}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DEPEND=">=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${P}-src"
+
+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"
+
+# There were 62 failures:
+# 1) testSimpleLong(org.apache.commons.cli.ParserTestCase)
+# java.lang.InstantiationException
+# at java.base/jdk.internal.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:48)
+# FAILURES!!!
+# Tests run: 444, Failures: 62
+JAVA_TEST_EXCLUDES="org.apache.commons.cli.ParserTestCase"
+
+src_install() {
+ default
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/commons-cli/metadata.xml b/dev-java/commons-cli/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/commons-cli/metadata.xml
+++ b/dev-java/commons-cli/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/commons-codec/Manifest b/dev-java/commons-codec/Manifest
index ce66a8df6605..6493f8c68cff 100644
--- a/dev-java/commons-codec/Manifest
+++ b/dev-java/commons-codec/Manifest
@@ -1 +1,2 @@
-DIST commons-codec-1.15.tar.gz 423639 BLAKE2B 5d9d3dd44fda7eee77048eaa1e28f54f9baff7ad276f7e718f4a4d6c5b26605914809db538e9832bf06b1468a65432645ef9de74aec9f9af9973668a82bd996f SHA512 dcf0b86f269a96362dca5b36b9e764a07e390634804b359d4dbd1a0c50bfcc9f778e3797f196e1f553d76dd25b3c6fd016f0ffbbca856fa6c88d3d55791889ce
+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.15.ebuild b/dev-java/commons-codec/commons-codec-1.15.ebuild
deleted file mode 100644
index 92af3cd6ce23..000000000000
--- a/dev-java/commons-codec/commons-codec-1.15.ebuild
+++ /dev/null
@@ -1,50 +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 commons-codec-1.15-src/pom.xml --download-uri https://apache.osuosl.org/commons/codec/source/commons-codec-1.15-src.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild commons-codec-1.15.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="commons-codec:commons-codec:1.15"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-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 -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-# Compile dependencies
-# POM: ${P}-src/pom.xml
-# test? junit:junit:4.13 -> >=dev-java/junit-4.13.1:4
-# test? org.apache.commons:commons-lang3:3.8 -> >=dev-java/commons-lang-3.11:3.6
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- >=dev-java/commons-lang-3.11:3.6
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS=(
- "src/main/resources"
-)
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4,commons-lang-3.6"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "src/test/resources"
-)
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..96485a4fea70
--- /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-codec/metadata.xml b/dev-java/commons-codec/metadata.xml
index f27bbde4a60f..3a111ef6e0e6 100644
--- a/dev-java/commons-codec/metadata.xml
+++ b/dev-java/commons-codec/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">apache/commons-codec</remote-id>
+</upstream>
<longdescription>
Codec was formed as an attempt to focus development effort on one
diff --git a/dev-java/commons-collections/Manifest b/dev-java/commons-collections/Manifest
index 02508b4a856d..ce4044f37b42 100644
--- a/dev-java/commons-collections/Manifest
+++ b/dev-java/commons-collections/Manifest
@@ -1,2 +1,4 @@
DIST commons-collections-3.2.2-src.tar.gz 630693 BLAKE2B a70cebe9526291d5207db7edd7c9b50060413880d41dcb28c01cf05f7e00a9f5e1560012c3c3c763162412282db9512bc2b64a5788f210c5c8866943d912dafb SHA512 2e8ef638f07515b028a3e7e97851fcf1d9023a2c188e211bd1e936f35d3d91c2885adf3b1103ad17dfb7aeea6e7a67ce7826ee346a8a29c1aa7c6b0cf14e9230
-DIST commons-collections4-4.1-src.tar.gz 704671 BLAKE2B dea1b630168373013ca937c9b02414b92845fdd9ddf7a22a05c4d7f8d30ff26d73f3a2d399d7a4c026f8ec43a282120fdf3d3cb1042a311c3b490ffed1774e30 SHA512 c5666f41b68c9fdba3731730595616b16f98579c077cf047f421a46729b5a65476a8707125a2c0b0c6c024ca94df8c2633123bd99e705149fcb1afadcd3bf68b
+DIST commons-collections-3.2.2-src.tar.gz.asc 819 BLAKE2B a7d170b03613cddddc284908d95287fc092c01b125c5adffebfc493daf9119e0c9d82fdc7d8ce1865ef45a1e015072f5a09181abcba5b17c9c48d7c6333279da SHA512 c5d33518ed5343b38c10e317f677266858bd9614eff7fdc13a2e0131fe71836c3694f49898843e6978496d7dd2f976b82922230a44cde1eac5f6cdfdb822dcd0
+DIST commons-collections4-4.4-src.tar.gz 703008 BLAKE2B f4a0e858eb7412bdd431894f923a4731685ceb2463bee002401d8048cc40534f002ec0291aa67297e061a50b624d3de8f64e227f513ab1f3620e38d1d6858255 SHA512 2110e73eda97ca52a886cb708f21d8609a83655861594f3b6eb7a15b777d42eeeefc5d3b28ffc6ecc5e4f0b3fd5407f80019c2ce006f970f55455ef33eee47ee
+DIST commons-collections4-4.4-src.tar.gz.asc 499 BLAKE2B 8217d8c8714d2c07a66eca22069b40e2d1012881385172bedd29d52f14ae5c6e287ce2f097f1bde77af06677c776e45c3e67dc6c885709f6c97f61155252131c SHA512 533c47ad2cb6b6926ea8e4aaf9072b6c7a0c9d4a6becb31163a33a6cba8a9888534b74701935a0f0e797c10cbc688331d9abefc3d4085edcd9a7d29260f735ae
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
new file mode 100644
index 000000000000..7ec6cb15cb8c
--- /dev/null
+++ b/dev-java/commons-collections/commons-collections-3.2.2-r2.ebuild
@@ -0,0 +1,51 @@
+# 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-collections:commons-collections:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Jakarta-Commons Collections Component"
+HOMEPAGE="https://commons.apache.org/collections/"
+SRC_URI="https://archive.apache.org/dist/commons/collections/source/${P}-src.tar.gz
+ verify-sig? ( https://archive.apache.org/dist/commons/collections/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 ~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 )"
+# broken with jdk:21 - https://bugs.gentoo.org/916445
+DEPEND="
+ <=virtual/jdk-17:*
+ test? ( dev-java/junit:0 )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {NOTICE,README,RELEASE-NOTES}.txt )
+HTML_DOCS=( {DEVELOPERS-GUIDE,PROPOSAL}.html )
+
+PATCHES=( "${FILESDIR}/${P}-fixes.patch" )
+
+JAVA_SRC_DIR="src/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit"
+JAVA_TEST_SRC_DIR="src/test"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
+src_test() {
+ if [[ "${ARCH}" = "ppc" ]]; then
+ einfo "tests are disabled on ppc"
+ else
+ java-pkg-simple_src_test
+ fi
+}
diff --git a/dev-java/commons-collections/commons-collections-3.2.2.ebuild b/dev-java/commons-collections/commons-collections-3.2.2.ebuild
deleted file mode 100644
index 6d32a5a18a44..000000000000
--- a/dev-java/commons-collections/commons-collections-3.2.2.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="commons-collections:commons-collections:3.2.2"
-
-inherit java-pkg-2 java-ant-2 java-utils-2
-
-DESCRIPTION="Jakarta-Commons Collections Component"
-HOMEPAGE="https://commons.apache.org/collections/"
-SRC_URI="mirror://apache/${PN/-//}/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- dev-java/junit:0
- dev-java/ant-junit:0
- )"
-
-RDEPEND=">=virtual/jre-1.8:*"
-
-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-4.1-r1.ebuild b/dev-java/commons-collections/commons-collections-4.1-r1.ebuild
deleted file mode 100644
index 228b947a439d..000000000000
--- a/dev-java/commons-collections/commons-collections-4.1-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.commons:commons-collections4:4.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-SLOT="4"
-MY_P="${PN}${SLOT}-${PV}"
-
-DESCRIPTION="Extends the JCF classes with new interfaces, implementations and utilities"
-HOMEPAGE="https://commons.apache.org/collections/"
-SRC_URI="mirror://apache/${PN/-//}/source/${MY_P}-src.tar.gz"
-LICENSE="Apache-2.0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.8
- test? (
- dev-java/easymock:3.2
- dev-java/junit:4
- )"
-
-RDEPEND="
- >=virtual/jre-1.8"
-
-S="${WORKDIR}/${MY_P}-src"
-
-JAVA_SRC_DIR="src/main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc RELEASE-NOTES.txt
- docinto html
- dodoc {DEVELOPERS-GUIDE,PROPOSAL}.html
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${DIR}/../resources:${PN}.jar:$(java-pkg_getjars easymock-3.2,junit-4)"
- local TESTS=$(find ${DIR} -name "*Test.java" ! -name "Abstract*" ! -name "BulkTest.*")
- 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-collections/commons-collections-4.1.ebuild b/dev-java/commons-collections/commons-collections-4.1.ebuild
deleted file mode 100644
index 3cb523c4cd89..000000000000
--- a/dev-java/commons-collections/commons-collections-4.1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.commons:commons-collections4:4.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-SLOT="4"
-MY_P="${PN}${SLOT}-${PV}"
-
-DESCRIPTION="Extends the JCF classes with new interfaces, implementations and utilities"
-HOMEPAGE="https://commons.apache.org/collections/"
-SRC_URI="mirror://apache/${PN/-//}/source/${MY_P}-src.tar.gz"
-LICENSE="Apache-2.0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.7
- test? (
- dev-java/easymock:3.2
- dev-java/junit:4
- )"
-
-RDEPEND="
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_P}-src"
-
-JAVA_SRC_DIR="src/main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc RELEASE-NOTES.txt
- docinto html
- dodoc {DEVELOPERS-GUIDE,PROPOSAL}.html
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${DIR}/../resources:${PN}.jar:$(java-pkg_getjars easymock-3.2,junit-4)"
- local TESTS=$(find ${DIR} -name "*Test.java" ! -name "Abstract*" ! -name "BulkTest.*")
- 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-collections/commons-collections-4.4-r2.ebuild b/dev-java/commons-collections/commons-collections-4.4-r2.ebuild
new file mode 100644
index 000000000000..059e87b91233
--- /dev/null
+++ b/dev-java/commons-collections/commons-collections-4.4-r2.ebuild
@@ -0,0 +1,59 @@
+# 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.commons:commons-collections4:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Extends the JCF classes with new interfaces, implementations and utilities"
+HOMEPAGE="https://commons.apache.org/proper/commons-collections/"
+SRC_URI="mirror://apache/commons/collections/source/${PN}4-${PV}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/collections/source/${PN}4-${PV}-src.tar.gz.asc )"
+S="${WORKDIR}/commons-collections4-${PV}-src"
+
+LICENSE="Apache-2.0"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+# broken with jdk:21 - https://bugs.gentoo.org/916445
+DEPEND="
+ <=virtual/jdk-17:*
+ test? (
+ dev-java/easymock:3.2
+ dev-java/commons-lang:3.6
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,README}.md {NOTICE,RELEASE-NOTES}.txt )
+HTML_DOCS=( {DEVELOPERS-GUIDE,PROPOSAL}.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.collections4"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="
+ commons-lang-3.6
+ easymock-3.2
+ junit-4
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # https://github.com/apache/commons-collections/blob/commons-commons-collections-4.4/pom.xml#L542-L550
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "*Test.java" \
+ ! -name "TestUtils.java" \
+ ! -name "Abstract*.java" \
+ ! -name "BulkTest.java")
+ 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/commons-collections/metadata.xml b/dev-java/commons-collections/metadata.xml
index 37998bf40746..23e31dd764c3 100644
--- a/dev-java/commons-collections/metadata.xml
+++ b/dev-java/commons-collections/metadata.xml
@@ -1,8 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <bugs-to>https://issues.apache.org/jira/projects/COLLECTIONS/issues</bugs-to>
+ <changelog>https://commons.apache.org/proper/commons-collections/changes-report.html</changelog>
+ <doc>https://commons.apache.org/proper/commons-collections/userguide.html</doc>
+ <remote-id type="github">apache/commons-collections</remote-id>
+ </upstream>
+ <longdescription>
+ The Apache Commons Collections package contains types that extend and augment the Java Collections Framework.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/commons-compress/Manifest b/dev-java/commons-compress/Manifest
index 9ce212e7e1ba..531be855daa7 100644
--- a/dev-java/commons-compress/Manifest
+++ b/dev-java/commons-compress/Manifest
@@ -1 +1,2 @@
-DIST commons-compress-1.20-sources.tar.gz 12990994 BLAKE2B 5709419bc7b54ac9eee4ee9a42f2ecef9ae7ed0d4b1a91e0b79c791f4cf018aed8bff4ce507d1ef9136fdc28bd550d234632d0bb9ebe7819b57c5ce99694adb6 SHA512 1794bae69e00339d9e4d35b3276543ff6f9a0f1614ec9bd7c4ec8ff1bc86d08cd48e9dc3ec712b969cf8ccd61ef6054d0c6203d7cba0c28b22e6a3ecccd0c43e
+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.20.ebuild b/dev-java/commons-compress/commons-compress-1.20.ebuild
deleted file mode 100644
index 2895ec27d09a..000000000000
--- a/dev-java/commons-compress/commons-compress-1.20.ebuild
+++ /dev/null
@@ -1,41 +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 pom.xml --download-uri https://mirrors.supportex.net/apache//commons/compress/source/commons-compress-1.20-src.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild commons-compress-1.20.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.commons:commons-compress:1.20"
-
-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="https://mirrors.supportex.net/apache//commons/compress/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-
-CDEPEND="
- dev-java/brotli-dec:0
- dev-java/xz-java:0
- dev-java/zstd-jni:0
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="iso-8859-1"
-
-JAVA_GENTOO_CLASSPATH="brotli-dec,xz-java,zstd-jni"
-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..c8764e448be2
--- /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 2444066aa02b..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 "http://www.gentoo.org/dtd/metadata.dtd">
+<!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-csv/Manifest b/dev-java/commons-csv/Manifest
new file mode 100644
index 000000000000..0bc18bae17ce
--- /dev/null
+++ b/dev-java/commons-csv/Manifest
@@ -0,0 +1 @@
+DIST commons-csv-1.9.0-sources.tar.gz 36975991 BLAKE2B b2e2091556f3766968dbe660e4059f491eedc458d3c15c0372770d144737ab3ddcc78ff36f674759bde8aa9690e4bbe14866f8546e1de3b67498736678650697 SHA512 4610197fbbf1b3fb3ff19ff8f5ee0ffe945c34c05e3db71b89156bf17aa7f6b2816ddace85457fec82cb22337f777e08eac5984d7299e702b537f0d242d368d8
diff --git a/dev-java/commons-csv/commons-csv-1.9.0.ebuild b/dev-java/commons-csv/commons-csv-1.9.0.ebuild
new file mode 100644
index 000000000000..43f3489184f5
--- /dev/null
+++ b/dev-java/commons-csv/commons-csv-1.9.0.ebuild
@@ -0,0 +1,55 @@
+# 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/csv/source/commons-csv-1.9.0-src.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild commons-csv-1.9.0.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.commons:commons-csv:1.9.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Simple interface for reading and writing CSV files of various types"
+HOMEPAGE="https://commons.apache.org/proper/commons-csv/"
+SRC_URI="mirror://apache/commons/csv/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# missing test deps
+RESTRICT="test"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.h2database:h2:1.4.200 -> !!!groupId-not-found!!!
+# test? commons-io:commons-io:2.11.0 -> >=dev-java/commons-io-2.11.0:1
+# test? org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
+# test? org.hamcrest:hamcrest:2.2 -> !!!artifactId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter:5.8.0-M1 -> !!!groupId-not-found!!!
+# test? org.mockito:mockito-core:3.11.2 -> !!!suitable-mavenVersion-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ >=dev-java/commons-io-2.11.0:1
+ >=dev-java/commons-lang-3.12.0:3.6
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/${P}-src"
+
+DOCS=( LICENSE.txt NOTICE.txt RELEASE-NOTES.txt )
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="commons-io-1,commons-lang-3.6"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS=(
+ "src/test/resources"
+)
diff --git a/dev-java/commons-csv/metadata.xml b/dev-java/commons-csv/metadata.xml
new file mode 100644
index 000000000000..21b8964574a7
--- /dev/null
+++ b/dev-java/commons-csv/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <bugs-to>https://issues.apache.org/jira/browse/CSV</bugs-to>
+ <changelog>https://commons.apache.org/proper/commons-csv/changes-report.html</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/commons-daemon/Manifest b/dev-java/commons-daemon/Manifest
index 7db2684e96c7..2255e60c5501 100644
--- a/dev-java/commons-daemon/Manifest
+++ b/dev-java/commons-daemon/Manifest
@@ -1,2 +1,2 @@
-DIST commons-daemon-1.0.15-src.tar.gz 291128 BLAKE2B af874e6a0852c2dc5c84fcbf5e1e443fb880a306b19054263d06e8d83a9b0866a52f2950c457315d80031a58250ec75284fc7839df82b7555b1ff3bd92e67810 SHA512 f20cc8796978fb09b6ecc8d99bb3c8b271b097d74c1f99b286cde213631e7f50a4104f5db2c354f9624ba8b037502d81e327c581b38253b9b216aa2172016e40
-DIST commons-daemon-1.1.0-src.tar.gz 298028 BLAKE2B 5e8a0719467523438559472270ac7038ecce040f2a5a8ea8704e181557df726b9c09267b57336d9659dcb3528fecb8ac61937ef3d56e5cb12b562b88b5f6f218 SHA512 a370085a991cd6b121fcfb49822660dfc0aac19f164677dd2e6373750c1a526ef5a10334a8e075fd965c038198f6638b9e9130b5b13256f4a23a6c5a29959701
+DIST commons-daemon-1.3.4-src.tar.gz 290834 BLAKE2B be57fbf89cad23fb4108e97b8e75d8380ff5b286068edfed65cd3539971375949ec80fd5aeece50a6498642f60e26498eb37ea3778f503d7498662ae79ecd14e SHA512 bb36d88bc21a5777245012b2a73ee0e764b85715731f54cc4ff09343e95ccb18fc6c68b3ae9c680fb45a60c7ef5ed0f9e40991c2c03246dd7f8dd65031eddf24
+DIST commons-daemon-1.3.4-src.tar.gz.asc 873 BLAKE2B f7886e67e2cfb0211d3271d79c251d07e5b0d7f7819566891e838619021ab9e3f468e3647f2f901d41a6d00f12b30adfa2d16f828ac5ce526666caab30ab8001 SHA512 eae6b01844bf5c49a95a60f4b59e0b989488728edb209252779f83e33ea3eeb53900a5fdeee5d953b231b241ba14a27c77967bdd3fe5acf2d9c6da50c225c79b
diff --git a/dev-java/commons-daemon/commons-daemon-1.0.15.ebuild b/dev-java/commons-daemon/commons-daemon-1.0.15.ebuild
deleted file mode 100644
index 1b467fb6bde5..000000000000
--- a/dev-java/commons-daemon/commons-daemon-1.0.15.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit autotools java-pkg-2 java-ant-2
-
-DESCRIPTION="Tools to allow Java programs to run as UNIX daemons"
-SRC_URI="mirror://apache/commons/daemon/source/${P}-src.tar.gz"
-HOMEPAGE="http://commons.apache.org/daemon/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-IUSE="kernel_linux"
-
-CDEPEND="kernel_linux? ( sys-libs/libcap )"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}-src"
-
-java_prepare() {
- cd "${S}/src/native/unix" || die
- sed -i "s/powerpc/powerpc|powerpc64/g" support/apsupport.m4 || die
- eautoconf
-}
-
-src_configure() {
- java-ant-2_src_configure
- cd "${S}/src/native/unix" || die
- default
-}
-
-src_compile() {
- java-pkg-2_src_compile
- cd "${S}/src/native/unix" || die
- default
-}
-
-src_install() {
- dobin src/native/unix/jsvc
- java-pkg_newjar dist/*.jar
-
- dodoc README RELEASE-NOTES.txt *.html src/native/unix/CHANGES.txt
- use doc && java-pkg_dohtml -r dist/docs/*
- use examples && java-pkg_doexamples src/samples
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/commons-daemon/commons-daemon-1.1.0.ebuild b/dev-java/commons-daemon/commons-daemon-1.1.0.ebuild
deleted file mode 100644
index 6949a3798a39..000000000000
--- a/dev-java/commons-daemon/commons-daemon-1.1.0.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit autotools java-pkg-2 java-ant-2
-
-DESCRIPTION="Tools to allow Java programs to run as UNIX daemons"
-SRC_URI="mirror://apache/commons/daemon/source/${P}-src.tar.gz"
-HOMEPAGE="https://commons.apache.org/daemon/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-IUSE="kernel_linux"
-
-CDEPEND="kernel_linux? ( sys-libs/libcap )"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}-src"
-
-src_prepare() {
- default
- cd "${S}/src/native/unix" || die
- sed -i "s/powerpc/powerpc|powerpc64/g" support/apsupport.m4 || die
- eautoconf
-}
-
-src_configure() {
- java-ant-2_src_configure
- cd "${S}/src/native/unix" || die
- default
-}
-
-src_compile() {
- java-pkg-2_src_compile
- cd "${S}/src/native/unix" || die
- default
-}
-
-src_install() {
- dobin src/native/unix/jsvc
- java-pkg_newjar dist/*.jar
-
- dodoc README RELEASE-NOTES.txt PROPOSAL.html
- use doc && java-pkg_dohtml -r dist/docs/*
- use examples && java-pkg_doexamples src/samples
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/commons-daemon/commons-daemon-1.3.4.ebuild b/dev-java/commons-daemon/commons-daemon-1.3.4.ebuild
new file mode 100644
index 000000000000..fcc845ad0c9a
--- /dev/null
+++ b/dev-java/commons-daemon/commons-daemon-1.3.4.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-daemon:commons-daemon:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs verify-sig
+
+DESCRIPTION="Tools to allow Java programs to run as UNIX daemons"
+HOMEPAGE="https://commons.apache.org/proper/commons-daemon/"
+SRC_URI="mirror://apache/commons/daemon/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/daemon/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 )"
+DEPEND=">=virtual/jdk-1.8:*
+ test? ( dev-java/junit:5[migration-support] )"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,README}.md {HOWTO-RELEASE,NOTICE,RELEASE-NOTES}.txt )
+HTML_DOCS=( PROPOSAL.html )
+PATCHES=( "${FILESDIR}/commons-daemon-1.3.1-Make.patch" )
+
+JAVA_ENCODING="iso-8859-1"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4 junit-5"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ pushd src/native/unix || die
+ ./configure
+ emake AR="$(tc-getAR)"
+ popd
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ dobin src/native/unix/jsvc
+}
diff --git a/dev-java/commons-daemon/files/commons-daemon-1.3.1-Make.patch b/dev-java/commons-daemon/files/commons-daemon-1.3.1-Make.patch
new file mode 100644
index 000000000000..001be15a2815
--- /dev/null
+++ b/dev-java/commons-daemon/files/commons-daemon-1.3.1-Make.patch
@@ -0,0 +1,21 @@
+--- a/src/native/unix/Makedefs.in
++++ b/src/native/unix/Makedefs.in
+@@ -17,6 +17,7 @@
+
+ # @author Pier Fumagalli <mailto:pier.fumagalli@eng.sun.com>
+
++AR = @AR@
+ CC = @CC@
+ CFLAGS = @CFLAGS@
+ CPPFLAGS = @CPPFLAGS@
+--- a/src/native/unix/native/Makefile.in
++++ b/src/native/unix/native/Makefile.in
+@@ -31,7 +31,7 @@ OBJS = arguments.o \
+ all: jsvc libservice.a
+
+ libservice.a: $(OBJS)
+- ar cr libservice.a $(OBJS)
++ ${AR} cr libservice.a $(OBJS)
+ $(RANLIB) libservice.a
+
+ jsvc: jsvc-unix.o libservice.a
diff --git a/dev-java/commons-daemon/metadata.xml b/dev-java/commons-daemon/metadata.xml
index 2444066aa02b..cfdf736c966a 100644
--- a/dev-java/commons-daemon/metadata.xml
+++ b/dev-java/commons-daemon/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <longdescription>
+ Apache Commons Daemon software is a set of utilities and Java support classes for running Java applications as server processes. These are commonly known as 'daemon' processes in Unix terminology (hence the name). On Windows they are called 'services'
+ </longdescription>
+ <upstream>
+ <doc>https://cwiki.apache.org/confluence/display/commons/Daemon</doc>
+ <bugs-to>https://issues.apache.org/jira/browse/DAEMON</bugs-to>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/commons-dbcp/Manifest b/dev-java/commons-dbcp/Manifest
deleted file mode 100644
index 88648c467353..000000000000
--- a/dev-java/commons-dbcp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-dbcp2-2.1-src.tar.gz 580017 BLAKE2B 5bcc79ace49e57199fc99ea52ffbefc3ec428aff51fab3c08679f851e51fdbc02ac539ebea64eb3f6f8e5cbaf910269630096a4efb27f19cef336beb026cf441 SHA512 830fb550cee5f9c79fad830d8b3e56417aa9dfed26093fd366693260f5b4d821baa592e60c7f5997766276049a90eacd5854b8422803825154fedee56d46409d
diff --git a/dev-java/commons-dbcp/commons-dbcp-2.1.ebuild b/dev-java/commons-dbcp/commons-dbcp-2.1.ebuild
deleted file mode 100644
index b7928a7c40e3..000000000000
--- a/dev-java/commons-dbcp/commons-dbcp-2.1.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN}2"
-MY_PV="${PV%_*}"
-MY_P="${MY_PN}-${MY_PV}-src"
-
-DESCRIPTION="Jakarta component providing database connection pooling API"
-HOMEPAGE="http://commons.apache.org/dbcp/"
-SRC_URI="mirror://apache/commons/dbcp/source/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-IUSE=""
-
-CDEPEND=">=dev-java/commons-logging-1.1.1
- dev-java/commons-pool:2
- java-virtuals/transaction-api:0
- dev-java/junit:4"
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? ( dev-java/ant-junit:0 )"
-RDEPEND="
- >=virtual/jdk-1.7
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
-
-EANT_GENTOO_CLASSPATH="commons-logging,commons-pool-2,transaction-api,junit-4"
-EANT_BUILD_TARGET="build-jar"
-
-src_test() {
- local TESTS_TO_DELETE=()
-
- function test_to_del() {
- local TEST_FILE=$1
- TESTS_TO_DELETE+=(${TEST_FILE})
- }
-
- function rm_tests() {
- for TEST_FILE in ${TESTS_TO_DELETE[@]}; do
- ebegin "Removing test file ${TEST_FILE}"
- rm "${TEST_FILE}" || die
- eend $?
- done
- }
-
- # These tests depend on a geronimo,
- # which is not packaged yet for Gentoo unfortunately.
- # See bug #348853.
- test_to_del src/test/java/org/apache/commons/dbcp2/managed/TestBasicManagedDataSource.java
- test_to_del src/test/java/org/apache/commons/dbcp2/managed/TestManagedDataSource.java
- test_to_del src/test/java/org/apache/commons/dbcp2/managed/TestManagedDataSourceInTx.java
- test_to_del src/test/java/org/apache/commons/dbcp2/managed/TestDataSourceXAConnectionFactory.java
- test_to_del src/test/java/org/apache/commons/dbcp2/managed/TestManagedConnection.java
- test_to_del src/test/java/org/apache/commons/dbcp2/managed/TestTransactionContext.java
-
- # This one fails.
- test_to_del src/test/java/org/apache/commons/dbcp2/TestJndi.java
-
- rm_tests
-
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar dist/${MY_PN}-${MY_PV}.jar ${PN}.jar
- dodoc README.txt RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/commons-dbcp/metadata.xml b/dev-java/commons-dbcp/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-dbcp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-dbutils/Manifest b/dev-java/commons-dbutils/Manifest
deleted file mode 100644
index 6df2eacae640..000000000000
--- a/dev-java/commons-dbutils/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-dbutils-1.6-src.tar.gz 90708 BLAKE2B 0793d19808d7baf492a80df50976b74354bb88768af71bfa5961de0fa8b7f7b4896962b4cf57b1ab2de912dbdf60c4374e2d2b9445b86c5e934c347bf840cb80 SHA512 05aa5fb448d949ac4d5d34f1219539e57cfb550fa423af0691cb35002984036b0de62b8f618199bd2f562a441867c5b7138e9204afc36bd6d0fa2c4c5e9cd2c6
diff --git a/dev-java/commons-dbutils/commons-dbutils-1.6.ebuild b/dev-java/commons-dbutils/commons-dbutils-1.6.ebuild
deleted file mode 100644
index d50314e58713..000000000000
--- a/dev-java/commons-dbutils/commons-dbutils-1.6.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A small set of classes designed to make working with JDBC easier"
-HOMEPAGE="http://commons.apache.org/dbutils/"
-SRC_URI="mirror://apache/commons/dbutils/source/${P}-src.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/mockito:0
- dev-java/ant-junit:0
- dev-java/hamcrest-core:1.3
- )"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-EANT_TEST_TARGET="test"
-EANT_TEST_GENTOO_CLASSPATH="
- mockito
- hamcrest-core-1.3
-"
-
-# Uses a bunch of deprecated methods.
-JAVA_RM_FILES=(
- src/test/java/org/apache/commons/dbutils/handlers/ArrayHandlerTest.java
-)
-
-java_prepare() {
- cp "${FILESDIR}"/"${P}-build.xml" build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/commons-dbutils/files/commons-dbutils-1.6-build.xml b/dev-java/commons-dbutils/files/commons-dbutils-1.6-build.xml
deleted file mode 100644
index 725d4eaca036..000000000000
--- a/dev-java/commons-dbutils/files/commons-dbutils-1.6-build.xml
+++ /dev/null
@@ -1,263 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 10/5/15 8:20 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="commons-dbutils-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="commons-dbutils-1.6"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.build.testResourceDir.1" value="."/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"/>
- <pathelement location="${maven.repo.local}/org/mockito/mockito-core/1.9.5/mockito-core-1.9.5.jar"/>
- <pathelement location="${maven.repo.local}/org/objenesis/objenesis/1.0/objenesis-1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.testOutputDir}/META-INF"/>
- <copy todir="${maven.build.testOutputDir}/META-INF">
- <fileset dir="${maven.build.testResourceDir.1}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/TestBean.java"/>
- <exclude name="**/BaseTestCase.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/BaseTestCase.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="iso-8859-1"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- docencoding="iso-8859-1"
- source="1.6"
- linksource="true"
- breakiterator="false">
- <link href="http://docs.oracle.com/javase/6/docs/api/"/>
- <link href="http://docs.oracle.com/javaee/6/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/commons-dbutils/metadata.xml b/dev-java/commons-dbutils/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/commons-dbutils/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-digester/Manifest b/dev-java/commons-digester/Manifest
index 4e92a56379d8..45f9fac5a2c9 100644
--- a/dev-java/commons-digester/Manifest
+++ b/dev-java/commons-digester/Manifest
@@ -1,3 +1,2 @@
-DIST commons-digester-1.8.1-src.tar.gz 303266 BLAKE2B 618885c812a9bf40c080bc5736b8b4be4e18fe4d2f732d2a44d39369ae6cf3beb3af0cf500da3d103d7aa8c18b41b84d06907b6fc90f7f10d30840d6cfc83012 SHA512 0a39069662b4792d4856b79b5cedc2b44cb70303a19045d21c233d45ae4dde9e80662bd242a381e759d7cdb5adaf0b9fa6206bb8397b53348fa9eac12e9a4e96
DIST commons-digester-2.1-src.tar.gz 304060 BLAKE2B 2360f6f8ab77b20ad6b4058e0437aa792bf3886ddec2e09b6db259bc142c070965ce066ef224e92fb91614075631a2af1358ae4b4fc065fe9118e1d2559bb9bb SHA512 6bdb63431ed1e17f5e8ba24951762750a0e59b70c76eabecbf13f5fe6974864825456beed615c8f2c16f9a2f1404f2e56bdbc3ba335656c3661d5f368c708b88
-DIST commons-digester3-3.2-src.tar.gz 324555 BLAKE2B 7b8bdaa70eeafb069e9ecbfe697ab86f5167ae3b9933e8aa306f0080de0ec99d12bd023067678b7b904329178f553fd6d4d98141ab329154a1c27385b33e449f SHA512 6d5ed9a1cc7612244747dcbd5c713349f27d63d1cef39fa368b4e91eaa3b1fe7043ab2fb498a73e8afde8081b8ff26a966e5b87b8b6dc68a3d907e9b25aa7cad
+DIST commons-digester-3.2.tar.gz 324555 BLAKE2B 7b8bdaa70eeafb069e9ecbfe697ab86f5167ae3b9933e8aa306f0080de0ec99d12bd023067678b7b904329178f553fd6d4d98141ab329154a1c27385b33e449f SHA512 6d5ed9a1cc7612244747dcbd5c713349f27d63d1cef39fa368b4e91eaa3b1fe7043ab2fb498a73e8afde8081b8ff26a966e5b87b8b6dc68a3d907e9b25aa7cad
diff --git a/dev-java/commons-digester/commons-digester-1.8.1-r2.ebuild b/dev-java/commons-digester/commons-digester-1.8.1-r2.ebuild
deleted file mode 100644
index 7fef273f04d0..000000000000
--- a/dev-java/commons-digester/commons-digester-1.8.1-r2.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit epatch java-pkg-2 java-ant-2
-
-MY_P="${P}-src"
-DESCRIPTION="Reads XML configuration files to provide initialization of various Java objects"
-HOMEPAGE="http://commons.apache.org/digester/"
-SRC_URI="mirror://apache/commons/digester/source/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-CDEPEND="dev-java/commons-beanutils:1.7
- >=dev-java/commons-collections-2.1:0
- >=dev-java/commons-logging-1.0.2:0"
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/junit:0
- dev-java/ant-junit:0
- )
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}-src"
-
-# don't rewrite build.xml in examples
-JAVA_PKG_BSFIX_ALL="no"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-beanutils-1.7,commons-collections,commons-logging"
-
-java_prepare() {
- epatch "${FILESDIR}/${PV}-build.xml-jar-target.patch"
-}
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar "dist/${PN}.jar"
-
- dodoc RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/org
- use examples && java-pkg_doexamples src/examples
-}
diff --git a/dev-java/commons-digester/commons-digester-2.1-r1.ebuild b/dev-java/commons-digester/commons-digester-2.1-r1.ebuild
deleted file mode 100644
index 0533f4f8b685..000000000000
--- a/dev-java/commons-digester/commons-digester-2.1-r1.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-MAVEN_ID="commons-digester:commons-digester:2.1"
-
-inherit java-pkg-2 java-ant-2
-
-MY_P="${P}-src"
-
-DESCRIPTION="Reads XML configuration files to provide initialization of various Java objects"
-HOMEPAGE="http://commons.apache.org/digester/"
-SRC_URI="mirror://apache/commons/digester/source/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2.1"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="dev-java/commons-beanutils:1.7
- >=dev-java/commons-collections-2.1:0
- >=dev-java/commons-logging-1.0.2:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- test? (
- dev-java/junit:0
- dev-java/ant-junit:0
- )"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-beanutils-1.7,commons-collections,commons-logging"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${PN}.jar
-
- dodoc RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/org
- use examples && java-pkg_doexamples src/examples
-}
diff --git a/dev-java/commons-digester/commons-digester-2.1-r2.ebuild b/dev-java/commons-digester/commons-digester-2.1-r2.ebuild
new file mode 100644
index 000000000000..1d6571243ef9
--- /dev/null
+++ b/dev-java/commons-digester/commons-digester-2.1-r2.ebuild
@@ -0,0 +1,68 @@
+# 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/digester/source/commons-digester-2.1-src.tar.gz --slot 2.1 --keywords "~amd64 ~ppc64 ~x86" --ebuild commons-digester-2.1-r2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-digester:commons-digester:2.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Reads XML configuration files to provide initialization of various Java objects"
+HOMEPAGE="https://commons.apache.org/digester/"
+SRC_URI="mirror://apache/commons/digester/source/${P}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2.1"
+KEYWORDS="amd64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# commons-beanutils:commons-beanutils:1.8.3 -> >=dev-java/commons-beanutils-1.9.4:1.7
+# commons-logging:commons-logging:1.1.1 -> >=dev-java/commons-logging-1.2:0
+
+CP_DEPEND="
+ >=dev-java/commons-beanutils-1.9.4:1.7
+ >=dev-java/commons-logging-1.2:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( {LICENSE,NOTICE,RELEASE-NOTES}.txt )
+
+S="${WORKDIR}/commons-digester-${PV}-src"
+
+JAVA_ENCODING="iso-8859-1"
+
+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_test() {
+ pushd src/test/java || die
+ # Exclusions according to 212,215 pom.xml
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ ! -name "Abstract*.java" ! -name "TestBean.java" \
+ ! -name "TestRule.java" ! -name "TestRuleSet.java" \
+ -name "*TestCase.java" -o -name "*Test.java")
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ popd
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/commons-digester/commons-digester-3.2-r2.ebuild b/dev-java/commons-digester/commons-digester-3.2-r2.ebuild
deleted file mode 100644
index f30609298a34..000000000000
--- a/dev-java/commons-digester/commons-digester-3.2-r2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_P="${PN}3-${PV}-src"
-
-DESCRIPTION="Reads XML configuration files to provide initialization of various Java objects"
-HOMEPAGE="http://commons.apache.org/digester/"
-SRC_URI="mirror://apache/commons/digester/source/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3.2"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="dev-java/cglib:3
- dev-java/commons-beanutils:1.7
- >=dev-java/commons-logging-1.0.2:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- test? (
- dev-java/junit:4
- dev-java/ant-junit:0
- )"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-beanutils-1.7,commons-logging,cglib-3"
-
-java_prepare() {
- cp "${FILESDIR}"/${PN}-2.1-build.xml build.xml || die
-
- # Doesn't work.
- rm -v src/test/java/org/apache/commons/digester3/Digester153TestCase.java
-}
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${PN}.jar
-
- dodoc RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/org
- use examples && java-pkg_doexamples src/examples
-}
diff --git a/dev-java/commons-digester/commons-digester-3.2-r3.ebuild b/dev-java/commons-digester/commons-digester-3.2-r3.ebuild
new file mode 100644
index 000000000000..14a7ba03b87c
--- /dev/null
+++ b/dev-java/commons-digester/commons-digester-3.2-r3.ebuild
@@ -0,0 +1,77 @@
+# 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/digester/source/commons-digester3-3.2-src.tar.gz --slot 3.2 --keywords "~amd64 ~ppc64 ~x86" --ebuild commons-digester3.2-r3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.commons:commons-digester3:3.2"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Reads XML configuration files to provide initialization of various Java objects"
+HOMEPAGE="https://commons.apache.org/digester/"
+SRC_URI="mirror://apache/commons/digester/source/${PN}3-${PV}-src.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="3.2"
+KEYWORDS="amd64 ppc64 x86"
+
+# 1) atomWithNamespaceParse(org.apache.commons.digester3.xmlrules.SetNamespaceURITestCase)
+# java.net.UnknownHostException: commons.apache.org
+PROPERTIES="test_network"
+RESTRICT="test"
+
+# Common dependencies
+# POM: pom.xml
+# cglib:cglib:2.2.2 -> >=dev-java/cglib-3.3.0:3
+# commons-beanutils:commons-beanutils:1.8.3 -> >=dev-java/commons-beanutils-1.9.4:1.7
+# commons-logging:commons-logging:1.1.1 -> >=dev-java/commons-logging-1.2:0
+
+CP_DEPEND="
+ >=dev-java/cglib-3.3.0:3
+ >=dev-java/commons-beanutils-1.9.4:1.7
+ >=dev-java/commons-logging-1.2:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( {LICENSE,NOTICE,RELEASE-NOTES}.txt )
+
+S="${WORKDIR}/commons-digester3-${PV}-src"
+
+JAVA_ENCODING="iso-8859-1"
+
+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_test() {
+ pushd src/test/java || die
+ # Exclusions according to 226,229 pom.xml
+ local JAVA_TEST_RUN_ONLY=$(find * -name "*TestCase.java" ! -name "Abstract*.java" ! -name "TestBean.java" ! -name "TestRule.java" ! -name "TestRuleSet.java")
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ popd
+
+ # Testing with java-17 throws too many test failures
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if [[ "${vm_version}" != "17" ]] ; then
+ java-pkg-simple_src_test
+ fi
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/commons-digester/files/1.8.1-build.xml-jar-target.patch b/dev-java/commons-digester/files/1.8.1-build.xml-jar-target.patch
deleted file mode 100644
index ec523a011458..000000000000
--- a/dev-java/commons-digester/files/1.8.1-build.xml-jar-target.patch
+++ /dev/null
@@ -1,27 +0,0 @@
---- build.xml.orig 2009-02-15 21:06:33.000000000 +0100
-+++ build.xml 2009-02-15 21:07:25.000000000 +0100
-@@ -117,6 +117,7 @@
- <pathelement location="${jaxp.jaxp.jar}"/>
- <pathelement location="${jaxp.parser.jar}"/>
- <pathelement location="${commons-beanutils.jar}"/>
-+ <pathelement location="${commons-collections.jar}" />
- <pathelement location="${commons-logging.jar}"/>
- <pathelement location="${junit.jar}"/>
- </path>
-@@ -140,6 +141,7 @@
- <pathelement location="${junit.jar}"/>
- <pathelement location="${jaxp.jaxp.jar}"/>
- <pathelement location="${jaxp.parser.jar}"/>
-+ <pathelement location="${commons-collections.jar}" />
- <pathelement location="${commons-beanutils.jar}"/>
- <pathelement location="${commons-logging.jar}"/>
- </path>
-@@ -256,7 +258,7 @@
- </javadoc>
- </target>
-
-- <target name="jar" depends="compile, test"
-+ <target name="jar" depends="compile"
- description="Create commons-digester.jar">
- <mkdir dir="${dist.home}"/>
- <jar jarfile="${dist.home}/commons-${component.name}.jar"
diff --git a/dev-java/commons-digester/files/commons-digester-2.1-build.xml b/dev-java/commons-digester/files/commons-digester-2.1-build.xml
deleted file mode 100644
index 505df88a8abc..000000000000
--- a/dev-java/commons-digester/files/commons-digester-2.1-build.xml
+++ /dev/null
@@ -1,294 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 8/12/13 6:51 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="commons-digester-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="commons-digester"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="."/>
- <property name="maven.build.resourceDir.1" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.0}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="**/*.dtd"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}">
- <include name="**/*.xml"/>
- <include name="**/*.xsd"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/TestBean.java"/>
- <exclude name="**/TestRule.java"/>
- <exclude name="**/TestRuleSet.java"/>
- <exclude name="**/Test*$*.java"/>
- <exclude name="**/*Abstract*.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/TestBean.java"/>
- <exclude name="**/TestRule.java"/>
- <exclude name="**/TestRuleSet.java"/>
- <exclude name="**/Test*$*.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="iso-8859-1"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- source="1.5"
- linksource="true"
- breakiterator="false">
- <link href="http://java.sun.com/javase/6/docs/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/commons-beanutils/commons-beanutils/1.8.3"/>
- <get src="http://repository.apache.org/snapshots/commons-beanutils/commons-beanutils/1.8.3/commons-beanutils-1.8.3.jar"
- dest="${maven.repo.local}/commons-beanutils/commons-beanutils/1.8.3/commons-beanutils-1.8.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/commons-beanutils/commons-beanutils/1.8.3/commons-beanutils-1.8.3.jar"
- dest="${maven.repo.local}/commons-beanutils/commons-beanutils/1.8.3/commons-beanutils-1.8.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/commons-logging/commons-logging/1.1.1"/>
- <get src="http://repository.apache.org/snapshots/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar"
- dest="${maven.repo.local}/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar"
- dest="${maven.repo.local}/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.8.1"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.8.1/junit-4.8.1.jar"
- dest="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.8.1/junit-4.8.1.jar"
- dest="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/commons-digester/metadata.xml b/dev-java/commons-digester/metadata.xml
index 2444066aa02b..080f8a0f0318 100644
--- a/dev-java/commons-digester/metadata.xml
+++ b/dev-java/commons-digester/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <longdescription>
+ The Apache Commons Digester package lets you configure an XML to Java object mapping module which triggers certain actions called rules whenever a particular pattern of nested XML elements is recognized.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/commons-discovery/Manifest b/dev-java/commons-discovery/Manifest
deleted file mode 100644
index a93aa5596a77..000000000000
--- a/dev-java/commons-discovery/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-discovery-0.5.jar 81725 BLAKE2B c7324c698199d28d05b4ef24b43b00b572c22a028337ac2d29386b4763ab3de22b194761ea282104704156a3641e79dd1414e07550c142b5343d89e9faab7166 SHA512 348e42df5e4e34fdaa49d638018e654119a9d4e2aad967ed2a6f2706e89ffb2ea5daa9ac86747fa1f6d7b245759fac1a80090c571a057be1cdf8cea3514936f3
diff --git a/dev-java/commons-discovery/commons-discovery-0.5.ebuild b/dev-java/commons-discovery/commons-discovery-0.5.ebuild
deleted file mode 100644
index 50bdebf25fc8..000000000000
--- a/dev-java/commons-discovery/commons-discovery-0.5.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Commons Discovery: Service Discovery component"
-HOMEPAGE="http://commons.apache.org/discovery/"
-SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="dev-java/commons-logging:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_GENTOO_CLASSPATH="commons-logging"
diff --git a/dev-java/commons-discovery/metadata.xml b/dev-java/commons-discovery/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-discovery/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-email/Manifest b/dev-java/commons-email/Manifest
deleted file mode 100644
index a6b39e69746f..000000000000
--- a/dev-java/commons-email/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST commons-email-1.4-src.tar.gz 288876 BLAKE2B 17de5c947e68db988b5999ab95f122570a9f52f0557bbdb9a483676576a81d6cfb150058a0ed530bc8dde8732313839e320f4bd7ecfc088b483947dde5760441 SHA512 2a62256e284b9f4f428cf8544e46e81aa521476c41243df1c4f8a9e1bd4bcea3c768346aaab862b8c2a8b271c6012a38164c6d62867d2849a3ee0c2820fe422c
-DIST commons-email-1.5.jar 62954 BLAKE2B fe3970fcdb55f4b6859ff30b4da4f71e96ad8d47e76c280d6f0eb0040d18a39bcf1461eee48fc71733b11c24006328c45c5a7252261410bd4717186116f95732 SHA512 db88b00724a0ea5b103758beeae3a9d61d455edc4a2bbe39f7906565a73dff967b91fd73b64668e5d4ec7993faf23bd69096727b998544c73a7bfb08f9c45988
diff --git a/dev-java/commons-email/commons-email-1.4.ebuild b/dev-java/commons-email/commons-email-1.4.ebuild
deleted file mode 100644
index d07ecdea6210..000000000000
--- a/dev-java/commons-email/commons-email-1.4.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="source doc test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Commons Email aims to provide an API for sending email."
-HOMEPAGE="http://commons.apache.org/email/"
-SRC_URI="mirror://apache/commons/email/source/${P}-src.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-# Requires a slew of packages we don't ship yet.
-RESTRICT="test"
-
-CDEPEND="dev-java/oracle-javamail:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-EANT_GENTOO_CLASSPATH="oracle-javamail"
-EANT_BUILD_TARGET="package"
-
-java_prepare() {
- cp "${FILESDIR}/${P}-build.xml" build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "target/${P}.jar" "${PN}.jar"
- dodoc {NOTICE,README,RELEASE-NOTES}.txt
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/commons-email/commons-email-1.5.ebuild b/dev-java/commons-email/commons-email-1.5.ebuild
deleted file mode 100644
index 4f247bbbe5b3..000000000000
--- a/dev-java/commons-email/commons-email-1.5.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Commons Email aims to provide an API for sending email"
-HOMEPAGE="https://commons.apache.org/email"
-SRC_URI="https://repo1.maven.org/maven2/org/apache/commons/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-CDEPEND="dev-java/oracle-javamail:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="oracle-javamail"
diff --git a/dev-java/commons-email/files/commons-email-1.4-build.xml b/dev-java/commons-email/files/commons-email-1.4-build.xml
deleted file mode 100644
index 9fb5f0e373bf..000000000000
--- a/dev-java/commons-email/files/commons-email-1.4-build.xml
+++ /dev/null
@@ -1,261 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 9/29/15 9:53 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="commons-email-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="commons-email-1.4"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.build.testResourceDir.1" value="."/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.testOutputDir}/META-INF"/>
- <copy todir="${maven.build.testOutputDir}/META-INF">
- <fileset dir="${maven.build.testResourceDir.1}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="org/apache/commons/mail/mocks/*"/>
- <exclude name="org/apache/commons/mail/settings/*"/>
- <exclude name="**/Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="org/apache/commons/mail/mocks/*"/>
- <exclude name="org/apache/commons/mail/settings/*"/>
- <exclude name="**/Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="UTF-8"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- docencoding="UTF-8"
- source="1.6"
- linksource="true"
- breakiterator="false">
- <link href="http://docs.oracle.com/javase/7/docs/api/"/>
- <link href="http://docs.oracle.com/javaee/6/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/commons-email/metadata.xml b/dev-java/commons-email/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/commons-email/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-graph/Manifest b/dev-java/commons-graph/Manifest
deleted file mode 100644
index ca7824dcc5fa..000000000000
--- a/dev-java/commons-graph/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-graph-0.1.tar.gz 96009 BLAKE2B 0914bebc5e4748a619396a5abc78c78edfce95d5c475d988185ea9d1735d57145a27b9139e91628e06c28c9adbb174945f1db9f21a605cb4dea305aae2064eaa SHA512 7214fd60eb348a7feee9c194f562e5a7cf1f211ba589d2a85eaae52ed3ced7089842405dfbd99413b1f06f87ea1a19d244989daa1e0f6fb857fa752647d52b16
diff --git a/dev-java/commons-graph/commons-graph-0.1.ebuild b/dev-java/commons-graph/commons-graph-0.1.ebuild
deleted file mode 100644
index d62104317f83..000000000000
--- a/dev-java/commons-graph/commons-graph-0.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A toolkit for managing graphs and graph based data structures"
-HOMEPAGE="https://commons.apache.org/sandbox/commons-graph/"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- )"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_TEST_TARGET="test"
-
-# Dubious tests.
-JAVA_RM_FILES=(
- src/test/java/org/apache/commons/graph/coloring/GraphColoringTestCase.java
- src/test/java/org/apache/commons/graph/spanning/KruskalTestCase.java
- src/test/java/org/apache/commons/graph/scc/TarjanTestCase.java
-)
-
-java_prepare() {
- cp "${FILESDIR}"/"${P}-build.xml" build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/commons-graph/files/commons-graph-0.1-build.xml b/dev-java/commons-graph/files/commons-graph-0.1-build.xml
deleted file mode 100644
index 5c3a9c19cdd4..000000000000
--- a/dev-java/commons-graph/files/commons-graph-0.1-build.xml
+++ /dev/null
@@ -1,258 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 10/6/15 9:24 AM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="commons-graph-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="commons-graph-0.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.build.testResourceDir.1" value="."/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.10/junit-4.10.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"/>
- <pathelement location="${maven.repo.local}/com/carrotsearch/junit-benchmarks/0.3.0/junit-benchmarks-0.3.0-jdk15.jar"/>
- <pathelement location="${maven.repo.local}/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.jar"/>
- <pathelement location="${maven.repo.local}/com/h2database/h2/1.3.158/h2-1.3.158.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.0}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="iso-8859-1"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <mkdir dir="${maven.build.testOutputDir}/META-INF"/>
- <copy todir="${maven.build.testOutputDir}/META-INF">
- <fileset dir="${maven.build.testResourceDir.1}">
- <include name="NOTICE.txt"/>
- <include name="LICENSE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- <exclude name="**/TestRunner.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="iso-8859-1"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- source="1.6"
- linksource="true"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/6/docs/api/"/>
- <link href="http://download.oracle.com/javaee/6/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/commons-graph/metadata.xml b/dev-java/commons-graph/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-graph/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/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 5921250be5ee..000000000000
--- a/dev-java/commons-httpclient/commons-httpclient-3.1-r2.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2021 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/"
-SRC_URI="mirror://apache/httpcomponents/${PN}/source/${P}-src.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 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-httpclient/metadata.xml b/dev-java/commons-httpclient/metadata.xml
index fdd7102a2fc7..d3aac7ee1e54 100644
--- a/dev-java/commons-httpclient/metadata.xml
+++ b/dev-java/commons-httpclient/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/commons-imaging/Manifest b/dev-java/commons-imaging/Manifest
index 13bebfeb5b85..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
index f8c2ba3f2ef3..6017ef9c71e8 100644
--- a/dev-java/commons-imaging/commons-imaging-0.97.ebuild
+++ b/dev-java/commons-imaging/commons-imaging-0.97.ebuild
@@ -1,45 +1,41 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-JAVA_PKG_IUSE="doc source"
+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="mirror://apache/commons/sanselan/source/apache-sanselan-incubating-${PV}-src.tar.gz"
+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"
-IUSE="test"
RESTRICT="test" # 5/48 failures, dunno why :(
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6
+DEPEND=">=virtual/jdk-1.8:*
test? ( dev-java/junit:4 )"
+RDEPEND=">=virtual/jre-1.8:*"
-S="${WORKDIR}/sanselan-${PV}-incubator"
JAVA_ENCODING="ISO-8859-1"
JAVA_SRC_DIR="src/main/java"
-java_prepare() {
+src_prepare() {
+ java-pkg-2_src_prepare
# Tsk, Windows developers…
find src/test/java -name "*.java" -exec sed -i 's:\\:/:g' {} + || die
}
-src_install() {
- java-pkg-simple_src_install
- dodoc README.txt RELEASE_NOTES
-}
-
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)
+ 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//\//.}"
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/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-imaging/metadata.xml b/dev-java/commons-imaging/metadata.xml
index 8c92e7356d5e..89282274da13 100644
--- a/dev-java/commons-imaging/metadata.xml
+++ b/dev-java/commons-imaging/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/commons-io/Manifest b/dev-java/commons-io/Manifest
index e3fecd8f067d..10661d3ab0c6 100644
--- a/dev-java/commons-io/Manifest
+++ b/dev-java/commons-io/Manifest
@@ -1 +1,2 @@
-DIST commons-io-2.8.0-sources.tar.gz 445833 BLAKE2B 4fc6f9b66fa88adfc110742bd3eab55cbe165552f71d665f70fd54d4b0b79c4e76b45fccdb78c6ef64e476f54efc8b51adc9b2d7e880c71dbdb6bc5883d2fe55 SHA512 6189c72eff8661bfb8cfed95dd7ee32578b24b50f6586d4628a4dbfd3618853a72eb73da311729e55742ace47b2d38d3ce130ab87b684494d8ce33d1ccf14a2d
+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.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/commons-io-2.8.0.ebuild b/dev-java/commons-io/commons-io-2.8.0.ebuild
deleted file mode 100644
index 730f099a18c1..000000000000
--- a/dev-java/commons-io/commons-io-2.8.0.ebuild
+++ /dev/null
@@ -1,33 +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 pom.xml --download-uri https://ftp.fau.de/apache//commons/io/source/commons-io-2.8.0-src.tar.gz --slot 1 --keywords "~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris" --ebuild commons-io-2.8.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="commons-io:commons-io:2.8.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Utility classes, stream implementations, file filters, and endian classes"
-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 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-
-DEPEND="
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${P}-src"
-
-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 2444066aa02b..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 "http://www.gentoo.org/dtd/metadata.dtd">
+<!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-jexl/Manifest b/dev-java/commons-jexl/Manifest
deleted file mode 100644
index 15a1b1ffd3e4..000000000000
--- a/dev-java/commons-jexl/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST commons-jexl-1.1-src.tar.gz 128030 BLAKE2B 9694077640cf54e9621a2860fbfa5eae8c7135447e39b64147180db1b859f68b2fe610f161ceca71a432fe2216ebac2386e00ea3ba7e27bd687736a5aa39e95c SHA512 d403e945060385c4546cf173af9ec4a795c074a9b56aacdf16f301b875c9f78b47a91fdfb84059805a082466d8a4a371bcb6ef6336e6ba806272ad8e2cce9e13
-DIST commons-jexl-2.1.1-src.tar.gz 208559 BLAKE2B 031095ab8549f295e99048873ebc5eee2ebce2e79bdef28afec4ea3adef051cc397ca8740b3d9c2a2c02c51555b3ab3b7c79c0222368fdf6c652e4ed2369d7e4 SHA512 259c0956bb10f102cb3d860b1c99d3d2b2bc5d705e4160f743fa774640ed8c1ee6f3aad518a8a69e8f94a164b21cb2ae26e47cd3e81e92a086a3c3f753befacb
diff --git a/dev-java/commons-jexl/commons-jexl-1.1-r1.ebuild b/dev-java/commons-jexl/commons-jexl-1.1-r1.ebuild
deleted file mode 100644
index 25ef0baa46ac..000000000000
--- a/dev-java/commons-jexl/commons-jexl-1.1-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Expression language engine, can be embedded in applications and frameworks"
-HOMEPAGE="http://commons.apache.org/jexl/"
-SRC_URI="mirror://apache/jakarta/commons/jexl/source/${P}-src.tar.gz"
-
-CDEPEND="dev-java/commons-logging
- dev-java/junit:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- test? ( dev-java/ant-junit )
- ${CDEPEND}"
-
-LICENSE="Apache-2.0"
-SLOT="1.0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-S="${WORKDIR}/${P}-src"
-
-java_prepare() {
- # https://issues.apache.org/jira/browse/JEXL-31
- epatch "${FILESDIR}/${PV}-test-target.patch"
-
- mkdir -p target/lib && cd target/lib
- java-pkg_jar-from junit junit.jar
- java-pkg_jar-from commons-logging
-}
-
-src_test() {
- ANT_TASKS="ant-junit" eant test
-}
-
-src_install() {
- java-pkg_newjar target/${P}*.jar
- dodoc RELEASE-NOTES.txt
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc "${S}"/src/java/*
-}
diff --git a/dev-java/commons-jexl/commons-jexl-2.1.1.ebuild b/dev-java/commons-jexl/commons-jexl-2.1.1.ebuild
deleted file mode 100644
index 56f6b9d70a55..000000000000
--- a/dev-java/commons-jexl/commons-jexl-2.1.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Expression language engine, can be embedded in applications and frameworks"
-HOMEPAGE="http://commons.apache.org/jexl/"
-SRC_URI="mirror://apache/commons/jexl/source/${P}-src.tar.gz"
-
-CDEPEND="dev-java/commons-logging:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- >=dev-java/javacc-5
- test? ( dev-java/ant-junit:0 )
- ${CDEPEND}"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="amd64 x86"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-logging"
-
-# Dubious tests.
-JAVA_RM_FILES=(
- src/test/java/org/apache/commons/jexl2/ArithmeticTest.java
-)
-
-java_prepare() {
- cp "${FILESDIR}"/${PV}-build.xml build.xml || die
-
- # these two calls is what the "jjtree-javacc" goal in the pom.xml does
- jjtree -OUTPUT_DIRECTORY="${S}/src/main/java/org/apache/commons/jexl2/parser/" \
- src/main/java/org/apache/commons/jexl2/parser/Parser.jjt \
- || die "Code generation via jjtree failed"
- javacc -OUTPUT_DIRECTORY="${S}/src/main/java/org/apache/commons/jexl2/parser/" \
- src/main/java/org/apache/commons/jexl2/parser/Parser.jj \
- || die "Parser.java code generation via javacc failed"
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
- dodoc RELEASE-NOTES.txt NOTICE.txt
- use doc && java-pkg_dojavadoc "${S}"/target/site/apidocs
- use source && java-pkg_dosrc "${S}"/src/main/java/*
-}
diff --git a/dev-java/commons-jexl/files/1.1-test-target.patch b/dev-java/commons-jexl/files/1.1-test-target.patch
deleted file mode 100644
index 54a3d3e9bce0..000000000000
--- a/dev-java/commons-jexl/files/1.1-test-target.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur commons-jexl-1.1-src.old/build.xml commons-jexl-1.1-src/build.xml
---- commons-jexl-1.1-src.old/build.xml 2006-12-26 19:39:18.000000000 +0200
-+++ commons-jexl-1.1-src/build.xml 2006-12-26 19:39:34.000000000 +0200
-@@ -62,7 +62,7 @@
- </fileset>
- </copy>
- </target>
-- <target name="jar" description="o Create the jar" depends="compile,test">
-+ <target name="jar" description="o Create the jar" depends="compile">
- <jar jarfile="${defaulttargetdir}/${final.name}.jar" excludes="**/package.html" basedir="${classesdir}" manifest="src/conf/MANIFEST.MF">
- </jar>
- </target>
diff --git a/dev-java/commons-jexl/files/2.1.1-build.xml b/dev-java/commons-jexl/files/2.1.1-build.xml
deleted file mode 100644
index d0bf54ef3571..000000000000
--- a/dev-java/commons-jexl/files/2.1.1-build.xml
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="commons-jexl-from-maven" default="package" basedir=".">
- <property file="${user.home}/.m2/maven.properties" />
- <property file="maven-build.properties" />
-
- <property name="maven.build.finalName" value="commons-jexl" />
- <property name="maven.build.dir" value="target" />
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes" />
- <property name="maven.build.srcDir.0" value="src/main/java" />
- <property name="maven.build.resourceDir.0" value="src/main/resources" />
- <property name="maven.build.resourceDir.1" value="." />
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes" />
- <property name="maven.build.testDir.0" value="src/test/java" />
- <property name="maven.build.testResourceDir.0" value="src/test/resources" />
- <property name="maven.build.testResourceDir.1" value="." />
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports" />
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site" />
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository" />
- <property name="maven.settings.offline" value="false" />
- <property name="maven.settings.interactiveMode" value="true" />
-
- <path id="build.classpath"/>
- <path id="build.test.classpath" />
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}" />
- </target>
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}" />
- <javac destdir="${maven.build.outputDir}" encoding="iso-8859-1" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.5" verbose="false" fork="false" source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}" />
- </src>
- <classpath refid="build.classpath" />
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}" />
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF" />
- </target>
-
- <target name="compile-tests" depends="compile" description="Compile the test code" unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}" />
- <javac destdir="${maven.build.testOutputDir}" encoding="iso-8859-1" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.5" verbose="false" fork="false" source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}" />
- </src>
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- </classpath>
- </javac>
- <mkdir dir="${maven.build.testOutputDir}/META-INF" />
- </target>
-
- <target name="test" depends="compile-tests, junit-missing" unless="junit.skipped" description="Run the test cases">
- <mkdir dir="${maven.test.reports}" />
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="." />
- <formatter type="xml" />
- <formatter type="plain" usefile="false" />
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- <pathelement location="${maven.build.testOutputDir}" />
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/*Test.java" />
- <exclude name="**/*Abstract*Test.java" />
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java" />
- <exclude name="**/*Abstract*Test.java" />
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" />
- </target>
-
- <target name="test-junit-status" depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}" />
- <isfalse value="${maven.test.skip}" />
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}" />
- <istrue value="${maven.test.skip}" />
- </or>
- </condition>
- </target>
-
- <target name="junit-missing" depends="test-junit-status" if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}" packagenames="*" destdir="${maven.reporting.outputDirectory}/apidocs" access="protected" old="false" verbose="false" encoding="iso-8859-1" version="true" use="true" author="true" splitindex="false" nodeprecated="false" nodeprecatedlist="false" notree="false" noindex="false" nohelp="false" nonavbar="false" serialwarn="false" charset="ISO-8859-1" source="1.5" linksource="true" breakiterator="false">
- </javadoc>
- </target>
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar" compress="true" index="false" basedir="${maven.build.outputDir}" excludes="**/package.html">
- </jar>
- </target>
-
- <target name="jar" depends="package" description="Builds the jar for the application" />
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true" />
- </condition>
- </target>
-</project>
diff --git a/dev-java/commons-jexl/metadata.xml b/dev-java/commons-jexl/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-jexl/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-junit4/Manifest b/dev-java/commons-junit4/Manifest
new file mode 100644
index 000000000000..081aa48e41a9
--- /dev/null
+++ b/dev-java/commons-junit4/Manifest
@@ -0,0 +1 @@
+DIST unkrig-commons1.2.17.tar.gz 2187066 BLAKE2B 29addd6ba41edf475ff878c15a40ee328682fc7d458fae4f745e20cd00afbaa99a8f202e0d285a81a45e47177944d8dcce2e30d6f3c74d2374b46f34c5813dff SHA512 dd8652bcffd62aa847e7c36358de8eecca66f731f06da504cbdcb29f55608e384db2e0d9a7847773423d82d7ae9f3bf75e07142c95ae0ec758f15e5a3020db99
diff --git a/dev-java/commons-junit4/commons-junit4-1.2.17.ebuild b/dev-java/commons-junit4/commons-junit4-1.2.17.ebuild
new file mode 100644
index 000000000000..d12acbb23c14
--- /dev/null
+++ b/dev-java/commons-junit4/commons-junit4-1.2.17.ebuild
@@ -0,0 +1,39 @@
+# 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="de.unkrig.commons:commons-junit4:1.2.17"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Assertions etc. for those who write tests with JUNIT 4"
+HOMEPAGE="https://unkrig.de/w/Commons.unkrig.de"
+SRC_URI="https://github.com/aunkrig/commons/archive/V${PV}.tar.gz -> unkrig-commons${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ ~dev-java/commons-nullanalysis-${PV}:0
+ dev-java/junit:4
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/commons-${PV}/commons-junit4"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/commons-junit4/metadata.xml b/dev-java/commons-junit4/metadata.xml
new file mode 100644
index 000000000000..4fc465e4c3e9
--- /dev/null
+++ b/dev-java/commons-junit4/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">aunkrig/commons</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/commons-jxpath/Manifest b/dev-java/commons-jxpath/Manifest
deleted file mode 100644
index ec388a631cd1..000000000000
--- a/dev-java/commons-jxpath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-jxpath-1.3.tar.gz 285339 BLAKE2B c0127ff90c51b7ba69c12072689cc7ca5b969fa29e4793839bef3200b0dc3fbb529c89e21877daa4def4386f94298e43054828d4b4b05be3671e38d9f728d3d0 SHA512 a0ad0b90c9aa4c732c47c8f38f036990438f526295b782fbdc00fd67e4c0e92643c7850429eb5263f9d322aff7cb7000b8ff2bffcdcfa88fa3ba5354dce7e152
diff --git a/dev-java/commons-jxpath/commons-jxpath-1.3-r3.ebuild b/dev-java/commons-jxpath/commons-jxpath-1.3-r3.ebuild
deleted file mode 100644
index 270da007b138..000000000000
--- a/dev-java/commons-jxpath/commons-jxpath-1.3-r3.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Applies XPath expressions to graphs of objects of all kinds"
-HOMEPAGE="http://commons.apache.org/jxpath/"
-SRC_URI="mirror://apache/commons/jxpath/source/${P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-S="${WORKDIR}/${P}-src"
-
-CDEPEND="
- dev-java/jdom:0
- java-virtuals/servlet-api:3.0
- dev-java/commons-beanutils:1.7"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- dev-java/commons-logging:0
- dev-java/commons-collections:0
- )
- >=virtual/jdk-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="jdom,servlet-api-3.0,commons-beanutils-1.7"
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},commons-logging,commons-collections,ant-junit"
-ANT_TASKS="ant-junit"
-EANT_TEST_TARGET="test"
-
-# This one needs mockrunner. See #259027.
-JAVA_RM_FILES=(
- src/test/org/apache/commons/jxpath/servlet/JXPathServletContextTest.java
-)
-
-java_prepare() {
- # Don't automatically run tests.
- sed 's/depends="compile,test"/depends="compile"/' -i build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/commons-jxpath/commons-jxpath-1.3-r4.ebuild b/dev-java/commons-jxpath/commons-jxpath-1.3-r4.ebuild
deleted file mode 100644
index bc77ab2d8ed2..000000000000
--- a/dev-java/commons-jxpath/commons-jxpath-1.3-r4.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Applies XPath expressions to graphs of objects of all kinds"
-HOMEPAGE="https://commons.apache.org/jxpath/"
-SRC_URI="mirror://apache/commons/jxpath/source/${P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-S="${WORKDIR}/${P}-src"
-
-CDEPEND="
- dev-java/jdom:0
- java-virtuals/servlet-api:3.0
- dev-java/commons-beanutils:1.7"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- dev-java/commons-logging:0
- dev-java/commons-collections:0
- )
- >=virtual/jdk-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="jdom,servlet-api-3.0,commons-beanutils-1.7"
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},commons-logging,commons-collections,ant-junit"
-ANT_TASKS="ant-junit"
-EANT_TEST_TARGET="test"
-
-src_prepare() {
- default
-
- # Don't automatically run tests.
- sed 's/depends="compile,test"/depends="compile"/' -i build.xml || die
-
- # This one needs mockrunner. See #259027.
- rm -v src/test/org/apache/commons/jxpath/servlet/JXPathServletContextTest.java || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/commons-jxpath/metadata.xml b/dev-java/commons-jxpath/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-jxpath/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-lang/Manifest b/dev-java/commons-lang/Manifest
index 18aabccebdc9..32bc9f65cb7e 100644
--- a/dev-java/commons-lang/Manifest
+++ b/dev-java/commons-lang/Manifest
@@ -1,4 +1,2 @@
-DIST commons-lang-2.0-src.tar.gz 440989 BLAKE2B d71d73504c740138bdb9c1e190e0f4e846fb08a35d8ee2430ac2e24b0094e83cfc8cab9eaa44230c0d7fd26ec768bf7b448f04e123467acc20d49af6efe3008b SHA512 aecbbdd8eb2712981dcd8615bac2ec69e3ea7ae137407287d2a9b3eeaddb48e5367bc9c5cb8d232429ac6091548dac8af67e0593366365c04fcfe39984c3e549
-DIST commons-lang-2.6-src.tar.gz 564032 BLAKE2B 9d72b0426f2146eaa8498a6601edf80dbf45a16ef5ee14cf4ed87130e6d3732d5c713f25f44c10435baa1357f61a271acb88483915968aaf645d1ceaa318c601 SHA512 4a30ed153f93fe6616a28974721bdf005d064203ef8a3dd375d6c1176647c0cdbd29cfde2a580e2c8d26bfa4655be6be7025b8ccae94086dcd816676c5cf8e87
-DIST commons-lang-3.12.0-sources.tar.gz 1072858 BLAKE2B d6b7ee9ef165e60f61d8d0dfaaf38919877f2edc6742cd58b2b70d379e807e75d9dc24e19f23db1b174d1797d6ef0af7700d686dd835d7a40bf2b2a91346e215 SHA512 80d1b960ae0b02859be329ea60d68cef33f3c7be7ec19752b3c9cfef442adef480878317ce2cfa309a27e662e2c72cab22023eaa3702e27970a1e5d55ca43f57
-DIST commons-lang3-3.1-src.tar.gz 638619 BLAKE2B f971afc9bdd3896178bc4be0b6c5d8809f1c1ac0d69ad73ba0d71c185c600ca7a55c3b4877af64b552ccebed9567aa7830f236f2c0d9c38f259870b894c9d745 SHA512 4d201c695a9b908a1809bbab689f80c6aa508b221b4c2786974eada08e647936f5879841c64eed509032ffdd5410735480e7ecb2910295d0f79e857c27019560
+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-2.0-r3.ebuild b/dev-java/commons-lang/commons-lang-2.0-r3.ebuild
deleted file mode 100644
index 27621bd3d6a4..000000000000
--- a/dev-java/commons-lang/commons-lang-2.0-r3.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Jakarta components to manipulate core java classes"
-HOMEPAGE="http://commons.apache.org/lang/"
-SRC_URI="mirror://apache/jakarta/commons/lang/source/${P}-src.tar.gz"
-DEPEND=">=virtual/jdk-1.4
- test? ( dev-java/ant-junit )"
-RDEPEND=">=virtual/jre-1.4"
-LICENSE="Apache-1.1"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-S="${WORKDIR}/${P}-src"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg_newjar dist/${P}.jar ${PN}.jar
-
- dodoc RELEASE-NOTES.txt
- java-pkg_dohtml DEVELOPERS-GUIDE.html PROPOSAL.html STATUS.html
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/commons-lang/commons-lang-2.6-r1.ebuild b/dev-java/commons-lang/commons-lang-2.6-r1.ebuild
deleted file mode 100644
index ce82157c1ae7..000000000000
--- a/dev-java/commons-lang/commons-lang-2.6-r1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="commons-lang:commons-lang:2.6"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Commons components to manipulate core java classes"
-HOMEPAGE="http://commons.apache.org/lang/"
-SRC_URI="mirror://apache/commons/lang/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
-SLOT="2.1"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.4
- test? (
- dev-java/ant-junit:0
- )"
-
-RDEPEND=">=virtual/jre-1.4"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-
-src_install() {
- java-pkg_newjar "target/${P}.jar" "${PN}.jar"
- dodoc RELEASE-NOTES.txt NOTICE.txt
- dohtml *.html
- use doc && java-pkg_dojavadoc target/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/commons-lang/commons-lang-3.1.ebuild b/dev-java/commons-lang/commons-lang-3.1.ebuild
deleted file mode 100644
index 7c135f524ce8..000000000000
--- a/dev-java/commons-lang/commons-lang-3.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_P="${PN}3-${PV}"
-
-DESCRIPTION="Commons components to manipulate core java classes"
-HOMEPAGE="http://commons.apache.org/lang/"
-SRC_URI="mirror://apache/commons/lang/source/${MY_P}-src.tar.gz"
-
-DEPEND=">=virtual/jdk-1.5
- test? ( dev-java/ant-junit:0 )"
-
-RDEPEND=">=virtual/jre-1.5"
-
-LICENSE="Apache-2.0"
-SLOT="3.1"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
-
-S="${WORKDIR}/${MY_P}-src"
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-
-src_install() {
- java-pkg_newjar target/${MY_P}.jar ${PN}.jar
-
- dodoc RELEASE-NOTES.txt NOTICE.txt
-
- use doc && java-pkg_dojavadoc target/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/commons-lang/commons-lang-3.12.0.ebuild b/dev-java/commons-lang/commons-lang-3.12.0.ebuild
deleted file mode 100644
index 26e34f109aa1..000000000000
--- a/dev-java/commons-lang/commons-lang-3.12.0.ebuild
+++ /dev/null
@@ -1,33 +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 pom.xml --download-uri https://mirror.checkdomain.de/apache//commons/lang/source/commons-lang3-3.12.0-src.tar.gz --slot 3.6 --keywords "~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris" --ebuild commons-lang-3.12.0.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.commons:commons-lang3:3.12.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Commons components to manipulate core java classes"
-HOMEPAGE="https://commons.apache.org/proper/commons-lang/"
-SRC_URI="mirror://apache/commons/lang/source/${PN}3-${PV}-src.tar.gz -> ${P}-sources.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="3.6"
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
-
-DEPEND="
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${PN}3-${PV}-src"
-
-JAVA_ENCODING="ISO-8859-1"
-
-JAVA_SRC_DIR="src/main/java"
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..556c3414c385
--- /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-lang/metadata.xml b/dev-java/commons-lang/metadata.xml
index 2444066aa02b..597bf973bf66 100644
--- a/dev-java/commons-lang/metadata.xml
+++ b/dev-java/commons-lang/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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-lang</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/commons-launcher/Manifest b/dev-java/commons-launcher/Manifest
deleted file mode 100644
index 662dadef7e50..000000000000
--- a/dev-java/commons-launcher/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-launcher-1.1-src.tar.gz 76558 BLAKE2B 23ec27e5ed7d9ab7770da62aa1af69ce8510c67ee5e4f756519a9bc2009c40525b5fa48a1caa8ce5b6062d57dedd469b190cfa7ca9a4ed5a5a72eade40947aed SHA512 87f275ea1dbd08394c173da21023cb761175ff222fbe0ed6553fa6ca34eef775b57561227279216082556a8dd37593c9699a3e0c059bf3da98dbd2f1d3f58ddd
diff --git a/dev-java/commons-launcher/commons-launcher-1.1-r2.ebuild b/dev-java/commons-launcher/commons-launcher-1.1-r2.ebuild
deleted file mode 100644
index a1e7eef39b71..000000000000
--- a/dev-java/commons-launcher/commons-launcher-1.1-r2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="examples doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library to launch Java classes"
-HOMEPAGE="http://commons.apache.org/launcher/"
-SRC_URI="mirror://apache/${PN%%-*}/${PN##*-}/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${PN}"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples example
-}
diff --git a/dev-java/commons-launcher/metadata.xml b/dev-java/commons-launcher/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-launcher/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-logging/Manifest b/dev-java/commons-logging/Manifest
index 7831dfb07830..9f2bae1c3096 100644
--- a/dev-java/commons-logging/Manifest
+++ b/dev-java/commons-logging/Manifest
@@ -1 +1,3 @@
-DIST commons-logging-1.2-src.tar.gz 188536 BLAKE2B 80613b78619f7b3429f60df4fb9b66dd4836e8b89fcf93a3a1bcd5cb7e410d474be010da16b325143e028a40ff4dd971753962c9d9145f85b1738f5dda13ba99 SHA512 9f3761184950f2f13e85d8bc447709ab8be631dfd231b4f053f8147468db1bf71fb116ddba95e39f4afc4cf28c742e07d40c7a637f28004a60dc13935f9609f9
+DIST commons-logging-1.3.0_pre20230319.tar.gz 184984 BLAKE2B 01b46bdb657dfaf3ffb55b3440b416d61a419a3358e4d240cc7e25794f38e0061e14ee77e5578aedf1b50006d6ec65016c9e837bd13c4dab9a2182604fe85c72 SHA512 b586be5dd891572aa55c3066c3fb7d57ba5f31c0bfaa768b80cd8c1c5c659a8c718b4cb42e6c65332b52f073462432c0f81e4aaf1535afb781da9a7884cdc07e
+DIST commons-logging-1.3.1-src.tar.gz 189156 BLAKE2B 23308b2bff6ea67620b0f07f49a63ffdbd07833fc0d9a6654386f4c17c9125abef5ad2afb6d8c798dcb98bc3e99bd8d94d35b9deec569c3aec1dde20f69e1a1d SHA512 ffda970d086601df4b476caf8bd01d1bdc22dd7f8846a22287036f7f000ce6cf0a757d16621910f041f8d90aa6066819454b3977dd005ca66817bec59e91e91f
+DIST commons-logging-1.3.1-src.tar.gz.asc 488 BLAKE2B 3225a62f6269224f1b52907631be03d97cde65d1c7a76c06b6a23b9e30b1cee08b048eb4fdaa41b0a6b5bcf090b54c9dc54307fb1629b039b786fd426572a4d1 SHA512 6f13f85a5aeab1099ebfca38a6173384050b1f1c2e7eac93d978587c92751ddd24d583e39bc5a949f0caec66ca141d265147e63e9e2afea2094bda4667936a86
diff --git a/dev-java/commons-logging/commons-logging-1.2-r3.ebuild b/dev-java/commons-logging/commons-logging-1.2-r3.ebuild
deleted file mode 100644
index 1be76e85241d..000000000000
--- a/dev-java/commons-logging/commons-logging-1.2-r3.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="commons-logging:commons-logging:1.2"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="An ultra-thin bridge between different Java logging libraries"
-HOMEPAGE="https://commons.apache.org/logging/"
-SRC_URI="mirror://apache/commons/logging/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="avalon-framework avalon-logkit log4j servletapi test"
-RESTRICT="!test? ( test ) !servletapi? ( test )"
-
-CDEPEND="
- avalon-logkit? ( dev-java/avalon-logkit:2.0 )
- avalon-framework? ( dev-java/avalon-framework:4.2 )
- log4j? ( dev-java/log4j:0 )
- servletapi? ( dev-java/tomcat-servlet-api:4.0 )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )"
-
-S="${WORKDIR}/${P}-src"
-
-EANT_BUILD_TARGET="compile"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_IGNORE_SYSTEM_CLASSES="yes"
-
-DOCS=( RELEASE-NOTES.txt PROPOSAL.html )
-
-src_prepare() {
- default
-
- eapply "${FILESDIR}/${P}-gentoo.patch"
- # patch to make the build.xml respect no servletapi
- eapply "${FILESDIR}/${P}-servletapi.patch"
-
- # bug #208098
- echo "jdk.1.4.present=true" > build.properties || die
-
- if use avalon-framework; then
- echo "avalon-framework.jar=$(java-pkg_getjars avalon-framework-4.2)" >> build.properties || die
- fi
- if use avalon-logkit; then
- echo "logkit.jar=$(java-pkg_getjars avalon-logkit-2.0)" >> build.properties || die
- fi
- if use log4j; then
- echo "log4j12.jar=$(java-pkg_getjars log4j)" >> build.properties || die
- fi
-
- if use servletapi; then
- echo "servletapi.jar=$(java-pkg_getjar tomcat-servlet-api-4.0 servlet-api.jar)" >> build.properties || die
- fi
-}
-
-src_install() {
- local pkg=org.apache.commons.logging
- java-osgi_newjar "target/${P}.jar" "${pkg}" "Apache Commons Logging" "${pkg};version=\"${PV}\", ${pkg}.impl;version=\"${PV}\""
- java-pkg_newjar target/${PN}-api-${PV}.jar ${PN}-api.jar
- java-pkg_newjar target/${PN}-adapters-${PV}.jar ${PN}-adapters.jar
-
- einstalldocs
- use doc && java-pkg_dojavadoc target/docs/
- use source && java-pkg_dosrc src/main/java/org
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/commons-logging/commons-logging-1.3.0_pre20230319.ebuild b/dev-java/commons-logging/commons-logging-1.3.0_pre20230319.ebuild
new file mode 100644
index 000000000000..e7ce766be362
--- /dev/null
+++ b/dev-java/commons-logging/commons-logging-1.3.0_pre20230319.ebuild
@@ -0,0 +1,121 @@
+# 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-logging:commons-logging:1.3.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Thin adapter allowing configurable bridging to other well known logging systems"
+HOMEPAGE="https://commons.apache.org/proper/commons-logging/"
+MY_COMMIT="d376d3128663e53de4af948e161291e7ec0c6ec1"
+SRC_URI="https://github.com/apache/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="log4j"
+
+CDEPEND="
+ log4j? (
+ dev-java/log4j-12-api:2
+ dev-java/log4j-api:2
+ dev-java/log4j-core:2
+ )
+"
+
+DEPEND="${CDEPEND}
+ dev-java/javax-servlet-api:2.5
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( README.md src/changes/changes.xml )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.logging"
+JAVA_ENCODING="iso-8859-1"
+JAVA_CLASSPATH_EXTRA="javax-servlet-api-2.5"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # https://avalon.apache.org/closed.html Apache Avalon has closed.
+ rm src/main/java/org/apache/commons/logging/impl/{Avalon,LogKit}Logger.java || die
+ rm src/test/java/org/apache/commons/logging/{avalon/AvalonLogger,logkit/Standard}TestCase.java || die
+
+ if use !log4j; then
+ rm src/main/java/org/apache/commons/logging/impl/Log4JLogger.java || die
+ fi
+}
+
+src_compile() {
+ if use log4j; then
+ JAVA_GENTOO_CLASSPATH="log4j-12-api-2,log4j-api-2,log4j-core-2"
+ fi
+ java-pkg-simple_src_compile
+
+ pushd target/classes > /dev/null || die
+
+ # Need Automatic-Module-Name also for the other JAR files
+ jar xvf ../../commons-logging.jar META-INF/MANIFEST.MF || die
+
+ # https://github.com/apache/commons-logging/blob/058cf5ee350cd83d1ab28b000ad6be903ca160c5/pom.xml#L215-L236
+ jar -cvfm ../../commons-logging-api.jar META-INF/MANIFEST.MF \
+ $(find . -type f -name '*.class' \
+ ! -name 'Jdk13LumberjackLogger.class' \
+ ! -name 'ServletContextCleaner.class' \
+ ) || die
+
+ # https://github.com/apache/commons-logging/blob/058cf5ee350cd83d1ab28b000ad6be903ca160c5/pom.xml#L240-L257
+ jar -cvfm ../../commons-logging-adapters.jar META-INF/MANIFEST.MF \
+ $(find . -type f -path './org/apache/commons/logging/impl/**.class' \
+ ! -name 'WeakHashtable*.class' \
+ ! -name 'LogFactoryImpl*.class' \
+ ) || die
+
+ popd > /dev/null || die
+}
+
+src_test() {
+ # Do not run Log4j tests because these tests use an Appender to verify
+ # logging correctness. The log4j-12-api bridge no longer supports using an
+ # Appender for verifications since the methods for adding an Appender in
+ # the bridge "are largely no-ops". This means an Appender's state would
+ # never be changed by log4j-12-api after new messages are logged. The test
+ # cases, however, expect changes to the Appender's state in such an event,
+ # so they would fail with log4j-12-api.
+ # https://logging.apache.org/log4j/log4j-2.8/log4j-1.2-api/index.html
+ rm src/test/java/org/apache/commons/logging/pathable/ParentFirstTestCase.java || die # Log4JLogger
+ rm src/test/java/org/apache/commons/logging/pathable/ChildFirstTestCase.java || die # Log4JLogger
+ rm -r src/test/java/org/apache/commons/logging/log4j || die
+
+ JAVA_TEST_EXCLUDES=(
+ org.apache.commons.logging.security.SecurityForbiddenTestCase # 2 tests 1 failing
+ org.apache.commons.logging.jdk14.TestHandler # No runnable methods
+ )
+ JAVA_TEST_EXTRA_ARGS=(
+ -Dservlet-api="$(java-pkg_getjars javax-servlet-api-2.5)"
+ -Dcommons-logging="commons-logging.jar"
+ -Dcommons-logging-api="commons-logging-api.jar"
+ -Dcommons-logging-adapters="commons-logging-adapters.jar"
+ -Dtestclasses="target/test-classes"
+ )
+ if use log4j; then
+ JAVA_TEST_EXTRA_ARGS+=" -Dlog4j12=$(java-pkg_getjars log4j-12-api-2,log4j-core-2)"
+ fi
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+ JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+ JAVA_TEST_SRC_DIR="src/test/java"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_dojar commons-logging-api.jar commons-logging-adapters.jar
+}
diff --git a/dev-java/commons-logging/commons-logging-1.3.1.ebuild b/dev-java/commons-logging/commons-logging-1.3.1.ebuild
new file mode 100644
index 000000000000..1f9180268241
--- /dev/null
+++ b/dev-java/commons-logging/commons-logging-1.3.1.ebuild
@@ -0,0 +1,153 @@
+# 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-logging:commons-logging:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Thin adapter allowing configurable bridging to other well known logging systems"
+HOMEPAGE="https://commons.apache.org/proper/commons-logging/"
+SRC_URI="mirror://apache/commons/logging/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/commons/logging/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 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="log4j"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+COMMON_DEPEND="
+ dev-java/jakarta-servlet-api:4
+ dev-java/slf4j-api:0
+ log4j? (
+ dev-java/log4j-12-api:2
+ dev-java/log4j-api:2
+ )"
+
+DEPEND="${COMMON_DEPEND}
+ >=virtual/jdk-11:*"
+
+RDEPEND="${COMMON_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( NOTICE.txt src/changes/changes.xml )
+HTML_DOCS=( PROPOSAL.html )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.logging"
+JAVA_ENCODING="iso-8859-1"
+JAVA_GENTOO_CLASSPATH="
+ jakarta-servlet-api-4
+ slf4j-api
+"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ # javax-servlet-api and log4j* do not presently provide module-info
+ cat > src/main/java/module-info.java <<-EOF || die
+ module org.apache.commons.logging {
+ // requires static org.apache.logging.log4j;
+ requires static org.slf4j;
+ requires static java.logging;
+ // requires static log4j;
+ // requires static servlet.api;
+ // requires static org.apache.log4j;
+ requires java.base;
+ exports org.apache.commons.logging;
+ exports org.apache.commons.logging.impl;
+ uses org.apache.commons.logging.LogFactory;
+ }
+ EOF
+
+ # https://avalon.apache.org/closed.html Apache Avalon has closed.
+ rm src/main/java/org/apache/commons/logging/impl/{Avalon,LogKit}Logger.java || die
+ rm src/test/java/org/apache/commons/logging/{avalon/AvalonLogger,logkit/Standard}TestCase.java || die
+
+ if use !log4j; then
+ rm src/main/java/org/apache/commons/logging/impl/Log4JLogger.java || die
+ rm src/main/java/org/apache/commons/logging/impl/Log4jApiLogFactory.java || die
+ else
+ JAVA_GENTOO_CLASSPATH+="
+ log4j-12-api-2
+ log4j-api-2
+ "
+ fi
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ pushd target/classes > /dev/null || die
+
+ # Need Automatic-Module-Name also for the other JAR files
+ jar xvf ../../commons-logging.jar META-INF/MANIFEST.MF || die
+
+ # pom.xml, lines 81-103
+ jar -cvfm ../../commons-logging-api.jar META-INF/MANIFEST.MF \
+ $(find . -type f -name '*.class' \
+ ! -name 'Jdk13LumberjackLogger.class' \
+ ! -name 'ServletContextCleaner.class' \
+ ) || die
+
+ # pom.xml, lines 205-124
+ jar -cvfm ../../commons-logging-adapters.jar META-INF/MANIFEST.MF \
+ $(find . -type f -path './org/apache/commons/logging/impl/**.class' \
+ ! -name 'WeakHashtable*.class' \
+ ! -name 'LogFactoryImpl*.class' \
+ ) || die
+
+ popd > /dev/null || die
+}
+
+src_test() {
+ # Do not run Log4j tests because these tests use an Appender to verify
+ # logging correctness. The log4j-12-api bridge no longer supports using an
+ # Appender for verifications since the methods for adding an Appender in
+ # the bridge "are largely no-ops". This means an Appender's state would
+ # never be changed by log4j-12-api after new messages are logged. The test
+ # cases, however, expect changes to the Appender's state in such an event,
+ # so they would fail with log4j-12-api.
+ # https://logging.apache.org/log4j/log4j-2.8/log4j-1.2-api/index.html
+ rm src/test/java/org/apache/commons/logging/pathable/ParentFirstTestCase.java || die # Log4JLogger
+ rm src/test/java/org/apache/commons/logging/pathable/ChildFirstTestCase.java || die # Log4JLogger
+ rm -r src/test/java/org/apache/commons/logging/log4j || die
+ rm src/test/java/org/apache/commons/logging/log4j2/CallerInformationTestCase.java || die
+ # error: package ch.qos.logback.classic does not exist
+ rm src/test/java/org/apache/commons/logging/slf4j/CallerInformationTestCase.java || die
+
+ JAVA_TEST_EXCLUDES=(
+ org.apache.commons.logging.jdk14.TestHandler # No runnable methods
+ # junit.framework.AssertionFailedError: Wrong factory retrieved through
+ # ServiceLoader: org.apache.commons.logging.impl.Slf4jLogFactory
+ org.apache.commons.logging.serviceloader.ServiceLoaderTestCase
+ # junit.framework.ComparisonFailure: Log class expected:<...ommons.logging.impl.[NoOp]Log>
+ # but was:<...ommons.logging.impl.[Slf4jLogFactory$Slf4j]Log>
+ org.apache.commons.logging.noop.NoOpLogTestCase
+ )
+ JAVA_TEST_EXTRA_ARGS=(
+ -Dservlet-api="$(java-pkg_getjars jakarta-servlet-api-4)"
+ -Dcommons-logging="commons-logging.jar"
+ -Dcommons-logging-api="commons-logging-api.jar"
+ -Dcommons-logging-adapters="commons-logging-adapters.jar"
+ -Dtestclasses="target/test-classes"
+ )
+ if use log4j; then
+ JAVA_TEST_EXTRA_ARGS+=" -Dlog4j12=$(java-pkg_getjars log4j-12-api-2,log4j-core-2)"
+ fi
+ JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+ JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+ JAVA_TEST_SRC_DIR="src/test/java"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_dojar commons-logging-api.jar commons-logging-adapters.jar
+}
diff --git a/dev-java/commons-logging/files/commons-logging-1.2-gentoo.patch b/dev-java/commons-logging/files/commons-logging-1.2-gentoo.patch
deleted file mode 100644
index a654ce1fc763..000000000000
--- a/dev-java/commons-logging/files/commons-logging-1.2-gentoo.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/build.xml
-+++ b/build.xml
-@@ -773,4 +773,23 @@
- </fail>
- </target>
-
-+ <target depends="" name="javadoc" description="o Generate javadoc" >
-+ <mkdir dir="${build.home}/docs" >
-+ </mkdir>
-+ <tstamp >
-+ <format pattern="2001-yyyy" property="year" >
-+ </format>
-+ </tstamp>
-+ <property name="copyright" value="Copyright &amp;copy; The Apache Software Foundation. All Rights Reserved." >
-+ </property>
-+ <property name="title" value="Logging 1.1 API" >
-+ </property>
-+ <javadoc use="true" author="true" sourcepath="src/main/java" destdir="${build.home}/docs" version="true" private="true" packagenames="org.apache.commons.logging.*" >
-+ <classpath >
-+ <path refid="javadoc.classpath" >
-+ </path>
-+ </classpath>
-+ </javadoc>
-+ </target>
-+
- </project>
diff --git a/dev-java/commons-logging/files/commons-logging-1.2-servletapi.patch b/dev-java/commons-logging/files/commons-logging-1.2-servletapi.patch
deleted file mode 100644
index a9fccba8d5c1..000000000000
--- a/dev-java/commons-logging/files/commons-logging-1.2-servletapi.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- a/build.xml
-+++ b/build.xml
-@@ -279,6 +279,8 @@
- classpathref="compile.classpath"
- classname="org.apache.log.Logger"/>
-
-+ <available classname="javax.servlet.ServletContextEvent" property="servletapi.present" classpathref="compile.classpath" ignoresystemclasses="true" ></available>
-+
- <available property="avalon-framework.present"
- classpathref="compile.classpath"
- classname="org.apache.avalon.framework.logger.Logger"/>
-@@ -315,6 +317,13 @@
- </echo>
- </target>
-
-+ <target depends="init,discovery" unless="servletapi.present" name="servletapi-warning" >
-+ <echo >
-+ *** WARNING ***
-+ ServletAPI not found: Cannot Build ServletContextCleaner
-+ </echo>
-+ </target>
-+
- <target name="avalon-framework-warning" unless='avalon-framework.present' depends='init,discovery'>
- <echo>
- *** WARNING ***
-@@ -337,7 +346,7 @@
- </target>
-
- <target name='warning'
-- depends='log4j12-warning,log4j13-warning,logkit-warning,jdk1.4-warning,avalon-framework-warning,compile-1.4'/>
-+ depends='log4j12-warning,log4j13-warning,logkit-warning,jdk1.4-warning,avalon-framework-warning,servletapi-warning,compile-1.4'/>
-
- <target name="compile-only"
- depends="prepare,discovery,warning,show-lib-presence,compile-non-log4j,compile-log4j12,compile-log4j13,build-jar"/>
-@@ -365,6 +374,7 @@
-
- <exclude name="org/apache/commons/logging/impl/Log4J*.java"/>
-
-+ <exclude unless="servletapi.present" name="org/apache/commons/logging/impl/ServletContextCleaner.java" ></exclude>
- <exclude name="org/apache/commons/logging/impl/Jdk13LumberjackLogger.java"
- unless="jdk.1.4.present"/>
- <exclude name="org/apache/commons/logging/impl/Jdk14Logger.java"
diff --git a/dev-java/commons-logging/metadata.xml b/dev-java/commons-logging/metadata.xml
index 8661ce26e6c8..6f7f23a3f9e5 100644
--- a/dev-java/commons-logging/metadata.xml
+++ b/dev-java/commons-logging/metadata.xml
@@ -1,14 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <use>
- <flag name="avalon-framework">Add optional support for avalon-framework</flag>
- <flag name="avalon-logkit">Add optional support for avalon-logkit</flag>
- <flag name="log4j">Add optional support for log4j</flag>
- <flag name="servletapi">Add optional support for servletapi</flag>
- </use>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://issues.apache.org/jira/projects/LOGGING/issues/</bugs-to>
+ <doc>https://commons.apache.org/proper/commons-logging/guide.html</doc>
+ <remote-id type="github">apache/commons-logging</remote-id>
+ </upstream>
+ <use>
+ <flag name="log4j">Add optional support for log4j</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-java/commons-math/Manifest b/dev-java/commons-math/Manifest
index 2a4d73ad3ca0..bf6297cec518 100644
--- a/dev-java/commons-math/Manifest
+++ b/dev-java/commons-math/Manifest
@@ -1 +1 @@
-DIST commons-math3-3.6.1.jar 2514690 BLAKE2B ce5dc1a5bdccf85aa780dd648b64c0ed78b4d5a36d15d9737f661135f4f1ec962c3c44a0c4d8fc7d12c667e62b19860cb2a47f507c8c3e6da6cce57e1b9caf54 SHA512 eab6003834c0f1b7e67eee242d33db43f85d388ac32e37caa6bd16d74340db5c189ff5c7fd112ef13b9009d2fbcf2bad6650b6e5d9124316b59493b2d07d065d
+DIST commons-math3-3.6.1-sources.jar 2514690 BLAKE2B ce5dc1a5bdccf85aa780dd648b64c0ed78b4d5a36d15d9737f661135f4f1ec962c3c44a0c4d8fc7d12c667e62b19860cb2a47f507c8c3e6da6cce57e1b9caf54 SHA512 eab6003834c0f1b7e67eee242d33db43f85d388ac32e37caa6bd16d74340db5c189ff5c7fd112ef13b9009d2fbcf2bad6650b6e5d9124316b59493b2d07d065d
diff --git a/dev-java/commons-math/commons-math-3.6.1-r1.ebuild b/dev-java/commons-math/commons-math-3.6.1-r1.ebuild
deleted file mode 100644
index 3ef7e38716d8..000000000000
--- a/dev-java/commons-math/commons-math-3.6.1-r1.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
-
-JAVA_PKG_IUSE="doc examples source"
-MAVEN_ID="org.apache.commons:commons-math3:3.6.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}3"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Lightweight, self-contained mathematics and statistics components"
-HOMEPAGE="https://commons.apache.org/math/"
-SRC_URI="https://repo1.maven.org/maven2/org/apache/commons/${MY_PN}/${PV}/${MY_P}-sources.jar
--> ${MY_P}.jar"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/dev-java/commons-math/commons-math-3.6.1-r2.ebuild b/dev-java/commons-math/commons-math-3.6.1-r2.ebuild
new file mode 100644
index 000000000000..1ca7a92bf8f1
--- /dev/null
+++ b/dev-java/commons-math/commons-math-3.6.1-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc examples source"
+MAVEN_ID="org.apache.commons:commons-math3:3.6.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="${PN}3"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Lightweight, self-contained mathematics and statistics components"
+HOMEPAGE="https://commons.apache.org/math/"
+SRC_URI="https://repo1.maven.org/maven2/org/apache/commons/${MY_PN}/${PV}/${MY_P}-sources.jar"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+JAVA_AUTOMATIC_MODULE_NAME="commons.math3"
diff --git a/dev-java/commons-math/metadata.xml b/dev-java/commons-math/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/commons-math/metadata.xml
+++ b/dev-java/commons-math/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/commons-net/Manifest b/dev-java/commons-net/Manifest
index 9a5756803a63..ff3a88cde8b6 100644
--- a/dev-java/commons-net/Manifest
+++ b/dev-java/commons-net/Manifest
@@ -1 +1,2 @@
-DIST commons-net-3.8.0.jar 437325 BLAKE2B 92bdbf2f95cc54f6a791a9de0a56878fe12b6d956d47a4116ae21df35f3dcc4d7b10f5c03c081fc7012a06416f5f9f6555060784bfe22ec9c8d70b17ee7ea215 SHA512 a16ed8c2966541cc052fe963338efcc6f9c42ccd6fefe246547e66d9f46c35cf42bc6d13cb983a1829a378ebd7a676bcb812acbc3aa0ed30e6fa206748dae620
+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
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..d4161a272d96
--- /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-net/commons-net-3.8.0.ebuild b/dev-java/commons-net/commons-net-3.8.0.ebuild
deleted file mode 100644
index 73e3ed4a5df3..000000000000
--- a/dev-java/commons-net/commons-net-3.8.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${P}-sources"
-
-DESCRIPTION="Client-oriented Java library to implement many Internet protocols"
-HOMEPAGE="https://commons.apache.org/net/"
-SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
diff --git a/dev-java/commons-net/metadata.xml b/dev-java/commons-net/metadata.xml
index 747a23fe8dfc..588ab3212223 100644
--- a/dev-java/commons-net/metadata.xml
+++ b/dev-java/commons-net/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/commons-nullanalysis/Manifest b/dev-java/commons-nullanalysis/Manifest
new file mode 100644
index 000000000000..081aa48e41a9
--- /dev/null
+++ b/dev-java/commons-nullanalysis/Manifest
@@ -0,0 +1 @@
+DIST unkrig-commons1.2.17.tar.gz 2187066 BLAKE2B 29addd6ba41edf475ff878c15a40ee328682fc7d458fae4f745e20cd00afbaa99a8f202e0d285a81a45e47177944d8dcce2e30d6f3c74d2374b46f34c5813dff SHA512 dd8652bcffd62aa847e7c36358de8eecca66f731f06da504cbdcb29f55608e384db2e0d9a7847773423d82d7ae9f3bf75e07142c95ae0ec758f15e5a3020db99
diff --git a/dev-java/commons-nullanalysis/commons-nullanalysis-1.2.17.ebuild b/dev-java/commons-nullanalysis/commons-nullanalysis-1.2.17.ebuild
new file mode 100644
index 000000000000..837845785cf6
--- /dev/null
+++ b/dev-java/commons-nullanalysis/commons-nullanalysis-1.2.17.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="de.unkrig.commons:commons-nullanalysis:1.2.17"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Annotations and utility classes for ECLIPSE annotation-base null analysis"
+HOMEPAGE="https://unkrig.de/w/Commons.unkrig.de"
+SRC_URI="https://github.com/aunkrig/commons/archive/V${PV}.tar.gz -> unkrig-commons${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/commons-${PV}/commons-nullanalysis"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-nullanalysis/metadata.xml b/dev-java/commons-nullanalysis/metadata.xml
new file mode 100644
index 000000000000..4fc465e4c3e9
--- /dev/null
+++ b/dev-java/commons-nullanalysis/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">aunkrig/commons</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/commons-pool/Manifest b/dev-java/commons-pool/Manifest
deleted file mode 100644
index 8099fc3c4e7b..000000000000
--- a/dev-java/commons-pool/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-pool2-2.2-src.tar.gz 163682 BLAKE2B b9a84b1387cd00eb46cc94726ae3295a73f2f47b824401aca525296eddbf04b6c978a4808014bf7e93c113014e0e2fb0db39d6b9ddb9c651bb385cecd05584a5 SHA512 a9c1a30f497f4a6c28b8b4b82d3b2f801b464fc329d1da4f5087dcd6b923c45bde9ac6f3dc9939025453462f9dfea9fff637db9b4334ed513770a546b4807256
diff --git a/dev-java/commons-pool/commons-pool-2.2.ebuild b/dev-java/commons-pool/commons-pool-2.2.ebuild
deleted file mode 100644
index 162292b43aa1..000000000000
--- a/dev-java/commons-pool/commons-pool-2.2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN}2"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Provides general purpose object pooling API"
-HOMEPAGE="http://commons.apache.org/pool/"
-SRC_URI="mirror://apache/commons/pool/source/${MY_P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="amd64 ppc64 x86"
-
-COMMON_DEP="dev-java/cglib:3
- dev-java/asm:4"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.6"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- dev-java/junit:4
- )"
-
-S="${WORKDIR}/${MY_P}-src"
-
-EANT_BUILD_TARGET="build-jar"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="cglib-3,asm-4"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
-
-src_test() {
- ANT_TASKS="ant-junit" java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar dist/${MY_P}-SNAPSHOT.jar ${PN}.jar
- dodoc README.txt RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/main/java/org
-}
diff --git a/dev-java/commons-pool/metadata.xml b/dev-java/commons-pool/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/commons-pool/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-primitives/Manifest b/dev-java/commons-primitives/Manifest
deleted file mode 100644
index 5808d72220d0..000000000000
--- a/dev-java/commons-primitives/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-primitives-1.0.tar.gz 172369 BLAKE2B b3641bc163b250997db9897b43af3ab7a1e15eaf34420e92429e321eca43c69bcb094f4b11e9789236d6e24f9c83a5674ad68a33c863fbac12dd72526bfbf4ba SHA512 239752a615f3a88049d6c85326a67462362869eda421ab76975c0906d811c970c871042769d851a4341c8a06b501d6b12fd1feba74d83007b2dd73370c5b3195
diff --git a/dev-java/commons-primitives/commons-primitives-1.0-r3.ebuild b/dev-java/commons-primitives/commons-primitives-1.0-r3.ebuild
deleted file mode 100644
index 22a04bf2b76c..000000000000
--- a/dev-java/commons-primitives/commons-primitives-1.0-r3.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="The Jakarta-Commons Primitives Component"
-HOMEPAGE="http://commons.apache.org/primitives/"
-SRC_URI="https://www.apache.org/dist/commons/primitives/source/${P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-1.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- rm -rv src/test || die
-}
diff --git a/dev-java/commons-primitives/metadata.xml b/dev-java/commons-primitives/metadata.xml
deleted file mode 100644
index a10f35ee50c8..000000000000
--- a/dev-java/commons-primitives/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- Apache Jakarta Commons Primitives provides a collection of types and
- utilities optimized for working with Java primitives (boolean, byte,
- char, double, float, int, long, short). Generally, the
- Commons-Primitives classes are smaller, faster and easier to work with
- than their purely Object based alternatives.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/commons-text/Manifest b/dev-java/commons-text/Manifest
deleted file mode 100644
index e99bcc4b22d1..000000000000
--- a/dev-java/commons-text/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commons-text-1.9-sources.tar.gz 312764 BLAKE2B 44b628c418a910ff38b5a1fb3b4c9f14a1f9818afd12540f8c8cf8b1a99fd7abd365e704142bcec901e5e067b303ff44f9c992f8714eae68b94819780a270dd2 SHA512 53f993e79aaa6789d3388aa96b6b2a14cf646b27ff3774524390e511241a85288947cc929519eff61a8734578f25bdf3d9969d84da20c1a749b19d90a55da8ae
diff --git a/dev-java/commons-text/commons-text-1.9.ebuild b/dev-java/commons-text/commons-text-1.9.ebuild
deleted file mode 100644
index 67823fa867ac..000000000000
--- a/dev-java/commons-text/commons-text-1.9.ebuild
+++ /dev/null
@@ -1,43 +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 pom.xml --download-uri https://downloads.apache.org//commons/text/source/commons-text-1.9-src.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild commons-text-1.9.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.commons:commons-text:1.9"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache Commons Text is a library focused on algorithms working on strings."
-HOMEPAGE="https://commons.apache.org/proper/commons-text"
-SRC_URI="https://downloads.apache.org//commons/text/source/${P}-src.tar.gz -> ${P}-sources.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-# Common dependencies
-# POM: pom.xml
-# org.apache.commons:commons-lang3:3.11 -> >=dev-java/commons-lang-3.11:3.6
-
-CDEPEND="
- >=dev-java/commons-lang-3.11:3.6
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="ISO-8859-1"
-
-JAVA_GENTOO_CLASSPATH="commons-lang-3.6"
-JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/commons-text/metadata.xml b/dev-java/commons-text/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/commons-text/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/commons-validator/Manifest b/dev-java/commons-validator/Manifest
index 5a69c0558e4f..c8d595696045 100644
--- a/dev-java/commons-validator/Manifest
+++ b/dev-java/commons-validator/Manifest
@@ -1,2 +1,2 @@
-DIST commons-validator-1.4.0-src.tar.gz 222421 BLAKE2B 1a83d39be6b2cd8c20cc027cd49b813cd23f65772f17e2c8f1dc7357edd0abf80ce2f76c2c8fb5a5b4acc66eff740925b970cc21ba6a582ecab71f74be84f7bf SHA512 35005d5ada8a1070cdd02f78464886e16157a05f895e3abfe2dcd51fa4b443d9ee359bb54a40e13ed463b757a77a64669c89cd9b914051a4ab1c745be3526d98
-DIST commons-validator-1.4.1-src.tar.gz 244155 BLAKE2B 4d7d63f30bdc9196f73812fa584226f28d9514918c13f0279be74e868f2410e08b2bc2a71a4a54d2b2ba91d580438f3de6fa71afe8dd38838d234723921b6c27 SHA512 e64d16de2481c388c81a488dbe894c4d16a1abad12f841f6f77e2606013edbce75ec7a1371976b7e642adfc7cbc5038ff7271cb4d184fbeb32a635acf6bccb38
+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.4.0.ebuild b/dev-java/commons-validator/commons-validator-1.4.0.ebuild
deleted file mode 100644
index 00a7eebf1026..000000000000
--- a/dev-java/commons-validator/commons-validator-1.4.0.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="examples source test" # doc
-
-inherit java-pkg-2 java-ant-2
-
-MY_P=${P}-src
-
-DESCRIPTION="Commons component to validate user input, or data input"
-HOMEPAGE="http://commons.apache.org/validator/"
-SRC_URI="mirror://apache/commons/validator/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.4
- >=dev-java/commons-digester-1.6:0
- >=dev-java/commons-collections-3.1:0
- >=dev-java/commons-logging-1.0.4:0
- dev-java/commons-beanutils:1.7"
-
-DEPEND=">=virtual/jdk-1.4
- test? ( dev-java/junit:0 )
- ${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- epatch "${FILESDIR}"/validator-1.4.build.xml.patch
-
- JAVA_ANT_CLASSPATH_TAGS="javac java" java-ant_rewrite-classpath
-
- echo "commons-digester.jar=$(java-pkg_getjars commons-digester)" >> build.properties
- echo "commons-beanutils.jar=$(java-pkg_getjars commons-beanutils-1.7)" >> build.properties
- echo "commons-logging.jar=$(java-pkg_getjar commons-logging commons-logging.jar)" >> build.properties
- echo "commons-collections.jar=$(java-pkg_getjars commons-collections)" >> build.properties
-}
-
-EANT_JAVA_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-beanutils-1.7,commons-collections"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},commons-digester,commons-logging,junit"
-
-EANT_BUILD_TARGET="compile"
-EANT_EXTRA_ARGS="-Dskip.download=true"
-
-src_compile() {
- java-pkg-2_src_compile
- jar -cf ${PN}.jar -C target/classes/ . || die "Could not create jar."
-
- if use test ; then
- eant compile.tests ${EANT_EXTRA_ARGS} -Dgentoo.classpath="$(java-pkg_getjars --build-only --with-dependencies ${EANT_TEST_GENTOO_CLASSPATH})"
- jar -cf ${PN}-test.jar -C target/tests/ . || die "Could not create test jar."
- fi
-}
-
-# Missing test suite org.apache.commons.validator.ValidatorTestSuite; therefore, tests can't be ran.
-# See https://issues.apache.org/jira/browse/VALIDATOR-323 for a bug report about this.
-RESTRICT="test"
-
-src_test() {
- echo "junit.jar=$(java-pkg_getjars junit)" >> build.properties
- eant test ${EANT_EXTRA_ARGS} -Dgentoo.classpath="$(java-pkg_getjars --build-only --with-dependencies ${EANT_TEST_GENTOO_CLASSPATH}):${PN}.jar:${PN}-test.jar"
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-
- dodoc NOTICE.txt RELEASE-NOTES.txt
-
- # Docs are no longer generated, as they have commented them out;
- # probably on purpose, since this is the start of a new branch.
- # use doc && java-pkg_dojavadoc dist/docs/apidocs
- use examples && java-pkg_doexamples src/example
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/commons-validator/commons-validator-1.4.1.ebuild b/dev-java/commons-validator/commons-validator-1.4.1.ebuild
deleted file mode 100644
index a7f4bcc21ed6..000000000000
--- a/dev-java/commons-validator/commons-validator-1.4.1.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="examples source test" # doc
-
-inherit java-pkg-2 java-ant-2
-
-MY_P=${P}-src
-
-DESCRIPTION="Commons component to validate user input, or data input"
-HOMEPAGE="http://commons.apache.org/validator/"
-SRC_URI="mirror://apache/commons/validator/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-RDEPEND=">=virtual/jre-1.6
- >=dev-java/commons-digester-1.6:0
- >=dev-java/commons-collections-3.1:0
- >=dev-java/commons-logging-1.0.4:0
- dev-java/commons-beanutils:1.7"
-
-DEPEND=">=virtual/jdk-1.6
- test? ( dev-java/junit:0 )
- ${RDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- epatch "${FILESDIR}"/validator-1.4.build.xml.patch
-
- JAVA_ANT_CLASSPATH_TAGS="javac java" java-ant_rewrite-classpath
-
- echo "commons-digester.jar=$(java-pkg_getjars commons-digester)" >> build.properties
- echo "commons-beanutils.jar=$(java-pkg_getjars commons-beanutils-1.7)" >> build.properties
- echo "commons-logging.jar=$(java-pkg_getjar commons-logging commons-logging.jar)" >> build.properties
- echo "commons-collections.jar=$(java-pkg_getjars commons-collections)" >> build.properties
-}
-
-EANT_JAVA_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-beanutils-1.7,commons-collections"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},commons-digester,commons-logging,junit"
-
-EANT_BUILD_TARGET="compile"
-EANT_EXTRA_ARGS="-Dskip.download=true"
-
-src_compile() {
- java-pkg-2_src_compile
- jar -cf ${PN}.jar -C target/classes/ . || die "Could not create jar."
-
- if use test ; then
- eant compile.tests ${EANT_EXTRA_ARGS} -Dgentoo.classpath="$(java-pkg_getjars --build-only --with-dependencies ${EANT_TEST_GENTOO_CLASSPATH})"
- jar -cf ${PN}-test.jar -C target/tests/ . || die "Could not create test jar."
- fi
-}
-
-# Missing test suite org.apache.commons.validator.ValidatorTestSuite;
-# therefore, tests can't be run.
-
-# See https://issues.apache.org/jira/browse/VALIDATOR-323 for a bug report about this.
-RESTRICT="test"
-
-src_test() {
- echo "junit.jar=$(java-pkg_getjars junit)" >> build.properties
- eant test ${EANT_EXTRA_ARGS} -Dgentoo.classpath="$(java-pkg_getjars --build-only --with-dependencies ${EANT_TEST_GENTOO_CLASSPATH}):${PN}.jar:${PN}-test.jar"
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-
- dodoc NOTICE.txt RELEASE-NOTES.txt
-
- # Docs are no longer generated, as they have commented them out;
- # probably on purpose, since this is the start of a new branch.
- # use doc && java-pkg_dojavadoc dist/docs/apidocs
- use examples && java-pkg_doexamples src/example
- use source && java-pkg_dosrc src/main/java/*
-}
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..e92d0c4c8374
--- /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/files/validator-1.4.build.xml.patch b/dev-java/commons-validator/files/validator-1.4.build.xml.patch
deleted file mode 100644
index 579832bb4a09..000000000000
--- a/dev-java/commons-validator/files/validator-1.4.build.xml.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- build.xml.o 2006-10-21 18:12:49.000000000 +0200
-+++ build.xml 2006-10-21 18:29:18.000000000 +0200
-@@ -204,7 +205,7 @@
- </target>
-
-
-- <target name="compile" depends="static"
-+ <target name="compile" depends="prepare"
- description="Compile shareable components">
- <javac srcdir="${source.home}"
- destdir="${build.home}/classes"
-@@ -278,7 +279,7 @@
- </exec>
- </target>
-
-- <target name="javadoc" depends="compile, javadoc.js"
-+ <target name="javadoc" depends="compile"
- description="Create component Javadoc documentation">
- <javadoc sourcepath="${source.home}"
- destdir="${dist.home}/docs/apidocs"
diff --git a/dev-java/commons-validator/metadata.xml b/dev-java/commons-validator/metadata.xml
index 2444066aa02b..b356ec45e875 100644
--- a/dev-java/commons-validator/metadata.xml
+++ b/dev-java/commons-validator/metadata.xml
@@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <bugs-to>https://issues.apache.org/jira/projects/VALIDATOR/issues/</bugs-to>
+ <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/Manifest b/dev-java/commons-vfs/Manifest
index 4e682a4175ee..5a785427a265 100644
--- a/dev-java/commons-vfs/Manifest
+++ b/dev-java/commons-vfs/Manifest
@@ -1,2 +1 @@
-DIST commons-vfs-1.0-src.tar.gz 278588 BLAKE2B a92be28e02758bd271d7bf76f8b90c741dad0f1c15c71ab3624e16c6c30a47bbe189ef93c99b1f413034c47dbfdefbc155a526abf9897b85cb7352d1a92b4bef SHA512 5826ccd3faf574d7573b22fbab5f7f3ddc83b22504eb0822efbcc4570059db410d1a32811bf411414d275bdeb16ce39fd7cca2150d8537841cd888b1aef2b5a1
DIST commons-vfs-2.0-src.tar.gz 335255 BLAKE2B 01c8bba3340487672682af5c6b341ab1e8335070a9b711b5c85cca659854d05881a0ff10c4b168497e3a75867a7225740edc6e56019e55c499256401fb0a53c5 SHA512 433828b9eba73df14dbedaa4037e3da1c69bf1892553c1ae4d213ba864e4ee579e0c7799f39e3cb4ec087d7c9223f54442be46de9c4916d7b7ff8a51214d6346
diff --git a/dev-java/commons-vfs/commons-vfs-1.0-r1.ebuild b/dev-java/commons-vfs/commons-vfs-1.0-r1.ebuild
deleted file mode 100644
index acc513af4c25..000000000000
--- a/dev-java/commons-vfs/commons-vfs-1.0-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="commons-vfs:commons-vfs:1.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A single Java API for accessing various different file systems"
-HOMEPAGE="https://commons.apache.org/vfs/"
-SRC_URI="https://archive.apache.org/dist/${PN/-//}/source/${P}-src.tar.gz" # Not on Apache mirrors.
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-RESTRICT="test" # Some failures, can't figure them out.
-
-CP_DEPEND="
- dev-java/ant-core:0
- dev-java/commons-collections:0
- dev-java/commons-httpclient:3
- dev-java/commons-logging:0
- dev-java/commons-net:0
- dev-java/jsch:0
-"
-
-RDEPEND=">=virtual/jre-1.7
- ${CP_DEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CP_DEPEND}"
-
-S="${WORKDIR}/${P}-src"
-JAVA_SRC_DIR="core/src/main"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc {NOTICE,RELEASE_NOTES}.txt
-}
diff --git a/dev-java/commons-vfs/commons-vfs-2.0-r1.ebuild b/dev-java/commons-vfs/commons-vfs-2.0-r1.ebuild
deleted file mode 100644
index e8991f3641cf..000000000000
--- a/dev-java/commons-vfs/commons-vfs-2.0-r1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A single API for accessing various different file systems"
-HOMEPAGE="http://commons.apache.org/vfs/"
-SRC_URI="mirror://apache/commons/vfs/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-
-CDEPEND="
- dev-java/ant-core:0
- dev-java/commons-collections:0
- dev-java/commons-logging:0
- dev-java/commons-net:0
- dev-java/commons-httpclient:3
- dev-java/jackrabbit-webdav:0
- dev-java/jsch:0
- "
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}/core"
-
-java_prepare() {
- epatch "${FILESDIR}"/${P}-incompatibility.patch
-
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-
- java-ant_rewrite-classpath
- java-ant_ignore-system-classes
-}
-
-EANT_GENTOO_CLASSPATH="
- ant-core
- commons-collections
- commons-logging
- commons-net
- commons-httpclient-3
- jackrabbit-webdav
- jsch
-"
-EANT_EXTRA_ARGS="-Dlibdir=${T}"
-
-# The build.xml is generated from maven and can't run the tests properly
-# Use maven test to execute these manually but that means downloading deps from
-# the internet. Also the tests need to login to some ftp servers and samba
-# shares so I doubt they work for everyone.
-#src_test() {
-# ANT_TASKS="ant-junit" eant test
-#}
-
-src_install() {
- java-pkg_newjar target/*.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild b/dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild
new file mode 100644
index 000000000000..418ad23cc41f
--- /dev/null
+++ b/dev-java/commons-vfs/commons-vfs-2.0-r3.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 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="A single API for accessing various different file systems"
+HOMEPAGE="https://commons.apache.org/vfs/"
+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:0
+ dev-java/commons-collections:0
+ dev-java/commons-logging:0
+ dev-java/commons-net:0
+ dev-java/commons-httpclient:3
+ dev-java/jackrabbit-webdav:0
+ dev-java/jsch:0"
+
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-incompatibility.patch
+)
+
+EANT_GENTOO_CLASSPATH="
+ ant
+ commons-collections
+ commons-logging
+ commons-net
+ commons-httpclient-3
+ jackrabbit-webdav
+ jsch
+"
+EANT_EXTRA_ARGS="-Dlibdir=${T}"
+
+# The build.xml is generated from maven and can't run the tests properly
+# Use maven test to execute these manually but that means downloading deps from
+# the internet. Also the tests need to login to some ftp servers and samba
+# shares so I doubt they work for everyone.
+#src_test() {
+# ANT_TASKS="ant-junit" eant test
+#}
+
+src_prepare() {
+ default
+ cp "${FILESDIR}"/${P}-build.xml build.xml || die
+
+ java-ant_rewrite-classpath
+ java-ant_ignore-system-classes
+}
+
+src_install() {
+ java-pkg_newjar target/*.jar
+
+ # [javadoc] No javadoc created, no need to post-process anything
+# use doc && java-pkg_dojavadoc target/site/apidocs
+ use source && java-pkg_dosrc src/main/java
+}
diff --git a/dev-java/commons-vfs/commons-vfs-2.0-r4.ebuild b/dev-java/commons-vfs/commons-vfs-2.0-r4.ebuild
new file mode 100644
index 000000000000..f2cbfd6d3ba5
--- /dev/null
+++ b/dev-java/commons-vfs/commons-vfs-2.0-r4.ebuild
@@ -0,0 +1,56 @@
+# 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
+
+DESCRIPTION="A single API for accessing various different file systems"
+HOMEPAGE="https://commons.apache.org/vfs/"
+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"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/commons-collections:0
+ dev-java/commons-logging:0
+ dev-java/commons-net:0
+ dev-java/commons-httpclient:3
+ dev-java/jackrabbit-webdav:0
+ dev-java/jsch:0"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-incompatibility.patch
+ "${FILESDIR}"/commons-vfs-2.0-utf8.patch
+)
+
+JAVA_RESOURCE_DIRS="resources/src/main/java"
+JAVA_SRC_DIR="src/main/java"
+
+# The build.xml is generated from maven and can't run the tests properly
+# Use maven test to execute these manually but that means downloading deps from
+# the internet. Also the tests need to login to some ftp servers and samba
+# shares so I doubt they work for everyone.
+#src_test() {
+# ANT_TASKS="ant-junit" eant test
+#}
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ mkdir resources || die
+ find src/main/java -type f ! -name '*.java' ! -name 'package.html' \
+ | xargs cp --parent -t resources || die
+}
diff --git a/dev-java/commons-vfs/files/commons-vfs-2.0-incompatibility.patch b/dev-java/commons-vfs/files/commons-vfs-2.0-incompatibility.patch
index 298503ec6153..59e2f287afdd 100644
--- a/dev-java/commons-vfs/files/commons-vfs-2.0-incompatibility.patch
+++ b/dev-java/commons-vfs/files/commons-vfs-2.0-incompatibility.patch
@@ -1,6 +1,5 @@
-diff -urN a/core/src/main/java/org/apache/commons/vfs2/provider/webdav/ExceptionConverter.java b/core/src/main/java/org/apache/commons/vfs2/provider/webdav/ExceptionConverter.java
---- a/core/src/main/java/org/apache/commons/vfs2/provider/webdav/ExceptionConverter.java 2013-07-05 15:28:39.072739044 +0200
-+++ b/core/src/main/java/org/apache/commons/vfs2/provider/webdav/ExceptionConverter.java 2013-07-05 15:30:24.799404027 +0200
+--- a/src/main/java/org/apache/commons/vfs2/provider/webdav/ExceptionConverter.java 2013-07-05 15:28:39.072739044 +0200
++++ b/src/main/java/org/apache/commons/vfs2/provider/webdav/ExceptionConverter.java 2013-07-05 15:30:24.799404027 +0200
@@ -50,7 +50,7 @@
{
try
@@ -10,9 +9,8 @@ diff -urN a/core/src/main/java/org/apache/commons/vfs2/provider/webdav/Exception
if (DomUtil.matches(error, DavException.XML_ERROR, DavConstants.NAMESPACE))
{
if (DomUtil.hasChildElement(error, "exception", null))
-diff -urN a/core/src/main/java/org/apache/commons/vfs2/provider/webdav/WebdavFileObject.java b/core/src/main/java/org/apache/commons/vfs2/provider/webdav/WebdavFileObject.java
---- a/core/src/main/java/org/apache/commons/vfs2/provider/webdav/WebdavFileObject.java 2013-07-05 15:28:39.072739044 +0200
-+++ b/core/src/main/java/org/apache/commons/vfs2/provider/webdav/WebdavFileObject.java 2013-07-05 15:31:02.449403426 +0200
+--- a/src/main/java/org/apache/commons/vfs2/provider/webdav/WebdavFileObject.java 2013-07-05 15:28:39.072739044 +0200
++++ b/src/main/java/org/apache/commons/vfs2/provider/webdav/WebdavFileObject.java 2013-07-05 15:31:02.449403426 +0200
@@ -63,6 +63,7 @@
import org.apache.jackrabbit.webdav.client.methods.UncheckoutMethod;
import org.apache.jackrabbit.webdav.client.methods.VersionControlMethod;
diff --git a/dev-java/commons-vfs/files/commons-vfs-2.0-utf8.patch b/dev-java/commons-vfs/files/commons-vfs-2.0-utf8.patch
new file mode 100644
index 000000000000..199fb380c3cb
--- /dev/null
+++ b/dev-java/commons-vfs/files/commons-vfs-2.0-utf8.patch
@@ -0,0 +1,13 @@
+diff --git a/src/main/java/org/apache/commons/vfs2/FileSystemManager.java b/src/main/java/org/apache/commons/vfs2/FileSystemManager.java
+index bb8cc2a..1e26559 100644
+--- a/src/main/java/org/apache/commons/vfs2/FileSystemManager.java
++++ b/src/main/java/org/apache/commons/vfs2/FileSystemManager.java
+@@ -98,7 +98,7 @@ public interface FileSystemManager
+ FileObject resolveFile(String name, FileSystemOptions fileSystemOptions)
+ throws FileSystemException;
+
+- /** §
++ /**
+ * Locates a file by name. The name is resolved as described
+ * <a href="#naming">above</a>. That is, the name can be either
+ * an absolute URI, an absolute file name, or a relative path to
diff --git a/dev-java/commons-vfs/metadata.xml b/dev-java/commons-vfs/metadata.xml
index 4591b9d5f08b..e06660d2505b 100644
--- a/dev-java/commons-vfs/metadata.xml
+++ b/dev-java/commons-vfs/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/concurrentlinkedhashmap-lru/Manifest b/dev-java/concurrentlinkedhashmap-lru/Manifest
new file mode 100644
index 000000000000..1e9c38335e81
--- /dev/null
+++ b/dev-java/concurrentlinkedhashmap-lru/Manifest
@@ -0,0 +1 @@
+DIST concurrentlinkedhashmap-lru-1.4.2.tar.gz 245357 BLAKE2B ac743e2be30195f171154c179ac1b4a6bc6b563b080555c664cdd57fc30d083525f03a8367a891e1087623d455adef27c7ff7416b5c8523c01fc3d5ef775a185 SHA512 95f33cdeb2e3e65be0fa26a825339c4c60eb830e07895fbae731103ef14a9599137f8fad18f9b0a582ec2552ccc1391f5d0338837395e35c1d28de977614a199
diff --git a/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild b/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild
new file mode 100644
index 000000000000..4f495a844c3e
--- /dev/null
+++ b/dev-java/concurrentlinkedhashmap-lru/concurrentlinkedhashmap-lru-1.4.2.ebuild
@@ -0,0 +1,36 @@
+# 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.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A high performance version of java.util.LinkedHashMap for use as software cache"
+HOMEPAGE="https://github.com/ben-manes/concurrentlinkedhashmap"
+SRC_URI="https://github.com/ben-manes/concurrentlinkedhashmap/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN%lru}${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="dev-java/jsr305:0"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # https://github.com/ben-manes/concurrentlinkedhashmap/issues/46#issuecomment-160696203
+ rm src/main/java/com/googlecode/concurrentlinkedhashmap/ConcurrentHashMapV8.java || die
+ sed \
+ -e 's/ConcurrentHashMapV8/ConcurrentHashMap/' \
+ -i src/main/java/com/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap.java || die
+}
diff --git a/dev-java/concurrentlinkedhashmap-lru/metadata.xml b/dev-java/concurrentlinkedhashmap-lru/metadata.xml
new file mode 100644
index 000000000000..fe2d156a4574
--- /dev/null
+++ b/dev-java/concurrentlinkedhashmap-lru/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/concurrentlinkedhashmap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/constantine/Manifest b/dev-java/constantine/Manifest
deleted file mode 100644
index c6d532a7f513..000000000000
--- a/dev-java/constantine/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST constantine-0.7.tar.gz 65563 BLAKE2B 25298a086d05955e5ffaebc705ecf704cb856f6d08740c45618ebb721b2c6344f2be079bf2a4411161ff67584b92454162657adf6e3539474d0dc4500f85dfaf SHA512 2694caae29bae1a3e1d765ac02c4014bc6fd3dac8370feb5d12f43119c057fc2a2e75b0aa37eec0164bf8a82a1bafb0f41565f397b956ae53a52f7cb803508c7
diff --git a/dev-java/constantine/constantine-0.7-r1.ebuild b/dev-java/constantine/constantine-0.7-r1.ebuild
deleted file mode 100644
index 695a644d81af..000000000000
--- a/dev-java/constantine/constantine-0.7-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Provides Java values for common platform C constants"
-HOMEPAGE="https://github.com/wmeissner/jnr-constants"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- )"
-
-src_compile() {
- # ecj doesn't like some cast for some reason
- java-pkg_force-compiler javac
- java-pkg-2_src_compile
-}
-
-src_test() {
- ANT_TASKS="ant-junit4" eant test -Dlibs.junit_4.classpath="$(java-pkg_getjars --with-dependencies junit-4)"
-}
-
-src_install() {
- java-pkg_dojar dist/${PN}.jar
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/constantine/metadata.xml b/dev-java/constantine/metadata.xml
deleted file mode 100644
index 321d427eaeba..000000000000
--- a/dev-java/constantine/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">wmeissner/jnr-constants</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/conversant-disruptor/Manifest b/dev-java/conversant-disruptor/Manifest
new file mode 100644
index 000000000000..3d67f85c9b58
--- /dev/null
+++ b/dev-java/conversant-disruptor/Manifest
@@ -0,0 +1 @@
+DIST conversant-disruptor-1.2.20.tar.gz 171469 BLAKE2B 5c43a5ffad0dacf07605cab6bba2ab1d44f7204d1e24405a4f8f8b09a3edbee79bc5ae4ba28a0a8cb1440db15b6ec0143e3348c0ff42b4256c1267e87d36fefc SHA512 1e483642213a3780d24cd7b801d6d5d274df9bac075f88bdfc8026173d87e4b332e7cb6c174dc804d27670b89dc9abab3a6f93b663dfbbb3ecc4631266351f0f
diff --git a/dev-java/conversant-disruptor/conversant-disruptor-1.2.20.ebuild b/dev-java/conversant-disruptor/conversant-disruptor-1.2.20.ebuild
new file mode 100644
index 000000000000..d29f64fd9a94
--- /dev/null
+++ b/dev-java/conversant-disruptor/conversant-disruptor-1.2.20.ebuild
@@ -0,0 +1,62 @@
+# 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/conversant/disruptor/archive/1.2.20.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild conversant-disruptor-1.2.20.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.conversantmedia:disruptor:1.2.20"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Conversant Disruptor - very high throughput Java BlockingQueue"
+HOMEPAGE="https://github.com/conversant/disruptor"
+SRC_URI="https://github.com/conversant/disruptor/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.36:0
+
+DEPEND="
+ >=virtual/jdk-11:*
+ test? (
+ dev-java/slf4j-api:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/disruptor-${PV}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-api"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # Using the defaults of java-pkg-simple would exclude
+ # AbstractWaitingConditionTest and AbstractConditionTest
+ # which both are run by "mvn test".
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * -name "*Test.java" )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/conversant-disruptor/metadata.xml b/dev-java/conversant-disruptor/metadata.xml
new file mode 100644
index 000000000000..44a1037d7ce3
--- /dev/null
+++ b/dev-java/conversant-disruptor/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">conversant/disruptor</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/core-specs-alpha/Manifest b/dev-java/core-specs-alpha/Manifest
deleted file mode 100644
index 077792b32a55..000000000000
--- a/dev-java/core-specs-alpha/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST core-specs-alpha-0.1.24.tar.gz 9896 BLAKE2B cb06053d2aa77b4bbd58b612fb0f80137833e156a5136e4f53f6123d158bdbe676e9bacdfe76728b1320986589e8242c52f49a4d8922bda5374e34fe52969ddc SHA512 6ddf20bf9be36f7493104f69f4e9402fc62f49005471a967843c7cfee898c67aaf5046886db73e6b54942538beed9556d83f4582e85fd02ef4cb755cb5a18d34
-DIST core-specs-alpha-0.2.44.tar.gz 10163 BLAKE2B c81ebb08779c3db137363ffb12bc7e26d29cd67323c98430a033f639714da83bf8c9d14146c12d925094e057d3735d100e33656e9571a0a4c107dc9fb56359e9 SHA512 1a59b947c580e45a280b25d5827a174565e066dde577685ca86aa1bbd9767716991cefb8a944c7ded0f84a71f9902f7fcdb5baacc7e19180096d599a51083048
-DIST core-specs-alpha-0.2.56.tar.gz 11780 BLAKE2B 088d0b32dea7ec49ddaf0f461703762a5a877ff4028b775eb35998e6a5a3436ad57b35d7d9431b6911ca2304403e95043d375bac80080ecaf6144a77b3ebcf4c SHA512 afbfc04b9708a21ae6c6b29b8653fc62b23efcb271b973534c4b8421a7d73df3ad24bd28d7115a2fe926954dc45571de86971637736f3a494799f6f1ba1765c8
diff --git a/dev-java/core-specs-alpha/core-specs-alpha-0.1.24.ebuild b/dev-java/core-specs-alpha/core-specs-alpha-0.1.24.ebuild
deleted file mode 100644
index 1dbd7e477390..000000000000
--- a/dev-java/core-specs-alpha/core-specs-alpha-0.1.24.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-EGIT_REF="43815fc"
-
-MY_PN=${PN//-/.}
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="A Clojure library with specs to describe Clojure core macros and functions."
-HOMEPAGE="https://clojure.org/ https://github.com/clojure/core.specs.alpha"
-SRC_URI="https://github.com/clojure/${MY_PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0.1"
-KEYWORDS="~amd64 ~x86 ~x86-linux"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-EANT_TASKS="jar"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${MY_P}"
-
-src_prepare() {
- default
- cp "${FILESDIR}/build.xml" . || die
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- dodoc CONTRIBUTING.md README.md
-}
diff --git a/dev-java/core-specs-alpha/core-specs-alpha-0.2.44.ebuild b/dev-java/core-specs-alpha/core-specs-alpha-0.2.44.ebuild
deleted file mode 100644
index ebab256dc34e..000000000000
--- a/dev-java/core-specs-alpha/core-specs-alpha-0.2.44.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-EGIT_REF="d69f559"
-
-MY_PN=${PN//-/.}
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="A Clojure library with specs to describe Clojure core macros and functions."
-HOMEPAGE="https://clojure.org/ https://github.com/clojure/core.specs.alpha"
-SRC_URI="https://github.com/clojure/${MY_PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0.2"
-KEYWORDS="~amd64 ~x86 ~x86-linux"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-EANT_TASKS="jar"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${MY_P}"
-
-src_prepare() {
- default
- cp "${FILESDIR}/build.xml" . || die
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- dodoc CONTRIBUTING.md README.md
-}
diff --git a/dev-java/core-specs-alpha/core-specs-alpha-0.2.56.ebuild b/dev-java/core-specs-alpha/core-specs-alpha-0.2.56.ebuild
deleted file mode 100644
index 64ba20033302..000000000000
--- a/dev-java/core-specs-alpha/core-specs-alpha-0.2.56.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-EGIT_REF="053d789"
-
-MY_PN=core.specs.alpha
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="A Clojure library with specs to describe Clojure core macros and functions"
-HOMEPAGE="https://clojure.org/ https://github.com/clojure/core.specs.alpha"
-SRC_URI="https://github.com/clojure/core.specs.alpha/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0.2"
-KEYWORDS="~amd64 ~x86 ~x86-linux"
-
-RDEPEND=">=virtual/jre-1.8:*"
-
-DEPEND="
- dev-java/ant-core:0
- >=virtual/jdk-1.8:*
-"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-DOCS=( CONTRIBUTING.md LICENSE README.md )
-
-EANT_TASKS="jar"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${MY_P}"
-
-src_prepare() {
- default
- rm -r CHANGES.md epl-v10.html || die # epl-10.html is the LICENSE in html format
- cp "${FILESDIR}/build.xml" . || die
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- einstalldocs
-}
diff --git a/dev-java/core-specs-alpha/files/build.xml b/dev-java/core-specs-alpha/files/build.xml
deleted file mode 100644
index 0499525e8817..000000000000
--- a/dev-java/core-specs-alpha/files/build.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<project name="spec.alpha" default="package" basedir=".">
- <property name="maven.build.finalName" value="core.specs.alpha-SNAPSHOT"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/clojure"/>
-
- <!-- clean -->
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- build -->
- <target name="build" description="Copy the files">
- <mkdir dir="${maven.build.outputDir}"/>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.srcDir.0}"/>
- </copy>
- </target>
-
- <!-- package -->
- <target name="package" depends="build" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- jar -->
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-</project>
diff --git a/dev-java/core-specs-alpha/metadata.xml b/dev-java/core-specs-alpha/metadata.xml
deleted file mode 100644
index 4e34b7026845..000000000000
--- a/dev-java/core-specs-alpha/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>tgbugs@gmail.com</email>
- <name>Tom Gillespie</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <upstream>
- <remote-id type="github">clojure/core.specs.alpha</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/cortado/cortado-0.6.0-r1.ebuild b/dev-java/cortado/cortado-0.6.0-r1.ebuild
deleted file mode 100644
index fe8148871378..000000000000
--- a/dev-java/cortado/cortado-0.6.0-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Multimedia framework for Java written by Fluendo"
-HOMEPAGE="https://www.theora.org/cortado/"
-SRC_URI="https://downloads.xiph.org/releases/cortado/${P}.tar.gz"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-EANT_BUILD_TARGET="stripped"
-
-src_prepare() {
- echo "#!/bin/sh" > scripts/get-revision || die
- echo "echo ${PV}" >> scripts/get-revision || die
-}
-
-src_install() {
- java-pkg_newjar "output/dist/applet/${PN}-ovt-stripped-${PV}.jar"
- dodoc ChangeLog HACKING NEWS README RELEASE TODO
-}
diff --git a/dev-java/cortado/cortado-0.6.0-r2.ebuild b/dev-java/cortado/cortado-0.6.0-r2.ebuild
new file mode 100644
index 000000000000..903bdfbfd5bf
--- /dev/null
+++ b/dev-java/cortado/cortado-0.6.0-r2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Multimedia framework for Java written by Fluendo"
+HOMEPAGE="https://www.theora.org/cortado/"
+SRC_URI="https://downloads.xiph.org/releases/cortado/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+# Package 'sun.audio' seems to have moved to 'javax.sound'.
+# More work would be needed. Presently we restrict to jdk:1.8
+DEPEND="virtual/jdk:1.8"
+RDEPEND=">=virtual/jre-1.8:*"
+
+EANT_BUILD_TARGET="stripped"
+
+src_prepare() {
+ default
+ cat > scripts/get-revision <<-EOF || die
+ #!/bin/sh
+ echo ${PV}
+ EOF
+
+# sed -e '/import/s/sun.audio/javax.sound/' \
+# -i src/com/fluendo/plugin/AudioSinkSA.java || die
+}
+
+src_install() {
+ java-pkg_newjar "output/dist/applet/${PN}-ovt-stripped-${PV}.jar"
+ dodoc ChangeLog HACKING NEWS README RELEASE TODO
+}
diff --git a/dev-java/cortado/metadata.xml b/dev-java/cortado/metadata.xml
index 8dfa9f9b8158..d57417073a4e 100644
--- a/dev-java/cortado/metadata.xml
+++ b/dev-java/cortado/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/coursier-bin/Manifest b/dev-java/coursier-bin/Manifest
new file mode 100644
index 000000000000..0876b79d106f
--- /dev/null
+++ b/dev-java/coursier-bin/Manifest
@@ -0,0 +1,3 @@
+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.7.ebuild b/dev-java/coursier-bin/coursier-bin-2.1.7.ebuild
new file mode 100644
index 000000000000..4c77d05f1d13
--- /dev/null
+++ b/dev-java/coursier-bin/coursier-bin-2.1.7.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 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/coursier-bin/coursier-bin-2.1.8.ebuild b/dev-java/coursier-bin/coursier-bin-2.1.8.ebuild
new file mode 100644
index 000000000000..536fb0da7de1
--- /dev/null
+++ b/dev-java/coursier-bin/coursier-bin-2.1.8.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/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/coursier-bin/metadata.xml b/dev-java/coursier-bin/metadata.xml
new file mode 100644
index 000000000000..17a908b541f0
--- /dev/null
+++ b/dev-java/coursier-bin/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type='person'>
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">coursier/coursier</remote-id>
+ <bugs-to>https://github.com/coursier/coursier/issues</bugs-to>
+ <changelog>https://github.com/coursier/coursier/releases</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/cpptasks/cpptasks-1.0_beta5-r2.ebuild b/dev-java/cpptasks/cpptasks-1.0_beta5-r2.ebuild
new file mode 100644
index 000000000000..4908c223c0ce
--- /dev/null
+++ b/dev-java/cpptasks/cpptasks-1.0_beta5-r2.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 examples source test"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Ant-tasks to compile various source languages and produce executables"
+HOMEPAGE="https://ant-contrib.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/ant-contrib/ant-contrib/${P/_/-}/${P/_beta/b}.tar.gz"
+S="${WORKDIR}/${P/_beta/b}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14:0
+ dev-java/xerces:2
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ >=dev-java/ant-1.10.14:0[junit]
+ dev-java/junit:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+JAVA_ANT_CLASSPATH_TAGS="javac javadoc"
+
+EANT_BUILD_TARGET="jars"
+EANT_TEST_TARGET="run-tests -Djunit-available=true"
+EANT_DOC_TARGET="javadocs -Dbuild.javadocs=build/api"
+
+src_prepare() {
+ java-pkg_clean
+ use test && eapply "${FILESDIR}/${P}-test-classpath.patch"
+ java-pkg-2_src_prepare
+}
+
+src_test() {
+ java-pkg-2_src_test
+}
+
+src_install() {
+ java-pkg_dojar target/lib/${PN}.jar
+
+ java-pkg_register-ant-task
+
+ dodoc NOTICE
+ use doc && java-pkg_dojavadoc build/api
+ use examples && java-pkg_doexamples src/samples/*
+ use source && java-pkg_dosrc src/main/java/*
+}
diff --git a/dev-java/cpptasks/cpptasks-1.0_beta5.ebuild b/dev-java/cpptasks/cpptasks-1.0_beta5.ebuild
deleted file mode 100644
index c0dade630289..000000000000
--- a/dev-java/cpptasks/cpptasks-1.0_beta5.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Ant-tasks to compile various source languages and produce executables"
-HOMEPAGE="http://ant-contrib.sourceforge.net/"
-SRC_URI="mirror://sourceforge/ant-contrib/ant-contrib/${P/_/-}/${P/_beta/b}.tar.gz"
-S="${WORKDIR}/${P/_beta/b}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="
- dev-java/ant-core:0
- dev-java/xerces:2"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-EANT_BUILD_TARGET="jars"
-EANT_DOC_TARGET="javadocs -Dbuild.javadocs=build/api"
-EANT_GENTOO_CLASSPATH="ant-core,xerces-2"
-
-src_prepare() {
- default
- find -name '*.jar' -exec rm -v {} + || die
-}
-
-src_install() {
- java-pkg_dojar target/lib/${PN}.jar
-
- java-pkg_register-ant-task
-
- dodoc NOTICE
- use doc && java-pkg_dojavadoc build/api
- use examples && java-pkg_doexamples src/samples/*
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/cpptasks/files/cpptasks-1.0_beta5-test-classpath.patch b/dev-java/cpptasks/files/cpptasks-1.0_beta5-test-classpath.patch
new file mode 100644
index 000000000000..02754ce7f1ed
--- /dev/null
+++ b/dev-java/cpptasks/files/cpptasks-1.0_beta5-test-classpath.patch
@@ -0,0 +1,33 @@
+From 732e296e780633e3dce1bace28a4abae04f506c7 Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Sat, 15 Jan 2022 10:58:28 -0800
+Subject: [PATCH] Prevent test classpath from being overwritten by
+ java-ant-2.eclass
+
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ build.xml | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/build.xml b/build.xml
+index ed3a0f7..24a3114 100644
+--- a/build.xml
++++ b/build.xml
+@@ -176,8 +176,12 @@
+ deprecation="false"
+ target="${javac.target}"
+ source="${javac.source}"
+- optimize="false"
+- classpath="${build.lib}/${name}.jar;${java.class.path}"/>
++ optimize="false">
++ <classpath>
++ <pathelement location="${build.lib}/${name}.jar" />
++ <pathelement location="${java.class.path}" />
++ </classpath>
++ </javac>
+ <jar jarfile="${tests.build.lib}/${name}_test.jar">
+ <fileset dir="." includes="NOTICE LICENSE"/>
+ <fileset dir="${tests.build.classes}"/>
+--
+2.34.1
+
diff --git a/dev-java/cpptasks/metadata.xml b/dev-java/cpptasks/metadata.xml
index 5c1224a74c63..3b648dd5b2f1 100644
--- a/dev-java/cpptasks/metadata.xml
+++ b/dev-java/cpptasks/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/cssparser/Manifest b/dev-java/cssparser/Manifest
deleted file mode 100644
index b0680c3eeb80..000000000000
--- a/dev-java/cssparser/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST cssparser-0.9.25.jar 256517 BLAKE2B 5281f70dd4e293aaf4aad44efc46107372756b03962057df8701947ec71478c40ace0728099122a0166e902a00075d7d89e6e93b50d8bc16d7f563a3553ad9c2 SHA512 94dffa2ff1edc01c183d2de4f77f106a9409ec5d1e68e9af4f3cd427b76c9d80c942a4d312c3e40ef5c8bd444975eedba173bf0eb730cf517a818dd69421a7bb
-DIST cssparser-0.9.26.jar 256518 BLAKE2B 9f92aa366711b91ca90e1efa48e05c15e9ed877f8ae5346506bb727373ea334c6fec58b67f5df4e7e01467b4d1aa571ef47c8f2ae83e7fada4bc6d9d100e1d78 SHA512 c8e9c3c1cdf8d6fc29227693f28a11397b63cc46cf88083298e0613cc7f79c558dbc71760799fc214aecc5ed8ccdd966f0518085abe08deacf088b445579a8b8
diff --git a/dev-java/cssparser/cssparser-0.9.25.ebuild b/dev-java/cssparser/cssparser-0.9.25.ebuild
deleted file mode 100644
index 6b38a3223d5f..000000000000
--- a/dev-java/cssparser/cssparser-0.9.25.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="API for parsing CSS 2 in Java"
-HOMEPAGE="http://cssparser.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-sources.jar -> ${P}.jar"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/sac:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-JAVA_GENTOO_CLASSPATH="sac"
diff --git a/dev-java/cssparser/cssparser-0.9.26.ebuild b/dev-java/cssparser/cssparser-0.9.26.ebuild
deleted file mode 100644
index 6b38a3223d5f..000000000000
--- a/dev-java/cssparser/cssparser-0.9.26.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="API for parsing CSS 2 in Java"
-HOMEPAGE="http://cssparser.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-sources.jar -> ${P}.jar"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/sac:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-JAVA_GENTOO_CLASSPATH="sac"
diff --git a/dev-java/cssparser/metadata.xml b/dev-java/cssparser/metadata.xml
deleted file mode 100644
index 96a6c7e3b972..000000000000
--- a/dev-java/cssparser/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">cssparser</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/dict4j/Manifest b/dev-java/dict4j/Manifest
deleted file mode 100644
index cf8272e71124..000000000000
--- a/dev-java/dict4j/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dict4j-1.1.jar 50269 BLAKE2B 70f7a46549384a063e1240bdb375a8c12e81c6a07a4c15bc1abcdb603ac89a2157a2cc2561960e4ab955d079dab3419708ae89e7f59bed51cc1da53649e52714 SHA512 35a6d77d13effa8d5e59ed2c03ff5700ccf2d91673b2bcf420a4f216176ca521dff741ff6660547823d16d06df1dcd2d44be1e90ce293a83ad9fa649b5caf7c6
diff --git a/dev-java/dict4j/dict4j-1.1.ebuild b/dev-java/dict4j/dict4j-1.1.ebuild
deleted file mode 100644
index 70e12c0b2ae4..000000000000
--- a/dev-java/dict4j/dict4j-1.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Dict protocol implementation in Java"
-HOMEPAGE="http://dict4j.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.jar -> ${P}.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-JAVA_SRC_DIR="net"
-JAVA_ENCODING="ISO-8859-1"
diff --git a/dev-java/dict4j/metadata.xml b/dev-java/dict4j/metadata.xml
deleted file mode 100644
index 182d422e97da..000000000000
--- a/dev-java/dict4j/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">dict4j</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/disruptor/Manifest b/dev-java/disruptor/Manifest
deleted file mode 100644
index 21ef1af91752..000000000000
--- a/dev-java/disruptor/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST disruptor-3.2.0-sources.jar 74768 BLAKE2B 3da42b173576bd21d39ad2d22ce04475d1a9bf2133311eafb8e64faf2b6f3708d9a791e7c386b17bcb35c9551982cc30000eb069ae47edde030f662d6c90faec SHA512 9ad2ba752860d68e3a08c46910cd96c2d43a24860cda1fe9f58f86e3de57a90c2abded43a8457a2751a9199fabe40370bbd9ccef0e982913ae8d2127a92e6b2e
diff --git a/dev-java/disruptor/disruptor-3.2.0.ebuild b/dev-java/disruptor/disruptor-3.2.0.ebuild
deleted file mode 100644
index 48b4516d9e18..000000000000
--- a/dev-java/disruptor/disruptor-3.2.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Performance Inter-Thread Messaging Library"
-HOMEPAGE="http://lmax-exchange.github.io/disruptor/"
-SRC_URI="http://repo1.maven.org/maven2/com/lmax/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/disruptor/metadata.xml b/dev-java/disruptor/metadata.xml
deleted file mode 100644
index 3e80bcd70e82..000000000000
--- a/dev-java/disruptor/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">LMAX-Exchange/disruptor</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/dnsjava/Manifest b/dev-java/dnsjava/Manifest
deleted file mode 100644
index 17ad2066bbe7..000000000000
--- a/dev-java/dnsjava/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dnsjava-2.1.8.tar.gz 460532 BLAKE2B 761e99643710aca3aebc50972504284c388685dee12b3fc1fcbe6e4a8698762833dab725ff61395aee2b0292d0f71004eb2247c899c87d01dcc938e4283d31c1 SHA512 d38be6d52b275906b66468cd375ebd46c0d669de2fd06a50253631589a7dd6fbf4e92d4b20778dacd9f19cd489df013e4d42bc16c935581dcaa370ac9ce3c55b
diff --git a/dev-java/dnsjava/dnsjava-2.1.8.ebuild b/dev-java/dnsjava/dnsjava-2.1.8.ebuild
deleted file mode 100644
index 7b127612cd30..000000000000
--- a/dev-java/dnsjava/dnsjava-2.1.8.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="An implementation of DNS in Java"
-HOMEPAGE="http://www.dnsjava.org/"
-SRC_URI="http://www.dnsjava.org/download/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-RESTRICT="test"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/junit:0
- dev-java/ant-junit:0
- )"
-
-EANT_BUILD_TARGET="jar"
-EANT_DOC_TARGET="docs"
-EANT_TEST_TARGET="run_tests"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_TEST_GENTOO_CLASSPATH="junit"
-EANT_GENTOO_CLASSPATH_EXTRA="${P}.jar"
-
-src_prepare() {
- default
- java-pkg_clean
- #epatch "${FILESDIR}"/*.patch
-}
-
-src_install() {
- java-pkg_newjar "${P}.jar"
-
- einstalldocs
- use doc && java-pkg_dojavadoc doc
- use source && java-pkg_dosrc org/
-}
-
-src_test() {
- EANT_ANT_TASKS="ant-junit" java-pkg-2_src_test
-}
diff --git a/dev-java/dnsjava/files/2.1.6-no-network-tests.patch b/dev-java/dnsjava/files/2.1.6-no-network-tests.patch
deleted file mode 100644
index 1ea9d3929db0..000000000000
--- a/dev-java/dnsjava/files/2.1.6-no-network-tests.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff --git a/dnsjava-2.1.6/tests/org/xbill/DNS/AddressTest.java b/dnsjava-2.1.6/tests/org/xbill/DNS/AddressTest.java
-index 451b262..7ce8029 100644
---- a/dnsjava-2.1.6/tests/org/xbill/DNS/AddressTest.java
-+++ b/dnsjava-2.1.6/tests/org/xbill/DNS/AddressTest.java
-@@ -272,16 +272,19 @@ public class AddressTest extends TestCase
-
- public void test_getByName() throws UnknownHostException
- {
-+/*
- InetAddress out = Address.getByName("128.145.198.231");
- assertEquals("128.145.198.231", out.getHostAddress());
-
- out = Address.getByName("serl.cs.colorado.edu");
- assertEquals("epic.cs.colorado.edu", out.getCanonicalHostName());
- assertEquals("128.138.201.71", out.getHostAddress());
-+*/
- }
-
- public void test_getByName_invalid() throws UnknownHostException
- {
-+/*
- try {
- Address.getByName("example.invalid");
- fail("UnknownHostException not thrown");
-@@ -294,10 +297,12 @@ public class AddressTest extends TestCase
- }
- catch( UnknownHostException e ){
- }
-+*/
- }
-
- public void test_getAllByName() throws UnknownHostException
- {
-+/*
- InetAddress[] out = Address.getAllByName("128.145.198.231");
- assertEquals(1, out.length);
- assertEquals("128.145.198.231", out[0].getHostAddress());
-@@ -353,5 +358,6 @@ public class AddressTest extends TestCase
- }
- catch( UnknownHostException e ){
- }
-+*/
- }
- }
diff --git a/dev-java/dnsjava/metadata.xml b/dev-java/dnsjava/metadata.xml
deleted file mode 100644
index 748cb0beb3ab..000000000000
--- a/dev-java/dnsjava/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- dnsjava is an implementation of DNS in Java. It supports all defined record
- ypes (including the DNSSEC types), and unknown types. It can be used for queries,
- zone transfers, and dynamic updates. It includes a cache which can be used by
- clients, and a minimal implementation of a server. It supports TSIG authenticated
- messages, partial DNSSEC verification, and EDNS0.
- </longdescription>
- <upstream>
- <remote-id type="sourceforge">https://sourceforge.net/projects/dnsjava/</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/dom4j/Manifest b/dev-java/dom4j/Manifest
index a5c57e592008..5e15c8c800a1 100644
--- a/dev-java/dom4j/Manifest
+++ b/dev-java/dom4j/Manifest
@@ -1,2 +1,2 @@
-DIST dom4j-1.6.1-java5.patch.bz2 2900 BLAKE2B cdd7dc901f5292af3ef7f0ea200c3d22bbc8c0adc27606da3c8fbadc44625b114c995321723dca331f0b23d5248e1f9177f0def2f4138eebcbd4aaac0495d4dd SHA512 38da606d77b62976366cd089e5194a922e348ec396e7b9af4dceb0a536c47f66e0900cfa59c91df04aade6076630077a8f88c713b9c20224d69316109b293a96
-DIST dom4j-1.6.1.tar.gz 9687211 BLAKE2B 3daa3729ea071aa87c7c1e1e2b91f1635109774dd2bd564a85265a0286f1369373084b945409d9d5213d66a7e14224033d42c58d80125b7982eef8961eb29248 SHA512 95c5a7105a81734f77b4bf27f8bb0af116bf43d8ad5297a0902a6687a54109a87dffe2953cf430d14947cdaa590aa0fdf083b46a91d1d98d48431cfae4459d94
+DIST dom4j-2.1.4.tar.gz 566090 BLAKE2B 3078389c947d6915f001a6b59e1398c037d9b696186a9386a00f79b6aec33093e1786903eff35d4d9766345c3fa4f644dd756b431f4f9772b988038d8b48ce17 SHA512 bb735222c8b7dd3788bd8be3b265814d8f3133d42b750a2911464c92dacff1172067d3eedd6736014879ea9e54af32d46a45224522e6a6f2607d25c0fc9e6f38
+DIST jaxen-1.2.0.jar 232455 BLAKE2B 6bd16e8ac34f3af1b9d61218dc6a29862178516cfbb98c6834bf6db846b537e44b48db6ff578b3d67d32c3e2b142e44440a2fdcc6dc06a6ea427b04e6bf1f370 SHA512 cad582fc12d0741e9e6fd7e0cf80a50feb04f5ef42043df96f8a5b78476c77695d8b43836d2241f76b35676ea759921edd25eaeb2c04ec916eb138aa2901ce5f
diff --git a/dev-java/dom4j/dom4j-1.6.1-r8.ebuild b/dev-java/dom4j/dom4j-1.6.1-r8.ebuild
deleted file mode 100644
index cc77ae8243da..000000000000
--- a/dev-java/dom4j/dom4j-1.6.1-r8.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="XML Java library"
-HOMEPAGE="https://dom4j.github.io/"
-SRC_URI="
- mirror://sourceforge/dom4j/${P}.tar.gz
- mirror://gentoo/${P}-java5.patch.bz2"
-
-LICENSE="dom4j"
-SLOT="1"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-CDEPEND="
- dev-java/xpp2:0
- dev-java/xpp3:0
- dev-java/xsdlib:0
- dev-java/relaxng-datatype:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-# restricted to jdk 1.8 because it needs javax.xml.bind
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/xalan:0
- dev-java/ant-junit:0
- dev-java/junitperf:0
- )
- virtual/jdk:1.8"
-
-PDEPEND="dev-java/jaxen:1.1"
-
-# Add missing methods to compile on Java 5 #137970
-PATCHES=( "${WORKDIR}/${P}-java5.patch" )
-
-JAVA_RM_FILES=(
- src/test/org/dom4j/bean/BeansTest.java
- src/test/org/dom4j/io/StaxTest.java
- src/test/org/dom4j/rule/RuleTest.java
- src/test/org/dom4j/ThreadingTest.java
- src/test/org/dom4j/io/XPP3ReaderTest.java
-)
-
-src_prepare() {
- default
-
- # Circular deps with jaxen #212993
- find -name '*.jar' -! -name jaxen-1.1-beta-6.jar -exec rm -v {} + || die
-
- rm -v "${JAVA_RM_FILES[@]}" || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-
-EANT_BUILD_TARGET="clean package"
-EANT_GENTOO_CLASSPATH="relaxng-datatype,xpp2,xpp3,xsdlib"
-EANT_GENTOO_CLASSPATH_EXTRA="lib/jaxen-1.1-beta-6.jar"
-EANT_EXTRA_ARGS="-Dbuild.javadocs=build/doc/api"
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junitperf,xalan"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar "build/${PN}.jar"
- java-pkg_register-dependency jaxen-1.1
- use doc && java-pkg_dojavadoc build/doc/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/dom4j/dom4j-1.6.1-r9.ebuild b/dev-java/dom4j/dom4j-1.6.1-r9.ebuild
deleted file mode 100644
index 717d7ddf29b2..000000000000
--- a/dev-java/dom4j/dom4j-1.6.1-r9.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="XML Java library"
-HOMEPAGE="https://dom4j.github.io/"
-SRC_URI="
- mirror://sourceforge/dom4j/${P}.tar.gz
- mirror://gentoo/${P}-java5.patch.bz2"
-
-LICENSE="dom4j"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-CDEPEND="
- dev-java/xpp2:0
- dev-java/xpp3:0
- dev-java/xsdlib:0
- dev-java/relaxng-datatype:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-# restricted to jdk 1.8 because it needs javax.xml.bind
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/xalan:0
- dev-java/ant-junit:0
- dev-java/junitperf:0
- )
- virtual/jdk:1.8"
-
-PDEPEND="dev-java/jaxen:1.2"
-
-# Add missing methods to compile on Java 5 #137970
-PATCHES=( "${WORKDIR}/${P}-java5.patch" )
-
-JAVA_RM_FILES=(
- src/test/org/dom4j/bean/BeansTest.java
- src/test/org/dom4j/io/StaxTest.java
- src/test/org/dom4j/rule/RuleTest.java
- src/test/org/dom4j/ThreadingTest.java
- src/test/org/dom4j/io/XPP3ReaderTest.java
-)
-
-src_prepare() {
- default
-
- # Circular deps with jaxen #212993
- find -name '*.jar' -! -name jaxen-1.1-beta-6.jar -exec rm -v {} + || die
-
- rm -v "${JAVA_RM_FILES[@]}" || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-
-EANT_BUILD_TARGET="clean package"
-EANT_GENTOO_CLASSPATH="relaxng-datatype,xpp2,xpp3,xsdlib"
-EANT_GENTOO_CLASSPATH_EXTRA="lib/jaxen.jar"
-EANT_EXTRA_ARGS="-Dbuild.javadocs=build/doc/api"
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junitperf,xalan"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar "build/${PN}.jar"
- java-pkg_register-dependency jaxen-1.2
- use doc && java-pkg_dojavadoc build/doc/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/dom4j/dom4j-2.1.4.ebuild b/dev-java/dom4j/dom4j-2.1.4.ebuild
new file mode 100644
index 000000000000..1d44328e98cd
--- /dev/null
+++ b/dev-java/dom4j/dom4j-2.1.4.ebuild
@@ -0,0 +1,59 @@
+# 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.dom4j:dom4j:2.1.4"
+JAVA_TESTING_FRAMEWORKS="testng"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="flexible XML framework for Java"
+HOMEPAGE="https://dom4j.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/version-${PV}.tar.gz -> ${P}.tar.gz
+ https://repo1.maven.org/maven2/jaxen/jaxen/1.2.0/jaxen-1.2.0.jar"
+S="${WORKDIR}/${PN}-version-${PV}"
+
+LICENSE="dom4j"
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+IUSE="jaxen"
+
+CP_DEPEND="
+ dev-java/jaxb-api:2
+ dev-java/xpp2:0
+ dev-java/xpp3:0
+ dev-java/xsdlib:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ jaxen? ( dev-java/jaxen:1.2[dom4j] )
+ test? ( dev-java/xerces:2 )
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+ jaxen? ( dev-java/jaxen:1.2[dom4j] )
+"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.dom4j"
+
+# dom4j has a cyclic dependency on jaxen[dom4j].
+# The downloaded jaxen-1.2.0.jar is provided for compilation only.
+# No prebuilt software is actually installed onto the system.
+JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/jaxen-1.2.0.jar"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="testng,xerces-2"
+JAVA_TEST_RESOURCE_DIRS="xml"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ..
+
+ if use jaxen; then
+ JAVA_GENTOO_CLASSPATH+=" jaxen-1.2"
+ fi
+}
diff --git a/dev-java/dom4j/metadata.xml b/dev-java/dom4j/metadata.xml
index 2d873897cf3c..e550b3db7a3d 100644
--- a/dev-java/dom4j/metadata.xml
+++ b/dev-java/dom4j/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <use>
+ <flag name="jaxen">Includes org.jaxen.dom4j package</flag>
+ </use>
<longdescription>
Easy to use, open source library for working with XML, XPath and
XSLT on the Java platform using the Java Collections Framework
diff --git a/dev-java/dynalang/Manifest b/dev-java/dynalang/Manifest
deleted file mode 100644
index c39262e8cf24..000000000000
--- a/dev-java/dynalang/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dynalang-mop-0.4.tgz 227338 BLAKE2B 91b3316c1c96722d9cc08ecc3894b539626171f7476001ced9972eaec6e49375cc0b283f0fedc1e93624162bde4be85858bef504f5191b6051472f60bf443fb5 SHA512 b7501fbc44ae29e10cf3eb55002420d88d83226f790861f43f59aaddc0cd1bd5021fed207d831d5c3adb14ceab01dc17ff53cd31cb6a93c0fc00240b8e3e9797
diff --git a/dev-java/dynalang/dynalang-0.4-r1.ebuild b/dev-java/dynalang/dynalang-0.4-r1.ebuild
deleted file mode 100644
index cb82aae1d8dd..000000000000
--- a/dev-java/dynalang/dynalang-0.4-r1.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-JAVA_PKG_BSFIX="off"
-
-inherit java-pkg-2 java-ant-2
-
-MY_P="${PN}-mop-${PV}"
-
-DESCRIPTION="Library of interoperable metaobject protocols for dynamic languages"
-HOMEPAGE="https://sourceforge.net/projects/dynalang/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/${MY_P}.tgz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64"
-
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/emma:0
- dev-java/junit:0
- dev-java/ant-junit:0
- )"
-
-S="${WORKDIR}/${MY_P}"
-
-# This one test fails.
-JAVA_RM_FILES=(
- testsrc/org/dynalang/mop/impl/test/TestStandardMetaobjectProtocolFactory.java
-)
-
-java_prepare() {
- cp "${FILESDIR}/build.xml" build.xml || die
-
- find . -iname '*.jar' -delete
-
- sed -i -e '/ivy:retrieve/d' build.xml || die
- sed -i -e 's_\.\./ivy_ivy_' build.xml || die
- sed -i -e \
- 's/clazz.getConstructors/(Constructor<T>[])clazz.getConstructors/' \
- src/org/dynalang/mop/beans/BeanMetaobjectProtocol.java || die
-
- mkdir -p build/lib/test
-}
-
-EANT_DOC_TARGET="doc"
-
-src_test() {
- java-pkg_jar-from --into build/lib/test emma,junit
-
- ANT_TASKS="ant-junit" eant test
-}
-
-src_install() {
- java-pkg_newjar "build/${MY_P}.jar"
- use doc && java-pkg_dojavadoc build/doc/javadoc
- use source && java-pkg_dosrc src/org
-}
diff --git a/dev-java/dynalang/files/build.xml b/dev-java/dynalang/files/build.xml
deleted file mode 100644
index d8e5e19954f0..000000000000
--- a/dev-java/dynalang/files/build.xml
+++ /dev/null
@@ -1,179 +0,0 @@
-<project name="org.dynalang.mop" basedir=".">
-<!--
- Copyright 2007 Attila Szegedi
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
- <property name="project.name" value="JVM Dynamic Languages Metaobject Protocol"/>
- <property name="artifact.name" value="dynalang-mop"/>
- <property name="revision" value="0.4"/>
- <property name="build.dir" location="build"/>
-
- <target name="clean">
- <mkdir dir="${build.dir}"/>
- <delete dir="${build.dir}"/>
- </target>
-
- <target name="resolve">
- </target>
-
- <path id="compile.classpath">
- <fileset dir="build/lib/default"/>
- </path>
-
- <target name="compile" depends="resolve">
- <mkdir dir="build/lib/default"/>
- <property name="classes.dir" location="${build.dir}/classes"/>
- <mkdir dir="${classes.dir}"/>
- <javac srcdir="src" destdir="${classes.dir}" deprecation="off"
- debug="on" optimize="off" target="1.5" source="1.5"
- classpathref="compile.classpath"/>
- <copy toDir="${classes.dir}">
- <fileset dir="src"
- excludes="**/CVS/**,**/*.bak,**/*.java,**/*.jj,**/package.html,overview.html"/>
- </copy>
- </target>
-
- <target name="jar" depends="compile">
- <property name="jarfile" location="build/${artifact.name}-${revision}.jar"/>
- <jar destfile="${jarfile}" basedir="${classes.dir}">
- <manifest>
- <attribute name="Implementation-Vendor" value="Attila Szegedi"/>
- <attribute name="Implementation-Version" value="${revision}"/>
- <attribute name="Implementation-Title" value="${project.name}"/>
- <attribute name="Implementation-URL" value="http://sourceforge.net/projects/dynalang"/>
- </manifest>
- </jar>
- </target>
-
- <target depends="" name="doc">
- <mkdir dir="${build.dir}/doc/javadoc"/>
- <delete includeEmptyDirs="yes">
- <fileset dir="${build.dir}/doc/javadoc" includes="**/*" />
- </delete>
- <javadoc author="true"
- destdir="${build.dir}/doc/javadoc"
- doctitle="${project.name} ${revision}"
- packagenames="org.dynalang.*"
- sourcepath="src"
- version="true"
- windowtitle="${project.name} ${revision} API"
- overview="src/overview.html"
- use="true">
- </javadoc>
- <copy todir="${build.dir}/doc">
- <fileset dir="src/doc" includes="**/*"/>
- </copy>
- </target>
-
- <target name="coverage-instrument" depends="compile">
- <property name="coverage.dir" location="${build.dir}/coverage"/>
- <property name="coverage.classes.dir" location="${build.dir}/coverage/classes"/>
- <mkdir dir="${coverage.classes.dir}"/>
- <path id="emma.lib">
- <pathelement location="build/lib/test/emma.jar" />
- <pathelement location="build/lib/test/emma_ant.jar" />
- </path>
- <taskdef resource="emma_ant.properties" classpathref="emma.lib" />
- <property name="coverage.instrumentationfile" location="${coverage.dir}/instrumentation"/>
- <emma enabled="true">
- <instr
- instrpath="${classes.dir}" outdir="${coverage.classes.dir}"
- outfile="${coverage.instrumentationfile}" mode="copy"/>
- </emma>
- <copy todir="${coverage.classes.dir}">
- <fileset dir="src" excludes="**/*.java"/>
- </copy>
- <copy todir="${coverage.classes.dir}">
- <fileset dir="${classes.dir}"/>
- </copy>
- <property name="coverage.outfile" location="${coverage.dir}/coverage"/>
- </target>
-
- <target name="test-compile" depends="compile">
- <property name="test.classes.dir" location="${build.dir}/test/classes"/>
- <mkdir dir="${test.classes.dir}"/>
- <javac srcdir="testsrc" destdir="${test.classes.dir}" deprecation="off"
- debug="on" optimize="off" target="1.5" source="1.5">
- <classpath>
- <pathelement path="${classes.dir}" />
- <pathelement path="build/lib/test/junit.jar" />
- </classpath>
- </javac>
- <copy toDir="${test.classes.dir}">
- <fileset dir="testsrc"
- excludes="**/CVS/**,**/*.bak,**/*.java,**/*.jj,**/package.html"/>
- </copy>
- </target>
-
- <target name="test-run" depends="test-compile, coverage-instrument">
- <junit printsummary="on" fork="true" forkmode="once"
- showoutput="true" haltonerror="true" haltonfailure="true">
- <sysproperty key="emma.coverage.out.file" value="${coverage.outfile}"/>
- <classpath>
- <pathelement path="${coverage.classes.dir}" />
- <pathelement path="${test.classes.dir}" />
- <pathelement path="build/lib/test/emma.jar"/>
- <pathelement path="build/lib/test/junit.jar"/>
- </classpath>
- <batchtest todir="build/test">
- <fileset dir="${test.classes.dir}" includes="**/Test*.class"/>
- </batchtest>
- <formatter type="plain" usefile="false" />
- <formatter type="xml"/>
- </junit>
- <mkdir dir="build/test/report"/>
- <junitreport todir="build/test">
- <fileset dir="build/test" includes="TEST-*.xml"/>
- <report todir="build/test/report"/>
- </junitreport>
- </target>
-
- <target name="test" depends="test-run">
- <property name="coverage.report.dir" location="${build.dir}/coverage/report"/>
- <mkdir dir="${coverage.report.dir}"/>
- <delete dir="${coverage.report.dir}"/>
- <mkdir dir="${coverage.report.dir}"/>
- <emma enabled="true">
- <report>
- <fileset dir="${basedir}">
- <include name="build/coverage/instrumentation"/>
- <include name="build/coverage/coverage"/>
- </fileset>
- <sourcepath>
- <dirset dir="${basedir}">
- <include name="src"/>
- </dirset>
- </sourcepath>
- <html outfile="${coverage.report.dir}/index.html"/>
- </report>
- </emma>
- </target>
-
- <target name="dist" depends="clean,test-run,jar,doc">
- <mkdir dir="build/${artifact.name}-${revision}"/>
- <copy todir="build/${artifact.name}-${revision}">
- <fileset dir="." excludes="build/**/*"/>
- </copy>
- <copy todir="build/${artifact.name}-${revision}">
- <fileset dir="."
- includes="
- build/doc/**/*
- build/${artifact.name}-${revision}.jar"
- />
- </copy>
- <tar destfile="build/${artifact.name}-${revision}.tgz"
- compression="gzip" basedir="build"
- includes="${artifact.name}-${revision}/**/*"/>
- </target>
-</project>
diff --git a/dev-java/dynalang/metadata.xml b/dev-java/dynalang/metadata.xml
deleted file mode 100644
index 47aef07ebea6..000000000000
--- a/dev-java/dynalang/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">dynalang</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/easymock/Manifest b/dev-java/easymock/Manifest
index d534942235a7..36d55f52bdad 100644
--- a/dev-java/easymock/Manifest
+++ b/dev-java/easymock/Manifest
@@ -1 +1,2 @@
+DIST easymock-2.5.2.tar.gz 100112 BLAKE2B 2952aad1a88b169413152e8fa63eaba85767d93ccd8535e309cb647b90ad86695da59c394d1199abfb6f1c624913b2546f326ae5a68092261968d734d2018c5c SHA512 0343815f74258739ac60e1ef2fe72a0e9ce0e1b6ecd4f14d657d7da2a10523e24df5160533b0d75e87ffa0322a3477ec6823b257fe5968929d55dee9dfa68267
DIST easymock-3.3.1.tar.gz 624460 BLAKE2B bb5a472aef6c162d3afe5b66edef4891cc48fe6698c1f1eccc7f45f1883ff7f940b0479af5c0dd61b3354b41225ca50f191ba54b92479362a0074ddf3dbb5b43 SHA512 93fefd458a42b6c13d85ab1df768bf906620f052eea88116e93578374a5086eb8b27d8731e82b689dc3d73699e45d03b718c7d8bf2a430ac4a6a717365e52a9a
diff --git a/dev-java/easymock/easymock-2.5.2.ebuild b/dev-java/easymock/easymock-2.5.2.ebuild
new file mode 100644
index 000000000000..30cfb883f7a9
--- /dev/null
+++ b/dev-java/easymock/easymock-2.5.2.ebuild
@@ -0,0 +1,57 @@
+# 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/easymock/easymock/archive/easymock-2.5.2.tar.gz --slot 2.5 --keywords "~amd64" --ebuild easymock-2.5.2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.easymock:easymock:2.5.2"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Mock Objects for interfaces in JUnit tests by generating them on the fly"
+HOMEPAGE="https://easymock.org"
+SRC_URI="https://github.com/easymock/easymock/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2.5"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/easymock-2.5.5-nameClash.patch"
+ "${FILESDIR}/easymock-2.5.5-tests2nameClash.patch"
+)
+
+S="${WORKDIR}/easymock-easymock-${PV}"
+
+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"
+
+src_prepare() {
+ default # https://bugs.gentoo.org/780585
+ # 1) testGetInstance(org.easymock.tests2.EasyMockPropertiesTest)
+ # java.lang.AssertionError: expected:<1> but was:<null>
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testGetInstance()/i @Ignore' \
+ -i src/test/java/org/easymock/tests2/EasyMockPropertiesTest.java || die
+
+ # 2) testPrimitiveDeprecated(org.easymock.tests2.CaptureTest)
+ # java.lang.AssertionError:
+ # 3) testPrimitiveVsObject(org.easymock.tests2.CaptureTest)
+ # java.lang.AssertionError:
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testPrimitiveDeprecated()/i @Ignore' \
+ -e '/testPrimitiveVsObject()/i @Ignore' \
+ -i src/test/java/org/easymock/tests2/CaptureTest.java || die
+}
diff --git a/dev-java/easymock/easymock-3.3.1-r1.ebuild b/dev-java/easymock/easymock-3.3.1-r1.ebuild
index bef9d66247ab..0193c3bb5f12 100644
--- a/dev-java/easymock/easymock-3.3.1-r1.ebuild
+++ b/dev-java/easymock/easymock-3.3.1-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="org.easymock:easymock:3.3.1"
@@ -15,7 +15,7 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="3.2"
-KEYWORDS="amd64 arm64 ppc64 x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CDEPEND="
dev-java/cglib:3
@@ -58,3 +58,14 @@ src_prepare() {
# cannot find symbol o = ProxyBuilder.forClass(ArrayList.class)
rm easymock/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java || die
}
+
+src_test() {
+ # ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws
+ # java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @66da75e4
+ 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/easymock/files/easymock-2.5.5-nameClash.patch b/dev-java/easymock/files/easymock-2.5.5-nameClash.patch
new file mode 100644
index 000000000000..7a4f0d92ab64
--- /dev/null
+++ b/dev-java/easymock/files/easymock-2.5.5-nameClash.patch
@@ -0,0 +1,230 @@
+--- a/src/main/java/org/easymock/EasyMock.java Thu Feb 23 10:32:43 2012 +0100
++++ b/src/main/java/org/easymock/EasyMock.java Thu Feb 23 11:25:46 2012 +0100
+@@ -1452,81 +1452,200 @@
+
+ /**
+ * Expect any object but captures it for later use.
+- *
+- * @param <T> Type of the captured object
+- * @param captured Where the parameter is captured
++ *
++ * @param <T>
++ * Type of the captured object
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>null</code>
+ */
+- public static <T> T capture(Capture<T> captured) {
++ public static <T> T capture(final Capture<T> captured) {
+ reportMatcher(new Captures<T>(captured));
+ return null;
+ }
+-
++
++ /**
++ * Expect any boolean but captures it for later use.
++ *
++ * @param captured
++ * Where the parameter is captured
++ * @return <code>false</code>
++ */
++ public static boolean captureBoolean(final Capture<Boolean> captured) {
++ reportMatcher(new Captures<Boolean>(captured));
++ return false;
++ }
++
++// /**
++// * Expect any boolean but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static boolean capture(final Capture<Boolean> captured) {
++// return captureBoolean(captured);
++// }
++
+ /**
+ * Expect any int but captures it for later use.
+- *
+- * @param captured Where the parameter is captured
++ *
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>0</code>
+ */
+- public static int capture(Capture<Integer> captured) {
++ public static int captureInt(final Capture<Integer> captured) {
+ reportMatcher(new Captures<Integer>(captured));
+ return 0;
+ }
+-
++// /**
++// * Expect any int but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static int capture(final Capture<Integer> captured) {
++// return captureInt(captured);
++// }
++
+ /**
+ * Expect any long but captures it for later use.
+- *
+- * @param captured Where the parameter is captured
++ *
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>0</code>
+ */
+- public static long capture(Capture<Long> captured) {
++ public static long captureLong(final Capture<Long> captured) {
+ reportMatcher(new Captures<Long>(captured));
+ return 0;
+ }
+-
++// /**
++// * Expect any long but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static long capture(final Capture<Long> captured) {
++// return captureLong(captured);
++// }
++
+ /**
+ * Expect any float but captures it for later use.
+- *
+- * @param captured Where the parameter is captured
++ *
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>0</code>
+ */
+- public static float capture(Capture<Float> captured) {
++ public static float captureFloat(final Capture<Float> captured) {
+ reportMatcher(new Captures<Float>(captured));
+ return 0;
+ }
+-
++// /**
++// * Expect any float but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static float capture(final Capture<Float> captured) {
++// return captureFloat(captured);
++// }
++
+ /**
+ * Expect any double but captures it for later use.
+- *
+- * @param captured Where the parameter is captured
++ *
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>0</code>
+ */
+- public static double capture(Capture<Double> captured) {
++ public static double captureDouble(final Capture<Double> captured) {
+ reportMatcher(new Captures<Double>(captured));
+ return 0;
+ }
++// /**
++// * Expect any double but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static double capture(final Capture<Double> captured) {
++// return captureDouble(captured);
++// }
+
+ /**
+ * Expect any byte but captures it for later use.
+- *
+- * @param captured Where the parameter is captured
++ *
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>0</code>
+ */
+- public static byte capture(Capture<Byte> captured) {
++ public static byte captureByte(final Capture<Byte> captured) {
+ reportMatcher(new Captures<Byte>(captured));
+ return 0;
+ }
+-
++// /**
++// * Expect any byte but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static byte capture(final Capture<Byte> captured) {
++// return captureByte(captured);
++// }
++
+ /**
+ * Expect any char but captures it for later use.
+- *
+- * @param captured Where the parameter is captured
++ *
++ * @param captured
++ * Where the parameter is captured
+ * @return <code>0</code>
+ */
+- public static char capture(Capture<Character> captured) {
++ public static char captureChar(final Capture<Character> captured) {
+ reportMatcher(new Captures<Character>(captured));
+ return 0;
+ }
++// /**
++// * Expect any char but captures it for later use.
++// *
++// * @param captured
++// * Where the parameter is captured
++// * @return <code>0</code>
++// *
++// * @deprecated Because of harder erasure enforcement, doesn't compile in
++// * Java 7
++// */
++// @Deprecated
++// public static char capture(final Capture<Character> captured) {
++// return captureChar(captured);
++// }
+
+ /**
+ * Switches the given mock objects (more exactly: the controls of the mock
diff --git a/dev-java/easymock/files/easymock-2.5.5-tests2nameClash.patch b/dev-java/easymock/files/easymock-2.5.5-tests2nameClash.patch
new file mode 100644
index 000000000000..23ed754e3854
--- /dev/null
+++ b/dev-java/easymock/files/easymock-2.5.5-tests2nameClash.patch
@@ -0,0 +1,420 @@
+--- a/src/test/java/org/easymock/tests2/CaptureTest.java Thu Feb 23 10:32:43 2012 +0100
++++ b/src/test/java/org/easymock/tests2/CaptureTest.java Thu Feb 23 11:25:46 2012 +0100
+@@ -1,12 +1,12 @@
+-/*
+- * Copyright 2003-2009 OFFIS, Henri Tremblay
+- *
++/**
++ * Copyright 2001-2011 the original author or authors.
++ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+- *
++ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+- *
++ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@@ -27,10 +27,13 @@
+ import org.junit.Before;
+ import org.junit.Test;
+
++/**
++ * @author Henri Tremblay
++ */
+ public class CaptureTest {
+
+ public static class A {
+- public String foo(IMethods methods) {
++ public String foo(final IMethods methods) {
+ return methods.oneArg(2);
+ }
+ }
+@@ -42,16 +45,16 @@
+ @After
+ public void tearDown() throws Exception {
+ }
+-
+- private Capture<Integer> testCaptureType(CaptureType type) {
+- IMethods mock = createMock(IMethods.class);
+- Capture<Integer> captured = new Capture<Integer>(type);
+-
+- expect(mock.oneArg(capture(captured))).andReturn("1");
++
++ private Capture<Integer> testCaptureType(final CaptureType type) {
++ final IMethods mock = createMock(IMethods.class);
++ final Capture<Integer> captured = new Capture<Integer>(type);
++
++ expect(mock.oneArg(captureInt(captured))).andReturn("1");
+ expect(mock.oneArg(anyInt())).andReturn("1");
+- expect(mock.oneArg(capture(captured))).andReturn("2").times(2);
+- mock.twoArgumentMethod(capture(captured), eq(5));
+- mock.twoArgumentMethod(capture(captured), capture(captured));
++ expect(mock.oneArg(captureInt(captured))).andReturn("2").times(2);
++ mock.twoArgumentMethod(captureInt(captured), eq(5));
++ mock.twoArgumentMethod(captureInt(captured), captureInt(captured));
+
+ replay(mock);
+
+@@ -66,28 +69,28 @@
+
+ return captured;
+ }
+-
++
+ @Test
+ public void testCaptureFirst() {
+- Capture<Integer> captured = testCaptureType(CaptureType.FIRST);
++ final Capture<Integer> captured = testCaptureType(CaptureType.FIRST);
+ assertEquals(0, (int) captured.getValue());
+ }
+
+ @Test
+ public void testCaptureLast() {
+- Capture<Integer> captured = testCaptureType(CaptureType.LAST);
++ final Capture<Integer> captured = testCaptureType(CaptureType.LAST);
+ assertEquals(7, (int) captured.getValue());
+ }
+
+ @Test
+ public void testCaptureAll() {
+- Capture<Integer> captured = testCaptureType(CaptureType.ALL);
++ final Capture<Integer> captured = testCaptureType(CaptureType.ALL);
+ assertEquals(Arrays.asList(0, 2, 3, 4, 6, 7), captured.getValues());
+ }
+
+ @Test
+ public void testCaptureNone() {
+- Capture<Integer> captured = testCaptureType(CaptureType.NONE);
++ final Capture<Integer> captured = testCaptureType(CaptureType.NONE);
+ assertFalse(captured.hasCaptured());
+ }
+
+@@ -96,11 +99,10 @@
+
+ @Test
+ public void testCaptureRightOne() {
+- Capture<String> captured = new Capture<String>();
+- IMethods mock = createMock(IMethods.class);
++ final Capture<String> captured = new Capture<String>();
++ final IMethods mock = createMock(IMethods.class);
+
+- expect(mock.oneArg(and(eq("test"), capture(captured)))).andReturn(
+- "answer1");
++ expect(mock.oneArg(and(eq("test"), capture(captured)))).andReturn("answer1");
+ expect(mock.oneArg("a")).andReturn("answer2");
+
+ replay(mock);
+@@ -114,10 +116,11 @@
+ verify(mock);
+ }
+
++ @SuppressWarnings("deprecation")
+ @Test
+ public void testPrimitiveVsObject() {
+- Capture<Integer> capture = new Capture<Integer>();
+- IMethods mock = createMock(IMethods.class);
++ final Capture<Integer> capture = new Capture<Integer>();
++ final IMethods mock = createMock(IMethods.class);
+
+ expect(mock.oneArg(capture(capture))).andReturn("answer");
+ expect(mock.oneArg((Integer) capture(capture))).andReturn("answer");
+@@ -135,11 +138,10 @@
+
+ @Test
+ public void testAnd() {
+- Capture<String> captured = new Capture<String>();
+- IMethods mock = createMock(IMethods.class);
++ final Capture<String> captured = new Capture<String>();
++ final IMethods mock = createMock(IMethods.class);
+
+- expect(mock.oneArg(and(capture(captured), eq("test")))).andReturn(
+- "answer");
++ expect(mock.oneArg(and(capture(captured), eq("test")))).andReturn("answer");
+
+ replay(mock);
+
+@@ -148,17 +150,19 @@
+
+ verify(mock);
+ }
+-
++
++ @SuppressWarnings("deprecation")
+ @Test
+- public void testPrimitive() {
+- Capture<Integer> captureI = new Capture<Integer>();
+- Capture<Long> captureL = new Capture<Long>();
+- Capture<Float> captureF = new Capture<Float>();
+- Capture<Double> captureD = new Capture<Double>();
+- Capture<Byte> captureB = new Capture<Byte>();
+- Capture<Character> captureC = new Capture<Character>();
++ public void testPrimitiveDeprecated() {
++ final Capture<Integer> captureI = new Capture<Integer>();
++ final Capture<Long> captureL = new Capture<Long>();
++ final Capture<Float> captureF = new Capture<Float>();
++ final Capture<Double> captureD = new Capture<Double>();
++ final Capture<Byte> captureB = new Capture<Byte>();
++ final Capture<Character> captureC = new Capture<Character>();
++ final Capture<Boolean> captureBool = new Capture<Boolean>();
+
+- IMethods mock = createMock(IMethods.class);
++ final IMethods mock = createMock(IMethods.class);
+
+ expect(mock.oneArg(capture(captureI))).andReturn("answerI");
+ expect(mock.oneArg(capture(captureL))).andReturn("answerL");
+@@ -166,6 +170,7 @@
+ expect(mock.oneArg(capture(captureD))).andReturn("answerD");
+ expect(mock.oneArg(capture(captureB))).andReturn("answerB");
+ expect(mock.oneArg(capture(captureC))).andReturn("answerC");
++ expect(mock.oneArg(capture(captureBool))).andReturn("answerZ");
+
+ replay(mock);
+
+@@ -175,6 +180,7 @@
+ assertEquals("answerD", mock.oneArg(4.0));
+ assertEquals("answerB", mock.oneArg((byte) 5));
+ assertEquals("answerC", mock.oneArg((char) 6));
++ assertEquals("answerZ", mock.oneArg(true));
+
+ assertEquals(1, captureI.getValue().intValue());
+ assertEquals(2l, captureL.getValue().longValue());
+@@ -182,19 +188,60 @@
+ assertEquals(4.0, captureD.getValue().doubleValue(), 0.0);
+ assertEquals((byte) 5, captureB.getValue().byteValue());
+ assertEquals((char) 6, captureC.getValue().charValue());
+-
++ assertEquals(true, captureBool.getValue().booleanValue());
++
+ verify(mock);
+ }
+-
++
++ @Test
++ public void testPrimitive() {
++ final Capture<Integer> captureI = new Capture<Integer>();
++ final Capture<Long> captureL = new Capture<Long>();
++ final Capture<Float> captureF = new Capture<Float>();
++ final Capture<Double> captureD = new Capture<Double>();
++ final Capture<Byte> captureB = new Capture<Byte>();
++ final Capture<Character> captureC = new Capture<Character>();
++ final Capture<Boolean> captureBool = new Capture<Boolean>();
++
++ final IMethods mock = createMock(IMethods.class);
++
++ expect(mock.oneArg(captureInt(captureI))).andReturn("answerI");
++ expect(mock.oneArg(captureLong(captureL))).andReturn("answerL");
++ expect(mock.oneArg(captureFloat(captureF))).andReturn("answerF");
++ expect(mock.oneArg(captureDouble(captureD))).andReturn("answerD");
++ expect(mock.oneArg(captureByte(captureB))).andReturn("answerB");
++ expect(mock.oneArg(captureChar(captureC))).andReturn("answerC");
++ expect(mock.oneArg(captureBoolean(captureBool))).andReturn("answerZ");
++
++ replay(mock);
++
++ assertEquals("answerI", mock.oneArg(1));
++ assertEquals("answerL", mock.oneArg(2l));
++ assertEquals("answerF", mock.oneArg(3.0f));
++ assertEquals("answerD", mock.oneArg(4.0));
++ assertEquals("answerB", mock.oneArg((byte) 5));
++ assertEquals("answerC", mock.oneArg((char) 6));
++ assertEquals("answerZ", mock.oneArg(true));
++
++ assertEquals(1, captureI.getValue().intValue());
++ assertEquals(2l, captureL.getValue().longValue());
++ assertEquals(3.0f, captureF.getValue().floatValue(), 0.0);
++ assertEquals(4.0, captureD.getValue().doubleValue(), 0.0);
++ assertEquals((byte) 5, captureB.getValue().byteValue());
++ assertEquals((char) 6, captureC.getValue().charValue());
++ assertEquals(true, captureBool.getValue().booleanValue());
++
++ verify(mock);
++ }
++
+ @Test
+ public void testCapture() {
+- Capture<String> capture = new Capture<String>();
++ final Capture<String> capture = new Capture<String>();
+ assertFalse(capture.hasCaptured());
+ try {
+ capture.getValue();
+ fail("Should not be allowed");
+- }
+- catch(AssertionError e) {
++ } catch (final AssertionError e) {
+ assertEquals("Nothing captured yet", e.getMessage());
+ }
+ assertEquals("Nothing captured yet", capture.toString());
+@@ -207,29 +254,26 @@
+ try {
+ capture.getValue();
+ fail();
+- }
+- catch(AssertionError e) {
++ } catch (final AssertionError e) {
+ assertEquals("Nothing captured yet", e.getMessage());
+ }
+-
++
+ capture.setValue(null);
+ assertTrue(capture.hasCaptured());
+ assertNull(capture.getValue());
+ assertEquals("null", capture.toString());
+ }
+-
++
+ @Test
+ public void testCaptureMultiple() {
+- Capture<String> capture = new Capture<String>(CaptureType.ALL);
++ final Capture<String> capture = new Capture<String>(CaptureType.ALL);
+ capture.setValue("a");
+ capture.setValue("b");
+ try {
+ capture.getValue();
+ fail();
+- } catch (AssertionError e) {
+- assertEquals(
+- "More than one value captured: " + capture.getValues(), e
+- .getMessage());
++ } catch (final AssertionError e) {
++ assertEquals("More than one value captured: " + capture.getValues(), e.getMessage());
+ }
+ assertEquals(Arrays.asList("a", "b"), capture.getValues());
+ }
+@@ -237,30 +281,26 @@
+ @Test
+ public void testCapture_2617107() {
+
+- IMethods mock = createMock(IMethods.class);
++ final IMethods mock = createMock(IMethods.class);
+
+- Capture<String> cap1 = new Capture<String>();
+- Capture<String> cap2 = new Capture<String>();
+- Capture<String> cap3 = new Capture<String>();
+- Capture<String> cap4 = new Capture<String>();
++ final Capture<String> cap1 = new Capture<String>();
++ final Capture<String> cap2 = new Capture<String>();
++ final Capture<String> cap3 = new Capture<String>();
++ final Capture<String> cap4 = new Capture<String>();
+
+- mock.simpleMethodWithArgument(and(isA(String.class),
+- capture(cap1)));
+- mock.simpleMethodWithArgument(and(isA(String.class),
+- capture(cap2)));
+- mock.simpleMethodWithArgument(and(isA(String.class),
+- capture(cap3)));
+- mock.simpleMethodWithArgument(and(isA(String.class),
+- capture(cap4)));
++ mock.simpleMethodWithArgument(and(isA(String.class), capture(cap1)));
++ mock.simpleMethodWithArgument(and(isA(String.class), capture(cap2)));
++ mock.simpleMethodWithArgument(and(isA(String.class), capture(cap3)));
++ mock.simpleMethodWithArgument(and(isA(String.class), capture(cap4)));
+
+ replay(mock);
+
+ final String[] s = { "one", "two", "three", "four" };
+
+- for (int i = 0; i < s.length; i++) {
+- mock.simpleMethodWithArgument(s[i]);
++ for (final String element : s) {
++ mock.simpleMethodWithArgument(element);
+ }
+-
++
+ assertEquals("one", cap1.getValue());
+ assertEquals("two", cap2.getValue());
+ assertEquals("three", cap3.getValue());
+@@ -268,7 +308,7 @@
+
+ verify(mock);
+ }
+-
++
+ @Test
+ public void testCaptureNonStrictControl_2133741() {
+ testCaptureHelper(createMock(IMethods.class));
+@@ -279,9 +319,9 @@
+ testCaptureHelper(createStrictMock(IMethods.class));
+ }
+
+- protected void testCaptureHelper(IMethods mock) {
+- Capture<String> capture1 = new Capture<String>();
+- Capture<String> capture2 = new Capture<String>();
++ protected void testCaptureHelper(final IMethods mock) {
++ final Capture<String> capture1 = new Capture<String>();
++ final Capture<String> capture2 = new Capture<String>();
+
+ mock.simpleMethodWithArgument(capture(capture1));
+ mock.simpleMethodWithArgument(capture(capture2));
+@@ -294,25 +334,25 @@
+ assertTrue(capture1.hasCaptured());
+ assertTrue(capture2.hasCaptured());
+ assertFalse(capture1.getValue() == capture2.getValue());
+- }
+-
++ }
++
+ @Test
+ public void testCapture1_2446744() {
+- Capture<String> capture1 = new Capture<String>();
+- Capture<String> capture2 = new Capture<String>();
+- Capture<String> capture3 = new Capture<String>();
+- IMethods mock = createMock(IMethods.class);
++ final Capture<String> capture1 = new Capture<String>();
++ final Capture<String> capture2 = new Capture<String>();
++ final Capture<String> capture3 = new Capture<String>();
++ final IMethods mock = createMock(IMethods.class);
+ expect(mock.oneArg(capture(capture1))).andReturn("1").once();
+ expect(mock.oneArg(capture(capture2))).andReturn("2").once();
+ expect(mock.oneArg(capture(capture3))).andReturn("3").once();
+-
++
+ replay(mock);
+-
++
+ for (int i = 0; i < 3; i++) {
+- String string = "Run" + (i + 1);
++ final String string = "Run" + (i + 1);
+ mock.oneArg(string);
+ }
+-
++
+ assertEquals("Run3", capture3.getValue());
+ assertEquals("Run2", capture2.getValue());
+ assertEquals("Run1", capture1.getValue());
+@@ -320,16 +360,16 @@
+
+ @Test
+ public void testCapture2_2446744() {
+- Capture<String> capture = new Capture<String>(CaptureType.ALL);
+- IMethods mock = createMock(IMethods.class);
++ final Capture<String> capture = new Capture<String>(CaptureType.ALL);
++ final IMethods mock = createMock(IMethods.class);
+ expect(mock.oneArg(capture(capture))).andReturn("1").once();
+ expect(mock.oneArg(capture(capture))).andReturn("2").once();
+ expect(mock.oneArg(capture(capture))).andReturn("3").once();
+-
++
+ replay(mock);
+-
++
+ for (int i = 0; i < 3; i++) {
+- String string = "Run" + (i + 1);
++ final String string = "Run" + (i + 1);
+ mock.oneArg(string);
+ }
+
+@@ -338,8 +378,8 @@
+
+ @Test
+ public void testCaptureFromStub() {
+- Capture<String> capture = new Capture<String>(CaptureType.ALL);
+- IMethods mock = createMock(IMethods.class);
++ final Capture<String> capture = new Capture<String>(CaptureType.ALL);
++ final IMethods mock = createMock(IMethods.class);
+ expect(mock.oneArg(capture(capture))).andStubReturn("1");
+
+ replay(mock);
diff --git a/dev-java/easymock/metadata.xml b/dev-java/easymock/metadata.xml
index fd53b0590b5e..36d4bf293bdd 100644
--- a/dev-java/easymock/metadata.xml
+++ b/dev-java/easymock/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/ecj-gcj/Manifest b/dev-java/ecj-gcj/Manifest
deleted file mode 100644
index 739acba16b78..000000000000
--- a/dev-java/ecj-gcj/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ecjsrc-4.4.2.jar 1764959 BLAKE2B 402bcbb040c28fa10dad07c4223daed9976f3246d6984ac74d95087a6cdcd5a742072126a999435eb2d49d49bb2884474461ae8439a9839617b2891297cd7c07 SHA512 53e850fc64994b104d45f58c22f1302ceb1f23bcf69300940be5689dfa6278bea14b4506746fec7b14db6f48c24ccbee16755943fffcdd7f6ad4fe5d9ddc1f20
diff --git a/dev-java/ecj-gcj/ecj-gcj-4.4.2.ebuild b/dev-java/ecj-gcj/ecj-gcj-4.4.2.ebuild
deleted file mode 100644
index 9f3ec5665c73..000000000000
--- a/dev-java/ecj-gcj/ecj-gcj-4.4.2.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 prefix toolchain-funcs
-
-MY_PN="ecj"
-DMF="R-${PV}-201502041700"
-
-DESCRIPTION="Subset of Eclipse Compiler for Java compiled by gcj, serving as javac in gcj-jdk"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-SLOT="4.4"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-IUSE="+native"
-
-RDEPEND="sys-devel/gcc:*[gcj]
- app-eselect/eselect-java"
-DEPEND="${RDEPEND}
- app-arch/unzip
- !dev-java/eclipse-ecj:3.5[gcj]"
-
-JAVA_PKG_WANT_SOURCE=1.6
-JAVA_PKG_WANT_TARGET=1.6
-
-MY_PS="${MY_PN}-${SLOT}"
-S="${WORKDIR}"
-
-java_prepare() {
- # We don't need the ant adapter here
- rm org/eclipse/jdt/core/JDTCompilerAdapter.java || die
- rm -r org/eclipse/jdt/internal/antadapter || die
-
- # upstream build.xml excludes this
- rm META-INF/eclipse.inf || die
-
- # these java6 specific classes cannot compile with gcj
- rm -r org/eclipse/jdt/internal/compiler/{apt,tool}/ || die
-}
-
-src_compile() {
- local gccbin=$(gcc-config -B)
- local gcj="${gccbin}/gcj"
-
- find org/ -name "*.java" > sources.lst || die
-
- einfo "bootstrapping ${MY_PN} with gcj ..."
- "${gcj}" -w -C -fsource=${JAVA_PKG_WANT_SOURCE} -d bootstrap @sources.lst || die
-
- einfo "building ${MY_PN} with bootstrapped ${MY_PN} ..."
- "${gccbin}/gij" -cp bootstrap:. org.eclipse.jdt.internal.compiler.batch.Main -nowarn $(java-pkg_javac-args) @sources.lst || die
- find org/ META-INF/ -type f ! -name "*.java" -exec "${gccbin}/gjar" cf ${MY_PN}.jar {} + || die
-
- if use native; then
- einfo "building native ${MY_PS} library, patience needed ..."
- "${gcj}" ${CFLAGS} ${LDFLAGS} -findirect-dispatch -shared -fPIC -Wl,-Bsymbolic \
- -o ${MY_PS}.so ${MY_PN}.jar || die
- fi
-}
-
-src_install() {
- java-pkg_dojar ${MY_PN}.jar
-
- sed -e "s|@SLOT@|${SLOT}|" \
- "${FILESDIR}/${PN}.in" \
- > "${T}"/${PN}-${SLOT} || die
- eprefixify "${T}/${PN}-${SLOT}"
- dobin "${T}/${PN}-${SLOT}"
-
- use native && dolib.so ${MY_PS}.so
-}
-
-pkg_postinst() {
- if use native; then
- local dbtool="$(gcc-config -B)/gcj-dbtool"
-
- "${dbtool}" -a $("${dbtool}" -p) \
- "${EROOT}usr/share/${PN}-${SLOT}/lib/ecj.jar" \
- "${EROOT}usr/$(get_libdir)/${MY_PN}-${SLOT}.so"
- fi
-
- einfo "To select between slots of ECJ..."
- einfo " # eselect ecj"
-
- eselect ecj update ${PN}-${SLOT}
-}
-
-pkg_postrm() {
- eselect ecj update
-}
diff --git a/dev-java/ecj-gcj/files/ecj-gcj.in b/dev-java/ecj-gcj/files/ecj-gcj.in
deleted file mode 100644
index 4f838d5de240..000000000000
--- a/dev-java/ecj-gcj/files/ecj-gcj.in
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-
-# /usr/bin/gij was installed by gcj-jdk in the past and is now handled by
-# gcc-config, fall back to gcc-config to locate the binary should the
-# symlink/wrapper-binary not yet exists.
-GIJ_BIN="@GENTOO_PORTAGE_EPREFIX@/usr/bin/gij"
-if [[ ! -f ${GIJ_BIN} ]]; then
- GIJ_BIN="$(gcc-config -B)/gij"
-fi
-if [[ ! -f ${GIJ_BIN} ]]; then
- echo "gij not found! check that gcc is compiled with gcj flag"
- exit 1
-fi
-# calling java-config would be an unnecessary slowdown here
-
-# we need to append user CLASSPATH otherwise it will be overriden by the -classpath parameter
-# this breaks e.g. bootstrap of ant-core
-ecj_cp="@GENTOO_PORTAGE_EPREFIX@/usr/share/ecj-gcj-@SLOT@/lib/ecj.jar"
-if [[ -n "${CLASSPATH}" ]]; then
- ecj_cp="${ecj_cp}:${CLASSPATH}"
-fi
-
-${GIJ_BIN} -classpath "${ecj_cp}" org.eclipse.jdt.internal.compiler.batch.Main "${@}"
diff --git a/dev-java/ecj-gcj/metadata.xml b/dev-java/ecj-gcj/metadata.xml
deleted file mode 100644
index 0c0a51809582..000000000000
--- a/dev-java/ecj-gcj/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-<use>
- <flag name="native">Build a native binary along with the jar. Provides faster execution time, but needs about 1G memory and some patience to compile.</flag>
-</use>
-</pkgmetadata>
diff --git a/dev-java/eclipse-ecj/Manifest b/dev-java/eclipse-ecj/Manifest
index ed26372e0153..3f8812e6ada6 100644
--- a/dev-java/eclipse-ecj/Manifest
+++ b/dev-java/eclipse-ecj/Manifest
@@ -1,5 +1,6 @@
-DIST ecjsrc-4.10.jar 2036945 BLAKE2B cf9e50e53dac970a0b6b1231024a4efdc9adc92e02585aa4767c6511b367b32eefaf6fb3461c3c5c8160cf7205c0f708af0c433f4636b5a49caf637ba60fa092 SHA512 e85cacf6d2e21d464ff0226eac12bab8388df7a1413cb16d2982e255eb7369341792562f5080354279be0643c08fd80564a8eb2d8f59b72c8443c02577e4e1ee
-DIST ecjsrc-4.13.jar 2074963 BLAKE2B d74caf3b81543ac12497148a477dcd99fb6d14bd1d601b9e2baa0fb82d12f1211533f5ee909465b190c780ac18f1fbc1f8e12c22cddfce10501923effd7a4cc1 SHA512 f7e49b29e8aa80d627230059c9aba3f1e1fe3824bfd43eac962331d545471df5af0ac49b489aa3795e79e161101a3c6406b29f71a06143914f241916ae6953a9
DIST ecjsrc-4.15.jar 2166228 BLAKE2B 794e0ba1a19b325e2dd8ad0b288ccbe04866627670b50d39dd327c13fe1fac56200eb3a6c1c3d1af043cad795508b9b714a5243049671414b5a62a97725d3297 SHA512 ada55b2522cf26570f0cd43f415eb5cf20e6840f83dadc72e1ae474ebf10eadca73f9fa3d1db51e13fd2762c38cd3e3567db3c7840d43ae3d8665ebe35e1889d
-DIST ecjsrc-4.4.2.jar 1764959 BLAKE2B 402bcbb040c28fa10dad07c4223daed9976f3246d6984ac74d95087a6cdcd5a742072126a999435eb2d49d49bb2884474461ae8439a9839617b2891297cd7c07 SHA512 53e850fc64994b104d45f58c22f1302ceb1f23bcf69300940be5689dfa6278bea14b4506746fec7b14db6f48c24ccbee16755943fffcdd7f6ad4fe5d9ddc1f20
-DIST ecjsrc-4.5.1.jar 1809543 BLAKE2B 6d9dfed1756ac3e7edf8dd5b30f945afac8bb09bfb5b10f9abed46fff917f600afaebd28451665005b38831f20846090bd3cd19b979130043adbc6a7970d6b36 SHA512 ee615e6fb7fb4a16ef4aeefdff93bafdbf36c9d0ce15713b81f1d4dce0ae87379fa4a6de34c32a134f78db6ed1a68d6c7b4e2a431b7de57bf8262a718fdd6553
+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.10.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.10.ebuild
deleted file mode 100644
index 18842971b055..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.10.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="ecj"
-DMF="R-${PV}-201812060815"
-
-DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.10"
-IUSE="+ant"
-
-COMMON_DEP="
- app-eselect/eselect-java
- dev-java/ant-core"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-11"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-11
- 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
-java_prepare() {
- # 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.13-r2.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.13-r2.ebuild
deleted file mode 100644
index 11d2edd08bd6..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.13-r2.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 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}-201909161045"
-
-DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.13"
-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.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 0ddd9051340a..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.15.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 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="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
-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..b892008977f0
--- /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.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-r1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild
new file mode 100644
index 000000000000..b87cee1c3b1a
--- /dev/null
+++ b/dev-java/eclipse-ecj/eclipse-ecj-4.30-r1.ebuild
@@ -0,0 +1,81 @@
+# 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.36.0"
+
+inherit java-pkg-2 java-pkg-simple prefix
+
+DMF="R-${PV/_rc/RC}-202312010110"
+
+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.30"
+
+BDEPEND="
+ app-arch/unzip
+ app-arch/zip
+"
+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 )
+
+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 -type f \
+ ! -name '*.java' \
+ | xargs cp --parent -t "${JAVA_RESOURCE_DIRS}" || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ # Error: A JNI error has occurred, please check your installation and try again
+ # 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.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/eclipse-ecj/eclipse-ecj-4.4.2-r1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.4.2-r1.ebuild
deleted file mode 100644
index ea7d04f5d41a..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.4.2-r1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="ecj"
-DMF="R-${PV}-201502041700"
-
-DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.4"
-IUSE="+ant"
-
-COMMON_DEP="
- app-eselect/eselect-java"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.6"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.6
- app-arch/unzip"
-PDEPEND="
- ant? ( ~dev-java/ant-eclipse-ecj-${PV} )"
-
-JAVA_JAR_FILENAME="${MY_PN}.jar"
-
-java_prepare() {
- # These have their own package.
- rm org/eclipse/jdt/core/JDTCompilerAdapter.java || die
- rm -r org/eclipse/jdt/internal/antadapter || die
-
- rm build.xml || die
-}
-
-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.5.1.ebuild b/dev-java/eclipse-ecj/eclipse-ecj-4.5.1.ebuild
deleted file mode 100644
index 5e2a7d0f72aa..000000000000
--- a/dev-java/eclipse-ecj/eclipse-ecj-4.5.1.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="ecj"
-DMF="R-${PV}-201509040015"
-
-DESCRIPTION="Eclipse Compiler for Java"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
-
-LICENSE="EPL-1.0"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-SLOT="4.5"
-IUSE="+ant"
-
-COMMON_DEP="
- app-eselect/eselect-java"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.7"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.7
- app-arch/unzip"
-PDEPEND="
- ant? ( ~dev-java/ant-eclipse-ecj-${PV} )"
-
-JAVA_JAR_FILENAME="${MY_PN}.jar"
-
-S="${WORKDIR}"
-
-# See https://bugs.eclipse.org/bugs/show_bug.cgi?id=479134 for details
-java_prepare() {
- # 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/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/eclipse-ecj/files/ecj-4.26 b/dev-java/eclipse-ecj/files/ecj-4.26
new file mode 100644
index 000000000000..950088453264
--- /dev/null
+++ b/dev-java/eclipse-ecj/files/ecj-4.26
@@ -0,0 +1,7 @@
+JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.25"
+PACKAGE="=dev-java/ant-eclipse-ecj-4.25*"
+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.26,ant-eclipse-ecj-4.26"
+GENERATION="2"
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.30 b/dev-java/eclipse-ecj/files/ecj-4.30
new file mode 100644
index 000000000000..65b04403b711
--- /dev/null
+++ b/dev-java/eclipse-ecj/files/ecj-4.30
@@ -0,0 +1,7 @@
+JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.30"
+PACKAGE="=dev-java/ant-eclipse-ecj-4.30*"
+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"
+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"
+ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
+ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.30,ant-eclipse-ecj-4.30"
+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 107beb67c406..d59675e7a795 100644
--- a/dev-java/eclipse-ecj/metadata.xml
+++ b/dev-java/eclipse-ecj/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -12,7 +12,7 @@ as a batch-compiler by running the ecj-3.x script, or it can be
used with Ant by using the -lib option to and and setting
-Dbuild.compiler=ecj
</longdescription>
-<use>
- <flag name="ant">Support using ecj in Ant builds via dev-java/ant-eclipse-ecj</flag>
-</use>
+<upstream>
+ <remote-id type="github">eclipse-jdt/eclipse.jdt.core</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-java/eclipse-jdt-annotation/Manifest b/dev-java/eclipse-jdt-annotation/Manifest
new file mode 100644
index 000000000000..4bcbba688975
--- /dev/null
+++ b/dev-java/eclipse-jdt-annotation/Manifest
@@ -0,0 +1 @@
+DIST eclipse.jdt.core-4.30.tar.gz 13729445 BLAKE2B 9458ec92e3561d42505a602bb637c678c99b1997e2ba530048298d587cad9861066233e7f8e4b1cb22fd30ce50159aabc4e12295fb8231cc8840cdaac4f967a7 SHA512 b51c3ccc098b9100ad653baec7bbff108344ff0402de1cbb7e0f75d97c7b5b64a9746bc7b7f2faee8126bbb5a5f421fe7c54c428cc6403662626f4a566a9ead5
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
new file mode 100644
index 000000000000..0aed027c4072
--- /dev/null
+++ b/dev-java/eclipse-jdt-annotation/eclipse-jdt-annotation-4.30.ebuild
@@ -0,0 +1,24 @@
+# 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="org.eclipse.jdt:org.eclipse.jdt.annotation:2.2.800"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JDT Annotations for Enhanced Null Analysis"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.jdt"
+SRC_URI="https://github.com/eclipse-jdt/eclipse.jdt.core/archive//R${PV//./_}.tar.gz -> eclipse.jdt.core-${PV}.tar.gz"
+S="${WORKDIR}/eclipse.jdt.core-R${PV//./_}/org.eclipse.jdt.annotation"
+
+LICENSE="EPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.eclipse.jdt.annotation"
diff --git a/dev-java/eclipse-jdt-annotation/metadata.xml b/dev-java/eclipse-jdt-annotation/metadata.xml
new file mode 100644
index 000000000000..7ac29f83dafb
--- /dev/null
+++ b/dev-java/eclipse-jdt-annotation/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">eclipse-jdt/eclipse.jdt.core</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/eclipsito/Manifest b/dev-java/eclipsito/Manifest
deleted file mode 100644
index 35d5f9c4721a..000000000000
--- a/dev-java/eclipsito/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST eclipsito-20180510.tar.gz 66661 BLAKE2B 0cd1879314eaf4acfcb26cd37f27c50208263cc584d15cb19cfee4d75b29e925d7840be6f39fdf2b6aa05d26f1497284d2d772f9a42ea81398aeec9b1ebad029 SHA512 420cc4ed44fc80065452b39350625f5621175e0bd2aae1ba38a409134bd92af23b492c01f826234431fec68e09eecdf47d61a06f02338e5998c2c5cad44fd142
diff --git a/dev-java/eclipsito/eclipsito-20180510.ebuild b/dev-java/eclipsito/eclipsito-20180510.ebuild
deleted file mode 100644
index 2c5cf97ca604..000000000000
--- a/dev-java/eclipsito/eclipsito-20180510.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-COMMIT="0eb2fbb739898f55265027c2796f77fbee9f4ab2"
-
-inherit java-pkg-2 java-pkg-simple vcs-snapshot
-
-DESCRIPTION="A small subset of Eclipse core libraries for modular applications"
-HOMEPAGE="https://github.com/bardsoftware/eclipsito"
-SRC_URI="https://github.com/bardsoftware/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.8"
-DEPEND=">=virtual/jdk-1.8"
-
-S="${WORKDIR}/${P}/org.bardsoftware.${PN}"
-
-src_prepare() {
- default
- rm -r src/org/bardsoftware/test || die
-}
diff --git a/dev-java/eclipsito/metadata.xml b/dev-java/eclipsito/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/eclipsito/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/ecs/Manifest b/dev-java/ecs/Manifest
deleted file mode 100644
index b235ca268c56..000000000000
--- a/dev-java/ecs/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ecs-1.4.2-src.tar.gz 3435157 BLAKE2B 97719b74c6bda1cbd785f0045aa7686d61e99ef407e2268071f79586f86002f574e9ebfa14f4ec4f053fbc3aa14099b6fe552387bfe5dcbf4ab653ee73135337 SHA512 b7004f9364a24dd9ec8f963f69279471cc2e39fdc81d1c97dc4881cf65ee16f5f4342129b7bdda12994b69edff23944cb12f5d4b4ec140bf962e3a4f9f4e1bb4
diff --git a/dev-java/ecs/ecs-1.4.2-r2.ebuild b/dev-java/ecs/ecs-1.4.2-r2.ebuild
deleted file mode 100644
index 01ab7de4e5d9..000000000000
--- a/dev-java/ecs/ecs-1.4.2-r2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library to generate markup language text such as HTML and XML"
-HOMEPAGE="https://jakarta.apache.org/ecs"
-SRC_URI="mirror://apache/jakarta/${PN}/source/${P}-src.tar.gz"
-
-LICENSE="Apache-1.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="
- dev-java/xerces:2
- dev-java/jakarta-regexp:1.3"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- source? ( app-arch/zip )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}-src"
-
-JAVA_ENCODING="ISO8859-1"
-JAVA_SRC_DIR="src/java"
-
-JAVA_GENTOO_CLASSPATH="xerces-2,jakarta-regexp-1.3"
-
-java_prepare() {
- java-pkg_clean
- epatch "${FILESDIR}"/${P}-java7-enum.patch
-}
diff --git a/dev-java/ecs/files/ecs-1.4.2-java7-enum.patch b/dev-java/ecs/files/ecs-1.4.2-java7-enum.patch
deleted file mode 100644
index 08632aef8b9b..000000000000
--- a/dev-java/ecs/files/ecs-1.4.2-java7-enum.patch
+++ /dev/null
@@ -1,217 +0,0 @@
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/ConcreteElement.java b/ecs-1.4.2-src/src/java/org/apache/ecs/ConcreteElement.java
-index 1138b28..85e7c42 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/ConcreteElement.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/ConcreteElement.java
-@@ -319,11 +319,11 @@ public class ConcreteElement extends ElementAttributes implements Cloneable
- if(ce.getTagText() != null)
- out.write(ce.getTagText().getBytes(encoding));
-
-- Enumeration enum = ce.registryList.elements();
-+ Enumeration enumx = ce.registryList.elements();
-
-- while(enum.hasMoreElements())
-+ while(enumx.hasMoreElements())
- {
-- Object obj = ce.registry.get((String)enum.nextElement());
-+ Object obj = ce.registry.get((String)enumx.nextElement());
- if(obj instanceof GenericElement)
- {
- Element e = (Element)obj;
-@@ -435,10 +435,10 @@ public class ConcreteElement extends ElementAttributes implements Cloneable
- if(getTagText() != null)
- out.write(getTagText());
-
-- Enumeration enum = registryList.elements();
-- while(enum.hasMoreElements())
-+ Enumeration enumx = registryList.elements();
-+ while(enumx.hasMoreElements())
- {
-- Object obj = registry.get((String)enum.nextElement());
-+ Object obj = registry.get((String)enumx.nextElement());
- if(obj instanceof GenericElement)
- {
- Element e = (Element)obj;
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/ElementAttributes.java b/ecs-1.4.2-src/src/java/org/apache/ecs/ElementAttributes.java
-index 76eeac0..990e92e 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/ElementAttributes.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/ElementAttributes.java
-@@ -342,12 +342,12 @@ public abstract class ElementAttributes extends GenericElement implements Attrib
- }
- out.append(getElementType());
-
-- Enumeration enum = getElementHashEntry().keys();
-+ Enumeration enumx = getElementHashEntry().keys();
- String value = null; // avoid creating a new string object on each pass through the loop
-
-- while (enum.hasMoreElements())
-+ while (enumx.hasMoreElements())
- {
-- String attr = (String) enum.nextElement();
-+ String attr = (String) enumx.nextElement();
- if(getAttributeFilterState())
- {
- value = getAttributeFilter().process(getElementHashEntry().get(attr).toString());
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/filter/RegexpFilter.java b/ecs-1.4.2-src/src/java/org/apache/ecs/filter/RegexpFilter.java
-index dcd0db0..effcc0d 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/filter/RegexpFilter.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/filter/RegexpFilter.java
-@@ -118,10 +118,10 @@ public class RegexpFilter extends Hashtable implements Filter {
- }
-
- String substituteIn = to_process;
-- Enumeration enum = keys();
-+ Enumeration enumx = keys();
-
-- while (enum.hasMoreElements()) {
-- RE r = (RE)enum.nextElement();
-+ while (enumx.hasMoreElements()) {
-+ RE r = (RE)enumx.nextElement();
- String substitution = (String)get(r);
- substituteIn = r.subst(substituteIn, substitution);
- }
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/html/A.java b/ecs-1.4.2-src/src/java/org/apache/ecs/html/A.java
-index 2a30d8d..ac87ae9 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/html/A.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/html/A.java
-@@ -462,13 +462,13 @@ public class A extends MultiPartElement implements Printable, FocusEvents, Mouse
- */
- public boolean getNeedLineBreak()
- {
-- java.util.Enumeration enum = elements();
-+ java.util.Enumeration enumx = elements();
- int i=0;
- int j=0;
-- while(enum.hasMoreElements())
-+ while(enumx.hasMoreElements())
- {
- j++;
-- Object obj = enum.nextElement();
-+ Object obj = enumx.nextElement();
- if( obj instanceof IMG )
- i++;
- }
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/html/Select.java b/ecs-1.4.2-src/src/java/org/apache/ecs/html/Select.java
-index f8f71c2..a9c1f4a 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/html/Select.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/html/Select.java
-@@ -219,10 +219,10 @@ public class Select extends MultiPartElement implements
-
- public Select selectOption(int option)
- {
-- Enumeration enum = keys();
-- for(int x = 0; enum.hasMoreElements(); x++)
-+ Enumeration enumx = keys();
-+ for(int x = 0; enumx.hasMoreElements(); x++)
- {
-- ConcreteElement element = (ConcreteElement)getElement((String)enum.nextElement());
-+ ConcreteElement element = (ConcreteElement)getElement((String)enumx.nextElement());
- if(x == option)
- {
- ((Option)element).setSelected(true);
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/html/TD.java b/ecs-1.4.2-src/src/java/org/apache/ecs/html/TD.java
-index 188d5f0..6737648 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/html/TD.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/html/TD.java
-@@ -468,13 +468,13 @@ public class TD extends MultiPartElement implements Printable, MouseEvents, KeyE
- */
- public boolean getNeedLineBreak()
- {
-- java.util.Enumeration enum = elements();
-+ java.util.Enumeration enumx = elements();
- int i=0;
- int j=0;
-- while(enum.hasMoreElements())
-+ while(enumx.hasMoreElements())
- {
- j++;
-- Object obj = enum.nextElement();
-+ Object obj = enumx.nextElement();
- if( obj instanceof IMG || obj instanceof A )
- i++;
- }
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/vxml/TestBed2.java b/ecs-1.4.2-src/src/java/org/apache/ecs/vxml/TestBed2.java
-index 42d57a7..cd842db 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/vxml/TestBed2.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/vxml/TestBed2.java
-@@ -158,12 +158,12 @@ public class TestBed2
-
- Menu menu3 = new Menu("true");
- Prompt prompt2 = new Prompt("Welcome Home");
-- Enumerate enum = new Enumerate();
-- enum.addElement("For ");
-- enum.addElement(new Value("_prompt"));
-- enum.addElement(", press ");
-- enum.addElement(new Value("_dtmf"));
-- prompt2.addElement(enum);
-+ Enumerate enumx = new Enumerate();
-+ enumx.addElement("For ");
-+ enumx.addElement(new Value("_prompt"));
-+ enumx.addElement(", press ");
-+ enumx.addElement(new Value("_dtmf"));
-+ prompt2.addElement(enumx);
- menu3.addElement(prompt2);
- Choice choice1 = new Choice("http://www.sports.example/vxml/start.vxml");
- Choice choice2 = new Choice("http://www.weather.example/intro.vxml");
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/a.java b/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/a.java
-index 26add7f..1d0425a 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/a.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/a.java
-@@ -472,13 +472,13 @@ public class a extends MultiPartElement implements Printable, FocusEvents, Mouse
- */
- public boolean getNeedLineBreak()
- {
-- java.util.Enumeration enum = elements();
-+ java.util.Enumeration enumx = elements();
- int i=0;
- int j=0;
-- while(enum.hasMoreElements())
-+ while(enumx.hasMoreElements())
- {
- j++;
-- Object obj = enum.nextElement();
-+ Object obj = enumx.nextElement();
- if( obj instanceof img )
- i++;
- }
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/td.java b/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/td.java
-index 8d96259..6bd4b45 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/td.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/xhtml/td.java
-@@ -466,13 +466,13 @@ public class td extends MultiPartElement implements Printable, MouseEvents, KeyE
- */
- public boolean getNeedLineBreak()
- {
-- java.util.Enumeration enum = elements();
-+ java.util.Enumeration enumx = elements();
- int i=0;
- int j=0;
-- while(enum.hasMoreElements())
-+ while(enumx.hasMoreElements())
- {
- j++;
-- Object obj = enum.nextElement();
-+ Object obj = enumx.nextElement();
- if( obj instanceof img || obj instanceof a )
- i++;
- }
-diff --git a/ecs-1.4.2-src/src/java/org/apache/ecs/xml/XML.java b/ecs-1.4.2-src/src/java/org/apache/ecs/xml/XML.java
-index 1a03349..f6de10c 100644
---- a/ecs-1.4.2-src/src/java/org/apache/ecs/xml/XML.java
-+++ b/ecs-1.4.2-src/src/java/org/apache/ecs/xml/XML.java
-@@ -193,13 +193,13 @@ public class XML extends MultiPartElement implements Printable
- public boolean getNeedLineBreak() {
- boolean linebreak = true;
-
-- java.util.Enumeration enum = elements();
-+ java.util.Enumeration enumx = elements();
-
- // if this tag has one child, and it's a String, then don't
- // do any linebreaks to preserve whitespace
-
-- while (enum.hasMoreElements()) {
-- Object obj = enum.nextElement();
-+ while (enumx.hasMoreElements()) {
-+ Object obj = enumx.nextElement();
- if (obj instanceof StringElement) {
- linebreak = false;
- break;
diff --git a/dev-java/ecs/metadata.xml b/dev-java/ecs/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/ecs/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/edtftpj/Manifest b/dev-java/edtftpj/Manifest
deleted file mode 100644
index 152a7b9b5e82..000000000000
--- a/dev-java/edtftpj/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST edtftpj-2.4.0.zip 1592179 BLAKE2B 5e0a4df5b220febedc667d5c3c644a0380b57424c0f6d63d2ae72e33a30e75487df378ceed813456bdc8cef1f50584d83de8d7f4fc4d39cf74049accf0a12448 SHA512 bbcbb35805bd84e76fe15f9b07fb984782cd5838b94ee90af336991f0dfdb9b06028a35614a9accf16eb55151f09501cec5fac41030f847a32a679f9404808b0
diff --git a/dev-java/edtftpj/edtftpj-2.4.0.ebuild b/dev-java/edtftpj/edtftpj-2.4.0.ebuild
deleted file mode 100644
index 9dd3acc178cc..000000000000
--- a/dev-java/edtftpj/edtftpj-2.4.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="FTP client library written in Java"
-SRC_URI="https://www.enterprisedt.com/products/edtftpj/download/${P}.zip"
-HOMEPAGE="https://enterprisedt.com/products/edtftpnet"
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="examples"
-
-DEPEND=">=virtual/jdk-1.7
- app-arch/unzip"
-
-RDEPEND=">=virtual/jre-1.7"
-
-EANT_DOC_TARGET="javadocs"
-EANT_BUILD_XML="src/build.xml"
-
-java_prepare() {
- java-pkg_clean
-
- # Tests are geared for Windows and sit in the main sources.
- rm -rv src/com/enterprisedt/net/ftp/test || die
-
- # Delete Windows .bat files.
- find -name "*.bat" -delete || die
-
- # Adjust doc URLs to match our layout.
- find examples -name "*.html" -exec sed -i 's:/doc/manual/:/manual/:g' {} + || die
-}
-
-src_install() {
- java-pkg_dojar lib/${PN}.jar
-
- use doc && java-pkg_dojavadoc build/doc/api
- use source && java-pkg_dosrc src/*
-
- docinto html
- use doc && dodoc -r doc/manual
- use examples && dodoc -r examples
-}
diff --git a/dev-java/edtftpj/metadata.xml b/dev-java/edtftpj/metadata.xml
deleted file mode 100644
index 1259eb23b982..000000000000
--- a/dev-java/edtftpj/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- edtFTPj is the first choice of Java developers worldwide
- for incorporating FTP functionality into their applications.
- edtFTPj is Open Source, licensed under the LGPL, the GNU
- Lesser General Public License. This means you can freely
- embed edtFTPj into your commercial Java applications,
- subject to the normal LGPL restrictions. Unrestricted
- (non-GPL) source licenses can be also be purchased. edtFTPj
- has been downloaded over 100,000 times since its first
- release, and is in use in thousands of companies worldwide.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/emma/emma-2.0.5312-r3.ebuild b/dev-java/emma/emma-2.0.5312-r3.ebuild
deleted file mode 100644
index 08620ee93566..000000000000
--- a/dev-java/emma/emma-2.0.5312-r3.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-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.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-EANT_BUILD_TARGET="build"
-
-java_prepare() {
- epatch "${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-r6.ebuild b/dev-java/emma/emma-2.0.5312-r6.ebuild
new file mode 100644
index 000000000000..5d554fb81287
--- /dev/null
+++ b/dev-java/emma/emma-2.0.5312-r6.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_PROVIDES="
+ emma:emma:${PV}
+ emma:emma_ant:${PV}
+"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Free Java code coverage tool"
+HOMEPAGE="https://emma.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/project/emma/emma-release/${PV}/${P}-src.zip"
+S="${WORKDIR}/${P}"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+IUSE="+launcher"
+
+BDEPEND="app-arch/unzip"
+CP_DEPEND=">=dev-java/ant-1.10.14:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+ launcher? ( !sci-biology/emboss:0 )"
+
+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
+}
+
+src_compile() {
+ einfo "Compiling emma.jar"
+ JAVA_JAR_FILENAME="emma.jar"
+ JAVA_MAIN_CLASS="emmarun"
+ JAVA_RESOURCE_DIRS=( core/res )
+ JAVA_SRC_DIR=( core/data core/java1{2,3,4} )
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":emma.jar"
+ rm -r target || die
+
+ einfo "Compiling emma_ant.jar"
+ JAVA_JAR_FILENAME="emma_ant.jar"
+ JAVA_MAIN_CLASS="com.vladium.emma.ANTMain"
+ JAVA_RESOURCE_DIRS=()
+ JAVA_SRC_DIR=( ant/ant1{4,5} )
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":emma_ant.jar"
+ rm -r target || die
+
+ use doc && ejavadoc
+}
+
+src_install() {
+ java-pkg_dojar "emma.jar" "emma_ant.jar"
+ java-pkg_register-ant-task
+
+ use launcher && java-pkg_dolauncher ${PN} --main emmarun
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc core/data/*
+ java-pkg_dosrc core/java1{2,3,4}/*
+ java-pkg_dosrc ant/ant1{4,5}*
+ fi
+}
diff --git a/dev-java/emma/metadata.xml b/dev-java/emma/metadata.xml
index 56c9446606cb..faea9ef4e9f8 100644
--- a/dev-java/emma/metadata.xml
+++ b/dev-java/emma/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/error-prone-annotations/Manifest b/dev-java/error-prone-annotations/Manifest
index 0d166cbeadeb..4a467474141e 100644
--- a/dev-java/error-prone-annotations/Manifest
+++ b/dev-java/error-prone-annotations/Manifest
@@ -1 +1 @@
-DIST error-prone-2.0.14.tar.gz 677991 BLAKE2B e247249b385b4d5ff46cd9faaeb88b7c2053204c17a2a81846c554e2eb95389a17ca340f02dbab187f7b9e297fb13c030912e49bfbe5b29c7158391b1a7c50da SHA512 0bf2c869638e03fea5395e2b84a690c42df320903e48a171537e68a60ae7a47a8a83de07fa0a8dfb03340c035878b4380fd6677ba3bf1d13eeffcfaee4e63658
+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.0.14.ebuild b/dev-java/error-prone-annotations/error-prone-annotations-2.0.14.ebuild
deleted file mode 100644
index bde172d25913..000000000000
--- a/dev-java/error-prone-annotations/error-prone-annotations-2.0.14.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PN="${PN%-annotations}"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java annotations for the Error Prone static analysis tool"
-HOMEPAGE="http://errorprone.info"
-SRC_URI="https://github.com/google/${MY_PN}/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_P}/annotations"
-JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild b/dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild
new file mode 100644
index 000000000000..0c56d4a3fbca
--- /dev/null
+++ b/dev-java/error-prone-annotations/error-prone-annotations-2.24.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.google.errorprone:error_prone_annotations:${PV}"
+
+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"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.errorprone.annotations"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/error-prone-annotations/metadata.xml b/dev-java/error-prone-annotations/metadata.xml
index 2411fd6e87c9..a8909846bdaf 100644
--- a/dev-java/error-prone-annotations/metadata.xml
+++ b/dev-java/error-prone-annotations/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/fastinfoset/Manifest b/dev-java/fastinfoset/Manifest
new file mode 100644
index 000000000000..91a6b0edef74
--- /dev/null
+++ b/dev-java/fastinfoset/Manifest
@@ -0,0 +1 @@
+DIST fastinfoset-2.1.0.tar.gz 304643 BLAKE2B 07d571d46dd31bbd1fb9a4aac457b7a2b3e9278a41a9b072790a2da56adccbba92cdfd7dde95d976d92c7fa38476448c3dd6e77366338fdce3e63f334e5823d4 SHA512 807926fe90f97a72e5d6f8abcbad8639b424d7938ab2afc7dc8107070db216167aada859acd041ba17566a33e277330d9ee51bdc10d16aa19a6ea07d4ae858aa
diff --git a/dev-java/fastinfoset/fastinfoset-2.1.0-r1.ebuild b/dev-java/fastinfoset/fastinfoset-2.1.0-r1.ebuild
new file mode 100644
index 000000000000..011a70f41489
--- /dev/null
+++ b/dev-java/fastinfoset/fastinfoset-2.1.0-r1.ebuild
@@ -0,0 +1,41 @@
+# 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-fi/archive/2.1.0.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild fastinfoset-2.1.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.sun.xml.fastinfoset:FastInfoset:2.1.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Open Source implementation of the Fast Infoset Standard for Binary XML"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jaxb-impl/FastInfoset"
+SRC_URI="https://github.com/eclipse-ee4j/jaxb-fi/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-11:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+HTML_DOCS=( docs/{index,ReleaseNotes}.html )
+
+S="${WORKDIR}/jaxb-fi-${PV}/${PN}"
+
+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"
diff --git a/dev-java/fastinfoset/metadata.xml b/dev-java/fastinfoset/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/fastinfoset/metadata.xml
@@ -0,0 +1,7 @@
+<?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/fastutil/Manifest b/dev-java/fastutil/Manifest
deleted file mode 100644
index 3623cdcf4d20..000000000000
--- a/dev-java/fastutil/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fastutil-7.0.10.zip 518168 BLAKE2B 7941e4b6725a45e7e4f08d6c3c2b44fc5940266d0274ea2c8342747e8078024056c4c39e2d64a2f529599b9780b66f1dbd041f5de4e5fec3879c35fc923702c2 SHA512 9345f509243bf91123b4232b95915ae4d6071b5da17948cf62e993e77e9ed947637f02937ccd98edbfd874db7f98c1858357e21721feb338d97041a7bcc3e558
diff --git a/dev-java/fastutil/fastutil-7.0.10.ebuild b/dev-java/fastutil/fastutil-7.0.10.ebuild
deleted file mode 100644
index 0ca7d1ce8a0c..000000000000
--- a/dev-java/fastutil/fastutil-7.0.10.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Provides faster type-specific maps, sets and lists with a small memory footprint"
-HOMEPAGE="https://github.com/vigna/fastutil"
-SRC_URI="https://github.com/vigna/fastutil/archive/${PV}.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-src_compile() {
- emake sources
-
- # bug 162650 and #175578
- java-pkg_init-compiler_
-
- [[ ${GENTOO_COMPILER} != "javac" ]] && export ANT_OPTS="-Xmx512m"
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-pkg_newjar "${P}.jar"
-
- dodoc CHANGES README.md
-
- use doc && java-pkg_dojavadoc docs
- use source && java-pkg_dosrc src/it
-}
diff --git a/dev-java/fastutil/metadata.xml b/dev-java/fastutil/metadata.xml
deleted file mode 100644
index a17b5c024c8d..000000000000
--- a/dev-java/fastutil/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">vigna/fastutil</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/fec/fec-1.0.4-r2.ebuild b/dev-java/fec/fec-1.0.4-r2.ebuild
deleted file mode 100644
index b925d176c372..000000000000
--- a/dev-java/fec/fec-1.0.4-r2.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit flag-o-matic toolchain-funcs java-pkg-2 java-ant-2
-
-DESCRIPTION="Forward Error Correction library in Java"
-HOMEPAGE="https://bitbucket.org/onionnetworks/"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="dev-java/log4j:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-PATCHES=(
- "${FILESDIR}"/"${P}-libfec8path.patch"
- "${FILESDIR}"/"${P}-build.patch"
- "${FILESDIR}"/"${P}-soname.patch"
- "${FILESDIR}"/"${P}-remove-concurrent-util-imports.patch"
-)
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="log4j"
-EANT_BUILD_TARGET="jars"
-
-# There seems to be unit tests, but they are in such a state.
-RESTRICT="test"
-
-java_prepare() {
- # In fact, we'll wipe tests altogether.
- rm -rf tests || die
-
- # Apply patches.
- epatch "${PATCHES[@]}"
-
- # Get rid of bundled jars.
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-2_src_compile
- einfo "Sucessfully compiled Java classes!"
-
- cd "${S}"/src/csrc || die
- append-flags -fPIC
- emake CC=$(tc-getCC) CFLAGS="${CFLAGS} $(java-pkg_get-jni-cflags)"
- einfo "Sucessfully compiled C files!"
-}
-
-src_install() {
- java-pkg_newjar "lib/onion-${PN}.jar" "${PN}.jar"
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/com
- dolib.so src/csrc/libfec{8,16}.so
-}
diff --git a/dev-java/fec/fec-1.0.4-r4.ebuild b/dev-java/fec/fec-1.0.4-r4.ebuild
new file mode 100644
index 000000000000..62b81cfdee9d
--- /dev/null
+++ b/dev-java/fec/fec-1.0.4-r4.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic toolchain-funcs java-pkg-2 java-ant-2
+
+DESCRIPTION="Forward Error Correction library in Java"
+HOMEPAGE="https://github.com/hyphanet/contrib/blob/master/README"
+SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+CDEPEND="dev-java/log4j-12-api:2"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}"/"${P}-libfec8path.patch"
+ "${FILESDIR}"/"${P}-build.patch"
+ "${FILESDIR}"/"${P}-soname.patch"
+ "${FILESDIR}"/"${P}-remove-concurrent-util-imports.patch"
+)
+
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+JAVA_ANT_CLASSPATH_TAGS="javac javadoc"
+EANT_GENTOO_CLASSPATH="log4j-12-api-2"
+EANT_BUILD_TARGET="jars"
+
+# There seems to be unit tests, but they are in such a state.
+RESTRICT="test"
+
+src_prepare() {
+ # Apply patches.
+ default
+
+ # In fact, we'll wipe tests altogether.
+ rm -rf tests || die
+
+ # Get rid of bundled jars.
+ java-pkg_clean
+}
+
+src_compile() {
+ java-pkg-2_src_compile
+ einfo "Sucessfully compiled Java classes!"
+
+ cd "${S}"/src/csrc || die
+ append-flags -fPIC
+ emake CC=$(tc-getCC) CFLAGS="${CFLAGS} $(java-pkg_get-jni-cflags)"
+ einfo "Sucessfully compiled C files!"
+}
+
+src_install() {
+ java-pkg_newjar "lib/onion-${PN}.jar" "${PN}.jar"
+ use doc && java-pkg_dojavadoc javadoc
+ use source && java-pkg_dosrc src/com
+ dolib.so src/csrc/libfec{8,16}.so
+}
diff --git a/dev-java/fec/files/fec-1.0.4-build.patch b/dev-java/fec/files/fec-1.0.4-build.patch
index c47eb5459045..bc776a23c825 100644
--- a/dev-java/fec/files/fec-1.0.4-build.patch
+++ b/dev-java/fec/files/fec-1.0.4-build.patch
@@ -1,5 +1,5 @@
---- src/csrc/Makefile.orig 2015-10-18 14:31:56.752486000 +0000
-+++ src/csrc/Makefile 2015-10-18 14:33:11.502486000 +0000
+--- a/src/csrc/Makefile.orig 2015-10-18 14:31:56.752486000 +0000
++++ b/src/csrc/Makefile 2015-10-18 14:33:11.502486000 +0000
@@ -28,11 +28,8 @@
-I$(JAVA_HOME)/include/linux fec-jinterf.c \
-o fec8-jinterf.o
diff --git a/dev-java/fec/files/fec-1.0.4-libfec8path.patch b/dev-java/fec/files/fec-1.0.4-libfec8path.patch
index 58eb89efb730..88333afd08fe 100644
--- a/dev-java/fec/files/fec-1.0.4-libfec8path.patch
+++ b/dev-java/fec/files/fec-1.0.4-libfec8path.patch
@@ -1,5 +1,5 @@
---- src/com/onionnetworks/fec/Native8Code.java.orig 2015-10-18 14:27:06.160486000 +0000
-+++ src/com/onionnetworks/fec/Native8Code.java 2015-10-18 14:30:32.557486000 +0000
+--- a/src/com/onionnetworks/fec/Native8Code.java.orig 2015-10-18 14:27:06.160486000 +0000
++++ b/src/com/onionnetworks/fec/Native8Code.java 2015-10-18 14:30:32.557486000 +0000
@@ -3,6 +3,7 @@
//import java.security.AccessController;
//import sun.security.action.*;
diff --git a/dev-java/fec/files/fec-1.0.4-remove-concurrent-util-imports.patch b/dev-java/fec/files/fec-1.0.4-remove-concurrent-util-imports.patch
index 87a9473ed937..ff4a583dfc7b 100644
--- a/dev-java/fec/files/fec-1.0.4-remove-concurrent-util-imports.patch
+++ b/dev-java/fec/files/fec-1.0.4-remove-concurrent-util-imports.patch
@@ -1,5 +1,5 @@
---- src/com/onionnetworks/fec/io/FECFile.java.orig 2015-10-18 15:38:26.000000000 +0000
-+++ src/com/onionnetworks/fec/io/FECFile.java 2015-10-18 16:06:51.159486000 +0000
+--- a/src/com/onionnetworks/fec/io/FECFile.java.orig 2015-10-18 15:38:26.000000000 +0000
++++ b/src/com/onionnetworks/fec/io/FECFile.java 2015-10-18 16:06:51.159486000 +0000
@@ -10,7 +10,9 @@
import com.onionnetworks.fec.FECCodeFactory;
import com.onionnetworks.io.RAF;
diff --git a/dev-java/fec/files/fec-1.0.4-soname.patch b/dev-java/fec/files/fec-1.0.4-soname.patch
index ae00449ced40..7309aa03b086 100644
--- a/dev-java/fec/files/fec-1.0.4-soname.patch
+++ b/dev-java/fec/files/fec-1.0.4-soname.patch
@@ -1,5 +1,5 @@
---- src/csrc/Makefile.bak 2010-02-27 00:51:38.000000000 +1300
-+++ src/csrc/Makefile 2010-02-27 00:56:06.000000000 +1300
+--- a/src/csrc/Makefile.bak 2010-02-27 00:51:38.000000000 +1300
++++ b/src/csrc/Makefile 2010-02-27 00:56:06.000000000 +1300
@@ -21,7 +21,8 @@
$(CC) $(CFLAGS) -DGF_BITS=8 -o fec fec8.o test.c
diff --git a/dev-java/fec/metadata.xml b/dev-java/fec/metadata.xml
index 78df3f661631..78b3badc46ff 100644
--- a/dev-java/fec/metadata.xml
+++ b/dev-java/fec/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tommy@gentoo.org</email>
- <name>Thomas Sachau (Tommy[D])</name>
- </maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<upstream>
- <remote-id type="bitbucket">onionnetworks</remote-id>
+ <remote-id type="github">hyphanet/contrib</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/felix-bundlerepository/Manifest b/dev-java/felix-bundlerepository/Manifest
deleted file mode 100644
index 35970897bb22..000000000000
--- a/dev-java/felix-bundlerepository/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST org.apache.felix.bundlerepository-1.6.6-source-release.tar.gz 163337 BLAKE2B 9eb4a568de9ffac0f744675a5a4c5f84563054931204575fc447af5c33a5cda124b305beb82c45a44a9764a3a26dd985aaf91e5066f68d32fb79c4e60c70a42a SHA512 a457dacf0b15a54aad9290a3620b4dee503bb7d06eac1e2e9b151613caafdd53b104e8266b10321d04d0fb400df6f9f2131ed03f48bf166205903aa69f260b46
diff --git a/dev-java/felix-bundlerepository/felix-bundlerepository-1.6.6.ebuild b/dev-java/felix-bundlerepository/felix-bundlerepository-1.6.6.ebuild
deleted file mode 100644
index 52bc02a0e8d1..000000000000
--- a/dev-java/felix-bundlerepository/felix-bundlerepository-1.6.6.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="Felix Bundle Repository"
-HOMEPAGE="http://felix.apache.org/"
-LICENSE="Apache-2.0"
-
-MY_PN="org.apache.felix.bundlerepository"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="mirror://apache/felix/${MY_P}-source-release.tar.gz"
-SLOT="0"
-KEYWORDS="amd64"
-
-CDEPEND="
- dev-java/kxml:2
- dev-java/xpp3:0
- dev-java/felix-shell:0
- dev-java/felix-utils:0
- dev-java/osgi-core-api:0
- dev-java/osgi-obr:0
-"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-
- sed -i 's/bestVersion.compareTo(v)/bestVersion.compareTo((Version) v)/g' \
- src/main/java/org/apache/felix/bundlerepository/impl/ResolverImpl.java \
- || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="osgi-core-api,felix-utils,felix-shell,xpp3,kxml-2,osgi-obr"
-
-src_install() {
- mv target/{${MY_P},${PN}}.jar || die
-
- java-osgi_dojar target/${PN}.jar ${MY_PN} ${MY_PN} "Export-Package: ${MY_PN}"
-}
diff --git a/dev-java/felix-bundlerepository/files/felix-bundlerepository-1.6.6-build.xml b/dev-java/felix-bundlerepository/files/felix-bundlerepository-1.6.6-build.xml
deleted file mode 100644
index 0c7398178af1..000000000000
--- a/dev-java/felix-bundlerepository/files/felix-bundlerepository-1.6.6-build.xml
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="org.apache.felix.bundlerepository-from-maven" default="package" basedir=".">
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
- <property name="maven.build.finalName" value="org.apache.felix.bundlerepository-1.6.6"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.utils/1.1.0/org.apache.felix.utils-1.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.osgi.service.obr/1.0.2/org.osgi.service.obr-1.0.2.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.shell/1.4.1/org.apache.felix.shell-1.4.1.jar"/>
- <pathelement location="${maven.repo.local}/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/codehaus/woodstox/woodstox-core-asl/4.0.7/woodstox-core-asl-4.0.7.jar"/>
- <pathelement location="${maven.repo.local}/stax/stax-api/1.0.1/stax-api-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/org/codehaus/woodstox/stax2-api/3.0.1/stax2-api-3.0.1.jar"/>
- <pathelement location="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.utils/1.1.0/org.apache.felix.utils-1.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.osgi.service.obr/1.0.2/org.osgi.service.obr-1.0.2.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.shell/1.4.1/org.apache.felix.shell-1.4.1.jar"/>
- <pathelement location="${maven.repo.local}/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/codehaus/woodstox/woodstox-core-asl/4.0.7/woodstox-core-asl-4.0.7.jar"/>
- <pathelement location="${maven.repo.local}/stax/stax-api/1.0.1/stax-api-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/org/codehaus/woodstox/stax2-api/3.0.1/stax2-api-3.0.1.jar"/>
- <pathelement location="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"/>
- </path>
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="changelog.txt"/>
- </fileset>
- </copy>
- </target>
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
- <target name="jar" depends="package" description="Builds the jar for the application"/>
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-</project>
diff --git a/dev-java/felix-bundlerepository/metadata.xml b/dev-java/felix-bundlerepository/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/felix-bundlerepository/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/felix-framework/Manifest b/dev-java/felix-framework/Manifest
new file mode 100644
index 000000000000..61ae21b93439
--- /dev/null
+++ b/dev-java/felix-framework/Manifest
@@ -0,0 +1,2 @@
+DIST org.apache.felix.framework-7.0.5-source-release.tar.gz 505118 BLAKE2B 3652d46dfb4c9c5b43b159450b81ad896483fb2df40165d7e7b8bbd718c8e3297163065474bd10f3858ff7fc2646134ed470e34ede8eeb5efc05cec75f1a7aec SHA512 58fa96500fed827c348a47ac8672aeb4e5b94bfd681c4cde610b3a453fd2abfe2d631742281a192c76718ee83fc4c30980a5179926ff3bc7b8ea649ef07f34a3
+DIST org.apache.felix.framework-7.0.5-source-release.tar.gz.asc 195 BLAKE2B 94d0afbb7f20119a3f75927e75dc10420caab1c6ce2c3cc5b2b8600a2fd6af4c9217df565cd922bd0017ec6ac54113cc2a894b60249978c87c61c7961d258dda SHA512 2b22f242b5d3ff6c38457908e801dc95abeca6c6427fe8eab4badae171692f9b8de6edf091dca78cc43c3a467a56aa85895cabdfa7eaa92faf6cb090e9fae8fa
diff --git a/dev-java/felix-framework/felix-framework-7.0.5-r2.ebuild b/dev-java/felix-framework/felix-framework-7.0.5-r2.ebuild
new file mode 100644
index 000000000000..2b2058c5acad
--- /dev/null
+++ b/dev-java/felix-framework/felix-framework-7.0.5-r2.ebuild
@@ -0,0 +1,89 @@
+# 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.felix:org.apache.felix.framework:7.0.5"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Implementation of the OSGi R8 core framework specification"
+HOMEPAGE="https://felix.apache.org/documentation/subprojects/apache-felix-framework.html"
+SRC_URI="mirror://apache/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz
+ verify-sig? ( https://downloads.apache.org/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz.asc )"
+S="${WORKDIR}/org.apache.felix.framework-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="dev-java/animal-sniffer-annotations:0"
+
+DEPEND="${CP_DEPEND}
+ dev-java/felix-resolver:0
+ dev-java/osgi-annotation:0
+ >=virtual/jdk-11:*
+ test? (
+ dev-java/asm:9
+ dev-java/easymock:2.5
+ dev-java/mockito:0
+ )"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-felix )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/felix.apache.org.asc"
+
+JAVA_CLASSPATH_EXTRA="felix-resolver,osgi-annotation"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="asm-9,junit-4,easymock-2.5,mockito"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # 58,91 pom.xml
+ cat > src/main/java/module-info.java <<-EOF
+ $( sed -n '/<moduleInfoSource>/,/<\/moduleInfoSource/p' pom.xml \
+ | grep -v moduleInfoSource )
+ EOF
+
+ sed -e 's/{dollar}//g' -i src/main/resources/default.properties || die
+
+ sed -e "s:\${pom.version}:${PV}:" \
+ -i src/main/resources/org/apache/felix/framework/Felix.properties || die
+
+ # bundling some classes from felix-resolver according to 99,132 pom.xml
+ # if we don't bundle compilation would fail with:
+ # src/main/java/module-info.java:23: error: package is empty or does not exist: org.osgi.service.resolver
+ cd src/main/resources || die
+ jar xvf "$(java-pkg_getjar --build-only felix-resolver felix-resolver.jar)" \
+ org/{apache/felix,osgi/service}/resolver/ || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # according to pom.xml, line 129
+ # grep the line between <Add-opens> and </Add-opens> from pom.xml
+ local add_opens="$(sed -n '/<Add-opens>/,/<\/Add-opens/p' pom.xml \
+ | grep -v Add-opens | tr -s '[:space:]')" || die
+ echo "Add-opens:${add_opens}" > "${T}/Add-opens-to-MANIFEST.MF" \
+ || die "Add-opens-to-MANIFEST.MF failed"
+ jar ufmv ${JAVA_JAR_FILENAME} "${T}/Add-opens-to-MANIFEST.MF" \
+ || die "updating MANIFEST.MF failed"
+}
+
+src_test() {
+ # java.base does not "opens java.lang" to unnamed module
+ # adding it to MANIFEST.MF would not fix the test failures.
+ 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 )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/felix-framework/metadata.xml b/dev-java/felix-framework/metadata.xml
new file mode 100644
index 000000000000..e6816da2d497
--- /dev/null
+++ b/dev-java/felix-framework/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <bugs-to>https://issues.apache.org/jira/browse/FELIX</bugs-to>
+ <doc>https://felix.apache.org/documentation/subprojects/apache-felix-framework.html</doc>
+ <remote-id type="github">apache/felix-dev</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/felix-gogo-command/Manifest b/dev-java/felix-gogo-command/Manifest
deleted file mode 100644
index 5f1a5ca5a6c7..000000000000
--- a/dev-java/felix-gogo-command/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST org.apache.felix.gogo.command-0.12.0-project.tar.gz 26454 BLAKE2B 0a0ed6b1ce7e66e90a32c71aa3786d290c907c68124a4056078907d1fe7d85546327d9540c68ee0bf3b90e28ef06fcd286e290d86799b6675fd642fbba30ad9e SHA512 8d7afa4b34be6460df9e1e91ecc42b34ecfc1888f5574add206a3c6fbc54647672e34d4f3a4e59eb39f8b2b9fd94b468647c0e95d5fc04649ab7a283e172a061
diff --git a/dev-java/felix-gogo-command/felix-gogo-command-0.12.0.ebuild b/dev-java/felix-gogo-command/felix-gogo-command-0.12.0.ebuild
deleted file mode 100644
index b2f275c09e15..000000000000
--- a/dev-java/felix-gogo-command/felix-gogo-command-0.12.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="Felix Gogo Command"
-HOMEPAGE="http://felix.apache.org/site/apache-felix-gogo.html"
-LICENSE="Apache-2.0"
-
-MY_PN="org.apache.felix.gogo.command"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="mirror://apache/felix/${MY_P}-project.tar.gz"
-SLOT="0"
-KEYWORDS="amd64"
-
-CDEPEND="
- dev-java/felix-bundlerepository:0
- dev-java/felix-gogo-runtime:0
- dev-java/osgi-compendium:0
- dev-java/osgi-core-api:0
-"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="osgi-core-api,osgi-compendium,felix-gogo-runtime,felix-bundlerepository"
-
-src_install() {
- mv target/{${MY_P},${PN}}.jar || die
-
- java-osgi_dojar target/${PN}.jar ${MY_PN} ${MY_PN} "Export-Package: ${MY_PN}"
-}
diff --git a/dev-java/felix-gogo-command/files/felix-gogo-command-0.12.0-build.xml b/dev-java/felix-gogo-command/files/felix-gogo-command-0.12.0-build.xml
deleted file mode 100644
index b31bcdccdc01..000000000000
--- a/dev-java/felix-gogo-command/files/felix-gogo-command-0.12.0-build.xml
+++ /dev/null
@@ -1,276 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/10/13 7:05 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="org.apache.felix.gogo.command-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="org.apache.felix.gogo.command-0.12.0"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.3.0/org.osgi.core-4.3.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0/org.apache.felix.gogo.runtime-0.10.0.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.bundlerepository/1.6.0/org.apache.felix.bundlerepository-1.6.0.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.3.0/org.osgi.core-4.3.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0/org.apache.felix.gogo.runtime-0.10.0.jar"/>
- <pathelement location="${maven.repo.local}/org/apache/felix/org.apache.felix.bundlerepository/1.6.0/org.apache.felix.bundlerepository-1.6.0.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"/>
- <pathelement location="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="LICENSE*"/>
- <include name="NOTICE*"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.core/4.3.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.core/4.3.0/org.osgi.core-4.3.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.3.0/org.osgi.core-4.3.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.core/4.3.0/org.osgi.core-4.3.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.3.0/org.osgi.core-4.3.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0"/>
- <get src="http://repository.apache.org/snapshots/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0/org.apache.felix.gogo.runtime-0.10.0.jar"
- dest="${maven.repo.local}/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0/org.apache.felix.gogo.runtime-0.10.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0/org.apache.felix.gogo.runtime-0.10.0.jar"
- dest="${maven.repo.local}/org/apache/felix/org.apache.felix.gogo.runtime/0.10.0/org.apache.felix.gogo.runtime-0.10.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/apache/felix/org.apache.felix.bundlerepository/1.6.0"/>
- <get src="http://repository.apache.org/snapshots/org/apache/felix/org.apache.felix.bundlerepository/1.6.0/org.apache.felix.bundlerepository-1.6.0.jar"
- dest="${maven.repo.local}/org/apache/felix/org.apache.felix.bundlerepository/1.6.0/org.apache.felix.bundlerepository-1.6.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/apache/felix/org.apache.felix.bundlerepository/1.6.0/org.apache.felix.bundlerepository-1.6.0.jar"
- dest="${maven.repo.local}/org/apache/felix/org.apache.felix.bundlerepository/1.6.0/org.apache.felix.bundlerepository-1.6.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.0"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.0/junit-4.0.jar"
- dest="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.0/junit-4.0.jar"
- dest="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/easymock/easymock/2.4"/>
- <get src="http://repository.apache.org/snapshots/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/mockito/mockito-all/1.7"/>
- <get src="http://repository.apache.org/snapshots/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/felix-gogo-command/metadata.xml b/dev-java/felix-gogo-command/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/felix-gogo-command/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/felix-gogo-runtime/Manifest b/dev-java/felix-gogo-runtime/Manifest
index 43680c468573..a252dc474e84 100644
--- a/dev-java/felix-gogo-runtime/Manifest
+++ b/dev-java/felix-gogo-runtime/Manifest
@@ -1 +1,2 @@
-DIST org.apache.felix.gogo.runtime-0.10.0-project.tar.gz 69837 BLAKE2B 3ffd6cc308b3125ee8cd467945ca58a9fcf3125d32b23f68065fa7a9266210d186ebf3aba354f64a9d2c38a176ac7a5767e4349707a56dcbd77831eb24df928c SHA512 a71100796e400103cf9d46fcdb7bf45b5d1d180328db27900915c1771650297c9135589dc91e4c2194634b4312ea7c064b71496a7e11e9a3393bdc6eeb70e03d
+DIST felix-gogo-runtime-1.1.6.tar.gz 117060 BLAKE2B 5ffbc36688f7f69595c5087910e6b9007b57d4b60a6d18d9adee473987193b5fc478cf241229a32044abebf3e796394591e2626ad5560d1cbde0dfb572d62f7f SHA512 0cf431767506a0ca3f78a4e7c666bb9da7301d9968078653ef67deccc73da80e15e01e19ecd6e499215faa4236d46a4f4179b54798ba4d847cfe8a0d858e44ee
+DIST felix-gogo-runtime-1.1.6.tar.gz.asc 833 BLAKE2B 12ef2c9bf4d5f6e5dee1a10b1d6afcd366805361181f2621ed98f3c4a36db155e7c1b493152e528cd3a8e46ca12e61bda140a2e4c13b133374bb10ec47c4554a SHA512 05b8247508c477ad374f18e7dc22faa9d116c3416b6390173366391b6f7a726cbb604adcaecc013faf51b03cbde57f09d95891a283045d35ed809e01ae7d5dae
diff --git a/dev-java/felix-gogo-runtime/felix-gogo-runtime-0.10.0.ebuild b/dev-java/felix-gogo-runtime/felix-gogo-runtime-0.10.0.ebuild
deleted file mode 100644
index f6a9d2f071d3..000000000000
--- a/dev-java/felix-gogo-runtime/felix-gogo-runtime-0.10.0.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="Felix Gogo Runtime"
-HOMEPAGE="http://felix.apache.org/site/apache-felix-gogo.html"
-LICENSE="Apache-2.0"
-
-MY_PN="org.apache.felix.gogo.runtime"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="mirror://apache/felix/${MY_P}-project.tar.gz"
-SLOT="0"
-KEYWORDS="amd64"
-
-DEPEND=">=virtual/jdk-1.6
- dev-java/osgi-compendium:0
- dev-java/osgi-core-api:0"
-
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-
- epatch "${FILESDIR}"/${P}-event-properties-to-map.patch
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-src_compile() {
- EANT_EXTRA_ARGS="-Dgentoo.classpath=$(java-pkg_getjar --build-only osgi-core-api osgi-core-api.jar):$(java-pkg_getjar --build-only osgi-compendium osgi-compendium.jar)"
-
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-osgi_newjar "${S}"/target/${MY_P}.jar ${MY_PN} ${MY_PN} "Export-Package: ${MY_PN}"
-}
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
new file mode 100644
index 000000000000..a31b155dd9a4
--- /dev/null
+++ b/dev-java/felix-gogo-runtime/felix-gogo-runtime-1.1.6.ebuild
@@ -0,0 +1,55 @@
+# 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.apache.felix:org.apache.felix.gogo.runtime:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Apache Felix Gogo Runtime"
+HOMEPAGE="https://felix.apache.org/documentation/subprojects/apache-felix-gogo.html"
+SRC_URI="mirror://apache/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz -> ${P}.tar.gz
+ verify-sig? ( https://dlcdn.apache.org/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz.asc -> ${P}.tar.gz.asc )"
+S="${WORKDIR}/org.apache.felix.gogo.runtime-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="
+ dev-java/osgi-annotation:0
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/mockito:2
+ )
+"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-felix )"
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/felix.apache.org.asc"
+
+PATCHES=( "${FILESDIR}/${P}-skip-tests-non-java-8.patch" )
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_EXCLUDES=(
+ #Invalid test class No runnable methods
+ org.apache.felix.gogo.runtime.TestEvaluate
+)
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ mockito-2
+"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default
+}
diff --git a/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-build.xml b/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-build.xml
deleted file mode 100644
index 4bcd4c42ad62..000000000000
--- a/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-build.xml
+++ /dev/null
@@ -1,294 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/13/13 1:33 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="org.apache.felix.gogo.runtime-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="org.apache.felix.gogo.runtime-0.10.0"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.0.0/org.osgi.core-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.0.0/org.osgi.core-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.5/junit-4.5.jar"/>
- <pathelement location="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"/>
- <pathelement location="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="LICENSE*"/>
- <include name="NOTICE*"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.core/4.0.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.core/4.0.0/org.osgi.core-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.0.0/org.osgi.core-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.core/4.0.0/org.osgi.core-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.0.0/org.osgi.core-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.5"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.5/junit-4.5.jar"
- dest="${maven.repo.local}/junit/junit/4.5/junit-4.5.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.5/junit-4.5.jar"
- dest="${maven.repo.local}/junit/junit/4.5/junit-4.5.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/easymock/easymock/2.4"/>
- <get src="http://repository.apache.org/snapshots/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/mockito/mockito-all/1.7"/>
- <get src="http://repository.apache.org/snapshots/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-event-properties-to-map.patch b/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-event-properties-to-map.patch
deleted file mode 100644
index ae2e67cf3abe..000000000000
--- a/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-0.10.0-event-properties-to-map.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- src/main/java/org/apache/felix/gogo/runtime/activator/EventAdminListener.java 2013-05-13 13:40:57.071766332 +0200
-+++ src/main/java/org/apache/felix/gogo/runtime/activator/EventAdminListener.java.2 2013-05-13 13:41:30.725096685 +0200
-@@ -18,7 +18,7 @@
- */
- package org.apache.felix.gogo.runtime.activator;
-
--import java.util.Properties;
-+import java.util.HashMap;
-
- import org.apache.felix.gogo.api.CommandSessionListener;
- import org.apache.felix.service.command.CommandSession;
-@@ -43,8 +43,8 @@
- public void beforeExecute(CommandSession session, CharSequence command) {
- EventAdmin admin = (EventAdmin) tracker.getService();
- if (admin != null) {
-- Properties props = new Properties();
-- props.setProperty("command", command.toString());
-+ HashMap<String, String> props = new HashMap<String, String>();
-+ props.put(new String("command"), command.toString());
- Event event = new Event("org/apache/felix/service/command/EXECUTING", props);
- admin.postEvent(event);
- }
diff --git a/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-1.1.6-skip-tests-non-java-8.patch b/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-1.1.6-skip-tests-non-java-8.patch
new file mode 100644
index 000000000000..270b01be759a
--- /dev/null
+++ b/dev-java/felix-gogo-runtime/files/felix-gogo-runtime-1.1.6-skip-tests-non-java-8.patch
@@ -0,0 +1,22 @@
+skip tests that fail with java > 1.8 if java > 1.8 is used
+
+we compare here just that the first part of the version is 1
+which is true only for version 1.8, other versions have first number
+like 11, 17, 21 and those fail the condition hence the remaining tests
+are skipped
+we cannot use System.version() here as this is available only since java 9
+
+--- a/src/test/java/org/apache/felix/gogo/runtime/TestParser.java
++++ b/src/test/java/org/apache/felix/gogo/runtime/TestParser.java
+@@ -149,9 +149,10 @@ public class TestParser extends AbstractParserTest
+ assertEquals("def", c.execute("echo def|grep d.*|capture"));
+ assertEquals("def", c.execute("echoout def|grep d.*|capture"));
+ assertEquals("def", c.execute("myecho def|grep d.*|capture"));
+- assertEquals("def", c.execute("(echoout abc; echoout def; echoout ghi)|grep d.*|capture"));
+ assertEquals("", c.execute("echoout def; echoout ghi | grep d.* | capture"));
+ assertEquals("hello world", c.execute("echo hello world|capture"));
++ org.junit.Assume.assumeTrue("1".equals(System.getProperty("java.version").split("\\.")[0]));
++ assertEquals("def", c.execute("(echoout abc; echoout def; echoout ghi)|grep d.*|capture"));
+ assertEquals("defghi", c.execute("(echoout abc; echoout def; echoout ghi)|grep 'def|ghi'|capture"));
+ }
+
diff --git a/dev-java/felix-gogo-runtime/metadata.xml b/dev-java/felix-gogo-runtime/metadata.xml
index 2444066aa02b..b2e227e0b6b2 100644
--- a/dev-java/felix-gogo-runtime/metadata.xml
+++ b/dev-java/felix-gogo-runtime/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://issues.apache.org/jira/browse/FELIX</bugs-to>
+ <doc>https://felix.apache.org/documentation/subprojects/apache-felix-gogo.html</doc>
+ <remote-id type="github">apache/felix-dev</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/felix-main/Manifest b/dev-java/felix-main/Manifest
new file mode 100644
index 000000000000..1535ea42b59a
--- /dev/null
+++ b/dev-java/felix-main/Manifest
@@ -0,0 +1,2 @@
+DIST org.apache.felix.main-7.0.5-source-release.tar.gz 255198 BLAKE2B 289e2305b15c28f985bee1d8687db6ecb5098a2086da6fd32a7db8572f83a1ac37e49deeb89d657d48b943a626d400caccd8185ced565e8c65aa558395aeef05 SHA512 e06f6c330a73100a739575e92a6f0af263a98643bbd6fd6661e799c2a11c8c9d9589f1f5b8802799ffcae7007e8362c629055fa8b25a50a4fa736ed2ba2955b0
+DIST org.apache.felix.main-7.0.5-source-release.tar.gz.asc 195 BLAKE2B 24ba68ada20056364a559fea71b1596b07e0adc669c4ddbed89e2aa14fa1937b3d21af793148c057cd2bd9817a6f2c87b5e6465ea537fe7bac69215f82d9945f SHA512 428ba861bbd51b58f8e00226ac33c186e7e91ca5469c24328b65adcfb2631b09a50847870eff483e6569a69e3e01a1c939315747f3b338462bb0e7a7d2757216
diff --git a/dev-java/felix-main/felix-main-7.0.5-r2.ebuild b/dev-java/felix-main/felix-main-7.0.5-r2.ebuild
new file mode 100644
index 000000000000..92f6f1035d8c
--- /dev/null
+++ b/dev-java/felix-main/felix-main-7.0.5-r2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.felix:org.apache.felix.main:7.0.5"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Open source OSGi framework by Apache Software Foundation"
+HOMEPAGE="https://felix.apache.org/documentation/index.html"
+SRC_URI="mirror://apache/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz
+ verify-sig? ( https://downloads.apache.org/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz.asc )"
+S="${WORKDIR}/org.apache.felix.main-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# org.apache.felix:org.apache.felix.framework:7.0.5 -> >=dev-java/felix-framework-7.0.5:0
+
+CP_DEPEND="~dev-java/felix-framework-${PV}:0"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-felix )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/felix.apache.org.asc"
+
+DOCS=( DEPENDENCIES NOTICE )
+
+JAVA_MAIN_CLASS="org.apache.felix.main.Main"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ default
+ # 58,91 pom.xml
+ cat > src/main/java/module-info.java <<-EOF || die
+ $( sed -n '/<moduleInfoSource>/,/<\/moduleInfoSource/p' pom.xml \
+ | grep -v moduleInfoSource )
+ EOF
+
+ # according to pom.xml, line 91
+ local add_opens="$( sed -n '/<Add-opens>/,/<\/Add-opens/p' pom.xml \
+ | grep -v Add-opens | tr -s '[:space:]')" || die
+ mkdir src/main/resources/META-INF || die
+ echo "Add-opens:${add_opens}" >> src/main/resources/META-INF/MANIFEST.MF \
+ || die "creating MANIFEST.MF failed"
+
+ # no idea what to do with felix.log.level=${log.level} here, but ...
+ sed -e 's/{dollar}//' -i src/main/resources/config.properties || die
+
+ # bundling some classes from felix-framework according to 78,94 pom.xml
+ # if we don't bundle compilation of module-info would fail
+ cd src/main/resources || die
+ jar xvf "$(java-pkg_getjar --build-only felix-framework felix-framework.jar)" \
+ default.properties org/ || die "felix-framework.jar does not exist"
+}
+
+src_install() {
+ dodoc -r doc
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/felix-main/metadata.xml b/dev-java/felix-main/metadata.xml
new file mode 100644
index 000000000000..2052253c1b6e
--- /dev/null
+++ b/dev-java/felix-main/metadata.xml
@@ -0,0 +1,15 @@
+<?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>
+ <bugs-to>https://issues.apache.org/jira/browse/FELIX</bugs-to>
+ <doc>https://felix.apache.org/documentation/</doc>
+ <remote-id type="github">apache/felix-dev</remote-id>
+ </upstream>
+ <longdescription>
+ Apache Felix is a community effort to implement the OSGi Framework and Service platform and other interesting OSGi-related technologies.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/felix-resolver/Manifest b/dev-java/felix-resolver/Manifest
new file mode 100644
index 000000000000..81acaa68bcae
--- /dev/null
+++ b/dev-java/felix-resolver/Manifest
@@ -0,0 +1,2 @@
+DIST org.apache.felix.resolver-2.0.4-source-release.tar.gz 164538 BLAKE2B 38d979557e484692bc6e47ce069bac5ca3c19f4b01b2d6222760708da571ca79166f4821c0b79c181a40c4228095dbe28f051e7d84d696cfddeef63f5a006ddd SHA512 bf4da4550b208dbe9e74cb4f66e9456fb0a3da66f6e60c08ebea88b68cc6f71200dcf324d22d85e6f5558e7f67335f8899e932de3b813a7fc7e9325eb8a31b61
+DIST org.apache.felix.resolver-2.0.4-source-release.tar.gz.asc 195 BLAKE2B feb81e5acb4a7dcc4f0b8d5e85e12739ab341f085925e3f6496a550571662b871e07c294d01f468a8cbb9e2314a2a6ec9ea1c313426dee606e70fa5bc7155be4 SHA512 dad0f1969176cbf3490a11221d37899f20e2f92e661ffa374fc4793f5064ffc8f8f9a6317b49911aafaeb96d582afe4c2660c29b3d907c092b89299b4e0720a8
diff --git a/dev-java/felix-resolver/felix-resolver-2.0.4-r1.ebuild b/dev-java/felix-resolver/felix-resolver-2.0.4-r1.ebuild
new file mode 100644
index 000000000000..e95f1cbbf3ad
--- /dev/null
+++ b/dev-java/felix-resolver/felix-resolver-2.0.4-r1.ebuild
@@ -0,0 +1,61 @@
+# 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.felix:org.apache.felix.resolver:2.0.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Provide OSGi resolver service."
+HOMEPAGE="https://felix.apache.org/documentation/index.html"
+SRC_URI="mirror://apache/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz
+ verify-sig? ( https://downloads.apache.org/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz.asc )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/osgi-annotation:0
+ dev-java/osgi-core:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/felix-utils:0
+ dev-java/mockito:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-felix )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/felix.apache.org.asc"
+
+DOCS=( DEPENDENCIES NOTICE doc/changelog.txt )
+
+S="${WORKDIR}/org.apache.felix.resolver-${PV}"
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="felix-utils,junit-4,mockito"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @73ec6027
+ 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/felix-resolver/metadata.xml b/dev-java/felix-resolver/metadata.xml
new file mode 100644
index 000000000000..4af2d5d52d45
--- /dev/null
+++ b/dev-java/felix-resolver/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <doc>https://felix.apache.org/documentation/documentation.html</doc>
+ <remote-id type="github">apache/felix-dev</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/felix-shell/Manifest b/dev-java/felix-shell/Manifest
deleted file mode 100644
index 54ffdd842fbc..000000000000
--- a/dev-java/felix-shell/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST org.apache.felix.shell-1.4.3-source-release.tar.gz 75190 BLAKE2B 338658ec6b490bfca2ce6d15089810f8db421ea89a5931201d3ae8de71e7181dead6b811f4ffcf4b876f92362e375715b34dd73e982969a022eae5248a64e562 SHA512 fe1b3927789a18626715e52a634fa069fdd1505f425a48d76ec6abbb181f511ff5a3af176c70f634241830b185d32cd7eb71a271d62a754366141cd959cb54a4
diff --git a/dev-java/felix-shell/felix-shell-1.4.3.ebuild b/dev-java/felix-shell/felix-shell-1.4.3.ebuild
deleted file mode 100644
index 2b1ce8e60499..000000000000
--- a/dev-java/felix-shell/felix-shell-1.4.3.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="Felix Shell"
-HOMEPAGE="http://felix.apache.org/"
-LICENSE="Apache-2.0"
-
-MY_PN="org.apache.felix.shell"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="mirror://apache/felix/${MY_P}-source-release.tar.gz"
-SLOT="0"
-KEYWORDS="amd64"
-
-DEPEND=">=virtual/jdk-1.6
- dev-java/felix-gogo-runtime:0
- dev-java/felix-utils:0
- dev-java/osgi-compendium:0
- dev-java/osgi-core-api:0"
-
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-src_compile() {
- EANT_EXTRA_ARGS="-Dgentoo.classpath=$(java-pkg_getjar --build-only osgi-core-api osgi-core-api.jar):$(java-pkg_getjar --build-only osgi-compendium osgi-compendium.jar):$(java-pkg_getjar --build-only felix-gogo-runtime felix-gogo-runtime.jar):$(java-pkg_getjar --build-only felix-utils felix-utils.jar)"
-
- java-pkg-2_src_compile
-}
-
-src_install() {
- mv "${S}"/target/{${MY_P},${PN}}.jar || die
-
- java-osgi_dojar "${S}"/target/${PN}.jar ${MY_PN} ${MY_PN} "Export-Package: ${MY_PN}"
-}
diff --git a/dev-java/felix-shell/files/felix-shell-1.4.3-build.xml b/dev-java/felix-shell/files/felix-shell-1.4.3-build.xml
deleted file mode 100644
index 6bab51781bd1..000000000000
--- a/dev-java/felix-shell/files/felix-shell-1.4.3-build.xml
+++ /dev/null
@@ -1,299 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/13/13 2:41 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="org.apache.felix.shell-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="org.apache.felix.shell-1.4.3"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"/>
- <pathelement location="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="changelog.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.0.0/org.osgi.compendium-4.0.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.0"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.0/junit-4.0.jar"
- dest="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.0/junit-4.0.jar"
- dest="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/easymock/easymock/2.4"/>
- <get src="http://repository.apache.org/snapshots/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/mockito/mockito-all/1.7"/>
- <get src="http://repository.apache.org/snapshots/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/felix-shell/metadata.xml b/dev-java/felix-shell/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/felix-shell/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/felix-utils/Manifest b/dev-java/felix-utils/Manifest
index 816ac0dee404..7f59424e9061 100644
--- a/dev-java/felix-utils/Manifest
+++ b/dev-java/felix-utils/Manifest
@@ -1 +1,2 @@
-DIST org.apache.felix.utils-1.2.0-source-release.tar.gz 36109 BLAKE2B 5c7032986ce2e859236fcf9c9d4eefeb03c7bd8bad579c6e37423434f9095f8817d980cb5ddaaa2056632fe4ce9469f2fd955233fdbac7d48cd0fe0502b04904 SHA512 4b3a16abc92963c16c363791423483c14eb02792cc65d58a884777c6be25b05a226492280cf2f77183ad5b86cb5710076a118a58af34f6c717273bfdf93bc171
+DIST org.apache.felix.utils-1.11.8-source-release.tar.gz 90519 BLAKE2B 2fe6ce8101e8e4d9533a2decacc581d35babd3a26747598a196ade7cea787d6e379968208619dc9c4d89c8f670ccb98124223828c852347f859c4ae3a7f284c8 SHA512 cef0f05754857a5863869145b3c465a1fea0d41767637df904b0b041579af18e5b5e3c8e09dc89f0e2e3d252585e0765b6b6e34bf932df1ebdc62a7127ac8cfd
+DIST org.apache.felix.utils-1.11.8-source-release.tar.gz.asc 833 BLAKE2B 231acada5011f33a62460d027e76630fecbe15acd5dedc76673a80b6cd4de1ec7ae13a890cd02231a6e94a5555a33154c9144e514058733827841e98ab509d18 SHA512 06755950ed4d2d943c08d76c0abcfc8846f478e8a18543f551913ec7d74d1a946dc7c9f34444b4191186e41e7bd70594db8462c1bc7c895011696c03ada06921
diff --git a/dev-java/felix-utils/felix-utils-1.11.8-r1.ebuild b/dev-java/felix-utils/felix-utils-1.11.8-r1.ebuild
new file mode 100644
index 000000000000..7ddf0241d207
--- /dev/null
+++ b/dev-java/felix-utils/felix-utils-1.11.8-r1.ebuild
@@ -0,0 +1,51 @@
+# 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.felix:org.apache.felix.utils:1.11.8"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Utility classes for OSGi"
+HOMEPAGE="https://felix.apache.org/documentation/index.html"
+SRC_URI="mirror://apache/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz
+ verify-sig? ( https://downloads.apache.org/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz.asc )"
+S="${WORKDIR}/org.apache.felix.utils-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ dev-java/osgi-cmpn:8
+ dev-java/osgi-core:0
+ test? (
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-felix )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/felix.apache.org.asc"
+
+PATCHES=(
+ "${FILESDIR}/felix-utils-1.11.8-Port-to-osgi-cmpn.patch"
+)
+
+DOCS=( DEPENDENCIES NOTICE doc/changelog.txt )
+
+JAVA_CLASSPATH_EXTRA="osgi-cmpn-8,osgi-core"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+src_prepare() {
+ default # https://bugs.gentoo.org/780585
+}
diff --git a/dev-java/felix-utils/felix-utils-1.2.0.ebuild b/dev-java/felix-utils/felix-utils-1.2.0.ebuild
deleted file mode 100644
index 67872db2be2c..000000000000
--- a/dev-java/felix-utils/felix-utils-1.2.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="Felix Utils"
-HOMEPAGE="http://felix.apache.org/"
-LICENSE="Apache-2.0"
-
-MY_PN="org.apache.felix.utils"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="mirror://apache/felix/${MY_P}-source-release.tar.gz"
-SLOT="0"
-KEYWORDS="amd64"
-
-DEPEND=">=virtual/jdk-1.6
- dev-java/felix-gogo-runtime:0
- dev-java/osgi-compendium:0
- dev-java/osgi-core-api:0"
-
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-
- epatch "${FILESDIR}"/${P}-java-fixes.patch
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-src_compile() {
- EANT_EXTRA_ARGS="-Dgentoo.classpath=$(java-pkg_getjar --build-only osgi-core-api osgi-core-api.jar):$(java-pkg_getjar --build-only osgi-compendium osgi-compendium.jar):$(java-pkg_getjar --build-only felix-gogo-runtime felix-gogo-runtime.jar)"
-
- java-pkg-2_src_compile
-}
-
-src_install() {
- mv "${S}"/target/{${MY_P},${PN}}.jar || die
-
- java-osgi_dojar "${S}"/target/${PN}.jar ${MY_PN} ${MY_PN} "Export-Package: ${MY_PN}"
-}
diff --git a/dev-java/felix-utils/files/felix-utils-1.11.8-Port-to-osgi-cmpn.patch b/dev-java/felix-utils/files/felix-utils-1.11.8-Port-to-osgi-cmpn.patch
new file mode 100644
index 000000000000..22b0222af68b
--- /dev/null
+++ b/dev-java/felix-utils/files/felix-utils-1.11.8-Port-to-osgi-cmpn.patch
@@ -0,0 +1,123 @@
+From d7a2d969b55ab34a223ad1422b2e3ef7d95a347f Mon Sep 17 00:00:00 2001
+From: Marian Koncek <mkoncek@redhat.com>
+Date: Mon, 5 Nov 2018 09:59:04 +0100
+Subject: [PATCH] Port to osgi-cmpn
+
+---
+ .../utils/repository/AggregateRepository.java | 20 +++++++++++++++++++
+ .../utils/repository/BaseRepository.java | 19 ++++++++++++++++++
+ .../utils/properties/MockBundleContext.java | 10 ++++++++++
+ 3 files changed, 49 insertions(+)
+
+diff --git a/src/main/java/org/apache/felix/utils/repository/AggregateRepository.java b/src/main/java/org/apache/felix/utils/repository/AggregateRepository.java
+index 50dceaf..4da3141 100644
+--- a/src/main/java/org/apache/felix/utils/repository/AggregateRepository.java
++++ b/src/main/java/org/apache/felix/utils/repository/AggregateRepository.java
+@@ -25,7 +25,12 @@ import java.util.Map;
+
+ import org.osgi.resource.Capability;
+ import org.osgi.resource.Requirement;
++import org.osgi.resource.Resource;
++import org.osgi.service.repository.ExpressionCombiner;
+ import org.osgi.service.repository.Repository;
++import org.osgi.service.repository.RequirementBuilder;
++import org.osgi.service.repository.RequirementExpression;
++import org.osgi.util.promise.Promise;
+
+ public class AggregateRepository implements Repository {
+
+@@ -52,4 +57,19 @@ public class AggregateRepository implements Repository {
+ }
+ return result;
+ }
++
++ @Override
++ public Promise<Collection<Resource>> findProviders(RequirementExpression expression) {
++ throw new UnsupportedOperationException();
++ }
++
++ @Override
++ public ExpressionCombiner getExpressionCombiner() {
++ throw new UnsupportedOperationException();
++ }
++
++ @Override
++ public RequirementBuilder newRequirementBuilder(String namespace) {
++ throw new UnsupportedOperationException();
++ }
+ }
+diff --git a/src/main/java/org/apache/felix/utils/repository/BaseRepository.java b/src/main/java/org/apache/felix/utils/repository/BaseRepository.java
+index 95adadd..0998ab0 100644
+--- a/src/main/java/org/apache/felix/utils/repository/BaseRepository.java
++++ b/src/main/java/org/apache/felix/utils/repository/BaseRepository.java
+@@ -30,7 +30,11 @@ import org.osgi.framework.Constants;
+ import org.osgi.resource.Capability;
+ import org.osgi.resource.Requirement;
+ import org.osgi.resource.Resource;
++import org.osgi.service.repository.ExpressionCombiner;
+ import org.osgi.service.repository.Repository;
++import org.osgi.service.repository.RequirementBuilder;
++import org.osgi.service.repository.RequirementExpression;
++import org.osgi.util.promise.Promise;
+
+ /**
+ */
+@@ -90,4 +94,19 @@ public class BaseRepository implements Repository {
+ }
+ return result;
+ }
++
++ @Override
++ public Promise<Collection<Resource>> findProviders(RequirementExpression expression) {
++ throw new UnsupportedOperationException();
++ }
++
++ @Override
++ public ExpressionCombiner getExpressionCombiner() {
++ throw new UnsupportedOperationException();
++ }
++
++ @Override
++ public RequirementBuilder newRequirementBuilder(String namespace) {
++ throw new UnsupportedOperationException();
++ }
+ }
+diff --git a/src/test/java/org/apache/felix/utils/properties/MockBundleContext.java b/src/test/java/org/apache/felix/utils/properties/MockBundleContext.java
+index 3eab444..df94a6c 100644
+--- a/src/test/java/org/apache/felix/utils/properties/MockBundleContext.java
++++ b/src/test/java/org/apache/felix/utils/properties/MockBundleContext.java
+@@ -25,7 +25,9 @@ import org.osgi.framework.BundleListener;
+ import org.osgi.framework.Filter;
+ import org.osgi.framework.FrameworkListener;
+ import org.osgi.framework.InvalidSyntaxException;
++import org.osgi.framework.ServiceFactory;
+ import org.osgi.framework.ServiceListener;
++import org.osgi.framework.ServiceObjects;
+ import org.osgi.framework.ServiceReference;
+ import org.osgi.framework.ServiceRegistration;
+
+@@ -105,6 +107,10 @@ public class MockBundleContext implements BundleContext {
+ throw new UnsupportedOperationException();
+ }
+
++ public <S> ServiceRegistration<S> registerService(Class<S> clazz, ServiceFactory<S> factory, Dictionary<String, ?> properties) {
++ throw new UnsupportedOperationException();
++ }
++
+ public ServiceReference[] getServiceReferences(String s, String s1) throws InvalidSyntaxException {
+ throw new UnsupportedOperationException();
+ }
+@@ -125,6 +131,10 @@ public class MockBundleContext implements BundleContext {
+ throw new UnsupportedOperationException();
+ }
+
++ public <S> ServiceObjects<S> getServiceObjects(ServiceReference<S> reference) {
++ throw new UnsupportedOperationException();
++ }
++
+ public File getDataFile(String s) {
+ throw new UnsupportedOperationException();
+ }
+--
+2.17.2
+
diff --git a/dev-java/felix-utils/files/felix-utils-1.2.0-build.xml b/dev-java/felix-utils/files/felix-utils-1.2.0-build.xml
deleted file mode 100644
index cfe95ef2c6cf..000000000000
--- a/dev-java/felix-utils/files/felix-utils-1.2.0-build.xml
+++ /dev/null
@@ -1,299 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/13/13 2:09 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="org.apache.felix.utils-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="org.apache.felix.utils-1.2.0"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.1.0/org.osgi.compendium-4.1.0.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/org/osgi/org.osgi.compendium/4.1.0/org.osgi.compendium-4.1.0.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"/>
- <pathelement location="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="jsr14"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="changelog.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="jsr14"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.core/4.1.0/org.osgi.core-4.1.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/osgi/org.osgi.compendium/4.1.0"/>
- <get src="http://repository.apache.org/snapshots/org/osgi/org.osgi.compendium/4.1.0/org.osgi.compendium-4.1.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.1.0/org.osgi.compendium-4.1.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/osgi/org.osgi.compendium/4.1.0/org.osgi.compendium-4.1.0.jar"
- dest="${maven.repo.local}/org/osgi/org.osgi.compendium/4.1.0/org.osgi.compendium-4.1.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.0"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.0/junit-4.0.jar"
- dest="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.0/junit-4.0.jar"
- dest="${maven.repo.local}/junit/junit/4.0/junit-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/easymock/easymock/2.4"/>
- <get src="http://repository.apache.org/snapshots/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/easymock/easymock/2.4/easymock-2.4.jar"
- dest="${maven.repo.local}/org/easymock/easymock/2.4/easymock-2.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/mockito/mockito-all/1.7"/>
- <get src="http://repository.apache.org/snapshots/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- dest="${maven.repo.local}/org/mockito/mockito-all/1.7/mockito-all-1.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/felix-utils/files/felix-utils-1.2.0-java-fixes.patch b/dev-java/felix-utils/files/felix-utils-1.2.0-java-fixes.patch
deleted file mode 100644
index a973ca56a862..000000000000
--- a/dev-java/felix-utils/files/felix-utils-1.2.0-java-fixes.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- a/src/main/java/org/apache/felix/utils/filter/FilterImpl.java 2012-06-12 08:56:50.000000000 +0200
-+++ b/src/main/java/org/apache/felix/utils/filter/FilterImpl.java 2013-05-13 14:25:58.601527069 +0200
-@@ -25,6 +25,7 @@
- import java.security.AccessController;
- import java.security.PrivilegedAction;
- import java.util.*;
-+import java.util.Map.Entry;
-
- import org.apache.felix.utils.version.VersionTable;
- import org.osgi.framework.Filter;
-@@ -111,6 +111,19 @@
- converted = conv;
- }
-
-+ @Override
-+ public boolean matches(Map<String, ?> map)
-+ {
-+ Map nonGenericMap = new HashMap();
-+
-+ for(Entry<String, ?> entry : map.entrySet())
-+ {
-+ nonGenericMap.put(entry.getKey(), entry.getValue());
-+ }
-+
-+ return match0(nonGenericMap);
-+ }
-+
-
- /**
- * Filter using a service's properties.
-@@ -575,13 +587,13 @@
- switch (operation) {
- case APPROX :
- case EQUAL : {
-- return ((Version) value1).compareTo(converted) == 0;
-+ return ((Version) value1).compareTo((Version) converted) == 0;
- }
- case GREATER: {
-- return ((Version) value1).compareTo(converted) >= 0;
-+ return ((Version) value1).compareTo((Version) converted) >= 0;
- }
- case LESS: {
-- return ((Version) value1).compareTo(converted) <= 0;
-+ return ((Version) value1).compareTo((Version) converted) <= 0;
- }
- }
- } else {
diff --git a/dev-java/felix-utils/metadata.xml b/dev-java/felix-utils/metadata.xml
index 2444066aa02b..4af2d5d52d45 100644
--- a/dev-java/felix-utils/metadata.xml
+++ b/dev-java/felix-utils/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ </maintainer>
+ <upstream>
+ <doc>https://felix.apache.org/documentation/documentation.html</doc>
+ <remote-id type="github">apache/felix-dev</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/findbugs-annotations/Manifest b/dev-java/findbugs-annotations/Manifest
new file mode 100644
index 000000000000..d218d89a086e
--- /dev/null
+++ b/dev-java/findbugs-annotations/Manifest
@@ -0,0 +1 @@
+DIST findbugs-annotations-3.0.1-sources.jar 25170 BLAKE2B aebd9acccae5d4fe209aa9393fb35868a67096889375eab5817eeb6b6cabe950e1a3479826c921254fa1faeaaa8231095b5ef88dc2f83fa3b6ca2a76a1572b42 SHA512 bf77991bcbad1dd3e072c65df36d7714cf2f2967a01ed9e8435b6b40c925d905fc879c83303a227cffa5c3db4c960c9c6813ebb520f5d1c0f178f27710075d43
diff --git a/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild b/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild
new file mode 100644
index 000000000000..99153285f62d
--- /dev/null
+++ b/dev-java/findbugs-annotations/findbugs-annotations-3.0.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom findbugs-annotations-3.0.1.pom --download-uri https://repo1.maven.org/maven2/com/google/code/findbugs/findbugs-annotations/3.0.1/findbugs-annotations-3.0.1-sources.jar --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild findbugs-annotations-3.0.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+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="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"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: ${P}.pom
+# com.google.code.findbugs:jsr305:3.0.1 -> >=dev-java/jsr305-3.0.2:0
+
+CP_DEPEND="
+ >=dev-java/jsr305-3.0.2:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+BDEPEND="app-arch/unzip"
diff --git a/dev-java/findbugs-annotations/metadata.xml b/dev-java/findbugs-annotations/metadata.xml
new file mode 100644
index 000000000000..8a3dfbf0281d
--- /dev/null
+++ b/dev-java/findbugs-annotations/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="sourceforge">findbugs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/fishbowl/Manifest b/dev-java/fishbowl/Manifest
new file mode 100644
index 000000000000..4175f48650ea
--- /dev/null
+++ b/dev-java/fishbowl/Manifest
@@ -0,0 +1 @@
+DIST fishbowl-1.4.1.tar.gz 54572 BLAKE2B 75adfbbdf8c2d48ba6ca52d223f87d840e938514183f01bdb6b505a9cfd3485414d32d63f8f1cfc303c3a431c32e1accc9d319003f82b84016a621c8324f70b8 SHA512 9040bc8bad19457a828a88cdbe448ecbb6af6af279db58a4447670cd8a32cacf30d01ea0bc6614f75e3bfd6bf73e0bce06f33014d22e9963fd9e46fbcd2c94c9
diff --git a/dev-java/fishbowl/fishbowl-1.4.1.ebuild b/dev-java/fishbowl/fishbowl-1.4.1.ebuild
new file mode 100644
index 000000000000..a00f47a95146
--- /dev/null
+++ b/dev-java/fishbowl/fishbowl-1.4.1.ebuild
@@ -0,0 +1,53 @@
+# 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/stefanbirkner/fishbowl/archive/fishbowl-1.4.1.tar.gz --slot 0 --keywords "~amd64" --ebuild fishbowl-1.4.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.github.stefanbirkner:fishbowl:1.4.1"
+# Tests not possible, several test dependencies are missing.
+# JAVA_TESTING_FRAMEWORKS="testng junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Use the AAA pattern for writing tests for code that throws an exception"
+HOMEPAGE="https://github.com/stefanbirkner/fishbowl/"
+SRC_URI="https://github.com/stefanbirkner/${PN}/archive/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.google.truth:truth:0.25 -> !!!groupId-not-found!!!
+# test? de.bechte.junit:junit-hierarchicalcontextrunner:4.12.0 -> !!!groupId-not-found!!!
+# test? junit:junit:4.12 -> >=dev-java/junit-4.13.2:4
+# test? org.assertj:assertj-core:1.7.1 -> >=dev-java/assertj-core-2.3.0:2
+# test? org.easytesting:fest-assert:1.4 -> !!!groupId-not-found!!!
+# test? org.hamcrest:hamcrest-core:1.3 -> >=dev-java/hamcrest-core-1.3:1.3
+# test? org.hamcrest:hamcrest-library:1.3 -> >=dev-java/hamcrest-library-1.3:1.3
+# test? org.mockito:mockito-core:1.10.19 -> >=dev-java/mockito-4.4.0:4
+# test? org.testng:testng:6.8.17 -> !!!groupId-not-found!!!
+
+DEPEND=">=virtual/jdk-1.8:*"
+# test? (
+# !!!groupId-not-found!!!
+# >=dev-java/assertj-core-2.3.0:2
+# >=dev-java/hamcrest-core-1.3:1.3
+# >=dev-java/hamcrest-library-1.3:1.3
+# >=dev-java/mockito-4.4.0:4
+# )
+# "
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+# JAVA_TEST_GENTOO_CLASSPATH="!!!groupId-not-found!!!,!!!groupId-not-found!!!,junit-4,assertj-core-2,!!!groupId-not-found!!!,hamcrest-core-1.3,hamcrest-library-1.3,mockito-4,!!!groupId-not-found!!!"
+# JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/fishbowl/metadata.xml b/dev-java/fishbowl/metadata.xml
new file mode 100644
index 000000000000..9a4cc6850f96
--- /dev/null
+++ b/dev-java/fishbowl/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">stefanbirkner/fishbowl</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/fontbox/Manifest b/dev-java/fontbox/Manifest
index 33280965d295..088db0a2393c 100644
--- a/dev-java/fontbox/Manifest
+++ b/dev-java/fontbox/Manifest
@@ -1,2 +1,6 @@
-DIST fontbox-1.7.1.zip 9167805 BLAKE2B f9e02d1540eaf7e4bb748906e56887494d81eecc88685fa9d758cb50712a530528573f4a7e5f816b4ff57d664a416b35444517d840c9b37239ec1e2b5a62b5a1 SHA512 8b2af3d8f431626c106e4f6e9e1d59d14abcd58cfdc9553f20c5057eef9f9cfbd0287e14e58e4d34472ad81198eb3f4d0a2fd6e88bd1fa5cbcf01e4befbf77d0
-DIST pdfbox-1.8.11-src.zip 11026359 BLAKE2B b3eb1add38e9bd0e5a1fcb116263fdbc372d6adb77132aeb0647a6c5d2c2b735345220f0a5c22caa97d04f78ad6517df388327aaa625677bd8c99d2051329a9c SHA512 05c8e5075379ed5ebb09555b39434dd936fce9dd24445871d24ea7f0f6afa49e74242bf0c9eba2d1a847b505143789b687dd039ca51ce76851132f2f18d434d1
+DIST DejaVuSansMono.ttf 317336 BLAKE2B c80f50cea451963a75c66160596b67655afb19c9ea0d61b8a5cd38b81c66bdd89a24872d293fa8752b1ce0bb828d63caf91e682c283312d5828218943c63c095 SHA512 1af1ce3e6d34a0b89c93072d8646e92cceb45b276389d2dd0d84457ec1193394d2bcc49bf3ce99c9c6b2658cd1337fc40ee5c61957f74cd45dbc3d51b6aef417
+DIST NotoEmoji-Regular.ttf 418804 BLAKE2B e94f7b1d5bced052ff3f15a32ecce8f0f1dc2ef19565d3bcaa75b82676fbf0efeaa6efa1d25edf352b577acce17a45c6f0e7be1550c46a8c2ab6cef208cd6f11 SHA512 51b01ab0794be9f92c59679f6d56d4ce09ed959daeb9ec945bb837eb15a82ab302e83b29aab1972ac9cb648f7196a5f5ff4488a4622b36bedbc9cd0cab6dc3de
+DIST NotoSansSC-Regular.otf 8481960 BLAKE2B 3eee2c1e6be5e013d2ed679ccb361221e3e410150c7dc32d570382355e80e540c71be9009ece9951eea2379fb08fc05d8bcd65e941677660c55b450d660e8b03 SHA512 cbdd317d16099d24736457eef631353c7830a1a3c132b01f2cdc1e6a0c21a78e3b1fe8479b3f40179e7630a15cc23a093775bb22d521dba39376bb367d497b21
+DIST OpenSans-Regular.pfb 100962 BLAKE2B ff906c67a79df9d8deb9736f7439ba5429b72940b6a6fa49751fdea88adef70a3b57f28b2c31014da3206efe601095a8caeb98382fb36f8544afd0bec5cce355 SHA512 2787fcecc0feb1c9e6ff0d8de6193658413863e44eaab572751ca7e6c3b369c0a9731f4952cb0821f307760f0422f77c5f0d3fe7df6b054643fb39423e8d70ee
+DIST SourceSansProBold.otf 104072 BLAKE2B 2c6538ed97cca04a6a38a1bcca7def6c9e923f0e7a773c2715d50ca1a526b1ff683bc6544155b1e170fb828c3923d6b22cdf7017f9da9de164523f328c1cc187 SHA512 28a044a2685fbc8da7810d9ac7b6b93a95542d504d7d8e671f009b8ebb2f5b70c974be7ea78974b188d8e6ab17d65b08f276c054927857315d5aad26f6fe36fc
+DIST pdfbox-2.0.27-src.zip 15770627 BLAKE2B 9f93d597141ff3da39b69da3ce989a0cc7f4020071e5cb1609a8b86d0f12a3219037cb4c7b276acf58ee6b07d842b6d7c76e14fdf79e9efdeac401048e345f89 SHA512 59a5675f5d1d34f092adc019679f7d10e7e93c0f554a002ac29d48cbffcaa600d930309fa94a92191c01ead8da905cbb37ce5e233dcc9b8732a881d4abf75def
diff --git a/dev-java/fontbox/files/fontbox-1.7.1-build.xml b/dev-java/fontbox/files/fontbox-1.7.1-build.xml
deleted file mode 100644
index ccde1983d680..000000000000
--- a/dev-java/fontbox/files/fontbox-1.7.1-build.xml
+++ /dev/null
@@ -1,250 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 8/2/12 1:39 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="fontbox-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="fontbox-1.7.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- source="1.5"
- linksource="false"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/1.5.0/docs/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.8.1"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.8.1/junit-4.8.1.jar"
- dest="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.8.1/junit-4.8.1.jar"
- dest="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/fontbox/fontbox-1.7.1-r1.ebuild b/dev-java/fontbox/fontbox-1.7.1-r1.ebuild
deleted file mode 100644
index d2cd213f9ef4..000000000000
--- a/dev-java/fontbox/fontbox-1.7.1-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="pdfbox"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="An open source Java library for parsing font files"
-HOMEPAGE="https://pdfbox.apache.org/"
-SRC_URI="https://archive.apache.org/dist/pdfbox/${PV}/${MY_P}-src.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="1.7"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~x64-macos"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- dev-java/junit:4
- )"
-
-S="${WORKDIR}/${MY_P}/${PN}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_TEST_GENTOO_CLASSPATH="junit-4"
-
-src_prepare() {
- default
- cp -v "${FILESDIR}/${P}-build.xml" build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar ${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/org
-}
diff --git a/dev-java/fontbox/fontbox-1.8.11.ebuild b/dev-java/fontbox/fontbox-1.8.11.ebuild
deleted file mode 100644
index 8177f7c9f41d..000000000000
--- a/dev-java/fontbox/fontbox-1.8.11.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="pdfbox"
-MY_P="${MY_PN}-${PV}"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An open source Java library for parsing font files"
-HOMEPAGE="https://pdfbox.apache.org/"
-SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_P}-src.zip"
-LICENSE="Apache-2.0"
-SLOT="1.8"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND=">=dev-java/commons-logging-1.1.1:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="commons-logging"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README.txt
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find ${DIR} -name "*Test.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/fontbox/fontbox-2.0.27.ebuild b/dev-java/fontbox/fontbox-2.0.27.ebuild
new file mode 100644
index 000000000000..98a6bc644ba5
--- /dev/null
+++ b/dev-java/fontbox/fontbox-2.0.27.ebuild
@@ -0,0 +1,63 @@
+# 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 mirror://apache/pdfbox/2.0.27/pdfbox-2.0.27-src.zip --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild fontbox-2.0.27.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.pdfbox:fontbox:2.0.27"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An open source Java library for parsing font files"
+HOMEPAGE="https://pdfbox.apache.org/"
+SRC_URI="mirror://apache/pdfbox/${PV}/pdfbox-${PV}-src.zip
+ test? (
+ https://issues.apache.org/jira/secure/attachment/12684264/SourceSansProBold.otf
+ https://issues.apache.org/jira/secure/attachment/12896461/NotoEmoji-Regular.ttf
+ https://issues.apache.org/jira/secure/attachment/12809395/DejaVuSansMono.ttf
+ https://issues.apache.org/jira/secure/attachment/13036376/NotoSansSC-Regular.otf
+ https://mirrors.ctan.org/fonts/opensans/type1/OpenSans-Regular.pfb
+ )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
+
+CP_DEPEND="dev-java/commons-logging:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}/pdfbox-${PV}/${PN}"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.fontbox"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ mkdir --parents target/{pdfs,fonts} || die
+ cp \
+ "${DISTDIR}"/SourceSansProBold.otf \
+ "${DISTDIR}"/NotoEmoji-Regular.ttf \
+ "${DISTDIR}"/DejaVuSansMono.ttf \
+ "${DISTDIR}"/NotoSansSC-Regular.otf \
+ "target/pdfs" || die
+ cp "${DISTDIR}"/OpenSans-Regular.pfb \
+ "target/fonts" || die
+
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/fontbox/metadata.xml b/dev-java/fontbox/metadata.xml
index fac651d95a59..11e851d3838f 100644
--- a/dev-java/fontbox/metadata.xml
+++ b/dev-java/fontbox/metadata.xml
@@ -1,11 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <longdescription>
+ The Apache FontBox library is an open source Java tool to obtain low level
+ information from font files. FontBox is a subproject of Apache PDFBox.
+ </longdescription>
<upstream>
<remote-id type="github">apache/pdfbox</remote-id>
+ <bugs-to>https://issues.apache.org/jira/browse/PDFBOX</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/fop/Manifest b/dev-java/fop/Manifest
index 9cab9ee0471a..09319bb63d30 100644
--- a/dev-java/fop/Manifest
+++ b/dev-java/fop/Manifest
@@ -1 +1,4 @@
-DIST fop-2.0-src.zip 26381859 BLAKE2B 8500de6a23e93c14fdb4f27c59bafba27a64e6aaffb7a761f16de5bd523e2fdb83593ab53a66de79bf7b7d6c2b887ab97a34accb18be416b26448753babe2395 SHA512 428793303fcf143cffaecadc22cfdb8a065bad0108cceebcabc479d92dbe9834b4f81fd27f3e0314546d848e1960b2fe1a9d443999d8f336f7e87fce771beb7a
+DIST fop-2.7-jars.tar.xz 7348 BLAKE2B 79a5b4f1948bbc9628e571a9873494e2d2088d7a90296e81e03cafa6ecd8f9d1c8dd6779d15c47a0e110304aa07e706c56412e3766a84e0a66c8224fdd92f61c SHA512 71c39cbb20416dc29beb8628ae8bac2a663c0b0d1f0418a241f3795a2d5e01159572c210b5a2d2eff8274247dc3631980de50fea4f94182ddde095d0e5e605c6
+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.9-FO2StructureTreeConverterTestCase.patch b/dev-java/fop/files/fop-2.9-FO2StructureTreeConverterTestCase.patch
new file mode 100644
index 000000000000..87e36eb4b49c
--- /dev/null
+++ b/dev-java/fop/files/fop-2.9-FO2StructureTreeConverterTestCase.patch
@@ -0,0 +1,45 @@
+There were 2 failures:
+1) testRemoveBlocks(org.apache.fop.accessibility.fo.FO2StructureTreeConverterTestCase)
+org.junit.ComparisonFailure: expected:<....0" encoding="UTF-8"[ standalone="no"]?><structure-tree-se...> but was:<....0" encoding="UTF-8"[]?><structure-tree-se...>
+ at org.junit.Assert.assertEquals(Assert.java:117)
+ at org.junit.Assert.assertEquals(Assert.java:146)
+ at org.apache.fop.accessibility.fo.FO2StructureTreeConverterTestCase.compare(FO2StructureTreeConverterTestCase.java:225)
+ at org.apache.fop.accessibility.fo.FO2StructureTreeConverterTestCase.testRemoveBlocks(FO2StructureTreeConverterTestCase.java:150)
+2) testRemoveTableHeader(org.apache.fop.accessibility.fo.FO2StructureTreeConverterTestCase)
+org.junit.ComparisonFailure: expected:<....0" encoding="UTF-8"[ standalone="no"]?><structure-tree-se...> but was:<....0" encoding="UTF-8"[]?><structure-tree-se...>
+ at org.junit.Assert.assertEquals(Assert.java:117)
+ at org.junit.Assert.assertEquals(Assert.java:146)
+ at org.apache.fop.accessibility.fo.FO2StructureTreeConverterTestCase.compare(FO2StructureTreeConverterTestCase.java:225)
+ at org.apache.fop.accessibility.fo.FO2StructureTreeConverterTestCase.testRemoveTableHeader(FO2StructureTreeConverterTestCase.java:187)
+
+FAILURES!!!
+Tests run: 11, Failures: 2
+
+--- 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\"", "");
diff --git a/dev-java/fop/files/fop-2.9-MissingLanguageWarningTestCase.patch b/dev-java/fop/files/fop-2.9-MissingLanguageWarningTestCase.patch
new file mode 100644
index 000000000000..b3c70d33356c
--- /dev/null
+++ b/dev-java/fop/files/fop-2.9-MissingLanguageWarningTestCase.patch
@@ -0,0 +1,88 @@
+There was 1 failure:
+1) testMissingLanguage(org.apache.fop.accessibility.pdf.MissingLanguageWarningTestCase)
+org.junit.ComparisonFailure: expected:<3[2:36]> but was:<3[0:37]>
+ at org.junit.Assert.assertEquals(Assert.java:117)
+ at org.junit.Assert.assertEquals(Assert.java:146)
+ at org.apache.fop.accessibility.pdf.MissingLanguageWarningTestCase$MissingLanguageEventChecker.processEvent(MissingLanguageWarningTestCase.java:65)
+ at org.apache.fop.events.CompositeEventListener.processEvent(CompositeEventListener.java:61)
+ at org.apache.fop.events.FOPEventListenerProxy.processEvent(FOPEventListenerProxy.java:70)
+ at org.apache.fop.apps.FOUserAgent$FOPEventBroadcaster.broadcastEvent(FOUserAgent.java:621)
+ at org.apache.fop.events.DefaultEventBroadcaster$1.invoke(DefaultEventBroadcaster.java:170)
+ at jdk.proxy2/jdk.proxy2.$Proxy12.unknownLanguage(Unknown Source)
+ at org.apache.fop.render.pdf.PDFPainter$LanguageAvailabilityChecker.checkLanguageAvailability(PDFPainter.java:106)
+ at org.apache.fop.render.pdf.PDFPainter$LanguageAvailabilityChecker.access$000(PDFPainter.java:90)
+ at org.apache.fop.render.pdf.PDFPainter.prepareImageMCID(PDFPainter.java:238)
+ at org.apache.fop.render.pdf.PDFPainter.drawImageUsingURI(PDFPainter.java:216)
+ at org.apache.fop.render.pdf.PDFPainter.drawImage(PDFPainter.java:182)
+ at org.apache.fop.render.intermediate.IFRenderer.drawImage(IFRenderer.java:1306)
+ at org.apache.fop.render.intermediate.IFRenderer.renderImage(IFRenderer.java:1293)
+ at org.apache.fop.render.AbstractRenderer.renderInlineViewport(AbstractRenderer.java:1030)
+ at org.apache.fop.render.AbstractPathOrientedRenderer.renderInlineViewport(AbstractPathOrientedRenderer.java:836)
+ at org.apache.fop.render.intermediate.IFRenderer.renderInlineViewport(IFRenderer.java:860)
+ at org.apache.fop.render.AbstractRenderer.renderInlineArea(AbstractRenderer.java:877)
+ at org.apache.fop.render.intermediate.IFRenderer.renderInlineArea(IFRenderer.java:924)
+ at org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java:845)
+ at org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:704)
+ at org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:758)
+ at org.apache.fop.render.intermediate.IFRenderer.renderBlock(IFRenderer.java:1004)
+ at org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:689)
+ at org.apache.fop.render.AbstractRenderer.renderFlow(AbstractRenderer.java:591)
+ at org.apache.fop.render.AbstractPathOrientedRenderer.renderFlow(AbstractPathOrientedRenderer.java:789)
+ at org.apache.fop.render.AbstractRenderer.renderMainReference(AbstractRenderer.java:568)
+ at org.apache.fop.render.AbstractRenderer.renderBodyRegion(AbstractRenderer.java:433)
+ at org.apache.fop.render.AbstractRenderer.renderRegionViewport(AbstractRenderer.java:380)
+ at org.apache.fop.render.intermediate.IFRenderer.renderRegionViewport(IFRenderer.java:735)
+ at org.apache.fop.render.AbstractRenderer.renderPageAreas(AbstractRenderer.java:345)
+ at org.apache.fop.render.AbstractRenderer.renderPage(AbstractRenderer.java:318)
+ at org.apache.fop.render.intermediate.IFRenderer.renderPage(IFRenderer.java:584)
+ at org.apache.fop.area.RenderPagesModel.renderPage(RenderPagesModel.java:193)
+ at org.apache.fop.area.RenderPagesModel.checkPreparedPages(RenderPagesModel.java:174)
+ at org.apache.fop.area.RenderPagesModel.addPage(RenderPagesModel.java:146)
+ at org.apache.fop.layoutmgr.AbstractPageSequenceLayoutManager.finishPage(AbstractPageSequenceLayoutManager.java:316)
+ at org.apache.fop.layoutmgr.PageSequenceLayoutManager.finishPage(PageSequenceLayoutManager.java:243)
+ at org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:147)
+ at org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:267)
+ at org.apache.fop.fo.DelegatingFOEventHandler.endPageSequence(DelegatingFOEventHandler.java:114)
+ at org.apache.fop.accessibility.fo.FO2StructureTreeConverter.endPageSequence(FO2StructureTreeConverter.java:184)
+ at org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:140)
+ at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java:390)
+ at org.apache.fop.fo.FOTreeBuilder$3.run(FOTreeBuilder.java:207)
+ at org.apache.fop.fo.FOTreeBuilder$3.run(FOTreeBuilder.java:204)
+ at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
+ at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:203)
+ at org.apache.xalan.transformer.TransformerIdentityImpl.endElement(TransformerIdentityImpl.java:1102)
+ at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:618)
+ at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1728)
+ at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2899)
+ at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
+ at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
+ at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542)
+ at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889)
+ at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825)
+ at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
+ at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224)
+ at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:485)
+ at org.apache.fop.accessibility.pdf.MissingLanguageWarningTestCase.testMissingLanguage(MissingLanguageWarningTestCase.java:90)
+
+FAILURES!!!
+Tests run: 10, Failures: 1
+
+--- a/fop-core/src/test/java/org/apache/fop/accessibility/pdf/MissingLanguageWarningTestCase.java
++++ b/fop-core/src/test/java/org/apache/fop/accessibility/pdf/MissingLanguageWarningTestCase.java
+@@ -31,6 +31,7 @@ import javax.xml.transform.stream.StreamSource;
+
+ import org.junit.Before;
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import static org.junit.Assert.assertEquals;
+ import static org.junit.Assert.assertFalse;
+@@ -82,7 +83,7 @@ public class MissingLanguageWarningTestCase {
+ fop = fopFactory.newFop(MimeConstants.MIME_PDF, userAgent, NullOutputStream.NULL_OUTPUT_STREAM);
+ }
+
+- @Test
++ @Test @Ignore
+ public void testMissingLanguage() throws Exception {
+ Source src = new StreamSource(getClass().getResourceAsStream("missing-language.fo"));
+ SAXResult res = new SAXResult(fop.getDefaultHandler());
diff --git a/dev-java/fop/files/fop-2.9-PDFEncodingTestCase.patch b/dev-java/fop/files/fop-2.9-PDFEncodingTestCase.patch
new file mode 100644
index 000000000000..8508de962382
--- /dev/null
+++ b/dev-java/fop/files/fop-2.9-PDFEncodingTestCase.patch
@@ -0,0 +1,31 @@
+There was 1 failure:
+1) testPDFEncodingWithStandardFont(org.apache.fop.render.pdf.PDFEncodingTestCase)
+java.lang.AssertionError: line containing 'PDFE_TEST_MARK_2' must contain 'XX_é_XX'
+ at org.junit.Assert.fail(Assert.java:89)
+ at org.junit.Assert.assertTrue(Assert.java:42)
+ at org.apache.fop.render.pdf.PDFEncodingTestCase.checkEncoding(PDFEncodingTestCase.java:159)
+ at org.apache.fop.render.pdf.PDFEncodingTestCase.runTest(PDFEncodingTestCase.java:128)
+ at org.apache.fop.render.pdf.PDFEncodingTestCase.testPDFEncodingWithStandardFont(PDFEncodingTestCase.java:78)
+
+FAILURES!!!
+Tests run: 3, Failures: 1
+
+--- 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/files/fop-2.9-PDFToUnicodeCMapTestCase.patch b/dev-java/fop/files/fop-2.9-PDFToUnicodeCMapTestCase.patch
new file mode 100644
index 000000000000..f08052ac6483
--- /dev/null
+++ b/dev-java/fop/files/fop-2.9-PDFToUnicodeCMapTestCase.patch
@@ -0,0 +1,33 @@
+There was 1 failure:
+1) unpairedHighSurrogateTest(org.apache.fop.pdf.PDFToUnicodeCMapTestCase)
+java.lang.IllegalStateException: Event model isn't consistent with the EventProducer interface. Please rebuild FOP! Affected method: org.apache.fop.render.pdf.PDFEventProducer.unpairedSurrogate
+ at org.apache.fop.events.DefaultEventBroadcaster$1.invoke(DefaultEventBroadcaster.java:155)
+ at jdk.proxy2/jdk.proxy2.$Proxy11.unpairedSurrogate(Unknown Source)
+ at org.apache.fop.pdf.PDFToUnicodeCMap$ToUnicodeCMapBuilder.writeBFCharEntries(PDFToUnicodeCMap.java:160)
+ at org.apache.fop.pdf.PDFToUnicodeCMap$ToUnicodeCMapBuilder.writeBFEntries(PDFToUnicodeCMap.java:108)
+ at org.apache.fop.pdf.PDFToUnicodeCMap$ToUnicodeCMapBuilder.writeCMap(PDFToUnicodeCMap.java:99)
+ at org.apache.fop.pdf.PDFToUnicodeCMapTestCase.buildAndAssertLine(PDFToUnicodeCMapTestCase.java:100)
+ at org.apache.fop.pdf.PDFToUnicodeCMapTestCase.unpairedHighSurrogateTest(PDFToUnicodeCMapTestCase.java:307)
+
+FAILURES!!!
+Tests run: 10, Failures:
+
+--- a/fop-core/src/test/java/org/apache/fop/pdf/PDFToUnicodeCMapTestCase.java
++++ b/fop-core/src/test/java/org/apache/fop/pdf/PDFToUnicodeCMapTestCase.java
+@@ -29,6 +29,7 @@ import java.util.Set;
+ import org.junit.Assert;
+ import org.junit.Before;
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import static org.junit.Assert.assertEquals;
+ import static org.junit.Assert.assertNotNull;
+@@ -278,7 +279,7 @@ public class PDFToUnicodeCMapTestCase {
+ * Checks that an unpaired surrogate (a high-surrogate as the last code unit) is correctly handled.
+ * @throws IOException
+ */
+- @Test
++ @Test @Ignore
+ public void unpairedHighSurrogateTest() throws IOException {
+ final int charMapSize = 10;
+
diff --git a/dev-java/fop/files/headless-launcher.bash b/dev-java/fop/files/headless-launcher.bash
deleted file mode 100644
index a01c56f5e6ef..000000000000
--- a/dev-java/fop/files/headless-launcher.bash
+++ /dev/null
@@ -1 +0,0 @@
-[[ "${!#}" = "-awt" ]] || gjl_java_args="-Djava.awt.headless=true"
diff --git a/dev-java/fop/fop-2.0-r3.ebuild b/dev-java/fop/fop-2.0-r3.ebuild
deleted file mode 100644
index 6265183f67ad..000000000000
--- a/dev-java/fop/fop-2.0-r3.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# TODO: if 'doc' use flag is used then should build also extra docs ('docs' ant target), currently it cannot
-# be built as it needs forrest which we do not have
-# TODO: package and use optional dependency jeuclid
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Formatting Objects Processor is a print formatter driven by XSL"
-HOMEPAGE="https://xmlgraphics.apache.org/fop/"
-SRC_URI="mirror://apache/xmlgraphics/${PN}/source/${P}-src.zip"
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# Tests are broken even in 2.0
-RESTRICT="test"
-
-CDEPEND="
- dev-java/batik:1.9
- dev-java/ant-core:0
- dev-java/fontbox:1.7
- dev-java/commons-io:1
- dev-java/commons-logging:0
- java-virtuals/servlet-api:3.0
- dev-java/avalon-framework:4.2
- dev-java/xmlgraphics-commons:2
- dev-java/xml-commons-external:1.3
- dev-java/qdox:1.12"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-# test? (
-# dev-java/ant-junit:0
-# dev-java/junit:4
-# dev-java/xmlunit:1
-# dev-java/mockito:0
-# )"
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-EANT_GENTOO_CLASSPATH="
- ant-core
- batik-1.9
- fontbox-1.7
- commons-io-1
- commons-logging
- servlet-api-3.0
- avalon-framework-4.2
- xmlgraphics-commons-2
- xml-commons-external-1.3
-"
-
-TARGETS=(
- resourcegen
- jar-hyphenation
- jar-sandbox
- jar-main
-)
-
-java_prepare() {
- find "${S}"/lib -type f | xargs rm -v
-}
-
-src_compile() {
- # https://bugs.gentoo.org/show_bug.cgi?id=554386
- # http://wiki.apache.org/xmlgraphics-fop/HowTo/BuildFOPAlternatively
- java-pkg_jar-from --into lib qdox-1.12 qdox.jar
- java-pkg_jar-from --into lib xmlgraphics-commons-2 xmlgraphics-commons.jar
- java-pkg_jar-from --into lib commons-logging commons-logging.jar
- java-pkg_jar-from --into lib commons-io-1 commons-io.jar
- java-pkg_jar-from --into lib fontbox-1.7 fontbox.jar
- java-pkg_jar-from --into lib xml-commons-external-1.3 xml-apis-ext.jar
- java-pkg_jar-from --into lib xml-commons-external-1.3 xml-apis.jar
- java-pkg_jar-from --into lib avalon-framework-4.2 avalon-framework.jar
- java-pkg_jar-from --virtual --into lib servlet-api-3.0 servlet-api.jar
-
- for target in ${TARGETS[@]}; do
- EANT_BUILD_TARGET="${target}" \
- java-pkg-2_src_compile
- done
-
- if use doc; then
- sed -i -e 's/failonerror=\"true\"/failonerror=\"false\"/;' ./build.xml
- EANT_BUILD_TARGET="javadocs" \
- java-pkg-2_src_compile
- fi
-}
-
-src_install() {
- java-pkg_dojar \
- build/${PN}.jar \
- build/${PN}-sandbox.jar \
- build/${PN}-hyph.jar
-
- java-pkg_dolauncher \
- ${PN} --main org.apache.fop.cli.Main \
- -pre "${FILESDIR}/headless-launcher.bash"
-
- dodoc NOTICE README
-
- if use doc; then
- java-pkg_dojavadoc \
- build/javadocs
- fi
-
- if use examples; then
- java-pkg_doexamples \
- examples/* conf
- fi
-
- if use source; then
- java-pkg_dosrc \
- src/java/org \
- src/sandbox/org
- fi
-}
diff --git a/dev-java/fop/fop-2.9-r1.ebuild b/dev-java/fop/fop-2.9-r1.ebuild
new file mode 100644
index 000000000000..c9268c877d7d
--- /dev/null
+++ b/dev-java/fop/fop-2.9-r1.ebuild
@@ -0,0 +1,201 @@
+# 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.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://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"
+
+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/ant-1.10.14-r3:0
+ dev-java/batik:1.16
+ dev-java/commons-io:1
+ dev-java/commons-logging:0
+ dev-java/fontbox:0
+ dev-java/javax-servlet-api:2.2
+ dev-java/qdox:1.12
+ dev-java/sun-jai-bin:0
+ dev-java/xmlgraphics-commons:2
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/mockito:2
+ dev-java/pdfbox:0
+ dev-java/xmlunit:1
+ )
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( NOTICE README )
+
+PATCHES=(
+ "${FILESDIR}/fop-2.9-PDFEncodingTestCase.patch"
+ "${FILESDIR}/fop-2.9-PDFToUnicodeCMapTestCase.patch"
+ "${FILESDIR}/fop-2.9-MissingLanguageWarningTestCase.patch"
+ "${FILESDIR}/fop-2.9-FO2StructureTreeConverterTestCase.patch"
+)
+
+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() {
+ # while ant could install multiple jar files we only need ant.jar
+ JAVA_GENTOO_CLASSPATH_EXTRA=":$(java-pkg_getjar ant ant.jar)"
+
+ 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
+ mkdir generated-test || die
+ mv {target/test-classes,generated-test}/org || 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" \
+ )
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ # these tests would fail with java.lang.NoSuchMethodError if compiled with jdk-1.8
+ if ver_test "${vm_version}" -eq "1.8"; then
+ JAVA_TEST_RUN_ONLY=${JAVA_TEST_RUN_ONLY//org.apache.fop.render.pdf.PDFEncodingTestCase}
+ JAVA_TEST_RUN_ONLY=${JAVA_TEST_RUN_ONLY//org.apache.fop.fonts.truetype.OTFToType1TestCase}
+# org.apache.fop.render.pdf.PDFEncodingTestCase
+# org.apache.fop.fonts.truetype.OTFToType1TestCase
+ fi
+ 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/metadata.xml b/dev-java/fop/metadata.xml
index 37998bf40746..3f00c936434b 100644
--- a/dev-java/fop/metadata.xml
+++ b/dev-java/fop/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://issues.apache.org/jira/projects/FOP/issues</bugs-to>
+ <changelog>https://xmlgraphics.apache.org/fop/changes.html</changelog>
+ <remote-id type="github">apache/xmlgraphics-fop</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/forehead/Manifest b/dev-java/forehead/Manifest
deleted file mode 100644
index 4d2edd5f7814..000000000000
--- a/dev-java/forehead/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST forehead-1.0_beta5.tbz2 15665 BLAKE2B d127cdc737301003bbf8b471d7ecea66f3f4a66925b446b7fac9b18e20c4e560ec301ed36b8bb6f17ec1e8adfc742b5127042fdf707ce051293b49a99bdad7bd SHA512 1558b0d26a4df210dfd188839e4feb8a8b2369fb514c82f99fdd337cec3520e3555ce7999e2bb11459de4ea04db0820d729c9ebf762fd5bbd91ef56a30c6f0be
diff --git a/dev-java/forehead/forehead-1.0_beta5-r2.ebuild b/dev-java/forehead/forehead-1.0_beta5-r2.ebuild
deleted file mode 100644
index c511d691129b..000000000000
--- a/dev-java/forehead/forehead-1.0_beta5-r2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A framework to assist in controlling the run-time ClassLoader"
-HOMEPAGE="http://forehead.werken.com"
-SRC_URI="mirror://gentoo/${P}.tbz2"
-
-LICENSE="Werken-1.1.1.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${PN}"
-
-JAVA_SRC_DIR="src"
diff --git a/dev-java/forehead/metadata.xml b/dev-java/forehead/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/forehead/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/freehep-graphics2d/Manifest b/dev-java/freehep-graphics2d/Manifest
deleted file mode 100644
index c46a7d1e42f7..000000000000
--- a/dev-java/freehep-graphics2d/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST freehep-chartable-converter-plugin-2.2.1.tar.gz 18159 BLAKE2B 3b0c166c00fb2fa86fbb13adf8855ac21907d7397bb62997457e8528c7fd2d88657f7bdd4c820e4561e4303a36730b3826806e0cbc76506d49f27d0a4d528996 SHA512 4caac8b83b9efdee59e2a801bb001fdf7bab144bb5734bdb89ef3e1163bc9ffd05b2c8c59d611665573c432045a854fba28eb4d24260baea5286b34ae298add1
-DIST freehep-vectorgraphics-2.4.tar.gz 4118379 BLAKE2B c8a5840ebab43398a6f87f97855a38f843b0e05267f5446b5f22a0c0124c98717c00801fe93ef3b541b2c53d07176ab1319a27ad26ed177b6dded11e3fa2e7bb SHA512 b5cf083cc6951e7c4b438d5e648f61ca20b23e02163a8cfc4669beaaec2fa9e33338b0ba6875bfe4a3864ac48f9774acfedc2a3b2f59a7488ef99a4817e39382
diff --git a/dev-java/freehep-graphics2d/freehep-graphics2d-2.4.ebuild b/dev-java/freehep-graphics2d/freehep-graphics2d-2.4.ebuild
deleted file mode 100644
index 9b6f57c388c4..000000000000
--- a/dev-java/freehep-graphics2d/freehep-graphics2d-2.4.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CHARTABLE_PN="freehep-chartable-converter-plugin"
-CHARTABLE_P="${CHARTABLE_PN}-2.2.1"
-
-MY_PN="freehep-vectorgraphics"
-MY_P="${MY_PN}-${PV}"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP Graphics 2D Library"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${MY_PN}/archive/${MY_P}.tar.gz
- https://github.com/freehep/${CHARTABLE_PN}/archive/${CHARTABLE_P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="~dev-java/freehep-graphicsbase-${PV}:${SLOT}"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? ( dev-java/junit:4 )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="freehep-graphicsbase"
-
-src_compile() {
- # This package uses a custom Maven plugin to generate some
- # sources. We're not using Maven but we can run it manually. We
- # could package the plugin separately but it's not used elsewhere.
-
- local SRC ENC CP="${WORKDIR}"/${CHARTABLE_PN}-${CHARTABLE_P}/src/main/java CLASS=org/freehep/graphics2d/font/encoding/CharTableConverter
- ejavac "${CP}/${CLASS}.java"
-
- for SRC in src/main/encoding/{Expert,Symbol,Zapfdingbats}.utf-16; do
- ebegin "Converting ${SRC}"
- java -cp "${CP}" ${CLASS} ${JAVA_SRC_DIR} org.freehep.graphics2d.font ${SRC} || die
- eend $?
- done
-
- SRC=src/main/encoding/Latin.utf-16
-
- for ENC in ISO MAC WIN PDF STD; do
- ebegin "Converting ${SRC} (${ENC})"
- java -cp "${CP}" ${CLASS} ${JAVA_SRC_DIR} org.freehep.graphics2d.font ${SRC} ${ENC} || die
- eend $?
- done
-
- java-pkg-simple_src_compile
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find ${DIR} -name "Test*.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/freehep-graphics2d/metadata.xml b/dev-java/freehep-graphics2d/metadata.xml
deleted file mode 100644
index 696a250adce4..000000000000
--- a/dev-java/freehep-graphics2d/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-vectorgraphics</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freehep-graphicsbase/Manifest b/dev-java/freehep-graphicsbase/Manifest
deleted file mode 100644
index 9ab19829d002..000000000000
--- a/dev-java/freehep-graphicsbase/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freehep-vectorgraphics-2.4.tar.gz 4118379 BLAKE2B c8a5840ebab43398a6f87f97855a38f843b0e05267f5446b5f22a0c0124c98717c00801fe93ef3b541b2c53d07176ab1319a27ad26ed177b6dded11e3fa2e7bb SHA512 b5cf083cc6951e7c4b438d5e648f61ca20b23e02163a8cfc4669beaaec2fa9e33338b0ba6875bfe4a3864ac48f9774acfedc2a3b2f59a7488ef99a4817e39382
diff --git a/dev-java/freehep-graphicsbase/freehep-graphicsbase-2.4.ebuild b/dev-java/freehep-graphicsbase/freehep-graphicsbase-2.4.ebuild
deleted file mode 100644
index 75ea8d477b41..000000000000
--- a/dev-java/freehep-graphicsbase/freehep-graphicsbase-2.4.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="freehep-vectorgraphics"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP Graphics Base Library"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${MY_PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/freehep-io:0
- dev-java/junit:4"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="freehep-io,junit-4"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars ${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find ${DIR} -name "*Test.java" ! -name "ExportFileTypeTest.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/freehep-graphicsbase/metadata.xml b/dev-java/freehep-graphicsbase/metadata.xml
deleted file mode 100644
index 696a250adce4..000000000000
--- a/dev-java/freehep-graphicsbase/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-vectorgraphics</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freehep-graphicsio-emf/Manifest b/dev-java/freehep-graphicsio-emf/Manifest
deleted file mode 100644
index 9ab19829d002..000000000000
--- a/dev-java/freehep-graphicsio-emf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freehep-vectorgraphics-2.4.tar.gz 4118379 BLAKE2B c8a5840ebab43398a6f87f97855a38f843b0e05267f5446b5f22a0c0124c98717c00801fe93ef3b541b2c53d07176ab1319a27ad26ed177b6dded11e3fa2e7bb SHA512 b5cf083cc6951e7c4b438d5e648f61ca20b23e02163a8cfc4669beaaec2fa9e33338b0ba6875bfe4a3864ac48f9774acfedc2a3b2f59a7488ef99a4817e39382
diff --git a/dev-java/freehep-graphicsio-emf/files/github-30.patch b/dev-java/freehep-graphicsio-emf/files/github-30.patch
deleted file mode 100644
index c652ec6b861b..000000000000
--- a/dev-java/freehep-graphicsio-emf/files/github-30.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-https://github.com/freehep/freehep-vectorgraphics/issues/30
-
-diff -Naur freehep-vectorgraphics-freehep-vectorgraphics-2.4.orig/freehep-graphicsio-emf/src/main/java/org/freehep/graphicsio/emf/EMFConverter.java freehep-vectorgraphics-freehep-vectorgraphics-2.4/freehep-graphicsio-emf/src/main/java/org/freehep/graphicsio/emf/EMFConverter.java
---- freehep-vectorgraphics-freehep-vectorgraphics-2.4.orig/freehep-graphicsio-emf/src/main/java/org/freehep/graphicsio/emf/EMFConverter.java 2014-09-02 09:59:14.000000000 +0100
-+++ freehep-vectorgraphics-freehep-vectorgraphics-2.4/freehep-graphicsio-emf/src/main/java/org/freehep/graphicsio/emf/EMFConverter.java 2016-05-25 22:50:41.859734476 +0100
-@@ -4,6 +4,7 @@
- import org.freehep.graphicsbase.util.export.ExportFileType;
-
- import java.util.List;
-+import java.util.Properties;
- import java.io.FileInputStream;
- import java.io.File;
-
-@@ -64,9 +65,10 @@
- destFileName += type.toLowerCase();
- }
-
-+ Properties p = new Properties();
-+
- // TODO there is no possibility to use Constants of base class!
- /* create SVG properties
-- Properties p = new Properties();
- p.put(SVGGraphics2D.EMBED_FONTS, Boolean.toString(false));
- p.put(SVGGraphics2D.CLIP, Boolean.toString(true));
- p.put(SVGGraphics2D.COMPRESS, Boolean.toString(false));
-@@ -82,7 +84,7 @@
- new File(destFileName),
- emfPanel,
- emfPanel,
-- null,
-+ p,
- "Freehep EMF converter");
- } catch (Exception e) {
- e.printStackTrace();
diff --git a/dev-java/freehep-graphicsio-emf/freehep-graphicsio-emf-2.4.ebuild b/dev-java/freehep-graphicsio-emf/freehep-graphicsio-emf-2.4.ebuild
deleted file mode 100644
index 7fa5dd56be35..000000000000
--- a/dev-java/freehep-graphicsio-emf/freehep-graphicsio-emf-2.4.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="freehep-vectorgraphics"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit epatch java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP Enhanced Metafile Format Driver"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${MY_PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="~dev-java/freehep-graphics2d-${PV}:${SLOT}
- ~dev-java/freehep-graphicsbase-${PV}:${SLOT}
- ~dev-java/freehep-graphicsio-${PV}:${SLOT}
- dev-java/freehep-io:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? (
- ~dev-java/freehep-graphicsio-tests-${PV}:${SLOT}
- dev-java/junit:4
- )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="freehep-graphics2d,freehep-graphicsbase,freehep-graphicsio,freehep-io"
-
-java_prepare() {
- epatch "${FILESDIR}"/github-30.patch
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_register-optional-dependency freehep-graphicsio-svg
- java-pkg_dolauncher emf2svg --main org.freehep.graphicsio.emf.EMF2SVG
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,freehep-graphicsio-tests,${JAVA_GENTOO_CLASSPATH})"
-
- ejavac -cp "${CP}" -d ${DIR} $(find ${DIR} -name "*.java")
- ejunit4 -classpath "${CP}" org.freehep.graphicsio.emf.test.EMFTestSuite
-}
diff --git a/dev-java/freehep-graphicsio-emf/metadata.xml b/dev-java/freehep-graphicsio-emf/metadata.xml
deleted file mode 100644
index 696a250adce4..000000000000
--- a/dev-java/freehep-graphicsio-emf/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-vectorgraphics</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freehep-graphicsio-svg/Manifest b/dev-java/freehep-graphicsio-svg/Manifest
deleted file mode 100644
index 9ab19829d002..000000000000
--- a/dev-java/freehep-graphicsio-svg/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freehep-vectorgraphics-2.4.tar.gz 4118379 BLAKE2B c8a5840ebab43398a6f87f97855a38f843b0e05267f5446b5f22a0c0124c98717c00801fe93ef3b541b2c53d07176ab1319a27ad26ed177b6dded11e3fa2e7bb SHA512 b5cf083cc6951e7c4b438d5e648f61ca20b23e02163a8cfc4669beaaec2fa9e33338b0ba6875bfe4a3864ac48f9774acfedc2a3b2f59a7488ef99a4817e39382
diff --git a/dev-java/freehep-graphicsio-svg/freehep-graphicsio-svg-2.4.ebuild b/dev-java/freehep-graphicsio-svg/freehep-graphicsio-svg-2.4.ebuild
deleted file mode 100644
index 290ad16874de..000000000000
--- a/dev-java/freehep-graphicsio-svg/freehep-graphicsio-svg-2.4.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="freehep-vectorgraphics"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP Scalable Vector Graphics Driver"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${MY_PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="~dev-java/freehep-graphics2d-${PV}:${SLOT}
- ~dev-java/freehep-graphicsbase-${PV}:${SLOT}
- ~dev-java/freehep-graphicsio-${PV}:${SLOT}
- dev-java/freehep-io:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? (
- ~dev-java/freehep-graphicsio-tests-${PV}:${SLOT}
- dev-java/junit:4
- )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="freehep-graphics2d,freehep-graphicsbase,freehep-graphicsio,freehep-io"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,freehep-graphicsio-tests,${JAVA_GENTOO_CLASSPATH})"
-
- ejavac -cp "${CP}" -d ${DIR} $(find ${DIR} -name "*.java")
- ejunit4 -classpath "${CP}" org.freehep.graphicsio.svg.test.SVGTestSuite
-}
diff --git a/dev-java/freehep-graphicsio-svg/metadata.xml b/dev-java/freehep-graphicsio-svg/metadata.xml
deleted file mode 100644
index 696a250adce4..000000000000
--- a/dev-java/freehep-graphicsio-svg/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-vectorgraphics</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freehep-graphicsio-tests/Manifest b/dev-java/freehep-graphicsio-tests/Manifest
deleted file mode 100644
index 9ab19829d002..000000000000
--- a/dev-java/freehep-graphicsio-tests/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freehep-vectorgraphics-2.4.tar.gz 4118379 BLAKE2B c8a5840ebab43398a6f87f97855a38f843b0e05267f5446b5f22a0c0124c98717c00801fe93ef3b541b2c53d07176ab1319a27ad26ed177b6dded11e3fa2e7bb SHA512 b5cf083cc6951e7c4b438d5e648f61ca20b23e02163a8cfc4669beaaec2fa9e33338b0ba6875bfe4a3864ac48f9774acfedc2a3b2f59a7488ef99a4817e39382
diff --git a/dev-java/freehep-graphicsio-tests/freehep-graphicsio-tests-2.4.ebuild b/dev-java/freehep-graphicsio-tests/freehep-graphicsio-tests-2.4.ebuild
deleted file mode 100644
index 6a523d03f9ac..000000000000
--- a/dev-java/freehep-graphicsio-tests/freehep-graphicsio-tests-2.4.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="freehep-vectorgraphics"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP GraphicsIO Test Library"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${MY_PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="~dev-java/freehep-graphics2d-${PV}:${SLOT}
- ~dev-java/freehep-graphicsbase-${PV}:${SLOT}
- ~dev-java/freehep-graphicsio-${PV}:${SLOT}
- dev-java/freehep-io:0
- dev-java/junit:4"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="freehep-graphics2d,freehep-graphicsbase,freehep-graphicsio,freehep-io,junit-4"
-
-java_prepare() {
- # Avoid additional deps for "extra" tests.
- sed -i -r "/Test(Histogram|ScatterPlot)/d" \
- ${JAVA_SRC_DIR}/org/freehep/graphicsio/test/TestSuite.java || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
diff --git a/dev-java/freehep-graphicsio-tests/metadata.xml b/dev-java/freehep-graphicsio-tests/metadata.xml
deleted file mode 100644
index 696a250adce4..000000000000
--- a/dev-java/freehep-graphicsio-tests/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-vectorgraphics</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freehep-graphicsio/Manifest b/dev-java/freehep-graphicsio/Manifest
deleted file mode 100644
index 9ab19829d002..000000000000
--- a/dev-java/freehep-graphicsio/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freehep-vectorgraphics-2.4.tar.gz 4118379 BLAKE2B c8a5840ebab43398a6f87f97855a38f843b0e05267f5446b5f22a0c0124c98717c00801fe93ef3b541b2c53d07176ab1319a27ad26ed177b6dded11e3fa2e7bb SHA512 b5cf083cc6951e7c4b438d5e648f61ca20b23e02163a8cfc4669beaaec2fa9e33338b0ba6875bfe4a3864ac48f9774acfedc2a3b2f59a7488ef99a4817e39382
diff --git a/dev-java/freehep-graphicsio/freehep-graphicsio-2.4.ebuild b/dev-java/freehep-graphicsio/freehep-graphicsio-2.4.ebuild
deleted file mode 100644
index 9e6123138882..000000000000
--- a/dev-java/freehep-graphicsio/freehep-graphicsio-2.4.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="freehep-vectorgraphics"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP GraphicsIO Base Library"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${MY_PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="~dev-java/freehep-graphics2d-${PV}:${SLOT}
- ~dev-java/freehep-graphicsbase-${PV}:${SLOT}
- dev-java/freehep-io:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? ( dev-java/junit:4 )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="freehep-graphics2d,freehep-graphicsbase,freehep-io"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find ${DIR} -name "*Test.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/freehep-graphicsio/metadata.xml b/dev-java/freehep-graphicsio/metadata.xml
deleted file mode 100644
index 696a250adce4..000000000000
--- a/dev-java/freehep-graphicsio/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-vectorgraphics</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freehep-io/Manifest b/dev-java/freehep-io/Manifest
deleted file mode 100644
index ec866c6b4d7c..000000000000
--- a/dev-java/freehep-io/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freehep-io-2.2.2.tar.gz 76935 BLAKE2B 11468effa883c44f4376bac7282881942209cd5769545083bd761489f31eceec96c909d452f2a056172c8fee65917895acb34c18583d771a258883e4e12c3906 SHA512 1cc7cab3d9648b119aa8c637c84cd985adc0f9dd2cdd153021500831325d719ef5fa41d8964ccbeed3af95b87e09c4886597c0ede1370a209f6807932636b0ee
diff --git a/dev-java/freehep-io/freehep-io-2.2.2.ebuild b/dev-java/freehep-io/freehep-io-2.2.2.ebuild
deleted file mode 100644
index 12bf7791effb..000000000000
--- a/dev-java/freehep-io/freehep-io-2.2.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High Energy Physics Java library - FreeHEP I/O Library"
-HOMEPAGE="http://java.freehep.org/"
-SRC_URI="https://github.com/freehep/${PN}/archive/${P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND=">=virtual/jdk-1.7
- test? ( dev-java/junit:4 )"
-
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/${PN}-${P}"
-JAVA_SRC_DIR="src/main/java"
-
-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 "Abstract*")
- 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/freehep-io/metadata.xml b/dev-java/freehep-io/metadata.xml
deleted file mode 100644
index ff99e83575c0..000000000000
--- a/dev-java/freehep-io/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">freehep/freehep-io</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freemarker/Manifest b/dev-java/freemarker/Manifest
deleted file mode 100644
index 0b12f6c12258..000000000000
--- a/dev-java/freemarker/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST freemarker-2.3.25.tar.gz 1873971 BLAKE2B 52c64938c67ac0303b07f4aa74c3fc7ccc0be68bd37a7c6c663ac0849acc9f2236d1028abb377efa6fdb518840b1961e71c1a02a37388864f9be14b3b443f28a SHA512 32a41a73a2f71a4e0ae8829da2c09e07204aa2b4a6899e2c7a3db0bde5d3e129ec7b44b7299a20165d7eb88f4f7d1bd9f0b7a1fd116dc11493134bec2306d1ac
diff --git a/dev-java/freemarker/files/build.xml.patch b/dev-java/freemarker/files/build.xml.patch
deleted file mode 100644
index 33701f89175d..000000000000
--- a/dev-java/freemarker/files/build.xml.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff -Naur a/build.xml b/build.xml
---- a/build.xml 2016-06-14 19:48:01.000000000 +0100
-+++ b/build.xml 2016-12-22 22:41:41.988262564 +0000
-@@ -27,6 +27,10 @@
- xmlns:u="http://freemarker.org/util"
- >
-
-+ <path id="gentoo.classpath">
-+ <pathelement path="${gentoo.classpath}/"/>
-+ </path>
-+
- <!-- ================================================================== -->
- <!-- Properties -->
- <!-- ================================================================== -->
-@@ -143,13 +147,11 @@
- />
-
- <mkdir dir="${_javaccOutputDir}" />
-- <ivy:retrieve conf="parser" pattern="build/javacc-home.tmp/[artifact].[ext]" />
- <javacc:generate
- target="src/main/javacc/FTL.jj"
- outputdirectory="${_javaccOutputDir}"
- javacchome="build/javacc-home.tmp"
- />
-- <delete dir="build/javacc-home.tmp" />
-
- <replace
- file="${_javaccOutputDir}/FMParser.java"
-@@ -271,6 +273,7 @@
- verify="yes" stubversion="1.2"
- />
-
-+<!--
- <ivy:cachepath conf="build.jsp2.0" pathid="ivy.dep.jsp2.0" />
- <javac srcdir="build/src-main-java-filtered" destdir="build/classes" deprecation="off"
- debug="on" optimize="off" target="1.5" source="1.5" encoding="utf-8"
-@@ -286,6 +289,7 @@
- freemarker/ext/jsp/FreeMarkerJspFactory21.java,
- freemarker/ext/jsp/FreeMarkerJspApplicationContext.java"
- />
-+!-->
-
- <!-- There's no build.jsp2.0, as those classes are part of the common build subset. -->
-
-@@ -301,6 +305,7 @@
- freemarker/ext/jsp/FreeMarkerJspApplicationContext.java"
- />
-
-+<!--
- <ivy:cachepath conf="build.jython2.0" pathid="ivy.dep.jython2.0" />
- <javac srcdir="build/src-main-java-filtered" destdir="build/classes" deprecation="off"
- debug="on" optimize="off" target="1.5" source="1.5" encoding="utf-8"
-@@ -325,6 +330,7 @@
- includes="
- freemarker/ext/jython/_Jython22VersionAdapter.java"
- />
-+!-->
-
- <ivy:cachepath conf="build.jython2.5" pathid="ivy.dep.jython2.5" />
- <javac srcdir="build/src-main-java-filtered" destdir="build/classes" deprecation="off"
diff --git a/dev-java/freemarker/freemarker-2.3.25.ebuild b/dev-java/freemarker/freemarker-2.3.25.ebuild
deleted file mode 100644
index a2a490feb6cb..000000000000
--- a/dev-java/freemarker/freemarker-2.3.25.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PN="incubator-${PN}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A Java tool to generate text output based on templates"
-HOMEPAGE="http://freemarker.org/"
-SRC_URI="https://github.com/apache/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="2.3"
-KEYWORDS="amd64 x86"
-
-CP_DEPEND="dev-java/avalon-logkit:2.0
- dev-java/commons-logging:0
- dev-java/dom4j:1
- dev-java/jaxen:1.1
- dev-java/jython:2.7
- dev-java/log4j:0
- dev-java/rhino:1.6
- dev-java/slf4j-api:0
- dev-java/xalan:0
- java-virtuals/servlet-api:2.5"
-
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.7
- dev-java/javacc:0"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-PATCHES=(
- "${FILESDIR}"/build.xml.patch
-)
-
-EANT_BUILD_TARGET="compile"
-EANT_EXTRA_ARGS="-Ddeps.available=true"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-src_prepare() {
- default
-
- rm -rv \
- src/main/java/freemarker/ext/jdom \
- src/main/java/freemarker/ext/xml/_JdomNavigator.java \
- src/main/java/freemarker/ext/beans/JRebelClassChangeNotifier.java || die
-
- sed -i \
- -e '/<ivy:cachepath/d' \
- -e 's/"ivy\.dep[^"]*"/"gentoo.classpath"/g' \
- -e "s:javacchome=\"[^\"]*\":javacchome=\"${EPREFIX%/}/usr/share/javacc/lib\":g" \
- build.xml || die
-
- java-pkg-2_src_prepare
-}
-
-src_install() {
- jar cf ${PN}.jar -C build/classes . || die
- java-pkg_dojar ${PN}.jar
-
- dodoc README
- use doc && java-pkg_dojavadoc build/api
-}
diff --git a/dev-java/freemarker/metadata.xml b/dev-java/freemarker/metadata.xml
deleted file mode 100644
index e471a93e212d..000000000000
--- a/dev-java/freemarker/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">freemarker</remote-id>
- <remote-id type="github">apache/incubator-freemarker</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/freenet-ext/Manifest b/dev-java/freenet-ext/Manifest
new file mode 100644
index 000000000000..196e8c487def
--- /dev/null
+++ b/dev-java/freenet-ext/Manifest
@@ -0,0 +1 @@
+DIST freenet-ext-29.tar.gz 4328779 BLAKE2B a9dc6dc34d6dbccc9f89c955f35b35024a7067aa8e89cf195492e77a8ebc92b73cc98e779c7f75ba6a430e994e856937be018a6505e1cda07eeea275925ee0e7 SHA512 11cf0942042483403cf526684a18c2b1766d3f6fb15c2ca4bdb59d95382ed86fcdb71a66d9f43a504abf3ca5c53f9da749086e462bbb56826beb95a2a7f1cbfa
diff --git a/dev-java/freenet-ext/files/freenet-ext-29-convert-jcpuid.patch b/dev-java/freenet-ext/files/freenet-ext-29-convert-jcpuid.patch
new file mode 100644
index 000000000000..e4c84b58ffee
--- /dev/null
+++ b/dev-java/freenet-ext/files/freenet-ext-29-convert-jcpuid.patch
@@ -0,0 +1,46 @@
+Backported from:
+
+From ec11ea4ca73646a790f20adf8ded2e48dedd96e5 Mon Sep 17 00:00:00 2001
+From: scintilla <scintilla>
+Date: Sun, 19 Dec 2004 06:25:27 +0000
+Subject: [PATCH] * Convert native jcpuid code from C++ to C. This should
+ alleviate build problems experienced by some users.
+
+--- /dev/null
++++ b/jcpuid/src/jcpuid.c
+@@ -0,0 +1,35 @@
++#include "jcpuid.h"
++
++//Executes the indicated subfunction of the CPUID operation
++JNIEXPORT jobject JNICALL Java_freenet_support_CPUInformation_CPUID_doCPUID
++ (JNIEnv * env, jclass cls, jint iFunction)
++{
++ int a,b,c,d;
++ jclass clsResult = (*env)->FindClass(env, "freenet/support/CPUInformation/CPUID$CPUIDResult");
++ jmethodID constructor = (*env)->GetMethodID(env, clsResult,"<init>","(IIII)V" );
++ #ifdef _MSC_VER
++ //Use MSVC assembler notation
++ _asm
++ {
++ mov eax, iFunction
++ cpuid
++ mov a, eax
++ mov b, ebx
++ mov c, ecx
++ mov d, edx
++ }
++ #else
++ //Use GCC assembler notation
++ asm
++ (
++ "cpuid"
++ : "=a" (a),
++ "=b" (b),
++ "=c"(c),
++ "=d"(d)
++ :"a"(iFunction)
++ );
++ #endif
++ return (*env)->NewObject(env, clsResult,constructor,a,b,c,d);
++}
++
diff --git a/dev-java/freenet-ext/freenet-ext-29.ebuild b/dev-java/freenet-ext/freenet-ext-29.ebuild
new file mode 100644
index 000000000000..9cac638d5835
--- /dev/null
+++ b/dev-java/freenet-ext/freenet-ext-29.ebuild
@@ -0,0 +1,79 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="" # Empty since we only pick what's not packaged
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs
+
+DESCRIPTION="Freenet REference Daemon"
+HOMEPAGE="https://github.com/hyphanet/contrib/"
+SRC_URI="https://github.com/hyphanet/contrib/archive/v${PV}.tar.gz -> freenet-ext-${PV}.tar.gz"
+S="${WORKDIR}/contrib-${PV}"
+
+LICENSE="public-domain"
+SLOT="29"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND="
+ dev-libs/gmp:0=
+ >=virtual/jdk-1.8:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/freenet-ext-29-convert-jcpuid.patch"
+)
+
+JAVA_SRC_DIR=(
+ "freenet"
+ "freenet_ext"
+ "i2p"
+)
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+ mkdir -p i2p/net freenet || die
+ # From the java directory we need "java/net/i2p"
+ mv {java,i2p}/net/i2p || die
+ # and "java/freenet".
+ mv {java,freenet}/freenet || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ local compile_lib
+ compile_lib() {
+ local name="${1}"
+ local file="${2}"
+ shift 2
+
+ "$(tc-getCC)" "${@}" ${CFLAGS} $(java-pkg_get-jni-cflags) \
+ ${LDFLAGS} -shared -fPIC "-Wl,-soname,lib${name}.so" \
+ "${file}" -o "lib${name}.so"
+ }
+
+ cd "${S}/NativeBigInteger/jbigi" || die "unable to cd to jbigi"
+ compile_lib jbigi src/jbigi.c -Iinclude -lgmp ||
+ die "unable to build jbigi"
+
+ if use amd64 || use x86; then
+ cd "${S}/jcpuid" || die "unable to cd to jcpuid"
+ compile_lib jcpuid src/jcpuid.c -Iinclude ||
+ die "unable to build jcpuid"
+ fi
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ java-pkg_doso NativeBigInteger/jbigi/libjbigi.so
+
+ if use amd64 || use x86; then
+ java-pkg_doso jcpuid/libjcpuid.so
+ fi
+}
diff --git a/dev-java/freenet-ext/metadata.xml b/dev-java/freenet-ext/metadata.xml
new file mode 100644
index 000000000000..f76b8843b198
--- /dev/null
+++ b/dev-java/freenet-ext/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">hyphanet/contrib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/gcj-jdk/files/javac.in b/dev-java/gcj-jdk/files/javac.in
deleted file mode 100644
index 8eeda68c7a5e..000000000000
--- a/dev-java/gcj-jdk/files/javac.in
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/usr/bin/perl -w
-use strict;
-use constant NO_DUP_ARGS => qw(-source -target -d -encoding);
-use constant STRIP_ARGS => qw(-Werror -implicit:none -J-Xbootclasspath/p:);
-
-my $ECJ_WARNINGS="-nowarn";
-
-my ( @bcoption, @source15, @target15, @cp );
-push @bcoption, '-bootclasspath', '@RT_JAR@:@TOOLS_JAR@'
- unless grep {$_ eq '-bootclasspath'} @ARGV;
-push @source15, '-source', '1.5'
- unless grep {$_ eq '-source'} @ARGV;
-push @target15, '-target', '1.5'
- unless grep {$_ eq '-target'} @ARGV;
-push @cp, '-cp', '.'
- unless grep {$_ =~ '\-c(p|lasspath)'} @ARGV or $ENV{CLASSPATH};
-my @ecj_parms = ($ECJ_WARNINGS, @bcoption, @source15, @target15, @cp);
-
-# Work around ecj's inability to handle duplicate command-line
-# options and unknown javac options.
-sub gen_ecj_opts
-{
- my @new_args = @{$_[0]};
-
- for my $opt (NO_DUP_ARGS)
- {
- my @indices = reverse grep {$new_args[$_] eq $opt} 0..$#new_args;
- if (@indices > 1) {
- shift @indices; # keep last instance only
- splice @new_args, $_, 2 for @indices;
- }
- }
-
- for my $opt (STRIP_ARGS)
- {
- my @indices = reverse grep {$new_args[$_] eq $opt} 0..$#new_args;
- splice @new_args, $_, 1 for @indices;
- }
-
- return \@new_args;
-}
-
-sub split_vm_args
-{
- my @new_args = @{$_[0]};
-
- my @vm_args = map { substr $_, 2 } grep $_ =~ /^-J/, @new_args;
- my @javac_args = grep $_ !~ /^-J/, @new_args;
-
- return (\@vm_args, \@javac_args);
-}
-
-my ($vm_args, $javac_args) = split_vm_args (gen_ecj_opts( \@ARGV ));
-my @CLASSPATH = ('@ECJ_JAR@');
-push @CLASSPATH, split /:/, $ENV{"CLASSPATH"} if exists $ENV{"CLASSPATH"};
-$ENV{"CLASSPATH"} = join ':', @CLASSPATH;
-exec '@JAVA@', @$vm_args, 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @$javac_args;
diff --git a/dev-java/gcj-jdk/gcj-jdk-5.4.0-r1.ebuild b/dev-java/gcj-jdk/gcj-jdk-5.4.0-r1.ebuild
deleted file mode 100644
index 37dbdee58fb6..000000000000
--- a/dev-java/gcj-jdk/gcj-jdk-5.4.0-r1.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-vm-2
-
-DESCRIPTION="Java wrappers around GCJ"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI=""
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~x86-linux"
-SLOT="0"
-IUSE="awt"
-
-API_DIFF_PV="4.9.2"
-
-# perl is needed for javac wrapper
-RDEPEND="
- dev-java/ecj-gcj:*
- dev-lang/perl
- ~sys-devel/gcc-${PV}[awt?,gcj]"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}"
-
-src_install() {
- # jre lib paths ...
- local libarch="$(get_system_arch)"
- local gcc_version=${PV}
- local gccbin=$(gcc-config -B ${gcc_version})
- gccbin=${gccbin#"${EPREFIX}"}
- local gcclib=$(gcc-config -L ${gcc_version} | cut -d':' -f1)
- gcclib=${gcclib#"${EPREFIX}"}
- local gcjhome="/usr/$(get_libdir)/${P}"
- local gcjprefix="${EPREFIX}${gcjhome}"
- local gccchost="${CHOST}"
- local gcjlibdir=$(echo "${EPREFIX}"/usr/$(get_libdir)/gcj-${gcc_version}-*)
- gcjlibdir=${gcjlibdir#"${EPREFIX}"}
-
- # links
- dodir ${gcjhome}/bin
- dodir ${gcjhome}/jre/bin
- dosym ${gccbin}/gij ${gcjhome}/bin/java
- dosym ${gccbin}/gij ${gcjhome}/jre/bin/java
- dosym ${gccbin}/gjar ${gcjhome}/bin/jar
- dosym ${gccbin}/gjdoc ${gcjhome}/bin/javadoc
- dosym ${gccbin}/grmic ${gcjhome}/bin/rmic
- dosym ${gccbin}/gjavah ${gcjhome}/bin/javah
- dosym ${gccbin}/jcf-dump ${gcjhome}/bin/javap
- dosym ${gccbin}/gappletviewer ${gcjhome}/bin/appletviewer
- dosym ${gccbin}/gjarsigner ${gcjhome}/bin/jarsigner
- dosym ${gccbin}/grmiregistry ${gcjhome}/bin/rmiregistry
- dosym ${gccbin}/grmiregistry ${gcjhome}/jre/bin/rmiregistry
- dosym ${gccbin}/gkeytool ${gcjhome}/bin/keytool
- dosym ${gccbin}/gkeytool ${gcjhome}/jre/bin/keytool
- dosym ${gccbin}/gnative2ascii ${gcjhome}/bin/native2ascii
- dosym ${gccbin}/gorbd ${gcjhome}/bin/orbd
- dosym ${gccbin}/gorbd ${gcjhome}/jre/bin/orbd
- dosym ${gccbin}/grmid ${gcjhome}/bin/rmid
- dosym ${gccbin}/grmid ${gcjhome}/jre/bin/rmid
- dosym ${gccbin}/gserialver ${gcjhome}/bin/serialver
- dosym ${gccbin}/gtnameserv ${gcjhome}/bin/tnameserv
- dosym ${gccbin}/gtnameserv ${gcjhome}/jre/bin/tnameserv
-
- dodir ${gcjhome}/jre/lib/${libarch}/client
- dodir ${gcjhome}/jre/lib/${libarch}/server
- dosym ${gcjlibdir}/libjvm.so ${gcjhome}/jre/lib/${libarch}/client/libjvm.so
- dosym ${gcjlibdir}/libjvm.so ${gcjhome}/jre/lib/${libarch}/server/libjvm.so
- use awt && dosym ${gcjlibdir}/libjawt.so ${gcjhome}/jre/lib/${libarch}/libjawt.so
-
- dosym /usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-${gcc_version/_/-}.jar \
- ${gcjhome}/jre/lib/rt.jar
- dodir ${gcjhome}/lib
- dosym /usr/share/gcc-data/${gccchost}/${gcc_version}/java/libgcj-tools-${gcc_version/_/-}.jar \
- ${gcjhome}/lib/tools.jar
- dosym ${gcclib}/include ${gcjhome}/include
-
- exeinto ${gcjhome}/bin
- sed -e "s#@JAVA@#${gcjprefix}/bin/java#" \
- -e "s#@ECJ_JAR@#${EPREFIX}/usr/share/eclipse-ecj/ecj.jar#" \
- -e "s#@RT_JAR@#${gcjprefix}/jre/lib/rt.jar#" \
- -e "s#@TOOLS_JAR@#${gcjprefix}/lib/tools.jar#" \
- "${FILESDIR}"/javac.in \
- | newexe - javac
- assert
-
- java-vm_install-env
-}
-
-pkg_postinst() {
- # Do not set as system VM (see below)
- # java-vm-2_pkg_postinst
-
- ewarn "gcj does not currently provide all the 1.5 or 1.6 APIs."
- ewarn "See http://fuseyism.com/japi/ibmjdk15-libgcj-${API_DIFF_PV}.html"
- ewarn "and http://fuseyism.com/japi/icedtea6-libgcj-${API_DIFF_PV}.html"
- ewarn "Check for existing bugs relating to missing APIs and file"
- ewarn "new ones at https://gcc.gnu.org/bugzilla/"
- ewarn
- ewarn "Due to this and limited manpower, we currently cannot support"
- ewarn "using gcj-jdk as a system VM. Its main purpose is to bootstrap"
- ewarn "IcedTea without prior binary VM installation. To do that, execute:"
- ewarn
- ewarn "emerge -o icedtea && emerge icedtea"
-}
diff --git a/dev-java/gcj-jdk/metadata.xml b/dev-java/gcj-jdk/metadata.xml
deleted file mode 100644
index 860110bf6d56..000000000000
--- a/dev-java/gcj-jdk/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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="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>
- <use>
- <flag name="awt">Install AWT libraries, needed by some GUIs (not needed to build icedtea)</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-java/geoip-java/Manifest b/dev-java/geoip-java/Manifest
deleted file mode 100644
index 45ec7203de62..000000000000
--- a/dev-java/geoip-java/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST geoip-java-1.3.0.zip 138673 BLAKE2B f61c42bad846684a4bfb9952d5b573f1d65aff5b0e7cd2ce0b53c946aecc567cab34d7f171f16b6d531cdc5a6b059747dbd02368d534f31b4894d28433b14938 SHA512 3925a94072a97dac732f4a77f4f141e1484c630b2122b4322cb487c209adbbb30936b782579943c1c766b43ef4ad0db3e264c738ad777656706272ca53ccf85b
diff --git a/dev-java/geoip-java/geoip-java-1.3.0.ebuild b/dev-java/geoip-java/geoip-java-1.3.0.ebuild
deleted file mode 100644
index c127dfa89716..000000000000
--- a/dev-java/geoip-java/geoip-java-1.3.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="source doc examples"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="geoip-api-java"
-
-DESCRIPTION="Java library for lookup countries by IP addresses"
-HOMEPAGE="https://github.com/maxmind"
-SRC_URI="https://github.com/maxmind/${MY_PN}/archive/v${PV}.zip -> ${P}.zip"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- rm -rv src/test || die
-}
-
-src_install() {
- java-pkg-simple_src_install
-
- dodoc README.md Changes.md
-
- use examples && java-pkg_doexamples examples/*
-}
-
-pkg_postinst() {
- einfo "Country and City data files can be downloaded here:"
- einfo " http://www.maxmind.com/app/geolitecountry"
- einfo " http://www.maxmind.com/app/geolitecity"
-}
diff --git a/dev-java/geoip-java/metadata.xml b/dev-java/geoip-java/metadata.xml
deleted file mode 100644
index 16b146cb66aa..000000000000
--- a/dev-java/geoip-java/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <upstream>
- <remote-id type="github">maxmind/geoip-api-java</remote-id>
- </upstream>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- <name>Patrice Clement</name>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/gin/Manifest b/dev-java/gin/Manifest
deleted file mode 100644
index 49f7e0046876..000000000000
--- a/dev-java/gin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST google-gin-2.1.2.zip 5495552 BLAKE2B 3e07fc2e8f2e93872cb022dc57d5b06cfb81cfd855e8027fbcc312e2b95e0c8c35a783c6deb842fd1f40ae8c94e5c120f463c36e20d873a415ef62b0e717f490 SHA512 eb661760078d2053dd1f6cf0d96e9c2895c7d7fd805c14f4da63c28801b8aabb6a9cf6baff020bee3830a3ba1451bdf44d53d41cae1d720bded06f7d013d59c0
diff --git a/dev-java/gin/gin-2.1.2.ebuild b/dev-java/gin/gin-2.1.2.ebuild
deleted file mode 100644
index a13c8f0e9aa6..000000000000
--- a/dev-java/gin/gin-2.1.2.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="google-gin"
-MY_P="${MY_PN}-${PV}"
-
-GIN_COMMIT="d62089f5b6ea33d842ab4646b51583c65a8be36b"
-
-DESCRIPTION="Google Gin (GWT INjection)"
-HOMEPAGE="https://gwtplus.github.io/google-gin/"
-SRC_URI="https://github.com/gwtplus/google-gin/archive/${GIN_COMMIT}.zip -> ${MY_P}.zip"
-RESTRICT="mirror"
-SLOT="2.1"
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-CDEPEND="
- dev-java/aopalliance:1
- dev-java/javax-inject:0
- dev-java/gwt:2.8
- dev-java/validation-api:1.0
-"
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-BDEPEND="app-arch/unzip"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_BUILD_XML="build.xml"
-EANT_GENTOO_CLASSPATH="
- aopalliance-1
- javax-inject
- gwt-2.8
- validation-api-1.0
-"
-
-S="${WORKDIR}/${MY_PN}-${GIN_COMMIT}"
-
-JAVA_RM_FILES=(
- trunk/lib/aopalliance.jar
- trunk/lib/javax.inject.jar
- lib/aopalliance.jar
- lib/javax.inject.jar
-)
-
-src_compile() {
- local EANT_BUILD_TARGET="compile"
- GWT_HOME="${ESYSROOT}/usr/share/gwt-2.8/lib" \
- java-pkg-2_src_compile
- EANT_BUILD_TARGET="jars"
- GWT_HOME="${ESYSROOT}/usr/share/gwt-2.8/lib" \
- java-pkg-2_src_compile
-}
-
-src_test() {
- GWT_HOME="${ESYSROOT}/usr/share/gwt-2.8/lib" \
- ant test || die
-}
-
-src_install() {
- java-pkg_newjar \
- out/dist/${P}-src.jar ${PN}-src.jar
- java-pkg_newjar \
- out/dist/${P}.jar ${PN}.jar
- java-pkg_dojar \
- lib/*.jar
-}
diff --git a/dev-java/gin/metadata.xml b/dev-java/gin/metadata.xml
deleted file mode 100644
index f5c70373f274..000000000000
--- a/dev-java/gin/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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>
- </maintainer>
- <longdescription lang="en">
- Gin (GWT INjection) brings automatic dependency injection to
- GWT client-side code. Gin is built on top of Guice and uses (a
- subset of) Guice's binding language.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/glassfish-deployment-api/Manifest b/dev-java/glassfish-deployment-api/Manifest
deleted file mode 100644
index c81410553b47..000000000000
--- a/dev-java/glassfish-deployment-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-deployment-api-3.1.1.jar 86511 BLAKE2B 1224261aa87beed9428926409b114b732f24426c2b85c7374d28ebef0a8813cb41fc831f43757b9a007c5c5833444396cb29a784395b476af64de7c1316ce0e3 SHA512 9325d44da2258c84b879360fe92314b49c0b3ca7be2dd3b9016bf884e79ed66f9bf3fcec2b99a7b8baf3847e5d15376d10e3013bd4dd0f0cfaaf7859fa83a6ba
diff --git a/dev-java/glassfish-deployment-api/glassfish-deployment-api-3.1.1.ebuild b/dev-java/glassfish-deployment-api/glassfish-deployment-api-3.1.1.ebuild
deleted file mode 100644
index 0dcfdd9801fe..000000000000
--- a/dev-java/glassfish-deployment-api/glassfish-deployment-api-3.1.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="J2EE Application Deployment Specification V.1.2"
-HOMEPAGE="https://glassfish.dev.java.net/"
-SRC_URI="https://repo1.maven.org/maven2/org/glassfish/javax.enterprise.deploy/${PV}/javax.enterprise.deploy-${PV}-sources.jar -> ${P}.jar"
-
-LICENSE="|| ( CDDL GPL-2 )"
-SLOT="1.2"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-DEPEND="
- >=virtual/jdk-1.6"
-
-RDEPEND="
- >=virtual/jre-1.6"
diff --git a/dev-java/glassfish-deployment-api/metadata.xml b/dev-java/glassfish-deployment-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/glassfish-deployment-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/glassfish-ejb-api/Manifest b/dev-java/glassfish-ejb-api/Manifest
deleted file mode 100644
index 41cb13d08d55..000000000000
--- a/dev-java/glassfish-ejb-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-ejb-api-3.2.tar.xz 37052 BLAKE2B c281a98a98181c5f19d3d11830a4c67b818f1ea43b41f335ffb0181e43e1351d4279462d68151a7cd98ad0a040fa15e3102e7e01b66713ee46198bc2967d9b34 SHA512 1692bbff05242b0af5141b35151ff65f029e19f45c5dac07ed9b706635e3f42d8d512819f38a49b564c9dee51be33c36fb871ea5267000536a0fb1e1b5d6a00a
diff --git a/dev-java/glassfish-ejb-api/glassfish-ejb-api-3.2.ebuild b/dev-java/glassfish-ejb-api/glassfish-ejb-api-3.2.ebuild
deleted file mode 100644
index b02a9bfeab6f..000000000000
--- a/dev-java/glassfish-ejb-api/glassfish-ejb-api-3.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-TOMEE_PV="1.5.2"
-
-DESCRIPTION="Project GlassFish Enterprise JavaBean API"
-HOMEPAGE="https://glassfish.java.net/"
-SRC_URI="https://dev.gentoo.org/~tomwij/files/dist/${P}.tar.xz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="java-virtuals/xmlrpc-api:0
- java-virtuals/transaction-api:0"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="xmlrpc-api,transaction-api"
-JAVA_PKG_BSFIX_NAME="maven-build.xml"
-
-src_install() {
- java-pkg_newjar target/javax.ejb-api-${PV}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/javax
-}
diff --git a/dev-java/glassfish-ejb-api/metadata.xml b/dev-java/glassfish-ejb-api/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/glassfish-ejb-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/glassfish-interceptor-api/Manifest b/dev-java/glassfish-interceptor-api/Manifest
deleted file mode 100644
index 2a6533b9feaa..000000000000
--- a/dev-java/glassfish-interceptor-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-interceptor-api-3.1.tar.xz 14600 BLAKE2B ef46f503a0a44650750f9cc53b51d02219779e2b1891c46179e07566a7ed359cb8ac455d2819bd22c5af7a78f33861a32e26c2cf977ebdac46f172e144c536dd SHA512 674f53d53afb63799c579b0ec177a009178315fb62f027441da14ceb5d6fa07408840ad82aa8fa7be31b53d43b53ff28ffb1617d644c989bc4ac17ce5e626563
diff --git a/dev-java/glassfish-interceptor-api/files/glassfish-interceptor-api-3.1-build.xml.patch b/dev-java/glassfish-interceptor-api/files/glassfish-interceptor-api-3.1-build.xml.patch
deleted file mode 100644
index 1a912da629c2..000000000000
--- a/dev-java/glassfish-interceptor-api/files/glassfish-interceptor-api-3.1-build.xml.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/maven-build.xml
-+++ b/maven-build.xml
-@@ -166,7 +166,6 @@
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
-- manifest="/tmp/glassfish-interceptor-api-3.1/target/classes/META-INF/MANIFEST.MF"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
diff --git a/dev-java/glassfish-interceptor-api/glassfish-interceptor-api-3.1.ebuild b/dev-java/glassfish-interceptor-api/glassfish-interceptor-api-3.1.ebuild
deleted file mode 100644
index 33ed4ef1f8d2..000000000000
--- a/dev-java/glassfish-interceptor-api/glassfish-interceptor-api-3.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-TOMEE_PV="1.5.2"
-
-DESCRIPTION="Project GlassFish Interceptor API"
-HOMEPAGE="https://glassfish.java.net/"
-SRC_URI="https://dev.gentoo.org/~tomwij/files/dist/${P}.tar.xz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux"
-
-CDEPEND=""
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH=""
-JAVA_PKG_BSFIX_NAME="maven-build.xml"
-
-java_prepare() {
- epatch "${FILESDIR}"/${P}-build.xml.patch
-}
-
-src_install() {
- java-pkg_newjar target/javax.interceptor-api-${PV}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/javax
-}
diff --git a/dev-java/glassfish-interceptor-api/metadata.xml b/dev-java/glassfish-interceptor-api/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/glassfish-interceptor-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/glassfish-jms-api/Manifest b/dev-java/glassfish-jms-api/Manifest
deleted file mode 100644
index b9c3281c144d..000000000000
--- a/dev-java/glassfish-jms-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-v2ur2-b04-src.zip 39817113 BLAKE2B 4aeb0df44f838c91fa8dd52e2a4985e86457f75cec3cd5d527de54f672afcd2824cefaad9d9e67c5ce096515e389bb2fc0874d76ce2ec86a956233f2c3508439 SHA512 4ddf75ad1b81cfb8fc0b772fc75f9a81d74b6239282770d5da0ed70a7cd8b5fca2fd8c95782a2946ed054b43ee8e17edaf47d79c749e89280131bf1d15b1dcf8
diff --git a/dev-java/glassfish-jms-api/glassfish-jms-api-1.1.2.2.04-r2.ebuild b/dev-java/glassfish-jms-api/glassfish-jms-api-1.1.2.2.04-r2.ebuild
deleted file mode 100644
index 3b528fd9f0b8..000000000000
--- a/dev-java/glassfish-jms-api/glassfish-jms-api-1.1.2.2.04-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="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java Transaction API"
-HOMEPAGE="https://glassfish.dev.java.net/"
-MAJOR=v$(ver_cut 3-4)
-MAJOR=${MAJOR/./ur}
-MY_PV=${MAJOR}-b$(ver_cut 5)
-MY_PN=${PN/-//}
-ZIP="glassfish-${MY_PV}-src.zip"
-SRC_URI="https://download.java.net/javaee5/${MAJOR}/promoted/source/${ZIP}"
-
-LICENSE="|| ( CDDL GPL-2 )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-BDEPEND="app-arch/unzip"
-
-S=${WORKDIR}/${MY_PN}
-
-src_unpack() {
- unzip -q "${DISTDIR}/${ZIP}" "${MY_PN}/*" "glassfish/bootstrap/*" \
- || die "unpacking failed"
-}
-
-EANT_BUILD_TARGET="all"
-EANT_EXTRA_ARGS="-Djavaee.jar=${S}/${PN}.jar"
-EANT_DOC_TARGET=""
-
-src_compile() {
- java-pkg-2_src_compile
- if use doc; then
- javadoc -d javadoc -sourcepath src/java -subpackages javax || die "javadoc failed"
- fi
-}
-src_install() {
- java-pkg_dojar *.jar
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/java/javax
-}
diff --git a/dev-java/glassfish-jms-api/metadata.xml b/dev-java/glassfish-jms-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/glassfish-jms-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/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 1117715835eb..000000000000
--- a/dev-java/glassfish-persistence/glassfish-persistence-1.0-r2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 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 ~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 33a02ea0f34d..000000000000
--- a/dev-java/glassfish-persistence/metadata.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-java/glassfish-servlet-api/Manifest b/dev-java/glassfish-servlet-api/Manifest
deleted file mode 100644
index 3d7488fb9730..000000000000
--- a/dev-java/glassfish-servlet-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST javax.servlet-3.1.1-sources.jar 211576 BLAKE2B 5f416fe8f37e1d7b2c6fb43084b21217383157772030e7ec20df0d0326c8d50f881048057a5defd089c1ec199716bf290fb8f78099239b2df145a2dfff60b04e SHA512 7f152a389481e0381f041d97a6774a3e762a86b2a8a5413901c472fc2882b9cabd141dd85b46b8a7006cbe677c29c4caee09f3fc934afae857a6c1362efdc7bc
diff --git a/dev-java/glassfish-servlet-api/glassfish-servlet-api-3.1.1.ebuild b/dev-java/glassfish-servlet-api/glassfish-servlet-api-3.1.1.ebuild
deleted file mode 100644
index 6c68b0fc5c67..000000000000
--- a/dev-java/glassfish-servlet-api/glassfish-servlet-api-3.1.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="javax.servlet"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Glassfish reference implementation of Servlet API 2.5 and JSP API 2.1"
-HOMEPAGE="https://glassfish.dev.java.net/javaee5/webtier/webtierhome.html"
-SRC_URI="http://central.maven.org/maven2/org/glassfish/javax.servlet/${PV}/${MY_P}-sources.jar"
-LICENSE="CDDL"
-SLOT="3.1.1"
-KEYWORDS="amd64 ~ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-RDEPEND=">=virtual/jre-1.6"
diff --git a/dev-java/glassfish-servlet-api/metadata.xml b/dev-java/glassfish-servlet-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/glassfish-servlet-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/glassfish-transaction-api/Manifest b/dev-java/glassfish-transaction-api/Manifest
deleted file mode 100644
index b9c3281c144d..000000000000
--- a/dev-java/glassfish-transaction-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-v2ur2-b04-src.zip 39817113 BLAKE2B 4aeb0df44f838c91fa8dd52e2a4985e86457f75cec3cd5d527de54f672afcd2824cefaad9d9e67c5ce096515e389bb2fc0874d76ce2ec86a956233f2c3508439 SHA512 4ddf75ad1b81cfb8fc0b772fc75f9a81d74b6239282770d5da0ed70a7cd8b5fca2fd8c95782a2946ed054b43ee8e17edaf47d79c749e89280131bf1d15b1dcf8
diff --git a/dev-java/glassfish-transaction-api/glassfish-transaction-api-1.1.2.2.04-r1.ebuild b/dev-java/glassfish-transaction-api/glassfish-transaction-api-1.1.2.2.04-r1.ebuild
deleted file mode 100644
index b8002d2c97ba..000000000000
--- a/dev-java/glassfish-transaction-api/glassfish-transaction-api-1.1.2.2.04-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit versionator java-pkg-2 java-pkg-simple
-
-MAJOR=v$(get_version_component_range 3-4)
-MAJOR=$(replace_version_separator 1 ur ${MAJOR})
-MY_PV=${MAJOR}-b$(get_version_component_range 5)
-MY_PN=${PN/-//}
-ZIP="glassfish-${MY_PV}-src.zip"
-
-DESCRIPTION="Java Transaction API"
-HOMEPAGE="https://glassfish.dev.java.net/"
-
-SRC_URI="http://download.java.net/javaee5/${MAJOR}/promoted/source/${ZIP}"
-
-LICENSE="|| ( CDDL GPL-2 )"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_PN}"
-
-src_unpack() {
- default
- unzip \
- -q -o -f \
- "${DISTDIR}/${ZIP}" \
- "${MY_PN}/*" "glassfish/bootstrap/*" || die "unpacking failed"
-}
-
-src_install() {
- java-pkg-simple_src_install
-}
diff --git a/dev-java/glassfish-transaction-api/metadata.xml b/dev-java/glassfish-transaction-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/glassfish-transaction-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/glassfish-xmlrpc-api/Manifest b/dev-java/glassfish-xmlrpc-api/Manifest
deleted file mode 100644
index 3d693289f613..000000000000
--- a/dev-java/glassfish-xmlrpc-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glassfish-xmlrpc-api-1.1.1.tar.xz 35180 BLAKE2B 6121f16400b0aab16c7926636ebcefbd9e363bc5c1d76fde575da468179e32a54722d9ac6d14582a8947c3f990dda50f209c8e09223ea684e0477984fbdcf597 SHA512 7de8d5959c0f9f09cca6a169d4e4293fca378aa497389e9a9a0af953b698322b9bbae6288b8cba2cd34abf58a0d0f4272294dcdf201a84ba5cc14d426843daa8
diff --git a/dev-java/glassfish-xmlrpc-api/glassfish-xmlrpc-api-1.1.1.ebuild b/dev-java/glassfish-xmlrpc-api/glassfish-xmlrpc-api-1.1.1.ebuild
deleted file mode 100644
index 555477389da7..000000000000
--- a/dev-java/glassfish-xmlrpc-api/glassfish-xmlrpc-api-1.1.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-TOMEE_PV="1.5.2"
-
-DESCRIPTION="Project GlassFish XML RPC API"
-HOMEPAGE="https://glassfish.java.net/"
-SRC_URI="https://dev.gentoo.org/~tomwij/files/dist/${P}.tar.xz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="java-virtuals/servlet-api:3.0"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="servlet-api-3.0"
-JAVA_PKG_BSFIX_NAME="maven-build.xml"
-
-src_install() {
- java-pkg_newjar target/javax.xml.rpc-api-${PV}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/javax
-}
diff --git a/dev-java/glassfish-xmlrpc-api/metadata.xml b/dev-java/glassfish-xmlrpc-api/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/glassfish-xmlrpc-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/glazedlists/Manifest b/dev-java/glazedlists/Manifest
deleted file mode 100644
index a10a922759b3..000000000000
--- a/dev-java/glazedlists/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glazedlists-1.8.0.zip 1169436 BLAKE2B 3784881079165832a321616e51a344a1c9a7378b8f903e883367739b559b5e3b9e7871d3bee4c6979eb7ce5ded9606fb45bf25310b7314f8dbbb500a8bf9ff93 SHA512 3fc3f339a248a8aad897409d752464d60b504474ae1e4d99fa7fbb41d767928137711d5d9979154b53d677e42746e2df2dfefdc71fa4a8017ec70ab23dc4b6a5
diff --git a/dev-java/glazedlists/glazedlists-1.8.0-r1.ebuild b/dev-java/glazedlists/glazedlists-1.8.0-r1.ebuild
deleted file mode 100644
index d2517cd89f51..000000000000
--- a/dev-java/glazedlists/glazedlists-1.8.0-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A toolkit for list transformations"
-HOMEPAGE="http://www.glazedlists.com/"
-SRC_URI="http://java.net/downloads/${PN}/${P}/${P}-source_java15.zip -> ${P}.zip"
-LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_SRC_DIR="source"
-
-JAVA_ENCODING="ISO-8859-1"
diff --git a/dev-java/glazedlists/metadata.xml b/dev-java/glazedlists/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/glazedlists/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/gnu-classpath/Manifest b/dev-java/gnu-classpath/Manifest
deleted file mode 100644
index ffb9d0662305..000000000000
--- a/dev-java/gnu-classpath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST classpath-0.98.tar.gz 11021342 BLAKE2B 8bd0c55153569b34dfde767233ed48f6ebf0f507d34d991a410b0e40a2ddfbd20d4568697265f8544823337f568a916288e92c096b39fcd5c67afc82ddfc3cc3 SHA512 0d98f87cd78c166d566ecd8d0372f2d6cdf422e8c4c806ca01d3a77dafbdd80ee936de78a2c5d4226174027efdc053fe92669514bdd8acb3290a7b3ec002d31f
diff --git a/dev-java/gnu-classpath/files/gnu-classpath-0.98-freetype-2.5.3-support.patch b/dev-java/gnu-classpath/files/gnu-classpath-0.98-freetype-2.5.3-support.patch
deleted file mode 100644
index 42828e2a4b8f..000000000000
--- a/dev-java/gnu-classpath/files/gnu-classpath-0.98-freetype-2.5.3-support.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- ./native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c.orig 2014-03-18 10:35:50.904133661 +0100
-+++ ./native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c 2014-03-18 10:37:03.808131298 +0100
-@@ -42,8 +42,9 @@
- #include <pango/pango.h>
- #include <pango/pangoft2.h>
- #include <pango/pangofc-font.h>
--#include <freetype/ftglyph.h>
--#include <freetype/ftoutln.h>
-+#include <ft2build.h>
-+#include FT_GLYPH_H
-+#include FT_OUTLINE_H
- #include "jcl.h"
- #include "gdkfont.h"
- #include "gnu_java_awt_peer_gtk_FreetypeGlyphVector.h"
---- ./native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c.orig 2014-03-18 10:37:12.048131031 +0100
-+++ ./native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c 2014-03-18 10:37:58.416129528 +0100
-@@ -39,10 +39,11 @@
- #include <pango/pango.h>
- #include <pango/pangoft2.h>
- #include <pango/pangofc-font.h>
--#include <freetype/ftglyph.h>
--#include <freetype/ftoutln.h>
--#include <freetype/fttypes.h>
--#include <freetype/tttables.h>
-+#include <ft2build.h>
-+#include FT_GLYPH_H
-+#include FT_OUTLINE_H
-+#include FT_TYPES_H
-+#include FT_TRUETYPE_TABLES_H
- #include "gdkfont.h"
- #include "gtkpeer.h"
- #include "gnu_java_awt_peer_gtk_GdkFontPeer.h" \ No newline at end of file
diff --git a/dev-java/gnu-classpath/gnu-classpath-0.98-r6.ebuild b/dev-java/gnu-classpath/gnu-classpath-0.98-r6.ebuild
deleted file mode 100644
index 618fe63fb741..000000000000
--- a/dev-java/gnu-classpath/gnu-classpath-0.98-r6.ebuild
+++ /dev/null
@@ -1,115 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit epatch java-pkg-2 multilib
-
-MY_P=${P/gnu-/}
-DESCRIPTION="Free core class libraries for use with Java VMs and compilers"
-SRC_URI="mirror://gnu/classpath/${MY_P}.tar.gz"
-HOMEPAGE="https://www.gnu.org/software/classpath"
-
-LICENSE="GPL-2-with-linking-exception"
-SLOT="0.98"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-IUSE="alsa debug doc dssi examples gconf +gjdoc gmp gtk xml"
-REQUIRED_USE="doc? ( gjdoc )"
-
-RDEPEND="alsa? ( media-libs/alsa-lib )
- dssi? ( >=media-libs/dssi-0.9 )
- gconf? ( gnome-base/gconf:2= )
- gjdoc? ( >=dev-java/antlr-2.7.7-r7:0 )
- gmp? ( >=dev-libs/gmp-4.2.4:0= )
- gtk? (
- >=x11-libs/gtk+-2.8:2=
- dev-libs/glib:2=
- media-libs/freetype:2=
- >=x11-libs/cairo-1.1.9:=
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXtst
- x11-libs/pango
- )
- xml? ( >=dev-libs/libxml2-2.6.8:2= >=dev-libs/libxslt-1.1.11 )"
-
-DEPEND="app-arch/zip
- gtk? (
- x11-base/xorg-proto
- x11-libs/libXrender
- >=x11-libs/libXtst-1.1.0
- )
- >=virtual/jdk-1.5
- ${RDEPEND}"
-
-RDEPEND=">=virtual/jre-1.5
- ${RDEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-java_prepare() {
- epatch "${FILESDIR}"/${P}-freetype-2.5.3-support.patch
-}
-
-src_configure() {
- # don't use econf, because it ends up putting things under /usr, which may
- # collide with other slots of classpath
- local myconf
- if use gjdoc; then
- local antlr=$(java-pkg_getjar antlr antlr.jar)
- myconf="--with-antlr-jar=${antlr}"
- fi
-
- if use doc; then
- # Avoid a cyclic dependency on gjdoc by building gjdoc before
- # the docs. First we need to trick configure. Hack alert!
- echo -e "#!/bin/sh\necho gjdoc 0.8" > tools/gjdoc.build || die
- chmod 755 tools/gjdoc.build || die
- fi
-
- ANTLR= ./configure \
- $(use_enable alsa) \
- $(use_enable debug ) \
- $(use_enable examples) \
- $(use_enable gconf gconf-peer) \
- $(use_enable gjdoc) \
- $(use_enable gmp) \
- $(use_enable gtk gtk-peer) \
- $(use_enable xml xmlj) \
- $(use_enable dssi ) \
- $(use_with doc gjdoc "${S}/tools/gjdoc.build") \
- --enable-jni \
- --disable-plugin \
- --host=${CHOST} \
- --prefix="${EPREFIX}"/usr/${PN}-${SLOT} \
- --disable-Werror \
- ${myconf} || die "configure failed"
-}
-
-src_compile() {
- if use doc; then
- # Build gjdoc before the docs. We need to hack the real gjdoc
- # script to run from the build directory instead.
- sed -r "s:^(tools_dir=).*:\1${S}/tools:" tools/gjdoc > tools/gjdoc.build || die
- emake -C lib
- emake -C tools
- fi
-
- default
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- dodoc AUTHORS BUGS ChangeLog* HACKING NEWS README THANKYOU TODO
- java-pkg_regjar /usr/${P}/share/classpath/glibj.zip
-
- if use doc; then
- # Strangely the Makefile doesn't install these.
- insinto /usr/${PN}-${SLOT}/share/classpath/api
- doins -r doc/api/html/*
- fi
-}
diff --git a/dev-java/gnu-classpath/metadata.xml b/dev-java/gnu-classpath/metadata.xml
deleted file mode 100644
index da784f858243..000000000000
--- a/dev-java/gnu-classpath/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <use>
- <flag name="alsa">Build with ALSA javax.sound.midi provider</flag>
- <flag name="dssi">Build with DSSI javax.sound.midi provider</flag>
- <flag name="gconf">Build with GConf preferences backend</flag>
- <flag name="gmp">Build with GMP backend for java.math.BigInteger</flag>
- <flag name="gjdoc">Build GJDoc, a documentation generator</flag>
- <flag name="gtk">Build with Gtk+ AWT peers</flag>
- <flag name="xml">Build with native XML backend</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-java/gnu-crypto/Manifest b/dev-java/gnu-crypto/Manifest
deleted file mode 100644
index 3ecf36c11bdc..000000000000
--- a/dev-java/gnu-crypto/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gnu-crypto-2.0.1.tar.bz2 3895714 BLAKE2B 4838f7aa58cbd34d97afb7f503a29b7393ae3085f1b83c8ae65110f20ff7143928351f0aaf2a61a2abb363f764dc67dbd12955fbd0f86dd685dafda550e0e7f1 SHA512 c14aa73fb23663559195e8fc7f85a220b25078fa8ab4e7cf43b84febe96599d990ccf52fcf1f6f66f2b547d9b644bbc99b3d44dc4a777dcb72530e58c8509015
diff --git a/dev-java/gnu-crypto/files/gnu-crypto-2.0.1-jdk15.patch b/dev-java/gnu-crypto/files/gnu-crypto-2.0.1-jdk15.patch
deleted file mode 100644
index 47957cc5ec5f..000000000000
--- a/dev-java/gnu-crypto/files/gnu-crypto-2.0.1-jdk15.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Nur gnu-crypto-2.0.1/source/gnu/crypto/sasl/ClientMechanism.java gnu-crypto-2.0.1-new/source/gnu/crypto/sasl/ClientMechanism.java
---- gnu-crypto-2.0.1/source/gnu/crypto/sasl/ClientMechanism.java 2003-11-21 10:22:10.000000000 +0100
-+++ gnu-crypto-2.0.1-new/source/gnu/crypto/sasl/ClientMechanism.java 2005-05-24 16:16:37.493727834 +0200
-@@ -140,9 +140,9 @@
- return mechanism;
- }
-
-- public Object getNegotiatedProperty(final String propName) throws SaslException {
-+ public Object getNegotiatedProperty(final String propName) {
- if (!isComplete()) {
-- throw new IllegalMechanismStateException();
-+ throw new IllegalStateException();
- }
- if (Sasl.QOP.equals(propName)) {
- return getNegotiatedQOP();
-diff -Nur gnu-crypto-2.0.1/source/gnu/crypto/sasl/ServerMechanism.java gnu-crypto-2.0.1-new/source/gnu/crypto/sasl/ServerMechanism.java
---- gnu-crypto-2.0.1/source/gnu/crypto/sasl/ServerMechanism.java 2003-11-21 10:26:14.000000000 +0100
-+++ gnu-crypto-2.0.1-new/source/gnu/crypto/sasl/ServerMechanism.java 2005-05-24 16:16:55.503085024 +0200
-@@ -147,9 +147,9 @@
- return this.authorizationID;
- }
-
-- public Object getNegotiatedProperty(final String propName) throws SaslException {
-+ public Object getNegotiatedProperty(final String propName) {
- if (!isComplete()) {
-- throw new IllegalMechanismStateException();
-+ throw new IllegalStateException();
- }
- if (Sasl.QOP.equals(propName)) {
- return getNegotiatedQOP();
diff --git a/dev-java/gnu-crypto/gnu-crypto-2.0.1-r3.ebuild b/dev-java/gnu-crypto/gnu-crypto-2.0.1-r3.ebuild
deleted file mode 100644
index 89c2e86670c5..000000000000
--- a/dev-java/gnu-crypto/gnu-crypto-2.0.1-r3.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="GNU Crypto cryptographic primitives for Java"
-HOMEPAGE="https://www.gnu.org/software/gnu-crypto/"
-SRC_URI="ftp://ftp.gnupg.org/GnuPG/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-EANT_BUILD_XML="${S}/build.xml"
-EANT_BUILD_TARGET="jar"
-
-EANT_DOC_TARGET="javadoc"
-
-java_prepare() {
- epatch "${FILESDIR}/${P}-jdk15.patch"
-}
-
-src_compile() {
- java-pkg-2_src_compile
-}
-
-src_test() {
- local TEST_TARGETS=(
- check
- ent
- )
-
- for target in ${TEST_TARGETS[@]}; do
- EANT_TEST_TARGET=${target} \
- java-pkg-2_src_test
- done
-}
-
-src_install() {
- local GNU_CRYPTO_JARS=(
- "${PN}"
- javax-crypto
- javax-security
- )
-
- if use test; then
- GNU_CRYPTO_JARS=(${GNU_CRYPTO_JARS[@]} "${PN}-test")
- fi
-
- for jar in ${GNU_CRYPTO_JARS[@]}; do
- java-pkg_dojar "lib/${jar}.jar"
- done
-
- use doc && java-pkg_dojavadoc docs/api
- use source && java-pkg_dosrc source/* jce/* security/*
-
- dodoc AUTHORS ChangeLog NEWS README THANKS
-}
diff --git a/dev-java/gnu-crypto/metadata.xml b/dev-java/gnu-crypto/metadata.xml
deleted file mode 100644
index 7f1fbbb089f6..000000000000
--- a/dev-java/gnu-crypto/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-GNU Crypto, part of the GNU project, released under the aegis of GNU,
-aims at providing free, versatile, high-quality, and provably correct
-implementations of cryptographic primitives and tools in the Java
-programming language for use by programmers and end-users.
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/gnu-hylafax/Manifest b/dev-java/gnu-hylafax/Manifest
deleted file mode 100644
index b3d085c3bb9f..000000000000
--- a/dev-java/gnu-hylafax/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gnu-hylafax-1.0.3-bin.tar.gz 1742697 BLAKE2B b17facac17157fddfa27c40f58738d51904e2858a5ec80fe36a39038d7301df8d9cd10bbe5fc537d340e9e3c2e69ae590f92ce2fa7e2b004218bc1fd84013624 SHA512 7af66dac5a1b98eddc3d60aa439809f4e683a39a795ca50d0f99f92d4fb17704ab5c7528218be1f4698bca0749efd46c5ec3510e8a10a68b1b77faf1997dc4a2
diff --git a/dev-java/gnu-hylafax/files/gnu-hylafax-1.0.3-ClientPool.patch b/dev-java/gnu-hylafax/files/gnu-hylafax-1.0.3-ClientPool.patch
deleted file mode 100644
index 51bae74646ed..000000000000
--- a/dev-java/gnu-hylafax/files/gnu-hylafax-1.0.3-ClientPool.patch
+++ /dev/null
@@ -1,70 +0,0 @@
---- gnu-hylafax-pool/main/java/gnu/hylafax/pool/ClientPool.java.orig 2015-04-14 18:20:17.113435400 +0000
-+++ gnu-hylafax-pool/main/java/gnu/hylafax/pool/ClientPool.java 2015-04-14 18:20:58.310438791 +0000
-@@ -32,7 +32,7 @@
- import org.apache.commons.logging.Log;
- import org.apache.commons.logging.LogFactory;
-
--import EDU.oswego.cs.dl.util.concurrent.LinkedQueue;
-+import java.util.concurrent.ConcurrentLinkedQueue;
-
- public class ClientPool implements gnu.hylafax.ClientPool {
-
-@@ -42,7 +42,7 @@
-
- private HashMap clientMap;
-
-- private LinkedQueue clients;
-+ private ConcurrentLinkedQueue clients;
-
- private ClientPoolConfiguration configuration;
-
-@@ -66,7 +66,7 @@
-
- public ClientPool(ClientPoolConfiguration configuration) {
- this.configuration = configuration;
-- clients = new LinkedQueue();
-+ clients = new ConcurrentLinkedQueue();
- clientMap = new HashMap();
- workingClients = new HashSet();
- workingClientsToClose = new HashSet();
-@@ -163,8 +163,7 @@
- blocked = true;
- }
-
-- client = (PooledClient) clients.poll(getConfiguration()
-- .getRetryInterval());
-+ client = (PooledClient) clients.poll();
- if (client == null)
- log.warn("No Clients Available.");
- else if (!clientAdded)
-@@ -172,10 +171,10 @@
- }
-
- } else {
-- client = (PooledClient) clients.take();
-+ client = (PooledClient) clients.poll();
- }
- }
-- } catch (InterruptedException e) {
-+ } catch (Exception e) {
- throw new ClientPoolException(
- "Interrupted Thread and No Free Connection Available.");
- }
-@@ -294,7 +293,7 @@
- destroyClient(client);
- addClient();
- } else {
-- clients.put(client);
-+ clients.offer(client);
- size++;
- }
- }
-@@ -306,7 +305,7 @@
-
- log.debug("Released Client.");
-
-- } catch (InterruptedException e) {
-+ } catch (Exception e) {
- log.warn("Was Interrupted.", e);
- destroyClient(client);
- } finally {
diff --git a/dev-java/gnu-hylafax/gnu-hylafax-1.0.3-r2.ebuild b/dev-java/gnu-hylafax/gnu-hylafax-1.0.3-r2.ebuild
deleted file mode 100644
index 31cf502872d3..000000000000
--- a/dev-java/gnu-hylafax/gnu-hylafax-1.0.3-r2.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java API designed to implement the client protocol portion of the hfaxd server"
-HOMEPAGE="http://gnu-hylafax.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}-bin.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/commons-logging:0
- dev-java/commons-cli:1
- dev-java/oracle-javamail:0
- dev-java/java-getopt:1
- dev-java/log4j:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="
- commons-logging
- commons-cli-1
- oracle-javamail
- java-getopt-1
- log4j"
-
-S="${WORKDIR}/${P}"
-
-PATCHES=(
- "${FILESDIR}"/"${P}"-ClientPool.patch #546502
-)
-
-java_prepare() {
- rm -rv "${S}"/lib || die
- find -name "pom.xml" -delete || die
-
- # tarball contains the same sources in gnu-.../sources and gnu-.../main/
- rm -r gnu-hylafax-*/sources || die
-
- epatch "${PATCHES[@]}"
-}
diff --git a/dev-java/gnu-hylafax/metadata.xml b/dev-java/gnu-hylafax/metadata.xml
deleted file mode 100644
index 84d73dab5436..000000000000
--- a/dev-java/gnu-hylafax/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">gnu-hylafax</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/gnu-jaf/Manifest b/dev-java/gnu-jaf/Manifest
deleted file mode 100644
index 06deb19ee89a..000000000000
--- a/dev-java/gnu-jaf/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST activation-1.1.1.tar.gz 157018 BLAKE2B e9135b4c0996601c7963a46363e8ede3ba81e83e532637a92d83c89586eb52bd11be84ee37f5e8f31e372564f7c14aac4123726ba20712f5cef89a1e4bcd01f3 SHA512 d323644df13a4572bf1c10e7175c1c4cfa3078483886bba7b308989c215a23e12939b054124dbaf0437a4c5fdcb551b4e2189c09afc078218963389e4b3c3b7d
-DIST activation-1.1.2.tar.gz 290644 BLAKE2B 15ec89a5c757bb134b9ec71e384a80dea5394b9b6463ca1fe44e2e622993fa8809231379b262b0a54595c32451a49ef508bea45ce82120138efe07d81939a817 SHA512 26534f7bb47daddf97b850ab74fc8ef2c5bd62d12cfb96e28e235071af7dcfc7761fa15f2d8f3a2d194f035665cef127812b7476af6cc81f6d6374f1fa725584
diff --git a/dev-java/gnu-jaf/gnu-jaf-1.1.1-r1.ebuild b/dev-java/gnu-jaf/gnu-jaf-1.1.1-r1.ebuild
deleted file mode 100644
index efb519edd970..000000000000
--- a/dev-java/gnu-jaf/gnu-jaf-1.1.1-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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"
-
-DOCS=( AUTHORS ChangeLog )
-
-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/gnu-jaf-1.1.2.ebuild b/dev-java/gnu-jaf/gnu-jaf-1.1.2.ebuild
deleted file mode 100644
index a51b85e9f953..000000000000
--- a/dev-java/gnu-jaf/gnu-jaf-1.1.2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-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 bf709d02eb34..000000000000
--- a/dev-java/gnu-jaf/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/gnu-regexp/gnu-regexp-1.1.4-r3.ebuild b/dev-java/gnu-regexp/gnu-regexp-1.1.4-r3.ebuild
deleted file mode 100644
index a5e84dd6cc24..000000000000
--- a/dev-java/gnu-regexp/gnu-regexp-1.1.4-r3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="gnu.regexp-${PV}"
-
-DESCRIPTION="GNU regular expression package for Java"
-HOMEPAGE="https://savannah.gnu.org/projects/gnu-regexp"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE=""
-
-CDEPEND="dev-java/java-getopt:1"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_SRC_DIR="src"
-
-JAVA_GENTOO_CLASSPATH="java-getopt-1"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" src -name "*.properties"
-}
diff --git a/dev-java/gnu-regexp/gnu-regexp-1.1.4-r4.ebuild b/dev-java/gnu-regexp/gnu-regexp-1.1.4-r4.ebuild
new file mode 100644
index 000000000000..c10584cf3013
--- /dev/null
+++ b/dev-java/gnu-regexp/gnu-regexp-1.1.4-r4.ebuild
@@ -0,0 +1,40 @@
+# 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-pkg-simple
+
+MY_P="gnu.regexp-${PV}"
+
+DESCRIPTION="GNU regular expression package for Java"
+HOMEPAGE="https://savannah.gnu.org/projects/gnu-regexp"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CDEPEND="dev-java/java-getopt:1"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*
+ source? ( app-arch/zip )"
+
+S="${WORKDIR}/${MY_P}"
+
+JAVA_SRC_DIR="src"
+
+JAVA_GENTOO_CLASSPATH="java-getopt-1"
+
+src_compile() {
+ java-pkg-simple_src_compile
+ java-pkg_addres "${PN}.jar" src -name "*.properties"
+}
diff --git a/dev-java/gnu-regexp/metadata.xml b/dev-java/gnu-regexp/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/gnu-regexp/metadata.xml
+++ b/dev-java/gnu-regexp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/gradle-bin/Manifest b/dev-java/gradle-bin/Manifest
index a76117f75ea7..98941f07f28e 100644
--- a/dev-java/gradle-bin/Manifest
+++ b/dev-java/gradle-bin/Manifest
@@ -1 +1,3 @@
-DIST gradle-bin-6.3.zip 145161013 BLAKE2B f840bda2c1e2a6dd5306b9f7ad6fc8ae8c3d7342de57bd813b8dff64f733fc058af8dc7c9c5a138eac4eef3d5d12074976db81fe7eeb51b52d726502af04d036 SHA512 9796c14f8d4559128b4cb7e676883d83ef99b67242ae8156abebdb38bb7a561e8b3df3f93b24aa53274b7d78a7b04ea51e73268c2465799daa9da53ef73de24d
+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.3.ebuild b/dev-java/gradle-bin/gradle-bin-6.3.ebuild
deleted file mode 100644
index 1623bb9c3f34..000000000000
--- a/dev-java/gradle-bin/gradle-bin-6.3.ebuild
+++ /dev/null
@@ -1,49 +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"
-
-BDEPEND="app-arch/unzip"
-DEPEND=">=virtual/jre-1.8"
-RDEPEND=">=virtual/jdk-1.8"
-
-S="${WORKDIR}/${MY_P}"
-
-src_install() {
- local gradle_dir="/usr/share/${PN}-${SLOT}"
-
- insinto "${gradle_dir}"
- doins -r lib/
-
- exeinto "${gradle_dir}"/bin
- doexe bin/${MY_PN}
- dosym "../${gradle_dir#/usr/}/bin/gradle" "/usr/bin/${MY_PN}-${SLOT}"
-
- docinto html
- dodoc -r docs/release-notes.html
-
- if use doc ; then
- dodoc -r docs/{dsl,userguide}
- java-pkg_dojavadoc docs/javadoc
- fi
-
- if use source ; then
- java-pkg_dosrc src/*
- fi
-}
diff --git a/dev-java/gradle-bin/gradle-bin-8.4.ebuild b/dev-java/gradle-bin/gradle-bin-8.4.ebuild
new file mode 100644
index 000000000000..1d63ca89fe19
--- /dev/null
+++ b/dev-java/gradle-bin/gradle-bin-8.4.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 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.5.ebuild b/dev-java/gradle-bin/gradle-bin-8.5.ebuild
new file mode 100644
index 000000000000..1d63ca89fe19
--- /dev/null
+++ b/dev-java/gradle-bin/gradle-bin-8.5.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 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.7.ebuild b/dev-java/gradle-bin/gradle-bin-8.7.ebuild
new file mode 100644
index 000000000000..61b08c49be55
--- /dev/null
+++ b/dev-java/gradle-bin/gradle-bin-8.7.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 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/metadata.xml b/dev-java/gradle-bin/metadata.xml
index f9d3fac87a16..a16401d9805a 100644
--- a/dev-java/gradle-bin/metadata.xml
+++ b/dev-java/gradle-bin/metadata.xml
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>chainsaw@gentoo.org</email>
- <name>Tony Vroon</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>flo@geekplace.eu</email>
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
</maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/greenmail/Manifest b/dev-java/greenmail/Manifest
new file mode 100644
index 000000000000..5def750177c9
--- /dev/null
+++ b/dev-java/greenmail/Manifest
@@ -0,0 +1 @@
+DIST greenmail-2.0.0_alpha2.tar.gz 969798 BLAKE2B 0e1b00ccc96fac26d453cff5f49937bebc7b62e58ad33c9c287e7edb15de2884620ea52c94e00f5ddb9dc6e8853ed36101c4f7f294d48044d78a2a747146952e SHA512 925762f834d797e5136412520d45e9ce56c7b946f9cf1b7e90b674b12405a426bdceb068c7b459b1d4321d04ed68ff5dfd2d32ea6d5f17e848189596cc9acb17
diff --git a/dev-java/greenmail/greenmail-2.0.0_alpha2.ebuild b/dev-java/greenmail/greenmail-2.0.0_alpha2.ebuild
new file mode 100644
index 000000000000..564a6c9ca56d
--- /dev/null
+++ b/dev-java/greenmail/greenmail-2.0.0_alpha2.ebuild
@@ -0,0 +1,57 @@
+# 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/greenmail-mail-test/greenmail/archive/release-2.0.0-alpha-2.tar.gz --slot 2 --keywords "~amd64" --ebuild greenmail-2.0.0_alpha2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.icegreen:greenmail:2.0.0-alpha-2"
+# No tests, dependencies are not packaged
+# JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="GreenMail - Email Test Servers"
+HOMEPAGE="https://greenmail-mail-test.github.io/greenmail/"
+SRC_URI="https://github.com/greenmail-mail-test/greenmail/archive/release-${PV/_alpha/-alpha-}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# com.sun.mail:jakarta.mail:2.0.1 -> >=dev-java/jakarta-mail-2.0.1:0
+# jakarta.activation:jakarta.activation-api:2.0.1 -> >=dev-java/jakarta-activation-api-2.1.0:2
+# junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+# org.slf4j:slf4j-api:1.7.32 -> >=dev-java/slf4j-api-1.7.36:0
+
+CP_DEPEND="
+ dev-java/jakarta-activation-api:2
+ dev-java/jakarta-mail:0
+ dev-java/junit:4
+ dev-java/slf4j-api:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? org.assertj:assertj-core:3.19.0 -> !!!suitable-mavenVersion-not-found!!!
+# test? org.hamcrest:hamcrest-core:2.2 -> !!!suitable-mavenVersion-not-found!!!
+# test? org.hamcrest:hamcrest-library:2.2 -> !!!suitable-mavenVersion-not-found!!!
+# test? org.slf4j:slf4j-log4j12:1.7.32 -> !!!artifactId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( ../README.md )
+
+S="${WORKDIR}/greenmail-release-${PV/_alpha/-alpha-}/greenmail-core"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/greenmail/metadata.xml b/dev-java/greenmail/metadata.xml
new file mode 100644
index 000000000000..88b4c60ecd57
--- /dev/null
+++ b/dev-java/greenmail/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">greenmail-mail-test/greenmail</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/gson/Manifest b/dev-java/gson/Manifest
index 6dc69b278c28..be2124b47485 100644
--- a/dev-java/gson/Manifest
+++ b/dev-java/gson/Manifest
@@ -1 +1,2 @@
-DIST gson-parent-2.7.tar.gz 437390 BLAKE2B 596331eb829797ecb172c55bef3bca0710c1461f504d1ff6170f332c3a77fbe8cf79b85b8ca16867040b86c46d6dcef09b0bf29d213fa82dfb911feeeeff57eb SHA512 663365566234bff0a94eac6ad4cd6e772b8fd542af2cccba2c2f75081935247eebf1a2502d5ce5dd0a0e75e140e17a689880a3aa04fa7c47a1e7bc834edd415e
+DIST gson-2.10.2_pre20231128.tar.gz 451312 BLAKE2B d16e0510e0806fd33e8d49b5a8fb73e969b89acb2598ca34a43faa97a09debc99466ab472176d60d617aa20b2190884def25881f0bf651e96be2c1bb9a976d70 SHA512 37f2073e5eee2cb85626040552ac750f4917abd05e3b7944c30a2d5ace6888424870a95a0ceba89bf2dadf9ab33e6bbae1591509b84f35aba4521780764c0877
+DIST truth-1.1.3.jar 243021 BLAKE2B a59149038c62ef5dd352b13d4b393e1b7715fbafe5ed86ec2d16d722c738a31dcdca10132fc73b17b367ac4309e5407ba2e489f8d4c8fbca60ce5f35ae75d1e3 SHA512 f29a9fb070aff8a32358a7b6c8998c0095de5d8d68afa7f7bac759c7050309deff929e767657ecbbefd96163460f10255ca01bc567ab30df4834b9d916a4fae8
diff --git a/dev-java/gson/files/gson-2.10.2-GsonVersionDiagnosticsTest.patch b/dev-java/gson/files/gson-2.10.2-GsonVersionDiagnosticsTest.patch
new file mode 100644
index 000000000000..9feeb0aa3797
--- /dev/null
+++ b/dev-java/gson/files/gson-2.10.2-GsonVersionDiagnosticsTest.patch
@@ -0,0 +1,13 @@
+support our versioning schemes
+
+--- a/src/test/java/com/google/gson/functional/GsonVersionDiagnosticsTest.java
++++ b/src/test/java/com/google/gson/functional/GsonVersionDiagnosticsTest.java
+@@ -35,7 +35,7 @@ import org.junit.Test;
+ public class GsonVersionDiagnosticsTest {
+ // We require a patch number, even if it is .0, consistent with https://semver.org/#spec-item-2.
+ private static final Pattern GSON_VERSION_PATTERN =
+- Pattern.compile("(\\(GSON \\d\\.\\d+\\.\\d)(?:[-.][A-Z]+)?\\)$");
++ Pattern.compile("(\\(GSON \\d\\.\\d+\\.\\d)(?:[-.][A-Z]+|_[a-z]+[0-9]+)?\\)$");
+
+ private Gson gson;
+
diff --git a/dev-java/gson/gson-2.10.2_pre20231128.ebuild b/dev-java/gson/gson-2.10.2_pre20231128.ebuild
new file mode 100644
index 000000000000..4247c08c2190
--- /dev/null
+++ b/dev-java/gson/gson-2.10.2_pre20231128.ebuild
@@ -0,0 +1,87 @@
+# 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.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"
+MY_COMMIT="b17b1a0e98dcaf4b61823e1f0c29dda44c0ea3d5"
+SRC_URI="https://github.com/google/gson/archive/${MY_COMMIT}.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}/gson-${MY_COMMIT}/gson"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/error-prone-annotations:0
+ >=virtual/jdk-17:*
+ test? (
+ dev-java/guava:0
+ dev-java/guava-testlib:0
+ )"
+# src/test/java/com/google/gson/functional/Java17RecordTest.java:78:
+# error: records are not supported in -source 11
+RDEPEND=">=virtual/jre-17:*"
+
+DOCS=(
+ ../CHANGELOG.md
+ ../GsonDesignDocument.md
+ ../README.md
+ ../Troubleshooting.md
+ ../UserGuide.md
+)
+
+PATCHES=( "${FILESDIR}/gson-2.10.2-GsonVersionDiagnosticsTest.patch" )
+
+JAVA_CLASSPATH_EXTRA="error-prone-annotations"
+JAVA_RESOURCE_DIRS="src/main/resources"
+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"
+ # 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="
+ guava
+ guava-testlib
+ junit-4
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default #780585
+ 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"
+}
+
+src_compile() {
+ if ! use test; then
+ JAVA_PKG_WANT_SOURCE="1.8"
+ JAVA_PKG_WANT_TARGET="1.8"
+ fi
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/gson/gson-2.7-r1.ebuild b/dev-java/gson/gson-2.7-r1.ebuild
deleted file mode 100644
index 7d902a246532..000000000000
--- a/dev-java/gson/gson-2.7-r1.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
-
-MY_P="${PN}-parent-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library to convert JSON to Java objects and vice-versa"
-HOMEPAGE="https://github.com/google/gson"
-SRC_URI="https://github.com/google/${PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="2.6"
-KEYWORDS="~amd64 ~x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${PN}-${MY_P}"
-JAVA_SRC_DIR="${PN}/src/main/java"
diff --git a/dev-java/gson/metadata.xml b/dev-java/gson/metadata.xml
index 695222f7cadc..29e4ef8cca28 100644
--- a/dev-java/gson/metadata.xml
+++ b/dev-java/gson/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/guava-testlib/Manifest b/dev-java/guava-testlib/Manifest
new file mode 100644
index 000000000000..9e4363a3129a
--- /dev/null
+++ b/dev-java/guava-testlib/Manifest
@@ -0,0 +1,2 @@
+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-33.0.0.ebuild b/dev-java/guava-testlib/guava-testlib-33.0.0.ebuild
new file mode 100644
index 000000000000..dfe7882178a8
--- /dev/null
+++ b/dev-java/guava-testlib/guava-testlib-33.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 test"
+MAVEN_ID="com.google.guava:guava-testlib:${PV}-jre"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+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.5/truth-1.1.5.jar )"
+S="${WORKDIR}/guava-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/error-prone-annotations-2.24.0:0
+ ~dev-java/guava-${PV}: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.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
new file mode 100644
index 000000000000..5dcc33c704ec
--- /dev/null
+++ b/dev-java/guava-testlib/metadata.xml
@@ -0,0 +1,13 @@
+<?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/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>
+</pkgmetadata>
diff --git a/dev-java/guava/Manifest b/dev-java/guava/Manifest
index 0b9dae4eb856..044968475684 100644
--- a/dev-java/guava/Manifest
+++ b/dev-java/guava/Manifest
@@ -1 +1 @@
-DIST guava-20.0.tar.gz 2522092 BLAKE2B 2ca76a71d0c169b80bfaa3e9847b2e465c57aabc0a67622a69519808fa8455146228747dc20e999ebc20ef7cd5fec1cfa82f6c025e9378011619cfedbc2c7d6c SHA512 e89eee8e66502f208878af286c660393712b12fb37647ec70719ca7c5184686c8dc5fc59d45c1813d792ecad9421e2c077dab075f76b1907c04f9f6e80567ac9
+DIST guava-33.0.0.tar.gz 5779322 BLAKE2B b7790f4207e2061b364f3dfac8d3f6f0de180f33f1f1c24078c40b6e69d3a372fc7f681bdd51a670a4b913c0e537731ecbff849a08411c250de4dc6b255e70cf SHA512 4f97aca4621a703b69535c1d56c0b09b3b4ed893e3f136ae5622fe727ce43f920dcdf39a6e8c9667d4f51eccc7f8297c088bc3c34e1f8d6e84a0b7164855ce7c
diff --git a/dev-java/guava/guava-20.0.ebuild b/dev-java/guava/guava-20.0.ebuild
deleted file mode 100644
index f07428f2619f..000000000000
--- a/dev-java/guava/guava-20.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="com.google.guava:guava:20.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A collection of Google's core Java libraries"
-HOMEPAGE="https://github.com/google/guava"
-SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="${PV%.*}"
-KEYWORDS="amd64 ~arm64 x86"
-
-CP_DEPEND="
- dev-java/animal-sniffer-annotations:0
- dev-java/error-prone-annotations:0
- dev-java/jsr305:0
-"
-
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.7
- dev-java/j2objc-annotations:0"
-
-S="${WORKDIR}/${P}/${PN}"
-JAVA_SRC_DIR="src"
-
-src_configure() {
- JAVA_GENTOO_CLASSPATH_EXTRA=$(java-pkg_getjars --build-only j2objc-annotations)
-}
diff --git a/dev-java/guava/guava-33.0.0.ebuild b/dev-java/guava/guava-33.0.0.ebuild
new file mode 100644
index 000000000000..b47d69abc5a9
--- /dev/null
+++ b/dev-java/guava/guava-33.0.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.google.guava:guava:${PV}-jre"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A collection of Google's core Java libraries"
+HOMEPAGE="https://github.com/google/guava"
+SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/error-prone-annotations-2.24.0:0
+ dev-java/j2objc-annotations:0
+ dev-java/jsr305:0
+"
+
+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/guava/metadata.xml b/dev-java/guava/metadata.xml
index fe1b84dbf810..e5b07e1d5d67 100644
--- a/dev-java/guava/metadata.xml
+++ b/dev-java/guava/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/guice/Manifest b/dev-java/guice/Manifest
index 4349f0bee98f..0f624b6899a8 100644
--- a/dev-java/guice/Manifest
+++ b/dev-java/guice/Manifest
@@ -1 +1 @@
-DIST guice-4.1.tar.gz 23212767 BLAKE2B bab34da971c1a154eca468bbae4f32db97c0f7ce88bd66cea9c79ef08871db06877ab1ea6495c920977ae139af0bddef2fa4bef8ff5783d2bd53c736bfa07153 SHA512 b42c6475a1d17c111a2ca278ac007bee541806685c0938c66f638808bd81d58aa99ba5aef2e4d8320dd5014df4307c5d2dd192111f4610c73a1eeef328771c00
+DIST guice-5.1.0.tar.gz 650452 BLAKE2B 66c56b8605d189a3a6834a1de9ba6b7c6600583dfefa7808ae0b0b71d7f07746811a76326fc3ff56f2fd0d377f7bc3eb04d1c996ab2289eb48dff91d2f12b5f0 SHA512 b9719f07725c3188b8b903c8eee74ef59397f85f7452e38ef8ba2b3b66a56cef427d4dcee4e5d9c4033404a2f5cdadc2d40b6f7076b4c08fe1ec109910206e6a
diff --git a/dev-java/guice/guice-4.1.ebuild b/dev-java/guice/guice-4.1.ebuild
deleted file mode 100644
index f6bb9b557587..000000000000
--- a/dev-java/guice/guice-4.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A lightweight dependency injection framework for Java 5 and above"
-HOMEPAGE="https://github.com/google/guice/"
-SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="4"
-KEYWORDS="amd64 x86"
-RESTRICT="test"
-
-CP_DEPEND="dev-java/aopalliance:1
- >=dev-java/asm-5:4
- >=dev-java/cglib-3.1:3
- dev-java/guava:20
- dev-java/javax-inject:0"
-
-RDEPEND=">=virtual/jre-1.7
- ${CP_DEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CP_DEPEND}"
-
-JAVA_PKG_BSFIX_ALL="no"
-JAVA_PKG_BSFIX_NAME="build.xml common.xml"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-src_prepare() {
- default
-
- # Where could we get this FREAKIN jar?
- java-pkg_clean ! -name "bnd-*.jar"
-}
-
-src_compile() {
- EANT_BUILD_TARGET="compile manifest" java-pkg-2_src_compile
- jar cfm ${PN}.jar build/META-INF/MANIFEST.MF -C build/classes . || die
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- dodoc {CONTRIBUTING,README}.md
- use source && java-pkg_dosrc core/src/*
-}
diff --git a/dev-java/guice/guice-5.1.0-r1.ebuild b/dev-java/guice/guice-5.1.0-r1.ebuild
new file mode 100644
index 000000000000..4f2610fff44c
--- /dev/null
+++ b/dev-java/guice/guice-5.1.0-r1.ebuild
@@ -0,0 +1,57 @@
+# 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.inject:guice:5.1.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Guice is a lightweight dependency injection framework for Java 6 and above"
+HOMEPAGE="https://github.com/google/guice"
+SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Most of the test dependencies are missing in Gentoo.
+RESTRICT="test"
+
+CP_DEPEND="
+ dev-java/aopalliance:1
+ dev-java/asm:9
+ dev-java/error-prone-annotations:0
+ dev-java/guava:0
+ dev-java/javax-inject:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/guava-testlib:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( {COPYING,{CONTRIBUTING,README}.md} )
+
+JAVA_SRC_DIR=( "core/src" )
+JAVA_RESOURCE_DIRS=( "core/res" )
+
+JAVA_TEST_GENTOO_CLASSPATH="guava-testlib,junit-4"
+JAVA_TEST_SRC_DIR=( "core/test" )
+JAVA_TEST_RESOURCE_DIRS=( "core/test" )
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "core/res/com/google/inject/" || die
+ cp core/{src,res}/com/google/inject/BUILD || die
+}
diff --git a/dev-java/guice/metadata.xml b/dev-java/guice/metadata.xml
index e1f6796d80f7..a8f059e86374 100644
--- a/dev-java/guice/metadata.xml
+++ b/dev-java/guice/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="google-code">google-guice</remote-id>
<remote-id type="github">google/guice</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/gwt/Manifest b/dev-java/gwt/Manifest
deleted file mode 100644
index 6a0f247896b3..000000000000
--- a/dev-java/gwt/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST gwt-2.8.2.zip 22017212 BLAKE2B b112df08885e607c975f9585d6b83e2a12894e974850ada052918e4b946b11bfc8d9cf9d71f4e684121d9d16714885be549eed44d77a119e695c2b50cd6bc6c3 SHA512 ac16311c3b00b36d421eef914e73ad8dea01f022c87fc7ed722fdfee8eed391f1987cc1c34522978afc542cdb90eee791efcdcc725d9a395ab468e458b708074
-DIST gwt-2.9.0.tar.gz 13081965 BLAKE2B 8b18e4cad6df9b1a2336bdf537a26def021ccd950299a6064e9a7328d0161c093f56284cce7b8a0e0a0c72b0dc9604e5e5527332d1878afd19a3c95eed5129a7 SHA512 424484a42f28387734a89a3a12b48716031e194e3a712a5e7cbdb66f77ab68e72ff8751f70a4048f4b9f35d92948c285490fd8e23c34d5c5e5558fee33952bf5
-DIST gwt-tools-194772ed94078802d8030136796de344eb1fdbe1.tar.gz 575902138 BLAKE2B 518ed1752cc82a527521525e181db712a641d36db203f511bdcc5206de314aa1eb693415b690fc42f38c9beabaffc484ad6ec3444e3cd8b4f2a3fa2ab9505f11 SHA512 0365d664b4b14ec833c922c8fab5df269e69ac8f1526315810f4922132439b880ee15e7e8b80e8b505469a374ba4a47998c7ed07b5f53227d50100247fade82b
-DIST gwt-tools-f42d2729a3a8e6ba9b9aec069957bce5dc0f6f6d.zip 577453206 BLAKE2B 83a3824d6418727876b4708ed44ab1f58513a5b39d4e48f9bf21290ca358f76ec2ccd98ce2aee76afe7f621fb1f703bf459b8c3d6a3d4f32d4be807bc723513e SHA512 f4f033c972d955da40258020a9fb84ae90f30b7afeb1ae8044cf00f4f5f45200129bf84e2f69660a4eb80bb60f3a5a1d3c5af69fe9e07e0b985de0e708ca933f
diff --git a/dev-java/gwt/files/gwt-2.8.2-build-system.patch b/dev-java/gwt/files/gwt-2.8.2-build-system.patch
deleted file mode 100644
index 82340416e7a7..000000000000
--- a/dev-java/gwt/files/gwt-2.8.2-build-system.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- gwt-2.8.2-orig/common.ant.xml 2017-10-18 22:39:31.000000000 +1100
-+++ gwt-2.8.2/common.ant.xml 2020-01-13 13:23:58.653719957 +1100
-@@ -277,9 +277,7 @@
-
- <macrodef name="gwt.getgitinfo" description="Identifies the GIT info of a workspace">
- <sequential>
-- <exec executable="git" searchpath="true" outputproperty="gwt.gitrev">
-- <arg line="rev-parse --short HEAD"/>
-- </exec>
-+ <property name="gwt.gitrev" value="faff18e7a1f065e3a4ac4ef32ab5cce394557070"/>
- <!-- Generally, filtering requires a sentinel file so that changes to git rev will
- be noticed as invalidating the previously-generated filter output. This property
- names where such a sentinel lives; it is tested with <available/> and created
diff --git a/dev-java/gwt/files/gwt-2.9.0-jsinterop-classpath.patch b/dev-java/gwt/files/gwt-2.9.0-jsinterop-classpath.patch
deleted file mode 100644
index 5e69341210cf..000000000000
--- a/dev-java/gwt/files/gwt-2.9.0-jsinterop-classpath.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-# It's unclear how upstream gets their "dev.compile.test" target to compile
-# without this - it could be that their testing is done with the local tools/
-# dir, and that some assumptions are made somewhere in the bulid system that
-# don't apply when the tools dir is elsewhere. Either way, this fixes it.
-#
-# a Pull Request (of sorts) has been issued with upstream to incorporate this
-# change. I would list the PR link here, but they use gerrit, and i don't
-# understand what happened to my submission after I issued
-# `git push upstream HEAD:refs/for/master`
-
---- a/dev/build.xml
-+++ b/dev/build.xml
-@@ -60,6 +60,7 @@
- <pathelement
- location="${gwt.tools.lib}/streamhtmlparser/streamhtmlparser-jsilver-r10/streamhtmlparser-jsilver-r10-1.5-rebased.jar"/>
- <pathelement location="${gwt.build.lib}/gwt-dev-${build.host.platform}.jar"/>
-+ <pathelement location="${gwt.tools.lib}/jsinterop/jsinterop-annotations-2.0.0.jar"/>
- <pathelement location="${alldeps.jar}"/>
- </classpath>
- </gwt.javac>
diff --git a/dev-java/gwt/files/gwt-2.9.0-remove-git-usage.patch b/dev-java/gwt/files/gwt-2.9.0-remove-git-usage.patch
deleted file mode 100644
index 9ebbafb99099..000000000000
--- a/dev-java/gwt/files/gwt-2.9.0-remove-git-usage.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-# This git stuff in the ant configs is useful during development, since it does
-# something or other withe git revision and sets some sort of sentinel file.
-# Since this package is for a release, we don't need it.
---- a/common.ant.xml
-+++ b/common.ant.xml
-@@ -277,16 +277,16 @@
-
- <macrodef name="gwt.getgitinfo" description="Identifies the GIT info of a workspace">
- <sequential>
-- <exec executable="git" searchpath="true" outputproperty="gwt.gitrev">
-- <arg line="rev-parse --short HEAD"/>
-- </exec>
-+ <!-- <exec executable="git" searchpath="true" outputproperty="gwt.gitrev"> -->
-+ <!-- <arg line="rev-parse - -short HEAD"/> -->
-+ <!-- </exec> -->
- <!-- Generally, filtering requires a sentinel file so that changes to git rev will
- be noticed as invalidating the previously-generated filter output. This property
- names where such a sentinel lives; it is tested with <available/> and created
- with <touch/> -->
- <mkdir dir="${project.build}/sentinels"/>
- <property name="filter.sentinel"
-- location="${project.build}/sentinels/gwt-${gwt.version}-git-${gwt.gitrev}"/>
-+ location="${project.build}/sentinels/gwt-${gwt.version}"/>
- </sequential>
- </macrodef>
-
diff --git a/dev-java/gwt/gwt-2.8.2.ebuild b/dev-java/gwt/gwt-2.8.2.ebuild
deleted file mode 100644
index 0a0f40fa707a..000000000000
--- a/dev-java/gwt/gwt-2.8.2.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2 java-utils-2
-
-GWT_TOOLS_COMMIT="f42d2729a3a8e6ba9b9aec069957bce5dc0f6f6d"
-GWT_TOOLS_PN="tools"
-
-GWT_COMMIT="faff18e7a1f065e3a4ac4ef32ab5cce394557070"
-
-DESCRIPTION="Google Web Toolkit library"
-HOMEPAGE="http://www.gwtproject.org/"
-SRC_URI="https://github.com/gwtproject/${PN}/archive/${PV}.zip -> ${P}.zip
- https://github.com/gwtproject/${GWT_TOOLS_PN}/archive/${GWT_TOOLS_COMMIT}.zip -> ${PN}-${GWT_TOOLS_PN}-${GWT_TOOLS_COMMIT}.zip"
-RESTRICT="mirror"
-SLOT="2.8"
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-CDEPEND="
- dev-java/json:0
- dev-java/guava:20
- dev-java/rhino:1.6
- >=dev-java/asm-5.0.3:4
- dev-java/eclipse-ecj:4.5
- dev-java/validation-api:1.0
-"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_BUILD_XML="build.xml"
-EANT_BUILD_TARGET="build"
-EANT_EXTRA_ARGS="-Dgwt.gitrev=${GWT_COMMIT}"
-EANT_GENTOO_CLASSPATH="
- json
- asm-4
- guava-20
- rhino-1.6
- eclipse-ecj-4.5
- validation-api-1.0
-"
-
-src_prepare() {
- eapply "${FILESDIR}"/${P}-build-system.patch
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- GWT_TOOLS="${WORKDIR}/${GWT_TOOLS_PN}-${GWT_TOOLS_COMMIT}" \
- GWT_VERSION="${PV}" \
- java-pkg-2_src_compile
-}
-
-src_test() {
- GWT_TOOLS="${WORKDIR}/${GWT_TOOLS_PN}-${GWT_TOOLS_COMMIT}" \
- GWT_VERSION="${PV}" \
- TZ=America/Los_Angeles ANT_OPTS=-Dfile.encoding=UTF-8 \
- ant ${EANT_EXTRA_ARGS} test || die
-}
-
-src_install() {
- java-pkg_dojar \
- build/lib/*.jar
- java-pkg_dolauncher i18nCreator --main com.google.gwt.i18n.tools.I18NCreator --jar gwt-dev.jar
- java-pkg_dolauncher webAppCreator --main com.google.gwt.user.tools.WebAppCreator --jar gwt-dev.jar
-}
diff --git a/dev-java/gwt/gwt-2.9.0.ebuild b/dev-java/gwt/gwt-2.9.0.ebuild
deleted file mode 100644
index b3a3173ebca2..000000000000
--- a/dev-java/gwt/gwt-2.9.0.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2 java-utils-2
-
-GWT_TOOLS_COMMIT="194772ed94078802d8030136796de344eb1fdbe1"
-GWT_TOOLS_PN="tools"
-
-DESCRIPTION="Google Web Toolkit library"
-HOMEPAGE="http://www.gwtproject.org/"
-SRC_URI="https://github.com/gwtproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/gwtproject/${GWT_TOOLS_PN}/archive/${GWT_TOOLS_COMMIT}.tar.gz -> ${PN}-${GWT_TOOLS_PN}-${GWT_TOOLS_COMMIT}.tar.gz"
-# While the test suite does compile and does execute with an exit status of 0,
-# there are many tests that end with FAILED status. It is unclear if this is
-# expected from upstream or not, but in order to keep things honest, the test
-# suite is being restricted
-RESTRICT="mirror test"
-SLOT="2.8"
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-
-CDEPEND="
- dev-java/json:0
- dev-java/guava:20
- dev-java/rhino:1.6
- dev-java/asm:9
- dev-java/eclipse-ecj:4.5
- dev-java/validation-api:1.0
-"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- virtual/jdk:1.8
-"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_BUILD_TARGET="build"
-EANT_GENTOO_CLASSPATH="
- json
- asm-9
- guava-20
- rhino-1.6
- eclipse-ecj-4.5
- validation-api-1.0
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.9.0-jsinterop-classpath.patch"
- "${FILESDIR}/${PN}-2.9.0-remove-git-usage.patch"
-)
-
-src_prepare() {
- default
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- # the default setup assumes that you've placed these in ${S}/tools. We put
- # it in ${WORKDIR} though
- export GWT_TOOLS="${WORKDIR}/${GWT_TOOLS_PN}-${GWT_TOOLS_COMMIT}"
- export GWT_VERSION="${PV}"
-
- java-pkg-2_src_compile
-}
-
-src_test() {
- local -x ANT_OPTS=-Dfile.encoding=UTF-8
- local -x TZ=America/Los_Angeles
-
- java-pkg-2_src_test
-}
-
-src_install() {
- local i18nCreater_launcher_args=(
- i18nCreater
- --main com.google.gwt.i18n.tools.I18NCreater
- --jar gwt-dev.jar
- )
- local webAppCreator_launcher_args=(
- webAppCreator
- --main com.google.gwt.user.tools.WebAppCreator
- --jar gwt-dev.jar
- )
-
- java-pkg_dojar build/lib/*.jar
- java-pkg_dolauncher ${i18nCreater_launcher_args[@]}
- java-pkg_dolauncher ${webAppCreator_launcher_args[@]}
-}
diff --git a/dev-java/gwt/metadata.xml b/dev-java/gwt/metadata.xml
deleted file mode 100644
index 15024df0cf40..000000000000
--- a/dev-java/gwt/metadata.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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>
- </maintainer>
- <longdescription lang="en">
- GWT is a development toolkit for building and optimizing
- complex browser-based applications. Its goal is to enable
- productive development of high-performance web applications
- without the developer having to be an expert in browser
- quirks, XMLHttpRequest, and JavaScript. It’s open source,
- completely free, and used by thousands of developers around
- the world.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/hamcrest-core/Manifest b/dev-java/hamcrest-core/Manifest
index 6c4ab7fb2a33..53b1379edb09 100644
--- a/dev-java/hamcrest-core/Manifest
+++ b/dev-java/hamcrest-core/Manifest
@@ -1,2 +1,2 @@
-DIST hamcrest-1.3.tgz 3686096 BLAKE2B 38ff91a524064cb00b4d2e82c0a50a2df870bbb0a6e43055f33ce344a1dc8de3760530652691db26aa42890d8517940c038a570b5acaaf91b7e970aca7df3493 SHA512 5672bc627bc71d6fd64b6f776b89ac16ed68819fa4a0748c1250b57f1065c1e7e18ba184d9fe3392e54000ddeb353d0d8d67f4eecdf464974563f05c6b226fc2
DIST hamcrest-core-1.1.tar.gz 1247348 BLAKE2B 07b874ca2e61808cd1a30246cbfe7baa220a9c83df7be94dbb50c4df0279bcf906a32cc1b69aed0ebd81d51392af28050d070b7fabb50f8063964b0782b5e105 SHA512 d86080f1ef5982faee728e29675676a89b42a02c4b00783c67be948076e502e70a2b435568502d8ed3c5b1bcc5441b3cdd8817dab841cac537087edeee47632f
+DIST hamcrest-java-1.3.tar.gz 2007925 BLAKE2B 7d54f056814ba30d669e171f00c31e71a0aaea37d345fa93d0c88afb8c3f916180ba699c2cee9219504c3e931b4f4548d708c927cf2caf483847f217c22c7cdf SHA512 4356df7b5b78f821847fde027b416b49b8456e84ab2ec98c2982adf54e2bdc01a5ca2c2b5425620c5ee34bfe3f95ea43c77190504f76ddc9f8b93b137a4ca54b
diff --git a/dev-java/hamcrest-core/files/hamcrest-core-1.3-java-11.patch b/dev-java/hamcrest-core/files/hamcrest-core-1.3-java-11.patch
deleted file mode 100644
index 9f68faecb6bf..000000000000
--- a/dev-java/hamcrest-core/files/hamcrest-core-1.3-java-11.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/hamcrest-core/src/main/java/org/hamcrest/core/AllOf.java
-+++ b/hamcrest-core/src/main/java/org/hamcrest/core/AllOf.java
-@@ -57,7 +57,7 @@ public class AllOf<T> extends DiagnosingMatcher<T> {
- */
- @Factory
- public static <T> Matcher<T> allOf(Matcher<? super T>... matchers) {
-- return allOf(Arrays.asList(matchers));
-+ return allOf((List<Matcher<? super T>>) Arrays.asList(matchers));
- }
-
- /**
---- a/hamcrest-core/src/main/java/org/hamcrest/core/AnyOf.java
-+++ b/hamcrest-core/src/main/java/org/hamcrest/core/AnyOf.java
-@@ -47,7 +47,7 @@ public class AnyOf<T> extends ShortcutCombination<T> {
- */
- @Factory
- public static <T> AnyOf<T> anyOf(Matcher<? super T>... matchers) {
-- return anyOf(Arrays.asList(matchers));
-+ return anyOf((List<Matcher<? super T>>) Arrays.asList(matchers));
- }
-
- /**
diff --git a/dev-java/hamcrest-core/files/hamcrest-core-1.3-r3-java-11.patch b/dev-java/hamcrest-core/files/hamcrest-core-1.3-r3-java-11.patch
new file mode 100644
index 000000000000..21a957eb7212
--- /dev/null
+++ b/dev-java/hamcrest-core/files/hamcrest-core-1.3-r3-java-11.patch
@@ -0,0 +1,26 @@
+diff --git a/hamcrest-core/src/main/java/org/hamcrest/core/AllOf.java b/hamcrest-core/src/main/java/org/hamcrest/core/AllOf.java
+index a5daf94..23090b2 100644
+--- a/hamcrest-core/src/main/java/org/hamcrest/core/AllOf.java
++++ b/hamcrest-core/src/main/java/org/hamcrest/core/AllOf.java
+@@ -57,7 +57,7 @@ public class AllOf<T> extends DiagnosingMatcher<T> {
+ */
+ @Factory
+ public static <T> Matcher<T> allOf(Matcher<? super T>... matchers) {
+- return allOf(Arrays.asList(matchers));
++ return allOf((List<Matcher<? super T>>) Arrays.asList(matchers));
+ }
+
+ /**
+diff --git a/hamcrest-core/src/main/java/org/hamcrest/core/AnyOf.java b/hamcrest-core/src/main/java/org/hamcrest/core/AnyOf.java
+index de00677..fb551a2 100644
+--- a/hamcrest-core/src/main/java/org/hamcrest/core/AnyOf.java
++++ b/hamcrest-core/src/main/java/org/hamcrest/core/AnyOf.java
+@@ -47,7 +47,7 @@ public class AnyOf<T> extends ShortcutCombination<T> {
+ */
+ @Factory
+ public static <T> AnyOf<T> anyOf(Matcher<? super T>... matchers) {
+- return anyOf(Arrays.asList(matchers));
++ return anyOf((List<Matcher<? super T>>) Arrays.asList(matchers));
+ }
+
+ /**
diff --git a/dev-java/hamcrest-core/hamcrest-core-1.1-r4.ebuild b/dev-java/hamcrest-core/hamcrest-core-1.1-r4.ebuild
index 4023e0a16ff8..d8b3c2e8df34 100644
--- a/dev-java/hamcrest-core/hamcrest-core-1.1-r4.ebuild
+++ b/dev-java/hamcrest-core/hamcrest-core-1.1-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ MY_PN="hamcrest"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Library of matchers for building test expressions"
-HOMEPAGE="https://github.com/hamcrest"
+HOMEPAGE="https://hamcrest.org/JavaHamcrest/"
SRC_URI="https://github.com/${MY_PN}/JavaHamcrest/archive/${MY_PN}-java-${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
diff --git a/dev-java/hamcrest-core/hamcrest-core-1.3-r2.ebuild b/dev-java/hamcrest-core/hamcrest-core-1.3-r2.ebuild
deleted file mode 100644
index 627607d45aa2..000000000000
--- a/dev-java/hamcrest-core/hamcrest-core-1.3-r2.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.hamcrest:hamcrest-core:1.3"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="hamcrest"
-MY_P="${MY_PN}-${PV}"
-S="${WORKDIR}/${MY_P}"
-
-DESCRIPTION="Core library of matchers for building test expressions"
-HOMEPAGE="https://github.com/hamcrest"
-SRC_URI="mirror://gentoo/${MY_P}.tgz"
-
-LICENSE="BSD-2"
-SLOT="${PV}"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
-
-DEPEND=">=virtual/jdk-1.8:*
- userland_GNU? ( sys-apps/findutils )"
-
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND=">=dev-java/hamcrest-generator-${PV}:1.3"
-
-JAVA_SRC_DIR="${PN}/src"
-
-DOCS=( {CHANGES,LICENSE,README}.txt )
-
-PATCHES=(
- # https://bugs.gentoo.org/751379
- "${FILESDIR}"/hamcrest-core-1.3-java-11.patch
-)
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-
- # Need to add this in order to generate "CoreMatchers.java" as with java-ant-2 was triggered by "build.xml"
- "$(java-config -J)" \
- -cp $(java-config --with-dependencies --classpath hamcrest-generator:1.3):${PN}.jar \
- org.hamcrest.generator.config.XmlConfigurator \
- core-matchers.xml \
- hamcrest-core/src/main/java \
- org.hamcrest.CoreMatchers \
- hamcrest-core/src/main/java
-
- # Compile again, this time including the freshly generated "CoreMatchers.java"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/hamcrest-core/hamcrest-core-1.3-r3.ebuild b/dev-java/hamcrest-core/hamcrest-core-1.3-r3.ebuild
new file mode 100644
index 000000000000..8ef55c0cf9a8
--- /dev/null
+++ b/dev-java/hamcrest-core/hamcrest-core-1.3-r3.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.hamcrest:hamcrest-core:1.3"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core library of matchers for building test expressions"
+HOMEPAGE="https://hamcrest.org/JavaHamcrest/"
+SRC_URI="https://github.com/hamcrest/JavaHamcrest/archive/hamcrest-java-${PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="${PV}"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="dev-java/hamcrest-generator:1.3"
+
+DOCS=( {CHANGES,LICENSE,README}.txt )
+
+PATCHES=(
+ # https://bugs.gentoo.org/751379
+ "${FILESDIR}"/hamcrest-core-1.3-r3-java-11.patch
+)
+
+S="${WORKDIR}/JavaHamcrest-hamcrest-java-${PV}"
+
+JAVA_SRC_DIR="${PN}/src"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # Need to add this in order to generate "CoreMatchers.java" as with java-ant-2 was triggered by "build.xml"
+ "$(java-config -J)" \
+ -cp $(java-config --with-dependencies --classpath hamcrest-generator:1.3):${PN}.jar \
+ org.hamcrest.generator.config.XmlConfigurator \
+ core-matchers.xml \
+ hamcrest-core/src/main/java \
+ org.hamcrest.CoreMatchers \
+ hamcrest-core/src/main/java
+
+ # Compile again, this time including the freshly generated "CoreMatchers.java"
+ java-pkg-simple_src_compile
+}
diff --git a/dev-java/hamcrest-core/metadata.xml b/dev-java/hamcrest-core/metadata.xml
index 7ee93b2f2b47..4de8b3f48a51 100644
--- a/dev-java/hamcrest-core/metadata.xml
+++ b/dev-java/hamcrest-core/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">hamcrest/</remote-id>
+ <remote-id type="github">hamcrest/JavaHamcrest</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/hamcrest-generator/Manifest b/dev-java/hamcrest-generator/Manifest
index 480364f4e8f4..1139a7ccc0a9 100644
--- a/dev-java/hamcrest-generator/Manifest
+++ b/dev-java/hamcrest-generator/Manifest
@@ -1 +1 @@
-DIST hamcrest-1.3.tgz 3686096 BLAKE2B 38ff91a524064cb00b4d2e82c0a50a2df870bbb0a6e43055f33ce344a1dc8de3760530652691db26aa42890d8517940c038a570b5acaaf91b7e970aca7df3493 SHA512 5672bc627bc71d6fd64b6f776b89ac16ed68819fa4a0748c1250b57f1065c1e7e18ba184d9fe3392e54000ddeb353d0d8d67f4eecdf464974563f05c6b226fc2
+DIST hamcrest-java-1.3.tar.gz 2007925 BLAKE2B 7d54f056814ba30d669e171f00c31e71a0aaea37d345fa93d0c88afb8c3f916180ba699c2cee9219504c3e931b4f4548d708c927cf2caf483847f217c22c7cdf SHA512 4356df7b5b78f821847fde027b416b49b8456e84ab2ec98c2982adf54e2bdc01a5ca2c2b5425620c5ee34bfe3f95ea43c77190504f76ddc9f8b93b137a4ca54b
diff --git a/dev-java/hamcrest-generator/files/hamcrest-generator-1.3-no_jarjar.patch b/dev-java/hamcrest-generator/files/hamcrest-generator-1.3-no_jarjar.patch
deleted file mode 100644
index 6cd74732c2c0..000000000000
--- a/dev-java/hamcrest-generator/files/hamcrest-generator-1.3-no_jarjar.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/build.xml 2012-07-02 21:14:09.000000000 +0200
-+++ b/build.xml 2013-06-15 21:39:55.005813436 +0200
-@@ -16,13 +16,6 @@
- modulename="hamcrest-generator-nodeps"
- classpath="lib/generator/qdox-1.12.jar"/>
-
-- <!-- Bundle QDox classes in hamcrest-generator.jar using JarJar to place classes under a different package -->
-- <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="lib/generator/jarjar-1.3.jar"/>
-- <jarjar jarfile="build/hamcrest-generator-${version}.jar">
-- <zipfileset src="build/hamcrest-generator-nodeps-${version}.jar"/>
-- <zipfileset src="lib/generator/qdox-1.12.jar"/>
-- <rule pattern="com.thoughtworks.qdox.**" result="org.hamcrest.generator.qdox.@1"/>
-- </jarjar>
- <copy file="build/hamcrest-generator-nodeps-${version}-sources.jar" tofile="build/hamcrest-generator-${version}-sources.jar"/>
- </target>
-
diff --git a/dev-java/hamcrest-generator/hamcrest-generator-1.3-r3.ebuild b/dev-java/hamcrest-generator/hamcrest-generator-1.3-r3.ebuild
deleted file mode 100644
index 7afc1760f6b2..000000000000
--- a/dev-java/hamcrest-generator/hamcrest-generator-1.3-r3.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="hamcrest"
-MY_P="${MY_PN}-${PV}"
-S="${WORKDIR}/${MY_P}"
-
-DESCRIPTION="Code generator for Hamcrest's library of matchers for building test expressions"
-HOMEPAGE="https://github.com/hamcrest"
-SRC_URI="mirror://gentoo/${MY_P}.tgz"
-
-LICENSE="BSD-2"
-SLOT="${PV}"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
-
-CDEPEND="dev-java/qdox:1.12"
-
-DEPEND=">=virtual/jdk-1.8:*
- userland_GNU? ( sys-apps/findutils )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.8:*
- ${CDEPEND}"
-
-EANT_BUILD_TARGET="generator"
-EANT_EXTRA_ARGS="-Dversion=${PV}"
-
-src_prepare() {
- default
- # Don't include source in JAR. If a Gentoo user wants the source the source
- # USE flag will be enabled.
- eapply "${FILESDIR}/${P}-no_jarjar.patch"
-
- find -iname "*.jar" -exec rm -v {} + || die "Unable to remove bundled JAR files"
-
- # These jars must be symlinked. Specifying them using gentoo.classpath
- # does not work.
- java-pkg_jar-from --into lib/generator qdox-1.12 qdox.jar qdox-1.12.jar
-}
-
-src_install() {
- java-pkg_newjar build/${PN}-nodeps-${PV}.jar ${PN}.jar
-
- dodoc README.txt CHANGES.txt
-
- use source && java-pkg_dosrc ${PN}/src/main/java/org
-}
diff --git a/dev-java/hamcrest-generator/hamcrest-generator-1.3-r4.ebuild b/dev-java/hamcrest-generator/hamcrest-generator-1.3-r4.ebuild
new file mode 100644
index 000000000000..2a11b0c6d4ed
--- /dev/null
+++ b/dev-java/hamcrest-generator/hamcrest-generator-1.3-r4.ebuild
@@ -0,0 +1,28 @@
+# 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-pkg-simple
+
+DESCRIPTION="Code generator for Hamcrest's library of matchers for building test expressions"
+HOMEPAGE="https://hamcrest.org/JavaHamcrest/"
+SRC_URI="https://github.com/hamcrest/JavaHamcrest/archive/hamcrest-java-${PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="${PV}"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
+
+CP_DEPEND="dev-java/qdox:1.12"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/JavaHamcrest-hamcrest-java-${PV}"
+
+JAVA_SRC_DIR="${PN}/src/main/java"
diff --git a/dev-java/hamcrest-generator/metadata.xml b/dev-java/hamcrest-generator/metadata.xml
index b09ef005001e..4de8b3f48a51 100644
--- a/dev-java/hamcrest-generator/metadata.xml
+++ b/dev-java/hamcrest-generator/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="google-code">hamcrest</remote-id>
- <remote-id type="github">hamcrest/</remote-id>
+ <remote-id type="github">hamcrest/JavaHamcrest</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/hamcrest-library/Manifest b/dev-java/hamcrest-library/Manifest
index 480364f4e8f4..1139a7ccc0a9 100644
--- a/dev-java/hamcrest-library/Manifest
+++ b/dev-java/hamcrest-library/Manifest
@@ -1 +1 @@
-DIST hamcrest-1.3.tgz 3686096 BLAKE2B 38ff91a524064cb00b4d2e82c0a50a2df870bbb0a6e43055f33ce344a1dc8de3760530652691db26aa42890d8517940c038a570b5acaaf91b7e970aca7df3493 SHA512 5672bc627bc71d6fd64b6f776b89ac16ed68819fa4a0748c1250b57f1065c1e7e18ba184d9fe3392e54000ddeb353d0d8d67f4eecdf464974563f05c6b226fc2
+DIST hamcrest-java-1.3.tar.gz 2007925 BLAKE2B 7d54f056814ba30d669e171f00c31e71a0aaea37d345fa93d0c88afb8c3f916180ba699c2cee9219504c3e931b4f4548d708c927cf2caf483847f217c22c7cdf SHA512 4356df7b5b78f821847fde027b416b49b8456e84ab2ec98c2982adf54e2bdc01a5ca2c2b5425620c5ee34bfe3f95ea43c77190504f76ddc9f8b93b137a4ca54b
diff --git a/dev-java/hamcrest-library/files/hamcrest-library-1.3-java-11.patch b/dev-java/hamcrest-library/files/hamcrest-library-1.3-java-11.patch
deleted file mode 100644
index fb749dfe7d24..000000000000
--- a/dev-java/hamcrest-library/files/hamcrest-library-1.3-java-11.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
-+++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
-@@ -122,7 +122,7 @@ public class IsIterableContainingInAnyOrder<T> extends TypeSafeDiagnosingMatcher
- */
- @Factory
- public static <T> Matcher<Iterable<? extends T>> containsInAnyOrder(Matcher<? super T>... itemMatchers) {
-- return containsInAnyOrder(Arrays.asList(itemMatchers));
-+ return containsInAnyOrder((List<Matcher<? super T>>) Arrays.asList(itemMatchers));
- }
-
- /**
---- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInOrder.java
-+++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInOrder.java
-@@ -138,7 +138,7 @@ public class IsIterableContainingInOrder<E> extends TypeSafeDiagnosingMatcher<It
- */
- @Factory
- public static <E> Matcher<Iterable<? extends E>> contains(Matcher<? super E>... itemMatchers) {
-- return contains(asList(itemMatchers));
-+ return contains((List<Matcher<? super E>>) asList(itemMatchers));
- }
-
- /**
---- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
-+++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
-@@ -55,7 +55,7 @@ public class IsArrayContainingInAnyOrder<E> extends TypeSafeMatcher<E[]> {
- */
- @Factory
- public static <E> Matcher<E[]> arrayContainingInAnyOrder(Matcher<? super E>... itemMatchers) {
-- return arrayContainingInAnyOrder(Arrays.asList(itemMatchers));
-+ return arrayContainingInAnyOrder((List<Matcher<? super E>>) Arrays.asList(itemMatchers));
- }
-
- /**
---- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
-+++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
-@@ -69,7 +69,7 @@ public class IsArrayContainingInOrder<E> extends TypeSafeMatcher<E[]> {
- */
- @Factory
- public static <E> Matcher<E[]> arrayContaining(Matcher<? super E>... itemMatchers) {
-- return arrayContaining(asList(itemMatchers));
-+ return arrayContaining((List<Matcher<? super E>>) asList(itemMatchers));
- }
-
- /**
diff --git a/dev-java/hamcrest-library/files/hamcrest-library-1.3-r3-java-11.patch b/dev-java/hamcrest-library/files/hamcrest-library-1.3-r3-java-11.patch
new file mode 100644
index 000000000000..5e1103d3fbfe
--- /dev/null
+++ b/dev-java/hamcrest-library/files/hamcrest-library-1.3-r3-java-11.patch
@@ -0,0 +1,44 @@
+--- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
++++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
+@@ -122,7 +122,7 @@ public class IsIterableContainingInAnyOrder<T> extends TypeSafeDiagnosingMatcher
+ */
+ @Factory
+ public static <T> Matcher<Iterable<? extends T>> containsInAnyOrder(Matcher<? super T>... itemMatchers) {
+- return containsInAnyOrder(Arrays.asList(itemMatchers));
++ return containsInAnyOrder((List<Matcher<? super T>>) Arrays.asList(itemMatchers));
+ }
+
+ /**
+--- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInOrder.java
++++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsIterableContainingInOrder.java
+@@ -138,7 +138,7 @@ public class IsIterableContainingInOrder<E> extends TypeSafeDiagnosingMatcher<It
+ */
+ @Factory
+ public static <E> Matcher<Iterable<? extends E>> contains(Matcher<? super E>... itemMatchers) {
+- return contains(asList(itemMatchers));
++ return contains((List<Matcher<? super E>>) asList(itemMatchers));
+ }
+
+ /**
+--- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
++++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
+@@ -55,7 +55,7 @@ public class IsArrayContainingInAnyOrder<E> extends TypeSafeMatcher<E[]> {
+ */
+ @Factory
+ public static <E> Matcher<E[]> arrayContainingInAnyOrder(Matcher<? super E>... itemMatchers) {
+- return arrayContainingInAnyOrder(Arrays.asList(itemMatchers));
++ return arrayContainingInAnyOrder((List<Matcher<? super E>>) Arrays.asList(itemMatchers));
+ }
+
+ /**
+--- a/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
++++ b/hamcrest-library/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
+@@ -69,7 +69,7 @@ public class IsArrayContainingInOrder<E> extends TypeSafeMatcher<E[]> {
+ */
+ @Factory
+ public static <E> Matcher<E[]> arrayContaining(Matcher<? super E>... itemMatchers) {
+- return arrayContaining(asList(itemMatchers));
++ return arrayContaining((List<Matcher<? super E>>) asList(itemMatchers));
+ }
+
+ /**
diff --git a/dev-java/hamcrest-library/hamcrest-library-1.3-r2.ebuild b/dev-java/hamcrest-library/hamcrest-library-1.3-r2.ebuild
deleted file mode 100644
index afa5bc55ca58..000000000000
--- a/dev-java/hamcrest-library/hamcrest-library-1.3-r2.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-MAVEN_ID="org.hamcrest:hamcrest-library:1.3"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN=${PN/-library}
-MY_P="${MY_PN}-${PV}"
-S="${WORKDIR}/${MY_P}"
-
-DESCRIPTION="Core library of matchers for building test expressions"
-HOMEPAGE="https://github.com/hamcrest"
-SRC_URI="mirror://gentoo/${MY_P}.tgz"
-
-LICENSE="BSD-2"
-SLOT="${PV}"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-DEPEND="dev-java/hamcrest-core:${SLOT}
- >=virtual/jdk-1.8:*
- userland_GNU? ( sys-apps/findutils )"
-RDEPEND="dev-java/hamcrest-core:${SLOT}
- >=virtual/jre-1.8:*"
-BDEPEND=">=dev-java/hamcrest-generator-${PV}:1.3"
-
-JAVA_SRC_DIR="${PN}/src"
-JAVA_GENTOO_CLASSPATH="hamcrest-core-1.3"
-
-DOCS=( {CHANGES,LICENSE,README}.txt )
-
-PATCHES=(
- "${FILESDIR}"/hamcrest-library-1.3-java-11.patch
-)
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-
- # Generate "Matchers.java" (java-pkg-simple does not use the "build.xml" file)
- "$(java-config -J)" \
- -cp $(java-config --with-dependencies --classpath hamcrest-core:1.3,hamcrest-generator:1.3):${PN}.jar \
- org.hamcrest.generator.config.XmlConfigurator \
- matchers.xml \
- hamcrest-core/src/main/java,hamcrest-library/src/main/java \
- org.hamcrest.Matchers \
- hamcrest-library/src/main/java
-
- # Compile again, this time including the freshly generated "Matchers.java"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/hamcrest-library/hamcrest-library-1.3-r3.ebuild b/dev-java/hamcrest-library/hamcrest-library-1.3-r3.ebuild
new file mode 100644
index 000000000000..1fb31d824ea8
--- /dev/null
+++ b/dev-java/hamcrest-library/hamcrest-library-1.3-r3.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.hamcrest:hamcrest-library:1.3"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core library of matchers for building test expressions"
+HOMEPAGE="https://hamcrest.org/JavaHamcrest/"
+SRC_URI="https://github.com/hamcrest/JavaHamcrest/archive/hamcrest-java-${PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="${PV}"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="dev-java/hamcrest-core:1.3"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="dev-java/hamcrest-generator:1.3"
+
+JAVA_SRC_DIR="${PN}/src"
+
+DOCS=( {CHANGES,LICENSE,README}.txt )
+
+PATCHES=(
+ "${FILESDIR}"/hamcrest-library-1.3-r3-java-11.patch
+)
+
+S="${WORKDIR}/JavaHamcrest-hamcrest-java-${PV}"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # Generate "Matchers.java" (java-pkg-simple does not use the "build.xml" file)
+ "$(java-config -J)" \
+ -cp $(java-config --with-dependencies --classpath hamcrest-core:1.3,hamcrest-generator:1.3):${PN}.jar \
+ org.hamcrest.generator.config.XmlConfigurator \
+ matchers.xml \
+ hamcrest-core/src/main/java,hamcrest-library/src/main/java \
+ org.hamcrest.Matchers \
+ hamcrest-library/src/main/java
+
+ # Compile again, this time including the freshly generated "Matchers.java"
+ java-pkg-simple_src_compile
+}
diff --git a/dev-java/hamcrest-library/metadata.xml b/dev-java/hamcrest-library/metadata.xml
index 7ee93b2f2b47..4de8b3f48a51 100644
--- a/dev-java/hamcrest-library/metadata.xml
+++ b/dev-java/hamcrest-library/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">hamcrest/</remote-id>
+ <remote-id type="github">hamcrest/JavaHamcrest</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/hamcrest/Manifest b/dev-java/hamcrest/Manifest
new file mode 100644
index 000000000000..db8fb161eae4
--- /dev/null
+++ b/dev-java/hamcrest/Manifest
@@ -0,0 +1 @@
+DIST hamcrest-2.2.tar.gz 603615 BLAKE2B b367fcb13be3314655e29e9196f3ae202200335801ea5bd8f97b5cd845bf7ecb39c4910b10e49938a373aa7897b62bc0935780490386bde1993add5b943b1eaf SHA512 8120e4f4ad83ff41b8b8ede1fe0817eb8fce6f13072e932aff7fc8c9f64689698753ae47b9f024922d5ab0a5bf7bb88b9e1998064d69a58b8c418ab89200e66a
diff --git a/dev-java/hamcrest/files/hamcrest-2.2-java-11.patch b/dev-java/hamcrest/files/hamcrest-2.2-java-11.patch
new file mode 100644
index 000000000000..83d8ddea9108
--- /dev/null
+++ b/dev-java/hamcrest/files/hamcrest-2.2-java-11.patch
@@ -0,0 +1,127 @@
+diff --git a/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java b/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java
+index fc968e0..3bbc36e 100644
+--- a/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java
++++ b/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java
+@@ -67,7 +67,7 @@ public class ArrayMatching {
+ */
+ @SafeVarargs
+ public static <E> Matcher<E[]> arrayContainingInAnyOrder(Matcher<? super E>... itemMatchers) {
+- return arrayContainingInAnyOrder(asList(itemMatchers));
++ return arrayContainingInAnyOrder((List<Matcher<? super E>>) asList(itemMatchers));
+ }
+
+ /**
+diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
+index 7e72a62..35ff806 100644
+--- a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java
+@@ -59,7 +59,7 @@ public class IsArrayContainingInAnyOrder<E> extends TypeSafeMatcher<E[]> {
+ * a list of matchers, each of which must be satisfied by an entry in an examined array
+ */
+ public static <E> Matcher<E[]> arrayContainingInAnyOrder(Matcher<? super E>... itemMatchers) {
+- return arrayContainingInAnyOrder(Arrays.asList(itemMatchers));
++ return arrayContainingInAnyOrder((List<Matcher<? super E>>) Arrays.asList(itemMatchers));
+ }
+
+ /**
+diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
+index c046914..312543f 100644
+--- a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java
+@@ -73,7 +73,7 @@ public class IsArrayContainingInOrder<E> extends TypeSafeMatcher<E[]> {
+ * the matchers that must be satisfied by the items in the examined array
+ */
+ public static <E> Matcher<E[]> arrayContaining(Matcher<? super E>... itemMatchers) {
+- return arrayContaining(asList(itemMatchers));
++ return arrayContaining((List<Matcher<? super E>>) asList(itemMatchers));
+ }
+
+ /**
+diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
+index d6a9a33..6b4e39e 100644
+--- a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java
+@@ -98,7 +98,7 @@ public class IsIterableContainingInAnyOrder<T> extends TypeSafeDiagnosingMatcher
+ */
+ @SafeVarargs
+ public static <T> Matcher<Iterable<? extends T>> containsInAnyOrder(Matcher<? super T>... itemMatchers) {
+- return containsInAnyOrder(Arrays.asList(itemMatchers));
++ return containsInAnyOrder((List<Matcher<? super T>>) Arrays.asList(itemMatchers));
+ }
+
+ /**
+diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java
+index 0657768..383c552 100644
+--- a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java
++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java
+@@ -99,7 +99,7 @@ public class IsIterableContainingInRelativeOrder<E> extends TypeSafeDiagnosingMa
+ */
+ @SafeVarargs
+ public static <E> Matcher<Iterable<? extends E>> containsInRelativeOrder(Matcher<? super E>... itemMatchers) {
+- return containsInRelativeOrder(asList(itemMatchers));
++ return containsInRelativeOrder((List<Matcher<? super E>>) asList(itemMatchers));
+ }
+
+ /**
+diff --git a/hamcrest/src/main/java/org/hamcrest/core/AllOf.java b/hamcrest/src/main/java/org/hamcrest/core/AllOf.java
+index b8c3faa..e7e2550 100644
+--- a/hamcrest/src/main/java/org/hamcrest/core/AllOf.java
++++ b/hamcrest/src/main/java/org/hamcrest/core/AllOf.java
+@@ -4,6 +4,7 @@ import org.hamcrest.Description;
+ import org.hamcrest.DiagnosingMatcher;
+ import org.hamcrest.Matcher;
+
++import java.util.List;
+ import java.util.Arrays;
+
+ /**
+@@ -56,6 +57,6 @@ public class AllOf<T> extends DiagnosingMatcher<T> {
+ */
+ @SafeVarargs
+ public static <T> Matcher<T> allOf(Matcher<? super T>... matchers) {
+- return allOf(Arrays.asList(matchers));
++ return allOf((List<Matcher<? super T>>) Arrays.asList(matchers));
+ }
+ }
+diff --git a/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java b/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java
+index 7a22c22..ba52275 100644
+--- a/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java
++++ b/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java
+@@ -3,6 +3,7 @@ package org.hamcrest.core;
+ import org.hamcrest.Description;
+ import org.hamcrest.Matcher;
+
++import java.util.List;
+ import java.util.Arrays;
+
+ /**
+@@ -46,6 +47,6 @@ public class AnyOf<T> extends ShortcutCombination<T> {
+ */
+ @SafeVarargs
+ public static <T> AnyOf<T> anyOf(Matcher<? super T>... matchers) {
+- return anyOf(Arrays.asList(matchers));
++ return anyOf((List<Matcher<? super T>>) Arrays.asList(matchers));
+ }
+ }
+diff --git a/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java b/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java
+index e37efce..3ca6f96 100644
+--- a/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java
++++ b/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java
+@@ -57,7 +57,7 @@ public class CombinableMatcher<T> extends TypeSafeDiagnosingMatcher<T> {
+ this.first = matcher;
+ }
+ public CombinableMatcher<X> and(Matcher<? super X> other) {
+- return new CombinableMatcher<>(first).and(other);
++ return new CombinableMatcher<X>(first).and(other);
+ }
+ }
+
+@@ -76,7 +76,7 @@ public class CombinableMatcher<T> extends TypeSafeDiagnosingMatcher<T> {
+ this.first = matcher;
+ }
+ public CombinableMatcher<X> or(Matcher<? super X> other) {
+- return new CombinableMatcher<>(first).or(other);
++ return new CombinableMatcher<X>(first).or(other);
+ }
+ }
+ }
diff --git a/dev-java/hamcrest/hamcrest-2.2-r1.ebuild b/dev-java/hamcrest/hamcrest-2.2-r1.ebuild
new file mode 100644
index 000000000000..401f297eddd3
--- /dev/null
+++ b/dev-java/hamcrest/hamcrest-2.2-r1.ebuild
@@ -0,0 +1,41 @@
+# 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.hamcrest:hamcrest:2.2"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core API and libraries of hamcrest matcher framework."
+HOMEPAGE="https://hamcrest.org/JavaHamcrest/"
+SRC_URI="https://github.com/${PN}/JavaHamcrest/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/JavaHamcrest-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+PATCHES=( "${FILESDIR}"/hamcrest-2.2-java-11.patch )
+
+DOCS=( {CHANGES,README}.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.hamcrest"
+JAVA_SRC_DIR="hamcrest/src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="hamcrest/src/test/java"
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/hamcrest/metadata.xml b/dev-java/hamcrest/metadata.xml
new file mode 100644
index 000000000000..27becd4fbc1d
--- /dev/null
+++ b/dev-java/hamcrest/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">hamcrest/JavaHamcrest</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/hashcash/Manifest b/dev-java/hashcash/Manifest
new file mode 100644
index 000000000000..073e15819b7f
--- /dev/null
+++ b/dev-java/hashcash/Manifest
@@ -0,0 +1 @@
+DIST HashCash.java 16678 BLAKE2B 1909addd4b698243a0008712a146aea28205af5ce35049836ff67fc6026235416f0092f9f702a75ade65a9d8c491a4afe136c995bee913cba28d93beabce2f34 SHA512 a3cc8535cb99f100139b5cae7bb3668cda726f60eea8de83b5e272982dacc4783f65fd462b388029e21ebf9d9a157c9b06784fb90f921955d4022b1f341eb103
diff --git a/dev-java/hashcash/hashcash-1.1.ebuild b/dev-java/hashcash/hashcash-1.1.ebuild
new file mode 100644
index 000000000000..5c93c554d7e5
--- /dev/null
+++ b/dev-java/hashcash/hashcash-1.1.ebuild
@@ -0,0 +1,23 @@
+# 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
+
+DESCRIPTION="Generation and parsing of Hashcash"
+HOMEPAGE="https://www.nettgryppa.com/code"
+SRC_URI="https://www.nettgryppa.com/code/HashCash.java"
+
+LICENSE="GregoryRubin"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+src_unpack() {
+ cp "${DISTDIR}/${A}" "${S}" || die 'copy source file'
+}
diff --git a/dev-java/hashcash/metadata.xml b/dev-java/hashcash/metadata.xml
new file mode 100644
index 000000000000..2578eaba4e38
--- /dev/null
+++ b/dev-java/hashcash/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+</pkgmetadata>
diff --git a/dev-java/hawtjni-runtime/Manifest b/dev-java/hawtjni-runtime/Manifest
index fb7445899281..1697e9eae264 100644
--- a/dev-java/hawtjni-runtime/Manifest
+++ b/dev-java/hawtjni-runtime/Manifest
@@ -1 +1 @@
-DIST hawtjni-project-1.15.tar.gz 1606236 BLAKE2B 52357dbefde43ec82cf218ada90642d118ebaa6a6be173cc1f4f48377fda95b902f0a90dfb60822c02c144b9bf13d0800c94d67cc2f9c76e607bbbb80a80898e SHA512 1a93658bf8621c770cf97b546c6a5c0cf1821b06cb16dbc872ad0c830c599d3947ffe56b4cca16217a510d4e929ebcfc5eabdf4ad4364f5225b53d22c7d48abb
+DIST hawtjni-project-1.18.tar.gz 1615093 BLAKE2B a195bcfb7c213ec4451605f62a1ab3546b7fa160a03d8c6c1a77a58e103481a196845d924d9f1a08cc2a17dfd71f9428f69a64983df00333cc00435c7dde2e5d SHA512 beeacd92c9b4fef413cb2d339041042ffd79fe7cb62c4fa3bcc8c2d758402183a5806ebd0ee91754f9f0025f4115022c71705e8f6330f2fa8b8cead774a30bf0
diff --git a/dev-java/hawtjni-runtime/hawtjni-runtime-1.15-r1.ebuild b/dev-java/hawtjni-runtime/hawtjni-runtime-1.15-r1.ebuild
deleted file mode 100644
index 86fc84ec3978..000000000000
--- a/dev-java/hawtjni-runtime/hawtjni-runtime-1.15-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 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_P="hawtjni-project-${PV}"
-
-DESCRIPTION="A JNI code generator based on the generator used by the Eclipse SWT project"
-HOMEPAGE="https://github.com/fusesource/hawtjni"
-SRC_URI="https://github.com/fusesource/hawtjni/archive/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/hawtjni-${MY_P}/${PN}/src"
-JAVA_SRC_DIR="main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc ../../{changelog,notice,readme}.md
-}
diff --git a/dev-java/hawtjni-runtime/hawtjni-runtime-1.18.ebuild b/dev-java/hawtjni-runtime/hawtjni-runtime-1.18.ebuild
new file mode 100644
index 000000000000..06b8d00654ba
--- /dev/null
+++ b/dev-java/hawtjni-runtime/hawtjni-runtime-1.18.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID=""
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A JNI code generator based on the generator used by the Eclipse SWT project"
+HOMEPAGE="https://github.com/fusesource/hawtjni"
+SRC_URI="https://github.com/fusesource/hawtjni/archive/hawtjni-project-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {changelog,notice,readme}.md )
+
+S="${WORKDIR}/hawtjni-hawtjni-project-${PV}"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.fusesource.hawtjni.runtime"
+JAVA_SRC_DIR="${PN}/src/main/java"
diff --git a/dev-java/hawtjni-runtime/metadata.xml b/dev-java/hawtjni-runtime/metadata.xml
index 0f5b3e3ef21e..c91c4162a431 100644
--- a/dev-java/hawtjni-runtime/metadata.xml
+++ b/dev-java/hawtjni-runtime/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/headius-options/Manifest b/dev-java/headius-options/Manifest
deleted file mode 100644
index 4455aa82745c..000000000000
--- a/dev-java/headius-options/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST headius-options-1.1.tar.gz 6590 BLAKE2B 71635dcbd6ee10987ab590edf2918d906b1171a148e7fa60d5be0901b20ecedab7fadf8f3d9e15d7fb61e955b698577501e3383a032c717d01c44942d54fedab SHA512 561be8ecf02e132436a94bf60595d66839c8e86f49c6a121f8714403fea6d22369f46dbfb15b7834a8430ac6aeaddf4e6aca5b0998c51e3b7ad71c60ac6c1bf4
diff --git a/dev-java/headius-options/files/headius-options-1.1-build.xml b/dev-java/headius-options/files/headius-options-1.1-build.xml
deleted file mode 100644
index 2b3e6f661127..000000000000
--- a/dev-java/headius-options/files/headius-options-1.1-build.xml
+++ /dev/null
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/3/14 9:10 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="options-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="options-1.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.11"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/junit/junit/4.11/junit-4.11.jar"
- dest="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.11/junit-4.11.jar"
- dest="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- dest="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- dest="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/headius-options/headius-options-1.1.ebuild b/dev-java/headius-options/headius-options-1.1.ebuild
deleted file mode 100644
index 92fbf3253933..000000000000
--- a/dev-java/headius-options/headius-options-1.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A small library for managing sets of JVM properties"
-HOMEPAGE="https://github.com/headius/options"
-SRC_URI="https://github.com/headius/options/archive/options-${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-
-S="${WORKDIR}/options-options-${PV}"
-
-RDEPEND=">=virtual/jre-1.7"
-DEPEND=">=virtual/jdk-1.7
- test? (
- dev-java/ant-junit:0
- >=dev-java/junit-4.8:4
- )"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_TEST_GENTOO_CLASSPATH="ant-junit junit-4"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/options-${PV}.jar
-
- dodoc README.md
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/com
-}
diff --git a/dev-java/headius-options/metadata.xml b/dev-java/headius-options/metadata.xml
deleted file mode 100644
index c44a38d0cd53..000000000000
--- a/dev-java/headius-options/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">headius/options</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/hessian/Manifest b/dev-java/hessian/Manifest
deleted file mode 100644
index a057c31bcfe9..000000000000
--- a/dev-java/hessian/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hessian-4.0.37-src.jar 388678 BLAKE2B 6cfc347b09dbaf780ad44dde3c951e2e678624944c4c28bf50ae56786c4c99c7821562db391c2735649c1d215635a70cc0a5bec3ef76570b0c9f4ee9958a7518 SHA512 9d03293b596d7e352591a61ad9d464b29502ba6f2f2f9b275b80bfc609aa882a3b7304cdca99ea70c0b011da8acd51ec62e9480e2854a34c7691976e83074aaa
diff --git a/dev-java/hessian/hessian-4.0.37.ebuild b/dev-java/hessian/hessian-4.0.37.ebuild
deleted file mode 100644
index 9b56e9f6f31f..000000000000
--- a/dev-java/hessian/hessian-4.0.37.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Binary web service protocol"
-HOMEPAGE="http://hessian.caucho.com/"
-SRC_URI="http://hessian.caucho.com/download/${P}-src.jar"
-
-LICENSE="Apache-1.1"
-SLOT="4.0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="doc source"
-
-CDEPEND="java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="com"
-JAVA_GENTOO_CLASSPATH="servlet-api-3.0"
diff --git a/dev-java/hessian/metadata.xml b/dev-java/hessian/metadata.xml
deleted file mode 100644
index b78c29f337fa..000000000000
--- a/dev-java/hessian/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-<longdescription>
-The Hessian binary web service protocol makes web services usable without
-requiring a large framework, and without learning yet another alphabet soup
-of protocols. Because it is a binary protocol, it is well-suited to sending
-binary data without any need to extend the protocol with attachments.
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/hoteqn/Manifest b/dev-java/hoteqn/Manifest
deleted file mode 100644
index b29f6be09f72..000000000000
--- a/dev-java/hoteqn/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hoteqn-4.0.0.tar.bz2 98714 BLAKE2B 7b9f7c606475331b1ad1e27ac829bddb15ef2b9bc7bb8b7fa51d7138824914794cf49d8cbba0b5e3529ad44d2244c01cfb2833e636021776e246a9eeeeeef69d SHA512 a0277340bec5ca0c5535d79e091218b88eb7d3c809859fc234de59b65d3b8b6c00fac667e00f3a2f6d0b3613f8a079bdfe7ea7e40a1bf484797a09a59de0323d
diff --git a/dev-java/hoteqn/hoteqn-4.0.0-r1.ebuild b/dev-java/hoteqn/hoteqn-4.0.0-r1.ebuild
deleted file mode 100644
index cd3573ce4932..000000000000
--- a/dev-java/hoteqn/hoteqn-4.0.0-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java applet to view and display LaTeX mathematical equations"
-HOMEPAGE="http://www.atp.ruhr-uni-bochum.de/VCLab/software/HotEqn/HotEqn.html"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-LICENSE="GPL-3"
-SLOT=0
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_ENCODING="ISO-8859-1"
-
-S="${WORKDIR}/${P}"
-
-java_prepare() {
- rm -v mHotEqn.java || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" classes/ -name "*.gif"
-}
diff --git a/dev-java/hoteqn/metadata.xml b/dev-java/hoteqn/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/hoteqn/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/htmlcleaner/Manifest b/dev-java/htmlcleaner/Manifest
index 0e099073eb9c..e19159c540f6 100644
--- a/dev-java/htmlcleaner/Manifest
+++ b/dev-java/htmlcleaner/Manifest
@@ -1 +1 @@
-DIST htmlcleaner-2.24-src.zip 413806 BLAKE2B 26ac6d150607c3ee00a8afcf58fed313ac570178f84c52a0fe43b0d324e3b32bb60f63db9ae5f171e7a6a7517799c633f85abfeb64e3f7421d655842bb5a5610 SHA512 beb16e383b6d43d0dfd4697b919a30c1a74eea824976521475c458bdda6c5f0eb22f299eddae033cb190a2af4fafde7e7f2c8ab1378bd82f15842a3ca8ebaaff
+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.24.ebuild b/dev-java/htmlcleaner/htmlcleaner-2.24.ebuild
deleted file mode 100644
index 72bceb361e04..000000000000
--- a/dev-java/htmlcleaner/htmlcleaner-2.24.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2021 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
-
-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/htmlcleaner/files/${P}-src.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/jdom:2"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- dev-java/ant-core:0
- test? ( dev-java/junit:4 )
- >=virtual/jdk-1.8:*"
-
-BDEPEND="
- app-arch/unzip"
-
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="jdom-2"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-tests.patch"
-)
-
-src_prepare() {
- default
- # Don't require default.xml to be in the current directory.
- sed -i "s:\"default\.xml\":\"${JAVA_PKG_SHAREPATH}/default.xml\":g" \
- src/main/java/org/htmlcleaner/ConfigFileTagProvider.java || die
-}
-
-src_configure() {
- JAVA_GENTOO_CLASSPATH_EXTRA=$(java-pkg_getjars --build-only ant-core)
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_register-ant-task
- java-pkg_dolauncher ${PN} --main org.${PN}.CommandLine
-
- insinto "${JAVA_PKG_SHAREPATH}"
- newins example.xml default.xml
-}
-
-src_test() {
- local DIR="src/test/java"
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
-
- local TESTS=$(find "${DIR}" -name "*Test.java" ! -name "Abstract*")
- TESTS="${TESTS//src\/test\/java\/}"
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" -d "${DIR}" $(find "${DIR}" -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/htmlcleaner/htmlcleaner-2.29-r1.ebuild b/dev-java/htmlcleaner/htmlcleaner-2.29-r1.ebuild
new file mode 100644
index 000000000000..c1e1a9887879
--- /dev/null
+++ b/dev-java/htmlcleaner/htmlcleaner-2.29-r1.ebuild
@@ -0,0 +1,40 @@
+# 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="net.sourceforge.htmlcleaner:htmlcleaner:2.29"
+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="https://htmlcleaner.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/project/htmlcleaner/htmlcleaner/htmlcleaner%20v${PV}/htmlcleaner-src-${PV}.zip"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+BDEPEND="app-arch/unzip"
+CP_DEPEND="dev-java/jdom:2"
+DEPEND="${CP_DEPEND}
+ dev-java/ant:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:4 )"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_MAIN_CLASS="org.htmlcleaner.CommandLine"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+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/metadata.xml b/dev-java/htmlcleaner/metadata.xml
index 96bf83b724f5..23f7494d28bb 100644
--- a/dev-java/htmlcleaner/metadata.xml
+++ b/dev-java/htmlcleaner/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/htmlparser-org/Manifest b/dev-java/htmlparser-org/Manifest
deleted file mode 100644
index 852c388ed6a4..000000000000
--- a/dev-java/htmlparser-org/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST htmlparser1_6_20060610.zip 4346070 BLAKE2B ee24476513969d88a8baa73fbff4a6c5459dc645cf333e78971707d92ccfa0c71c1aa326b9be10160e38a3aa80eba5a64052bb16f9ae13c37a865c725cb5dc5a SHA512 f23d08d9330dc45133a227b8e1a80a515d01298027ccb0ca0863d1b4fab829f52950e3a3ccad057718fd57b05f8c0176786583af8625c70a38a940d3e878cd5f
diff --git a/dev-java/htmlparser-org/htmlparser-org-1.6.ebuild b/dev-java/htmlparser-org/htmlparser-org-1.6.ebuild
deleted file mode 100644
index b4c682b1f8c3..000000000000
--- a/dev-java/htmlparser-org/htmlparser-org-1.6.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN=${PN/-org/}
-MY_PV=$(replace_all_version_separators _)
-SRC_VER="20060610"
-
-DESCRIPTION="Java library used to parse HTML (from htmlparser.org)"
-HOMEPAGE="http://htmlparser.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${MY_PN}/${MY_PN}${MY_PV}_${SRC_VER}.zip"
-
-LICENSE="CPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-S="${WORKDIR}/${MY_PN}${MY_PV}"
-
-DEPEND="app-arch/unzip
- >=virtual/jdk-1.6
- test? ( dev-java/junit:0 )"
-RDEPEND=">=virtual/jre-1.6"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- unzip src.zip || die
- rm build.xml lib/* || die
- mkdir -p src-test/org/htmlparser/tests || die
- mv src/org/htmlparser/tests/* src-test/org/htmlparser/tests || die
-}
-
-src_test() {
- mkdir target/tests || die
- testcp="$(java-pkg_getjars junit):target/tests:${PN}.jar:${JAVA_HOME}/lib/tools.jar"
- ejavac -cp "${testcp}" -d target/tests $(find src-test/ -name "*.java")
- tests=$(find target/tests -name "*Test.class" \
- | sed -e 's/target\/tests\///g' -e "s/\.class//" -e "s/\//./g" \
- | grep -vP '\$');
- ejunit -cp "${testcp}" ${tests}
-}
diff --git a/dev-java/htmlparser-org/metadata.xml b/dev-java/htmlparser-org/metadata.xml
deleted file mode 100644
index 629c69b054c5..000000000000
--- a/dev-java/htmlparser-org/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">htmlparser</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/htmlparser/Manifest b/dev-java/htmlparser/Manifest
deleted file mode 100644
index 6e3ced335ade..000000000000
--- a/dev-java/htmlparser/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST htmlparser-1.4.zip 1425388 BLAKE2B 6987240e5207276935f6c3dbe5dc6e69df683448d9587397913a75c2814efa88afb3cb890a40ac404fefb2be07dc5a0787710438b8d70486486e99f2eabd9cc1 SHA512 eb0587c808b287bbb18acbba11e8efe5bd0dededd96f6bf34ef59b92144227cf8368bf76474a2c1d87a5d6b635a63057faa9d18e2a1a2d7dfeacbfaa64e57700
diff --git a/dev-java/htmlparser/files/build.xml b/dev-java/htmlparser/files/build.xml
deleted file mode 100644
index ad0d4b0c1d09..000000000000
--- a/dev-java/htmlparser/files/build.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0"?>
-<project name="htmlparser" default="jar">
- <path id="build.classpath">
- <fileset dir="lib/">
- <include name="*.jar"/>
- </fileset>
- </path>
- <target name="compile">
- <mkdir dir="build"/>
- <javac srcdir="src" destdir="build" classpathref="build.classpath"/>
- </target>
- <target name="jar" depends="compile">
- <jar destfile="htmlparser.jar" basedir="build"/>
- </target>
- <target name="javadoc" depends="compile">
- <mkdir dir="docs"/>
- <javadoc sourcepath="src" destdir="docs" classpathref="build.classpath"/>
- </target>
-</project>
diff --git a/dev-java/htmlparser/htmlparser-1.4-r1.ebuild b/dev-java/htmlparser/htmlparser-1.4-r1.ebuild
deleted file mode 100644
index 5696277b333d..000000000000
--- a/dev-java/htmlparser/htmlparser-1.4-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Implementation of the HTML5 parsing algorithm in Java"
-HOMEPAGE="https://about.validator.nu/htmlparser/"
-SRC_URI="https://about.validator.nu/${PN}/${P}.zip"
-
-LICENSE="W3C"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="
- dev-java/icu4j:52
- dev-java/jchardet:0
- dev-java/xom:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-java_prepare() {
- java-pkg_clean
- mkdir -p build lib || die
- cp "${FILESDIR}/build.xml" build.xml || die "cp failed"
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="icu4j-52,xom,jchardet"
-
-src_install() {
- java-pkg_dojar "${PN}.jar"
- use source && java-pkg_dosrc src/*
- use doc && java-pkg_dojavadoc docs
-}
diff --git a/dev-java/htmlparser/metadata.xml b/dev-java/htmlparser/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/htmlparser/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/httpcomponents-client/Manifest b/dev-java/httpcomponents-client/Manifest
new file mode 100644
index 000000000000..9706b591e796
--- /dev/null
+++ b/dev-java/httpcomponents-client/Manifest
@@ -0,0 +1 @@
+DIST httpcomponents-client-4.5.13-src.tar.gz 824131 BLAKE2B 1507c81749a92afcf8b170b606761236d71b02d8b8b257d753a0f09abbdc297057df39661e827dee52804a2138de7d201b2a837418cbec21085fd3ffd558b51c SHA512 421e413fb2206fa95b6428ff067cdf2b440d2d3d4503cc3ca9bcf70ccd8ed1b8273ec4fe0703e6a8cd7612940b7ed966d9f163dbfeb8bf699ae2a8b2e0866d05
diff --git a/dev-java/httpcomponents-client/httpcomponents-client-4.5.13-r1.ebuild b/dev-java/httpcomponents-client/httpcomponents-client-4.5.13-r1.ebuild
new file mode 100644
index 000000000000..5c35d1fb5ad7
--- /dev/null
+++ b/dev-java/httpcomponents-client/httpcomponents-client-4.5.13-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom httpcomponents-client-4.5.13/httpclient/pom.xml --download-uri https://github.com/apache/httpcomponents-client/archive/refs/tags/rel/v4.5.13.tar.gz --slot 4 --keywords "~amd64 ~ppc64 ~x86" --ebuild commons-httpclient-4.5.13.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.httpcomponents:httpclient:4.5.13"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Apache HttpComponents Client"
+HOMEPAGE="https://hc.apache.org/httpcomponents-client"
+SRC_URI="mirror://apache/httpcomponents/httpclient/source/httpcomponents-client-${PV}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: httpcomponents-client-${PV}/httpclient/pom.xml
+# commons-codec:commons-codec:1.11 -> >=dev-java/commons-codec-1.15:0
+# commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
+# org.apache.httpcomponents:httpcore:4.4.13 -> >=dev-java/httpcore-4.4.14:0
+
+CDEPEND="
+ dev-java/commons-codec:0
+ dev-java/commons-logging:0
+ dev-java/httpcore:0
+"
+
+# Compile dependencies
+# POM: httpcomponents-client-${PV}/httpclient/pom.xml
+# test? junit:junit:4.11 -> >=dev-java/junit-4.13.2:4
+# test? org.mockito:mockito-core:1.10.19 -> >=dev-java/mockito-1.9.5:0
+
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/hamcrest-core:1.3
+ dev-java/mockito:0
+ )"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{LICENSE,NOTICE,README,RELEASE_NOTES}.txt )
+
+S="${WORKDIR}/httpcomponents-client-${PV}/httpclient"
+
+JAVA_GENTOO_CLASSPATH="commons-codec,commons-logging,httpcore"
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/java-deprecated"
+)
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito,hamcrest-core-1.3"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+JAVA_TEST_EXCLUDES=(
+ # Tests run: 929, Failures: 1
+ # javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake
+ "org.apache.http.conn.ssl.TestSSLSocketFactory"
+)
+
+src_install() {
+ default
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/httpcomponents-client/metadata.xml b/dev-java/httpcomponents-client/metadata.xml
new file mode 100644
index 000000000000..6e6add67bb12
--- /dev/null
+++ b/dev-java/httpcomponents-client/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/httpcomponents-client</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/httpcore/Manifest b/dev-java/httpcore/Manifest
new file mode 100644
index 000000000000..58259b00cd12
--- /dev/null
+++ b/dev-java/httpcore/Manifest
@@ -0,0 +1 @@
+DIST httpcomponents-core-4.4.14-src.tar.gz 591869 BLAKE2B d6f4900d8781cf7189edb2dfa9c1157b02584e8c66cde02dc261b0e29cdfb971e0323ce4478966b8e125df475ab1014fbee5b4bdf411eb118647f47f95c8f1a7 SHA512 9c713c7ea4e966a35ed391bc2a3aa10a0963cd21978c028dbd0790c9c2a6592385c7b2f135ea2836e6c495d9faea1bdcc65aa994bd5548bc2d84db38d5dbb713
diff --git a/dev-java/httpcore/httpcore-4.4.14.ebuild b/dev-java/httpcore/httpcore-4.4.14.ebuild
new file mode 100644
index 000000000000..ff51d1ba0fdb
--- /dev/null
+++ b/dev-java/httpcore/httpcore-4.4.14.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom httpcore/pom.xml --download-uri https://mirror.netcologne.de/apache.org//httpcomponents/httpcore/source/httpcomponents-core-4.4.14-src.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild httpcomponents-core-4.4.14.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.httpcomponents:httpcore:4.4.14"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Apache HttpComponents Core (blocking I/O)"
+HOMEPAGE="https://hc.apache.org/httpcomponents-core-ga"
+SRC_URI="mirror://apache/httpcomponents/httpcore/source/httpcomponents-core-${PV}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: httpcore/pom.xml
+# test? commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
+# test? junit:junit:4.12 -> >=dev-java/junit-4.13.2:4
+# test? org.mockito:mockito-core:1.10.19 -> >=dev-java/mockito-1.9.5:0
+
+DEPEND=">=virtual/jdk-1.8:*
+ test? (
+ dev-java/commons-logging:0
+ dev-java/mockito:0
+ )"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{LICENSE,NOTICE,README,RELEASE_NOTES}.txt )
+
+S="${WORKDIR}/httpcore"
+
+JAVA_SRC_DIR=(
+ "src/main/java"
+ "src/main/java-deprecated"
+)
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="commons-logging,junit-4,mockito"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+src_install() {
+ default
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/httpcore/metadata.xml b/dev-java/httpcore/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/httpcore/metadata.xml
@@ -0,0 +1,7 @@
+<?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/icedtea-bin/Manifest b/dev-java/icedtea-bin/Manifest
deleted file mode 100644
index 21af4ba8ba10..000000000000
--- a/dev-java/icedtea-bin/Manifest
+++ /dev/null
@@ -1,14 +0,0 @@
-DIST icedtea-bin-core-3.16.0-amd64.tar.xz 62350972 BLAKE2B 0980787ee1f619907e958fcbf6c75674115adc325abe4d428e46842eab9a26fc2666f3b0498e79de0451a63d01c83302501fc5f861c4ffc7f5914dd7adbb4cf8 SHA512 0f79408811fa5b3ab60e72b3fcb8510234a22d698c66f0d5a8f06b67bead0f4a215b771065d6d189fddd25f762b64732a28fd69ad402ef57aa5cedeca745552b
-DIST icedtea-bin-core-3.16.0-arm.tar.xz 58351704 BLAKE2B a1fbd5744d3155861e7de5a85a508f8199295568d92efd840a7fc81b9eaed755366fa3212d3039d87c77215168fc6ab9baaa5c92531fc11c1099e6ea486fce48 SHA512 84624b80bfb0035b714c38f92a9982c11bae3137fe70d030111c6b2c253472c0c857edfea1a16d646a5e9c4d3215fc66d7f9bf96e8184ae1b5c75a5c3c844549
-DIST icedtea-bin-core-3.16.0-arm64.tar.xz 61918380 BLAKE2B 8f6778bd63fe037f19115d094ae32294f84a57782b63f32997c80ff580a5a13ff3beec37bae809e45fa4dc174c10335c9040119207a9489b33df590f79398b1d SHA512 dc0bbcb15c897a8f3e83e56877c5a3b7f29740a122597fc26b7f6c43eeb07c32407db060954a262ab1db92cfa6cafc44c7fad131c53c4a811938da5e76c89fe2
-DIST icedtea-bin-core-3.16.0-ppc64.tar.xz 55356056 BLAKE2B 265635ef70f244696dc09baa6cfef628d794ff851edeebb2d4b531aff4a25dafb902c4f3cbe527540ba65d76da2f3d4234b14cca16d5439d2e92f551a5aaf478 SHA512 840b0faed3882324392ad1f7ce8123d9d2f53f33576bb5eec37357d2aab292c21d947867d8b20a34de6fc25c8e1d5dc5c7f541cebe5b008b79bc9daf9250910d
-DIST icedtea-bin-core-3.16.0-ppc64le.tar.xz 55356384 BLAKE2B ffa6c0e381b20a3a9d78a61519a0d47715dbd82f9472c5335fb9e2b4dff6948486cf85f6f4f416462158a3476b9a228fdb9c0725294a58bcdc91058d60811bd9 SHA512 d9902159044135e1ff5d3b200f5fe283249a2be1da6705b9fdc94eb88c2d199ed3a5c80e70ae89aa870a05110e649e93d4710605c85db15dca360bc66d2c60da
-DIST icedtea-bin-core-3.16.0-x86.tar.xz 61745436 BLAKE2B efb37cb8ac00c6fe2a45bed9b829fc5410062105b373ba77012ec2d8f8deff03dcb88288025dcc8a8300d28139068ef202d2c709fe5aad4b8ed2ab1edd54c412 SHA512 3df52ec949d8d5ba6cd046841160fab1637666e506f536664506c1de0e74f1b2620836706cca8e194ded575761299ecb3b3f83e295e6dfed8222de1949a73077
-DIST icedtea-bin-doc-3.16.0.tar.xz 11613128 BLAKE2B de8224c7e3a62178c6cc5a4c883c3c90a2712049f9e6687bf0a0d93a8dc9bd3abc562486c483c7b72bd17fa5c376495b0739babf10b1282acbd3e41beb3d1cd4 SHA512 dd3bb69de2d0f720f18700a97a549c21b67569d12a982d2fbe39eef8bf876e0f02af673e70d53ac59891377e4d48f3cc05f60d1b1dac0c7d9969a4a07e346fc6
-DIST icedtea-bin-examples-3.16.0-amd64.tar.xz 1855056 BLAKE2B 678e887ac613df96e7b255bdd6de4a9644f1b5940fbd036d88dfc1b74154d8e1e4032a380586965d727c5d9ebd2d1c4ba7d7d62a88d8994e5400eacc3f83d6dd SHA512 afea08925258e6e9d7bdabdf3078d6b580680fa43fb44589b6e0faa07ab78fea0d25e30bd22ae92317a77007ab0b30c9b3e16decf0e78bc1ff88ffa780b9d25b
-DIST icedtea-bin-examples-3.16.0-arm.tar.xz 1839892 BLAKE2B c5824fbf698f4861baa32f973f2040ae72f5a92f889309bb1aeed03c652114c89f38394559c2619c36dccc075205b91fbd6ae97d9de7554c9144fe059fc9a9db SHA512 6fb4ac90bac679cb2d1827ead49fcd1b2acac27aca3af77c7aa7c771317281d7ffe477f2c1365ee78a21ab9694c9beba38516f053ad954e78f6f5b8bfb991151
-DIST icedtea-bin-examples-3.16.0-arm64.tar.xz 1850400 BLAKE2B 577206b3b15f5eb7dfcbccbb02e209354f99e780c5989eba8f21fdca3630f7188c1b4a0c845a556ccd93916a7f6182ec9932983ee22fa37cfcb47b28fac62e41 SHA512 ff80389720947f781f48b8f39bd49a7b096eea03f48bc70d588bc326256676b568a743b70e5d13ccf161da81fd4fceef5e8a1913991a5805391de7e93e913662
-DIST icedtea-bin-examples-3.16.0-ppc64.tar.xz 1864968 BLAKE2B e806ccb1d430e42b1ae75954a8ab4dcb9d7f2e6a00b9cf0343716ef18943d66e46834859fb90c50d7553dcda3502f4f3b73c060e2cbfaec883aa98ef7c874807 SHA512 9bd762776178d117c20fabb90558f80d97d4392a4015a26729437e50f82e7bcd55a6c1e12df45726ae484d20df3bc4867e392242588062d926ae4d3b14b8b679
-DIST icedtea-bin-examples-3.16.0-ppc64le.tar.xz 1863432 BLAKE2B fa227b246e5ddb9197c065fa27092b9114ee5423e7d914ceb9dfd3491fb2ddb60707379fb50ece1e8d4834cfe24cc82cb37e341aafc338623c4720bb74f4c4af SHA512 8efa40365c0689e9fdb3d2c350d95a837706219442b46305e3314185afc9cf0dfab51854bddabdf0f6abc50ce9f45b4c3cac66d6d7a4fd472e58f0070507599e
-DIST icedtea-bin-examples-3.16.0-x86.tar.xz 1861512 BLAKE2B 3ee3bc1d9bde79aea9e765ad06e29b76617f00077d28ca08042ff23434edbdfa012033bfc5c2e4ca5bf1485b079ce412c399a9ed9ea5df137e627f1d74cadb30 SHA512 df247ee749d9fd41a3bde5c28a8894cff837ff0725c8d45b89134e294d1cba2493de9d7bbab15b6098c464ed11dc317892df87f10f14b507cc3f27e872c92637
-DIST icedtea-bin-src-3.16.0.tar.xz 45993284 BLAKE2B 748ce12cf4231af2410523b394f91afffbdb774a73a0754e6df5c124c9c9f8f8cffed82fa84ec5a9940de80127ca9018379f72085b3de1a2ced3146df27aa943 SHA512 546364dcf4a20d7aa6fc68c465f9c77c3a6c24b9b8889629152dc2424b3d9f818d56ea678ecbdcb58e499c1564f246a75d6b9ff00925d9ecc305dec94ba60548
diff --git a/dev-java/icedtea-bin/files/icedtea-bin.env.sh b/dev-java/icedtea-bin/files/icedtea-bin.env.sh
deleted file mode 100644
index 9734e8a604c0..000000000000
--- a/dev-java/icedtea-bin/files/icedtea-bin.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}$(multilib_is_native_abi || printf ' ('${ABI}')')"
-JAVA_HOME="${EPREFIX}/opt/icedtea-bin-${PV}$(multilib_is_native_abi || printf -- -${ABI})"
-JDK_HOME="${EPREFIX}/opt/icedtea-bin-${PV}$(multilib_is_native_abi || printf -- -${ABI})"
-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}/opt/icedtea-bin-${PV}/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-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
deleted file mode 100644
index c6a17fe82eb4..000000000000
--- a/dev-java/icedtea-bin/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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>
- </maintainer>
- <use>
- <flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-java/icedtea-sound/icedtea-sound-1.0.1-r1.ebuild b/dev-java/icedtea-sound/icedtea-sound-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..9990e63fba50
--- /dev/null
+++ b/dev-java/icedtea-sound/icedtea-sound-1.0.1-r1.ebuild
@@ -0,0 +1,42 @@
+# 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)
+
+EAPI=8
+
+inherit java-pkg-2
+
+DESCRIPTION="Plugins for javax.sound"
+HOMEPAGE="https://icedtea.classpath.org"
+SRC_URI="https://icedtea.classpath.org/download/source/${P}.tar.xz"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+IUSE="+doc"
+
+COMMON_DEP="
+ virtual/jdk:1.8
+ >=media-sound/pulseaudio-0.9.11"
+RDEPEND="${COMMON_DEP}"
+DEPEND="${COMMON_DEP}"
+BDEPEND="app-arch/zip"
+
+pkg_setup() {
+ JAVA_PKG_WANT_SOURCE="1.8"
+ JAVA_PKG_WANT_TARGET="1.8"
+
+ java-pkg-2_pkg_setup
+}
+
+src_configure() {
+ econf --with-jdk-home="${JAVA_HOME}" \
+ $(use_enable doc docs) \
+ --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+}
+
+src_compile() {
+ default
+}
diff --git a/dev-java/icedtea-sound/icedtea-sound-1.0.1.ebuild b/dev-java/icedtea-sound/icedtea-sound-1.0.1.ebuild
deleted file mode 100644
index c480a1189a79..000000000000
--- a/dev-java/icedtea-sound/icedtea-sound-1.0.1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
-
-EAPI="5"
-
-inherit java-pkg-2 prefix
-
-DESCRIPTION="Plugins for javax.sound"
-HOMEPAGE="http://icedtea.classpath.org"
-SRC_URI="http://icedtea.classpath.org/download/source/${P}.tar.xz"
-
-LICENSE="GPL-2-with-linking-exception"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-IUSE="+doc test"
-RESTRICT="!test? ( test )"
-
-COMMON_DEP="
- >=virtual/jdk-1.6.0
- >=media-sound/pulseaudio-0.9.11:="
-RDEPEND="${COMMON_DEP}"
-DEPEND="${COMMON_DEP}
- app-arch/zip"
-
-pkg_setup() {
- JAVA_PKG_WANT_SOURCE="1.6"
- JAVA_PKG_WANT_TARGET="1.6"
-
- java-pkg-2_pkg_setup
-}
-
-src_configure() {
- econf --with-jdk-home="${JAVA_HOME}" \
- $(use_enable doc docs) \
- --htmldir="${EPREFIX%/}/usr/share/doc/${PF}/html"
-}
-
-src_compile() {
- default
-}
diff --git a/dev-java/icedtea-sound/metadata.xml b/dev-java/icedtea-sound/metadata.xml
index 72ea7ca75a41..1f94c3e04324 100644
--- a/dev-java/icedtea-sound/metadata.xml
+++ b/dev-java/icedtea-sound/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>gnu_andrew@member.fsf.org</email>
diff --git a/dev-java/icedtea-web/Manifest b/dev-java/icedtea-web/Manifest
index 39b4559fecbb..54b18ca69bad 100644
--- a/dev-java/icedtea-web/Manifest
+++ b/dev-java/icedtea-web/Manifest
@@ -1,2 +1,2 @@
DIST dunce-0.1.1.crate 4311 BLAKE2B 07b775c2e79d6414af5854282fdfbba26ac4675207f840cf627a33c7bdbca163283466011c641d62646fa77f8623f1f7143b5e3d87c34e0b9840e4807eea2df8 SHA512 3fa16c1d6d78374e6360b9e2349516859b617ac5532ade34359d952002a1fb6d5e70f27ce2c9b3d6e230c753218fcf6e9b3973161bf1f8dd9c08152fbda2f5ad
-DIST icedtea-web-1.8.4.tar.gz 2358591 BLAKE2B a62a88cfce49f473a0ab768ca386c4733d69fd3b603b29a8d5e7478b33030e2d016a0577bfc0fa4657bb0b3f99a2524d1b46cad7a8e4f97c1404eff5ca218613 SHA512 d155ec6ed9a007b2c59fd09fed9f4005a79640016ae62287eab7076c05b5ddd56d07b0ff86babf732f1bb82653fc0f7cf434550eabdaac8d666e64feabe4f890
+DIST icedtea-web-1.8.8.tar.gz 2365638 BLAKE2B 39a19bd46a235d016f9192da7f15ffa17546dfbe8502df4991f6d45c6211723504c0d2dc0bc7aaa508e4b47295f244c65b6e7113666028824562b8d2b0ccf5b2 SHA512 99f246ce603e3edd4357a2c4d280f1ef92e1f760ca5d843eaccf7ca60950a47defec64eed87dac26c5c2e9776bed2f3e53f2c8793dabd47e1b5fc82823190dcc
diff --git a/dev-java/icedtea-web/files/README.gentoo-r3 b/dev-java/icedtea-web/files/README.gentoo-r3
new file mode 100644
index 000000000000..fc199f3c50f2
--- /dev/null
+++ b/dev-java/icedtea-web/files/README.gentoo-r3
@@ -0,0 +1,16 @@
+Browser plugin
+--------------
+
+The IcedTea browser plugin (NPPlugin) is no longer available,
+as modern browsers no longer support this plugin format.
+
+JVM selection
+-------------
+
+By default, Web Start uses the JVM
+selected via eselect environment variable.
+Note that this doesn't have to be an IcedTea. Openjdk will also work.
+Also note that the selected JVM must have been installed with the
+'headless-awt' USE flag *disabled*.
+The choice can be overridden using the itweb-settings program.
+Simply blank out the field to restore the default behaviour.
diff --git a/dev-java/icedtea-web/icedtea-web-1.8.4-r1.ebuild b/dev-java/icedtea-web/icedtea-web-1.8.4-r1.ebuild
deleted file mode 100644
index caabab18f661..000000000000
--- a/dev-java/icedtea-web/icedtea-web-1.8.4-r1.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-README_GENTOO_SUFFIX="-r2"
-CRATES="dunce-0.1.1"
-
-inherit autotools bash-completion-r1 cargo readme.gentoo-r1 xdg-utils
-
-DESCRIPTION="FOSS Java browser plugin and Web Start implementation"
-HOMEPAGE="https://github.com/AdoptOpenJDK/IcedTea-Web"
-SRC_URI="https://github.com/AdoptOpenJDK/${PN}/archive/${P}.tar.gz
- $(cargo_crate_uris ${CRATES})"
-LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="doc"
-
-# tests require ton of java deps we don't have packaged/working
-# but rust tests pass.
-RESTRICT="test"
-
-BDEPEND="
- app-arch/zip
- sys-devel/bc
- virtual/jdk:1.8
- virtual/pkgconfig
- virtual/rust
- doc? ( sys-devel/bc )
-"
-
-RDEPEND="
- >=app-eselect/eselect-java-0.2.0
- >=virtual/jre-1.8
-"
-
-S="${WORKDIR}/IcedTea-Web-${P}"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-src_prepare() {
- eapply_user
- sed -i 's/JAVADOC_OPTS=/\0-Xdoclint:none /g' Makefile.am || die
- eautoreconf
- cargo_gen_config
-}
-
-src_configure() {
- xdg_environment_reset
- # some functionality (tagsoup rhino) is disabled, because dev-java is
- # unmaintained and a lot of things simply does not build anymore.
- # native plugins also disabled, modern browsers no longer support it.
- local myconf=(
- --disable-native-plugin
- --program-transform-name='s/^javaws$/itweb-javaws/'
- --with-java="${EPREFIX}/usr/bin/java"
- --with-jdk-home="${EPREFIX}/etc/java-config-2/current-system-vm"
- --with-itw-libs=DISTRIBUTION
- --without-rhino
- --without-tagsoup
- $(use_enable doc docs)
- )
- unset _JAVA_OPTIONS
- export bashcompdir="$(get_bashcompdir)" # defaults to /etc if not found in pkg-config
- export CARGO_HOME="${ECARGO_HOME}"
- CONFIG_SHELL="${EPREFIX}/bin/bash" econf "${myconf[@]}"
-}
-
-src_compile() {
- # races in makefile
- emake -j1 #nowarn
-}
-
-src_install() {
- default
- rm -v "${ED}/usr/bin/itw-modularjdk.args" || die
- rename -v '.bash' '' "${ED}/usr/share/bash-completion/completions/"*.bash || die
- rename -v 'javaws' 'itweb-javaws' "${ED}/usr/share/man/man1/"javaws.1* || die
- mv -v "${ED}/usr/share/bash-completion/completions/"{javaws,itweb-javaws} || die
- sed -i 's/javaws/itweb-javaws/g' \
- "${ED}/usr/share/bash-completion/completions/itweb-javaws" || die
-
- readme.gentoo_create_doc
-}
-
-src_test() {
- # we want to override cargo.eclass' src_test
- :
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
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
new file mode 100644
index 000000000000..f36cb218a52d
--- /dev/null
+++ b/dev-java/icedtea-web/icedtea-web-1.8.8-r1.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+README_GENTOO_SUFFIX="-r3"
+CRATES="dunce-0.1.1"
+
+inherit autotools bash-completion-r1 cargo java-pkg-2 readme.gentoo-r1 xdg-utils
+
+DESCRIPTION="FOSS Java browser plugin and Web Start implementation"
+HOMEPAGE="https://github.com/AdoptOpenJDK/IcedTea-Web"
+SRC_URI="https://github.com/AdoptOpenJDK/${PN}/archive/${P}.tar.gz
+ $(cargo_crate_uris ${CRATES})"
+LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+IUSE="doc"
+
+# tests require ton of java deps we don't have packaged/working
+# but rust tests pass.
+RESTRICT="test"
+
+BDEPEND="
+ app-arch/zip
+ app-alternatives/bc
+ virtual/pkgconfig
+ virtual/rust
+ doc? ( app-alternatives/bc )
+"
+
+# Build within Portage using JDK 11+ (also presumably 9+) fails during
+# src_configure:
+# configure: error: sun.security.util.SecurityConstants not found.
+#
+# When upstream's build instructions are executed outside Portage using
+# JDK 11+, ./configure also fails, though a different error pops up:
+# configure: error: sun.applet.AppletImageRef not found.
+#
+# If even the upstream build instructions fail outside Portage with JDK 11+,
+# then it is very unlikely that the build issue within Portage is fixable.
+# The upstream has moved forward to development of 2.0.0 and 3.0.0 versions,
+# so they might no longer be interested in fixing the legacy 1.x versions.
+#
+# The 'sun.applet.AppletImageRef not found' issue has been reported to
+# FreeBSD <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=248197#c2>,
+# and some efforts there to fix the issue were unsuccessful. They seem
+# to have ended up with restricting Java version to 8
+# <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244976#c17>.
+#
+# Thus, the build VM version is restricted to 1.8 here.
+DEPEND="
+ virtual/jdk:1.8
+"
+
+RDEPEND="
+ >=app-eselect/eselect-java-0.2.0
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/IcedTea-Web-${P}"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+src_prepare() {
+ eapply_user
+ sed -i 's/JAVADOC_OPTS=/\0-Xdoclint:none /g' Makefile.am || die
+ eautoreconf
+ cargo_gen_config
+}
+
+src_configure() {
+ xdg_environment_reset
+ # some functionality (tagsoup rhino) is disabled, because dev-java is
+ # unmaintained and a lot of things simply does not build anymore.
+ # native plugins also disabled, modern browsers no longer support it.
+ # modularjdk-file and the 'itw-modularjdk.args' file controlled by it
+ # are required to run this package's programs using JRE 9+.
+ local myconf=(
+ --disable-native-plugin
+ --program-transform-name='s/^javaws$/itweb-javaws/'
+ --with-jdk-home="$(java-config -O)"
+ --with-modularjdk-file="${EPREFIX}/usr/share/${PN}/"
+ --with-itw-libs=DISTRIBUTION
+ --without-rhino
+ --without-tagsoup
+ $(use_enable doc docs)
+ )
+ unset _JAVA_OPTIONS
+ export bashcompdir="$(get_bashcompdir)" # defaults to /etc if not found in pkg-config
+ export CARGO_HOME="${ECARGO_HOME}"
+ CONFIG_SHELL="${EPREFIX}/bin/bash" econf "${myconf[@]}"
+}
+
+src_compile() {
+ # races in makefile
+ emake -j1 #nowarn
+}
+
+src_install() {
+ default
+ rename -v '.bash' '' "${ED}/usr/share/bash-completion/completions/"*.bash || die
+ rename -v 'javaws' 'itweb-javaws' "${ED}/usr/share/man/man1/"javaws.1* || die
+ mv -v "${ED}/usr/share/bash-completion/completions/"{javaws,itweb-javaws} || die
+ sed -i 's/javaws/itweb-javaws/g' \
+ "${ED}/usr/share/bash-completion/completions/itweb-javaws" || die
+
+ readme.gentoo_create_doc
+}
+
+src_test() {
+ # we want to override cargo.eclass' src_test
+ :
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/dev-java/icedtea-web/metadata.xml b/dev-java/icedtea-web/metadata.xml
index 9f30040ec416..491b75d80b4c 100644
--- a/dev-java/icedtea-web/metadata.xml
+++ b/dev-java/icedtea-web/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest
deleted file mode 100644
index 9eb68a620ef9..000000000000
--- a/dev-java/icedtea/Manifest
+++ /dev/null
@@ -1,24 +0,0 @@
-DIST icedtea-3.18-aarch32-3.18.0.tar.xz 7057736 BLAKE2B bd681871da038ee1eaabe5c38e830a9d80fff30f8793b81afb69803107d0ee2ae8f3dad3985ec05c86120f1e3c86101984397476a76bce30a7b1852784175521 SHA512 3bc033bb4256d6a8ee8387998fbb4b1a14d2c6882337366085ca4648eb9b2a34176003e23e420703a075fb5322a1be3547d5ed82188d97e1f12429b4a8b3671d
-DIST icedtea-3.18-corba-3.18.0.tar.xz 948504 BLAKE2B 00deb77d5aebf19ad404bf44ac7367017f8aee6699e11b93d2cb44f7d23f17f13caba8aee9862b25e528bee3d8fbfa728260850d1aa2f66839b079b1111d3af4 SHA512 db71a9fd6288a8217a8338dda70a87eb4b97f1659c7e990eccd2774785bf1da9e35b71e231e108c610784922d1fa01cdaf115941189910ef9c68cf70746296ea
-DIST icedtea-3.18-hotspot-3.18.0.tar.xz 7110964 BLAKE2B ac45a7271f50a93b0ee27e6096820f3f93a02db42c6fde549515c3297590c94fff349a6cec5c9caf7bda31bbe36d6609097b4f73e99cdc1fe46bcfff0330a82e SHA512 abc46441c6ea7f652ee42376425e2fdd34a18de0803a13f38aa002a57a2835f8e2995f9a762fb53f114ad7b1030fc9ab82bd00839fccf57315018519df1c5c5f
-DIST icedtea-3.18-jaxp-3.18.0.tar.xz 2268136 BLAKE2B 6f398420e55684792020da116f8da25e1b4a59b2423d6b37ed55a567ba68aedca7a59c99ee0e3a87785a12910b518d07a9d0d248bb3ae151f81c7622ec904299 SHA512 fe8d25e38d05e0f65f91712ee7e4b6469605c9a6bd9b0cbdd29f483889b267483008fb913191ffa277047a66ad43eb397582935d984fad00e469b118532a1adf
-DIST icedtea-3.18-jaxws-3.18.0.tar.xz 2277356 BLAKE2B f0c3123722df57346461940f41e6b394a34c9e508ab3d2fa9f75581d4d626468394e2854129671e9bd68ecd217ed3aa0933cd14e2e74acd82d1cccd897e2b209 SHA512 b6879bdab06d1706945960b64f8dcff5ee8e81b95a733807768a0c2a5f329967e671d760a64239a42d6d5f9bf55b2904bf67082a4cd01ca5656bc323b041ff19
-DIST icedtea-3.18-jdk-3.18.0.tar.xz 40637140 BLAKE2B de565a2ba7cdb3732a551aa513cac3f52bf330590e011c6b05d47da1cee8389315ba3eb8112ce3c3d0510a049c49c147ea3a474eaadf70535fe30f63576fa293 SHA512 022115dbfc9ab7217a74b10e347a6a3a5eaa1112fef53cb37ff9dc003ec5bd3018b5b0bf675465d1c496e57b9b177102c6fef135acc881f3db49bea51c4f7375
-DIST icedtea-3.18-langtools-3.18.0.tar.xz 2080068 BLAKE2B e2781cc6728594a6c5e8dd213c810ae7fbed8d365da6db600e75b5786573b3d201cb0c3ed10221de1c139fe7ed55b59e57c47927272374e32ae94e586d6f0f9d SHA512 d96ded5041e488860baf1c17346e9342fb086e999fbf5d5a4dd5be97e0db17771f594c60f584d549d7ce1b4e1aa58b165a32f0633101bb70ea5c2d77758bb42b
-DIST icedtea-3.18-nashorn-3.18.0.tar.xz 2323912 BLAKE2B ab0c7dc3635a6eb7feb350d56c0fd5e03b36b60b107b26dbb04262291c4c0d57077bff5f7d949d95ec1de04210e06f40600d360600db09421f1dc0f801968817 SHA512 2bd488893ac33a16480cceb16fab62c11f8032e68d84818ad20aaa4c3928af6c77c60f8bd94878aa02b703e0302847272688d8641145972071c4e9a048cd5a13
-DIST icedtea-3.18-openjdk-3.18.0.tar.xz 364932 BLAKE2B 098ae1025f0457e14a4afc7b67ad6063f99be5fa486a2f6e187e490fe7b87efbf1cdc6fad2b33f7ae4f92817d5a0410254c723853a2519dacb5c21961c4d7558 SHA512 b4b40d19bb12ae85d68b110eb51051c089a9b7e857eceb10429b609a9f11671cbee34cfcef5c89ef23ad6aea80e4bcad1ed085fb310e09942816c5dccc8f171d
-DIST icedtea-3.18-shenandoah-3.18.0.tar.xz 7279864 BLAKE2B 1d8cfccda9cf24a5522862634d3699a7bd9cd445da7a08ab2061da45ddb885e023d56c096813710ef4f7ddb458300737bae21a56900bfb00e3ed5ac696af2059 SHA512 f8c5d4f108a3575f154a462e8cf907c14fbcdfc95708ebabbf530a79cc66979cc7e141cd239d6603e4a47d114130b07e6f32edb9145930e573a239fa0c91e75b
-DIST icedtea-3.18.0.tar.xz 1565468 BLAKE2B e6bffb9860ae8824a96e55970056025bc426453c26f91a7eb52f01f5ada7c0cb0bdcc4efa503186f514759f914d9053d08ba540bde7d15be81736037ce5d8db5 SHA512 e94c365513e5fa8a17d61fe7957db85018510567df9ba115c9bca98c658257ff1f4dff7967e88b73088630f07670beeaa8cbe49706d6bd02fb2804abad5d95b1
-DIST icedtea-3.19-aarch32-3.19.0.tar.xz 7199408 BLAKE2B c079eb55ca198f2d34b73e6ef80f1507e50e9ad2140d1af86c64da54e6b85d1345fed347d207205806a86728afde37ab3ae13830625da4d488d6db4bc841ff28 SHA512 9f364c0d51eb57168009ca08d74b598e553885d42f11df0fc1ac563e6a5234207a85fddf3fe315b3ac4cbdf8b50bcfdfd1bbb4fdea5e6f8b6988624cbe6c0b33
-DIST icedtea-3.19-corba-3.19.0.tar.xz 948912 BLAKE2B 888443236851c96934f9513ae28e1908cb49d4fc211426f78ddf9a31a9815c382d38a196ddc69c7e9573b840fc5533c95a55ded3a3bc3d6f55a8d25ac2587fea SHA512 9127268d519dd95fc5eeb6904b54dab3bb5472610e26c2b691a7306d25169dc82ce6de26ec3fe396a7f19726f73c5597fbf79d33027d905a3a1533316c4a3f1a
-DIST icedtea-3.19-hotspot-3.19.0.tar.xz 7113752 BLAKE2B 4a5603e64e4df6e7e0beebc762bc73868d736367540dac332196e736e1de371b63c9f3b7f1c167450536b6e195befee10136515027774fde789e90ade198020e SHA512 5995a905f9e886d9b2138f112ad9e03ce580f646f58601e354ebc5e0f2fc3f37b61847e64f258e9c31ab479e0e617604fb21d990c33b906d4cd1853fe9f1a0fa
-DIST icedtea-3.19-jaxp-3.19.0.tar.xz 2267888 BLAKE2B b64d615813e42e55eafda4374a8959b24b47614a158dc88d4ff188c09d6cc6f6d23ec6ae613ebdc52bd7fc02bcd8b96e517f163bf397b94eb36e68af9f7a7285 SHA512 78cfb56662e6b76632b746ff3b53496a7fa82daf2fe24d0988eda0552758f6c71d434ececd50fc7baf2e4e8a03b4febe8d489b2b6e1ac791c07170d72f7a881e
-DIST icedtea-3.19-jaxws-3.19.0.tar.xz 2277616 BLAKE2B 5fbca1daed96ef603e9605b9d2565c0a6be92771c862bda45c8cb532cd493d9f1e46f008a070ff6276ba68378427e5e82d0f5efd6a1098db7ff14a29a5854d1a SHA512 fca97468d4e73f7b5d345edf35422ea5a417cba2d1441656d2ab2ffdeb814a2641c2bc732b8e76a9a62566f95e1ef2a2d6281a3a6f8bffa900549f6ed6e86444
-DIST icedtea-3.19-jdk-3.19.0.tar.xz 40689020 BLAKE2B f85005bef6d2c22b57fffe5b403278dfd18b8a244da0b8e4f6d7ce574dd2d14da453d14ec02c131697b639f8155962755ef924690ae9fb5aa302ba84bf140a56 SHA512 aa8fdb3d2f43a54bc39f9f243392fcf161d3ad0f568681f0baccc8c99ab667d621b905fd4f32b0787107ab70f402978e0cf06b364a625c05a8358e86c0080a14
-DIST icedtea-3.19-langtools-3.19.0.tar.xz 2080888 BLAKE2B 06d9a2efb9bbad4e47b8f3f19d6b51eae5bc88b652175fe7a8fa98e72fc01a547c1db4efef7e0c2f9b8d0e27ba8f6f4b9ff6fe59197da39bdb8b77c60cec4057 SHA512 b96e24fe6e03e3522f3ccab956539fc518f9d4fd24d0c476c42c76fac1adee7cc367f9ca451f6dc97877f5bc28bc5d8810fedddf69548781c6429cae348ab736
-DIST icedtea-3.19-nashorn-3.19.0.tar.xz 2326776 BLAKE2B 5dfb09fffbec8f36eccaa81cea8e539004f523c35eef566330c9067f1136f54e4aa313bddc3093e3ec17a7d2d37298f92750286a6f601ce9bf4dbe6ed9f77ff5 SHA512 d831c844c5cf5fb778cf34f25dca855ba7c7dea9d72c6b59b402a7e19e3d3a2b7aa5b57d218f549aa82c1a1a733f450c3ed78820b2930e1c7d17eb08dd9dec7a
-DIST icedtea-3.19-openjdk-3.19.0.tar.xz 365128 BLAKE2B 8abc4d77d961810df0ac8a1c5fcc4eea0e0cc888b4471b987d708569116cba4871d37fdb9e7d115f5b2bb387e73e71593e04bad2d3ed2e33ab2938192251506a SHA512 90dea98d26279a5d0a5869a8d53234bc27a4fdcb0682ebc3baba1670ccca2035e41d24d0d67a7ee5d9304058516136c11177eb8190edb35f03ce8b8f63e56357
-DIST icedtea-3.19-shenandoah-3.19.0.tar.xz 7286788 BLAKE2B d1df26c9c25930a19ad1acad3c3a7b249456c1732981b5aa9f77f847c7e0c53010a7eea646ea0b63293985af238309c72320b0ac71678c0ca88c211d2adb601d SHA512 7db3b3f9c3e42fef50f1a84e9db1d1c2b5322f15ea26e7f0bcbbae8011365faf7f0ad4bf0bcf861c2d5eb1fe2845d57f9355b1b2e0203558f47a3564ae4709a0
-DIST icedtea-3.19.0.tar.xz 1568996 BLAKE2B 0ded447c674aa5dbfba690652de474b13f2107c221e0a7a9d98912ac374efbd44093c482abc5e4d4dcde0f9712020d8bdd9de98b347145217e719edf801e9afc SHA512 27d7c4c8e025a2c9320c0a47f3c521f51b49bf55d021c7a08aea9b7cb3d522cfc3e10d438b837669eeb5d427e950e7643c5ce4f817567d5e9fe39b56cdce8835
-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.18.0.ebuild b/dev-java/icedtea/icedtea-3.18.0.ebuild
deleted file mode 100644
index 505db1a198f0..000000000000
--- a/dev-java/icedtea/icedtea-3.18.0.ebuild
+++ /dev/null
@@ -1,385 +0,0 @@
-# Copyright 1999-2021 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 prefix 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/icedtea-3.19.0.ebuild b/dev-java/icedtea/icedtea-3.19.0.ebuild
deleted file mode 100644
index 505db1a198f0..000000000000
--- a/dev-java/icedtea/icedtea-3.19.0.ebuild
+++ /dev/null
@@ -1,385 +0,0 @@
-# Copyright 1999-2021 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 prefix 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 18643722fecb..000000000000
--- a/dev-java/icedtea/metadata.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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 b5d945993840..052b7f5e2744 100644
--- a/dev-java/icu4j/Manifest
+++ b/dev-java/icu4j/Manifest
@@ -1,3 +1,2 @@
-DIST icu4j-54_1_1.tgz 23457651 BLAKE2B f200d170c32065d2f678247d595085283446e401da2c2433b426466fc5c6f93f5ce629bce23d1114cad7d360aa4d127060750d380da8cc3e7fa1e529b454bae9 SHA512 c41f7f9fb0819767da48ac21c4883a628da8397e0ad5b0d75e51d9185b5511608c9a635933c4ae2e0c8911b2cdecf47bc661050935bbae2ba58abfb5ad04dadf
-DIST icu4j-55_1.tgz 23617640 BLAKE2B fe22524761e0c6be4ea440f90ffe5fba8a2f34484207248762ab127c3bb7e4328ced3502a336edd7d3a1026804381cd2b8738b15cd1745af0cee813dc60d7893 SHA512 706daed61d9d3722a0813d175fa66b24570abba492c32704d4df924861e5d2592a4a5ff40fdec2bd3fb662c3679dbc9addd580966c3cc69470d14e3fce27a054
-DIST icu4j-56_1.tgz 23189284 BLAKE2B d53aa869d6cde8cc9c83e66b55986b61736fbaf7a890e3c7bacab5abb23623ec64b5a23fd740dca8e51fd2336ced5e79546b4c08edca25beced22e6560f7814d SHA512 9ecc36c03a6713dbfb909e109b5e982525958b6137bd7006c93ff3b8578d816c59fa331555b43c94248f392ba9b456b1adb37be74e02e9ea818c8a9a7c669f4a
+DIST icu-74.2.tar.gz 65888936 BLAKE2B 81d5acddbfc58a859906cb61660b6f230b88f4a1b1cfd56838843e9445b5858d3dd4888707026340581322143f6a4b7b81f53b6431fd5d4cc3fb90531c4d82fb SHA512 728ae0f09ffc802d675bcf5b849e3081472de8417736bf8b7df0f4db9d1fb8073779be76536764c9111f7cb0e5ab2d2af6c644cc24be432b9eeae9063802ad6c
+DIST icu4j-75.1.tar.gz 65866291 BLAKE2B ae9a2a8f9bf6f38a08c46c4c3695fa4096c831beab1af5b654e86c9d681eb32be727930aeb1fd866fe9f93a96abe807fd353d108b5fe7a4d8203ee33cc16d971 SHA512 08f8fce8a4dd85706d9f7c57fd021ba15c403ab2da33d9a122d7cb441e0e148deebf245a661e4ef53a30bfa8b7622c63035946fd8966be3927af322275b87ca3
diff --git a/dev-java/icu4j/icu4j-54.1.1.ebuild b/dev-java/icu4j/icu4j-54.1.1.ebuild
deleted file mode 100644
index e58375be105d..000000000000
--- a/dev-java/icu4j/icu4j-54.1.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-# testdata.jar, icudata.jar and icutzdata.jar do not contain *.class files
-# but *.res files. These *.res data files are needed to build the final jar.
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A set of Java libraries providing Unicode and Globalization support"
-HOMEPAGE="http://www.icu-project.org/"
-SRC_URI="http://download.icu-project.org/files/${PN}/${PV}/${PN}-${PV//./_}.tgz"
-
-LICENSE="icu"
-SLOT="52"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-# Beware of jdk version dependant code #361593
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}"
-
-JAVA_PKG_BSFIX_NAME+=" common-targets.xml"
-
-EANT_DOC_TARGET="docs"
-EANT_TEST_TARGET="check"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- java-pkg_dojar ${PN}-charset.jar
- java-pkg_dojar ${PN}-localespi.jar
-
- dohtml readme.html
-
- use doc && java-pkg_dojavadoc doc
- use examples && java-pkg_doexamples demos samples
- use source && java-pkg_dosrc main/classes/*/src/com
-}
diff --git a/dev-java/icu4j/icu4j-55.1.ebuild b/dev-java/icu4j/icu4j-55.1.ebuild
deleted file mode 100644
index 025701c00218..000000000000
--- a/dev-java/icu4j/icu4j-55.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A set of Java libraries providing Unicode and Globalization support"
-HOMEPAGE="http://www.icu-project.org/"
-SRC_URI="http://download.icu-project.org/files/${PN}/${PV}/${PN}-${PV//./_}.tgz"
-
-LICENSE="icu"
-SLOT="55"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-# Beware of jdk version dependant code #361593
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}"
-
-JAVA_PKG_BSFIX_NAME+=" common-targets.xml"
-
-EANT_DOC_TARGET="docs"
-EANT_TEST_TARGET="check"
-
-JAVA_RM_FILES=(
- tools/build/src/com/ibm/icu/dev/tool/docs/ICUTaglet.java
-)
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- java-pkg_dojar ${PN}-charset.jar
- java-pkg_dojar ${PN}-localespi.jar
-
- dohtml readme.html
-
- use doc && java-pkg_dojavadoc doc
- use examples && java-pkg_doexamples demos samples
- use source && java-pkg_dosrc main/classes/*/src/com
-}
diff --git a/dev-java/icu4j/icu4j-56.1.ebuild b/dev-java/icu4j/icu4j-56.1.ebuild
deleted file mode 100644
index 870e9f7a2de0..000000000000
--- a/dev-java/icu4j/icu4j-56.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A set of Java libraries providing Unicode and Globalization support"
-HOMEPAGE="http://www.icu-project.org/"
-SRC_URI="http://download.icu-project.org/files/${PN}/${PV}/${PN}-${PV//./_}.tgz"
-
-LICENSE="icu"
-SLOT="56"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}"
-
-JAVA_PKG_BSFIX_NAME+=" common-targets.xml"
-
-EANT_DOC_TARGET="docs"
-EANT_TEST_TARGET="check"
-
-JAVA_RM_FILES=(
- tools/build/src/com/ibm/icu/dev/tool/docs/ICUTaglet.java
-)
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- java-pkg_dojar ${PN}-charset.jar
- java-pkg_dojar ${PN}-localespi.jar
-
- dodoc readme.html
-
- use doc && java-pkg_dojavadoc doc
- use examples && java-pkg_doexamples demos samples
- use source && java-pkg_dosrc main/classes/*/src/com
-}
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/icu4j/icu4j-75.1.ebuild b/dev-java/icu4j/icu4j-75.1.ebuild
new file mode 100644
index 000000000000..9447d4deca82
--- /dev/null
+++ b/dev-java/icu4j/icu4j-75.1.ebuild
@@ -0,0 +1,192 @@
+# 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 -> ${P}.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/gson:0
+ 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
+
+ einfo "Generating javadocs"
+ JAVADOC_SRC_DIRS=(
+ 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
+ )
+ use doc && ejavadoc
+}
+
+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="gson,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/icu4j/metadata.xml b/dev-java/icu4j/metadata.xml
index 952a4b9b605c..22e776e183a1 100644
--- a/dev-java/icu4j/metadata.xml
+++ b/dev-java/icu4j/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">unicode-org/icu</remote-id>
+ <bugs-to>https://unicode-org.atlassian.net/jira/software/c/projects/ICU/issues</bugs-to>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/identicon/Manifest b/dev-java/identicon/Manifest
new file mode 100644
index 000000000000..b1b5a9a0006e
--- /dev/null
+++ b/dev-java/identicon/Manifest
@@ -0,0 +1 @@
+DIST identicon-1.0.tar.gz 12173 BLAKE2B 177f11739dc7a419206f63e9008f6b7830e71cd5adba2c207e5f3d8f420c30fcb7188dad62fe3541fac7a4966e31ef3451fab6a094bb962b749d4ff2e64eb610 SHA512 b8c3a14b69ac14018179be7a61813f05caa1b8e40178f02b973776c8d59867c56d84e3268735218a90dceed7e4e8f47f7acbd4401ab5a13dd6e2c2e155007647
diff --git a/dev-java/identicon/identicon-1.0.ebuild b/dev-java/identicon/identicon-1.0.ebuild
new file mode 100644
index 000000000000..b3db99166311
--- /dev/null
+++ b/dev-java/identicon/identicon-1.0.ebuild
@@ -0,0 +1,35 @@
+# 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.github.donpark.identicon:identicon:1.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Visual representation of a hash value"
+HOMEPAGE="https://github.com/PauloMigAlmeida/identicon"
+COMMIT="96902d3c7c9733d9da4cce9c5ed424557fc2ec3c"
+SRC_URI="https://github.com/PauloMigAlmeida/identicon/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="
+ dev-java/cache2k-api:0
+ dev-java/commons-logging:0
+"
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/${PN}-${COMMIT}/core"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="cache2k-api-2"
diff --git a/dev-java/identicon/metadata.xml b/dev-java/identicon/metadata.xml
new file mode 100644
index 000000000000..87f89724fd55
--- /dev/null
+++ b/dev-java/identicon/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">PauloMigAlmeida/identicon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/injection-api/Manifest b/dev-java/injection-api/Manifest
new file mode 100644
index 000000000000..f27cd5678a48
--- /dev/null
+++ b/dev-java/injection-api/Manifest
@@ -0,0 +1 @@
+DIST injection-api-2.0.1.tar.gz 15277 BLAKE2B e1a575ce9705636e0e176e63684c3c4ddd3e7932f2fcf36af86e00e4ebb9888151d64019dea8339c80951d40d3f588bcb6857943c2e3a501e68ad7702a73c643 SHA512 21037c1b9b9687210663ee32b40c7ab897a27812591e38af2f840421488029d1b90f0528570940499142a7ec21ebd1f0fc4506872d9667a066b4ce84d38428e5
diff --git a/dev-java/injection-api/injection-api-2.0.1.ebuild b/dev-java/injection-api/injection-api-2.0.1.ebuild
new file mode 100644
index 000000000000..149141f12301
--- /dev/null
+++ b/dev-java/injection-api/injection-api-2.0.1.ebuild
@@ -0,0 +1,29 @@
+# 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/injection-api/archive/2.0.1.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild injection-api-2.0.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.inject:jakarta.inject-api:2.0.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Dependency Injection"
+HOMEPAGE="https://jakarta.ee/specifications/dependency-injection/"
+SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,NOTICE}.md )
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/injection-api/metadata.xml b/dev-java/injection-api/metadata.xml
new file mode 100644
index 000000000000..4c37da7799c7
--- /dev/null
+++ b/dev-java/injection-api/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">eclipse-ee4j/injection-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/invokebinder/Manifest b/dev-java/invokebinder/Manifest
deleted file mode 100644
index d0c88ffac6ee..000000000000
--- a/dev-java/invokebinder/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST invokebinder-1.6.tar.gz 36027 BLAKE2B b1a676063690500ae0a2c39eed7828d115074fd18ac88338e6078413d837f91e5a1a9a5beb2da976f82315fc6fb63de6f3df47e82c2e7589d4689986d78e3fa1 SHA512 cacdd6dd5fe74bbba940be1b3d53b183adc247b74e89cc0784805b2ad2c63d12ca1abe20bacf0a90ea50db7574e43d4ac52b5a46e61912e5153e2ac2f6bc559a
diff --git a/dev-java/invokebinder/files/invokebinder-1.6-build.xml b/dev-java/invokebinder/files/invokebinder-1.6-build.xml
deleted file mode 100644
index 55c846cf0427..000000000000
--- a/dev-java/invokebinder/files/invokebinder-1.6-build.xml
+++ /dev/null
@@ -1,230 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 10/12/15 9:24 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="invokebinder-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="invokebinder-1.6"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.9/junit-4.9.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.7"
- verbose="false"
- fork="false"
- source="1.7">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.7"
- verbose="false"
- fork="false"
- source="1.7">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/invokebinder/invokebinder-1.6.ebuild b/dev-java/invokebinder/invokebinder-1.6.ebuild
deleted file mode 100644
index 6eafa55d1d55..000000000000
--- a/dev-java/invokebinder/invokebinder-1.6.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Provide a friendly DSL for binding method handles"
-HOMEPAGE="https://github.com/headius/invokebinder"
-SRC_URI="https://github.com/headius/${PN}/archive/${P}.tar.gz"
-
-SLOT="0"
-KEYWORDS="amd64 x86"
-LICENSE="Apache-2.0"
-
-S="${WORKDIR}/${PN}-${P}"
-
-DEPEND=">=virtual/jdk-1.7
- test? (
- dev-java/ant-junit:0
- )"
-RDEPEND=">=virtual/jre-1.7"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_TEST_TARGET="test"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "target/${P}.jar" "${PN}.jar"
- use source && java-pkg_dosrc src/main/java/com
- if use doc; then
- java-pkg_dojavadoc target/site/apidocs
- dodoc README.markdown
- fi
-}
diff --git a/dev-java/invokebinder/metadata.xml b/dev-java/invokebinder/metadata.xml
deleted file mode 100644
index 08c499458589..000000000000
--- a/dev-java/invokebinder/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">headius/invokebinder</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/iso-relax/iso-relax-20050331-r5.ebuild b/dev-java/iso-relax/iso-relax-20050331-r5.ebuild
deleted file mode 100644
index c722dee93a25..000000000000
--- a/dev-java/iso-relax/iso-relax-20050331-r5.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="Interfaces useful for applications which support RELAX Core"
-HOMEPAGE="http://www.xml.gr.jp/relax/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-
-RESTRICT="test"
-
-CDEPEND="dev-java/ant-core:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-JAVA_SRC_DIR="src"
-
-src_prepare() {
- default
- java-pkg_clean
-}
diff --git a/dev-java/iso-relax/iso-relax-20050331-r6.ebuild b/dev-java/iso-relax/iso-relax-20050331-r6.ebuild
new file mode 100644
index 000000000000..6359c5cb8203
--- /dev/null
+++ b/dev-java/iso-relax/iso-relax-20050331-r6.ebuild
@@ -0,0 +1,29 @@
+# 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
+
+DESCRIPTION="Interfaces useful for applications which support RELAX Core"
+HOMEPAGE="http://www.xml.gr.jp/relax/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+S="${WORKDIR}/${P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
+
+CP_DEPEND=">=dev-java/ant-1.10.14-r3:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean
+}
diff --git a/dev-java/iso-relax/metadata.xml b/dev-java/iso-relax/metadata.xml
index 43d7603d850d..9ca2753ce828 100644
--- a/dev-java/iso-relax/metadata.xml
+++ b/dev-java/iso-relax/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/istack-commons-runtime/Manifest b/dev-java/istack-commons-runtime/Manifest
index dd0f50007880..bb86522a3923 100644
--- a/dev-java/istack-commons-runtime/Manifest
+++ b/dev-java/istack-commons-runtime/Manifest
@@ -1 +1,2 @@
-DIST istack-commons-runtime-2.22-sources.jar 33136 BLAKE2B 07c123189f889fc9d92b73e930447630a18a56df7bcc6216763d683f30dacc6ab645e10808aaafc3ccadd619fd6cd617ff256962a75a606dd401d0879a687cab SHA512 cfabed991cadfa3562a2a281f4b3bdabadd753cd3b9ee918b3f89428e416c0d23aed928d5f61bde4f3958d12f4cb63130354cbf6bf14577ed54871a46d703bdd
+DIST jaxb-istack-commons-3.0.12.tar.gz 66063 BLAKE2B 7f869d17e78b62eac08b1c7c6bb0b974d9c7a8e4f0ad79ed4d659e3ea672a1e4947cd90fa122ac3d9b3ce902e17e8bfc7eca3d9133332bdbe1ff236d47b3bac5 SHA512 41193fbc20e9332f66754fc4dd52b7e98bd905c4a5dbca8adc46cb9b29f3e5fe39a684d9ca08b38c5ba15e54acb69dc289b72e2885946349bb48f4e9c2e34dfb
+DIST jaxb-istack-commons-istack-commons-runtime-4.1.1.tar.gz 66161 BLAKE2B 07103ec616d23e14a5f61c4bb7ef9dce042f0df678db44f035b48c74eb7930f251d8b7fd8ce36c9bae7a7ef8ce213c62587dad2547518ba4638faf102ef651cd SHA512 b119b2c3582f5cbbd5793e0eb0a00c199c93119f3c18e34c57f8753b3a7008b9b93de58fd62df94d6cbedd698488616a80c334fda3d5038078e3858229f995cf
diff --git a/dev-java/istack-commons-runtime/istack-commons-runtime-2.22.ebuild b/dev-java/istack-commons-runtime/istack-commons-runtime-2.22.ebuild
deleted file mode 100644
index 9a08bbb3c4ec..000000000000
--- a/dev-java/istack-commons-runtime/istack-commons-runtime-2.22.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN=${PN%%-*}
-
-DESCRIPTION="IStack Commons - Runtime jar"
-HOMEPAGE="https://istack-commons.java.net"
-SRC_URI="https://maven.java.net/content/repositories/releases/com/sun/${MY_PN}/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
diff --git a/dev-java/istack-commons-runtime/istack-commons-runtime-3.0.12.ebuild b/dev-java/istack-commons-runtime/istack-commons-runtime-3.0.12.ebuild
new file mode 100644
index 000000000000..b08a535e4c27
--- /dev/null
+++ b/dev-java/istack-commons-runtime/istack-commons-runtime-3.0.12.ebuild
@@ -0,0 +1,37 @@
+# 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.sun.istack:istack-commons-runtime:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="istack common utility code"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j/istack-commons/"
+SRC_URI="https://github.com/eclipse-ee4j/jaxb-istack-commons/archive/${PV}.tar.gz -> jaxb-istack-commons-${PV}.tar.gz"
+S="${WORKDIR}/jaxb-istack-commons-${PV}/istack-commons"
+
+LICENSE="EPL-1.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# fails if jdk-1.8:* # https://bugs.gentoo.org/857024
+DEPEND="
+ >=virtual/jdk-11:*
+ dev-java/jakarta-activation-api:1
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-1"
+JAVA_SRC_DIR="runtime/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="runtime/src/test/java"
diff --git a/dev-java/istack-commons-runtime/istack-commons-runtime-4.1.1-r1.ebuild b/dev-java/istack-commons-runtime/istack-commons-runtime-4.1.1-r1.ebuild
new file mode 100644
index 000000000000..710d5f856623
--- /dev/null
+++ b/dev-java/istack-commons-runtime/istack-commons-runtime-4.1.1-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom runtime/pom.xml --download-uri https://github.com/eclipse-ee4j/jaxb-istack-commons/archive/4.1.1.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild jaxb-istack-commons-runtime-4.1.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.sun.istack:istack-commons-runtime:4.1.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="istack common utility code"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j/istack-commons/"
+SRC_URI="https://github.com/eclipse-ee4j/jaxb-istack-commons/archive/${PV}.tar.gz -> jaxb-istack-commons-${P}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: runtime/pom.xml
+# jakarta.activation:jakarta.activation-api:2.1.0 -> >=dev-java/jakarta-activation-api-2.1.0:2
+# POM: runtime/pom.xml
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+
+# fails if jdk-1.8:* # https://bugs.gentoo.org/857024
+DEPEND="
+ >=virtual/jdk-11:*
+ dev-java/jakarta-activation-api:2
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/jaxb-istack-commons-${PV}/istack-commons"
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-2"
+JAVA_SRC_DIR="runtime/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="runtime/src/test/java"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/istack-commons-runtime/metadata.xml b/dev-java/istack-commons-runtime/metadata.xml
index 37998bf40746..75321cfb5598 100644
--- a/dev-java/istack-commons-runtime/metadata.xml
+++ b/dev-java/istack-commons-runtime/metadata.xml
@@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ </maintainer>
</pkgmetadata>
diff --git a/dev-java/istack-commons-soimp/Manifest b/dev-java/istack-commons-soimp/Manifest
deleted file mode 100644
index 92408c97cc19..000000000000
--- a/dev-java/istack-commons-soimp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST istack-commons-soimp-2.22-sources.jar 10208 BLAKE2B 7fa7115a3b0b1b5bf3c51b487ce31db69a7d9bf5b670a99243456aa678645463341987bb68d63b708949ea710268a8f4f61a79d3e3079c271783a98f8ce2f930 SHA512 28b85550dd92b9fac106ecc2173e728adc7180350f1e47cb619e4d1d6f517cf0878cca87dc7242d80fc0dac5e3d683a2a599bbfb4aa147d33a2089e6f0b28a21
diff --git a/dev-java/istack-commons-soimp/istack-commons-soimp-2.22.ebuild b/dev-java/istack-commons-soimp/istack-commons-soimp-2.22.ebuild
deleted file mode 100644
index 827c427ff740..000000000000
--- a/dev-java/istack-commons-soimp/istack-commons-soimp-2.22.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN=${PN%%-*}
-
-DESCRIPTION="IStack Commons - Soimp jar"
-HOMEPAGE="https://istack-commons.java.net"
-SRC_URI="https://maven.java.net/content/repositories/releases/com/sun/${MY_PN}/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0
- dev-java/args4j:2"
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="ant-core,args4j-2"
diff --git a/dev-java/istack-commons-soimp/metadata.xml b/dev-java/istack-commons-soimp/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/istack-commons-soimp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/j2objc-annotations/Manifest b/dev-java/j2objc-annotations/Manifest
index 38b4ed181bbe..1c40e9bd5e29 100644
--- a/dev-java/j2objc-annotations/Manifest
+++ b/dev-java/j2objc-annotations/Manifest
@@ -1 +1,2 @@
-DIST j2objc-1.2.tar.gz 9718769 BLAKE2B 370a52fe9821814c12dd7a13072930f178e041d14baa2e912de3379030828ae62114b213f38f849934e68060fa51d8017a28772a794658aa23272ac5d254d933 SHA512 d2b4d12ba8107728ca33cfe18124eae092a2c2b9ce0b588374180d35816d83d6d6c9d029c3524537ac48f052dfa4c88b273405cddf56c54966216b1ed1a160eb
+DIST j2objc-2.8.tar.gz 29383083 BLAKE2B a2d288b95fac5d5fafbf5e3c8c7c862e41ba9562f6a3f367ee03574db0f07e030f7812de7d0cf63c97acdbbf8ddd8128fe14e89e97623d6d3cf7b85071e160b3 SHA512 f93a77db3a672691666de317010e455aceb20313a40217270cf4cfd082a0443f7f5cf6f53f06a1006d0a2788c199685a574b0acb435dccdc4e419a2340451860
+DIST j2objc-3.0.0.tar.gz 29562144 BLAKE2B b0dc9aeef148ee29154062228049b4db86648fb66b93d224d536a3c0b7e56eb4850d38761b59c6728b005e1520a7a3c07ef3bdb3662d9cad52794ec3ce533426 SHA512 b7e295e448caa61d03c12cde77266ab397f27a5632ab01944571736a79860fa0375279f27fcb1870d0452bde4d8b50ee453a88a23e5b92c1ef0411d4212f3779
diff --git a/dev-java/j2objc-annotations/j2objc-annotations-1.2.ebuild b/dev-java/j2objc-annotations/j2objc-annotations-1.2.ebuild
deleted file mode 100644
index 03340d482d2e..000000000000
--- a/dev-java/j2objc-annotations/j2objc-annotations-1.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PN="${PN%-annotations}"
-MY_P="${MY_PN}-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Annotations for the J2ObjC Java to Objective-C translator"
-HOMEPAGE="http://j2objc.org"
-SRC_URI="https://github.com/google/${MY_PN}/archive/${PV}.tar.gz -> ${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_P}/annotations"
-JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/j2objc-annotations/j2objc-annotations-2.8.ebuild b/dev-java/j2objc-annotations/j2objc-annotations-2.8.ebuild
new file mode 100644
index 000000000000..3d69f0171861
--- /dev/null
+++ b/dev-java/j2objc-annotations/j2objc-annotations-2.8.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+# Yes. version is "2.2" regardless ${PV} being "2.8".
+# See https://github.com/google/j2objc/blob/2.8/annotations/pom.xml#L32-L35
+MAVEN_ID="com.google.j2objc:j2objc-annotations:2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Annotations for the J2ObjC Java to Objective-C translator"
+HOMEPAGE="https://developers.google.com/j2objc/"
+SRC_URI="https://github.com/google/j2objc/archive/${PV}.tar.gz -> j2objc-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="virtual/jdk:1.8"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,README}.md )
+
+S="${WORKDIR}/j2objc-${PV}/annotations"
+
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ default
+ rm Makefile || die
+}
diff --git a/dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild b/dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild
new file mode 100644
index 000000000000..ef37166a0b5c
--- /dev/null
+++ b/dev-java/j2objc-annotations/j2objc-annotations-3.0.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.google.j2objc:j2objc-annotations:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Annotations for the J2ObjC Java to Objective-C translator"
+HOMEPAGE="https://developers.google.com/j2objc/"
+SRC_URI="https://github.com/google/j2objc/archive/${PV}.tar.gz -> j2objc-${PV}.tar.gz"
+S="${WORKDIR}/j2objc-${PV}/annotations"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,README}.md )
+
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ default
+ rm Makefile || die
+}
diff --git a/dev-java/j2objc-annotations/metadata.xml b/dev-java/j2objc-annotations/metadata.xml
index f67ee762cdd1..cb65b3004cd5 100644
--- a/dev-java/j2objc-annotations/metadata.xml
+++ b/dev-java/j2objc-annotations/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jackcess/jackcess-4.0.0.ebuild b/dev-java/jackcess/jackcess-4.0.0.ebuild
index 7d2a8161da68..73b567ddfba2 100644
--- a/dev-java/jackcess/jackcess-4.0.0.ebuild
+++ b/dev-java/jackcess/jackcess-4.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
@@ -12,13 +12,13 @@ JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
-DESCRIPTION="A pure Java library for reading from and writing to MS Access databases."
+DESCRIPTION="A pure Java library for reading from and writing to MS Access databases"
HOMEPAGE="https://jackcess.sourceforge.io"
SRC_URI="https://github.com/jahlborn/${PN}/archive/refs/tags/${P}.tar.gz -> ${P}-sources.tar.gz"
LICENSE="Apache-2.0"
SLOT="1"
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
# Common dependencies
# POM: pom.xml
diff --git a/dev-java/jackcess/metadata.xml b/dev-java/jackcess/metadata.xml
index c36d884665a5..68527723b496 100644
--- a/dev-java/jackcess/metadata.xml
+++ b/dev-java/jackcess/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-CSRFUtilTest.java.patch b/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-CSRFUtilTest.java.patch
deleted file mode 100644
index 4c1f286339b8..000000000000
--- a/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-CSRFUtilTest.java.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- src/test/java/org/apache/jackrabbit/webdav/util/CSRFUtilTest.java.orig 2015-07-03 09:36:45.804000000 +0000
-+++ src/test/java/org/apache/jackrabbit/webdav/util/CSRFUtilTest.java 2015-07-03 09:36:59.498000000 +0000
-@@ -281,6 +281,18 @@
- public void removeAttribute(String name) {
-
- }
-+ public int getRemotePort() {
-+ return 0;
-+ }
-+ public String getLocalName() {
-+ return null;
-+ }
-+ public String getLocalAddr() {
-+ return null;
-+ }
-+ public int getLocalPort() {
-+ return 0;
-+ }
- public Locale getLocale() {
- return null;
- }
diff --git a/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-OutputContextImplTest.java.patch b/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-OutputContextImplTest.java.patch
deleted file mode 100644
index d9a2315f19a1..000000000000
--- a/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-OutputContextImplTest.java.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- src/test/java/org/apache/jackrabbit/webdav/io/OutputContextImplTest.java.orig 2015-07-03 09:26:48.578000000 +0000
-+++ src/test/java/org/apache/jackrabbit/webdav/io/OutputContextImplTest.java 2015-07-03 09:27:34.109000000 +0000
-@@ -40,6 +40,13 @@
- public void setHeader(String name, String value) {
- assertTrue(Long.parseLong(value) > Integer.MAX_VALUE);
- }
-+ @Override
-+ public void setCharacterEncoding(String name) {
-+ }
-+ @Override
-+ public String getContentType() {
-+ return null;
-+ }
- };
-
- OutputContext ctx = new OutputContextImpl(response, null);
diff --git a/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-build.xml b/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-build.xml
deleted file mode 100644
index 3c3a41206421..000000000000
--- a/dev-java/jackrabbit-webdav/files/jackrabbit-webdav-2.10.1-build.xml
+++ /dev/null
@@ -1,350 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/22/15 2:49 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jackrabbit-webdav-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jackrabbit-webdav-2.10.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/biz/aQute/bndlib/1.43.0/bndlib-1.43.0.jar"/>
- <pathelement location="${maven.repo.local}/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"/>
- <pathelement location="${maven.repo.local}/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar"/>
- <pathelement location="${maven.repo.local}/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"/>
- <pathelement location="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"/>
- <pathelement location="${maven.repo.local}/org/slf4j/jcl-over-slf4j/1.7.4/jcl-over-slf4j-1.7.4.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/biz/aQute/bndlib/1.43.0/bndlib-1.43.0.jar"/>
- <pathelement location="${maven.repo.local}/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"/>
- <pathelement location="${maven.repo.local}/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar"/>
- <pathelement location="${maven.repo.local}/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"/>
- <pathelement location="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"/>
- <pathelement location="${maven.repo.local}/org/slf4j/jcl-over-slf4j/1.7.4/jcl-over-slf4j-1.7.4.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.10/junit-4.10.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"/>
- <pathelement location="${maven.repo.local}/ch/qos/logback/logback-classic/1.0.12/logback-classic-1.0.12.jar"/>
- <pathelement location="${maven.repo.local}/ch/qos/logback/logback-core/1.0.12/logback-core-1.0.12.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/*TestAll.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <!--
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
- -->
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- source="1.6"
- linksource="false"
- breakiterator="false">
- <link href="http://docs.oracle.com/javase/6/docs/api/"/>
- <link href="http://www.day.com/maven/javax.jcr/javadocs/jcr-2.0/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/biz/aQute/bndlib/1.43.0"/>
- <get src="http://repository.apache.org/snapshots/biz/aQute/bndlib/1.43.0/bndlib-1.43.0.jar"
- dest="${maven.repo.local}/biz/aQute/bndlib/1.43.0/bndlib-1.43.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/biz/aQute/bndlib/1.43.0/bndlib-1.43.0.jar"
- dest="${maven.repo.local}/biz/aQute/bndlib/1.43.0/bndlib-1.43.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/slf4j/slf4j-api/1.6.6"/>
- <get src="http://repository.apache.org/snapshots/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"
- dest="${maven.repo.local}/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"
- dest="${maven.repo.local}/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/javax/servlet/servlet-api/2.3"/>
- <get src="http://repository.apache.org/snapshots/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar"
- dest="${maven.repo.local}/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar"
- dest="${maven.repo.local}/javax/servlet/servlet-api/2.3/servlet-api-2.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/commons-httpclient/commons-httpclient/3.1"/>
- <get src="http://repository.apache.org/snapshots/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"
- dest="${maven.repo.local}/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"
- dest="${maven.repo.local}/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/commons-codec/commons-codec/1.2"/>
- <get src="http://repository.apache.org/snapshots/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
- dest="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
- dest="${maven.repo.local}/commons-codec/commons-codec/1.2/commons-codec-1.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/slf4j/jcl-over-slf4j/1.7.4"/>
- <get src="http://repository.apache.org/snapshots/org/slf4j/jcl-over-slf4j/1.7.4/jcl-over-slf4j-1.7.4.jar"
- dest="${maven.repo.local}/org/slf4j/jcl-over-slf4j/1.7.4/jcl-over-slf4j-1.7.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/org/slf4j/jcl-over-slf4j/1.7.4/jcl-over-slf4j-1.7.4.jar"
- dest="${maven.repo.local}/org/slf4j/jcl-over-slf4j/1.7.4/jcl-over-slf4j-1.7.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.10"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.10/junit-4.10.jar"
- dest="${maven.repo.local}/junit/junit/4.10/junit-4.10.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/junit/junit/4.10/junit-4.10.jar"
- dest="${maven.repo.local}/junit/junit/4.10/junit-4.10.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/hamcrest/hamcrest-core/1.1"/>
- <get src="http://repository.apache.org/snapshots/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"
- dest="${maven.repo.local}/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"
- dest="${maven.repo.local}/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/ch/qos/logback/logback-classic/1.0.12"/>
- <get src="http://repository.apache.org/snapshots/ch/qos/logback/logback-classic/1.0.12/logback-classic-1.0.12.jar"
- dest="${maven.repo.local}/ch/qos/logback/logback-classic/1.0.12/logback-classic-1.0.12.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/ch/qos/logback/logback-classic/1.0.12/logback-classic-1.0.12.jar"
- dest="${maven.repo.local}/ch/qos/logback/logback-classic/1.0.12/logback-classic-1.0.12.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/ch/qos/logback/logback-core/1.0.12"/>
- <get src="http://repository.apache.org/snapshots/ch/qos/logback/logback-core/1.0.12/logback-core-1.0.12.jar"
- dest="${maven.repo.local}/ch/qos/logback/logback-core/1.0.12/logback-core-1.0.12.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repo.maven.apache.org/maven2/ch/qos/logback/logback-core/1.0.12/logback-core-1.0.12.jar"
- dest="${maven.repo.local}/ch/qos/logback/logback-core/1.0.12/logback-core-1.0.12.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1-r3.ebuild b/dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1-r3.ebuild
new file mode 100644
index 000000000000..bce380ed025c
--- /dev/null
+++ b/dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1-r3.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2022 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
+
+MY_PN="${PN/-*/}"
+
+DESCRIPTION="Fully conforming implementation of the JRC API (specified in JSR 170 and 283)"
+HOMEPAGE="https://jackrabbit.apache.org/"
+SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_PN}-${PV}-src.zip"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+S="${WORKDIR}/${MY_PN}-${PV}/${PN}"
+
+CP_DEPEND="dev-java/bndlib:0
+ dev-java/slf4j-api:0
+ dev-java/slf4j-nop:0
+ dev-java/commons-httpclient:3
+ dev-java/tomcat-servlet-api:2.3"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+BDEPEND="app-arch/unzip"
+
+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_test() {
+ # Run only tests that would be executed by Maven as in ${S}/pom.xml:79
+ JAVA_TEST_RUN_ONLY=$(find "${JAVA_TEST_SRC_DIR}" -name "*TestAll.java" \
+ -exec realpath --relative-to="${JAVA_TEST_SRC_DIR}" {} \;)
+ 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/jackrabbit-webdav/jackrabbit-webdav-2.10.1.ebuild b/dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1.ebuild
deleted file mode 100644
index f05838167a52..000000000000
--- a/dev-java/jackrabbit-webdav/jackrabbit-webdav-2.10.1.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN/-*/}"
-
-DESCRIPTION="Fully conforming implementation of the JRC API (specified in JSR 170 and 283)"
-HOMEPAGE="http://jackrabbit.apache.org/"
-SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_PN}-${PV}-src.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-S="${WORKDIR}/${MY_PN}-${PV}/${PN}"
-
-CDEPEND="dev-java/bndlib:0
- dev-java/slf4j-api:0
- dev-java/slf4j-nop:0
- dev-java/commons-httpclient:3
- java-virtuals/servlet-api:2.3"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- test? ( dev-java/ant-junit:0 )"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="
- bndlib
- commons-httpclient-3
- servlet-api-2.3
- slf4j-api
-"
-
-PATCHES=(
- "${FILESDIR}"/${P}-OutputContextImplTest.java.patch
- "${FILESDIR}"/${P}-CSRFUtilTest.java.patch
-)
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
- epatch "${PATCHES[@]}"
-}
-
-EANT_TEST_GENTOO_CLASSPATH="
- ${EANT_GENTOO_CLASSPATH}
- slf4j-nop
-"
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
-}
diff --git a/dev-java/jackrabbit-webdav/metadata.xml b/dev-java/jackrabbit-webdav/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/jackrabbit-webdav/metadata.xml
+++ b/dev-java/jackrabbit-webdav/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jackson-annotations/Manifest b/dev-java/jackson-annotations/Manifest
index e0dcf4474c3b..e56fa64c2593 100644
--- a/dev-java/jackson-annotations/Manifest
+++ b/dev-java/jackson-annotations/Manifest
@@ -1 +1 @@
-DIST jackson-annotations-2.9.10.tar.gz 57322 BLAKE2B 85e3ac040e3adc986fa7b2a1892bb536ff2b46415af9390a6ec4e59bc9770b2bced4fd80edffc7b2083853b0b1bb5022dde137fda7e9920ec27e3fa54858e5fc SHA512 27c28e9453570aab4758031d406bfc8b8ba0eb443dcd0a884d6098840e5b577b2628288daf10e9de6ce5d1e4da2f4b8e4ec36a6559233e012725a906c4da21b9
+DIST jackson-annotations-2.13.4.tar.gz 1984001 BLAKE2B 8c4eed89fc0c5b3d68f25f2db28a38e55a2e629c7c38289a82f4ff4a122967326e0221cb020afb69577fe4d5baa2ba89f8db5a398302cd25404083a5d0830eaf SHA512 5ad1d07b254956f9d4123eb01e32d8a8f43eccefe60c6841675ccfecd8837feb4de9352d90f8b8a2703f0f12a0fd20083f8d274594e1ca5674894b2cd76ce322
diff --git a/dev-java/jackson-annotations/jackson-annotations-2.13.4.ebuild b/dev-java/jackson-annotations/jackson-annotations-2.13.4.ebuild
new file mode 100644
index 000000000000..4505a819c458
--- /dev/null
+++ b/dev-java/jackson-annotations/jackson-annotations-2.13.4.ebuild
@@ -0,0 +1,38 @@
+# 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/FasterXML/jackson-annotations/archive/jackson-annotations-2.13.4.tar.gz --slot 2 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-annotations-2.13.4.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.fasterxml.jackson.core:jackson-annotations:2.13.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core annotations used for value types, used by Jackson data binding package."
+HOMEPAGE="https://github.com/FasterXML/jackson-annotations"
+SRC_URI="https://github.com/FasterXML/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {README,SECURITY}.md release-notes/VERSION-2.x )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_EXCLUDES=(
+ # 1) warning(junit.framework.TestSuite$1)
+ # junit.framework.AssertionFailedError: No tests found in com.fasterxml.jackson.annotation.TestBase
+ com.fasterxml.jackson.annotation.TestBase
+)
diff --git a/dev-java/jackson-annotations/jackson-annotations-2.9.10.ebuild b/dev-java/jackson-annotations/jackson-annotations-2.9.10.ebuild
deleted file mode 100644
index 5f6b0bc2fef8..000000000000
--- a/dev-java/jackson-annotations/jackson-annotations-2.9.10.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 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
-
-DESCRIPTION="Annotations for the Java Jackson data processor"
-HOMEPAGE="https://github.com/FasterXML/jackson-annotations"
-SRC_URI="https://github.com/FasterXML/${PN}/archive/${PN}-${PV}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.7"
-
-DEPEND=">=virtual/jdk-1.7
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${PN}-${P}"
-JAVA_SRC_DIR="src/main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README.md release-notes/VERSION
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_test() {
- cd src/test/java || die
-
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4)"
- local TESTS=$(find * -name "*Test.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/jackson-annotations/metadata.xml b/dev-java/jackson-annotations/metadata.xml
index 4e2290156ae9..3550ba7d2c85 100644
--- a/dev-java/jackson-annotations/metadata.xml
+++ b/dev-java/jackson-annotations/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jackson-core/Manifest b/dev-java/jackson-core/Manifest
new file mode 100644
index 000000000000..ebe2f5072775
--- /dev/null
+++ b/dev-java/jackson-core/Manifest
@@ -0,0 +1 @@
+DIST jackson-core-2.13.4.tar.gz 12270995 BLAKE2B d4556ad35eaf4f3182cb07eb39b14691a0d9c5d7801a4f6450536fcb33c19e9d6f24e80477c09dae167d4ff3b3e57798d63f4c24ca689a902350a6ff4ce0b19d SHA512 95fba755c9289728ce6168e57ef8f2417df03616b5839beacc338947d1447719e930b6f820144c0f398f162676e5d56a6a5bbcb86cbdb15f80de566ba45c478a
diff --git a/dev-java/jackson-core/jackson-core-2.13.4.ebuild b/dev-java/jackson-core/jackson-core-2.13.4.ebuild
new file mode 100644
index 000000000000..c5efc120c377
--- /dev/null
+++ b/dev-java/jackson-core/jackson-core-2.13.4.ebuild
@@ -0,0 +1,64 @@
+# 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/FasterXML/jackson-core/archive/jackson-core-2.13.4.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-core-2.13.4.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.fasterxml.jackson.core:jackson-core:2.13.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core Jackson processing abstractions (Streaming API), implementation for JSON"
+HOMEPAGE="https://github.com/FasterXML/jackson-core"
+SRC_URI="https://github.com/FasterXML/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {README,SECURITY}.md release-notes/{CREDITS-2.x,VERSION-2.x} )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+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
+
+ sed -e 's:@package@:com.fasterxml.jackson.core.json:g' \
+ -e "s:@projectversion@:${PV}:g" \
+ -e 's:@projectgroupid@:com.fasterxml.jackson.core:g' \
+ -e 's:@projectartifactid@:jackson-core:g' \
+ "${JAVA_SRC_DIR}/com/fasterxml/jackson/core/json/PackageVersion.java.in" \
+ > "${JAVA_SRC_DIR}/com/fasterxml/jackson/core/json/PackageVersion.java" || die
+
+ java-pkg-2_src_prepare
+}
+
+src_test() {
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * -name "*Test*.java" \
+ ! -wholename "**/failing**/*.java" \
+ ! -wholename "**/testsupport**/*.java" \
+ ! -wholename "perf**/*.java" \
+ ! -name "*TestBase.java" \
+ ! -name "*BaseTest.java" \
+ )
+ popd
+
+ 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/jackson-core/metadata.xml b/dev-java/jackson-core/metadata.xml
new file mode 100644
index 000000000000..b23e2bb1f6ba
--- /dev/null
+++ b/dev-java/jackson-core/metadata.xml
@@ -0,0 +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>
+ </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/Manifest b/dev-java/jackson-databind/Manifest
new file mode 100644
index 000000000000..34113ea0eb6d
--- /dev/null
+++ b/dev-java/jackson-databind/Manifest
@@ -0,0 +1 @@
+DIST jackson-databind-2.13.4.1.tar.gz 48063423 BLAKE2B 88370810068f3c1b3973f310e55e6fb53067ff9796de960d2c57cd50ee59dd552f58b4e73d4455076b18ec996ce7714ab84000a4887a1779fcf259859c891346 SHA512 22b7a4225903a0fad3d7d17a5fad79905da96a4a7ebf70b7d9f2c778e88f8c9c2a27d96f66beae96f189ebcd9ca19fd7b12405009ae38023ec8b0511e1ba1af2
diff --git a/dev-java/jackson-databind/jackson-databind-2.13.4.1.ebuild b/dev-java/jackson-databind/jackson-databind-2.13.4.1.ebuild
new file mode 100644
index 000000000000..e7113f161f38
--- /dev/null
+++ b/dev-java/jackson-databind/jackson-databind-2.13.4.1.ebuild
@@ -0,0 +1,76 @@
+# 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/FasterXML/jackson-databind/archive/jackson-databind-2.13.4.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-databind-2.13.4.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.fasterxml.jackson.core:jackson-databind:2.13.4.1"
+# No tests because of not yet packaged powermock
+# JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="General data-binding functionality for Jackson: works on core streaming API"
+HOMEPAGE="https://github.com/FasterXML/jackson-databind"
+SRC_URI="https://github.com/FasterXML/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# com.fasterxml.jackson.core:jackson-annotations:2.13.4 -> >=dev-java/jackson-annotations-2.13.4:2
+# com.fasterxml.jackson.core:jackson-core:2.13.4 -> >=dev-java/jackson-core-2.13.4:0
+
+CP_DEPEND="
+ ~dev-java/jackson-annotations-2.13.4:2
+ ~dev-java/jackson-core-2.13.4:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? javax.measure:jsr-275:0.9.1 -> !!!groupId-not-found!!!
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.powermock:powermock-api-mockito2:2.0.0 -> !!!groupId-not-found!!!
+# test? org.powermock:powermock-core:2.0.0 -> !!!groupId-not-found!!!
+# test? org.powermock:powermock-module-junit4:2.0.0 -> !!!groupId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}"
+# test? (
+# !!!groupId-not-found!!!
+# )
+#"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( {README,SECURITY}.md release-notes/{CREDITS,VERSION}-2.x )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+# JAVA_TEST_GENTOO_CLASSPATH="!!!groupId-not-found!!!,junit-4,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!"
+# JAVA_TEST_SRC_DIR="src/test/java"
+# JAVA_TEST_RESOURCE_DIRS=(
+# "src/test/resources"
+# )
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ sed -e 's:@package@:com.fasterxml.jackson.databind.cfg:g' \
+ -e "s:@projectversion@:${PV}:g" \
+ -e 's:@projectgroupid@:com.fasterxml.jackson.core:g' \
+ -e "s:@projectartifactid@:${PN}:g" \
+ "${JAVA_SRC_DIR}/com/fasterxml/jackson/databind/cfg/PackageVersion.java.in" \
+ > "${JAVA_SRC_DIR}/com/fasterxml/jackson/databind/cfg/PackageVersion.java" || die
+}
diff --git a/dev-java/jackson-databind/metadata.xml b/dev-java/jackson-databind/metadata.xml
new file mode 100644
index 000000000000..de712481f022
--- /dev/null
+++ b/dev-java/jackson-databind/metadata.xml
@@ -0,0 +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>
+ </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/Manifest b/dev-java/jackson-dataformat-xml/Manifest
new file mode 100644
index 000000000000..e8a729e86a91
--- /dev/null
+++ b/dev-java/jackson-dataformat-xml/Manifest
@@ -0,0 +1 @@
+DIST jackson-dataformat-xml-2.13.4.tar.gz 3203115 BLAKE2B c959c878c6905de9fee73fab87381296d30146ab755765e715f49f141ea80d3843116752710e78f270c96abb0a2dd784fff01769ce68c126b3c7bd5acbe1a880 SHA512 8b6c76d8b324ceffece806f2de1352e2b2b557d64f51885bec8e60033c254e9c5a9adad29c07b6a5aaa77d535245ad581f67768a62af7a44160221aae62115e6
diff --git a/dev-java/jackson-dataformat-xml/jackson-dataformat-xml-2.13.4-r1.ebuild b/dev-java/jackson-dataformat-xml/jackson-dataformat-xml-2.13.4-r1.ebuild
new file mode 100644
index 000000000000..0abe765139fe
--- /dev/null
+++ b/dev-java/jackson-dataformat-xml/jackson-dataformat-xml-2.13.4-r1.ebuild
@@ -0,0 +1,105 @@
+# 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/FasterXML/jackson-dataformat-xml/archive/jackson-dataformat-xml-2.13.4.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-dataformat-xml-2.13.4.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.13.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Data format extension for Jackson"
+HOMEPAGE="https://github.com/FasterXML/jackson-dataformat-xml"
+SRC_URI="https://github.com/FasterXML/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# com.fasterxml.jackson.core:jackson-annotations:2.13.4 -> >=dev-java/jackson-annotations-2.13.4:2
+# com.fasterxml.jackson.core:jackson-core:2.13.4 -> >=dev-java/jackson-core-2.13.4:0
+# com.fasterxml.jackson.core:jackson-databind:2.13.4 -> >=dev-java/jackson-databind-2.13.4:0
+# com.fasterxml.woodstox:woodstox-core:6.3.1 -> >=dev-java/woodstox-core-6.3.1:0
+# org.codehaus.woodstox:stax2-api:4.2.1 -> >=dev-java/stax2-api-4.2.1:0
+
+CP_DEPEND="
+ ~dev-java/jackson-annotations-${PV}:2
+ ~dev-java/jackson-core-${PV}:0
+ ~dev-java/jackson-databind-${PV}.1:0
+ >=dev-java/stax2-api-4.2.1-r1:0
+ dev-java/woodstox-core:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.fasterxml.jackson.module:jackson-module-jakarta-xmlbind-annotations:2.13.4 -> >=dev-java/jackson-module-jakarta-xmlbind-2.13.4:0
+# test? com.sun.xml.stream:sjsxp:1.0.2 -> >=dev-java/sjsxp-1.0.2:0
+# test? jakarta.xml.bind:jakarta.xml.bind-api:3.0.1 -> >=dev-java/jaxb-api-3.0.1:3
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ test? (
+ ~dev-java/jackson-module-jakarta-xmlbind-${PV}:0
+ dev-java/jaxb-api:4
+ dev-java/sjsxp:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( {README,SECURITY}.md release-notes/{CREDITS,VERSION}-2.x )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="jackson-module-jakarta-xmlbind,sjsxp,jaxb-api-4,junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ sed -e 's:@package@:com.fasterxml.jackson.dataformat.xml:g' \
+ -e "s:@projectversion@:${PV}:g" \
+ -e 's:@projectgroupid@:com.fasterxml.jackson.dataformat:g' \
+ -e "s:@projectartifactid@:${PN}:g" \
+ "${JAVA_SRC_DIR}/com/fasterxml/jackson/dataformat/xml/PackageVersion.java.in" \
+ > "${JAVA_SRC_DIR}/com/fasterxml/jackson/dataformat/xml/PackageVersion.java" || die
+}
+
+src_test() {
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * -name "*Test*.java" \
+ ! -wholename "**/failing**/*.java" \
+ ! -name "*TestBase.java" )
+ popd
+
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+
+ # The same failure under openjdk-17 occurs upstream (running 'mvn test')
+
+ # 1) testCollection(com.fasterxml.jackson.dataformat.xml.lists.ListAsObjectTest)
+ # com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Failed to call `setAccess()` on Field 'first' due to
+ # `java.lang.reflect.InaccessibleObjectException`, problem: Unable to make field transient java.util.LinkedList$Node
+ # java.util.LinkedList.first accessible: module java.base does not "opens java.util" to unnamed module @42bb2aee
+
+ 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.util=ALL-UNNAMED )
+ fi
+
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jackson-dataformat-xml/metadata.xml b/dev-java/jackson-dataformat-xml/metadata.xml
new file mode 100644
index 000000000000..8891308e2cbd
--- /dev/null
+++ b/dev-java/jackson-dataformat-xml/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+ <longdescription>
+ Data format extension for Jackson to offer alternative support for serializing POJOs as XML and deserializing XML as pojos.
+ </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-dataformat-yaml/Manifest b/dev-java/jackson-dataformat-yaml/Manifest
new file mode 100644
index 000000000000..3788f2029f74
--- /dev/null
+++ b/dev-java/jackson-dataformat-yaml/Manifest
@@ -0,0 +1 @@
+DIST jackson-dataformats-text-2.13.4.tar.gz 3530892 BLAKE2B 3cbfcbbd33aeac67476caa453b77c19a1da88a9fb9482360bf427af3f41d689a04fc1ecb28d4424c5bfd7436979f1b03c215ca88a0064338f53dfd169f288562 SHA512 792f416c7cabd639b42bd93205e55328ace53c093e59d57eeaedc27a61358527515031c70dd503702471a13237f6389ca118e453da0ab002e20a531885d58a11
diff --git a/dev-java/jackson-dataformat-yaml/jackson-dataformat-yaml-2.13.4-r1.ebuild b/dev-java/jackson-dataformat-yaml/jackson-dataformat-yaml-2.13.4-r1.ebuild
new file mode 100644
index 000000000000..a852610200cc
--- /dev/null
+++ b/dev-java/jackson-dataformat-yaml/jackson-dataformat-yaml-2.13.4-r1.ebuild
@@ -0,0 +1,60 @@
+# 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/FasterXML/jackson-dataformats-text/archive/jackson-dataformats-text-2.13.4.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-dataformat-yaml-2.13.4.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.13.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Support for reading and writing YAML-encoded data via Jackson abstractions"
+HOMEPAGE="https://github.com/FasterXML/jackson-dataformats-text"
+SRC_URI="https://github.com/FasterXML/jackson-dataformats-text/archive/jackson-dataformats-text-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ ~dev-java/jackson-core-${PV}:0
+ ~dev-java/jackson-databind-${PV}.1:0
+ dev-java/snakeyaml:0
+ >=virtual/jdk-11:*
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( README.md release-notes/{CREDITS,VERSION} )
+
+S="${WORKDIR}/jackson-dataformats-text-jackson-dataformats-text-${PV}/yaml"
+
+JAVA_CLASSPATH_EXTRA="jackson-core,jackson-databind,snakeyaml"
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+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"
+JAVA_TEST_EXCLUDES=(
+ # Upstream's usual exclude pattern: "**/failing**/*.java"
+ com.fasterxml.jackson.dataformat.yaml.failing.ObjectIdWithTree2Test
+ com.fasterxml.jackson.dataformat.yaml.failing.PolymorphicWithObjectId25Test
+ com.fasterxml.jackson.dataformat.yaml.failing.SimpleGeneration215Test
+)
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+
+ sed -e 's:@package@:com.fasterxml.jackson.dataformat.yaml:g' \
+ -e "s:@projectversion@:${PV}:g" \
+ -e 's:@projectgroupid@:com.fasterxml.jackson.dataformat:g' \
+ -e "s:@projectartifactid@:${PN}:g" \
+ "${JAVA_SRC_DIR}/com/fasterxml/jackson/dataformat/yaml/PackageVersion.java.in" \
+ > "${JAVA_SRC_DIR}/com/fasterxml/jackson/dataformat/yaml/PackageVersion.java" || die
+}
diff --git a/dev-java/jackson-dataformat-yaml/metadata.xml b/dev-java/jackson-dataformat-yaml/metadata.xml
new file mode 100644
index 000000000000..bc9ae704cd03
--- /dev/null
+++ b/dev-java/jackson-dataformat-yaml/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">FasterXML/jackson-dataformats-text</remote-id>
+ <bugs-to>https://github.com/FasterXML/jackson-dataformats-text/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jackson-module-jakarta-xmlbind/Manifest b/dev-java/jackson-module-jakarta-xmlbind/Manifest
new file mode 100644
index 000000000000..9066121ef023
--- /dev/null
+++ b/dev-java/jackson-module-jakarta-xmlbind/Manifest
@@ -0,0 +1 @@
+DIST jackson-module-jakarta-xmlbind-2.13.4.tar.gz 2146134 BLAKE2B ae20a115464a052a8403172706025fc595d6e6aeafda60cf3cce784e1e0a29f38d672fb5205e9dbd74de1ef9615f3bfd0268711d9992c123cac0ef692e59be3a SHA512 0706566a9e5e68697d54319a425fde53948ad610a6eb9519d2e02d375ea280468c7e9e3d5ff4378535ed3a71480f207257a558f73819b1b81edc69f9d3c317a8
diff --git a/dev-java/jackson-module-jakarta-xmlbind/jackson-module-jakarta-xmlbind-2.13.4-r1.ebuild b/dev-java/jackson-module-jakarta-xmlbind/jackson-module-jakarta-xmlbind-2.13.4-r1.ebuild
new file mode 100644
index 000000000000..afca2db73bd3
--- /dev/null
+++ b/dev-java/jackson-module-jakarta-xmlbind/jackson-module-jakarta-xmlbind-2.13.4-r1.ebuild
@@ -0,0 +1,79 @@
+# 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/FasterXML/jackson-modules-base/archive/jackson-modules-base-2.13.4.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jackson-module-jakarta-xmlbind-2.13.4.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.fasterxml.jackson.module:jackson-module-jakarta-xmlbind-annotations:2.13.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Support for using Jakarta XML Bind (aka JAXB 3.0) annotations"
+HOMEPAGE="https://github.com/FasterXML/jackson-modules-base"
+SRC_URI="https://github.com/FasterXML/jackson-modules-base/archive/jackson-modules-base-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# com.fasterxml.jackson.core:jackson-annotations:2.13.4 -> >=dev-java/jackson-annotations-2.13.4:2
+# com.fasterxml.jackson.core:jackson-core:2.13.4 -> >=dev-java/jackson-core-2.13.4:0
+# com.fasterxml.jackson.core:jackson-databind:2.13.4 -> >=dev-java/jackson-databind-2.13.4:0
+# jakarta.activation:jakarta.activation-api:2.1.0 -> >=dev-java/jakarta-activation-api-2.1.0:2
+# jakarta.xml.bind:jakarta.xml.bind-api:3.0.1 -> >=dev-java/jaxb-api-3.0.1:3
+
+CP_DEPEND="
+ ~dev-java/jackson-annotations-${PV}:2
+ ~dev-java/jackson-core-${PV}:0
+ ~dev-java/jackson-databind-${PV}.1:0
+ dev-java/jakarta-activation:1
+ dev-java/jaxb-api:4
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.glassfish.jaxb:jaxb-runtime:3.0.1 -> >=dev-java/jaxb-runtime-4.0.0:4
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/jaxb-runtime:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/jackson-modules-base-jackson-modules-base-${PV}/jakarta-xmlbind/"
+
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="jaxb-runtime-4,junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+JAVA_TEST_EXCLUDES=(
+ # Upstream does not run these
+ com.fasterxml.jackson.module.jakarta.xmlbind.failing.TestUnwrapping
+ com.fasterxml.jackson.module.jakarta.xmlbind.failing.TestXmlID3
+)
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ sed -e 's:@package@:com.fasterxml.jackson.module.jakarta.xmlbind:g' \
+ -e "s:@projectversion@:${PV}:g" \
+ -e 's:@projectgroupid@:com.fasterxml.jackson.module:g' \
+ -e "s:@projectartifactid@:jackson-module-jakarta-xmlbind-annotations:g" \
+ "${JAVA_SRC_DIR}/com/fasterxml/jackson/module/jakarta/xmlbind/PackageVersion.java.in" \
+ > "${JAVA_SRC_DIR}/com/fasterxml/jackson/module/jakarta/xmlbind/PackageVersion.java" || die
+}
diff --git a/dev-java/jackson-module-jakarta-xmlbind/metadata.xml b/dev-java/jackson-module-jakarta-xmlbind/metadata.xml
new file mode 100644
index 000000000000..b32b36b8af8e
--- /dev/null
+++ b/dev-java/jackson-module-jakarta-xmlbind/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+ <longdescription>
+ Support for using Jakarta XML Bind (aka JAXB 3.0) annotations as an alternative to \"native\" Jackson annotations, for configuring data-binding.
+ </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/jackson/Manifest b/dev-java/jackson/Manifest
deleted file mode 100644
index 2152b09306d9..000000000000
--- a/dev-java/jackson/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jackson-core-2.9.10.tar.gz 416803 BLAKE2B 9d8efc39b09b9619da301dc7fec3bd6339133c3fea3af46bbd77530883662b3b1d4ba2536cb8bd7ff7609a79ae6cfce135a3a5d75076bb7884e5e2878ac0107b SHA512 26b22e3fa60190877f5227c936ee32fdb4014347307904b140a6c787bb732df598b0ed48e7014cb6e51172abe52783e4d866f135706c8ebc77e24bdf087e9e71
diff --git a/dev-java/jackson/jackson-2.9.10.ebuild b/dev-java/jackson/jackson-2.9.10.ebuild
deleted file mode 100644
index b495fe7cf278..000000000000
--- a/dev-java/jackson/jackson-2.9.10.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 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
-
-DESCRIPTION="High-performance JSON processor"
-HOMEPAGE="https://github.com/FasterXML/jackson-core"
-SRC_URI="https://github.com/FasterXML/${PN}-core/archive/${PN}-core-${PV}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.7"
-DEPEND=">=virtual/jdk-1.7
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${PN}-core-${PN}-core-${PV}"
-JAVA_SRC_DIR="src/main/java"
-
-src_prepare() {
- default
-
- sed -e 's:@package@:com.fasterxml.jackson.core.json:g' \
- -e "s:@projectversion@:${PV}:g" \
- -e 's:@projectgroupid@:com.fasterxml.jackson.core:g' \
- -e 's:@projectartifactid@:jackson-core:g' \
- "${JAVA_SRC_DIR}/com/fasterxml/jackson/core/json/PackageVersion.java.in" \
- > "${JAVA_SRC_DIR}/com/fasterxml/jackson/core/json/PackageVersion.java" || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README.md release-notes/{CREDITS,VERSION}-2.x
-}
-
-src_test() {
- cd src/test/java || die
-
- local CP=".:../resources:${S}/${PN}.jar:$(java-pkg_getjars junit-4)"
- local TESTS=$(find * -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/jackson/metadata.xml b/dev-java/jackson/metadata.xml
deleted file mode 100644
index ff78e167851c..000000000000
--- a/dev-java/jackson/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">FasterXML/jackson-core</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jacl/jacl-1.4.1-r1.ebuild b/dev-java/jacl/jacl-1.4.1-r1.ebuild
deleted file mode 100644
index 1b1b4647978a..000000000000
--- a/dev-java/jacl/jacl-1.4.1-r1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${P//-}"
-
-DESCRIPTION="Jacl is an implementation of Tcl written in Java"
-HOMEPAGE="http://tcljava.sourceforge.net"
-SRC_URI="mirror://sourceforge/tcljava/${MY_P}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="doc"
-
-CDEPEND=">=dev-lang/tcl-8.4.5:*"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CRDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_configure() {
- :
-}
-
-src_compile() {
- rm -rf src/{Test.java,empty,tests,janino} || die
- java-pkg-simple_src_compile
- mv src/jacl/tcl src/ || die
- java-pkg_addres "${PN}.jar" src/ -name "*.tcl"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher jaclsh --main tcl.lang.Shell
- dodoc README ChangeLog known_issues.txt
-}
diff --git a/dev-java/jacl/jacl-1.4.1-r2.ebuild b/dev-java/jacl/jacl-1.4.1-r2.ebuild
new file mode 100644
index 000000000000..53e9a0ae85f6
--- /dev/null
+++ b/dev-java/jacl/jacl-1.4.1-r2.ebuild
@@ -0,0 +1,52 @@
+# 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
+
+DESCRIPTION="Jacl is an implementation of Tcl written in Java"
+HOMEPAGE="http://tcljava.sourceforge.net"
+SRC_URI="https://downloads.sourceforge.net/project/tcljava/jacl/${PV}/jacl${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+IUSE="doc"
+
+CDEPEND=">=dev-lang/tcl-8.4.5:*"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CRDEPEND}
+ >=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${PN}${PV}"
+
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ rm -rf src/{Test.java,empty,tests,janino} || die
+ java-pkg-simple_src_compile
+ mv src/jacl/tcl src/ || die
+ java-pkg_addres "${PN}.jar" src/ -name "*.tcl"
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_dolauncher jaclsh --main tcl.lang.Shell
+ dodoc README ChangeLog known_issues.txt
+}
diff --git a/dev-java/jacl/metadata.xml b/dev-java/jacl/metadata.xml
index 3b8f63c2a9f6..c574f221537a 100644
--- a/dev-java/jacl/metadata.xml
+++ b/dev-java/jacl/metadata.xml
@@ -1,40 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<longdescription>
-The Tcl/Java project's goal is to make integrating the Java platform and the
-Tcl scripting language as easy as possible. The project actually consists of
-two distinct packages, called Tcl Blend and Jacl. It is important to
-understand what each package provides and in what situations one might choose
-to use Jacl or Tcl Blend.
+ The Tcl/Java project's goal is to make integrating the Java platform and the
+ Tcl scripting language as easy as possible. The project actually consists of
+ two distinct packages, called Tcl Blend and Jacl. It is important to
+ understand what each package provides and in what situations one might choose
+ to use Jacl or Tcl Blend.
-Tcl Blend is a Tcl extension that makes use of JNI to facilitate communication
-between a Java interpreter and a Tcl interpreter. Tcl Blend is typically used
-to load a Java interpreter into an existing Tcl process, so that functionality
-implemented in Java can be accessed via Tcl. One can also load Tcl Blend and
-Tcl into a Java process, which is a great way to add scripting functionality
-to an existing Java application. Because Tcl Blend is a normal Tcl extension,
-one can use it with other popular Tcl extensions like Tk, Expect, and Itcl.
+ Tcl Blend is a Tcl extension that makes use of JNI to facilitate communication
+ between a Java interpreter and a Tcl interpreter. Tcl Blend is typically used
+ to load a Java interpreter into an existing Tcl process, so that functionality
+ implemented in Java can be accessed via Tcl. One can also load Tcl Blend and
+ Tcl into a Java process, which is a great way to add scripting functionality
+ to an existing Java application. Because Tcl Blend is a normal Tcl extension,
+ one can use it with other popular Tcl extensions like Tk, Expect, and Itcl.
-Jacl is a self-contained implementation of a Tcl interpreter, written entirely
-in Java. Jacl also includes features that facilitate communication between a
-Java interpreter and a Tcl interpreter. Jacl is typically used to incorporate
-scripting functionality into an existing Java application. For users who want
-to avoid adding any native code to their Java applications, Jacl is the ideal
-solution.
+ Jacl is a self-contained implementation of a Tcl interpreter, written entirely
+ in Java. Jacl also includes features that facilitate communication between a
+ Java interpreter and a Tcl interpreter. Jacl is typically used to incorporate
+ scripting functionality into an existing Java application. For users who want
+ to avoid adding any native code to their Java applications, Jacl is the ideal
+ solution.
-Tcl Blend and Jacl define both a Tcl API and a Java API that make it easy to
-call Java code from Tcl or call Tcl code from Java. For example, one could
-allocate a Java object in a Tcl script and interactively invoke Java methods
-on the object. It is also easy to use the supplied API to evaluate a Tcl
-procedure from a Java method or implement Tcl procudures in Java. The flexible
-API and wealth of implementation options provided by the Tcl/Java project make
-integrating Tcl and Java easy.
-</longdescription>
+ Tcl Blend and Jacl define both a Tcl API and a Java API that make it easy to
+ call Java code from Tcl or call Tcl code from Java. For example, one could
+ allocate a Java object in a Tcl script and interactively invoke Java methods
+ on the object. It is also easy to use the supplied API to evaluate a Tcl
+ procedure from a Java method or implement Tcl procudures in Java. The flexible
+ API and wealth of implementation options provided by the Tcl/Java project make
+ integrating Tcl and Java easy.
+ </longdescription>
<upstream>
<remote-id type="sourceforge">tcljava</remote-id>
</upstream>
diff --git a/dev-java/jacoco/Manifest b/dev-java/jacoco/Manifest
deleted file mode 100644
index f472f9d8ba9e..000000000000
--- a/dev-java/jacoco/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST jacoco-0.7.9-agent.jar 4078 BLAKE2B 40d44cbbaecdd4613abed5c065c2ee320208fb1bc7e8b0a5b1e65f2ce59424967c49ee3c286ab59adc504efd2f8dac0a08c2716b400b9dae63ce5cb583a4ac1c SHA512 b0dc423039bd03bbccb62667c5dd6e2838bf75a8d98b0bb5eb51c6ebfbe3fbc6cdda86ac9e15cd2e06165202d40ddfdcc5a8553681d78026fc766ebe2f81f17e
-DIST jacoco-0.7.9-ant.jar 18096 BLAKE2B 08b5831a0321ee5620d71fbdb397bb1854c1fbd8d3d134ef8b924c67d4aff21c84875df8c2e6ec16d4a658a79ebeeb6af0ab5d653bfa87498221c38d163ce681 SHA512 8238cf2ee6233199280eaa271db8a189c33c9bef3508a7bdffc9363e6afaba90ed38d9d53eb2a88ddc3b214f1f25d7f872d6109942de7a8987e84392fb958f72
-DIST jacoco-0.7.9-core.jar 117366 BLAKE2B 2c0278cc688a26f429d78066d76148ac94b2af8bcad4631666a53b4977f136c9379e8fcc817dfede088f3df0b179220eb8d9d915d599b0a076edc0d9e86a2638 SHA512 7ac184a92aa0054eb44bfadd54c42de238da6193e9536b26fe67c2d4b65398e9ed7c471daa69a98d7138fc0ee5035a8ef40731e45363435cd30df959eb80e5f6
-DIST jacoco-0.7.9-report.jar 112521 BLAKE2B 9faaf71d98b4b0ee19f78785218de47f2a5ac52bfddf80256ff00ef3786177a3f37e53aa75dd8d373a247019a3a989532eb1a5337f7af4006e2d4133c3a834c4 SHA512 128b254767d627a185e5794b3c0ea479628e2eba05a4188c613c4661da99f3330d4491640860a0ce33fe2663ff7c218772d09dc22237c00f78f60f6b9dcc0990
diff --git a/dev-java/jacoco/jacoco-0.7.9.ebuild b/dev-java/jacoco/jacoco-0.7.9.ebuild
deleted file mode 100644
index 14007c228165..000000000000
--- a/dev-java/jacoco/jacoco-0.7.9.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java Code Coverage library"
-HOMEPAGE="https://eclemma.org/jacoco/"
-
-SRC_URI="
- https://repo1.maven.org/maven2/org/${PN}/org.${PN}.report/${PV}/org.${PN}.report-${PV}-sources.jar -> ${P}-report.jar
- https://repo1.maven.org/maven2/org/${PN}/org.${PN}.agent/${PV}/org.${PN}.agent-${PV}-sources.jar -> ${P}-agent.jar
- https://repo1.maven.org/maven2/org/${PN}/org.${PN}.core/${PV}/org.${PN}.core-${PV}-sources.jar -> ${P}-core.jar
- https://repo1.maven.org/maven2/org/${PN}/org.${PN}.ant/${PV}/org.${PN}.ant-${PV}-sources.jar -> ${P}-ant.jar"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="
- dev-java/ant-core:0
- dev-java/asm:4"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="
- asm-4
- ant-core
-"
diff --git a/dev-java/jacoco/metadata.xml b/dev-java/jacoco/metadata.xml
deleted file mode 100644
index 2c99ae733818..000000000000
--- a/dev-java/jacoco/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- </maintainer>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/jade/Manifest b/dev-java/jade/Manifest
deleted file mode 100644
index 81ffd46eb36a..000000000000
--- a/dev-java/jade/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jade-3.3.zip 1677444 BLAKE2B 5503102ac3e17031b873900a1b279eba1749a25d93c901c98e04c93ee7218f7a52e1fc9408c91a730c36f7daf4709d381f2321a0cfb8a93f8fe86e56b495a870 SHA512 b191de5d5406276cc5ad382f4b0627f2f2b9eef3aba46d8c23e3bb4f6489808450755e6f360a2d39a1eed88c22cd4dd2d35ab140e55ffe8f021e89709a094562
diff --git a/dev-java/jade/jade-3.3-r3.ebuild b/dev-java/jade/jade-3.3-r3.ebuild
deleted file mode 100644
index bd88a7daf00d..000000000000
--- a/dev-java/jade/jade-3.3-r3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JADE is FIPA-compliant Java Agent Development Environment"
-HOMEPAGE="http://jade.cselt.it/"
-SRC_URI="mirror://gentoo/${P}.zip"
-
-LICENSE="LGPL-2"
-KEYWORDS="amd64 x86"
-SLOT="0"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${PN}"
-
-JAVA_ENCODING="ISO-8859-1"
-JAVA_SRC_DIR="src"
diff --git a/dev-java/jade/metadata.xml b/dev-java/jade/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jade/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jai-imageio-core/Manifest b/dev-java/jai-imageio-core/Manifest
new file mode 100644
index 000000000000..0ec4d3f6e9f9
--- /dev/null
+++ b/dev-java/jai-imageio-core/Manifest
@@ -0,0 +1 @@
+DIST jai-imageio-core-1.4.0.tar.gz 1542191 BLAKE2B 3dc8de7cd8e375eb3b4e5a6524e0280bf295ffb0d29b2989a35789f8974f27a6ba50f1b3b82c88af0992cf6ce7b5fba28e38f2892b3ac34b2c20d7245035f2ec SHA512 20d361cbb040b692717acad56d12034ff695859f125acbac080092fb0423f5338bfbd9a39a968b67712f4f0a62cc02a51dc9e2cffbb886efb379c8a923a11ad8
diff --git a/dev-java/jai-imageio-core/jai-imageio-core-1.4.0.ebuild b/dev-java/jai-imageio-core/jai-imageio-core-1.4.0.ebuild
new file mode 100644
index 000000000000..cf43149a135d
--- /dev/null
+++ b/dev-java/jai-imageio-core/jai-imageio-core-1.4.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom jai-imageio-core-jai-imageio-core-1.4.0/pom.xml --download-uri https://github.com/jai-imageio/jai-imageio-core/archive/refs/tags/jai-imageio-core-1.4.0.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild jai-imageio-core-1.4.0.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.github.jai-imageio:jai-imageio-core:1.4.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java Advanced Imaging Image I/O Tools API core (standalone)"
+HOMEPAGE="https://github.com/jai-imageio/jai-imageio-core"
+SRC_URI="https://github.com/jai-imageio/${PN}/archive/refs/tags/${P}.tar.gz"
+
+LICENSE="Sun-BSD-no-nuclear-2005"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}"
+
+JAVA_SRC_DIR="${PN}-${P}/src/main/java"
+JAVA_RESOURCE_DIRS="${PN}-${P}/src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="${PN}-${P}/src/test/java"
+JAVA_TEST_RESOURCE_DIRS="${PN}-${P}/src/test/resources"
diff --git a/dev-java/jai-imageio-core/metadata.xml b/dev-java/jai-imageio-core/metadata.xml
new file mode 100644
index 000000000000..5d1a94af1774
--- /dev/null
+++ b/dev-java/jai-imageio-core/metadata.xml
@@ -0,0 +1,16 @@
+<?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>
+ <longdescription>
+ Java Advanced Imaging Image I/O Tools API core, but without the classes involved
+ with javax.media.jai dependencies, JPEG2000 or codecLibJIIO, meaning that this
+ library can be distributed under the modified BSD license and should be GPL compatible.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jai-imageio/jai-imageio-core</remote-id>
+ <bugs-to>https://github.com/jai-imageio/jai-imageio-core/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jai-imageio-jpeg2000/Manifest b/dev-java/jai-imageio-jpeg2000/Manifest
new file mode 100644
index 000000000000..29f1bdc2f670
--- /dev/null
+++ b/dev-java/jai-imageio-jpeg2000/Manifest
@@ -0,0 +1 @@
+DIST jai-imageio-jpeg2000-1.4.0.tar.gz 499964 BLAKE2B 219b53d2264f819ed808495e5c559e8350f965ba100696f28e817ef27cf458fe2b05401957d81a3f4f208f59888a0607b72e4529fdfd37c6763cd1b8da1f2f5d SHA512 6c1129f735d1e6578e8feb233fe5462a62f503979d7afad9942acd749b39714e352df6133fad0b99f4fd84af82de10efbf91196eb0cc9d40c080c9546948f4eb
diff --git a/dev-java/jai-imageio-jpeg2000/jai-imageio-jpeg2000-1.4.0.ebuild b/dev-java/jai-imageio-jpeg2000/jai-imageio-jpeg2000-1.4.0.ebuild
new file mode 100644
index 000000000000..d6111d3e33ce
--- /dev/null
+++ b/dev-java/jai-imageio-jpeg2000/jai-imageio-jpeg2000-1.4.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom jai-imageio-jpeg2000-jai-imageio-jpeg2000-1.4.0/pom.xml --download-uri https://github.com/jai-imageio/jai-imageio-jpeg2000/archive/refs/tags/jai-imageio-jpeg2000-1.4.0.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild jai-imageio-jpeg2000-1.4.0.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.github.jai-imageio:jai-imageio-jpeg2000:1.4.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JPEG2000 support for Java Advanced Imaging Image I/O Tools API"
+HOMEPAGE="https://github.com/jai-imageio/jai-imageio-jpeg2000"
+SRC_URI="https://github.com/jai-imageio/${PN}/archive/refs/tags/${P}.tar.gz"
+
+LICENSE="Sun-BSD-no-nuclear-2005"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+# Common dependencies
+# POM: ${PN}-${P}/pom.xml
+# com.github.jai-imageio:jai-imageio-core:1.4.0 -> >=dev-java/jai-imageio-core-1.4.0:0
+
+CDEPEND="dev-java/jai-imageio-core:0"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:* "
+
+S="${WORKDIR}"
+
+JAVA_GENTOO_CLASSPATH="jai-imageio-core"
+JAVA_SRC_DIR="${PN}-${P}/src/main/java"
+JAVA_RESOURCE_DIRS="${PN}-${P}/src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="${PN}-${P}/src/test/java"
+JAVA_TEST_RESOURCE_DIRS="${PN}-${P}/src/test/resources"
diff --git a/dev-java/jai-imageio-jpeg2000/metadata.xml b/dev-java/jai-imageio-jpeg2000/metadata.xml
new file mode 100644
index 000000000000..80a68b04a32d
--- /dev/null
+++ b/dev-java/jai-imageio-jpeg2000/metadata.xml
@@ -0,0 +1,17 @@
+<?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>
+ <longdescription>
+ JPEG2000 support for Java Advanced Imaging Image I/O Tools API core.
+ This module is licensed under the [JJ2000 license](LICENSE.txt) and
+ is therefore NOT compatible with the GPL 3 license. It should be
+ compatible with the LGPL 2.1 license.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jai-imageio/jai-imageio-jpeg2000</remote-id>
+ <bugs-to>https://github.com/jai-imageio/jai-imageio-jpeg2000/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-activation-api/Manifest b/dev-java/jakarta-activation-api/Manifest
index 68b6cf0f2c4f..be3b04e2f0c9 100644
--- a/dev-java/jakarta-activation-api/Manifest
+++ b/dev-java/jakarta-activation-api/Manifest
@@ -1 +1,2 @@
-DIST jakarta-activation-2.0.1.tar.gz 133807 BLAKE2B 3b793fc767601cc1406482facb0456efd1f784371dff602e71f579a2c74f8e66affed384c8ce3b6aa7c2abfcb5cb0ff5f781ea109829c03f645099fb52016e21 SHA512 51e60d851b9f2027944ab24b248b3c7c19028a504ccf5f92a61495ffa65176df78c63c25e91de4a22d6aa9a1989db274f419f91693a21f052875635b8b21bad1
+DIST jakarta-activation-1.2.2.tar.gz 123311 BLAKE2B 1d33b9980f1843066ce1311dfcc81a897c23fd2667de7bf6ca9590b78e165b3ffe38230d8ccb2598b2e702a126849008421a21f97deceaf0a66ce0e9488ce5ea SHA512 4ea88a32b89a752e1dc8e6cc2a47b978c42e1a6a7103bda87b717cc5845ec6b9cce147362597959d188e02f7328decea620e0b7e425dede546a1d163ede47c10
+DIST jakarta-activation-api-2.1.1.tar.gz 127696 BLAKE2B d0f89e64a02fa88e251ab6f5eafa1001c987147c2163862e270b36e86c7c811bb32bfbab1aba32c8c4b8e7eab4eeed7478618974191b2f5386a0194a6a556a19 SHA512 95dd5b6696cf3ec66ce843334375740057c37dc5b4503173f607c95bd6020e8d0b8f87ec13b6d9be4d397096300cc0acb323b5700ad7ff0428a178272c1da41f
diff --git a/dev-java/jakarta-activation-api/jakarta-activation-api-1.2.2-r1.ebuild b/dev-java/jakarta-activation-api/jakarta-activation-api-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..20b19ae30fba
--- /dev/null
+++ b/dev-java/jakarta-activation-api/jakarta-activation-api-1.2.2-r1.ebuild
@@ -0,0 +1,48 @@
+# 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="jakarta.activation:jakarta.activation-api:1.2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Activation API jar"
+HOMEPAGE="https://jakartaee.github.io/jaf-api/"
+SRC_URI="https://github.com/jakartaee/jaf-api/archive/${PV}.tar.gz -> jakarta-activation-${PV}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/jaf-api-${PV}/activation"
+
+JAVA_ENCODING="iso-8859-1"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # these files are not present in the upstream jar
+ find ${JAVA_RESOURCE_DIRS} -name "*.default" -delete || die "Failed to delete *.default files"
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ # we remove implementation classes from the api
+ zip -d ${PN}.jar "com/*" || die "Failed to remove implementation classes"
+}
+
+src_install() {
+ # we remove the implementation sources so that they don't land in sources
+ rm -fr ${JAVA_SRC_DIR}/com || "Failed to delete implementation sources"
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jakarta-activation-api/jakarta-activation-api-2.0.1.ebuild b/dev-java/jakarta-activation-api/jakarta-activation-api-2.0.1.ebuild
deleted file mode 100644
index c3224df283ed..000000000000
--- a/dev-java/jakarta-activation-api/jakarta-activation-api-2.0.1.ebuild
+++ /dev/null
@@ -1,33 +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 pom.xml --download-uri https://github.com/eclipse-ee4j/jaf/archive/refs/tags/2.0.1.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jakarta-activation-2.0.1.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="jakarta.activation:jakarta.activation-api:2.0.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Jakarta Activation API jar"
-HOMEPAGE="https://eclipse-ee4j.github.io/jaf/"
-SRC_URI="https://github.com/eclipse-ee4j/jaf/archive/refs/tags/${PV}.tar.gz -> jakarta-activation-${PV}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-DEPEND="
- >=virtual/jdk-11:*
-"
-
-RDEPEND="
- >=virtual/jre-11:*
-"
-
-S="${WORKDIR}/jaf-${PV}/activation"
-
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/jakarta-activation-api/jakarta-activation-api-2.1.1.ebuild b/dev-java/jakarta-activation-api/jakarta-activation-api-2.1.1.ebuild
new file mode 100644
index 000000000000..81fd0c8051e6
--- /dev/null
+++ b/dev-java/jakarta-activation-api/jakarta-activation-api-2.1.1.ebuild
@@ -0,0 +1,26 @@
+# 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="jakarta.activation:jakarta.activation-api:2.1.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Activation API jar"
+HOMEPAGE="https://jakartaee.github.io/jaf-api/"
+SRC_URI="https://github.com/jakartaee/jaf-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/jaf-api-${PV}/api"
+
+LICENSE="EPL-1.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/jakarta-activation-api/metadata.xml b/dev-java/jakarta-activation-api/metadata.xml
index 55432e8ce804..26d86f56dec0 100644
--- a/dev-java/jakarta-activation-api/metadata.xml
+++ b/dev-java/jakarta-activation-api/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">eclipse-ee4j/jaf</remote-id>
- <bugs-to>https://github.com/eclipse-ee4j/jaf/issues</bugs-to>
+ <remote-id type="github">jakartaee/jaf-api</remote-id>
+ <bugs-to>https://github.com/jakartaee/jaf-api/issues</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jakarta-activation/Manifest b/dev-java/jakarta-activation/Manifest
new file mode 100644
index 000000000000..69ab6e98ddb0
--- /dev/null
+++ b/dev-java/jakarta-activation/Manifest
@@ -0,0 +1,2 @@
+DIST jakarta-activation-1.2.2.tar.gz 123311 BLAKE2B 1d33b9980f1843066ce1311dfcc81a897c23fd2667de7bf6ca9590b78e165b3ffe38230d8ccb2598b2e702a126849008421a21f97deceaf0a66ce0e9488ce5ea SHA512 4ea88a32b89a752e1dc8e6cc2a47b978c42e1a6a7103bda87b717cc5845ec6b9cce147362597959d188e02f7328decea620e0b7e425dede546a1d163ede47c10
+DIST jakarta-activation-2.0.1.tar.gz 133817 BLAKE2B bd74e3df8a2d75c137cd3e25c9689296c4827f626c86455da4e10dd8b743e8ffbd5c502162f4f1f7399c4f1e1f2eab6632e9a69e67f017a7f8f111ea4a2ac836 SHA512 f5672f20588e894e7fb5248da7c69c1c8cebb3053342013f713fd58011a2ef069e9abfff8948613b19fd3404151f950d083aeda77ab6a79baaf673658016bfd6
diff --git a/dev-java/jakarta-activation/jakarta-activation-1.2.2-r1.ebuild b/dev-java/jakarta-activation/jakarta-activation-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..1483a29bde02
--- /dev/null
+++ b/dev-java/jakarta-activation/jakarta-activation-1.2.2-r1.ebuild
@@ -0,0 +1,49 @@
+# 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.sun.activation:jakarta.activation:1.2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Activation"
+HOMEPAGE="https://jakartaee.github.io/jaf-api/"
+SRC_URI="https://github.com/jakartaee/jaf-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/jaf-api-${PV}/activation"
+
+LICENSE="EPL-1.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CDEPEND="dev-java/jakarta-activation-api:1"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_ENCODING="iso-8859-1"
+
+JAVA_GENTOO_CLASSPATH="jakarta-activation-api-1"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ find ${JAVA_RESOURCE_DIRS} -name "*.default" -delete || die "Failed to delete *.default files"
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # we remove API classes from the jar file
+ # removing javax sources in src_prepare does not work - compilation fails with:
+ # src/main/java/module-info.java:12: error: package is empty or does not exist: javax.activation
+ # exports javax.activation;
+
+ zip -d ${PN}.jar "javax/*" || die "Failed to remove API classes"
+}
diff --git a/dev-java/jakarta-activation/jakarta-activation-2.0.1-r1.ebuild b/dev-java/jakarta-activation/jakarta-activation-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..7b2fc15669ec
--- /dev/null
+++ b/dev-java/jakarta-activation/jakarta-activation-2.0.1-r1.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.sun.activation:jakarta.activation:2.0.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Activation"
+HOMEPAGE="https://jakartaee.github.io/jaf-api/"
+SRC_URI="https://github.com/jakartaee/jaf-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/jaf-api-${PV}/activation"
+
+LICENSE="EPL-1.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:* "
+RDEPEND=">=virtual/jre-1.8:* "
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/jakarta-activation/metadata.xml b/dev-java/jakarta-activation/metadata.xml
new file mode 100644
index 000000000000..9641aeda8c6f
--- /dev/null
+++ b/dev-java/jakarta-activation/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/jakartaee/jaf-api/issues</bugs-to>
+ <remote-id type="github">jakartaee/jaf-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-annotations-api/Manifest b/dev-java/jakarta-annotations-api/Manifest
new file mode 100644
index 000000000000..b27c2a5598e8
--- /dev/null
+++ b/dev-java/jakarta-annotations-api/Manifest
@@ -0,0 +1 @@
+DIST jakarta-annotations-api-2.1.1.tar.gz 83788 BLAKE2B be9904337199bd8cf9e5748d53b4536b3562446d499992b97c7e413e2e2d9ae0c8ba50d601950a0feec8bce4c4c35093b7b8f87ad60ea407452f502996045e54 SHA512 8a61cb8a9da55efd7c5172aa9a134eae7d94489a66ef749c619a7fc596122fd50f3dda7a954d78f664132c72ce999d2d3ad01b70e1d2cb2072c881327de11d82
diff --git a/dev-java/jakarta-annotations-api/jakarta-annotations-api-2.1.1.ebuild b/dev-java/jakarta-annotations-api/jakarta-annotations-api-2.1.1.ebuild
new file mode 100644
index 000000000000..2d9118c013cd
--- /dev/null
+++ b/dev-java/jakarta-annotations-api/jakarta-annotations-api-2.1.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.annotation:jakarta.annotation-api:2.1.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Annotations API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.ca"
+SRC_URI="https://github.com/eclipse-ee4j/${PN/jakarta/common}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-11:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/${P/jakarta/common}"
+
+JAVA_SRC_DIR="api/src/main/java"
diff --git a/dev-java/jakarta-annotations-api/metadata.xml b/dev-java/jakarta-annotations-api/metadata.xml
new file mode 100644
index 000000000000..9c98d5e873bc
--- /dev/null
+++ b/dev-java/jakarta-annotations-api/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">eclipse-ee4j/common-annotations-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-el-api/Manifest b/dev-java/jakarta-el-api/Manifest
new file mode 100644
index 000000000000..0463d0c2a8ea
--- /dev/null
+++ b/dev-java/jakarta-el-api/Manifest
@@ -0,0 +1 @@
+DIST jakarta-el-api-5.0.1.tar.gz 148830 BLAKE2B 408d71576bc2f4de8bae9f54ddd10373d5f6674280a06e89cbda005a34c1574d6602f51a22c221a4aecc8a65848b40aa7e25781b0043cf6426c7b48f364e1136 SHA512 ddbaa201c354f79d99df9b6470eac3bca31207137eae3e5a6ac1b16bcd2ec382239aa64765d485c488ebd925b72b4023c6724bafd726557b9828a3c085982d24
diff --git a/dev-java/jakarta-el-api/jakarta-el-api-5.0.1-r1.ebuild b/dev-java/jakarta-el-api/jakarta-el-api-5.0.1-r1.ebuild
new file mode 100644
index 000000000000..9147cace3d1f
--- /dev/null
+++ b/dev-java/jakarta-el-api/jakarta-el-api-5.0.1-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom api/pom.xml --download-uri https://github.com/jakartaee/expression-language/archive/5.0.1-RELEASE-api.tar.gz --slot 0 --keywords "~amd64" --ebuild jakarta-el-api-5.0.1.ebuild
+
+EAPI=8
+
+# No tests since we don't have junit-jupiter
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.el:jakarta.el-api:5.0.1"
+# JAVA_TESTING_FRAMEWORKS="junit-jupiter"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Expression Language defines an expression language for Java applications"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.el"
+SRC_URI="https://github.com/jakartaee/expression-language/archive/${PV}-RELEASE-api.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+SLOT="5.0"
+
+DEPEND=">=virtual/jdk-11:*"
+# <release>11</release>
+# https://github.com/jakartaee/expression-language/blob/5.0.1-RELEASE-api/api/pom.xml#L143
+RDEPEND=">=virtual/jre-11:*"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/expression-language-${PV}-RELEASE-api"
+
+JAVA_SRC_DIR="api/src/main/java"
diff --git a/dev-java/jakarta-el-api/metadata.xml b/dev-java/jakarta-el-api/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/jakarta-el-api/metadata.xml
@@ -0,0 +1,7 @@
+<?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/jakarta-interceptors/Manifest b/dev-java/jakarta-interceptors/Manifest
new file mode 100644
index 000000000000..33eaeb20657b
--- /dev/null
+++ b/dev-java/jakarta-interceptors/Manifest
@@ -0,0 +1 @@
+DIST jakarta-interceptors-2.1.0.tar.gz 85830 BLAKE2B 044fa06fa189a7b5dc73c1a33a04939bd895f488acabecae5564cea32419f213e75a3064578ffd462fcbf6de9212178bc389912f15f5ab0f63de729c4b6acc4d SHA512 e3a72bc181101fa550088a1ea7b284d693a4222de97a4a91e0c56d8fe1a3c50da1b56d692da73c5cfc4c36ea3bcbe15d0fa8321c8e521ea7c241a48151125bc6
diff --git a/dev-java/jakarta-interceptors/jakarta-interceptors-2.1.0.ebuild b/dev-java/jakarta-interceptors/jakarta-interceptors-2.1.0.ebuild
new file mode 100644
index 000000000000..894a7f0f3b5f
--- /dev/null
+++ b/dev-java/jakarta-interceptors/jakarta-interceptors-2.1.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom api/pom.xml --download-uri https://github.com/jakartaee/interceptors/archive/2.1.0-RELEASE.tar.gz --slot 0 --keywords "~amd64" --ebuild jakarta-interceptors-2.1.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.interceptor:jakarta.interceptor-api:2.1.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Interceptors"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.interceptors"
+SRC_URI="https://github.com/jakartaee/interceptors/archive/${PV}-RELEASE.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/jakarta-annotations-api:0
+ >=virtual/jdk-11:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/interceptors-${PV}-RELEASE"
+
+JAVA_CLASSPATH_EXTRA="jakarta-annotations-api"
+JAVA_SRC_DIR="api/src/main/java"
diff --git a/dev-java/jakarta-interceptors/metadata.xml b/dev-java/jakarta-interceptors/metadata.xml
new file mode 100644
index 000000000000..7be8f07ef964
--- /dev/null
+++ b/dev-java/jakarta-interceptors/metadata.xml
@@ -0,0 +1,13 @@
+<?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>
+ <longdescription>
+ Jakarta Interceptors defines a means of interposing on business method invocations and specific events—such as lifecycle events and timeout events—that occur on instances of Jakarta EE components and other managed classes.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jakartaee/interceptors</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-json-api/Manifest b/dev-java/jakarta-json-api/Manifest
new file mode 100644
index 000000000000..73f9313e3df5
--- /dev/null
+++ b/dev-java/jakarta-json-api/Manifest
@@ -0,0 +1 @@
+DIST jakarta-json-api-1.1.6.tar.gz 205455 BLAKE2B d928c0fbf65da992670eea0ad5a010b536ba6619b2d981a7fb02cf4cd05f00120f84dc0e19bbb4ee415de06d0c715a1e6736d11f2e1d3d8cc262f496319e389e SHA512 107fd6e48a3b3693a3019726cbe398ff7640896ffc7eac05bccee168f45be2c91baa1b673684006a3147716c274b11f1e44314b4d8fe89fbf124117fde26da1a
diff --git a/dev-java/jakarta-json-api/jakarta-json-api-1.1.6-r1.ebuild b/dev-java/jakarta-json-api/jakarta-json-api-1.1.6-r1.ebuild
new file mode 100644
index 000000000000..81ff7a0206e8
--- /dev/null
+++ b/dev-java/jakarta-json-api/jakarta-json-api-1.1.6-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.json:jakarta.json-api:1.1.6"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="jsonp"
+MY_PV="1.1-${PV}-RELEASE"
+MY_P="${MY_PN}-${MY_PV}"
+
+DESCRIPTION="JSR 374 (JSON Processing) API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jsonp"
+SRC_URI="https://github.com/eclipse-ee4j/jsonp/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( EPL-2.0 GPL-2-with-classpath-exception )"
+# Since version 2.0.0, the namespace has changed to jakarta.json
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${MY_P}"
+
+JAVA_SRC_DIR="api/src/main"
+
+DOCS=( CONTRIBUTING.md NOTICE.md README.md )
diff --git a/dev-java/jakarta-json-api/metadata.xml b/dev-java/jakarta-json-api/metadata.xml
new file mode 100644
index 000000000000..f7203c39781d
--- /dev/null
+++ b/dev-java/jakarta-json-api/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">eclipse-ee4j/jsonp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-mail-api/Manifest b/dev-java/jakarta-mail-api/Manifest
new file mode 100644
index 000000000000..f1de9f7bc250
--- /dev/null
+++ b/dev-java/jakarta-mail-api/Manifest
@@ -0,0 +1 @@
+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..0bd19f854bc1
--- /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-api/metadata.xml b/dev-java/jakarta-mail-api/metadata.xml
new file mode 100644
index 000000000000..42164ceaf82a
--- /dev/null
+++ b/dev-java/jakarta-mail-api/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+ <longdescription>
+ Jakarta Mail defines a platform-independent and protocol-independent framework to build mail and messaging applications.
+ </longdescription>
+ <upstream>
+ <changelog>https://jakartaee.github.io/mail-api/docs/CHANGES.txt</changelog>
+ <remote-id type="github">jakartaee/mail-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-mail/Manifest b/dev-java/jakarta-mail/Manifest
new file mode 100644
index 000000000000..720158c77d99
--- /dev/null
+++ b/dev-java/jakarta-mail/Manifest
@@ -0,0 +1 @@
+DIST jakarta-mail-2.0.1.tar.gz 1799232 BLAKE2B 91c8109dee5b1dd5d245df44b905435e59c4f7a888711edf19431bd3e7627d5ba4dbc34e3bd8458507c77c5fb6ed50843f45b2e8b01b7369b660055d8c99739d SHA512 42e9f82cda788b4cf73c06c8c2798a3f886fe714e4f8f4cb0356643b05acd756d46ff382333d2a9e4aaa4ed0dd5d01bc354f7e442c78be9f59cca25d4c23a3ec
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
new file mode 100644
index 000000000000..0e12088b9f5e
--- /dev/null
+++ b/dev-java/jakarta-mail/jakarta-mail-2.0.1.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 test"
+MAVEN_ID="com.sun.mail:jakarta.mail:2.0.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+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"
+
+CP_DEPEND="dev-java/jakarta-activation:2"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_ENCODING="iso-8859-1"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_EXTRA_ARGS=( -ea )
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+src_prepare() {
+ default
+ mv src/main/{resources,java}/jakarta/mail/Version.java || die
+}
+
+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
+ # MailHandlerTest does not run because of
+ # "java.io.IOException: Permission denied"
+ # excluding it costs 141 tests.
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -path "**/*TestSuite.java" \
+ -o -path "**/*Test.java" \) \
+ ! -name "MailHandlerTest.java" \
+ )
+ 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/jakarta-mail/metadata.xml b/dev-java/jakarta-mail/metadata.xml
new file mode 100644
index 000000000000..53eb0003d9ca
--- /dev/null
+++ b/dev-java/jakarta-mail/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">jakartaee/mail-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakarta-oro/jakarta-oro-2.0.8-r5.ebuild b/dev-java/jakarta-oro/jakarta-oro-2.0.8-r5.ebuild
index 1f821c693d20..f01c659c6ea0 100644
--- a/dev-java/jakarta-oro/jakarta-oro-2.0.8-r5.ebuild
+++ b/dev-java/jakarta-oro/jakarta-oro-2.0.8-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -17,7 +17,7 @@ SRC_URI="https://archive.apache.org/dist/${MY_J}/${MY_O}/${P}.tar.gz"
LICENSE="Apache-1.1"
SLOT="2.0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+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:*"
diff --git a/dev-java/jakarta-oro/metadata.xml b/dev-java/jakarta-oro/metadata.xml
index a41bfd7d3c29..9995cc031159 100644
--- a/dev-java/jakarta-oro/metadata.xml
+++ b/dev-java/jakarta-oro/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jakarta-regexp/Manifest b/dev-java/jakarta-regexp/Manifest
index c997055568c5..5e6c64169679 100644
--- a/dev-java/jakarta-regexp/Manifest
+++ b/dev-java/jakarta-regexp/Manifest
@@ -1,3 +1 @@
-DIST jakarta-regexp-1.3.tar.gz 127069 BLAKE2B c6bb7383459a4cacc3af40ec65d83f7d16ae723585fee06b4c874995455924e000d8bdc0b07615028f81fc7d6ba2927755e11bc9e7a726ffb4adf34be034ce63 SHA512 20e932856a2e761ac2c8b62617a0e661eb9ef309230ea8379cf3582a1a9308b50334bea66405fa47fade9b92a3cf9609c0a3e42cb7db85af4af63acaec553112
DIST jakarta-regexp-1.4.tar.gz 137768 BLAKE2B f6732f6a856736d1394b429453fd8958deb9f3f651f24accf641fee8b5ccc39e9807510135b07452f80fff55423406afc1aed88cef7d80e16ac013a1436b2649 SHA512 209b3f960cd16f05d3fd609b3b6ddb119e056f428b831788caaed6ebcb64c00279b18484845456dd07b8b761a7181f6772dbe9fd578f0401a5d8b1dcf98afc35
-DIST jakarta-regexp-1.5.tar.gz 170142 BLAKE2B f245a3d53eb0be3ed2494269eee956aec7a7459872219f1bb8ecb3e5f544070b0792a690b4a52f70f0e2ba6963842868cfcbf40cdfea0155831f216636d943cf SHA512 428e5971140dd29246ec41e698813d244efc0e871c69d2d83685d8ae3691f0e20ac44aedad3c59f3c356d24384461de83921e40f0cc4d69c95813f02e8aaba82
diff --git a/dev-java/jakarta-regexp/jakarta-regexp-1.3-r5.ebuild b/dev-java/jakarta-regexp/jakarta-regexp-1.3-r5.ebuild
deleted file mode 100644
index ddfe39278ff9..000000000000
--- a/dev-java/jakarta-regexp/jakarta-regexp-1.3-r5.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="100% Pure Java Regular Expression package"
-SRC_URI="mirror://apache/jakarta/regexp/source/${P}.tar.gz"
-HOMEPAGE="http://jakarta.apache.org/"
-
-SLOT="${PV}"
-IUSE=""
-LICENSE="Apache-1.1"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src/java"
-
-java_prepare() {
- java-pkg_clean
- rm build.xml || die
-}
diff --git a/dev-java/jakarta-regexp/jakarta-regexp-1.4-r2.ebuild b/dev-java/jakarta-regexp/jakarta-regexp-1.4-r2.ebuild
deleted file mode 100644
index ddfe39278ff9..000000000000
--- a/dev-java/jakarta-regexp/jakarta-regexp-1.4-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="100% Pure Java Regular Expression package"
-SRC_URI="mirror://apache/jakarta/regexp/source/${P}.tar.gz"
-HOMEPAGE="http://jakarta.apache.org/"
-
-SLOT="${PV}"
-IUSE=""
-LICENSE="Apache-1.1"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src/java"
-
-java_prepare() {
- java-pkg_clean
- rm build.xml || die
-}
diff --git a/dev-java/jakarta-regexp/jakarta-regexp-1.4-r3.ebuild b/dev-java/jakarta-regexp/jakarta-regexp-1.4-r3.ebuild
new file mode 100644
index 000000000000..c6f3f7a1753f
--- /dev/null
+++ b/dev-java/jakarta-regexp/jakarta-regexp-1.4-r3.ebuild
@@ -0,0 +1,32 @@
+# 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-pkg-simple
+
+DESCRIPTION="100% Pure Java Regular Expression package"
+SRC_URI="mirror://apache/jakarta/regexp/source/${P}.tar.gz"
+HOMEPAGE="https://jakarta.apache.org/"
+
+SLOT="${PV}"
+IUSE=""
+LICENSE="Apache-1.1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ >=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/java"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
diff --git a/dev-java/jakarta-regexp/jakarta-regexp-1.5.ebuild b/dev-java/jakarta-regexp/jakarta-regexp-1.5.ebuild
deleted file mode 100644
index ddfe39278ff9..000000000000
--- a/dev-java/jakarta-regexp/jakarta-regexp-1.5.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="100% Pure Java Regular Expression package"
-SRC_URI="mirror://apache/jakarta/regexp/source/${P}.tar.gz"
-HOMEPAGE="http://jakarta.apache.org/"
-
-SLOT="${PV}"
-IUSE=""
-LICENSE="Apache-1.1"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src/java"
-
-java_prepare() {
- java-pkg_clean
- rm build.xml || die
-}
diff --git a/dev-java/jakarta-regexp/metadata.xml b/dev-java/jakarta-regexp/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/jakarta-regexp/metadata.xml
+++ b/dev-java/jakarta-regexp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jakarta-servlet-api/Manifest b/dev-java/jakarta-servlet-api/Manifest
new file mode 100644
index 000000000000..93a125b9a802
--- /dev/null
+++ b/dev-java/jakarta-servlet-api/Manifest
@@ -0,0 +1,2 @@
+DIST jakarta-servlet-api-4.0.4-RELEASE.tar.gz 188270 BLAKE2B 6c5db208603333abb9aa31726e60d489c5f860e3b6ad61e691d65e8b99909a8139f7677cec52d2a74ed9e8445ea2f0f510875ca32a2e512a09183245a9822889 SHA512 9cd613f8c33f5d415b06f70543eee926c81e87a14d03b837998a6c4db11ce5fb9c2b97f796f2936a63f2a6dc7847d7a97aec7a804b80234cd52e4bfdca9920a9
+DIST jakarta-servlet-api-6.0.0-RELEASE.tar.gz 634690 BLAKE2B e48375f6a0b74950a2c50d73f2d50f7c79db96e22d5c845380bff670948cd1a1d1ea98eaf93e7fa02887e94010c8573382ba3f6fb52a8fca6fa98e5915c307f6 SHA512 65285bce3e8b5143eb33d548549ff5653c6c90f55e7a19e8fdb4a7799842d3430cfe0cebe54f7a7d253d9da4c2b6d4d7a08b35846636c11a2ca814b8311cecc7
diff --git a/dev-java/jakarta-servlet-api/jakarta-servlet-api-4.0.4.ebuild b/dev-java/jakarta-servlet-api/jakarta-servlet-api-4.0.4.ebuild
new file mode 100644
index 000000000000..063b338f3af5
--- /dev/null
+++ b/dev-java/jakarta-servlet-api/jakarta-servlet-api-4.0.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.servlet:jakarta.servlet-api:4.0.4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Javax servlet API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.servlet"
+SRC_URI="https://github.com/jakartaee/servlet/archive/${PV}-RELEASE.tar.gz -> ${P}-RELEASE.tar.gz"
+
+LICENSE="|| ( GPL-2 GPL-2-with-classpath-exception )"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/servlet-${PV}-RELEASE"
+
+JAVA_AUTOMATIC_MODULE_NAME="java.servlet"
+JAVA_SRC_DIR="api/src/main/java"
+JAVA_RESOURCE_DIRS="api/src/main/res"
+
+src_prepare() {
+ default
+ cp -r api/src/main/{java,res} || die
+ find api/src/main/res -type f -name '*.java' -exec rm -rf {} + || die
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/jakarta-servlet-api/jakarta-servlet-api-6.0.0.ebuild b/dev-java/jakarta-servlet-api/jakarta-servlet-api-6.0.0.ebuild
new file mode 100644
index 000000000000..7fbf152908ae
--- /dev/null
+++ b/dev-java/jakarta-servlet-api/jakarta-servlet-api-6.0.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 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/jakartaee/servlet/archive/6.0.0-RELEASE.tar.gz --slot 6 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jakarta-servlet-api-6.0.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.servlet:jakarta.servlet-api:6.0.0"
+# No tests because of still missing junit-jupiter
+# JAVA_TESTING_FRAMEWORKS="junit-jupiter"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Javax servlet API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.servlet"
+SRC_URI="https://github.com/jakartaee/servlet/archive/${PV}-RELEASE.tar.gz -> ${P}-RELEASE.tar.gz"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="6"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-11:*"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/servlet-${PV}-RELEASE"
+
+JAVA_SRC_DIR="api/src/main/java"
+JAVA_RESOURCE_DIRS=( api/src/main/{resources,properties} )
+
+src_prepare() {
+ default
+ cp -r api/src/main/{java,properties} || die
+ find api/src/main/properties -type f ! -name '*.properties' -exec rm -rf {} + || die
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/jakarta-servlet-api/metadata.xml b/dev-java/jakarta-servlet-api/metadata.xml
new file mode 100644
index 000000000000..77e11a268a0a
--- /dev/null
+++ b/dev-java/jakarta-servlet-api/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <slots>
+ <slot name="4">provides javax.servlet</slot>
+ <slot name="6">provides jakarta.servlet</slot>
+ </slots>
+</pkgmetadata>
diff --git a/dev-java/jakarta-xml-soap-api/Manifest b/dev-java/jakarta-xml-soap-api/Manifest
new file mode 100644
index 000000000000..2ab2cfcfb034
--- /dev/null
+++ b/dev-java/jakarta-xml-soap-api/Manifest
@@ -0,0 +1 @@
+DIST jakarta-xml-soap-api-1.4.2.tar.gz 107226 BLAKE2B 4de5b994505d1964b6804010191b7b623322005d7bac6e9295062e821b5e0994a02d04f72d7f1bba9a8bf835ce42f455678af35c8cdf3e9e7208a2fde4151927 SHA512 9df8bb191fee0f6afa46f2d0c4bd5d1760324220be6862ff17df77d0dd4c9341360f18dd935233fdf6d9656d511c5378bd557e3dadd6570dfd3c9d7981179516
diff --git a/dev-java/jakarta-xml-soap-api/files/jakarta-xml-soap-api-1.4.2-dropSecurityManager.patch b/dev-java/jakarta-xml-soap-api/files/jakarta-xml-soap-api-1.4.2-dropSecurityManager.patch
new file mode 100644
index 000000000000..a94489044d7f
--- /dev/null
+++ b/dev-java/jakarta-xml-soap-api/files/jakarta-xml-soap-api-1.4.2-dropSecurityManager.patch
@@ -0,0 +1,14 @@
+bug #923606
+--- a/api/src/test/java/javax/xml/soap/test/SAAJFactoryTest.java
++++ b/api/src/test/java/javax/xml/soap/test/SAAJFactoryTest.java
+@@ -165,9 +165,7 @@ public class SAAJFactoryTest {
+ }
+
+ private void enableSM() {
+- System.setSecurityManager(null);
+- System.setProperty("java.security.policy", classesDir + "javax/xml/soap/test.policy");
+- System.setSecurityManager(new SecurityManager());
++ // no-op
+ }
+
+ protected MessageFactory factory() throws Throwable {
diff --git a/dev-java/jakarta-xml-soap-api/jakarta-xml-soap-api-1.4.2-r2.ebuild b/dev-java/jakarta-xml-soap-api/jakarta-xml-soap-api-1.4.2-r2.ebuild
new file mode 100644
index 000000000000..fc7c2c78bdec
--- /dev/null
+++ b/dev-java/jakarta-xml-soap-api/jakarta-xml-soap-api-1.4.2-r2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2022-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"
+MAVEN_ID="jakarta.xml.soap:jakarta.xml.soap-api:1.4.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SOAP with Attachments API for Java (SAAJ) API (Eclipse Project for JAX-WS)"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jaxws"
+SRC_URI="https://github.com/jakartaee/saaj-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/saaj-api-${PV}"
+
+# EDL-1.0 equivalent to BSD
+# - 'SPDX-License-Identifier: BSD-3-Clause' in source files' headers
+# - https://www.eclipse.org/org/documents/edl-v10.php
+LICENSE="BSD"
+# Since version 2.0.0, the namespace has changed to jakarta.xml.soap
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/jakarta-activation-api-1.2.2-r1:1
+"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+PATCHES=(
+ "${FILESDIR}/jakarta-xml-soap-api-1.4.2-dropSecurityManager.patch"
+)
+
+JAVA_SRC_DIR="api/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="api/src/test/java"
+JAVA_TEST_RESOURCE_DIRS=( "api/src/test/resources" )
+JAVA_TEST_EXTRA_ARGS=( -Xbootclasspath/a:target/classes )
+
+DOCS=( CONTRIBUTING.md NOTICE.md README.md )
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/jakarta-xml-soap-api/metadata.xml b/dev-java/jakarta-xml-soap-api/metadata.xml
new file mode 100644
index 000000000000..cceeb17a326d
--- /dev/null
+++ b/dev-java/jakarta-xml-soap-api/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">jakartaee/saaj-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jakartaee-migration/Manifest b/dev-java/jakartaee-migration/Manifest
index 9645e64bbca2..604ff981904b 100644
--- a/dev-java/jakartaee-migration/Manifest
+++ b/dev-java/jakartaee-migration/Manifest
@@ -1 +1 @@
-DIST jakartaee-migration-1.0.0-sources.tar.gz 35116 BLAKE2B 98b587e5a51e8f3540d6f4570c60ffa5516801709e41260ac09f7fcabc9e96a3b9067e8eba6c5975c62e3c56585a1f334a21acc15627666e1616ced6f625c56f SHA512 f0c0dc5da4d3c5d4bae8fd4c3db349cb45b7c8d82ca0bb12f3c995e92d4b0893db111ab33ce812299d66904827adc91b22c49381625760fc05c1b10de76faa0c
+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.0.ebuild b/dev-java/jakartaee-migration/jakartaee-migration-1.0.0.ebuild
deleted file mode 100644
index a5a06c63d545..000000000000
--- a/dev-java/jakartaee-migration/jakartaee-migration-1.0.0.ebuild
+++ /dev/null
@@ -1,89 +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 pom.xml --download-uri https://ftp.fau.de/apache/tomcat/jakartaee-migration/v1.0.0/source/jakartaee-migration-1.0.0-src.tar.gz --slot 0 --keywords "~amd64" --ebuild jakartaee-migration-1.0.0.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.apache.tomcat:jakartaee-migration:1.0.0"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-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"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-# Common dependencies
-# POM: pom.xml
-# commons-io:commons-io:2.8.0 -> >=dev-java/commons-io-2.8.0:1
-# org.apache.bcel:bcel:6.5.0 -> >=dev-java/bcel-6.5.0:0
-# org.apache.commons:commons-compress:1.20 -> >=dev-java/commons-compress-1.20:0
-
-CDEPEND="
- dev-java/ant-core:0
- dev-java/bcel:0
- >=dev-java/commons-compress-1.20:0
- dev-java/commons-io:1
-"
-
-# Compile dependencies
-# POM: pom.xml
-# org.apache.ant:ant:1.10.9 -> !!!groupId-not-found!!!
-# POM: pom.xml
-# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.1:4
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}"
-
-JAVA_LAUNCHER_FILENAME="${PN}"
-
-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_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "src/test/resources"
-)
-
-src_prepare() {
- default
- 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
- 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
- ejavac -d . -encoding ${JAVA_ENCODING} $(find "${S}/${JAVA_TEST_SRC_DIR}" -name HelloCGI.java) || die
- jar cfm hellocgi.jar META-INF/MANIFEST.MF $(find -name HelloCGI.class) || die
- for enc in rsa dsa ec; do
- cp hellocgi.jar hellocgi-signed-${enc}.jar || die
- jarsigner -keystore "${S}/src/test/resources/keystore.p12" -storepass apache hellocgi-signed-${enc}.jar ${enc} || die
- done
- popd
-
- java-pkg-simple_src_test
-}
diff --git a/dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild b/dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild
new file mode 100644
index 000000000000..4ee56f6fa8ae
--- /dev/null
+++ b/dev-java/jakartaee-migration/jakartaee-migration-1.0.8-r1.ebuild
@@ -0,0 +1,72 @@
+# 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.8"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+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"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14-r1:0
+ dev-java/bcel:0
+ >=dev-java/commons-compress-1.26.0:0
+ dev-java/commons-io:1
+"
+
+# 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="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_MAIN_CLASS="org.apache.tomcat.jakartaee.MigrationCLI"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+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() {
+ 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 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
+ ejavac -d . -encoding ${JAVA_ENCODING} $(find "${S}/${JAVA_TEST_SRC_DIR}" -name HelloCGI.java) || die
+ jar cfm hellocgi.jar META-INF/MANIFEST.MF $(find -name HelloCGI.class) || die
+ for enc in rsa dsa ec; do
+ cp hellocgi.jar hellocgi-signed-${enc}.jar || die
+ jarsigner -keystore "${S}/src/test/resources/keystore.p12" -storepass apache hellocgi-signed-${enc}.jar ${enc} || die
+ done
+ popd
+
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jakartaee-migration/metadata.xml b/dev-java/jakartaee-migration/metadata.xml
index 2444066aa02b..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 "http://www.gentoo.org/dtd/metadata.dtd">
+<!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-r5.ebuild b/dev-java/jal/jal-20031117-r5.ebuild
deleted file mode 100644
index f3d33be5161f..000000000000
--- a/dev-java/jal/jal-20031117-r5.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Partial port of the C++ Standard Template Library"
-HOMEPAGE="http://vigna.dsi.unimi.it/jal"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
-
-LICENSE="HPND"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-JAVA_SRC_DIR="src/jal"
-
-src_prepare() {
- default
-
- # Generate sources.
- ./instantiate -n byte bytes || die
- ./instantiate -n short shorts || die
- ./instantiate -n char chars || die
- ./instantiate -n int ints || die
- ./instantiate -n long longs || die
- ./instantiate -n float floats || die
- ./instantiate -n double doubles || die
- ./instantiate Object objects || die
- ./instantiate String strings || die
-
- mkdir -p src/jal || die
- mv bytes shorts chars ints longs floats doubles objects strings src/jal || die
-}
diff --git a/dev-java/jal/jal-20031117-r7.ebuild b/dev-java/jal/jal-20031117-r7.ebuild
new file mode 100644
index 000000000000..184a2ce24dc7
--- /dev/null
+++ b/dev-java/jal/jal-20031117-r7.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"
+
+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"
+
+DEPEND="
+ dev-java/ant:0
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_CLASSPATH_EXTRA="ant"
+JAVA_SRC_DIR="src/jal"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ # Generate sources.
+ ./instantiate -n byte bytes || die
+ ./instantiate -n short shorts || die
+ ./instantiate -n char chars || die
+ ./instantiate -n int ints || die
+ ./instantiate -n long longs || die
+ ./instantiate -n float floats || die
+ ./instantiate -n double doubles || die
+ ./instantiate Object objects || die
+ ./instantiate String strings || die
+
+ mkdir -p src/jal || die
+ mv bytes shorts chars ints longs floats doubles objects strings src/jal || die
+}
diff --git a/dev-java/jal/metadata.xml b/dev-java/jal/metadata.xml
index 6cf26e42b5b0..9e8c370845f0 100644
--- a/dev-java/jal/metadata.xml
+++ b/dev-java/jal/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jama/Manifest b/dev-java/jama/Manifest
deleted file mode 100644
index aee9142a85c1..000000000000
--- a/dev-java/jama/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jama-1.0.3.tar.gz 82188 BLAKE2B 35de815f770b192cd1b86a56ddf1919e12675d898ec4473489d3ce2c3899185f9d96eda39b6f7520fc67edfd17fe58b585f788f6a6967220150fc9a334b219ea SHA512 9bedf8f35ea1d400194b5a3b49914ebd04b5a31247959886f1967d062ceffae30993d34cd2f15d3942285a45c6930e2d4518f4ed0cc013ce853cc26aca021b0d
diff --git a/dev-java/jama/jama-1.0.3-r1.ebuild b/dev-java/jama/jama-1.0.3-r1.ebuild
deleted file mode 100644
index c3d99e6cda66..000000000000
--- a/dev-java/jama/jama-1.0.3-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="Jama"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="A Java Matrix Package"
-HOMEPAGE="https://math.nist.gov/javanumerics/jama/"
-SRC_URI="https://math.nist.gov/javanumerics/${PN}/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/jama/metadata.xml b/dev-java/jama/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jama/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jamon/Manifest b/dev-java/jamon/Manifest
deleted file mode 100644
index dc04a2c395f7..000000000000
--- a/dev-java/jamon/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jamonapi-2_81.tar.gz 23149879 BLAKE2B 1e21c6ae849a1fec74b87614594007653ccb573b450c495396951532dfe713ab47944425f421b212e052153c84163f79f376413946d16917e0900ec5fe64be8b SHA512 09fba65aec2754f8a1b85dd7f5691b8bae5c4f1c852dd69cddb3642a594bb44baa5b6a3c611657041d6ce2cc37c824a111adeaa929761e3983d43d7080ce05b1
diff --git a/dev-java/jamon/jamon-2.81.ebuild b/dev-java/jamon/jamon-2.81.ebuild
deleted file mode 100644
index 32622058bb3a..000000000000
--- a/dev-java/jamon/jamon-2.81.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-MY_PN="${PN}api"
-MY_PV="${PV//./_}"
-MY_P="${MY_PN}-${MY_PV}"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java API to monitor production applications"
-HOMEPAGE="http://www.jamonapi.com/"
-SRC_URI="https://github.com/stevensouza/${MY_PN}/archive/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT="2"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/log4j:0
- java-virtuals/interceptor-api:0
- java-virtuals/servlet-api:3.0
- www-servers/tomcat:7"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7
- dev-db/hsqldb:0
- dev-java/jakarta-oro:2.0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? (
- dev-db/hsqldb:0
- dev-java/assertj-core:2
- dev-java/junit:4
- dev-java/mockito:0
- dev-java/objenesis:0
- )"
-
-S="${WORKDIR}/${MY_P}"
-JAVA_GENTOO_CLASSPATH="interceptor-api,log4j,servlet-api-3.0,tomcat-7"
-JAVA_SRC_DIR="${PN}/src/main/java"
-WAR_DIR="jamon_war/src/main/webapp"
-
-java_prepare() {
- # No Jetty or Hazelcast packaged right now and Spring is ancient.
- find \( -name "*Jetty*.java" -o -name "*Hazelcast*.java" \) -exec rm -v {} + || die
- rm -rv ./jamon/src/test/java/com/jamonapi/distributed/JamonDataPersisterFactoryTest.java \
- ./jamon/src/{main,test}/java/com/jamonapi/aop/spring || die
-
- # Keep fdsapi and xss-html-filter bundled as we lack packages.
- rm -v ${WAR_DIR}/WEB-INF/lib/{hsqldb,jakarta-oro}*.jar || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- jar cf ${PN}.war -C ${WAR_DIR} . || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dowar ${PN}.war
- dodoc designnotes.txt README.md
-
- # hsqldb used by JSP files, oro used by fdsapi.
- java-pkg_register-dependency hsqldb,jakarta-oro-2.0
-}
-
-src_test() {
- cd jamon/src/test/java || die
-
- local CP=".:../resources:${S}/${PN}.jar:$(java-pkg_getjars assertj-core-2,hsqldb,junit-4,mockito,objenesis,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find * -name "*Test.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/jamon/metadata.xml b/dev-java/jamon/metadata.xml
deleted file mode 100644
index 5256079650cb..000000000000
--- a/dev-java/jamon/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- A free, simple, high performance, thread safe, Java API that allows
- developers to easily monitor production applications
- </longdescription>
- <upstream>
- <remote-id type="github">stevensouza/jamonapi</remote-id>
- <remote-id type="sourceforge">jamonapi</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jamvm/Manifest b/dev-java/jamvm/Manifest
deleted file mode 100644
index ad8f9433c505..000000000000
--- a/dev-java/jamvm/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jamvm-2.0.0.tar.gz 741459 BLAKE2B 9b8b0f8cfd8f56c0b835144c07aaca709ef466fdfe5df18438d05c66cd8a07fecfebf27e1581c67658feb3674a96c2e916b85f13dc434baf2db9be4e4fbfd0cf SHA512 8ac27787ee94fa8fde962635d3c08d1dc1e5244c9d56bb693e73f3fd9b58e944ad3f7a0127afeed727d7c00d904a775d2c483157f5ac87e7eab6ecade1aad21d
diff --git a/dev-java/jamvm/files/jamvm-2.0.0-classes-location.patch b/dev-java/jamvm/files/jamvm-2.0.0-classes-location.patch
deleted file mode 100644
index 6cf7611f1f35..000000000000
--- a/dev-java/jamvm/files/jamvm-2.0.0-classes-location.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -Nru jamvm-2.0.0.old/configure.ac jamvm-2.0.0/configure.ac
---- jamvm-2.0.0.old/configure.ac 2014-06-10 21:33:37.000000000 +0100
-+++ jamvm-2.0.0/configure.ac 2014-11-28 19:22:12.183091414 +0000
-@@ -236,6 +236,7 @@
- install_dir=$prefix
- fi
- AC_DEFINE_UNQUOTED(INSTALL_DIR, "$install_dir", [Installation directory (prefix)])
-+AC_DEFINE_UNQUOTED(PKGDATADIR, "$datadir/$PACKAGE", [Package data directory (pkgdatadir)])
-
- AC_ARG_ENABLE(zip,
- [AS_HELP_STRING(--disable-zip,turn-off zip support in the bootstrap loader)],,)
-diff -Nru jamvm-2.0.0.old/src/classlib/gnuclasspath/class.c jamvm-2.0.0/src/classlib/gnuclasspath/class.c
---- jamvm-2.0.0.old/src/classlib/gnuclasspath/class.c 2012-05-17 22:01:47.000000000 +0100
-+++ jamvm-2.0.0/src/classlib/gnuclasspath/class.c 2014-11-28 19:23:27.312108240 +0000
-@@ -110,10 +110,10 @@
- separate class files in a directory structure */
-
- #ifdef USE_ZIP
--#define JAMVM_CLASSES INSTALL_DIR"/share/jamvm/classes.zip"
-+#define JAMVM_CLASSES PKGDATADIR"/classes.zip"
- #define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath/glibj.zip"
- #else
--#define JAMVM_CLASSES INSTALL_DIR"/share/jamvm/classes"
-+#define JAMVM_CLASSES PKGDATADIR"/classes"
- #define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath"
- #endif
-
diff --git a/dev-java/jamvm/files/jamvm-2.0.0-env.file b/dev-java/jamvm/files/jamvm-2.0.0-env.file
deleted file mode 100644
index 1b92cd02bb79..000000000000
--- a/dev-java/jamvm/files/jamvm-2.0.0-env.file
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="JamVM JDK @PV@"
-JAVA_HOME="@GENTOO_PORTAGE_EPREFIX@/usr/@LIBDIR@/@PN@-jdk"
-JDK_HOME="@GENTOO_PORTAGE_EPREFIX@/usr/@LIBDIR@/@PN@-jdk"
-BOOTCLASSPATH="@GENTOO_PORTAGE_EPREFIX@/usr/@LIBDIR@/@PN@/classes.zip:${JAVA_HOME}/lib/rt.jar"
-JAVAC="${JAVA_HOME}/bin/javac"
-PATH="${JAVA_HOME}/bin"
-ROOTPATH="${JAVA_HOME}/bin"
-PROVIDES_TYPE="JRE"
-PROVIDES_VERSION="1.5"
-GENERATION="2"
-ENV_VARS="JAVA_HOME JAVAC PATH"
-LDPATH="${JAVA_HOME}/lib"
diff --git a/dev-java/jamvm/files/jamvm-2.0.0-javac.in b/dev-java/jamvm/files/jamvm-2.0.0-javac.in
deleted file mode 100644
index 8eeda68c7a5e..000000000000
--- a/dev-java/jamvm/files/jamvm-2.0.0-javac.in
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/usr/bin/perl -w
-use strict;
-use constant NO_DUP_ARGS => qw(-source -target -d -encoding);
-use constant STRIP_ARGS => qw(-Werror -implicit:none -J-Xbootclasspath/p:);
-
-my $ECJ_WARNINGS="-nowarn";
-
-my ( @bcoption, @source15, @target15, @cp );
-push @bcoption, '-bootclasspath', '@RT_JAR@:@TOOLS_JAR@'
- unless grep {$_ eq '-bootclasspath'} @ARGV;
-push @source15, '-source', '1.5'
- unless grep {$_ eq '-source'} @ARGV;
-push @target15, '-target', '1.5'
- unless grep {$_ eq '-target'} @ARGV;
-push @cp, '-cp', '.'
- unless grep {$_ =~ '\-c(p|lasspath)'} @ARGV or $ENV{CLASSPATH};
-my @ecj_parms = ($ECJ_WARNINGS, @bcoption, @source15, @target15, @cp);
-
-# Work around ecj's inability to handle duplicate command-line
-# options and unknown javac options.
-sub gen_ecj_opts
-{
- my @new_args = @{$_[0]};
-
- for my $opt (NO_DUP_ARGS)
- {
- my @indices = reverse grep {$new_args[$_] eq $opt} 0..$#new_args;
- if (@indices > 1) {
- shift @indices; # keep last instance only
- splice @new_args, $_, 2 for @indices;
- }
- }
-
- for my $opt (STRIP_ARGS)
- {
- my @indices = reverse grep {$new_args[$_] eq $opt} 0..$#new_args;
- splice @new_args, $_, 1 for @indices;
- }
-
- return \@new_args;
-}
-
-sub split_vm_args
-{
- my @new_args = @{$_[0]};
-
- my @vm_args = map { substr $_, 2 } grep $_ =~ /^-J/, @new_args;
- my @javac_args = grep $_ !~ /^-J/, @new_args;
-
- return (\@vm_args, \@javac_args);
-}
-
-my ($vm_args, $javac_args) = split_vm_args (gen_ecj_opts( \@ARGV ));
-my @CLASSPATH = ('@ECJ_JAR@');
-push @CLASSPATH, split /:/, $ENV{"CLASSPATH"} if exists $ENV{"CLASSPATH"};
-$ENV{"CLASSPATH"} = join ':', @CLASSPATH;
-exec '@JAVA@', @$vm_args, 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @$javac_args;
diff --git a/dev-java/jamvm/files/jamvm-2.0.0-noexecstack.patch b/dev-java/jamvm/files/jamvm-2.0.0-noexecstack.patch
deleted file mode 100644
index 2a0f14c71a1e..000000000000
--- a/dev-java/jamvm/files/jamvm-2.0.0-noexecstack.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git a/src/os/linux/arm/callNative.S b/src/os/linux/arm/callNative.S
-index 245afd1..1583023 100644
---- a/src/os/linux/arm/callNative.S
-+++ b/src/os/linux/arm/callNative.S
-@@ -36,3 +36,7 @@
- #include "callNativeOABI.S"
- #endif
- #endif
-+
-+#if defined(__linux__) && defined(__ELF__)
-+.section .note.GNU-stack,"",%progbits
-+#endif
-diff --git a/src/os/linux/mips/callNative.S b/src/os/linux/mips/callNative.S
-index cede343..90d9163 100644
---- a/src/os/linux/mips/callNative.S
-+++ b/src/os/linux/mips/callNative.S
-@@ -184,3 +184,7 @@ return:
- j $31
- .end callJNIMethod
- #endif
-+
-+#if defined(__linux__) && defined(__ELF__)
-+.section .note.GNU-stack,"",%progbits
-+#endif
-diff --git a/src/os/linux/powerpc/callNative.S b/src/os/linux/powerpc/callNative.S
-index aa47f6a..763dc0a 100644
---- a/src/os/linux/powerpc/callNative.S
-+++ b/src/os/linux/powerpc/callNative.S
-@@ -281,3 +281,7 @@ return:
- mr 1,11
- blr
- #endif
-+
-+#if defined(__linux__) && defined(__ELF__)
-+.section .note.GNU-stack,"",%progbits
-+#endif
-diff --git a/src/os/linux/x86_64/callNative.S b/src/os/linux/x86_64/callNative.S
-index 26404e6..9fb5cdf 100644
---- a/src/os/linux/x86_64/callNative.S
-+++ b/src/os/linux/x86_64/callNative.S
-@@ -267,3 +267,7 @@ float_ret:
- addq $8, %rcx
- jmp return
- #endif
-+
-+#if defined(__linux__) && defined(__ELF__)
-+.section .note.GNU-stack,"",%progbits
-+#endif
diff --git a/dev-java/jamvm/jamvm-2.0.0-r1.ebuild b/dev-java/jamvm/jamvm-2.0.0-r1.ebuild
deleted file mode 100644
index 4cf9882f3e5d..000000000000
--- a/dev-java/jamvm/jamvm-2.0.0-r1.ebuild
+++ /dev/null
@@ -1,126 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit epatch flag-o-matic multilib java-vm-2 autotools toolchain-funcs
-
-DESCRIPTION="An extremely small and specification-compliant virtual machine"
-HOMEPAGE="http://jamvm.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="debug libffi"
-
-DEPEND="dev-java/gnu-classpath:0.98
- || ( dev-java/eclipse-ecj:* dev-java/ecj-gcj:* )
- libffi? ( dev-libs/libffi:= )
- ppc64? ( dev-libs/libffi:= )
- sparc? ( dev-libs/libffi:= )"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/"${P}-classes-location.patch"
- "${FILESDIR}"/"${P}-noexecstack.patch"
-)
-
-src_prepare() {
- # without this patch, classes.zip is not found at runtime
- epatch "${PATCHES[@]}"
- eautoreconf
-
- # These come precompiled.
- # configure script uses detects the compiler
- # from PATH. I guess we should compile this from source.
- # Then just make sure not to hit
- # https://bugs.gentoo.org/show_bug.cgi?id=163801
- #
- #rm -v lib/classes.zip || die
-}
-
-src_configure() {
- filter-flags "-fomit-frame-pointer"
-
- if use ppc64 || use sparc || use libffi; then
- append-cflags "$($(tc-getPKG_CONFIG) --cflags-only-I libffi)"
- fi
-
- local fficonf="--enable-ffi"
- if { ! use ppc64 && ! use sparc; }; then
- fficonf="$(use_enable libffi ffi)"
- fi
-
- econf ${fficonf} \
- $(use_enable debug trace) \
- --libdir="${EPREFIX}"/usr/$(get_libdir)/${PN} \
- --includedir="${EPREFIX}"/usr/include/${PN} \
- --with-classpath-install-dir=/usr
-}
-
-create_launcher() {
- local script="${D}/${INSTALL_DIR}/bin/${1}"
- cat > "${script}" <<-EOF
- #!/bin/sh
- exec /usr/bin/jamvm \
- -Xbootclasspath/p:/usr/share/classpath/tools.zip" \
- gnu.classpath.tools.${1}.Main "\$@"
- EOF
- chmod +x "${script}" || die
-}
-
-src_install() {
- local libdir=$(get_libdir)
- local CLASSPATH_DIR=/usr/libexec/gnu-classpath-0.98
- local JDK_DIR=/usr/${libdir}/${PN}-jdk
-
- emake DESTDIR="${D}" install
-
- dodoc ACKNOWLEDGEMENTS AUTHORS ChangeLog NEWS README
-
- set_java_env "${FILESDIR}/${P}-env.file"
-
- dodir ${JDK_DIR}/bin
- dosym /usr/bin/jamvm ${JDK_DIR}/bin/java
- for files in ${CLASSPATH_DIR}/g*; do
- if [ $files = "${CLASSPATH_DIR}/bin/gjdoc" ] ; then
- dosym $files ${JDK_DIR}/bin/javadoc
- else
- dosym $files \
- ${JDK_DIR}/bin/$(echo $files|sed "s#$(dirname $files)/g##")
- fi
- done
-
- dodir ${JDK_DIR}/jre/lib
- dosym /usr/share/classpath/glibj.zip ${JDK_DIR}/jre/lib/rt.jar
- dodir ${JDK_DIR}/lib
- dosym /usr/share/classpath/tools.zip ${JDK_DIR}/lib/tools.jar
-
- local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
- exeinto ${JDK_DIR}/bin
- sed -e "s#@JAVA@#/usr/bin/jamvm#" \
- -e "s#@ECJ_JAR@#${ecj_jar}#" \
- -e "s#@RT_JAR@#/usr/share/classpath/glibj.zip#" \
- -e "s#@TOOLS_JAR@#/usr/share/classpath/tools.zip#" \
- "${FILESDIR}"/"${P}-javac.in" | newexe - javac
-
- local libarch="${ARCH}"
- [ ${ARCH} == x86 ] && libarch="i386"
- [ ${ARCH} == x86_64 ] && libarch="amd64"
- dodir ${JDK_DIR}/jre/lib/${libarch}/client
- dodir ${JDK_DIR}/jre/lib/${libarch}/server
- dosym /usr/${libdir}/${PN}/libjvm.so ${JDK_DIR}/jre/lib/${libarch}/client/libjvm.so
- dosym /usr/${libdir}/${PN}/libjvm.so ${JDK_DIR}/jre/lib/${libarch}/server/libjvm.so
- dosym /usr/${libdir}/classpath/libjawt.so ${JDK_DIR}/jre/lib/${libarch}/libjawt.so
-
- # Can't use java-vm_set-pax-markings as doesn't work with symbolic links
- # Ensure a PaX header is created.
- local pax_markings="C"
- # Usally disabeling MPROTECT is sufficent.
- local pax_markings+="m"
- # On x86 for heap sizes over 700MB disable SEGMEXEC and PAGEEXEC as well.
- use x86 && pax_markings+="sp"
-
- pax-mark ${pax_markings} "${ED}"/usr/bin/jamvm
-}
diff --git a/dev-java/jamvm/metadata.xml b/dev-java/jamvm/metadata.xml
deleted file mode 100644
index 991f28de07c6..000000000000
--- a/dev-java/jamvm/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jamvm</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/janino/Manifest b/dev-java/janino/Manifest
deleted file mode 100644
index 60add465e00e..000000000000
--- a/dev-java/janino/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST janino-2.7.0.zip 992669 BLAKE2B cc9ba79d0fc9af5bbe73f167dee6d15619b40b75852fcc227eaf5399e427cde2aeca4b6ef3ff21f303b71dbc21f432cc3e844583cafce3cb073eec1a1498c45a SHA512 0fe0faf16c9d7c63ed14b156bbf75b1ce6deebda24fc0eb0176e96693de9877187694dfb39e748523329430332a36017b2d7d04b2b26ef0847fde7396106185f
diff --git a/dev-java/janino/janino-2.7.0.ebuild b/dev-java/janino/janino-2.7.0.ebuild
deleted file mode 100644
index c4ef9b3b80de..000000000000
--- a/dev-java/janino/janino-2.7.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An embedded compiler for run-time compilation purposes"
-HOMEPAGE="http://janino.net/"
-SRC_URI="http://janino.net/download/${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0
- dev-java/unkrig-nullanalysis:0"
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src"
-JAVA_GENTOO_CLASSPATH="ant-core,unkrig-nullanalysis"
-
-java_prepare() {
- unzip "${S}"/janino-src.zip -d ${JAVA_SRC_DIR} && \
- unzip "${S}"/commons-compiler-src.zip -d ${JAVA_SRC_DIR} || die
- find -iname '*.jar' -delete || die
-
- mkdir -p target/classes && \
- mv src/org.codehaus.commons.compiler.properties target/classes || die
-
- mkdir examples || die
- mv src/org/codehaus/commons/compiler/samples/* examples/ || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples examples/
-}
diff --git a/dev-java/janino/metadata.xml b/dev-java/janino/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/janino/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jansi-native/jansi-native-1.8.ebuild b/dev-java/jansi-native/jansi-native-1.8.ebuild
index a519b5eb26b6..88351addaf4c 100644
--- a/dev-java/jansi-native/jansi-native-1.8.ebuild
+++ b/dev-java/jansi-native/jansi-native-1.8.ebuild
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/fusesource/${PN}/archive/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
CDEPEND="dev-java/hawtjni-runtime:0"
diff --git a/dev-java/jansi-native/metadata.xml b/dev-java/jansi-native/metadata.xml
index b36bdf3cdd22..0201df50b812 100644
--- a/dev-java/jansi-native/metadata.xml
+++ b/dev-java/jansi-native/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jansi/Manifest b/dev-java/jansi/Manifest
index a7eacf91317c..1325190f77b1 100644
--- a/dev-java/jansi/Manifest
+++ b/dev-java/jansi/Manifest
@@ -1 +1,2 @@
-DIST jansi-1.11.tar.gz 252095 BLAKE2B 72b22392fa6731f49ebb5c2e94cdf7918ca37d5c73ccb14d8810402c9ec120b1220a739e54516eeb5355ad4dd74d01ae398a6003679c60b1dd6f1648691b2efa SHA512 4a19d52055da3ce08b6d797fb8e8241af86f1b9b30e12f4de24655edbd72d256b310d58fc6e106cae1384f9b0ab99cd7f2128d53296875fba5422bfc0e8410f1
+DIST jansi-1.13.tar.gz 253219 BLAKE2B 89fc81710bc0860c717241c97fe2e7a148ccbaa5fb1e7db30b978aa69cddccbc9ea45a0e30ef384c42a741d707f5eab73ce8b2a76e1095c66a2c95f9088f28f0 SHA512 9c4bb0b7435c102068718e039900828994f1ba60ed44307eb726eb91a2884bc406688c2747635b9353f3bd68a6bf0e7c082a4069343b59efffc900f59c563fde
+DIST jansi-2.4.0.tar.gz 225579 BLAKE2B f07dfde9b789d62ec31999632e35609143289c5ab0972ce7cb931dea72ba41e6f2b9b74f7b3d82050e9ed4abd89386040d5268c408d787d3edd49fcdf0cce965 SHA512 4172b264463b847d6008dfad5c80246b029c7add2fd659f4b1c636891a86860f8f5ddd0ce0a5150065faeae72b19682339dda2d019c82f45d8f1be7a547e4558
diff --git a/dev-java/jansi/files/jansi-1.11-build.xml b/dev-java/jansi/files/jansi-1.11-build.xml
deleted file mode 100644
index 058559ce0847..000000000000
--- a/dev-java/jansi/files/jansi-1.11-build.xml
+++ /dev/null
@@ -1,298 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 6/4/13 7:11 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jansi-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jansi-1.11"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/fusesource/hawtjni/hawtjni-runtime/1.8/hawtjni-runtime-1.8.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows32.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows64.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-osx.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux32.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux64.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/fusesource/hawtjni/hawtjni-runtime/1.8/hawtjni-runtime-1.8.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows32.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows64.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-osx.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux32.jar"/>
- <pathelement location="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux64.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/4.7/junit-4.7.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/*Test.java"/>
- <exclude name="**/Abstract*.java"/>
- <exclude name="**/Test*.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/Abstract*.java"/>
- <exclude name="**/Test*.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="UTF-8"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/hawtjni/hawtjni-runtime/1.8"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/hawtjni/hawtjni-runtime/1.8/hawtjni-runtime-1.8.jar"
- dest="${maven.repo.local}/org/fusesource/hawtjni/hawtjni-runtime/1.8/hawtjni-runtime-1.8.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5.jar"
- dest="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows32.jar"
- dest="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows32.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows64.jar"
- dest="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-windows64.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-osx.jar"
- dest="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-osx.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux32.jar"
- dest="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux32.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5"/>
- <get src="http://repo.maven.apache.org/maven2/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux64.jar"
- dest="${maven.repo.local}/org/fusesource/jansi/jansi-native/1.5/jansi-native-1.5-linux64.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.7"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.7/junit-4.7.jar"
- dest="${maven.repo.local}/junit/junit/4.7/junit-4.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jansi/jansi-1.11-r2.ebuild b/dev-java/jansi/jansi-1.11-r2.ebuild
deleted file mode 100644
index 8006241e27d0..000000000000
--- a/dev-java/jansi/jansi-1.11-r2.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# TODO: Get doc (missing classpath entries) working.
-JAVA_PKG_IUSE="source test"
-
-inherit vcs-snapshot java-pkg-2 java-ant-2
-
-DESCRIPTION="A library that allows you to use ANSI escape sequences in your console output"
-HOMEPAGE="http://jansi.fusesource.org/"
-SRC_URI="https://github.com/fusesource/${PN}/archive/${PN}-project-${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-CDEPEND="dev-java/jansi-native:0"
-
-DEPEND="${CDEPEND}
- test? (
- dev-java/ant-junit4:0
- dev-java/junit:4
- )
- >=virtual/jdk-1.8:*"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${P}/jansi"
-
-EANT_GENTOO_CLASSPATH="jansi-native"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-JAVA_SRC_DIR="src/main/java"
-
-src_prepare() {
- default
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-EANT_TEST_GENTOO_CLASSPATH="ant-junit4,junit-4"
-
-src_test() {
- EANT_EXTRA_ARGS="-Djunit.present=true"
-
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar ${PN}.jar
-
- use source && java-pkg_dosrc src/main/java/org
-}
diff --git a/dev-java/jansi/jansi-1.13.ebuild b/dev-java/jansi/jansi-1.13.ebuild
new file mode 100644
index 000000000000..900dd405b1d8
--- /dev/null
+++ b/dev-java/jansi/jansi-1.13.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.fusesource.jansi:jansi:1.13"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A library that allows you to use ANSI escape sequences in your console output"
+HOMEPAGE="https://fusesource.github.io/jansi/"
+SRC_URI="https://github.com/fusesource/${PN}/archive/${PN}-project-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CDEPEND="dev-java/jansi-native:0"
+
+DEPEND="${CDEPEND}
+ test? (
+ dev-java/junit:4
+ )
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/jansi-jansi-project-${PV}/jansi"
+
+JAVA_GENTOO_CLASSPATH="jansi-native"
+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"
diff --git a/dev-java/jansi/jansi-2.4.0-r1.ebuild b/dev-java/jansi/jansi-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..94f5bb697e72
--- /dev/null
+++ b/dev-java/jansi/jansi-2.4.0-r1.ebuild
@@ -0,0 +1,78 @@
+# 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/fusesource/jansi/archive/refs/tags/jansi-2.4.0.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jansi-2.4.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.fusesource.jansi:jansi:2.4.0"
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs
+
+DESCRIPTION="Jansi is a java library for generating and interpreting ANSI escape sequences."
+HOMEPAGE="http://fusesource.github.io/jansi"
+SRC_URI="https://github.com/fusesource/${PN}/archive/refs/tags/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? info.picocli:picocli-codegen:4.5.2 -> !!!artifactId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter:5.7.0 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-params:5.7.0 -> !!!groupId-not-found!!!
+
+DEPEND=">=virtual/jdk-1.8:*"
+
+# junit-jupiter is not available in ::gentoo
+# test? (
+# !!!artifactId-not-found!!!
+# !!!groupId-not-found!!!
+# )
+#"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {changelog,readme}.md license.txt )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_MAIN_CLASS="org.fusesource.jansi.AnsiMain"
+
+# junit-jupiter is not available in ::gentoo
+#JAVA_TEST_GENTOO_CLASSPATH="!!!artifactId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!"
+#JAVA_TEST_SRC_DIR="src/test/java"
+#JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+src_prepare() {
+ default
+ # Remove this directory containing libjansi.so, libjansi.jnilib and jansi.dll
+ rm -r "${JAVA_RESOURCE_DIRS}/org/fusesource/jansi/internal/native" || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # build native library.
+ local args=(
+ CCFLAGS="${CFLAGS} ${CXXFLAGS} -Os -fPIC -fvisibility=hidden"
+ LINKFLAGS="-shared ${LDFLAGS}"
+ CC="$(tc-getCC)"
+ STRIP="$(tc-getSTRIP)"
+ LIBNAME="libjansi-$(ver_cut 1-2).so"
+ )
+ emake "${args[@]}" native
+}
+
+src_install() {
+ # default # https://bugs.gentoo.org/789582
+ # default fails with
+ # make: *** No rule to make target 'install'. Stop.
+ java-pkg_doso target/native--/libjansi-$(ver_cut 1-2).so
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jansi/metadata.xml b/dev-java/jansi/metadata.xml
index c609e5e96c84..4f942a28e85d 100644
--- a/dev-java/jansi/metadata.xml
+++ b/dev-java/jansi/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/japitools/Manifest b/dev-java/japitools/Manifest
deleted file mode 100644
index dfa64f844a1c..000000000000
--- a/dev-java/japitools/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST japitools-0.9.7.tar.gz 92537 BLAKE2B 00dd8f7586cbf08aab0bfce9eda477d37798dae17f5d517b1e6ba091604cc2eb6216bd9a9f84be9ccec147cc4f366172a86d8b53f276a3dc33f414ea67d74d2b SHA512 28e2ecb76d8b180134904ec7aef5b15c60b02be32ef2519886eb38bb468f80ab59abb7ce27752ddbd380a3ef580e8435a983cc17797f3147933894786fd8e52d
diff --git a/dev-java/japitools/japitools-0.9.7-r4.ebuild b/dev-java/japitools/japitools-0.9.7-r4.ebuild
deleted file mode 100644
index a8dd8eb2d0b6..000000000000
--- a/dev-java/japitools/japitools-0.9.7-r4.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java API compatibility testing tools"
-HOMEPAGE="http://sab39.netreach.com/japi/"
-SRC_URI="http://www.kaffe.org/~stuart/japi/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-RESTRICT="test"
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- dev-lang/perl
- ${CDEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.7"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
-JAVA_SRC_DIR="src"
-
-src_prepare() {
- default
-
- rm bin/*.bat || die
- sed -e "s:\.\./share/java:../share/${PN}/lib:" -i bin/* \
- || die "Failed to correct the location of the jar file in perl scripts."
-
- java-pkg-2_src_prepare
-}
-
-src_install() {
- dobin bin/*
-
- java-pkg-simple_src_install
- java-pkg_register-ant-task
-}
diff --git a/dev-java/japitools/metadata.xml b/dev-java/japitools/metadata.xml
deleted file mode 100644
index d3913f579046..000000000000
--- a/dev-java/japitools/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-Japitools consists of two simple tools designed to test for compatibility
-between Java APIs. They were originally designed for testing free implementations
-of Java itself for compatibility with Sun's JDK, but they can also be used for
-testing backward compatibility between versions of any API.
-</longdescription>
-
-</pkgmetadata>
diff --git a/dev-java/jargs/Manifest b/dev-java/jargs/Manifest
deleted file mode 100644
index 11d9b1f0f63e..000000000000
--- a/dev-java/jargs/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jargs-1.0.zip 202051 BLAKE2B dbf74d90a5c229f9ca1ba42c8d0b3b35404b3eb7c5dc7af0a76fc222465707b9dbfe44fef63cb1ffbc64821fa2f0c7e8144466e44de9bbf84cf198f5a107e31c SHA512 c121a8850c43fda1561df2ead211d526596b3aa8d01074df86ef0fa68eab83021fbb99ba16f05a0a20185b027f820643189c591bc8b79fb29d579eff4745b359
diff --git a/dev-java/jargs/jargs-1.0.ebuild b/dev-java/jargs/jargs-1.0.ebuild
deleted file mode 100644
index 41dfa42c8715..000000000000
--- a/dev-java/jargs/jargs-1.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Command-line argument parsing library in Java"
-HOMEPAGE="https://github.com/purcell/jargs"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RESTRICT="test"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-java_prepare() {
- java-pkg_clean
- rm -rf src/jargs/{examples,test} || die
-}
diff --git a/dev-java/jargs/metadata.xml b/dev-java/jargs/metadata.xml
deleted file mode 100644
index b4b878fa541f..000000000000
--- a/dev-java/jargs/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">purcell/jargs</remote-id>
- <remote-id type="sourceforge">jargs</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jarjar/Manifest b/dev-java/jarjar/Manifest
deleted file mode 100644
index 7fbb28508169..000000000000
--- a/dev-java/jarjar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jarjar-src-1.4.zip 339014 BLAKE2B 88694826dad529396cd4471aab135782aca7455daa56f2f8d66dbcef2630466b1f3030c95c79ba8cb054f44bbf5dca39652283c41e982eb63f264d5d163ff1d2 SHA512 62af4f07c3fe2b887da959b8251a94fbd1c142e56b3332ad81865eef9ba32ded47883fc37d943c0081a4496ab71ef044022d13f21ccdb8db690638c26fc52c31
diff --git a/dev-java/jarjar/files/0.9-bootclasspath.patch b/dev-java/jarjar/files/0.9-bootclasspath.patch
deleted file mode 100644
index 6a46d1afbd5a..000000000000
--- a/dev-java/jarjar/files/0.9-bootclasspath.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- build.xml 2008-09-13 13:55:40.000000000 +0200
-+++ build.xml 2009-10-06 20:51:53.000000000 +0200
-@@ -48,7 +48,7 @@
- </copy>
- <javac srcdir="src/@{module}" destdir="build/@{module}"
- source="${compile.source}"
-- target="${compile.target}" bootclasspath="@{bootclasspath}" extdirs="${compile.extdirs}"
-+ target="${compile.target}" extdirs="${compile.extdirs}"
- debug="${compile.debug}" optimize="${compile.optimize}" deprecation="${compile.deprecation}">
- <classpath refid="@{refid}"/>
- <compilerarg value="-Xlint"/>
diff --git a/dev-java/jarjar/files/0.9-system-jars.patch b/dev-java/jarjar/files/0.9-system-jars.patch
deleted file mode 100644
index c2fcf98f27e7..000000000000
--- a/dev-java/jarjar/files/0.9-system-jars.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: build.xml
-===================================================================
---- build.xml (revision 90)
-+++ build.xml (working copy)
-@@ -93,6 +93,15 @@
- </jarjar>
- </target>
-
-+ <target name="jar-nojarjar" depends="compile" description="Create Jar Without running JarJar task on it">
-+ <mkdir dir="dist"/>
-+ <jar jarfile="${jarfile}" basedir="build/main/">
-+ <manifest>
-+ <attribute name="Main-Class" value="com.tonicsystems.jarjar.Main"/>
-+ <attribute name="Implementation-Version" value="${version}"/>
-+ </manifest>
-+ </jar>
-+ </target>
- <target name="jar-util" depends="compile" description="Create utility Jar">
- <mkdir dir="dist"/>
- <jar jarfile="${jarfile.util}">
diff --git a/dev-java/jarjar/jarjar-1.4.ebuild b/dev-java/jarjar/jarjar-1.4.ebuild
deleted file mode 100644
index 96536661f674..000000000000
--- a/dev-java/jarjar/jarjar-1.4.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Tool for repackaging third-party jars"
-SRC_URI="https://jarjar.googlecode.com/files/${PN}-src-${PV}.zip"
-HOMEPAGE="http://jarjar.sourceforge.net"
-LICENSE="GPL-2"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE=""
-RESTRICT="test"
-
-CDEPEND="
- dev-java/asm:4
- dev-java/gnu-regexp:1
- dev-java/java-getopt:1
- dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_BUILD_TARGET="jar-nojarjar"
-EANT_GENTOO_CLASSPATH="
- asm-4
- gnu-regexp-1
- java-getopt-1
- ant-core
-"
-
-ANT_TASKS="none"
-
-PATCHES=(
- "${FILESDIR}/0.9-system-jars.patch"
- "${FILESDIR}/0.9-bootclasspath.patch"
-)
-
-JAVA_RM_FILES=(
- src/main/com/tonicsystems/jarjar/JarJarMojo.java
-)
-
-java_prepare() {
- java-pkg_clean
- epatch "${PATCHES[@]}"
-}
-
-src_install() {
- java-pkg_newjar dist/${P}.jar ${PN}.jar
- java-pkg_register-ant-task
- use doc && java-pkg_dojavadoc dist/javadoc
- use source && java-pkg_dosrc src/main/*
-}
diff --git a/dev-java/jarjar/metadata.xml b/dev-java/jarjar/metadata.xml
deleted file mode 100644
index a3e6de3368a5..000000000000
--- a/dev-java/jarjar/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jarjar</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/java-apicheck/Manifest b/dev-java/java-apicheck/Manifest
deleted file mode 100644
index 99c6c70cb769..000000000000
--- a/dev-java/java-apicheck/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST java-apicheck-0_p20150907.tar.gz 1550 BLAKE2B 75d53337c6ead56927897ec26f7c475296564e737eb91c66f330aefed8f0675b27c23cbbf34a27d15e42e3e3a74ac078465b7dd6030faf1fe3d09cd1f45d7255 SHA512 68a3a5443ea26840a526c2e53451e47e441f6ec15b2ddffef8f5d63a50f1129d18cd65506ecfe0bbf3f9829514697648eff8f64e558f0bd5376b0bf2add70b70
diff --git a/dev-java/java-apicheck/java-apicheck-0_p20150907.ebuild b/dev-java/java-apicheck/java-apicheck-0_p20150907.ebuild
deleted file mode 100644
index 2e81654149b2..000000000000
--- a/dev-java/java-apicheck/java-apicheck-0_p20150907.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-DESCRIPTION="Command line tool to check Java packages for API compatibility"
-HOMEPAGE="https://github.com/gentoo/java-apicheck/"
-SRC_URI="https://github.com/gentoo/java-apicheck/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- dev-java/japitools
- dev-java/java-config
- "
-
-src_install() {
- dobin ${PN}
-}
diff --git a/dev-java/java-apicheck/metadata.xml b/dev-java/java-apicheck/metadata.xml
deleted file mode 100644
index df2d24fb7ca7..000000000000
--- a/dev-java/java-apicheck/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">gentoo/java-apicheck</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/java-config/Manifest b/dev-java/java-config/Manifest
index 9cc9cc4e6e3a..3bcc3e4b9642 100644
--- a/dev-java/java-config/Manifest
+++ b/dev-java/java-config/Manifest
@@ -1 +1,2 @@
DIST java-config-2.3.1.tar.gz 26165 BLAKE2B 948506663513db369d0ed8ffdfaa54c643989431430ea03440551a6a4b6725d8eec38f5cb4fde3b64e8936c0f43de0e65a7368469032c646c7b6b3bb7ec3ed13 SHA512 62db555b2d8a37a03b6a03aa133010848d54be33ba6e3c43807abefe665a9d8ff2790baf1af79b98d4a7bd3e9ba6bc64382a24c3fcf7038338123dabd146b7b4
+DIST java-config-2.3.3.tar.gz 33837 BLAKE2B dc522a61775272e520521a06c80ac33cbe40010a40051857df8abdbda72cc064969cb00dbf8f7d06efabd352d9cf2c711808205579c7cef73ce4bb7fe2845c8d SHA512 f999ccbdd47f2552913467d3b0c6704fc6511f2bc9d0a6f62d38a9c2e9899f11b239f2039b025f7fdee5e0713d2aaf13c1a9a9baf4f1551bb97d85b12d3f28e9
diff --git a/dev-java/java-config/java-config-2.3.1-r1.ebuild b/dev-java/java-config/java-config-2.3.1-r1.ebuild
new file mode 100644
index 000000000000..13f2ded5c0e8
--- /dev/null
+++ b/dev-java/java-config/java-config-2.3.1-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# jython depends on java-config, so don't add it or things will break
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_SETUPTOOLS=no
+
+inherit distutils-r1 prefix
+
+DESCRIPTION="Java environment configuration query tool"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
+SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( sys-apps/portage[${PYTHON_USEDEP}] )"
+
+# baselayout-java is added as a dep till it can be added to eclass.
+RDEPEND="
+ sys-apps/baselayout-java
+ sys-apps/portage[${PYTHON_USEDEP}]"
+
+python_configure_all() {
+ # setup.py fails to update this file
+ eprefixify src/launcher.bash
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ # This replaces the file installed by java-config-wrapper.
+ dosym java-config-2 /usr/bin/java-config
+}
+
+python_test() {
+ esetup.py test
+}
diff --git a/dev-java/java-config/java-config-2.3.1.ebuild b/dev-java/java-config/java-config-2.3.1.ebuild
deleted file mode 100644
index 69ba112dacfd..000000000000
--- a/dev-java/java-config/java-config-2.3.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# jython depends on java-config, so don't add it or things will break
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=no
-
-inherit distutils-r1
-
-DESCRIPTION="Java environment configuration query tool"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
-SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="test? ( sys-apps/portage[${PYTHON_USEDEP}] )"
-
-# baselayout-java is added as a dep till it can be added to eclass.
-RDEPEND="
- sys-apps/baselayout-java
- sys-apps/portage[${PYTHON_USEDEP}]"
-
-python_install_all() {
- distutils-r1_python_install_all
-
- # This replaces the file installed by java-config-wrapper.
- dosym java-config-2 /usr/bin/java-config
-}
-
-python_test() {
- esetup.py test
-}
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
new file mode 100644
index 000000000000..ab1cb1b890e9
--- /dev/null
+++ b/dev-java/java-config/java-config-2.3.3-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-r1
+
+if [[ ${PV} = 9999 ]]; then
+ inherit git-r3
+ 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"
+fi
+
+DESCRIPTION="Java environment configuration query tool"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
+
+LICENSE="GPL-2"
+SLOT="2"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="test? ( sys-apps/portage[${PYTHON_USEDEP}] )"
+
+# baselayout-java is added as a dep till it can be added to eclass.
+RDEPEND="
+ ${PYTHON_DEPS}
+ sys-apps/baselayout-java
+ sys-apps/portage[${PYTHON_USEDEP}]
+"
+
+src_configure() {
+ local python_only=false
+ python_foreach_impl my_src_configure
+}
+
+my_src_configure() {
+ local emesonargs=(
+ -Darch="${ARCH}"
+ -Dpython-only="${python_only}"
+ -Deprefix="${EPREFIX}"
+ )
+
+ meson_src_configure
+ python_only=true
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
+
+src_test() {
+ python_foreach_impl meson_src_test --no-rebuild --verbose
+}
+
+src_install() {
+ python_foreach_impl my_src_install
+
+ local scripts
+ mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/bin/* || die)
+ python_replicate_script "${scripts[@]}"
+
+ # This replaces the file installed by java-config-wrapper.
+ dosym java-config-2 /usr/bin/java-config
+}
+
+my_src_install() {
+ meson_src_install
+
+ local pydirs=(
+ "${D}$(python_get_sitedir)"
+ )
+ python_optimize "${pydirs[@]}"
+}
diff --git a/dev-java/java-config/java-config-9999.ebuild b/dev-java/java-config/java-config-9999.ebuild
index b0bfd8b90715..1b124ce70a3a 100644
--- a/dev-java/java-config/java-config-9999.ebuild
+++ b/dev-java/java-config/java-config-9999.ebuild
@@ -1,20 +1,18 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-# jython depends on java-config, so don't add it or things will break
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=no
+PYTHON_COMPAT=( python3_{10..12} )
-inherit distutils-r1
+inherit meson python-r1
-if [[ ${PV} = *9999 ]]; then
+if [[ ${PV} = 9999 ]]; then
inherit git-r3
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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-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"
@@ -22,23 +20,61 @@ HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
LICENSE="GPL-2"
SLOT="2"
-IUSE="test"
+IUSE="+compat test"
RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="test? ( sys-apps/portage[${PYTHON_USEDEP}] )"
# baselayout-java is added as a dep till it can be added to eclass.
RDEPEND="
+ ${PYTHON_DEPS}
sys-apps/baselayout-java
- sys-apps/portage[${PYTHON_USEDEP}]"
+ sys-apps/portage[${PYTHON_USEDEP}]
+"
-python_install_all() {
- distutils-r1_python_install_all
+src_configure() {
+ local python_only=false
+ python_foreach_impl my_src_configure
+}
+
+my_src_configure() {
+ local emesonargs=(
+ -Darch="${ARCH}"
+ -Dpython-only="${python_only}"
+ -Deprefix="${EPREFIX}"
+ )
+
+ meson_src_configure
+ python_only=true
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
- # This replaces the file installed by java-config-wrapper.
- dosym java-config-2 /usr/bin/java-config
+src_test() {
+ python_foreach_impl meson_src_test --no-rebuild --verbose
}
-python_test() {
- esetup.py test
+src_install() {
+ python_foreach_impl my_src_install
+
+ local scripts
+ mapfile -t scripts < <(awk '/^#!.*python/ {print FILENAME} {nextfile}' "${ED}"/usr/bin/* || die)
+ python_replicate_script "${scripts[@]}"
+
+ if use compat; then
+ # Symlink java-config-2 to java-config for now.
+ dosym java-config /usr/bin/java-config-2
+ fi
+}
+
+my_src_install() {
+ meson_src_install
+
+ local pydirs=(
+ "${D}$(python_get_sitedir)"
+ )
+ python_optimize "${pydirs[@]}"
}
diff --git a/dev-java/java-config/metadata.xml b/dev-java/java-config/metadata.xml
index fb57516300d3..faeac11b5e48 100644
--- a/dev-java/java-config/metadata.xml
+++ b/dev-java/java-config/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -11,4 +11,11 @@
per-user default JVMs, construct classpath env vars from installed java
packages and be used to query for the path to various JDK tools.
</longdescription>
+ <use>
+ <flag name="compat">Install bin/java-config-2 symlink pointing to java-config</flag>
+ </use>
+ <upstream>
+ <remote-id type="gentoo">proj/java-config</remote-id>
+ <remote-id type="github">gentoo/java-config</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/java-dep-check/files/Main-0.5.java b/dev-java/java-dep-check/files/Main-0.5.java
index bcd6b4f2a9d6..b8a1e053e301 100644
--- a/dev-java/java-dep-check/files/Main-0.5.java
+++ b/dev-java/java-dep-check/files/Main-0.5.java
@@ -73,7 +73,7 @@ public final class Main extends ClassVisitor {
* Empty Constructor, sets ASM op code version
*/
public Main() {
- super(Opcodes.ASM5);
+ super(Opcodes.ASM9);
}
/**
diff --git a/dev-java/java-dep-check/java-dep-check-0.5-r3.ebuild b/dev-java/java-dep-check/java-dep-check-0.5-r3.ebuild
new file mode 100644
index 000000000000..0ab6c71728ef
--- /dev/null
+++ b/dev-java/java-dep-check/java-dep-check-0.5-r3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2016-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java Dependency checker"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+CP_DEPEND="
+ dev-java/commons-cli:1
+ dev-java/asm:9"
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+PDEPEND="dev-java/javatoolkit:0"
+
+JAVA_MAIN_CLASS="javadepchecker.Main"
+
+src_unpack() {
+ cp "${FILESDIR}/Main-${PV}.java" Main.java || die
+}
diff --git a/dev-java/java-dep-check/java-dep-check-0.5.ebuild b/dev-java/java-dep-check/java-dep-check-0.5.ebuild
deleted file mode 100644
index ef6057f4e111..000000000000
--- a/dev-java/java-dep-check/java-dep-check-0.5.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2016-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java Dependency checker"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-COMMON_DEP="
- dev-java/commons-cli:1
- dev-java/asm:4"
-RDEPEND=">=virtual/jre-1.8:*
- ${COMMON_DEP}"
-DEPEND=">=virtual/jdk-1.8:*
- ${COMMON_DEP}"
-
-JAVA_GENTOO_CLASSPATH="asm-4,commons-cli-1"
-
-src_unpack() {
- cp "${FILESDIR}/Main-${PV}.java" Main.java || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${PN} --main javadepchecker.Main
-}
diff --git a/dev-java/java-dep-check/metadata.xml b/dev-java/java-dep-check/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/java-dep-check/metadata.xml
+++ b/dev-java/java-dep-check/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/java-diff-utils/Manifest b/dev-java/java-diff-utils/Manifest
new file mode 100644
index 000000000000..4d0a48225dde
--- /dev/null
+++ b/dev-java/java-diff-utils/Manifest
@@ -0,0 +1,2 @@
+DIST java-diff-utils-1.3.0-sources.jar 35161 BLAKE2B 365b2b3a8701a7bf63b1fc8c34f8a54d7a5f67b3b485e91ea3489303de821d5ac08aac4e2b13d140b045b6b45393d293a825e92e800cd34c3b84a17442d548bc SHA512 16426c13fde20c606ac5dc01b4ee368d10360c45c4569879c94d30ac41aba372e9865a7b5db3a68067ea26bdade538eeea4e3e38900f8627beb21d7e48968e62
+DIST java-diff-utils-parent-4.12.tar.gz 2080632 BLAKE2B 36cb824bd00e946484dc62b3d5739620eeff6f509cdfa3f521144c21ea9d5de43ccc838700d3d9d116817dc1256d90fe1bdb552b02a2c7cff1e6b702b889f8d0 SHA512 0ac8f633e01f70b6c0f243b65c95716a1237142abde96eed3211a5ee5afb5bf721e936a67b4e2ce27e1df34a8402d0fbcb830e0557bd32cd24a7529d80e61e5c
diff --git a/dev-java/java-diff-utils/java-diff-utils-1.3.0.ebuild b/dev-java/java-diff-utils/java-diff-utils-1.3.0.ebuild
new file mode 100644
index 000000000000..aa0b2dd5d3db
--- /dev/null
+++ b/dev-java/java-diff-utils/java-diff-utils-1.3.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom diffutils-1.3.0.pom.xml --download-uri https://repo1.maven.org/maven2/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0-sources.jar --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild java-diff-utils-1.3.0.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.googlecode.java-diff-utils:diffutils:1.3.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Library for computing diffs, applying patches, generationg side-by-side view"
+HOMEPAGE="http://code.google.com/p/java-diff-utils/"
+SRC_URI="https://repo1.maven.org/maven2/com/googlecode/${PN}/diffutils/${PV}/diffutils-${PV}-sources.jar -> ${P}-sources.jar"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
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
new file mode 100644
index 000000000000..eda5f5df35e7
--- /dev/null
+++ b/dev-java/java-diff-utils/java-diff-utils-4.12.ebuild
@@ -0,0 +1,33 @@
+# 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="io.github.java-diff-utils:java-diff-utils:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Library for computing diffs, applying patches, generationg side-by-side view"
+HOMEPAGE="https://java-diff-utils.github.io/java-diff-utils/"
+SRC_URI="https://github.com/java-diff-utils/java-diff-utils/archive/java-diff-utils-parent-${PV}.tar.gz"
+S="${WORKDIR}/java-diff-utils-java-diff-utils-parent-${PV}/java-diff-utils"
+
+LICENSE="Apache-2.0"
+SLOT="4"
+KEYWORDS="amd64 arm64 ppc64 x86"
+RESTRICT="test" #839681
+
+BDEPEND="app-arch/unzip"
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="io.github.javadiffutils"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="
+ assertj-core-3
+ junit-5
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/java-diff-utils/metadata.xml b/dev-java/java-diff-utils/metadata.xml
new file mode 100644
index 000000000000..4df5c7c25054
--- /dev/null
+++ b/dev-java/java-diff-utils/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">java-diff-utils/java-diff-utils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/java-getopt/java-getopt-1.0.14-r1.ebuild b/dev-java/java-getopt/java-getopt-1.0.14-r1.ebuild
deleted file mode 100644
index 2cf4dd980a50..000000000000
--- a/dev-java/java-getopt/java-getopt-1.0.14-r1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 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-ant-2
-
-DESCRIPTION="Java command line option parser"
-HOMEPAGE="https://www.urbanophile.com/arenn/hacking/download.html"
-SRC_URI="https://www.urbanophile.com/arenn/hacking/getopt/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}"
-
-src_prepare() {
- default
- mv gnu/getopt/buildx.xml build.xml || die
-}
-
-src_install() {
- java-pkg_dojar build/lib/gnu.getopt.jar
- dodoc gnu/getopt/COPYING.LIB gnu/getopt/ChangeLog gnu/getopt/README
- use doc && java-pkg_dojavadoc build/api
- use source && java-pkg_dosrc gnu
-}
diff --git a/dev-java/java-getopt/java-getopt-1.0.14-r2.ebuild b/dev-java/java-getopt/java-getopt-1.0.14-r2.ebuild
new file mode 100644
index 000000000000..44bec027d4f2
--- /dev/null
+++ b/dev-java/java-getopt/java-getopt-1.0.14-r2.ebuild
@@ -0,0 +1,32 @@
+# 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="gnu.getopt:java-getopt:§{PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java command line option parser"
+HOMEPAGE="https://www.urbanophile.com/arenn/hacking/download.html"
+SRC_URI="https://www.urbanophile.com/arenn/hacking/getopt/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="1"
+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:*"
+
+DOCS=( gnu/getopt/{COPYING.LIB,ChangeLog,LANGUAGES,README} )
+
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="gnu/getopt"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir resources || die
+ find gnu/getopt -type f -name '*.properties' \
+ | xargs cp --parent -t resources || die
+}
diff --git a/dev-java/java-getopt/metadata.xml b/dev-java/java-getopt/metadata.xml
index 2444066aa02b..f44f7c814750 100644
--- a/dev-java/java-getopt/metadata.xml
+++ b/dev-java/java-getopt/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">arenn/java-getopt</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/java-service-wrapper/Manifest b/dev-java/java-service-wrapper/Manifest
index 4d19c3dcacee..36956ebce1ae 100644
--- a/dev-java/java-service-wrapper/Manifest
+++ b/dev-java/java-service-wrapper/Manifest
@@ -1 +1 @@
-DIST wrapper_3.5.25_src.tar.gz 556678 BLAKE2B bead95eb2feebe0c22f8c66ca948185c320a979e498fb5156de576d443ba6e3375efb6244a66db6af101fa7dc459d983b51631fc237ad4578505be47059cf2c7 SHA512 4ce8ab5dc7acc4d78e7b902a61bb1e3785b5455f81438aa61a877107647e88ade595075ff0b8d5db0ff2b33bb94d70c2b1331561d6d282e497998eea9494c6f4
+DIST wrapper_3.5.50_src.tar.gz 779253 BLAKE2B 64863e408c2147014946f869bbd98775d1d23d4cd63ef562167f40191febf87cc72697a55fe2ec6a5d085f3df4897cc4485f4ed88a3ee3a7f7930215448972f7 SHA512 403deec1bcc70a93ce0b0749bf2d5bc27a4a540d07785bc3ac83b38257cc5e8247a784f646770c96ac318f22d30c463dafb2f002720041b93443b292d6669c09
diff --git a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-as-needed.patch b/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-as-needed.patch
deleted file mode 100644
index 3eac44c0dc6c..000000000000
--- a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-as-needed.patch
+++ /dev/null
@@ -1,157 +0,0 @@
-https://bugs.gentoo.org/622806
-https://sourceforge.net/p/wrapper/patches/25/
---- a/src/c/Makefile-linux-armel-32.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-armel-32.make 2014-07-21 10:50:11.000000000 +0200
-@@ -33,14 +33,14 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
---- a/src/c/Makefile-linux-armhf-32.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-armhf-32.make 2014-07-21 10:51:05.000000000 +0200
-@@ -33,14 +33,14 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
---- a/src/c/Makefile-linux-ia-64.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-ia-64.make 2014-07-21 10:51:37.000000000 +0200
-@@ -33,14 +33,14 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -lm -pthread $(wrapper_SOURCE) -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -lm -pthread $(wrapper_SOURCE) -o $(BIN)/wrapper
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -lm -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -lm -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
---- a/src/c/Makefile-linux-ppc-32.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-ppc-32.make 2014-07-21 10:52:05.000000000 +0200
-@@ -33,14 +33,14 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -lm -pthread $(wrapper_SOURCE) -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -lm -pthread $(wrapper_SOURCE) -o $(BIN)/wrapper
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
---- a/src/c/Makefile-linux-ppc-64.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-ppc-64.make 2014-07-21 10:52:45.000000000 +0200
-@@ -33,14 +33,14 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -lm -pthread $(wrapper_SOURCE) -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -lm -pthread $(wrapper_SOURCE) -o $(BIN)/wrapper
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
---- a/src/c/Makefile-linux-x86-32.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-x86-32.make 2014-07-21 10:53:39.000000000 +0200
-@@ -36,17 +36,17 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-
- testsuite: $(testsuite_SOURCE)
-- $(COMPILE) -DCUNIT $(testsuite_SOURCE) -lm -pthread -L/usr/local/lib -lncurses -lcunit -o $(TEST)/testsuite
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -DCUNIT $(testsuite_SOURCE) -lm -pthread -L/usr/local/lib -lncurses -lcunit -o $(TEST)/testsuite
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
---- a/src/c/Makefile-linux-x86-64.make.old 2014-07-21 10:48:31.000000000 +0200
-+++ b/src/c/Makefile-linux-x86-64.make 2014-07-21 10:54:16.000000000 +0200
-@@ -36,17 +36,17 @@
- if test ! -d .deps; then mkdir .deps; fi
-
- wrapper: $(wrapper_SOURCE)
-- $(COMPILE) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -pthread $(wrapper_SOURCE) -lm -o $(BIN)/wrapper
-
- testsuite: $(testsuite_SOURCE)
-- $(COMPILE) -DCUNIT $(testsuite_SOURCE) -lm -pthread -L/usr/local/lib -lncurses -lcunit -o $(TEST)/testsuite
-+ $(COMPILE) $(CFLAGS) $(LDFLAGS) -DCUNIT $(testsuite_SOURCE) -lm -pthread -L/usr/local/lib -lncurses -lcunit -o $(TEST)/testsuite
-
- libwrapper.so: $(libwrapper_so_OBJECTS)
-- ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-+ ${COMPILE} $(LDFLAGS) -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
-
- %.o: %.c
-- @echo '$(COMPILE) -c $<'; \
-- $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @echo '$(COMPILE) $(CFLAGS) -c $<'; \
-+ $(COMPILE) $(CFLAGS) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $<
- @-cp .deps/$(*F).pp .deps/$(*F).P; \
- tr ' ' '\012' < .deps/$(*F).pp \
- | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
diff --git a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch b/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch
index a859a893bd1c..135c5a1ae8bf 100644
--- a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch
+++ b/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch
@@ -10,7 +10,7 @@
| it is run directly as they have a check to make sure it is launched via a
| symbolic link.
|
-
+# https://bugs.gentoo.org/878869
--- a/src/c/wrapper.c.old 2014-07-21 09:12:55.000000000 +0200
+++ b/src/c/wrapper.c 2014-07-21 09:13:22.000000000 +0200
@@ -4908,7 +4908,7 @@
diff --git a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-testsuite.patch b/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-testsuite.patch
deleted file mode 100644
index d279cdf0f4ea..000000000000
--- a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-testsuite.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -u -r wrapper_3.5.25_src.orig/src/c/Makefile-linux-x86-64.make wrapper_3.5.25_src/src/c/Makefile-linux-x86-64.make
---- wrapper_3.5.25_src.orig/src/c/Makefile-linux-x86-64.make 2014-09-06 00:06:05.730644375 +0200
-+++ wrapper_3.5.25_src/src/c/Makefile-linux-x86-64.make 2014-09-06 00:06:51.130013387 +0200
-@@ -23,7 +23,7 @@
- LIB = ../../lib
- TEST = ../../test
-
--all: init wrapper libwrapper.so testsuite
-+all: init wrapper libwrapper.so
-
- clean:
- rm -f *.o
diff --git a/dev-java/java-service-wrapper/java-service-wrapper-3.5.25-r2.ebuild b/dev-java/java-service-wrapper/java-service-wrapper-3.5.25-r2.ebuild
deleted file mode 100644
index 5ad4333b0e62..000000000000
--- a/dev-java/java-service-wrapper/java-service-wrapper-3.5.25-r2.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-inherit java-pkg-2 java-ant-2 toolchain-funcs
-
-MY_PN="wrapper"
-MY_P="${MY_PN}_${PV}_src"
-DESCRIPTION="A wrapper that makes it possible to install a Java Application as daemon"
-HOMEPAGE="http://wrapper.tanukisoftware.org/"
-SRC_URI="http://${MY_PN}.tanukisoftware.org/download/${PV}/${MY_P}.tar.gz"
-
-LICENSE="tanuki-community"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- virtual/jre:1.8"
-DEPEND="
- virtual/jdk:1.8
- test? (
- dev-java/ant-junit:0
- )"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-PATCHES=(
- "${FILESDIR}"/${P}-as-needed.patch
- "${FILESDIR}"/${P}-gentoo-wrapper-defaults.patch
- "${FILESDIR}"/${P}-testsuite.patch
-)
-
-src_prepare() {
- default
-
- cp "${S}/src/c/Makefile-linux-armel-32.make" "${S}/src/c/Makefile-linux-arm-32.make"
-}
-
-src_compile() {
- tc-export CC
- BITS="32"
- use amd64 && BITS="64"
- eant -Dbits=${BITS} jar compile-c
- if use doc; then
- ejavadoc -d api -sourcepath src/java/ -subpackages org \
- || die "javadoc failed"
- fi
-}
-
-src_test() {
- ANT_TASKS="ant-junit" eant -Dbits="${BITS}" test
-}
-
-src_install() {
- java-pkg_dojar lib/wrapper.jar
- java-pkg_doso lib/libwrapper.so
-
- dobin bin/wrapper
- dodoc README*.txt
- dodoc doc/revisions.txt
-
- use doc && java-pkg_dojavadoc api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild b/dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild
new file mode 100644
index 000000000000..8fdfe9ac2063
--- /dev/null
+++ b/dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2023 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 toolchain-funcs java-ant-2
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+DESCRIPTION="A wrapper that makes it possible to install a Java Application as daemon"
+HOMEPAGE="https://wrapper.tanukisoftware.com"
+SRC_URI="https://download.tanukisoftware.com/wrapper/${PV}/wrapper_${PV}_src.tar.gz"
+
+LICENSE="tanuki-community"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/junit:4
+ dev-util/cunit
+ )
+"
+BDEPEND="virtual/jdk"
+
+S="${WORKDIR}/wrapper_${PV}_src"
+
+JAVA_SRC_DIR="src/java/"
+JAVA_JAR_FILENAME="wrapper.jar"
+JAVA_TEST_SRC_DIR="src/test"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+PATCHES=(
+ "${FILESDIR}"/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch
+)
+
+src_prepare() {
+ default
+
+ # replaces as-needed.patch
+ sed -i \
+ -e 's/gcc -O3/$(CC)/g' \
+ -e 's/ -pthread/ $(CFLAGS) $(LDFLAGS) -pthread/g' \
+ -e 's/ -shared/ $(LDFLAGS) -shared/g' \
+ -e 's/$(TEST)\/testsuite/testsuite/g' \
+ src/c/Makefile-*.make || die
+
+ cp "${S}/src/c/Makefile-linux-armel-32.make" "${S}/src/c/Makefile-linux-arm-32.make"
+ java-pkg-2_src_prepare
+
+ # disable tests by default (they are only enabled by default on amd64)
+ sed -e "s/\(all: init wrapper libwrapper.so\) testsuite/\1/g" \
+ -i src/c/Makefile-linux-x86-64.make || die
+
+ # re-enable tests on all platforms if requested
+ if use test; then
+ grep "testsuite_SOURCE" "src/c/Makefile-linux-x86-64.make" | tee -a src/c/Makefile-*.make
+ assert
+ echo 'all: testsuite' | tee -a src/c/Makefile-*.make
+ assert
+ fi
+}
+
+src_compile() {
+ tc-export CC
+
+ pushd "${T}" || die
+ echo 'public class GetArchDataModel{public static void main(String[] args){System.out.println(System.getProperty("sun.arch.data.model"));}}' \
+ > GetArchDataModel.java || die
+ ejavac GetArchDataModel.java
+ local BITS
+ BITS="$(java GetArchDataModel)" || die "Failed to identify sun.arch.data.model property"
+ popd || die
+ eant -Dbits="${BITS}" compile-c
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ src/c/testsuite --basic || die
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_doso lib/libwrapper.so
+
+ dobin bin/wrapper
+ dodoc README*.txt
+ dodoc doc/revisions.txt
+}
diff --git a/dev-java/java-service-wrapper/metadata.xml b/dev-java/java-service-wrapper/metadata.xml
index 20395dafad7c..6359f0ec48b3 100644
--- a/dev-java/java-service-wrapper/metadata.xml
+++ b/dev-java/java-service-wrapper/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/javacc/Manifest b/dev-java/javacc/Manifest
index b126cef8bf5a..aea384cd1646 100644
--- a/dev-java/javacc/Manifest
+++ b/dev-java/javacc/Manifest
@@ -1 +1,3 @@
-DIST javacc-5.0src.tar.gz 810123 BLAKE2B 6833e79a33c7ae8b28902d1c372162a2f9e326629f0d4c1936a8c3638d3aa3f6bd5713aca8398ba5f1ff963fe585eb683fcd3009602ee592ba79692c8ba0f3d6 SHA512 91896a0affac1c4fd00a093a731dfd02bda548d1a4d83e1077ed36a67f4f9deab0ce9f2d0212fd4c08ab00065d3029533adbafbc026a22ca071285093bd3bba6
+DIST javacc-4.1.tar.gz 769476 BLAKE2B c2a22fa78ff4dcf1e36221a23ca1e3cd1eecb473a59ea94ce52e298673f6bd18c0ea0cf757dd68885696ebc8cc724d271c69c923a21ffa433d03c1062b1201ee SHA512 911e5e9f062561ade1748dcef3596e0f25c399c4d52dd174773783dadf24a4ceea8d3feab9ab08880370677959051d8557aed815d4c4184f5ecd5789ee8a5754
+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-r3.ebuild b/dev-java/javacc/javacc-5.0-r3.ebuild
deleted file mode 100644
index 455204cb8ba3..000000000000
--- a/dev-java/javacc/javacc-5.0-r3.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java Compiler Compiler - The Java Parser Generator"
-HOMEPAGE="https://javacc.java.net/"
-SRC_URI="http://java.net/projects/${PN}/downloads/download/${P}src.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-
-CDEPEND="dev-java/junit:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- test? ( dev-java/ant-junit:0 )"
-
-S="${WORKDIR}/${PN}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.0-javadoc.patch
-)
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
-
-EANT_GENTOO_CLASSPATH="junit"
-
-src_prepare() {
- default
-
- rm -v lib/junit*/*.jar || die
-}
-
-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 doc/api
- fi
-
- use examples && java-pkg_doexamples examples
- use source && java-pkg_dosrc src/*
-
- echo "JAVACC_HOME=${EPREFIX}/usr/share/javacc/" > "${T}"/22javacc || die
- doenvd "${T}"/22javacc
-
- 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-7.0.13.ebuild b/dev-java/javacc/javacc-7.0.13.ebuild
new file mode 100644
index 000000000000..426250e1ea05
--- /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 ppc64"
+
+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..58d0ccdccbcb
--- /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 ~x86"
+
+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 2444066aa02b..ceba116c02a9 100644
--- a/dev-java/javacc/metadata.xml
+++ b/dev-java/javacc/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">javacc/javacc</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-java/javacsv/Manifest b/dev-java/javacsv/Manifest
deleted file mode 100644
index 811b4ba33f5c..000000000000
--- a/dev-java/javacsv/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST javacsv2.1.zip 89333 BLAKE2B b13970211056f8c3dbd96a358fe945d3a0221be2fa57a60a7b196b9ba15721445312be2b4a97015cd7609d3cce9c77936b2e899aeef6fa3f5afe205ebf70557b SHA512 beefeae1306163a21d4237dc3cccde9ffba0435fa898d95a77f33ec45f383e81e7a804d33918ba2a47fb004ed6f8734b8567d11a3ad63d1be3f9d1fa53e153ee
diff --git a/dev-java/javacsv/javacsv-2.1.ebuild b/dev-java/javacsv/javacsv-2.1.ebuild
deleted file mode 100644
index a72dd3b86e3c..000000000000
--- a/dev-java/javacsv/javacsv-2.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-RESTRICT="test"
-
-DESCRIPTION="Java library for reading and writing CSV and plain delimited text files"
-HOMEPAGE="https://www.csvreader.com/java_csv.php"
-SRC_URI="mirror://sourceforge/${PN}/${P/-/}.zip"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}"
-
-java_prepare() {
- rm -rfv doc "${PN}".jar || die "error cleaning up"
- mv -v src/AllTests.java . || die "error moving tests"
-}
-
-EANT_BUILD_TARGET="dist"
-EANT_DOC_TARGET=""
-
-src_compile() {
- java-pkg-2_src_compile
- use doc && eant -f "${S}"/javadoc.xml
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- use doc && java-pkg_dojavadoc doc
- use source && java-pkg_dosrc src
-}
diff --git a/dev-java/javacsv/metadata.xml b/dev-java/javacsv/metadata.xml
deleted file mode 100644
index 238d27a99f06..000000000000
--- a/dev-java/javacsv/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- <name>Patrice Clement</name>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">javacsv</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/javacup/javacup-0.11b_p20151001-r1.ebuild b/dev-java/javacup/javacup-0.11b_p20151001-r1.ebuild
index d541109c2e08..4fd75cc0bcbd 100644
--- a/dev-java/javacup/javacup-0.11b_p20151001-r1.ebuild
+++ b/dev-java/javacup/javacup-0.11b_p20151001-r1.ebuild
@@ -18,7 +18,7 @@ SRC_URI="http://www2.cs.tum.edu/projects/cup/releases/java-cup-src-${MY_PV}.tar.
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
DEPEND="dev-java/ant-core:0
dev-java/jflex:0
diff --git a/dev-java/javacup/metadata.xml b/dev-java/javacup/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/javacup/metadata.xml
+++ b/dev-java/javacup/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/javahelp/javahelp-2.0.05_p20170719-r3.ebuild b/dev-java/javahelp/javahelp-2.0.05_p20170719-r3.ebuild
new file mode 100644
index 000000000000..73a927bee381
--- /dev/null
+++ b/dev-java/javahelp/javahelp-2.0.05_p20170719-r3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+COMMIT="3ca862d8626096770598a3a256886d205246f4a4"
+JAVA_PKG_IUSE="examples source"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="The JavaHelp system online help system"
+HOMEPAGE="https://javaee.github.io/javahelp/"
+SRC_URI="https://github.com/javaee/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+CDEPEND="
+ dev-java/javax-jsp-api:2.0
+ dev-java/javax-servlet-api:2.5
+"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CDEPEND}"
+
+DEPEND="virtual/jdk:1.8
+ ${CDEPEND}"
+
+JAVA_PKG_NV_DEPEND="virtual/jdk:1.8"
+
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+_eant() {
+ local \
+ servlet_jar=$(java-pkg_getjars javax-servlet-api-2.5) \
+ jsp_jar=$(java-pkg_getjars javax-jsp-api-2.0)
+
+ eant \
+ -f javahelp_nbproject/build.xml \
+ -Dfile.reference.servlet-api.jar="${servlet_jar}" \
+ -Dfile.reference.jsp-api.jar="${jsp_jar}" \
+ -Dservlet-jar="${servlet_jar}" \
+ -Djsp-jar="${jsp_jar}" \
+ -Dservlet-jar-present=true \
+ -Djsp-jar-present=true \
+ -Dtomcat-zip-present=true \
+ ${@}
+}
+
+src_compile() {
+ _eant release
+}
+
+#Does not actually run anything
+#src_test() {
+# _eant test
+#}
+
+src_install() {
+ java-pkg_dojar javahelp_nbproject/dist/lib/*.jar
+
+ java-pkg_dolauncher jhsearch \
+ --main com.sun.java.help.search.QueryEngine
+ java-pkg_dolauncher jhindexer \
+ --main com.sun.java.help.search.Indexer
+
+ use source && java-pkg_dosrc \
+ jhMaster/JSearch/*/com \
+ jhMaster/JavaHelp/src/*/{javax,com}
+
+ use examples && java-pkg_doexamples jhMaster/JavaHelp/demos
+}
diff --git a/dev-java/javahelp/javahelp-2.0.05_p20170719.ebuild b/dev-java/javahelp/javahelp-2.0.05_p20170719.ebuild
deleted file mode 100644
index 4761d095147b..000000000000
--- a/dev-java/javahelp/javahelp-2.0.05_p20170719.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-COMMIT="3ca862d8626096770598a3a256886d205246f4a4"
-JAVA_PKG_IUSE="examples source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="The JavaHelp system online help system"
-HOMEPAGE="https://javaee.github.io/javahelp/"
-SRC_URI="https://github.com/javaee/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2-with-linking-exception"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-CDEPEND="java-virtuals/servlet-api:2.4"
-
-RDEPEND=">=virtual/jre-1.4
- ${CDEPEND}"
-
-DEPEND="virtual/jdk:1.8
- ${CDEPEND}"
-
-JAVA_PKG_NV_DEPEND="virtual/jdk:1.8"
-
-S="${WORKDIR}/${PN}-${COMMIT}"
-
-_eant() {
- local \
- servlet_jar=$(java-pkg_getjar --virtual servlet-api-2.4 servlet-api.jar) \
- jsp_jar=$(java-pkg_getjar --virtual servlet-api-2.4 jsp-api.jar)
-
- eant \
- -f javahelp_nbproject/build.xml \
- -Dfile.reference.servlet-api.jar="${servlet_jar}" \
- -Dfile.reference.jsp-api.jar="${jsp_jar}" \
- -Dservlet-jar="${servlet_jar}" \
- -Djsp-jar="${jsp_jar}" \
- -Dservlet-jar-present=true \
- -Djsp-jar-present=true \
- -Dtomcat-zip-present=true \
- ${@}
-}
-
-src_compile() {
- _eant release
-}
-
-#Does not actually run anything
-#src_test() {
-# _eant test
-#}
-
-src_install() {
- java-pkg_dojar javahelp_nbproject/dist/lib/*.jar
-
- java-pkg_dolauncher jhsearch \
- --main com.sun.java.help.search.QueryEngine
- java-pkg_dolauncher jhindexer \
- --main com.sun.java.help.search.Indexer
-
- use source && java-pkg_dosrc \
- jhMaster/JSearch/*/com \
- jhMaster/JavaHelp/src/*/{javax,com}
-
- use examples && java-pkg_doexamples jhMaster/JavaHelp/demos
-}
diff --git a/dev-java/javahelp/metadata.xml b/dev-java/javahelp/metadata.xml
index ab6ba2ec6094..1bce4ec84d8e 100644
--- a/dev-java/javahelp/metadata.xml
+++ b/dev-java/javahelp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -12,4 +12,7 @@
implementation of that specification. The JavaHelp system open source
project includes the source to the reference implementation.
</longdescription>
+ <upstream>
+ <remote-id type="github">javaee/javahelp</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..3f8887785b01
--- /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 ~x86"
+
+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/javassist/Manifest b/dev-java/javassist/Manifest
index c1980d239802..ab442f432fc0 100644
--- a/dev-java/javassist/Manifest
+++ b/dev-java/javassist/Manifest
@@ -1,2 +1 @@
-DIST javassist-2.6.zip 1143271 BLAKE2B 05f4e5ebc47420054d4c3d2f77cde33b92e616f3c6740fc030e69b90a697bfbb67be300375d9efc1929a2acfe3493f427222f8a7b1e3137d8bc42f749e51f840 SHA512 8a6da5e2a44cc3bc5b87538a4eda56808d13998d8c9932153f9bb42a1c7844d1a1c7311eb22b0b4ad04649bb7c22156acf851bee638cffbd3328bcef1d2a9f37
-DIST javassist-3.18.2.tar.gz 1179428 BLAKE2B cc7dfebca2e47576f902e6249c1efb65c18823e75ba3698c2d94541bdc910b9b7547e8619c1f19a84c158771230ddd112ddb0445ed97cd64810beacf3468a1ba SHA512 67f22a70584eba31088d63b7862f0f7872a6a7ec57f4397b95044695af75be005e86aa5a5f20fe8e650c2178a9b63b4b922accf940b46ceb1c8e7ce9c51798ca
+DIST javassist-3.29.2.tar.gz 1293705 BLAKE2B 23101970a3fe9e4428b9e2e55ec2973663b537b2e205db55952bce116eb0cdd327e156f9bebf16a3c4322d8e5002d612067b14e8d234e87524361b5f08c9ecde SHA512 651f48d9138b54d4816611c077614bbb15f8189d755c2c2c7e5c2dfb35ad8f48cd9d2e0532edbd565456a923b3166eaecdde8702d65c70a32eb21c2d42f67bfc
diff --git a/dev-java/javassist/javassist-2.6-r2.ebuild b/dev-java/javassist/javassist-2.6-r2.ebuild
deleted file mode 100644
index 01083b6a1505..000000000000
--- a/dev-java/javassist/javassist-2.6-r2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Javassist makes Java bytecode manipulation simple"
-SRC_URI="mirror://sourceforge/jboss/${P}.zip"
-HOMEPAGE="http://www.csg.is.titech.ac.jp/~chiba/javassist/"
-
-LICENSE="MPL-1.1"
-SLOT="2"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-S="${WORKDIR}"
-
-EANT_DOC_TARGET="javadocs"
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- java-pkg_dohtml *.html
- use doc && java-pkg_dojavadoc html
- use source && java-pkg_dosrc src/main/javassist
- use examples && java-pkg_doexamples sample/*
-}
diff --git a/dev-java/javassist/javassist-3.18.2.ebuild b/dev-java/javassist/javassist-3.18.2.ebuild
deleted file mode 100644
index 6205ac4cdea5..000000000000
--- a/dev-java/javassist/javassist-3.18.2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-MAVEN_ID="javassist:javassist:3.18.2"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Javassist makes Java bytecode manipulation simple"
-HOMEPAGE="http://www.csg.is.titech.ac.jp/~chiba/javassist/"
-SRC_URI="https://github.com/jboss-javassist/javassist/archive/rel_${PV//./_}_ga_build.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MPL-1.1"
-SLOT="3"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}/${PN}-rel_${PV//./_}_ga_build"
-
-EANT_DOC_TARGET="javadocs"
-JAVA_ANT_REWRITE_CLASSPATH=y
-EANT_NEEDS_TOOLS="yes"
-
-java_prepare() {
- find -name "*.jar" -delete || die
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- dohtml Readme.html
- use doc && java-pkg_dojavadoc html
- use source && java-pkg_dosrc src/main/javassist
- use examples && java-pkg_doexamples sample/*
-}
diff --git a/dev-java/javassist/javassist-3.29.2.ebuild b/dev-java/javassist/javassist-3.29.2.ebuild
new file mode 100644
index 000000000000..0d7ace3e1511
--- /dev/null
+++ b/dev-java/javassist/javassist-3.29.2.ebuild
@@ -0,0 +1,79 @@
+# 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/jboss-javassist/javassist/archive/rel_3_29_2_ga.tar.gz --slot 3 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild javassist-3.29.2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.javassist:javassist:3.29.2-GA"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A class library for editing bytecodes in Java."
+HOMEPAGE="https://www.javassist.org"
+SRC_URI="https://github.com/jboss-javassist/javassist/archive/rel_${PV//./_}_ga.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 LGPL-2.1 MPL-1.1"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:[4.13.1,) -> >=dev-java/junit-4.13.2:4
+# test? org.hamcrest:hamcrest-all:1.3 -> !!!artifactId-not-found!!!
+
+DEPEND=">=virtual/jdk-11:*
+ test? ( dev-java/hamcrest-library:1.3 )"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( Changes.md README.md )
+HTML_DOCS=( tutorial/{brown.css,tutorial.html,tutorial2.html,tutorial3.html} )
+
+S="${WORKDIR}/${PN}-rel_${PV//./_}_ga"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.javassist"
+JAVA_MAIN_CLASS="javassist.CtClass"
+JAVA_NEEDS_TOOLS=1
+JAVA_SRC_DIR="src/main"
+
+JAVA_TEST_GENTOO_CLASSPATH="hamcrest-library-1.3,junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY="javassist.JvstTest" # pom.xml, line 167
+JAVA_TEST_SRC_DIR="src/test"
+
+src_prepare() {
+ default
+ java-pkg_clean javassist.jar
+ sed -e 's:\.\./\.\./::' -i src/test/javassist/JvstTest{4,Root}.java || die
+
+ # Tests run: 432, Failures: 6
+ # https://bugs.gentoo.org/856364
+ # Cannot solve those test failures.
+ # replacing test... with notTest... for those tests
+ sed \
+ -e '/public void/s:testInsertAt:notTestInsertAt:' \
+ -e '/public void/s:testInsertLocal:notTestInsertLocal:' \
+ -e '/public void/s:testNewArray:notTestNewArray:' \
+ -e '/public void/s:testURL:notTestURL:' \
+ -i src/test/javassist/JvstTest2.java || die
+
+ sed \
+ -e '/public void/s:testMethodParameters:notTestMethodParameters:' \
+ -i src/test/javassist/JvstTest4.java || die
+
+ sed \
+ -e '/public void/s:testLocalVarAttribute:notTestLocalVarAttribute:' \
+ -i src/test/javassist/bytecode/BytecodeTest.java || die
+}
+
+src_test() {
+ default
+ einfo "Testing"
+ JAVA_PKG_WANT_SOURCE=11
+ JAVA_PKG_WANT_TARGET=11
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/javassist/metadata.xml b/dev-java/javassist/metadata.xml
index 4369baa505f5..ff67a27c5ef0 100644
--- a/dev-java/javassist/metadata.xml
+++ b/dev-java/javassist/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -9,4 +9,7 @@
<remote-id type="sourceforge">jboss</remote-id>
<remote-id type="github">jboss-javassist/javassist</remote-id>
</upstream>
+ <longdescription>
+ Javassist (JAVA programming ASSISTant) makes Java bytecode manipulation simple. It is a class library for editing bytecodes in Java.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/javatoolkit/Manifest b/dev-java/javatoolkit/Manifest
index c6e0e966a030..cee06ad25395 100644
--- a/dev-java/javatoolkit/Manifest
+++ b/dev-java/javatoolkit/Manifest
@@ -1 +1 @@
-DIST javatoolkit-0.6.5.tar.bz2 24380 BLAKE2B 69442b45e32e63e9f4f8104570ae644d6dd5571b6b909fd751a7060abddfedf84cc147f342a40ade8c4e04764f1a8362d853fae91353171708d5daf68ef3f8e1 SHA512 8a9cf0f2b7951bfe9ab544b48eecf5857ae4bddf129a1a0b928a2b37df7960b082495c44f42954cffe885d48f850b070781593352f09221d1b35b9a94ba5b55b
+DIST javatoolkit-0.6.7.tar.bz2 24514 BLAKE2B 5da4c95ac561b71a3019c265a5233eb825f5f57ae35e1dfefccc2fc26a5c967dcf562c321ff61f6ad4d702f4f656927cf21fa32eadb2454b18444505ba16ae91 SHA512 34e9e9d08ed486f57bbb33bed437ff7e4bbdcb6ff8f57c338e787db0ca5688a27eaf9e21f47b5d245279c58cbdaeab0d61b469b3f176ab37a18f122123c885d0
diff --git a/dev-java/javatoolkit/javatoolkit-0.6.5.ebuild b/dev-java/javatoolkit/javatoolkit-0.6.5.ebuild
deleted file mode 100644
index 2b2457911698..000000000000
--- a/dev-java/javatoolkit/javatoolkit-0.6.5.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-PYTHON_REQ_USE="xml(+)"
-DISTUTILS_USE_SETUPTOOLS=no
-
-inherit distutils-r1 prefix
-
-DESCRIPTION="Collection of Gentoo-specific tools for Java"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
-SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-python_prepare_all() {
- hprefixify src/py/buildparser src/py/findclass setup.py
- distutils-r1_python_prepare_all
-}
-
-python_install() {
- distutils-r1_python_install \
- --install-scripts="${EPREFIX}"/usr/libexec/${PN}
-}
diff --git a/dev-java/javatoolkit/javatoolkit-0.6.7.ebuild b/dev-java/javatoolkit/javatoolkit-0.6.7.ebuild
new file mode 100644
index 000000000000..e0d6e70346ee
--- /dev/null
+++ b/dev-java/javatoolkit/javatoolkit-0.6.7.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_REQ_USE="xml(+)"
+DISTUTILS_USE_SETUPTOOLS=no
+
+inherit distutils-r1 prefix
+
+DESCRIPTION="Collection of Gentoo-specific tools for Java"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Java"
+SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+python_prepare_all() {
+ hprefixify src/py/buildparser src/py/findclass setup.py
+ distutils-r1_python_prepare_all
+}
+
+python_install() {
+ distutils-r1_python_install \
+ --install-scripts="${EPREFIX}"/usr/libexec/${PN}
+}
diff --git a/dev-java/javatoolkit/metadata.xml b/dev-java/javatoolkit/metadata.xml
index e6adb0833e2b..01a22ce44f86 100644
--- a/dev-java/javatoolkit/metadata.xml
+++ b/dev-java/javatoolkit/metadata.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="gentoo">proj/javatoolkit</remote-id>
+ <remote-id type="github">gentoo/javatoolkit</remote-id>
+ </upstream>
<stabilize-allarches/>
</pkgmetadata>
diff --git a/dev-java/javax-el-api/Manifest b/dev-java/javax-el-api/Manifest
new file mode 100644
index 000000000000..db9d616a19e7
--- /dev/null
+++ b/dev-java/javax-el-api/Manifest
@@ -0,0 +1 @@
+DIST el-api-2.2-sources.jar 77708 BLAKE2B 4d31cf6ee76954fb4b16128e6cf162bcc5abe446500713a33010850bc9d416c754a1c61544dabfb1423cb3aed1f7fe06fbd367000679c04ab0f88beaf082dd4a SHA512 83db61c50735f33e6895a0ebb1f0198e4dad7868a35997180e86c68e4f833a202882120fda2f9657b3698faff852bba40affa29daa818e0dcd00a4caa6fc1c65
diff --git a/dev-java/javax-el-api/javax-el-api-2.2.ebuild b/dev-java/javax-el-api/javax-el-api-2.2.ebuild
new file mode 100644
index 000000000000..164895534df4
--- /dev/null
+++ b/dev-java/javax-el-api/javax-el-api-2.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.el:el-api:2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Expression Language API"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="https://repo1.maven.org/maven2/javax/el/el-api/${PV}/el-api-${PV}-sources.jar"
+
+# https://repo1.maven.org/maven2/javax/el/el-api/2.2/el-api-2.2.pom
+LICENSE="CDDL GPL-2"
+SLOT="2.2"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir resources || die
+ cp --parents javax/el/*.properties resources || die
+}
diff --git a/dev-java/javax-el-api/metadata.xml b/dev-java/javax-el-api/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/javax-el-api/metadata.xml
@@ -0,0 +1,7 @@
+<?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/javax-inject/Manifest b/dev-java/javax-inject/Manifest
index 3479b8e7142d..8fc6d90c87dd 100644
--- a/dev-java/javax-inject/Manifest
+++ b/dev-java/javax-inject/Manifest
@@ -1,2 +1 @@
DIST javax-inject-1.jar 10928 BLAKE2B 3294e302dd1af079d1bc57620dcd4b46169498a1619711837e329dc682aae4e204bc1d6733c9e7dac3fa978ddc183bf6d9833f5d0524d31c1ac95db8c81f2648 SHA512 8bcfae4933073c212c3370a36cdacbff0474648720766df5d0acfc2dafd3307a514b7fb49c08762d32bfca9d8afce47cbfe1eba7399b459b6543472ac9de715b
-DIST javax.inject-1-sources.jar 10928 BLAKE2B 3294e302dd1af079d1bc57620dcd4b46169498a1619711837e329dc682aae4e204bc1d6733c9e7dac3fa978ddc183bf6d9833f5d0524d31c1ac95db8c81f2648 SHA512 8bcfae4933073c212c3370a36cdacbff0474648720766df5d0acfc2dafd3307a514b7fb49c08762d32bfca9d8afce47cbfe1eba7399b459b6543472ac9de715b
diff --git a/dev-java/javax-inject/javax-inject-1-r2.ebuild b/dev-java/javax-inject/javax-inject-1-r2.ebuild
deleted file mode 100644
index 146f331c8330..000000000000
--- a/dev-java/javax-inject/javax-inject-1-r2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN/-/.}"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Dependency injection for Java (JSR-330)"
-HOMEPAGE="https://code.google.com/p/atinject/"
-SRC_URI="http://central.maven.org/maven2/javax/inject/${MY_PN}/${PV}/${MY_P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-IUSE=""
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
diff --git a/dev-java/javax-inject/javax-inject-1-r3.ebuild b/dev-java/javax-inject/javax-inject-1-r3.ebuild
deleted file mode 100644
index 92989f88e4ee..000000000000
--- a/dev-java/javax-inject/javax-inject-1-r3.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN/-/.}"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Dependency injection for Java (JSR-330)"
-HOMEPAGE="https://code.google.com/p/atinject/"
-SRC_URI="http://central.maven.org/maven2/javax/inject/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/javax-inject/javax-inject-1-r4.ebuild b/dev-java/javax-inject/javax-inject-1-r4.ebuild
new file mode 100644
index 000000000000..e211c0f48a5e
--- /dev/null
+++ b/dev-java/javax-inject/javax-inject-1-r4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.inject:javax.inject:1"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="${PN/-/.}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Dependency injection for Java (JSR-330)"
+HOMEPAGE="https://github.com/javax-inject/javax-inject"
+SRC_URI="http://central.maven.org/maven2/javax/inject/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
diff --git a/dev-java/javax-inject/metadata.xml b/dev-java/javax-inject/metadata.xml
index 37998bf40746..72c0c8eb4e70 100644
--- a/dev-java/javax-inject/metadata.xml
+++ b/dev-java/javax-inject/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">javax-inject/javax-inject</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/javax-jms-api/Manifest b/dev-java/javax-jms-api/Manifest
new file mode 100644
index 000000000000..b3fa25d684ad
--- /dev/null
+++ b/dev-java/javax-jms-api/Manifest
@@ -0,0 +1 @@
+DIST javax-jms-api-2.0.3-RELEASE.tar.gz 162689 BLAKE2B cd59e263f649d30dcd4a117c95943c2fca4141822dc23f425286d142849c2be99a0e866f4f3439917a2a09c722a74b067025e34053f1afa7ee8654cca253d54c SHA512 64f492c17eb84a61e23da53755ce074c5c957204651a391f7e879992f8b781d6b8afbfc7f13898f1e5f5dcb384b3ae31807b4acde111f587703d5d8bc08b5063
diff --git a/dev-java/javax-jms-api/javax-jms-api-2.0.3.ebuild b/dev-java/javax-jms-api/javax-jms-api-2.0.3.ebuild
new file mode 100644
index 000000000000..a372cbbdc0cd
--- /dev/null
+++ b/dev-java/javax-jms-api/javax-jms-api-2.0.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom api/pom.xml --download-uri https://github.com/jakartaee/messaging/archive/2.0.3-RELEASE.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild javax-jms-api-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.jms:jakarta.jms-api:2.0.3"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Messaging"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jms"
+SRC_URI="https://github.com/jakartaee/messaging/archive/${PV}-RELEASE.tar.gz -> ${P}-RELEASE.tar.gz"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( NOTICE.md README.md )
+
+S="${WORKDIR}/messaging-${PV}-RELEASE"
+
+JAVA_SRC_DIR="api/src/main/java"
diff --git a/dev-java/javax-jms-api/metadata.xml b/dev-java/javax-jms-api/metadata.xml
new file mode 100644
index 000000000000..ca6cf7f390be
--- /dev/null
+++ b/dev-java/javax-jms-api/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>
+ <longdescription>
+ Jakarta Messaging describes a means for Java applications to create, send, and receive messages via loosely coupled, reliable asynchronous communication services.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/javax-jsp-api/Manifest b/dev-java/javax-jsp-api/Manifest
new file mode 100644
index 000000000000..d1bdfd42d152
--- /dev/null
+++ b/dev-java/javax-jsp-api/Manifest
@@ -0,0 +1,2 @@
+DIST jsp-api-2.0-sources.jar 118348 BLAKE2B d9f615961a6ef2afb1447477d44e4f49eaf9137f62ba596c40d7437c8d4973a68f689189255bcc6bae5e5970b23c8e93fbabcad2fb230f54963dad55eef2a8f7 SHA512 4f38ed56e9e51a979488a26fde36905748674e225a10df82259891fa85f8493575a58babb7620b27a96ab7e83002433ae4ee60f700a866e330642c7dd0a0f7a8
+DIST jsp-api-2.2-sources.jar 163137 BLAKE2B 8bac5428393518cb3edb8488eaaab772d37db51dfbc5b466eabcb5b8ccd90cfa4869ebe65d861c64a6c588c8ede3ab1f5ab0c2e9080dde16c0585a7f774abb05 SHA512 ff79c34904372b722501b4479cbf88796017839d636a31b9343ef9104d93e3554154b3124f366295d05a41dc8320ff8bc83e9f8ee971df35c791220065b70647
diff --git a/dev-java/javax-jsp-api/javax-jsp-api-2.0.ebuild b/dev-java/javax-jsp-api/javax-jsp-api-2.0.ebuild
new file mode 100644
index 000000000000..2bc79637f253
--- /dev/null
+++ b/dev-java/javax-jsp-api/javax-jsp-api-2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.servlet.jsp:jsp-api:2.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JavaServer Pages(TM) API JSR-000152 JSR-000245"
+HOMEPAGE="https://jcp.org/aboutJava/communityprocess/final/jsr152/"
+SRC_URI="https://repo1.maven.org/maven2/javax/servlet/jsp/jsp-api/${PV}/jsp-api-${PV}-sources.jar"
+
+LICENSE="CDDL GPL-2-with-classpath-exception"
+SLOT="2.0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+CP_DEPEND="dev-java/javax-servlet-api:2.5"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/javax/servlet/jsp/resources" || die
+ mv dtd/* "${JAVA_RESOURCE_DIRS}/javax/servlet/jsp/resources" || die
+}
diff --git a/dev-java/javax-jsp-api/javax-jsp-api-2.2.ebuild b/dev-java/javax-jsp-api/javax-jsp-api-2.2.ebuild
new file mode 100644
index 000000000000..bd949201c1c8
--- /dev/null
+++ b/dev-java/javax-jsp-api/javax-jsp-api-2.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.servlet.jsp:jsp-api:2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JavaServer Pages(TM) API JSR-000152 JSR-000245"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="https://repo1.maven.org/maven2/javax/servlet/jsp/jsp-api/${PV}/jsp-api-${PV}-sources.jar"
+
+LICENSE="CDDL GPL-2-with-classpath-exception"
+SLOT="2.2"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="
+ dev-java/javax-el-api:2.2
+ dev-java/javax-servlet-api:2.5
+"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
diff --git a/dev-java/javax-jsp-api/metadata.xml b/dev-java/javax-jsp-api/metadata.xml
new file mode 100644
index 000000000000..882410dd6f2e
--- /dev/null
+++ b/dev-java/javax-jsp-api/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <slots>
+ <slot name="2.0">https://jcp.org/aboutJava/communityprocess/final/jsr152/</slot>
+ <slot name="2.2">https://jcp.org/aboutJava/communityprocess/mrel/jsr245/</slot>
+ </slots>
+</pkgmetadata>
diff --git a/dev-java/javax-mail/Manifest b/dev-java/javax-mail/Manifest
new file mode 100644
index 000000000000..35dd8eaf5b5a
--- /dev/null
+++ b/dev-java/javax-mail/Manifest
@@ -0,0 +1,2 @@
+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-r2.ebuild b/dev-java/javax-mail/javax-mail-1.6.7-r2.ebuild
new file mode 100644
index 000000000000..f19bd8c2717b
--- /dev/null
+++ b/dev-java/javax-mail/javax-mail-1.6.7-r2.ebuild
@@ -0,0 +1,61 @@
+# 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.sun.mail:jakarta.mail:1.6.7"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+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/${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"
+
+DEPEND="
+ dev-java/jakarta-activation:1
+ >=virtual/jdk-11:*
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {NOTICE,README}.md )
+PATCHES=( "${DISTDIR}/javax-mail-1.6.7-java21.patch" ) #917068
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ mv mail/src/main/{resources,java}/javax/mail/Version.java || die
+}
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-1"
+JAVA_ENCODING="iso-8859-1"
+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="mail/src/test/resources"
+JAVA_TEST_SRC_DIR="mail/src/test/java"
+
+src_test() {
+ 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
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "*TestSuite.java" -o -name "*Test.java" \
+ ! -name "MailHandlerTest.java" \
+ )
+ 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/javax-mail/metadata.xml b/dev-java/javax-mail/metadata.xml
new file mode 100644
index 000000000000..53eb0003d9ca
--- /dev/null
+++ b/dev-java/javax-mail/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">jakartaee/mail-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/javax-persistence-api/Manifest b/dev-java/javax-persistence-api/Manifest
new file mode 100644
index 000000000000..1860158b5d05
--- /dev/null
+++ b/dev-java/javax-persistence-api/Manifest
@@ -0,0 +1 @@
+DIST javax.persistence-api-2.2-sources.jar 257011 BLAKE2B 022d70134c8cd9cb8afd0f65f1530e8937dd3535ba533d98f59409f28a39b9238dc23e10b8f86378b1e817520839c25647aad4c01b9234dc65be4bd68bdc9bb6 SHA512 07a31f509fc7215e3f671579ce63161ac3e776171a240c9d087e8f47423d65f590026fe7c2fcd67365894ee906eb4b39e81f070d7f795346e18697775efdf428
diff --git a/dev-java/javax-persistence-api/javax-persistence-api-2.2-r1.ebuild b/dev-java/javax-persistence-api/javax-persistence-api-2.2-r1.ebuild
new file mode 100644
index 000000000000..6526ed970920
--- /dev/null
+++ b/dev-java/javax-persistence-api/javax-persistence-api-2.2-r1.ebuild
@@ -0,0 +1,33 @@
+# 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="javax.persistence:javax.persistence-api:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Persistence API"
+HOMEPAGE="https://www.jcp.org/en/jsr/detail?id=220"
+SRC_URI="https://repo1.maven.org/maven2/javax/persistence/${PN/-/.}/${PV}/${PN/-/.}-${PV}-sources.jar"
+
+LICENSE="EPL-1.0 BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+BDEPEND="app-arch/unzip"
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
+ mkdir resources || die
+ find -type f \
+ -name '*.xsd' \
+ | xargs cp --parent -t resources || die
+}
diff --git a/dev-java/javax-persistence-api/metadata.xml b/dev-java/javax-persistence-api/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/javax-persistence-api/metadata.xml
@@ -0,0 +1,7 @@
+<?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/javax-servlet-api/Manifest b/dev-java/javax-servlet-api/Manifest
new file mode 100644
index 000000000000..d09584b82304
--- /dev/null
+++ b/dev-java/javax-servlet-api/Manifest
@@ -0,0 +1,4 @@
+DIST javax.servlet-api-3.0.1-sources.jar 212871 BLAKE2B aea63157c3c0af5a40b7245ed0cab312b6d21419087d269374446e1c5f13200fb726a4533bf8d843a7e30d26266e4d9ae6c5e0b05004165ffcef14a7d179cf7b SHA512 9a955e4c8973af31f421f5651b0ae0c00fe4966318ef1849af97aa525736e262fa88b312c0acad093f25d7fa2c0903549d3e53b0cbc45afa7a2436b2c2282e7d
+DIST javax.servlet-api-3.1.0-sources.jar 223386 BLAKE2B ca472d1312e3ebb86ac1f0d1971dbaa607143f856e56a5544cf30daa3c23745e0b338ca10f518300627a53adccf284da91c6f70a25001c5a030b3308b23cb89d SHA512 15c9e497a67c1702ff9f987713553ade10ddfc722ea69377e721b8b094491184efc5801aad420fdbbdffd1d23691328c6eb768d5ad580fc00f3a7eaa6411749c
+DIST servlet-api-2.2-sources.jar 124718 BLAKE2B e9b79dafd1e858935215bf53e70f6e7d6eca226659c50abf6922e895c037ca23c5592da557cb53e649024e59dc56392535ca174dc96130d95e4b8ee98bff790e SHA512 62335089d991e05ba463bc7d976dcc51861e03d0ff350c4de9b63a508e0a8adf043764a7935c7c5c4b64baa2853f8163a78ab8609ee9d5a6001a7e6acb81e16e
+DIST servlet-api-2.5-sources.jar 158114 BLAKE2B 84997b9cc2122f49a850ac32089eb484bc4f68c4e73c7541cf70f453f0a0eaa0c037d6f2b8c8270d4122502f224a6943011f6a964da406093d0ad4bb173dc71e SHA512 6590adea214ba7f59e033b8f450ca8fd3a0764ac6aaf2789d5824ddeecc4c520d004242e42e3a058517d5f556a41a970f782dfde35b2cf184874a77063dc0fef
diff --git a/dev-java/javax-servlet-api/javax-servlet-api-2.2.ebuild b/dev-java/javax-servlet-api/javax-servlet-api-2.2.ebuild
new file mode 100644
index 000000000000..e1ef677f416c
--- /dev/null
+++ b/dev-java/javax-servlet-api/javax-servlet-api-2.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.servlet:servlet-api:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JavaServlet(TM) Specification"
+HOMEPAGE="https://javaee.github.io/servlet-spec/"
+SRC_URI="https://repo1.maven.org/maven2/javax/servlet/servlet-api/${PV}/servlet-api-${PV}-sources.jar"
+
+LICENSE="CDDL GPL-2"
+SLOT="2.2"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/META-INF" || die
+ echo "Implementation-Version: 2.2" > "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF"
+ echo "Specification-Version: 2.2" >> "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF"
+ find . -type f -name '*.properties' | xargs cp --parent -t resources || die
+}
diff --git a/dev-java/javax-servlet-api/javax-servlet-api-2.5.ebuild b/dev-java/javax-servlet-api/javax-servlet-api-2.5.ebuild
new file mode 100644
index 000000000000..75c0e7178cc5
--- /dev/null
+++ b/dev-java/javax-servlet-api/javax-servlet-api-2.5.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.servlet:servlet-api:2.5"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JavaServlet(TM) Specification"
+HOMEPAGE="https://javaee.github.io/servlet-spec/"
+SRC_URI="https://repo1.maven.org/maven2/javax/servlet/servlet-api/${PV}/servlet-api-${PV}-sources.jar"
+
+LICENSE="CDDL GPL-2"
+SLOT="2.5"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/javax/servlet/resources" || die
+ mv dtd/* "${JAVA_RESOURCE_DIRS}/javax/servlet/resources" || die
+ find . -type f -name '*.properties' | xargs cp --parent -t resources || die
+}
diff --git a/dev-java/javax-servlet-api/javax-servlet-api-3.0.1.ebuild b/dev-java/javax-servlet-api/javax-servlet-api-3.0.1.ebuild
new file mode 100644
index 000000000000..c591b2849432
--- /dev/null
+++ b/dev-java/javax-servlet-api/javax-servlet-api-3.0.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.servlet:javax.servlet-api:3.0.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JavaServlet(TM) Specification JSR-000315"
+HOMEPAGE="https://javaee.github.io/servlet-spec/"
+SRC_URI="https://repo1.maven.org/maven2/javax/servlet/javax.servlet-api/${PV}/javax.servlet-api-${PV}-sources.jar"
+
+LICENSE="CDDL GPL-2"
+SLOT="3.0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/META-INF" || die
+ find . -type f ! -name '*.java' | xargs cp --parent -t resources || die
+ echo "Implementation-Version: 3.0.1" > "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF"
+ echo "Specification-Version: 3.0" >> "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF"
+}
diff --git a/dev-java/javax-servlet-api/javax-servlet-api-3.1.0.ebuild b/dev-java/javax-servlet-api/javax-servlet-api-3.1.0.ebuild
new file mode 100644
index 000000000000..d587febbc061
--- /dev/null
+++ b/dev-java/javax-servlet-api/javax-servlet-api-3.1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="javax.servlet:javax.servlet-api:3.1.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JavaServlet(TM) Specification JSR-000340"
+HOMEPAGE="https://javaee.github.io/servlet-spec/"
+SRC_URI="https://repo1.maven.org/maven2/javax/servlet/javax.servlet-api/${PV}/javax.servlet-api-${PV}-sources.jar"
+
+LICENSE="CDDL GPL-2"
+SLOT="3.1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/META-INF" || die
+ echo "Implementation-Version: 3.1.0" > "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF"
+ echo "Specification-Version: 3.1" >> "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF"
+ find . -type f -name '*.properties' | xargs cp --parent -t resources || die
+}
diff --git a/dev-java/javax-servlet-api/metadata.xml b/dev-java/javax-servlet-api/metadata.xml
new file mode 100644
index 000000000000..8b4338de30f3
--- /dev/null
+++ b/dev-java/javax-servlet-api/metadata.xml
@@ -0,0 +1,16 @@
+<?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>
+ <longdescription>
+ Java Servlet is the foundation web specification in the Java Enterprise Platform. Developers can build web applications using the Servlet API to interact with the request/response workflow.
+ </longdescription>
+ <slots>
+ <slot name="2.2">https://jcp.org/aboutJava/communityprocess/maintenance/jsr903/</slot>
+ <slot name="2.5">https://jcp.org/aboutJava/communityprocess/final/jsr154/</slot>
+ <slot name="3.1">https://jcp.org/aboutJava/communityprocess/final/jsr340/</slot>
+ <slot name="3.0">https://jcp.org/aboutJava/communityprocess/final/jsr315/</slot>
+ </slots>
+</pkgmetadata>
diff --git a/dev-java/jax-rpc-api/Manifest b/dev-java/jax-rpc-api/Manifest
new file mode 100644
index 000000000000..a188d7d0974f
--- /dev/null
+++ b/dev-java/jax-rpc-api/Manifest
@@ -0,0 +1 @@
+DIST jax-rpc-api-1.1.4.tar.gz 91556 BLAKE2B a8d830a34fcd829bd44b66aadd473d25bcff788d01822b50b4eafafa3cc4ee002118904d79a38054f716bfd1fe68bd49dc7e74ae2f7ab8f9249277ddc863934d SHA512 4b2a15050d989754f93f7771622e5df286de633f4bcdeb750dbf3df6aa1115cf8de5fe84b809c15b9ccb85bd14283696df76cbe619b06ca48ce048b728525496
diff --git a/dev-java/jax-rpc-api/jax-rpc-api-1.1.4.ebuild b/dev-java/jax-rpc-api/jax-rpc-api-1.1.4.ebuild
new file mode 100644
index 000000000000..9d4fbbaaf082
--- /dev/null
+++ b/dev-java/jax-rpc-api/jax-rpc-api-1.1.4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.xml.rpc:jakarta.xml.rpc-api:1.1.4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Eclipse Project for Stable EE4J APIs"
+HOMEPAGE="https://github.com/eclipse-ee4j/jax-rpc-api"
+SRC_URI="https://github.com/eclipse-ee4j/jax-rpc-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+# Common dependencies
+# POM: api/pom.xml
+# jakarta.servlet:jakarta.servlet-api:4.0.3 -> >=dev-java/jakarta-servlet-api-4.0.4:4
+
+CP_DEPEND="
+ dev-java/jakarta-servlet-api:4
+ dev-java/jakarta-xml-soap-api:1
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+JAVA_SRC_DIR="api/src/main/java"
diff --git a/dev-java/jax-rpc-api/metadata.xml b/dev-java/jax-rpc-api/metadata.xml
new file mode 100644
index 000000000000..4f37e2c488cf
--- /dev/null
+++ b/dev-java/jax-rpc-api/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">eclipse-ee4j/jax-rpc-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jaxb-api/Manifest b/dev-java/jaxb-api/Manifest
new file mode 100644
index 000000000000..26a0e66387da
--- /dev/null
+++ b/dev-java/jaxb-api/Manifest
@@ -0,0 +1,3 @@
+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.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-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-3.0.1-r1.ebuild b/dev-java/jaxb-api/jaxb-api-3.0.1-r1.ebuild
new file mode 100644
index 000000000000..9167a5edd809
--- /dev/null
+++ b/dev-java/jaxb-api/jaxb-api-3.0.1-r1.ebuild
@@ -0,0 +1,38 @@
+# 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/3.0.1.tar.gz --slot 2 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jaxb-api-3.0.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.xml.bind:jakarta.xml.bind-api:3.0.1"
+
+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="3"
+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
+
+CDEPEND="dev-java/jakarta-activation:2"
+
+DEPEND="${CDEPEND}
+ >=virtual/jdk-11:*"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${P}/${PN}"
+
+JAVA_GENTOO_CLASSPATH="jakarta-activation-2"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
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..d0a0b6381a1a
--- /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
new file mode 100644
index 000000000000..82e13368f4e7
--- /dev/null
+++ b/dev-java/jaxb-api/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <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/jaxb-runtime/Manifest b/dev-java/jaxb-runtime/Manifest
new file mode 100644
index 000000000000..b5ce05d21247
--- /dev/null
+++ b/dev-java/jaxb-runtime/Manifest
@@ -0,0 +1,2 @@
+DIST jaxb-ri-2.3.8.tar.gz 1734411 BLAKE2B e60a7f78f2bfaf23cc0ce6727ee1b1611facdeebd5b456c207260447a508674dcbf934d2c6343cfbb58b93adf3352c8145caa2a8c77e264ae2403351527ff96d SHA512 73fda68e8d936b681d53ec72153cec0f7608517d0f037b4f140e4fd48e26f3e03a88f5b34bb635d0e6c7701121befd7d18a98aebd019a663e08ed9667a39c535
+DIST jaxb-ri-4.0.0.tar.gz 1739184 BLAKE2B a85a12fdca0b6eff8664894d65e2f82d30491e20050fde2ca828fa3c2c79ce2e158fca5ce6d0ae2cb2a00859abc0c9e9d49321c0943b862fd603a9e732f29dc4 SHA512 766a58d5107a88c19a99014b737b7b14a510b928dd26991adfe902073614923690c1e5a231834ec4a200a10adf9505b27179b8d84cf09dbb09292341c328e743
diff --git a/dev-java/jaxb-runtime/jaxb-runtime-2.3.8.ebuild b/dev-java/jaxb-runtime/jaxb-runtime-2.3.8.ebuild
new file mode 100644
index 000000000000..6f2e9531600b
--- /dev/null
+++ b/dev-java/jaxb-runtime/jaxb-runtime-2.3.8.ebuild
@@ -0,0 +1,65 @@
+# 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.glassfish.jaxb:jaxb-runtime:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JAXB (JSR 222) Reference Implementation"
+HOMEPAGE="https://eclipse-ee4j.github.io/jaxb-ri/"
+SRC_URI="https://github.com/eclipse-ee4j/jaxb-ri/archive/${PV}-RI.tar.gz -> jaxb-ri-${PV}.tar.gz"
+S="${WORKDIR}/jaxb-ri-${PV}-RI/jaxb-ri/runtime/impl"
+
+LICENSE="EPL-1.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/fastinfoset:0
+ dev-java/istack-commons-runtime:3
+ dev-java/jaxb-api:2
+ dev-java/jaxb-stax-ex:1
+ ~dev-java/txw2-${PV}:2
+"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ >=dev-java/jakarta-activation-api-1.2.2:1
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+ >=dev-java/jakarta-activation-1.2.2:1
+"
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-1"
+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"
+
+src_test() {
+ # Run this test separately as it prevents a reasonable test summary
+ JAVA_TEST_RUN_ONLY="com.sun.xml.bind.v2.schemagen.XmlSchemaGeneratorTest"
+ java-pkg-simple_src_test
+
+ # The default test selection of java-pkg-simple would omit
+ # "com.sun.xml.bind.v2.schemagen.MarshallingAbstractTest"
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -type f \
+ -name "*Test.java" \
+ ! -name "XmlSchemaGeneratorTest.java" \
+ )
+ 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-runtime/jaxb-runtime-4.0.0-r1.ebuild b/dev-java/jaxb-runtime/jaxb-runtime-4.0.0-r1.ebuild
new file mode 100644
index 000000000000..f5011e99962c
--- /dev/null
+++ b/dev-java/jaxb-runtime/jaxb-runtime-4.0.0-r1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom runtime/impl/pom.xml --download-uri https://github.com/eclipse-ee4j/jaxb-ri/archive/4.0.0-RI.tar.gz --slot 4 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jaxb-runtime-4.0.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.glassfish.jaxb:jaxb-runtime:4.0.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JAXB (JSR 222) Reference Implementation"
+HOMEPAGE="https://eclipse-ee4j.github.io/jaxb-ri/"
+SRC_URI="https://github.com/eclipse-ee4j/jaxb-ri/archive/${PV}-RI.tar.gz -> jaxb-ri-${PV}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=dev-java/fastinfoset-2.1.0-r1:0
+ dev-java/jaxb-api:4
+ >=dev-java/jaxb-stax-ex-2.1.0-r1:0
+ dev-java/istack-commons-runtime:0
+ >=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=">=virtual/jre-11:*"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/jaxb-ri-${PV}-RI/jaxb-ri"
+
+JAVA_CLASSPATH_EXTRA="fastinfoset,jaxb-stax-ex"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+src_compile() {
+ einfo "Compiling txw-runtime"
+ JAVA_SRC_DIR="txw/runtime/src/main/java"
+ JAVA_JAR_FILENAME="txw-runtime.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":txw-runtime.jar"
+ rm -r target || die
+
+ einfo "Compiling core"
+ JAVA_SRC_DIR="core/src/main/java"
+ JAVA_RESOURCE_DIRS="core/src/main/resources"
+ JAVA_JAR_FILENAME="core.jar"
+ JAVA_CLASSPATH_EXTRA+=" istack-commons-runtime,jaxb-api-4"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":core.jar"
+ rm -r target || die
+
+ einfo "Compiling runtime"
+ JAVA_SRC_DIR="runtime/impl/src/main/java"
+ JAVA_RESOURCE_DIRS="runtime/impl/src/main/resources"
+ JAVA_JAR_FILENAME="runtime.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":runtime.jar"
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ rm {core,runtime/impl}/src/main/java/module-info.java || die
+ JAVA_SRC_DIR=(
+ "txw/runtime/src/main/java"
+ "core/src/main/java"
+ "runtime/impl/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test() {
+ einfo "Testing core"
+ JAVA_TEST_SRC_DIR="core/src/test/java"
+ JAVA_TEST_RESOURCE_DIRS="core/src/test/resources"
+ java-pkg-simple_src_test
+
+ einfo "Testing runtime"
+ JAVA_TEST_SRC_DIR="runtime/impl/src/test/java"
+ JAVA_TEST_RESOURCE_DIRS=()
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ einstalldocs
+
+ java-pkg_dojar "txw-runtime.jar"
+ java-pkg_dojar "core.jar"
+ java-pkg_dojar "runtime.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "txw/runtime/src/main/java/*"
+ java-pkg_dosrc "core/src/main/java/*"
+ java-pkg_dosrc "runtime/impl/src/main/java/*"
+ fi
+}
diff --git a/dev-java/jaxb-runtime/metadata.xml b/dev-java/jaxb-runtime/metadata.xml
new file mode 100644
index 000000000000..dbb1a70c5a43
--- /dev/null
+++ b/dev-java/jaxb-runtime/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">eclipse-ee4j/jaxb-ri</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jaxb-stax-ex/Manifest b/dev-java/jaxb-stax-ex/Manifest
new file mode 100644
index 000000000000..fda5f4a3d30e
--- /dev/null
+++ b/dev-java/jaxb-stax-ex/Manifest
@@ -0,0 +1,2 @@
+DIST jaxb-stax-ex-1.8.3.tar.gz 28164 BLAKE2B 992597cf7556221449755f8d20b7695c277e6e28289cc4a60203d9ad5c9b549559ee98092cc03a11220221843eb02e7969ae307fb85924718aecc5a8c4dc9184 SHA512 c7a360c44a0546a2d8b5dac652886d439530049286791e61a4296575dde6b91f2d11e2b2b6d85b72494f8976d1ff15858f1032c880f2e61d24afca24e7f01cd5
+DIST jaxb-stax-ex-2.1.0.tar.gz 28683 BLAKE2B 774f7420f996eb52abc9db56753f0fc492164ed12f4ddffacad8f801ac759666e6dcae85cf24ce1231df4d49d5b5084278d2cac0c5c129302ec973c215408782 SHA512 f81dcb4870800c4799e716254b84e57a15ef36a9e6a8502da7ee2711aad67765595674fccc1c4d9d4e8865c642dfadd694f8849d4e98c4e9f2368cb940deb38d
diff --git a/dev-java/jaxb-stax-ex/jaxb-stax-ex-1.8.3.ebuild b/dev-java/jaxb-stax-ex/jaxb-stax-ex-1.8.3.ebuild
new file mode 100644
index 000000000000..670310633c8a
--- /dev/null
+++ b/dev-java/jaxb-stax-ex/jaxb-stax-ex-1.8.3.ebuild
@@ -0,0 +1,35 @@
+# 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.jvnet.staxex:stax-ex:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Extensions to JSR-173 StAX API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j/stax-ex"
+SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="EPL-1.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/jakarta-activation-api:1
+ dev-java/jaxb-api:2
+ >=virtual/jdk-11:*
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( {CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-1,jaxb-api-2"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/jaxb-stax-ex/jaxb-stax-ex-2.1.0-r1.ebuild b/dev-java/jaxb-stax-ex/jaxb-stax-ex-2.1.0-r1.ebuild
new file mode 100644
index 000000000000..d5300cd9e6ee
--- /dev/null
+++ b/dev-java/jaxb-stax-ex/jaxb-stax-ex-2.1.0-r1.ebuild
@@ -0,0 +1,37 @@
+# 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-stax-ex/archive/2.1.0.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild jaxb-stax-ex-2.1.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.jvnet.staxex:stax-ex:2.1.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Extensions to JSR-173 StAX API."
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j/stax-ex"
+SRC_URI="https://github.com/eclipse-ee4j/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/jakarta-activation-api:2
+ dev-java/jaxb-api:4
+ >=virtual/jdk-11:*
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${P}"
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-2,jaxb-api-4"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/jaxb-stax-ex/metadata.xml b/dev-java/jaxb-stax-ex/metadata.xml
new file mode 100644
index 000000000000..e2010ec6e14e
--- /dev/null
+++ b/dev-java/jaxb-stax-ex/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">eclipse-ee4j/jaxb-stax-ex</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jaxen/Manifest b/dev-java/jaxen/Manifest
index e9646ad9808e..3b203f52423c 100644
--- a/dev-java/jaxen/Manifest
+++ b/dev-java/jaxen/Manifest
@@ -1,2 +1 @@
-DIST jaxen-1.1.6.jar 409677 BLAKE2B 55e03939420c103fb5a6d323595ff0cb7653885eb9ba233fd581c5376d2ac90eecde7aa5576f602cdc459cfd9ba9e79c6bb5bfab3ed7805e717a21670a5748ee SHA512 979044fe959493eb6d66fa92b420251cd9c12414051ff6956d5835888a8999d4f337c18646c53806fc19203cef744f53b7597850cd2f695910c90df7a9725b48
-DIST jaxen-1.2.0.tar.gz 282829 BLAKE2B 4d89d4fd3dfd8c4113fe7ecc05597ea9dd743d9c871f320936809016ae8cb3a3d4fb3f935de19463e6c99db1b67eff3545e909b707e81f4c0f114ec0f0e7bb97 SHA512 cecfc62eab1cf6586b28594855bd983679a932dbdc6cbdd07d85a9a9458e78b2e784dfd6287e6e87e4f4443239eefbeac59a7316dae53b818379daaccae56b53
+DIST jaxen-2.0.0.tar.gz 348084 BLAKE2B 0dd90e040c865e0c2588f93ead9aadd64d49a8559a7c48255bdf89cca88967a60c8c0817ee4b234352fc0c8c3607e00e08c21df4580be7a889ca748073184f54 SHA512 897d8ee72b2ee3743118e363f66e1ccf5195863e4395dbdffa33b0bd7339663d85946f5e6eb37891e2ebb1572cab610a98a3690bdcc3993a2d2be4ae7920f174
diff --git a/dev-java/jaxen/jaxen-1.1.6-r2.ebuild b/dev-java/jaxen/jaxen-1.1.6-r2.ebuild
deleted file mode 100644
index be43e2578b5a..000000000000
--- a/dev-java/jaxen/jaxen-1.1.6-r2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="A Java XPath Engine"
-HOMEPAGE="https://github.com/codehaus"
-SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="JDOM"
-SLOT="1.1"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-JAVA_SRC_DIR="org"
-
-src_prepare() {
- default
-
- # xom depends on jaxen already. if we don't remove xom packages here and
- # require jaxen to depend on xom, we end up in a circular dep.
- # I fear though that removing those classes might bite us somewhere down
- # the line...
- rm -rv org/jaxen/{dom4j,jdom,xom} || die
-
- # this is now part of jdk
- rm -rv org/w3c || die
-}
diff --git a/dev-java/jaxen/jaxen-1.2.0-r1.ebuild b/dev-java/jaxen/jaxen-1.2.0-r1.ebuild
deleted file mode 100644
index 211abc53f20a..000000000000
--- a/dev-java/jaxen/jaxen-1.2.0-r1.ebuild
+++ /dev/null
@@ -1,84 +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 pom.xml --download-uri https://github.com/jaxen-xpath/jaxen/archive/refs/tags/v1.2.0.tar.gz --slot 1.2 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jaxen-1.2.0.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="jaxen:jaxen:1.2.0"
-JAVA_TESTING_FRAMEWORKS="junit"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Jaxen is a universal XPath engine for Java."
-HOMEPAGE="http://www.cafeconleche.org/jaxen/"
-SRC_URI="https://github.com/${PN}-xpath/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="1.2"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-IUSE="dom4j jdom xom"
-
-# It seems that most tests depend on dom4j, jdom and xom which all depend back on jaxen
-REQUIRED_USE="test? ( dom4j jdom xom )"
-
-# Compile dependencies
-# POM: pom.xml
-# xerces:xercesImpl:2.6.2 -> >=dev-java/xerces-2.12.0:2
-# xml-apis:xml-apis:1.3.02 -> >=dev-java/xml-commons-external-1.4.01:1.4
-# POM: pom.xml
-# test? junit:junit:3.8.2 -> >=dev-java/junit-3.8.2:0
-
-CDEPEND="
- dom4j? ( dev-java/dom4j:1 )
- jdom? ( dev-java/jdom:0 )
- xom? ( dev-java/xom:0 )
-"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${P}"
-
-DOCS=( "${S}"/{LICENSE.txt,README.md} )
-
-JAVA_SRC_DIR="src/java/main"
-
-JAVA_TEST_SRC_DIR="src/java/test"
-JAVA_TEST_GENTOO_CLASSPATH="junit"
-
-src_prepare() {
- default
-
- if use dom4j; then
- JAVA_GENTOO_CLASSPATH+=" dom4j-1"
- else
- rm -rv "${JAVA_SRC_DIR}"/org/jaxen/dom4j || die
- fi
-
- if use jdom; then
- JAVA_GENTOO_CLASSPATH+=" jdom"
- else
- rm -rv "${JAVA_SRC_DIR}"/org/jaxen/jdom || die
- fi
-
- if use xom; then
- JAVA_GENTOO_CLASSPATH+=" xom"
- else
- rm -rv "${JAVA_SRC_DIR}"/org/jaxen/xom || die
- fi
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/jaxen/jaxen-2.0.0.ebuild b/dev-java/jaxen/jaxen-2.0.0.ebuild
new file mode 100644
index 000000000000..87e5391e9b4a
--- /dev/null
+++ b/dev-java/jaxen/jaxen-2.0.0.ebuild
@@ -0,0 +1,67 @@
+# 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="jaxen:jaxen:2.0.0"
+JAVA_TESTING_FRAMEWORKS="junit"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jaxen is a universal XPath engine for Java"
+HOMEPAGE="http://www.cafeconleche.org/jaxen/"
+SRC_URI="https://github.com/${PN}-xpath/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD-2"
+SLOT="1.2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+IUSE="dom4j jdom xom"
+
+# It seems that most tests depend on dom4j, jdom and xom which all depend back on jaxen
+REQUIRED_USE="test? ( dom4j jdom xom )"
+
+CDEPEND="
+ dom4j? ( dev-java/dom4j:1 )
+ jdom? ( dev-java/jdom:0 )
+ xom? ( dev-java/xom:0 )
+"
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*
+"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.jaxen"
+JAVA_SRC_DIR="core/src/java/main"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit"
+JAVA_TEST_SRC_DIR="core/src/java/test"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ if use dom4j; then
+ JAVA_GENTOO_CLASSPATH+=" dom4j-1"
+ else
+ rm -rv "${JAVA_SRC_DIR}"/org/jaxen/dom4j || die
+ fi
+
+ if use jdom; then
+ JAVA_GENTOO_CLASSPATH+=" jdom"
+ else
+ rm -rv "${JAVA_SRC_DIR}"/org/jaxen/jdom || die
+ fi
+
+ if use xom; then
+ JAVA_GENTOO_CLASSPATH+=" xom"
+ else
+ rm -rv "${JAVA_SRC_DIR}"/org/jaxen/xom || die
+ fi
+}
diff --git a/dev-java/jaxen/metadata.xml b/dev-java/jaxen/metadata.xml
index e20be5fb7b4e..c98b4e178a97 100644
--- a/dev-java/jaxen/metadata.xml
+++ b/dev-java/jaxen/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jaxrs-api/Manifest b/dev-java/jaxrs-api/Manifest
new file mode 100644
index 000000000000..5a9949619d25
--- /dev/null
+++ b/dev-java/jaxrs-api/Manifest
@@ -0,0 +1 @@
+DIST jaxrs-api-2.1.6.tar.gz 225315 BLAKE2B bf4f12eadbee605e1141c72ee2a51c64548f3bed2846d1605758bcd994633b1a8f23b2054e0b71503583096a7234f42d12a389b9da031fa8b8c6b313cad84d98 SHA512 b5032ea9905e31b4120761125999a50e6d30229e7174e4a5e087f263030b25c157384a6d31796a90c590fda413e0e66220ec77c809a22fac8827ffa971c4aae7
diff --git a/dev-java/jaxrs-api/jaxrs-api-2.1.6-r1.ebuild b/dev-java/jaxrs-api/jaxrs-api-2.1.6-r1.ebuild
new file mode 100644
index 000000000000..f1dac5a6fa62
--- /dev/null
+++ b/dev-java/jaxrs-api/jaxrs-api-2.1.6-r1.ebuild
@@ -0,0 +1,50 @@
+# 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="jakarta.ws.rs:jakarta.ws.rs-api:2.1.6"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta RESTful Web Services API"
+HOMEPAGE="https://github.com/jakartaee/rest"
+SRC_URI="https://github.com/jakartaee/rest/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/rest-${PV}/${PN}"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ dev-java/jakarta-activation-api:1
+ dev-java/jaxb-api:2
+ test? (
+ dev-java/jaxb-runtime:2
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-1,jaxb-api-2"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="jaxb-runtime-2,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # The default test selection of java-pkg-simple would omit
+ # "javax.ws.rs.core.AbstractMultivaluedMapTest"
+ pushd src/test/java > /dev/null || die
+ local JAVA_TEST_RUN_ONLY=$(find * -type f -name "*Test.java" )
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ popd > /dev/null || die
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jaxrs-api/metadata.xml b/dev-java/jaxrs-api/metadata.xml
new file mode 100644
index 000000000000..45d0d6dea3c6
--- /dev/null
+++ b/dev-java/jaxrs-api/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">jakartaee/rest</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jaxws-api/Manifest b/dev-java/jaxws-api/Manifest
new file mode 100644
index 000000000000..74bc51487301
--- /dev/null
+++ b/dev-java/jaxws-api/Manifest
@@ -0,0 +1 @@
+DIST jaxws-api-2.3.3.tar.gz 173806 BLAKE2B 416294f78f4fdb00e8ac6a285b0820d5e7c5938b700d9efffdbac76dd37c4940bb6f4a88a1bce9f3da8ef156e56ea1f858bcba041763f0397c5f7a8b08297b2a SHA512 7663dd7a9169dbe9b7d869e318add1b3a41ea5246500afb4f1d1374f4b89a71de6a68af413b8037374c4e6fb4fa4acb8524d197eebdef6bceeee8339818905b7
diff --git a/dev-java/jaxws-api/jaxws-api-2.3.3.ebuild b/dev-java/jaxws-api/jaxws-api-2.3.3.ebuild
new file mode 100644
index 000000000000..f9b7430e6ad9
--- /dev/null
+++ b/dev-java/jaxws-api/jaxws-api-2.3.3.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.xml.ws:jakarta.xml.ws-api:2.3.3"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JAX-WS (JSR 224) API (Eclipse Project for JAX-WS)"
+HOMEPAGE="https://github.com/eclipse-ee4j/jax-ws-api"
+SRC_URI="https://github.com/eclipse-ee4j/jax-ws-api/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD" # "BSD-3 Clause"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND="
+ dev-java/jakarta-xml-soap-api:1
+ dev-java/jaxb-api:2
+ >=virtual/jdk-11:*
+"
+
+DOCS=( ../{CONTRIBUTING,NOTICE,README}.md )
+
+S="${WORKDIR}/jax-ws-api-${PV}/api"
+
+JAVA_CLASSPATH_EXTRA="
+ jakarta-xml-soap-api-1
+ jaxb-api-2
+"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/jaxws-api/metadata.xml b/dev-java/jaxws-api/metadata.xml
new file mode 100644
index 000000000000..d36027249291
--- /dev/null
+++ b/dev-java/jaxws-api/metadata.xml
@@ -0,0 +1,13 @@
+<?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">eclipse-ee4j/jax-ws-api</remote-id>
+ </upstream>
+ <slots>
+ <slot name="0">provides javax.xml.ws</slot>
+ </slots>
+</pkgmetadata>
diff --git a/dev-java/jazzy/Manifest b/dev-java/jazzy/Manifest
deleted file mode 100644
index 8a69fb76e69b..000000000000
--- a/dev-java/jazzy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jazzy-0.5.2.zip 235936 BLAKE2B 92495e93fe347e2bfd0c4a9307d00fabc137a65af3dd8b002d097f294e3400ab306ea092ed181244b5bb4b69e46f1a75a76675511511d7799a18d0830fcd14e4 SHA512 6d20f9bc133c03049c4c2a5c8612a52ef9fa09bc7510fb762c1ba9de479b1ce9319633ae2e78d3a1dd63900198d4e2468887113d034d95ba3e05bc631cc2de5e
diff --git a/dev-java/jazzy/jazzy-0.5.2-r1.ebuild b/dev-java/jazzy/jazzy-0.5.2-r1.ebuild
deleted file mode 100644
index 6b6f0aaa786d..000000000000
--- a/dev-java/jazzy/jazzy-0.5.2-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java Spell Check API"
-HOMEPAGE="https://sourceforge.net/projects/jazzy"
-SRC_URI="mirror://sourceforge/${PN}/${P}.src.zip -> ${P}.zip"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
- rm -rf src/com/swabunga/test || die
-}
-
-src_install() {
- java-pkg-simple_src_install
-
- use doc && dodoc README.txt
- use examples && java-pkg_doexamples --subdir \
- com/swabunga/spell/examples \
- src/com/swabunga/spell/examples
-}
diff --git a/dev-java/jazzy/metadata.xml b/dev-java/jazzy/metadata.xml
deleted file mode 100644
index c810ed5fc80e..000000000000
--- a/dev-java/jazzy/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jazzy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jbcrypt/Manifest b/dev-java/jbcrypt/Manifest
new file mode 100644
index 000000000000..8fe034eb868c
--- /dev/null
+++ b/dev-java/jbcrypt/Manifest
@@ -0,0 +1 @@
+DIST jBCrypt-0.4.tar.gz 15167 BLAKE2B 3b8acfb297bc5d412b3d8947a4c2868824d2bed7f7defef147cd1c6040d2ca0e6b97bcd05f1e4b3caf600ddf13cc27b962f30beb15d89e3981116b538609131c SHA512 2cc56a8c7642d9bc97f14b7b285011e0435290f4cadcef4df4e17566ac6801a406589ac6c84c0d0bf9a6e8e0b2835141c7bc9fea6bc36eb5f167682a658f4d64
diff --git a/dev-java/jbcrypt/jbcrypt-0.4.ebuild b/dev-java/jbcrypt/jbcrypt-0.4.ebuild
new file mode 100644
index 000000000000..67f22649a8e5
--- /dev/null
+++ b/dev-java/jbcrypt/jbcrypt-0.4.ebuild
@@ -0,0 +1,26 @@
+# 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.mindrot:jbcrypt:0.4"
+JAVA_TESTING_FRAMEWORKS="junit"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java implementation of OpenBSD's Blowfish password hashing code"
+HOMEPAGE="https://www.mindrot.org/projects/jBCrypt"
+SRC_URI="https://www.mindrot.org/files/jBCrypt/jBCrypt-${PV}.tar.gz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/jBCrypt-${PV}"
+
+JAVA_SRC_DIR="src"
+JAVA_TEST_SRC_DIR="test"
+JAVA_TEST_GENTOO_CLASSPATH="junit"
diff --git a/dev-java/jbcrypt/metadata.xml b/dev-java/jbcrypt/metadata.xml
new file mode 100644
index 000000000000..2578eaba4e38
--- /dev/null
+++ b/dev-java/jbcrypt/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+</pkgmetadata>
diff --git a/dev-java/jbig2-imageio/Manifest b/dev-java/jbig2-imageio/Manifest
new file mode 100644
index 000000000000..e0b9d8c74615
--- /dev/null
+++ b/dev-java/jbig2-imageio/Manifest
@@ -0,0 +1 @@
+DIST jbig2-imageio-3.0.3-src.zip 2079380 BLAKE2B bb05f81bfdef00b1a0ffcb7a2df2617fe5f5a83957249266917e775ceab57282ee289aedb198c6639201e85df83e89b8cfe8cf2d865fff863d1f2a5acd439721 SHA512 5350b4ce89af72eea5069f6ea5fc830238e4df711712506405aaf0e14546a1b07155b8c5225b47f0d40ce2821032426a2987adbe0df63c536cae4fb319b5c700
diff --git a/dev-java/jbig2-imageio/jbig2-imageio-3.0.3.ebuild b/dev-java/jbig2-imageio/jbig2-imageio-3.0.3.ebuild
new file mode 100644
index 000000000000..24e6a4482fb5
--- /dev/null
+++ b/dev-java/jbig2-imageio/jbig2-imageio-3.0.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom jbig2-imageio-3.0.3/pom.xml --download-uri https://downloads.apache.org/pdfbox/jbig2-imageio/3.0.3/jbig2-imageio-3.0.3-src.zip --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild jbig2-imageio-3.0.3.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.pdfbox:jbig2-imageio:3.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="PDFBox JBIG2 ImageIO plugin"
+HOMEPAGE="https://pdfbox.apache.org"
+SRC_URI="https://downloads.apache.org/pdfbox/${PN}/${PV}/${P}-src.zip"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
+
+JAVA_SRC_DIR="${P}/src/main/java"
+JAVA_RESOURCE_DIRS="${P}/src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="${P}/src/test/java"
+JAVA_TEST_RESOURCE_DIRS="${P}/src/test/resources"
+
+JAVA_TEST_EXCLUDES=(
+ # org.junit.runners.model.InvalidTestClassError: Invalid test class
+ # 1. Test class should have exactly one public constructor
+ "org.apache.pdfbox.jbig2.util.TestServiceImpl"
+ "org.apache.pdfbox.jbig2.util.TestService"
+)
diff --git a/dev-java/jbig2-imageio/metadata.xml b/dev-java/jbig2-imageio/metadata.xml
new file mode 100644
index 000000000000..72a1ed3f10de
--- /dev/null
+++ b/dev-java/jbig2-imageio/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+ <longdescription>
+ Java Image I/O plugin for reading JBIG2-compressed image data.
+ Formerly known as the levigo JBig2 ImageIO plugin (com.levigo.jbig2:levigo-jbig2-imageio).
+ </longdescription>
+ <upstream>
+ <remote-id type="github">apache/pdfbox-jbig2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jbitcollider-core/jbitcollider-core-0.8-r1.ebuild b/dev-java/jbitcollider-core/jbitcollider-core-0.8-r1.ebuild
index 07c846c70b04..0c66fbeb2e50 100644
--- a/dev-java/jbitcollider-core/jbitcollider-core-0.8-r1.ebuild
+++ b/dev-java/jbitcollider-core/jbitcollider-core-0.8-r1.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=7
@@ -13,11 +13,11 @@ inherit java-pkg-2 java-pkg-simple
DESCRIPTION="Core classes of jBitcollider: org.bitpedia.collider.core"
HOMEPAGE="http://bitcollider.sourceforge.net/"
-SRC_URI="mirror://sourceforge/project/bitcollider/jBitcollider%20%28Java%29/${PV}/${MY_P}.zip"
+SRC_URI="https://downloads.sourceforge.net/project/bitcollider/jBitcollider%20%28Java%29/${PV}/${MY_P}.zip"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~arm ~arm64 x86"
DEPEND=">=virtual/jdk-1.8:*"
RDEPEND=">=virtual/jre-1.8:*"
diff --git a/dev-java/jbitcollider-core/metadata.xml b/dev-java/jbitcollider-core/metadata.xml
index f159ea74cc27..0d561256c340 100644
--- a/dev-java/jbitcollider-core/metadata.xml
+++ b/dev-java/jbitcollider-core/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tommy@gentoo.org</email>
- <name>Thomas Sachau (Tommy[D])</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="sourceforge">bitcollider</remote-id>
</upstream>
diff --git a/dev-java/jboss-jms-api/Manifest b/dev-java/jboss-jms-api/Manifest
new file mode 100644
index 000000000000..7e4550815e6a
--- /dev/null
+++ b/dev-java/jboss-jms-api/Manifest
@@ -0,0 +1 @@
+DIST jboss-jms-api-1.0.1.tar.gz 63730 BLAKE2B d97bea2fe9a61bed91552479f6ec37646afcade7a723d10bccd78d6f8e38f1dde11619a1543d00589065df5e5a9e4896a66abb4a9cb1d34406b153456966f137 SHA512 0cbf656fc450983730f2e168da9558eefdff696426caf4bfa61ec5db1051573635aa32bfa87b705f675e61df5d787771ed1d884e6713e1eb454969de92e98902
diff --git a/dev-java/jboss-jms-api/jboss-jms-api-1.0.1.ebuild b/dev-java/jboss-jms-api/jboss-jms-api-1.0.1.ebuild
new file mode 100644
index 000000000000..015ca5b9e7fe
--- /dev/null
+++ b/dev-java/jboss-jms-api/jboss-jms-api-1.0.1.ebuild
@@ -0,0 +1,32 @@
+# 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/jboss/jboss-jms-api_spec/archive/jboss-jms-api_1.1_spec-1.0.1.Final.tar.gz --slot 1.1 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jboss-jms-api-1.0.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.jboss.spec.javax.jms:jboss-jms-api_1.1_spec:1.0.1.Final"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JSR-000914: Java(TM) Message Service (JMS) 1.1 API"
+HOMEPAGE="https://github.com/jboss/jboss-jms-api_spec"
+SRC_URI="https://github.com/jboss/${PN}_spec/archive/${PN}_1.1_spec-${PV}.Final.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CDDL GPL-2-with-classpath-exception"
+SLOT="1.1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( LICENSE README )
+
+S="${WORKDIR}/${PN}_spec-${PN}_1.1_spec-${PV}.Final"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jboss-jms-api/metadata.xml b/dev-java/jboss-jms-api/metadata.xml
new file mode 100644
index 000000000000..754269297a20
--- /dev/null
+++ b/dev-java/jboss-jms-api/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">jboss/jboss-jms-api_spec</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jboss-marshalling-river/Manifest b/dev-java/jboss-marshalling-river/Manifest
deleted file mode 100644
index 7dcc17fff70c..000000000000
--- a/dev-java/jboss-marshalling-river/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jboss-marshalling-river-1.3.0.CR9-sources.jar 45310 BLAKE2B 87eced675dbdb0d645ae4f3321954142922053008a650a9604b32c5e850c280c16d941997874c420e48e894e9f63c6441e6b3cd629fcfe7ad31ae13abb6f41e7 SHA512 0ff0ba48f8e4c1e76d378843aeae4793992fc200cf6d5aeeeec7341ddcd6bc3c93915ccb2bddbf3996661ff21e3a992e232c0721ec4469c5347811afabec4351
diff --git a/dev-java/jboss-marshalling-river/jboss-marshalling-river-1.3.0.ebuild b/dev-java/jboss-marshalling-river/jboss-marshalling-river-1.3.0.ebuild
deleted file mode 100644
index 89c496f77cee..000000000000
--- a/dev-java/jboss-marshalling-river/jboss-marshalling-river-1.3.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="River protocol implementation for JBoss Marshalling"
-HOMEPAGE="https://jbossmarshalling.jboss.org/"
-SRC_URI="https://download.jboss.org/jbossmarshalling/${P}.CR9-sources.jar"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-CDEPEND="~dev-java/jboss-marshalling-${PV}:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="jboss-marshalling"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar .
-}
diff --git a/dev-java/jboss-marshalling-river/metadata.xml b/dev-java/jboss-marshalling-river/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jboss-marshalling-river/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jboss-marshalling-serial/Manifest b/dev-java/jboss-marshalling-serial/Manifest
deleted file mode 100644
index 61818ebafdfa..000000000000
--- a/dev-java/jboss-marshalling-serial/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jboss-marshalling-serial-1.3.0.CR9-sources.jar 33627 BLAKE2B 76a6d6656c456ef5b4a4acbb659f52280d63b48aea46ff4fd190f8a9b5852157e37ce511a1af87007b04f03401082dd5e9a0d540ba27ac02567e7e50f04ebc33 SHA512 23343b43d2d81fb3f9d22e82d04e3c215cf0357fe369ac316a602b4599f84602bdd38fd50c8378050b1d031db2ad31405fc38bc93ef7a9327d63a29dd73ee144
diff --git a/dev-java/jboss-marshalling-serial/jboss-marshalling-serial-1.3.0.ebuild b/dev-java/jboss-marshalling-serial/jboss-marshalling-serial-1.3.0.ebuild
deleted file mode 100644
index d62b7906fcb7..000000000000
--- a/dev-java/jboss-marshalling-serial/jboss-marshalling-serial-1.3.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Serial protocol implementation for JBoss Marshalling"
-HOMEPAGE="https://jbossmarshalling.jboss.org/"
-SRC_URI="https://download.jboss.org/jbossmarshalling/${P}.CR9-sources.jar"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-CDEPEND="~dev-java/jboss-marshalling-${PV}:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="jboss-marshalling"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar .
-}
diff --git a/dev-java/jboss-marshalling-serial/metadata.xml b/dev-java/jboss-marshalling-serial/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jboss-marshalling-serial/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jboss-marshalling/Manifest b/dev-java/jboss-marshalling/Manifest
deleted file mode 100644
index e79f7c17cb33..000000000000
--- a/dev-java/jboss-marshalling/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jboss-marshalling-1.3.0.CR9-sources.jar 174155 BLAKE2B 1c1a25910eb9d9d40f4f3cbb8bb6d7d59272e4806a39b602e1e336269eb3fa95d83a89b46967919d2e02b5647f43e42495f36777d82e706f1853b717f3e0e44e SHA512 d7a1ae24ec50acf20f8150cf6e741a846e9a5837f9d8e4c06d8429793f69b95a7c03449ba5a6debb00bd22b596b6f801e25e0f38ccce7ac25cafd601e2ef7058
diff --git a/dev-java/jboss-marshalling/jboss-marshalling-1.3.0-r2.ebuild b/dev-java/jboss-marshalling/jboss-marshalling-1.3.0-r2.ebuild
deleted file mode 100644
index c1c838957a5d..000000000000
--- a/dev-java/jboss-marshalling/jboss-marshalling-1.3.0-r2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Compatible alternative to the JDK serialization API"
-HOMEPAGE="https://jbossmarshalling.jboss.org/"
-SRC_URI="https://download.jboss.org/jbossmarshalling/${P}.CR9-sources.jar"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64"
-
-CDEPEND="
- dev-java/jboss-modules:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7"
-
-JAVA_GENTOO_CLASSPATH="jboss-modules"
diff --git a/dev-java/jboss-marshalling/metadata.xml b/dev-java/jboss-marshalling/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jboss-marshalling/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jboss-modules/Manifest b/dev-java/jboss-modules/Manifest
deleted file mode 100644
index 0401c017eb3b..000000000000
--- a/dev-java/jboss-modules/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jboss-modules-1.3.3.tar.gz 189906 BLAKE2B f291391a9292731ab9fa00d9ce94817138ea502dbeac282cac0bbb08e070ef64f72dbd5e1cec570afa6452245197fda004173d04b838d806b40a2f808e539321 SHA512 d8e19c59105358070cc7e48a0be29ee68751155d5ac88723dbf32659e73ab4bd9afddf119fec66af8c9420a7e406e77f2eb4a164fbd9c1867b91414de71ddbb7
diff --git a/dev-java/jboss-modules/jboss-modules-1.3.3-r1.ebuild b/dev-java/jboss-modules/jboss-modules-1.3.3-r1.ebuild
deleted file mode 100644
index 177c33e4ec83..000000000000
--- a/dev-java/jboss-modules/jboss-modules-1.3.3-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source" # doc (needs APIviz)
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JBoss modular classloading system"
-HOMEPAGE="https://www.jboss.org/"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.Final.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND=">=virtual/jre-1.8"
-DEPEND="virtual/jdk:1.8"
-
-S="${WORKDIR}/${P}.Final/"
-
-JAVA_SRC_DIR="src/main/java"
-
-src_prepare() {
- default
- rm pom.xml || die
- mkdir -p target/classes || die
- cp -vr "${S}"/src/main/resources/* target/classes/ || die
-}
diff --git a/dev-java/jboss-modules/metadata.xml b/dev-java/jboss-modules/metadata.xml
deleted file mode 100644
index 2613932cec31..000000000000
--- a/dev-java/jboss-modules/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jboss-modules/jboss-modules</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jcalendar/jcalendar-1.4-r1.ebuild b/dev-java/jcalendar/jcalendar-1.4-r1.ebuild
new file mode 100644
index 000000000000..c0de4b6cfb3e
--- /dev/null
+++ b/dev-java/jcalendar/jcalendar-1.4-r1.ebuild
@@ -0,0 +1,52 @@
+# 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="Java date chooser bean for graphically picking a date"
+HOMEPAGE="https://www.toedter.com/en/jcalendar/"
+SRC_URI="https://www.toedter.com/download/${P}.zip"
+
+LICENSE="LGPL-2.1"
+SLOT="1.2"
+KEYWORDS="amd64 x86"
+
+CDEPEND="dev-java/jgoodies-looks:2.6"
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
+
+RESTRICT="test"
+
+JAVA_ANT_REWRITE_CLASSPATH="true"
+EANT_GENTOO_CLASSPATH="jgoodies-looks-2.6"
+EANT_BUILD_XML="src/build.xml"
+EANT_BUILD_TARGET="jar"
+EANT_DOC_TARGET=""
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_install() {
+ java-pkg_newjar lib/${P}.jar
+
+ dodoc readme.txt
+
+ use doc && java-pkg_dohtml -r doc/*
+ use source && java-pkg_dosrc src/com
+}
diff --git a/dev-java/jcalendar/jcalendar-1.4.ebuild b/dev-java/jcalendar/jcalendar-1.4.ebuild
deleted file mode 100644
index 1833038cc4a9..000000000000
--- a/dev-java/jcalendar/jcalendar-1.4.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java date chooser bean for graphically picking a date"
-HOMEPAGE="http://www.toedter.com/en/jcalendar/"
-SRC_URI="http://www.toedter.com/download/${P}.zip"
-
-LICENSE="LGPL-2.1"
-SLOT="1.2"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/jgoodies-looks:2.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}"
-
-RESTRICT="test"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="jgoodies-looks-2.6"
-EANT_BUILD_XML="src/build.xml"
-EANT_BUILD_TARGET="jar"
-EANT_DOC_TARGET=""
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg_newjar lib/${P}.jar
-
- dodoc readme.txt
-
- use doc && java-pkg_dohtml -r doc/*
- use source && java-pkg_dosrc src/com
-}
diff --git a/dev-java/jcalendar/metadata.xml b/dev-java/jcalendar/metadata.xml
index dbd25f9b805c..22cb701a2392 100644
--- a/dev-java/jcalendar/metadata.xml
+++ b/dev-java/jcalendar/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jchardet/Manifest b/dev-java/jchardet/Manifest
deleted file mode 100644
index 8542869adfc2..000000000000
--- a/dev-java/jchardet/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jchardet-1.1.zip 82782 BLAKE2B 08ceb3119615ab25a43030392ce0114a03b00ae7dd5488cbafac66f36e8963cc200f3c80afff6a99cf0a1f6bdfac8c22a27a5f0d2e4a217443916eda75752cac SHA512 3a6141b1783286adfc072075f46da8f6e719361425cb2cbcd1c4c4dd82a6ef834a9f6f1aad8126d663dcfa12ad20cc362566dc2095ea95e01bd95adfae20bc28
diff --git a/dev-java/jchardet/jchardet-1.1-r1.ebuild b/dev-java/jchardet/jchardet-1.1-r1.ebuild
deleted file mode 100644
index d566bb21eb07..000000000000
--- a/dev-java/jchardet/jchardet-1.1-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java port of Mozilla's Automatic Charset Detection algorithm"
-HOMEPAGE="http://jchardet.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/${P}.zip"
-
-LICENSE="MPL-1.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/jchardet/metadata.xml b/dev-java/jchardet/metadata.xml
deleted file mode 100644
index f09f6c745f30..000000000000
--- a/dev-java/jchardet/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jchardet</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jchart2d/jchart2d-3.2.2-r1.ebuild b/dev-java/jchart2d/jchart2d-3.2.2-r1.ebuild
new file mode 100644
index 000000000000..52ae935d3ef8
--- /dev/null
+++ b/dev-java/jchart2d/jchart2d-3.2.2-r1.ebuild
@@ -0,0 +1,56 @@
+# 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="net.sf.jchart2d:jchart2d:3.2.2"
+# JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A minimalistic realtime charting library for Java"
+HOMEPAGE="http://jchart2d.sourceforge.net"
+SRC_URI="https://downloads.sourceforge.net/project/jchart2d/jchart2d/sources/jchart2d-eclipse-project-${PV}.zip"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+CP_DEPEND="dev-java/jide-oss:0
+ dev-java/xmlgraphics-commons:2"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+BDEPEND="
+ app-arch/unzip"
+
+S="${WORKDIR}/${PN}"
+
+DOCS=( ../NOTICE-apache-xmlgraphics-commons )
+
+JAVA_SRC_DIR="src"
+
+# FAILURES!!!
+# Tests run: 212, Failures: 119
+# JAVA_TEST_SRC_DIR="test"
+# JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+src_prepare() {
+ default
+ java-pkg_clean
+
+ # src/Bug3553696.java:3: error: package info.monitorenter.gui.chart.tracepoints does not exist
+ # import info.monitorenter.gui.chart.tracepoints.TracePoint2D;
+ # ^
+ rm src/Bug3553696.java || die
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jchart2d/jchart2d-3.2.2.ebuild b/dev-java/jchart2d/jchart2d-3.2.2.ebuild
deleted file mode 100644
index 4e3f1e632d16..000000000000
--- a/dev-java/jchart2d/jchart2d-3.2.2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A minimalistic realtime charting library for Java"
-HOMEPAGE="http://jchart2d.sourceforge.net"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/sources/${PN}-eclipse-project-${PV}.zip"
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="test" # Even the headless tests need a display!?
-
-CDEPEND="dev-java/jide-oss:0
- dev-java/xmlgraphics-commons:2"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="jide-oss,xmlgraphics-commons-2"
-JAVA_SRC_DIR="src"
-
-S="${WORKDIR}/${PN}"
-
-java_prepare() {
- rm -rv ext/* || die
-
- # Ant tries and fails to build these outdated bug
- # demonstrations. Did Ant's globbing behaviour change?
- rm -v src/*.java || die
-}
diff --git a/dev-java/jchart2d/metadata.xml b/dev-java/jchart2d/metadata.xml
index 306a65a8731f..506af8c6587d 100644
--- a/dev-java/jchart2d/metadata.xml
+++ b/dev-java/jchart2d/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jcifs/Manifest b/dev-java/jcifs/Manifest
index 9de7d1f246eb..9716883648e9 100644
--- a/dev-java/jcifs/Manifest
+++ b/dev-java/jcifs/Manifest
@@ -1,2 +1 @@
-DIST jcifs-1.3.17.tgz 862091 BLAKE2B 67605ebd810caf097a9172c17f31d39c9e16af5885c706f7d8c2c2cff9b8e6a643174c9aaa8bd6aa06c816e312b7170a5aa06535f823a5c5b182e97beecccd0d SHA512 2fa1950f9ab6f0f3d45fd9b7866cc94993d1135f48d78ce357dca1d872746d22bff6097da8c418d0d11fd71d86b3fdc79b23195bcbab5bc460d8d0cca87efedc
DIST jcifs-1.3.19.tgz 883534 BLAKE2B ede24f43018a4bf304019aeddb6cf789e3a01622d840dc3f6bfa45104b97a39d256807f766f14b3e215e53519f3838aabeb73bdf7897323fb41ca5ef2b7c9372 SHA512 24ea656469ac7a5666d28dcdf122c80d254af5317a704718d8848858a21b38c6efe9b977854a33130cdb57d2fc8324ac3ee01fb5443360899f9572ec41788eef
diff --git a/dev-java/jcifs/jcifs-1.3.17-r2.ebuild b/dev-java/jcifs/jcifs-1.3.17-r2.ebuild
deleted file mode 100644
index 5a4129393d4c..000000000000
--- a/dev-java/jcifs/jcifs-1.3.17-r2.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Library that implements the CIFS/SMB networking protocol in Java"
-SRC_URI="https://jcifs.samba.org/src/${P}.tgz"
-HOMEPAGE="https://jcifs.samba.org/"
-LICENSE="LGPL-2.1"
-SLOT="1.1"
-
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="servlet-api-3.0"
-
-JAVA_SRC_DIR="src"
-
-DOCS=( README.txt )
-
-S="${WORKDIR}/${P/-/_}"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples examples
- einstalldocs
-}
diff --git a/dev-java/jcifs/jcifs-1.3.19-r2.ebuild b/dev-java/jcifs/jcifs-1.3.19-r2.ebuild
new file mode 100644
index 000000000000..1ae94af596dc
--- /dev/null
+++ b/dev-java/jcifs/jcifs-1.3.19-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2023 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-pkg-simple
+
+DESCRIPTION="Library that implements the CIFS/SMB networking protocol in Java"
+SRC_URI="https://jcifs.samba.org/src/${P}.tgz"
+HOMEPAGE="https://jcifs.samba.org/"
+S="${WORKDIR}/${P/-/_}"
+
+LICENSE="LGPL-2.1"
+SLOT="1.1"
+
+KEYWORDS="amd64 ppc64 x86"
+
+CP_DEPEND="dev-java/jakarta-servlet-api:4"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean
+ mkdir -p res || die
+ cd src || die
+ find . -type f -name '*.css' -o -name '*.map' \
+ | xargs cp --parents -v -t ../res || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ use examples && java-pkg_doexamples examples
+}
diff --git a/dev-java/jcifs/jcifs-1.3.19.ebuild b/dev-java/jcifs/jcifs-1.3.19.ebuild
deleted file mode 100644
index de48d1147b20..000000000000
--- a/dev-java/jcifs/jcifs-1.3.19.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Library that implements the CIFS/SMB networking protocol in Java"
-SRC_URI="https://jcifs.samba.org/src/${P}.tgz"
-HOMEPAGE="https://jcifs.samba.org/"
-LICENSE="LGPL-2.1"
-SLOT="1.1"
-
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-CDEPEND="java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="servlet-api-3.0"
-
-JAVA_SRC_DIR="src"
-
-DOCS=( README.txt )
-
-S="${WORKDIR}/${P/-/_}"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples examples
- einstalldocs
-}
diff --git a/dev-java/jcifs/metadata.xml b/dev-java/jcifs/metadata.xml
index 6f51fe18f381..51342c72b51a 100644
--- a/dev-java/jcifs/metadata.xml
+++ b/dev-java/jcifs/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jcip-annotations/Manifest b/dev-java/jcip-annotations/Manifest
deleted file mode 100644
index 9b0df40a2b8a..000000000000
--- a/dev-java/jcip-annotations/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jcip-annotations-1.0-1.tar.gz 7524 BLAKE2B cd31ecf1fe1ef4d78a9624cd92b9837acaccc35b1edfe5fbfac517d94edada03b5f7ac065ba21b26b43e6a8a6aef70434f3dfb7a76bb866ef4e3e25467ff1c01 SHA512 22eb285a445b25a718846dad45581dbe7a324a2d670bd05f4b2aa5e850ae34af6bcedbf143e17a7cd6cf7e510e0dd447992ba1d5316432e8a8db5584a1e1973e
diff --git a/dev-java/jcip-annotations/jcip-annotations-1.0.1-r1.ebuild b/dev-java/jcip-annotations/jcip-annotations-1.0.1-r1.ebuild
deleted file mode 100644
index 1f9c6101e325..000000000000
--- a/dev-java/jcip-annotations/jcip-annotations-1.0.1-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 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_P="${PN}-$(ver_rs 2 -)"
-
-DESCRIPTION="Clean room implementation of the JCIP Annotations"
-HOMEPAGE="https://github.com/stephenc/jcip-annotations"
-SRC_URI="https://github.com/stephenc/${PN}/archive/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${PN}-${MY_P}/src"
-JAVA_SRC_DIR="main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc ../README.md
-}
diff --git a/dev-java/jcip-annotations/metadata.xml b/dev-java/jcip-annotations/metadata.xml
deleted file mode 100644
index 31c9027a8769..000000000000
--- a/dev-java/jcip-annotations/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>The JCIP Annotations are really useful, however they are released under the Creative Commons Attribution License, which is not recommended for licensing software and may therefore cause issues for some people.</longdescription>
- <upstream>
- <remote-id type="github">stephenc/jcip-annotations</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jclasslib/jclasslib-3.1-r1.ebuild b/dev-java/jclasslib/jclasslib-3.1-r1.ebuild
new file mode 100644
index 000000000000..49ed3261956c
--- /dev/null
+++ b/dev-java/jclasslib/jclasslib-3.1-r1.ebuild
@@ -0,0 +1,34 @@
+# 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="Java bytecode viewer"
+HOMEPAGE="https://github.com/ingokegel/jclasslib"
+SRC_URI="https://github.com/ingokegel/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+src_install() {
+ java-pkg_dojar "build/${PN}.jar"
+
+ java-pkg_dolauncher "${PN}" \
+ --main org.gjt.jclasslib.browser.BrowserApplication
+
+ use doc && java-pkg_dohtml -r doc/*
+ use source && java-pkg_dosrc src/*
+}
+
+pkg_postinst() {
+ elog "jclasslib uses Firefox by default."
+ elog "Set the BROWSER environment at your discretion."
+}
diff --git a/dev-java/jclasslib/jclasslib-3.1.ebuild b/dev-java/jclasslib/jclasslib-3.1.ebuild
deleted file mode 100644
index 5a0c811e7b02..000000000000
--- a/dev-java/jclasslib/jclasslib-3.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java bytecode viewer"
-HOMEPAGE="https://github.com/ingokegel/jclasslib"
-SRC_URI="https://github.com/ingokegel/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-src_install() {
- java-pkg_dojar "build/${PN}.jar"
-
- java-pkg_dolauncher "${PN}" \
- --main org.gjt.jclasslib.browser.BrowserApplication
-
- use doc && java-pkg_dohtml -r doc/*
- use source && java-pkg_dosrc src/*
-}
-
-pkg_postinst() {
- elog "jclasslib uses Firefox by default."
- elog "Set the BROWSER environment at your discretion."
-}
diff --git a/dev-java/jclasslib/metadata.xml b/dev-java/jclasslib/metadata.xml
index f6dc3aa541c8..5723933be142 100644
--- a/dev-java/jclasslib/metadata.xml
+++ b/dev-java/jclasslib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jcodings/Manifest b/dev-java/jcodings/Manifest
deleted file mode 100644
index 2b0ee9a44154..000000000000
--- a/dev-java/jcodings/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST jcodings-1.0.11.tar.gz 123802 BLAKE2B 22cde3714da0f1b9434d630905d9a5a8bcdf7ebcab8de5b03ff12d6b31d6fd256f87680743d96e860cd5af34a0b5e70bb1a326000b5440d9b4c4f8a20d9964ee SHA512 6bff29718ff04fd2f52cff767440d87f3dcb0f4acf71ee7b037241af7ef7533284176f53d08da5b1f37c643b766f4a9113651c994d1893ef302a2056d9ff40f3
-DIST jcodings-1.0.5-git.tar.gz 90788 BLAKE2B f1a72a1879e89c60bbb1537d5a6dd174b9f0a2bb4a3eb80520a2b4f7ddae5da359f11ba220b4f64db0413fd423c31623a0863cedbf62f7efd83ce73952557b35 SHA512 a0122eea18077daefdcf38ec9e6f12b000c558837835fe900f6e0c282fdfcf95dbb10652b4cfeb32e556ae8ebe1aec8c10e4a352cdb565837b2f16335140f8e3
-DIST jcodings-1.0.55.tar.gz 1390865 BLAKE2B 8c10c489f5c64ce0b394f7efa43cf996aa630e90d88329d4955d43c5e41666f665d8ea922b34477b545040417cc2003aacc75b45410f84176b3ee9e4087126e7 SHA512 c450b3df49ff39a974e1ce8eea1adcd8febb0f4d7b8a1b0b69e7f2bb97b365729c282600a04666b03821fc8d1b3df77e75f1611dbed997f6651e6ec481658874
diff --git a/dev-java/jcodings/files/maven-build.xml b/dev-java/jcodings/files/maven-build.xml
deleted file mode 100644
index c09847a4fa00..000000000000
--- a/dev-java/jcodings/files/maven-build.xml
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="jcodings-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jcodings"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="test"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- manifest="MANIFEST.MF"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- </target>
-
-</project>
diff --git a/dev-java/jcodings/jcodings-1.0.11-r1.ebuild b/dev-java/jcodings/jcodings-1.0.11-r1.ebuild
deleted file mode 100644
index 16aeaf0589a1..000000000000
--- a/dev-java/jcodings/jcodings-1.0.11-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Byte-based encoding support library for Java"
-HOMEPAGE="https://github.com/codehaus"
-SRC_URI="https://github.com/jruby/${PN}/archive/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*
- test? (
- dev-java/ant-junit:0
- >=dev-java/junit-4.8:4
- )"
-
-S="${WORKDIR}/${PN}-${PN}-${PV}"
-
-src_prepare() {
- default
- cp "${FILESDIR}"/maven-build.xml build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/jcodings/jcodings-1.0.5-r1.ebuild b/dev-java/jcodings/jcodings-1.0.5-r1.ebuild
deleted file mode 100644
index 813a91f20367..000000000000
--- a/dev-java/jcodings/jcodings-1.0.5-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 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-ant-2
-
-DESCRIPTION="Byte-based encoding support library for Java"
-HOMEPAGE="https://github.com/codehaus"
-SRC_URI="https://github.com/jruby/${PN}/archive/${PV}.tar.gz -> ${P}-git.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-
-src_unpack() {
- default
- mv jruby-${PN}-* ${P} || die
-}
-
-src_prepare() {
- default
- cp "${FILESDIR}"/maven-build.xml build.xml || die
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/jcodings/jcodings-1.0.55.ebuild b/dev-java/jcodings/jcodings-1.0.55.ebuild
deleted file mode 100644
index a85095ee47b2..000000000000
--- a/dev-java/jcodings/jcodings-1.0.55.ebuild
+++ /dev/null
@@ -1,37 +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 pom.xml --download-uri https://github.com/jruby/jcodings/archive/refs/tags/jcodings-1.0.55.tar.gz --slot 1 --keywords "~amd64 ~x86" --ebuild jcodings-1.0.55.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.jruby.jcodings:jcodings:1.0.55"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Byte based encoding support library for java"
-HOMEPAGE="https://github.com/jruby/jcodings"
-SRC_URI="https://github.com/jruby/${PN}/archive/refs/tags/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~x86"
-
-DEPEND="
- >=virtual/jdk-11:*
-"
-
-RDEPEND="
- >=virtual/jre-11:*
-"
-
-S="${WORKDIR}/${PN}-${P}"
-
-JAVA_SRC_DIR="src"
-JAVA_RESOURCE_DIRS="resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="test"
diff --git a/dev-java/jcodings/metadata.xml b/dev-java/jcodings/metadata.xml
deleted file mode 100644
index ce62923cd13f..000000000000
--- a/dev-java/jcodings/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jruby/jcodings</remote-id>
- <bugs-to>https://github.com/jruby/jcodings/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jcommander/Manifest b/dev-java/jcommander/Manifest
index a13270c2b00d..72fb13e70a45 100644
--- a/dev-java/jcommander/Manifest
+++ b/dev-java/jcommander/Manifest
@@ -1 +1,2 @@
-DIST jcommander-1.48.tar.gz 64544 BLAKE2B 29ed81d5f9a7e4ec193c8fa03cdd67481e9904898bee2730c585be6b6beb2e0ec37b31634513095b660655b8202c42077361318a83c1e016c9450d7d7ff30244 SHA512 1304bb14ecb89f9945e8219f3229941e556c7cccef52a2eb4e4663da9dbf9fa5ecec4914275a743fb7d90ca301153284dc76dd380903aac93db1507894d72a6e
+DIST jcommander-1.64.tar.gz 4404316 BLAKE2B 17ade214604de2ed8e85fd8b8043483f5b3c6d26b7a59afe2cc83dfa804fa298a2a1a4251ac65f66ad3a89002f532c29ee031b0a26293cbbd4f3df72e9a3a6ac SHA512 aaf7c323d9a829635847774b927d63cc35fbe479271029b8f3fdb94c6839dc26ac55f5c28fefbee6a0219e11c73f2c487c3660bf2f3a7f4033c0e2092d6f2fa4
+DIST jcommander-1.82.tar.gz 4433079 BLAKE2B 08111ae7a85202dc3a082db58f42ef5183b05cae827bc304ba426a3d02bf7a4123f84500e6ec5694578a7aa29c631cca692fe71d67e12a1107c57e1858be4dcf SHA512 1abcb54cec21e95a3e5fc952320a7fca1d480f9900992e686f66df49749b6eee79e18dc670f10cc05b0d2a4f0a72fae302568a51ff193788897878aefc3ff67b
diff --git a/dev-java/jcommander/files/jcommander-1.64-DynamicParameterTest.patch b/dev-java/jcommander/files/jcommander-1.64-DynamicParameterTest.patch
new file mode 100644
index 000000000000..9867533bcf25
--- /dev/null
+++ b/dev-java/jcommander/files/jcommander-1.64-DynamicParameterTest.patch
@@ -0,0 +1,57 @@
+FAILED: usage
+java.lang.NullPointerException: Cannot invoke "com.beust.jcommander.Parameter.order()" because "<local3>" is null
+ at com.beust.jcommander.JCommander$Options$1.compare(JCommander.java:144)
+ at com.beust.jcommander.JCommander$Options$1.compare(JCommander.java:139)
+ at java.base/java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
+ at java.base/java.util.TimSort.sort(TimSort.java:220)
+ at java.base/java.util.Arrays.sort(Arrays.java:1307)
+ at java.base/java.util.ArrayList.sort(ArrayList.java:1721)
+ at java.base/java.util.Collections.sort(Collections.java:179)
+ at com.beust.jcommander.JCommander.usage(JCommander.java:1158)
+ at com.beust.jcommander.JCommander.usage(JCommander.java:1113)
+ at com.beust.jcommander.dynamic.DynamicParameterTest.usage(DynamicParameterTest.java:40)
+ at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
+ at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.base/java.lang.reflect.Method.invoke(Method.java:568)
+ at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
+ at org.testng.internal.Invoker.invokeMethod(Invoker.java:661)
+ at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:869)
+ at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1193)
+ at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
+ at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
+ at org.testng.TestRunner.privateRun(TestRunner.java:756)
+ at org.testng.TestRunner.run(TestRunner.java:610)
+ at org.testng.SuiteRunner.runTest(SuiteRunner.java:380)
+ at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:375)
+ at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
+ at org.testng.SuiteRunner.run(SuiteRunner.java:289)
+ at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
+ at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
+ at org.testng.TestNG.runSuitesSequentially(TestNG.java:1306)
+ at org.testng.TestNG.runSuitesLocally(TestNG.java:1231)
+ at org.testng.TestNG.runSuites(TestNG.java:1146)
+ at org.testng.TestNG.run(TestNG.java:1117)
+ at org.testng.TestNG.privateMain(TestNG.java:1447)
+ at org.testng.TestNG.main(TestNG.java:1416)
+
+
+===============================================
+ JCommander tests
+ Tests run: 189, Failures: 1, Skips: 0
+===============================================
+--- a/src/test/java/com/beust/jcommander/dynamic/DynamicParameterTest.java
++++ b/src/test/java/com/beust/jcommander/dynamic/DynamicParameterTest.java
+@@ -35,10 +35,12 @@ public class DynamicParameterTest {
+ simple("-Da=b", "-Dc=d");
+ }
+
++ /*
+ public void usage() {
+ DSimple ds = new DSimple();
+ new JCommander(ds).usage(new StringBuilder());
+ }
++ */
+
+ public void differentAssignment() {
+ DSimple ds = new DSimple();
diff --git a/dev-java/jcommander/jcommander-1.48.ebuild b/dev-java/jcommander/jcommander-1.48.ebuild
deleted file mode 100644
index 1c8d4e5af4a8..000000000000
--- a/dev-java/jcommander/jcommander-1.48.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Command line parsing framework for Java"
-HOMEPAGE="https://github.com/cbeust/jcommander"
-SRC_URI="https://github.com/cbeust/${PN}/archive/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}-${P}"
-
-RESTRICT="test"
-
-java_prepare() {
- rm -rf src/test || die
-}
diff --git a/dev-java/jcommander/jcommander-1.64-r1.ebuild b/dev-java/jcommander/jcommander-1.64-r1.ebuild
new file mode 100644
index 000000000000..3fc26c3aa562
--- /dev/null
+++ b/dev-java/jcommander/jcommander-1.64-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.beust:jcommander:${PV}"
+JAVA_TESTING_FRAMEWORKS="testng"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Command line parsing framework for Java"
+HOMEPAGE="https://jcommander.org/"
+SRC_URI="https://github.com/cbeust/jcommander/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="1.64"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=( "${FILESDIR}/jcommander-1.64-DynamicParameterTest.patch" )
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="testng"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY="src/test/resources/testng.xml"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/jcommander/jcommander-1.82.ebuild b/dev-java/jcommander/jcommander-1.82.ebuild
new file mode 100644
index 000000000000..b859e3a9c46a
--- /dev/null
+++ b/dev-java/jcommander/jcommander-1.82.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+JAVA_TESTING_FRAMEWORKS="testng"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Command line parsing framework for Java"
+HOMEPAGE="https://github.com/cbeust/jcommander"
+SRC_URI="https://github.com/cbeust/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/jackson-annotations:2 )
+"
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+# ===============================================
+# Command line suite
+# Total tests run: 258, Failures: 3, Skips: 0
+# ===============================================
+#
+# * ERROR: dev-java/jcommander-1.82::gentoo failed (test phase):
+# * Running TestNG failed.
+
+# https://bugs.gentoo.org/801694
+# Needs "java-util-2-runner-args.patch" from https://github.com/gentoo/gentoo/pull/21319#issuecomment-878128343
+JAVA_TEST_RUNNER_EXTRA_ARGS=( -verbose 3 -usedefaultlisteners true )
+
+JAVA_TEST_GENTOO_CLASSPATH="jackson-annotations-2,testng"
+JAVA_TEST_EXTRA_ARGS=( -Djava.io.tmpdir="${T}" )
+JAVA_TEST_SRC_DIR=( src/test/java )
+JAVA_TEST_RESOURCE_DIRS=( src/test/resources )
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_test() {
+ # because module java.base does not export sun.reflect.annotation to unnamed module @0x42bb2aee
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 17; then
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/sun.reflect.annotation=ALL-UNNAMED )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jcommander/metadata.xml b/dev-java/jcommander/metadata.xml
index 9469008de1b0..d6b13b44f6b6 100644
--- a/dev-java/jcommander/metadata.xml
+++ b/dev-java/jcommander/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jcommon/Manifest b/dev-java/jcommon/Manifest
deleted file mode 100644
index c7cdd4429d5e..000000000000
--- a/dev-java/jcommon/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jcommon-1.0.23.zip 1373666 BLAKE2B 23c87cd18339ea8f5991933c1430464ca5a408d4d4afb42847ee8c3b941d8fd7ed9695af74ec9ff7fc5867758b826d49b5def73923e893910efc0a0d77f26f75 SHA512 c358239da8b1ddf53ce94bebb00b6518456aa921dd3aa84fc6a23144d499f14a85ba421cd71f3880e8d10153a6ab816f54c1fa872a4ab694ce3c7b8d69bc2a4b
diff --git a/dev-java/jcommon/jcommon-1.0.23.ebuild b/dev-java/jcommon/jcommon-1.0.23.ebuild
deleted file mode 100644
index 208f734743d6..000000000000
--- a/dev-java/jcommon/jcommon-1.0.23.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2 versionator
-
-MY_P=${PN}-$(replace_version_separator 3 -)
-DESCRIPTION="A collection of useful classes used by JFreeChart, JFreeReport and others"
-HOMEPAGE="http://www.jfree.org/jcommon"
-SRC_URI="mirror://sourceforge/jfreechart/${MY_P}.zip"
-
-LICENSE="LGPL-2"
-SLOT="1.0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
-IUSE="debug"
-
-DEPEND="
- >=virtual/jdk-1.6
- app-arch/unzip
- test? ( dev-java/junit:4 )"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}"/"${MY_P}"
-
-java_prepare() {
- find "${WORKDIR}" -name '*.jar' -print -delete || die
-
- if ! use debug; then
- antflags="-Dbuild.debug=false -Dbuild.optimize=true"
- fi
-}
-
-src_compile() {
- if ! use debug; then
- antflags="-Dbuild.debug=false -Dbuild.optimize=true"
- fi
- eant -f ant/build.xml compile $(use_doc) $antflags
-}
-
-# No tests defined in build.xml. Let's turn them off.
-# src_test() {
-# java-pkg_jar-from --into lib junit-4
-# eant -f ant/build.xml compile-junit-tests
-# ejunit4 -cp "./lib/${P}-junit.jar:$(java-pkg_getjars junit-4)" \
-# org.jfree.junit.JCommonTestSuite
-# }
-
-src_install() {
- java-pkg_newjar ${P}.jar ${PN}.jar
- dodoc README.md
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/main/java/com src/main/java/org
-}
diff --git a/dev-java/jcommon/metadata.xml b/dev-java/jcommon/metadata.xml
deleted file mode 100644
index ba2158636f7e..000000000000
--- a/dev-java/jcommon/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jfreechart</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jctools-core/Manifest b/dev-java/jctools-core/Manifest
new file mode 100644
index 000000000000..dc7d15805cb7
--- /dev/null
+++ b/dev-java/jctools-core/Manifest
@@ -0,0 +1 @@
+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.3.ebuild b/dev-java/jctools-core/jctools-core-4.0.3.ebuild
new file mode 100644
index 000000000000..5b54f3488a28
--- /dev/null
+++ b/dev-java/jctools-core/jctools-core-4.0.3.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="org.jctools:jctools-core:${PV}"
+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"
+S="${WORKDIR}/JCTools-${PV}/jctools-core"
+
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/osgi-annotation:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava-testlib:0
+ dev-java/hamcrest:0
+ )"
+
+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"
+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
+ 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"
+ 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" \
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+ # OK (8746 tests)
+}
diff --git a/dev-java/jctools-core/metadata.xml b/dev-java/jctools-core/metadata.xml
new file mode 100644
index 000000000000..fad141505070
--- /dev/null
+++ b/dev-java/jctools-core/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/JCTools/JCTools/issues</bugs-to>
+ <remote-id type="github">JCTools/JCTools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jdbc-mssqlserver/Manifest b/dev-java/jdbc-mssqlserver/Manifest
deleted file mode 100644
index f83642448c85..000000000000
--- a/dev-java/jdbc-mssqlserver/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST mssql-jdbc-6.2.2.jre8.jar 825389 BLAKE2B 3b3290e80652e1085729f7a3391bea7f3542af6598ea855c6e1430fef2b12009dbfccc761d347491ea85c22d2acfa12d5a55e79b44f23306b6c4f4b6a5aa2ebb SHA512 e381fe9444c706a8a019c5006fe5d238065c20387d3c5b9a4c632ff30033596cea26036b804fc4f6610ad1418bb7d94b024871c7deb865028f5770ffca353d49
diff --git a/dev-java/jdbc-mssqlserver/jdbc-mssqlserver-6.2.2.ebuild b/dev-java/jdbc-mssqlserver/jdbc-mssqlserver-6.2.2.ebuild
deleted file mode 100644
index 4dbbc416dc05..000000000000
--- a/dev-java/jdbc-mssqlserver/jdbc-mssqlserver-6.2.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-pkg-2 versionator
-
-DESCRIPTION="JDBC driver for Microsoft SQL Server"
-HOMEPAGE="https://github.com/Microsoft/mssql-jdbc"
-SRC_URI="https://github.com/Microsoft/mssql-jdbc/releases/download/v${PV}/mssql-jdbc-${PV}.jre8.jar"
-
-KEYWORDS="~amd64 ~x86"
-LICENSE="MIT"
-SLOT="4.2"
-
-DEPEND=""
-RDEPEND=">=virtual/jre-1.8"
-
-S="${WORKDIR}"
-
-src_unpack() {
- :
-}
-
-src_install() {
- java-pkg_newjar "${DISTDIR}/${A}"
-}
diff --git a/dev-java/jdbc-mssqlserver/metadata.xml b/dev-java/jdbc-mssqlserver/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jdbc-mssqlserver/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jdbc-mysql/Manifest b/dev-java/jdbc-mysql/Manifest
index d137555a18f7..27c5a47904df 100644
--- a/dev-java/jdbc-mysql/Manifest
+++ b/dev-java/jdbc-mysql/Manifest
@@ -1 +1,4 @@
-DIST jdbc-mysql-8.0.25-sources.jar 1556319 BLAKE2B 75eb4837f6916247650a925f87d52e49848e3bc52cfa683a149624e4b749c3c4b3a7336a5659dd0c894f0285254c915364d9ffd7b4779c87e0894053a2854a5c SHA512 c4384213845c43a494360131dcb7b9b424473237b65504d5ed4a7929cb8bb7b4b3c7cce6fde2c20a7026891751e76c78ea64af746a053ca42567a7e68782280e
+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.0.25.ebuild b/dev-java/jdbc-mysql/jdbc-mysql-8.0.25.ebuild
deleted file mode 100644
index 417722c0319f..000000000000
--- a/dev-java/jdbc-mysql/jdbc-mysql-8.0.25.ebuild
+++ /dev/null
@@ -1,54 +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 mysql-connector-java-8.0.25.pom.xml --download-uri https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.25/mysql-connector-java-8.0.25-sources.jar --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild jdbc-mysql-8.0.25.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="mysql:mysql-connector-java:8.0.25"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JDBC Type 4 driver for MySQL"
-HOMEPAGE="https://dev.mysql.com/doc/connector-j/en/"
-SRC_URI="https://repo1.maven.org/maven2/mysql/mysql-connector-java/${PV}/mysql-connector-java-${PV}-sources.jar -> ${P}-sources.jar"
-
-LICENSE="GPL-2-with-MySQL-FLOSS-exception"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-# Common dependencies
-# POM: mysql-connector-java-${PV}.pom.xml
-# com.google.protobuf:protobuf-java:3.11.4 -> !!!groupId-not-found!!!
-
-CDEPEND="dev-java/c3p0:0
- dev-java/protobuf-java:0
- dev-java/slf4j-api:0"
-DEPEND=" ${CDEPEND}
- >=virtual/jdk-1.8:* "
-RDEPEND=" ${CDEPEND}
- >=virtual/jre-1.8:* "
-BDEPEND="app-arch/unzip"
-
-DOCS=( META-INF/README )
-
-S="${WORKDIR}"
-
-JAVA_GENTOO_CLASSPATH="c3p0,protobuf-java,slf4j-api"
-
-JAVA_SRC_DIR="com"
-JAVA_RESOURCE_DIRS="res"
-
-src_prepare() {
- default
- mkdir --parents "${JAVA_RESOURCE_DIRS}" || die
- cp -r "${JAVA_SRC_DIR}" "META-INF" "${JAVA_RESOURCE_DIRS}"
- find "${JAVA_RESOURCE_DIRS}" -type f -name '*.java' -exec rm -rf {} + || die
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.ebuild b/dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.ebuild
new file mode 100644
index 000000000000..649d226c823b
--- /dev/null
+++ b/dev-java/jdbc-mysql/jdbc-mysql-8.1.0-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Tests disabled, see bug #902723
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.mysql:mysql-connector-j:8.1.0"
+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="2.47.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.26.0:0
+ dev-java/slf4j-api:0
+"
+DEPEND=" ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+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"
+JAVA_TEST_RESOURCE_DIRS="src/test/config"
+JAVA_TEST_SRC_DIR="src/test/java"
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-mysql/metadata.xml b/dev-java/jdbc-mysql/metadata.xml
index 952a4b9b605c..5a8beaee4341 100644
--- a/dev-java/jdbc-mysql/metadata.xml
+++ b/dev-java/jdbc-mysql/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">mysql/mysql-connector-j</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jdbc-postgresql/Manifest b/dev-java/jdbc-postgresql/Manifest
index 5b4efd711224..ac27a538f20a 100644
--- a/dev-java/jdbc-postgresql/Manifest
+++ b/dev-java/jdbc-postgresql/Manifest
@@ -1,5 +1 @@
-DIST postgresql-jdbc-9.2-1003.src.tar.gz 1843082 BLAKE2B 35f6e4738e5340373ccb3cbe516f2e8f4a391b6e200b88c6adff7112b28f077c6e4108329c962b98dd2ee21e9e3db81521a324b036cc5d0d6ec9859f660bce60 SHA512 f91d9617726722998a51275c625f6ea89dfe0ac7ce415cc6fa76302b13762bcf825cd61ec69d25d0199ca21de8a24286eeffb843ad59c06fd3049a289ac2b702
-DIST postgresql-jdbc-9.2-1004.src.tar.gz 1842921 BLAKE2B 4cf0cb6da5749a9da194b9174db82289c3521edb7b7fd57d112883c185e0b80fd6feb70852eb54d7fe53d439817643bc608e9cdb3a9d9b2d43fd134031c770e9 SHA512 6e218b7df3d772e4fb9053672f5f77f6012fe6e652a536dfe171408e957465520b05994d4fa13c4d478b595a55b8068da663b9f3dcb544a46fcf91d71ba8fdf5
-DIST postgresql-jdbc-9.3-1100.src.tar.gz 1852465 BLAKE2B a81f385ff23679a1e6b268b53ea72dda744c50d043d02fe50a88421c43561a8fc63c849a974e84e1f1caa93ab20c01cc58cc9abe96f5567f5ac626263f402126 SHA512 43968a62f9443739721016ede186b2f41fa6db2d1ef319cd65059f8715e90eda7c7f568995b293578c39e04d43085cfdfece587500f99ed1a49964c12d8c747a
-DIST postgresql-jdbc-9.4-1205.src.tar.gz 2028968 BLAKE2B d4f55bc7c173795202f9eed58a67effba747b56f8dc5aaeeb2941532b3d0ce3f66ed113c38af9c2c40998191fd15d2828d05a1b693eb13a78a3d39b9fe6667b5 SHA512 ebb46c0cfcabc34083e6f481bc97536fba98d082462670d39efdd75e6463f1286db6fa07cd35546c749e456f1c06fb1d022cbc9f5cace2a1b968fab76a57d281
-DIST postgresql-jdbc-9.4-1206.src.tar.gz 2029837 BLAKE2B b222a0b2f8f99becaf0ae350407fafeb23d9d4bdb130c17996373b4211e0d56d1a76bc5737401dc6fc6618d2a891943d096b0f60f0770ff6ce859ade3e7a178d SHA512 b16816f1afd3ee5986fca197bd7608c2e2f334054e41a8c541c47985827f4f59d7691d23983bdac01c85fc364cd001c991ac6b4e8567429b9d1f4161388dd6bd
+DIST postgresql-jdbc-42.7.1.src.tar.gz 1000212 BLAKE2B 9c09931f15dc0a6dd72fec5148d6eea48226bc2af0de44111c8ea6c3ed798357139aa25c65cc3e6aea33e55201c86864c0e30f5c9b5eadbc980399fbc2f68e36 SHA512 a722415cb29551a59a830c6287873e9ba0cb75e1aa456175b8678caa96be871f42b9294c25a532a67109c7a7e48e3d6d7d5773e99ffb124019b1895430b213ef
diff --git a/dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1201-remove-osgi.patch b/dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1201-remove-osgi.patch
deleted file mode 100644
index 15b1860d2aa7..000000000000
--- a/dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1201-remove-osgi.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/build.xml 2015-02-18 17:44:58.000000000 +0100
-+++ b/build.xml 2015-03-23 02:19:03.951945663 +0100
-@@ -403,34 +403,6 @@
- <attribute name="Implementation-Vendor" value="PostgreSQL Global Development Group" />
- </manifest>
- </jar>
--
-- <!-- add OSGi meta information -->
-- <property name="osgidir" value="${builddir}/osgi"/>
-- <mkdir dir="${osgidir}"/>
--
-- <!-- create a bnd file named after the JAR file so that bnd wrap tool find it -->
-- <echo file="${osgidir}/${artifact.version.string}.bnd">
--Bundle-ManifestVersion: 2
--
--Bundle-Name: PostgreSQL JDBC Driver ${jdbc.version.upper}
--Bundle-SymbolicName: org.postgresql.${jdbc.version}
--Bundle-Version: ${osgi.version}
--
--Bundle-Vendor: PostgreSQL Global Development Group
--Bundle-Copyright: Copyright (c) 2003-2015, PostgreSQL Global Development Group
--Bundle-License: http://www.postgresql.org/about/licence/
--Bundle-DocURL: http://jdbc.postgresql.org/
--
--Bundle-Classpath: .
--Bundle-Activator: org.postgresql.osgi.PGBundleActivator
--Require-Capability: osgi.ee;filter:="(&amp;(|(osgi.ee=J2SE)(osgi.ee=JavaSE))(version>=${java.specification.version}))"
--Export-Package: org.postgresql*; version=${fullversion}
--Import-Package: javax.sql, javax.transaction.xa, javax.naming, *;resolution:=optional
-- </echo>
--
-- <!-- run wrap task from bnd -->
-- <taskdef resource="aQute/bnd/ant/taskdef.properties" classpathref="dependency.build.classpath"/>
-- <bndwrap jars="${artifact.jar.build}" output="${artifact.jar}" definitions="${osgidir}"/>
- </target>
-
- <!-- create a distribution with docs, dependencies, and driver jar -->
diff --git a/dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1204-remove-sspi.patch b/dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1204-remove-sspi.patch
deleted file mode 100644
index 16996892b192..000000000000
--- a/dev-java/jdbc-postgresql/files/jdbc-postgresql-9.4_p1204-remove-sspi.patch
+++ /dev/null
@@ -1,138 +0,0 @@
---- a/org/postgresql/core/v3/ConnectionFactoryImpl.java 2015-10-09 20:55:53.000000000 +0200
-+++ b/org/postgresql/core/v3/ConnectionFactoryImpl.java 2015-10-14 20:42:48.816753341 +0200
-@@ -32,7 +32,6 @@
- import org.postgresql.hostchooser.HostChooserFactory;
- import org.postgresql.hostchooser.HostRequirement;
- import org.postgresql.hostchooser.HostStatus;
--import org.postgresql.sspi.SSPIClient;
- import org.postgresql.util.GT;
- import org.postgresql.util.HostSpec;
- import org.postgresql.util.MD5Digest;
-@@ -394,11 +393,7 @@
- // or an authentication request
-
- String password = PGProperty.PASSWORD.get(info);
--
-- /* SSPI negotiation state, if used */
-- SSPIClient sspiClient = null;
-
-- try {
- authloop:
- while (true)
- {
-@@ -514,88 +509,16 @@
- case AUTH_REQ_SSPI:
- /*
- * Use GSSAPI if requested on all platforms, via JSSE.
-- *
-- * For SSPI auth requests, if we're on Windows attempt native SSPI
-- * authentication if available, and if not disabled by setting a
-- * kerberosServerName. On other platforms, attempt JSSE GSSAPI
-- * negotiation with the SSPI server.
-- *
-- * Note that this is slightly different to libpq, which uses SSPI
-- * for GSSAPI where supported. We prefer to use the existing Java
-- * JSSE Kerberos support rather than going to native (via JNA) calls
-- * where possible, so that JSSE system properties etc continue
-- * to work normally.
-- *
-- * Note that while SSPI is often Kerberos-based there's no guarantee
-- * it will be; it may be NTLM or anything else. If the client responds
-- * to an SSPI request via GSSAPI and the other end isn't using Kerberos
-- * for SSPI then authentication will fail.
- */
-- final String gsslib = PGProperty.GSS_LIB.get(info);
-- final boolean usespnego = PGProperty.USE_SPNEGO.getBoolean(info);
--
-- boolean useSSPI = false;
-+ org.postgresql.gss.MakeGSS.authenticate(pgStream, host,
-+ user, password,
-+ PGProperty.JAAS_APPLICATION_NAME.get(info),
-+ PGProperty.KERBEROS_SERVER_NAME.get(info),
-+ logger,
-+ PGProperty.USE_SPNEGO.getBoolean(info));
-+
-+ break;
-
-- /*
-- * Use SSPI if we're in auto mode on windows and have a
-- * request for SSPI auth, or if it's forced. Otherwise
-- * use gssapi. If the user has specified a Kerberos server
-- * name we'll always use JSSE GSSAPI.
-- */
-- if (gsslib.equals("gssapi"))
-- logger.debug("Using JSSE GSSAPI, param gsslib=gssapi");
-- else if (areq == AUTH_REQ_GSS && !gsslib.equals("sspi"))
-- logger.debug("Using JSSE GSSAPI, gssapi requested by server and gsslib=sspi not forced");
-- else
-- {
-- /* Determine if SSPI is supported by the client */
-- sspiClient = new SSPIClient(pgStream,
-- PGProperty.SSPI_SERVICE_CLASS.get(info),
-- /* Use negotiation for SSPI, or if explicitly requested for GSS */
-- areq == AUTH_REQ_SSPI || (areq == AUTH_REQ_GSS && usespnego),
-- logger);
--
-- useSSPI = sspiClient.isSSPISupported();
-- logger.debug("SSPI support detected: " + useSSPI);
--
-- if (!useSSPI) {
-- /* No need to dispose() if no SSPI used */
-- sspiClient = null;
--
-- if (gsslib.equals("sspi"))
-- throw new PSQLException("SSPI forced with gsslib=sspi, but SSPI not available; set loglevel=2 for details",
-- PSQLState.CONNECTION_UNABLE_TO_CONNECT);
-- }
--
-- logger.debug("Using SSPI: " + useSSPI + ", gsslib="+gsslib+" and SSPI support detected");
-- }
--
-- if (useSSPI)
-- {
-- /* SSPI requested and detected as available */
-- sspiClient.startSSPI();
-- }
-- else
-- {
-- /* Use JGSS's GSSAPI for this request */
-- org.postgresql.gss.MakeGSS.authenticate(pgStream, host,
-- user, password,
-- PGProperty.JAAS_APPLICATION_NAME.get(info),
-- PGProperty.KERBEROS_SERVER_NAME.get(info),
-- logger,
-- usespnego);
-- }
--
-- break;
--
-- case AUTH_REQ_GSS_CONTINUE:
-- /*
-- * Only called for SSPI, as GSS is handled by an inner loop
-- * in MakeGSS.
-- */
-- sspiClient.continueSSPI(l_msgLen - 8);
-- break;
--
- case AUTH_REQ_OK:
- /* Cleanup after successful authentication */
- if (logger.logDebug())
-@@ -616,18 +539,6 @@
- throw new PSQLException(GT.tr("Protocol error. Session setup failed."), PSQLState.PROTOCOL_VIOLATION);
- }
- }
-- } finally {
-- /* Cleanup after successful or failed authentication attempts */
-- if (sspiClient != null)
-- {
-- try {
-- sspiClient.dispose();
-- } catch (RuntimeException ex) {
-- logger.log("Unexpected error during SSPI context disposal", ex);
-- }
--
-- }
-- }
-
- }
-
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/jdbc-postgresql/jdbc-postgresql-9.2_p1003.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1003.ebuild
deleted file mode 100644
index 49c60a72aeab..000000000000
--- a/dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1003.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="postgresql-jdbc"
-MY_PV="${PV/_p/-}"
-MY_P="${MY_PN}-${MY_PV}.src"
-
-DESCRIPTION="JDBC Driver for PostgreSQL"
-SRC_URI="https://jdbc.postgresql.org/download/${MY_P}.tar.gz"
-HOMEPAGE="https://jdbc.postgresql.org/"
-
-LICENSE="POSTGRESQL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.6
- doc? (
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
- )
- test? (
- dev-java/ant-junit
- dev-db/postgresql[server]
- )"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/postgresql-jdbc-${MY_PV}.src"
-
-java_prepare() {
- find -name "*.class" -type f -exec rm -v {} + || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_DOC_TARGET="publicapi"
-
-src_compile() {
- java-pkg-2_src_compile
-
- # There is a task that creates this doc but I didn't find a way how to use system catalog
- # to lookup the stylesheet so the 'doc' target is rewritten here to use system call instead.
- if use doc; then
- mkdir -p "${S}/build/doc"
- xsltproc -o "${S}/build/doc/pgjdbc.html" http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl \
- "${S}/doc/pgjdbc.xml"
- fi
-}
-
-src_test() {
- einfo "In order to run the tests successfully, you have to have:"
- einfo "1) PostgreSQL server running"
- einfo "2) database 'test' defined with user 'test' with password 'password'"
- einfo " as owner of the database"
- einfo "3) plpgsql support in the 'test' database"
- einfo
- einfo "You can find a general info on how to perform these steps at"
- einfo "https://wiki.gentoo.org/wiki/PostgreSQL"
-
- ANT_TASKS="ant-junit" eant test -Dgentoo.classpath=$(java-pkg_getjars --build-only junit)
-}
-
-src_install() {
- java-pkg_newjar jars/postgresql.jar jdbc-postgresql.jar
-
- if use doc ; then
- java-pkg_dojavadoc build/publicapi
- dohtml build/doc/pgjdbc.html
- fi
-
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1004.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1004.ebuild
deleted file mode 100644
index e5cff42377a1..000000000000
--- a/dev-java/jdbc-postgresql/jdbc-postgresql-9.2_p1004.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="postgresql-jdbc"
-MY_PV="${PV/_p/-}"
-MY_P="${MY_PN}-${MY_PV}.src"
-
-DESCRIPTION="JDBC Driver for PostgreSQL"
-SRC_URI="https://jdbc.postgresql.org/download/${MY_P}.tar.gz"
-HOMEPAGE="https://jdbc.postgresql.org/"
-
-LICENSE="POSTGRESQL"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.6
- doc? (
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
- )
- test? (
- dev-java/ant-junit
- dev-db/postgresql[server]
- )"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/postgresql-jdbc-${MY_PV}.src"
-
-java_prepare() {
- find -name "*.class" -type f -exec rm -v {} + || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_DOC_TARGET="publicapi"
-
-src_compile() {
- java-pkg-2_src_compile
-
- # There is a task that creates this doc but I didn't find a way how to use system catalog
- # to lookup the stylesheet so the 'doc' target is rewritten here to use system call instead.
- if use doc; then
- mkdir -p "${S}/build/doc"
- xsltproc -o "${S}/build/doc/pgjdbc.html" http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl \
- "${S}/doc/pgjdbc.xml"
- fi
-}
-
-src_test() {
- einfo "In order to run the tests successfully, you have to have:"
- einfo "1) PostgreSQL server running"
- einfo "2) database 'test' defined with user 'test' with password 'password'"
- einfo " as owner of the database"
- einfo "3) plpgsql support in the 'test' database"
- einfo
- einfo "You can find a general info on how to perform these steps at"
- einfo "https://wiki.gentoo.org/wiki/PostgreSQL"
-
- ANT_TASKS="ant-junit" eant test -Dgentoo.classpath=$(java-pkg_getjars --build-only junit)
-}
-
-src_install() {
- java-pkg_newjar jars/postgresql.jar jdbc-postgresql.jar
-
- if use doc ; then
- java-pkg_dojavadoc build/publicapi
- dohtml build/doc/pgjdbc.html
- fi
-
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-9.3_p1100.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-9.3_p1100.ebuild
deleted file mode 100644
index e5cff42377a1..000000000000
--- a/dev-java/jdbc-postgresql/jdbc-postgresql-9.3_p1100.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="postgresql-jdbc"
-MY_PV="${PV/_p/-}"
-MY_P="${MY_PN}-${MY_PV}.src"
-
-DESCRIPTION="JDBC Driver for PostgreSQL"
-SRC_URI="https://jdbc.postgresql.org/download/${MY_P}.tar.gz"
-HOMEPAGE="https://jdbc.postgresql.org/"
-
-LICENSE="POSTGRESQL"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=virtual/jdk-1.6
- doc? (
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
- )
- test? (
- dev-java/ant-junit
- dev-db/postgresql[server]
- )"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/postgresql-jdbc-${MY_PV}.src"
-
-java_prepare() {
- find -name "*.class" -type f -exec rm -v {} + || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_DOC_TARGET="publicapi"
-
-src_compile() {
- java-pkg-2_src_compile
-
- # There is a task that creates this doc but I didn't find a way how to use system catalog
- # to lookup the stylesheet so the 'doc' target is rewritten here to use system call instead.
- if use doc; then
- mkdir -p "${S}/build/doc"
- xsltproc -o "${S}/build/doc/pgjdbc.html" http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl \
- "${S}/doc/pgjdbc.xml"
- fi
-}
-
-src_test() {
- einfo "In order to run the tests successfully, you have to have:"
- einfo "1) PostgreSQL server running"
- einfo "2) database 'test' defined with user 'test' with password 'password'"
- einfo " as owner of the database"
- einfo "3) plpgsql support in the 'test' database"
- einfo
- einfo "You can find a general info on how to perform these steps at"
- einfo "https://wiki.gentoo.org/wiki/PostgreSQL"
-
- ANT_TASKS="ant-junit" eant test -Dgentoo.classpath=$(java-pkg_getjars --build-only junit)
-}
-
-src_install() {
- java-pkg_newjar jars/postgresql.jar jdbc-postgresql.jar
-
- if use doc ; then
- java-pkg_dojavadoc build/publicapi
- dohtml build/doc/pgjdbc.html
- fi
-
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1205.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1205.ebuild
deleted file mode 100644
index d7200bc01043..000000000000
--- a/dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1205.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit epatch java-pkg-2 java-ant-2
-
-MY_PN="postgresql-jdbc"
-MY_PV="${PV/_p/-}"
-MY_P="${MY_PN}-${MY_PV}.src"
-
-DESCRIPTION="JDBC Driver for PostgreSQL"
-SRC_URI="https://jdbc.postgresql.org/download/${MY_P}.tar.gz"
-HOMEPAGE="https://jdbc.postgresql.org/"
-
-LICENSE="POSTGRESQL"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE="test"
-
-DEPEND="
- >=virtual/jdk-1.6
- doc? (
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
- )
- test? (
- >=dev-db/postgresql-9.3[server]
- dev-java/ant-junit
- dev-java/junit:4
- dev-java/xml-commons
- )"
-RDEPEND=">=virtual/jre-1.6"
-
-RESTRICT="test" # Requires external postgresql server setup
-
-S="${WORKDIR}/postgresql-jdbc-${MY_PV}.src"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_DOC_TARGET="publicapi"
-
-java_prepare() {
- # Strip build.xml of maven deps
- sed -i -e '/<classpath.*dependency\.compile\.classpath/c\' build.xml || die
- sed -i -e '/<classpath.*dependency\.runtime\.classpath/c\' build.xml || die
- sed -i -e '/<classpath.*dependency\.test\.classpath/c\' build.xml || die
- sed -i -e '/<target name="artifact-version"/,/<[/]target>/{s/depends="maven-dependencies"//}' build.xml || die
- sed -i -e '/<target name="compile"/ s/,maven-dependencies//' build.xml || die
-
- # Remove SSPI, it pulls in Waffle-JNA and is only used on Windows
- sed -i -e '/<include.*sspi/c\' build.xml || die
- rm -vrf org/postgresql/sspi || die "Error removing sspi"
- epatch "${FILESDIR}"/${PN}-9.4_p1204-remove-sspi.patch
-
- # FIXME @someone who cares: enable through osgi flag?
- sed -i -e '/<include.*osgi/c\' build.xml || die
- sed -i -e '/<test.*osgi/c\' build.xml || die
- rm -vrf org/postgresql/osgi || die "Error removing osgi"
- rm -vrf org/postgresql/test/osgi || die "Error removing osgi tests"
- epatch "${FILESDIR}"/${PN}-9.4_p1201-remove-osgi.patch
-
- java-pkg_clean
-}
-
-src_compile() {
- EANT_BUILD_TARGET="release-version jar"
- java-pkg-2_src_compile
-
- # There is a task that creates this doc but I didn't find a way how to use system catalog
- # to lookup the stylesheet so the 'doc' target is rewritten here to use system call instead.
- if use doc; then
- mkdir -p "${S}/build/doc" || die
- xsltproc -o "${S}/build/doc/pgjdbc.html" http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl \
- "${S}/doc/pgjdbc.xml" || die
- fi
-}
-
-src_test() {
- einfo "In order to run the tests successfully, you have to have:"
- einfo "1) PostgreSQL server running"
- einfo "2) database 'test' defined with user 'test' with password 'test'"
- einfo " as owner of the database"
- einfo "3) plpgsql support in the 'test' database"
- einfo
- einfo "You can find a general info on how to perform these steps at"
- einfo "https://wiki.gentoo.org/wiki/PostgreSQL"
-
- ANT_TASKS="ant-junit" eant test -Dgentoo.classpath=$(java-pkg_getjars --build-only "junit-4,xml-commons")
-}
-
-src_install() {
- java-pkg_newjar build/jars/postgresql*.jar jdbc-postgresql.jar
-
- if use doc ; then
- java-pkg_dojavadoc build/publicapi
- dohtml build/doc/pgjdbc.html
- fi
-
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1206.ebuild b/dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1206.ebuild
deleted file mode 100644
index cb6986cc6773..000000000000
--- a/dev-java/jdbc-postgresql/jdbc-postgresql-9.4_p1206.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit epatch java-pkg-2 java-ant-2
-
-MY_PN="postgresql-jdbc"
-MY_PV="${PV/_p/-}"
-MY_P="${MY_PN}-${MY_PV}.src"
-
-DESCRIPTION="JDBC Driver for PostgreSQL"
-SRC_URI="https://jdbc.postgresql.org/download/${MY_P}.tar.gz"
-HOMEPAGE="https://jdbc.postgresql.org/"
-
-LICENSE="POSTGRESQL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="test"
-
-DEPEND="
- >=virtual/jdk-1.6
- doc? (
- dev-libs/libxslt
- app-text/docbook-xsl-stylesheets
- )
- test? (
- >=dev-db/postgresql-9.3[server]
- dev-java/ant-junit
- dev-java/junit:4
- dev-java/xml-commons
- )"
-RDEPEND=">=virtual/jre-1.6"
-
-RESTRICT="test" # Requires external postgresql server setup
-
-S="${WORKDIR}/postgresql-jdbc-${MY_PV}.src"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_DOC_TARGET="publicapi"
-
-java_prepare() {
- # Strip build.xml of maven deps
- sed -i -e '/<classpath.*dependency\.compile\.classpath/c\' build.xml || die
- sed -i -e '/<classpath.*dependency\.runtime\.classpath/c\' build.xml || die
- sed -i -e '/<classpath.*dependency\.test\.classpath/c\' build.xml || die
- sed -i -e '/<target name="artifact-version"/,/<[/]target>/{s/depends="maven-dependencies"//}' build.xml || die
- sed -i -e '/<target name="compile"/ s/,maven-dependencies//' build.xml || die
-
- # Remove SSPI, it pulls in Waffle-JNA and is only used on Windows
- sed -i -e '/<include.*sspi/c\' build.xml || die
- rm -vrf org/postgresql/sspi || die "Error removing sspi"
- epatch "${FILESDIR}"/${PN}-9.4_p1204-remove-sspi.patch
-
- # FIXME @someone who cares: enable through osgi flag?
- sed -i -e '/<include.*osgi/c\' build.xml || die
- sed -i -e '/<test.*osgi/c\' build.xml || die
- rm -vrf org/postgresql/osgi || die "Error removing osgi"
- rm -vrf org/postgresql/test/osgi || die "Error removing osgi tests"
- epatch "${FILESDIR}"/${PN}-9.4_p1201-remove-osgi.patch
-
- java-pkg_clean
-}
-
-src_compile() {
- EANT_BUILD_TARGET="release-version jar"
- java-pkg-2_src_compile
-
- # There is a task that creates this doc but I didn't find a way how to use system catalog
- # to lookup the stylesheet so the 'doc' target is rewritten here to use system call instead.
- if use doc; then
- mkdir -p "${S}/build/doc" || die
- xsltproc -o "${S}/build/doc/pgjdbc.html" http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl \
- "${S}/doc/pgjdbc.xml" || die
- fi
-}
-
-src_test() {
- einfo "In order to run the tests successfully, you have to have:"
- einfo "1) PostgreSQL server running"
- einfo "2) database 'test' defined with user 'test' with password 'test'"
- einfo " as owner of the database"
- einfo "3) plpgsql support in the 'test' database"
- einfo
- einfo "You can find a general info on how to perform these steps at"
- einfo "https://wiki.gentoo.org/wiki/PostgreSQL"
-
- ANT_TASKS="ant-junit" eant test -Dgentoo.classpath=$(java-pkg_getjars --build-only "junit-4,xml-commons")
-}
-
-src_install() {
- java-pkg_newjar build/jars/postgresql*.jar jdbc-postgresql.jar
-
- if use doc ; then
- java-pkg_dojavadoc build/publicapi
- dohtml build/doc/pgjdbc.html
- fi
-
- use source && java-pkg_dosrc org
-}
diff --git a/dev-java/jdbc-postgresql/metadata.xml b/dev-java/jdbc-postgresql/metadata.xml
index 2444066aa02b..941a1afc5359 100644
--- a/dev-java/jdbc-postgresql/metadata.xml
+++ b/dev-java/jdbc-postgresql/metadata.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">pgjdbc/pgjdbc</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/jdepend/Manifest b/dev-java/jdepend/Manifest
index a948cf6780f1..806ea8f5a29b 100644
--- a/dev-java/jdepend/Manifest
+++ b/dev-java/jdepend/Manifest
@@ -1 +1 @@
-DIST jdepend-2.9.zip 302836 BLAKE2B dcf3b9c37037926d3792932327ddeb1e95fbbc47beaffb2197653b32bb919a0f3bb4d80c3b32d8e8d83f58e3c216ae5ae6e7ad923971adb460ef0d7fd6036149 SHA512 93ae1ca82422be0dce9794f25ad98c078da7437bca59c697405806a462f81b52028e0536075e2a2f428d8f8c5a27ae50fa7a580b75edbd4e8c9c750315b1c919
+DIST jdepend-2.10.tar.gz 1226471 BLAKE2B d4ec55913a882e4796de88bd220e6bf6a13df516653e7f247a4c84c0c6967f642b1633341955704a0d89b1d449368c4b0d1cd4b52034c64caeb5781e9d2c5839 SHA512 7a01ab4311f41c9176e61e6b0ad50e7c50b4d5638550775a6bd8ee9587ea5978b7dde502d5a82b2ff12811c57a6407e2add42e0c5400517680f425e55e04ae3f
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.9-r6.ebuild b/dev-java/jdepend/jdepend-2.9-r6.ebuild
deleted file mode 100644
index 39c2010bf34f..000000000000
--- a/dev-java/jdepend/jdepend-2.9-r6.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Traverses Java class file directories and generates design quality metrics"
-HOMEPAGE="http://www.clarkware.com/software/JDepend.html"
-SRC_URI="http://www.clarkware.com/software/${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8
- >=app-arch/unzip-5.50-r1"
-RDEPEND=">=virtual/jre-1.8"
-
-java_prepare() {
- rm -v "${S}"/lib/*.jar || die
-}
-
-src_install() {
- java-pkg_newjar dist/jdepend-2.9.jar
- dodoc README
- dohtml -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 2444066aa02b..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 "http://www.gentoo.org/dtd/metadata.dtd">
+<!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/jdisasm/Manifest b/dev-java/jdisasm/Manifest
new file mode 100644
index 000000000000..4d200cc3b0ed
--- /dev/null
+++ b/dev-java/jdisasm/Manifest
@@ -0,0 +1 @@
+DIST jdisasm-1.0.6.tar.gz 60275 BLAKE2B 75231659b51891df37dbc74a150a26ca6ee661f3bc1a5674c99c9ff9b37850f68cba893922e2549fb2b05ec82e479d5b348b6018f2ac6689fd764ebb8d19bbbb SHA512 3c006ae74e7ada7a987a68cbdc0e99694290a3ad984a2d9985a9484c6dea4be08eb48cc66cbeb81b56ff875ad3c2d6ed20a57646d29ab5a6d2d39ae5a939f841
diff --git a/dev-java/jdisasm/jdisasm-1.0.6.ebuild b/dev-java/jdisasm/jdisasm-1.0.6.ebuild
new file mode 100644
index 000000000000..442854e9b8d4
--- /dev/null
+++ b/dev-java/jdisasm/jdisasm-1.0.6.ebuild
@@ -0,0 +1,110 @@
+# 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/aunkrig/jdisasm/archive/5e354d659e4320d154b3f1fbff24c89c1ba48987.tar.gz --slot 0 --keywords "~amd64" --ebuild jdisasl-1.0.6.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="de.unkrig.jdisasm:jdisasm:1.0.6"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A disassembler for Java .class files"
+HOMEPAGE="https://github.com/aunkrig/jdisasm"
+MY_COMMIT="5e354d659e4320d154b3f1fbff24c89c1ba48987"
+SRC_URI="https://github.com/aunkrig/jdisasm/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# There was 1 failure:
+# 1) testWideLocals(jdisasm.Tests)
+# java.lang.AssertionError: regex [(?m)^ iload_2 \[int l1\]$] not found in [
+# // *** Disassembly of 'target/test-classes/subject/WideLocals.class'.
+#
+# // Class file version = 52.0 (Java 8)
+#
+# package subject;
+#
+# public class WideLocals extends Object {
+#
+# public WideLocals() {
+# // Line 35
+# aload_0 [this]
+# invokespecial Object()
+# return
+# }
+#
+# public int methodWithOnlyAFewLocals(int p0) {
+# // Line 39
+# iconst_2
+# iload_1 [p0]
+# imul
+# istore_2 [v2]
+# // Line 40
+# iload_2 [v2]
+# ireturn
+# }
+#
+# public int methodWithManyLocals(int p0) {
+# // Line 79
+# iconst_3
+# istore [v202]
+# // Line 80
+# iconst_4
+# wide istore [v272]
+# // Line 81
+# iload_1 [p0]
+# ireturn
+# }
+# }
+# ]
+# at org.junit.Assert.fail(Assert.java:89)
+# at de.unkrig.commons.junit4.AssertRegex.assertFind(AssertRegex.java:182)
+# at de.unkrig.commons.junit4.AssertRegex.assertFind(AssertRegex.java:169)
+# at jdisasm.Tests.testWideLocals(Tests.java:44)
+#
+# FAILURES!!!
+# Tests run: 1, Failures: 1
+RESTRICT="test"
+
+# Common dependencies
+# POM: pom.xml
+# de.unkrig.commons:commons-nullanalysis:1.2.13 -> >=dev-java/commons-nullanalysis-1.2.17:0
+
+CP_DEPEND="
+ dev-java/commons-nullanalysis:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? de.unkrig.commons:commons-junit4:1.2.13 -> >=dev-java/commons-junit4-1.2.17:0
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/commons-junit4:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/jdisasm-${MY_COMMIT}/jdisasm"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="commons-junit4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # but it doesn't help :-(
+ export LANG="C" LC_ALL="C"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jdisasm/metadata.xml b/dev-java/jdisasm/metadata.xml
new file mode 100644
index 000000000000..367d548bde34
--- /dev/null
+++ b/dev-java/jdisasm/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">aunkrig/jdisasm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jdom/Manifest b/dev-java/jdom/Manifest
index 251072f6c988..ac1c82fc0e38 100644
--- a/dev-java/jdom/Manifest
+++ b/dev-java/jdom/Manifest
@@ -1,2 +1,2 @@
-DIST JDOM-2.0.6.tar.gz 8344114 BLAKE2B 0b9a568fe4de1fb9afc5a547d75aa1d3556bf497c76e3d32d1ebd7658634ea02e4fafa3c6261b64d9b803fc6e78ae013fb8a366bcbd5024e8ab0aced83f58e33 SHA512 d585b39159f0887485b2e681609b51113de6bc7c43627c42d7e81eb06ac65c507b43cf3d81c5df4399b1e3abf454c8852264a84567940bc5ba0c358eb9c0c4a1
+DIST JDOM-2.0.6.1.tar.gz 8368301 BLAKE2B b9d5d8e611b9a0505c9576f2c4a2243eddd8a171bbe44d83440edf44154cae80138ddca8a0bceb3124a6825111d30641a28d645507a1bacad6a8cb9ad1dbccdd SHA512 c09b422b0635a478cb70e57e4c35bc7f505f6a2730be813d6e63c053814581e4dc3fdf431b945394c30ab37a8fb83fd103767f8de84d28bef79e95e2c37518e1
DIST jdom-1.1.3.tar.gz 4233403 BLAKE2B 9e4afacc6f10d2be1d793bd3b9f438f79e8e27f50bcae83eac5054df806c01c211ac493465bcda58ac204e796663ffb8aedf43a177f23c23a69af399243461a0 SHA512 a693fcc0d5c8ab3cf086a7904c7fb711e7deedca542089b84c6d011584e0d889495a58843033bff25272fdf130b1347419e31b9a4650c85ce9dfa19022dc0278
diff --git a/dev-java/jdom/files/build-xml-2.patch b/dev-java/jdom/files/build-xml-2.patch
deleted file mode 100644
index 420f9eff1993..000000000000
--- a/dev-java/jdom/files/build-xml-2.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- a/build.xml 2015-02-15 02:58:04.000000000 +0000
-+++ b/build.xml 2015-08-27 23:11:09.807800249 +0100
-@@ -267,7 +267,7 @@
- </javac>
- </target>
-
-- <target name="compile" depends="compile.core, compile.junit, compile.contrib, compile.samples"
-+ <target name="compile" depends="compile.core, compile.contrib, compile.samples"
- description="Compiles all JDOM code (core, samples, junit, contrib)" />
-
- <!-- =================================================================== -->
-@@ -296,7 +296,7 @@
- <!-- =================================================================== -->
- <!-- Creates the jars -->
- <!-- =================================================================== -->
-- <target name="jars" depends="compile, javadoc"
-+ <target name="jars" depends="compile"
- description="Builds the Jars">
- <fixcrlf srcdir="." includes="**/*.bat" excludes="build*.*" eol="crlf"/>
- <fixcrlf srcdir="." includes="**/*.sh" excludes="build*.*" eol="lf"/>
-@@ -320,6 +320,7 @@
- <fileset dir="${contrib.build}" includes="**/*" />
- <fileset dir="${metainf.build}" excludes="**/MANIFEST.MF" />
- </jar>
-+<!--
- <jar jarfile="${package}/${jarbase}-junit.jar" >
- <fileset dir="${junit.build}" includes="**/*" />
- <fileset dir="${metainf.build}" excludes="**/MANIFEST.MF" />
-@@ -332,6 +333,7 @@
- <fileset dir="${contrib.src}" includes="**/*" />
- </jar>
-
-+-->
- </target>
-
- <target name="androidtests" depends="jars">
diff --git a/dev-java/jdom/files/jdom-2.0.6.1-skip-failing-tests.patch b/dev-java/jdom/files/jdom-2.0.6.1-skip-failing-tests.patch
new file mode 100644
index 000000000000..cb8675153b8a
--- /dev/null
+++ b/dev-java/jdom/files/jdom-2.0.6.1-skip-failing-tests.patch
@@ -0,0 +1,248 @@
+In order to enable tests we skip ( @Ignore ) several of them which
+would otherwise fail, see bug #901743.
+--- a/test/src/java/org/jdom2/test/cases/input/TestSAXBuilder.java
++++ b/test/src/java/org/jdom2/test/cases/input/TestSAXBuilder.java
+@@ -86,6 +86,7 @@ import java.util.List;
+
+ import org.junit.Ignore;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.xml.sax.Attributes;
+ import org.xml.sax.DTDHandler;
+ import org.xml.sax.EntityResolver;
+@@ -696,6 +697,7 @@ public final class TestSAXBuilder {
+ * are added to the DocType
+ */
+ @Test
++ @Ignore
+ public void test_TCM__void_setExpandEntities_boolean() throws JDOMException, IOException {
+ //test entity exansion on internal entity
+
+--- a/test/src/java/org/jdom2/test/cases/output/AbstractTestOutputter.java
++++ b/test/src/java/org/jdom2/test/cases/output/AbstractTestOutputter.java
+@@ -6,6 +6,7 @@ import java.util.ArrayList;
+ import java.util.List;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import org.jdom2.Attribute;
+ import org.jdom2.CDATA;
+@@ -483,6 +484,7 @@ public abstract class AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testDocTypeSimpleISS() {
+ DocType content = new DocType("root");
+ content.setInternalSubset("<!ENTITY name \"value\">");
+@@ -518,6 +520,7 @@ public abstract class AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testDocTypeSystemIDISS() {
+ DocType content = new DocType("root", "sysid");
+ content.setInternalSubset("internal");
+@@ -553,6 +556,7 @@ public abstract class AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testDocTypePublicSystemIDISS() {
+ DocType content = new DocType("root", "pubid", "sysid");
+ content.setInternalSubset("internal");
+@@ -768,6 +772,7 @@ public abstract class AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testOutputElementAttributeNotSpecifiedB() {
+ String txt = "<root atta=\"val\" attb=\"attb\" />";
+ final Element root = new Element("root");
+@@ -1111,6 +1116,7 @@ public abstract class AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testOutputDocTypeInternalSubset() {
+ String dec = "<!DOCTYPE root [\ninternal]>";
+ DocType dt = new DocType("root");
+@@ -1151,6 +1157,7 @@ public abstract class AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testOutputDocumentOmitEncoding() {
+ Document doc = new Document();
+ doc.addContent(new Element("root"));
+--- a/test/src/java/org/jdom2/test/cases/output/AbstractTestRoundTrip.java
++++ b/test/src/java/org/jdom2/test/cases/output/AbstractTestRoundTrip.java
+@@ -5,6 +5,7 @@ import static org.junit.Assert.assertTrue;
+ import java.io.IOException;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ import org.jdom2.Document;
+ import org.jdom2.Element;
+@@ -63,6 +64,7 @@ public abstract class AbstractTestRoundTrip {
+ }
+
+ @Test
++ @Ignore
+ public void testNamespaces() throws JDOMException, IOException {
+ final SAXBuilder sb = new SAXBuilder();
+
+@@ -72,6 +74,7 @@ public abstract class AbstractTestRoundTrip {
+ }
+
+ @Test
++ @Ignore
+ public void testComplex() throws JDOMException, IOException {
+ final SAXBuilder sb = new SAXBuilder();
+
+--- a/test/src/java/org/jdom2/test/cases/output/TestDOMOutputter.java
++++ b/test/src/java/org/jdom2/test/cases/output/TestDOMOutputter.java
+@@ -237,6 +237,7 @@ public final class TestDOMOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void testWithDocType() {
+ DocType dt = new DocType("root");
+ dt.setInternalSubset("<!ELEMENT root (#PCDATA)>");
+--- a/test/src/java/org/jdom2/test/cases/output/TestStAXEventOutputter.java
++++ b/test/src/java/org/jdom2/test/cases/output/TestStAXEventOutputter.java
+@@ -347,6 +347,7 @@ public final class TestStAXEventOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogatePair() throws XMLStreamException, IOException, JDOMException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -362,6 +363,7 @@ public final class TestStAXEventOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogatePairDecimal() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -376,6 +378,7 @@ public final class TestStAXEventOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogateAttPair() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -390,6 +393,7 @@ public final class TestStAXEventOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogateAttPairDecimal() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -405,6 +409,7 @@ public final class TestStAXEventOutputter extends AbstractTestOutputter {
+
+ // Construct a raw surrogate pair character and confirm it outputs hex escaped
+ @Test
++ @Ignore
+ public void test_RawSurrogatePair() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+--- a/test/src/java/org/jdom2/test/cases/output/TestStAXStreamOutputter.java
++++ b/test/src/java/org/jdom2/test/cases/output/TestStAXStreamOutputter.java
+@@ -321,6 +321,7 @@ public final class TestStAXStreamOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogatePair() throws XMLStreamException, IOException, JDOMException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -337,6 +338,7 @@ public final class TestStAXStreamOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogatePairDecimal() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -352,6 +354,7 @@ public final class TestStAXStreamOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogateAttPair() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -367,6 +370,7 @@ public final class TestStAXStreamOutputter extends AbstractTestOutputter {
+ }
+
+ @Test
++ @Ignore
+ public void test_HighSurrogateAttPairDecimal() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+@@ -383,6 +387,7 @@ public final class TestStAXStreamOutputter extends AbstractTestOutputter {
+
+ // Construct a raw surrogate pair character and confirm it outputs hex escaped
+ @Test
++ @Ignore
+ public void test_RawSurrogatePair() throws JDOMException, IOException, XMLStreamException {
+ SAXBuilder builder = new SAXBuilder();
+ builder.setExpandEntities(true);
+--- a/test/src/java/org/jdom2/test/cases/special/TestIssue008ExpandEntity.java
++++ b/test/src/java/org/jdom2/test/cases/special/TestIssue008ExpandEntity.java
+@@ -13,6 +13,7 @@ import org.jdom2.output.XMLOutputter;
+ import org.jdom2.test.util.FidoFetch;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+
+ @SuppressWarnings("javadoc")
+ public class TestIssue008ExpandEntity {
+@@ -53,16 +54,19 @@ public class TestIssue008ExpandEntity {
+ }
+
+ @Test
++ @Ignore
+ public void testFalse() {
+ roundTrip(false, false, null, "<doc>&minus;</doc>");
+ }
+
+ @Test
++ @Ignore
+ public void testFalseUSASCII() {
+ roundTrip(false, false, "US-ASCII", "<doc>&minus;</doc>");
+ }
+
+ @Test
++ @Ignore
+ public void testFalseUTF8() {
+ roundTrip(false, false, "UTF-8", "<doc>&minus;</doc>");
+ }
+@@ -85,16 +89,19 @@ public class TestIssue008ExpandEntity {
+
+
+ @Test
++ @Ignore
+ public void testValidFalse() {
+ roundTrip(false, true, null, "<doc>&minus;</doc>");
+ }
+
+ @Test
++ @Ignore
+ public void testValidFalseUSASCII() {
+ roundTrip(false, true, "US-ASCII", "<doc>&minus;</doc>");
+ }
+
+ @Test
++ @Ignore
+ public void testValidFalseUTF8() {
+ roundTrip(false, true, "UTF-8", "<doc>&minus;</doc>");
+ }
diff --git a/dev-java/jdom/jdom-2.0.6-r5.ebuild b/dev-java/jdom/jdom-2.0.6-r5.ebuild
deleted file mode 100644
index 772c36da6de7..000000000000
--- a/dev-java/jdom/jdom-2.0.6-r5.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_P="JDOM-${PV}"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java API to manipulate XML data"
-SRC_URI="https://github.com/hunterhacker/${PN}/archive/${MY_P}.tar.gz"
-HOMEPAGE="http://www.jdom.org"
-
-LICENSE="Apache-1.1"
-SLOT="2"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
- dev-java/iso-relax:0
- dev-java/jaxen:1.2
- dev-java/xalan:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="jars"
-EANT_TEST_TARGET="junit"
-EANT_GENTOO_CLASSPATH="iso-relax,jaxen-1.2,xalan"
-S="${WORKDIR}/${PN}-${MY_P}"
-
-PATCHES=(
- "${FILESDIR}/build-xml-2.patch"
-)
-
-src_prepare() {
- default
- java-pkg_clean
-
- # Remove Android stuff to avoid junit RDEPEND.
- rm -vr contrib/src/java/org/jdom2/contrib/android || die
-}
-
-src_install() {
- java-pkg_newjar build/package/${PN}-${SLOT}.x-????.??.??.??.??.jar ${PN}.jar
- java-pkg_newjar build/package/${PN}-${SLOT}.x-????.??.??.??.??-contrib.jar ${PN}-contrib.jar
-
- dodoc {CHANGES,COMMITTERS,README,TODO}.txt
- use doc && java-pkg_dojavadoc build/apidocs
- use source && java-pkg_dosrc {contrib,core}/src/java/*
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/jdom/jdom-2.0.6.1.ebuild b/dev-java/jdom/jdom-2.0.6.1.ebuild
new file mode 100644
index 000000000000..774430ba8820
--- /dev/null
+++ b/dev-java/jdom/jdom-2.0.6.1.ebuild
@@ -0,0 +1,110 @@
+# 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.jdom:jdom2:2.0.6.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java-based solution for accessing, manipulating, and outputting XML data"
+HOMEPAGE="http://www.jdom.org"
+SRC_URI="https://github.com/hunterhacker/jdom/archive/${PN^^}-${PV}.tar.gz"
+S="${WORKDIR}/jdom-JDOM-${PV}"
+
+LICENSE="Apache-1.1"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/iso-relax:0
+ dev-java/jaxen:1.2
+ dev-java/xalan:0
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/xerces:2
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+PATCHES=( "${FILESDIR}/jdom-2.0.6.1-skip-failing-tests.patch" )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,xerces-2"
+JAVA_TEST_RESOURCE_DIRS="test/src/resources"
+JAVA_TEST_SRC_DIR="test/src/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ default # bug #780585
+ java-pkg_clean
+
+ mkdir core/resources || die
+ cp -r core/{package,resources}/META-INF || die
+
+ # Remove Android stuff to avoid junit RDEPEND.
+ rm -vr contrib/src/java/org/jdom2/contrib/android || die
+
+ cd test/src/java || die
+ # java-pkg-simple.eclass expects test resources in JAVA_TEST_RESOURCE_DIRS
+ find . -type f ! -name '*.java' \
+ | xargs cp --parent -t ../resources || die
+
+ # We skip testDocTypeDocument() from 3 test classes due to test failures,
+ # see bug #901743. This requires changing also the line endings which would
+ # lead to huge patches. Hence we do this with sed ( 's/\r$//g' ).
+ sed \
+ -e 's/\r$//g' \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testDocTypeDocument()/i @Ignore' \
+ -i org/jdom2/test/cases/input/TestDOMBuilder.java \
+ -i org/jdom2/test/cases/input/TestStAXEventBuilder.java \
+ -i org/jdom2/test/cases/input/TestStAXStreamBuilder.java || die
+}
+
+src_compile() {
+ JAVA_JAR_FILENAME="jdom.jar"
+ JAVA_RESOURCE_DIRS="core/resources"
+ JAVA_SRC_DIR="core/src/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jdom.jar"
+ rm -rf target || die
+
+ JAVA_JAR_FILENAME="jdom-contrib.jar"
+ JAVA_RESOURCE_DIRS="contrib/src/resources"
+ JAVA_SRC_DIR="contrib/src/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jdom-contrib.jar"
+ rm -rf target || die
+
+ if use doc; then
+ JAVA_SRC_DIR=()
+ JAVA_SRC_DIR=(
+ "core/src/java"
+ "contrib/src/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ default # install README
+ java-pkg_dojar "jdom.jar"
+ java-pkg_dojar "jdom-contrib.jar"
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+ if use source; then
+ java-pkg_dosrc "core/src/java/*" "contrib/src/java/*"
+ fi
+}
diff --git a/dev-java/jdom/metadata.xml b/dev-java/jdom/metadata.xml
index ea64c2542284..8495676e21fd 100644
--- a/dev-java/jdom/metadata.xml
+++ b/dev-java/jdom/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -8,4 +8,7 @@
<upstream>
<remote-id type="github">hunterhacker/jdom</remote-id>
</upstream>
+ <longdescription>
+ JDOM is a Java-oriented object model which models XML documents. It provides a Java-centric means of generating and manipulating XML documents. While JDOM interoperates well with existing standards such as the Simple API for XML (SAX) and the Document Object Model (DOM), it is not an abstraction layer or enhancement to those APIs. Rather, it seeks to provide a robust, light-weight means of reading and writing XML data without the complex and memory-consumptive options that current API offerings provide.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/jdynamite/Manifest b/dev-java/jdynamite/Manifest
deleted file mode 100644
index 9628e9f1490f..000000000000
--- a/dev-java/jdynamite/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jdynamite1_2.tar.gz 216501 BLAKE2B d945ad40e7b174722dc81b23f50f02c67e92f5ca274a0e6de48e80921d6f3081a4fc41b977ee457e0184d1c628e67702ef93da0440744fe392399e3f65265f14 SHA512 922dc3755fc673d228edcbb7d20084a7d2123b936b5c38514781bd0c5eeef4a6420a4ca7256fb3ca8796fb057b854c49c6bacd9ca76ac9fdb24b3d3404ea4aea
diff --git a/dev-java/jdynamite/jdynamite-1.2-r1.ebuild b/dev-java/jdynamite/jdynamite-1.2-r1.ebuild
deleted file mode 100644
index 484edc88acf1..000000000000
--- a/dev-java/jdynamite/jdynamite-1.2-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PV="${PV/./_}"
-DESCRIPTION="Dynamic Template in Java"
-HOMEPAGE="http://jdynamite.sourceforge.net/doc/jdynamite.html"
-SRC_URI="mirror://sourceforge/${PN}/${PN}${MY_PV}.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-CDEPEND="dev-java/gnu-regexp:1"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}${PV}"
-
-JAVA_GENTOO_CLASSPATH="gnu-regexp-1"
-JAVA_SRC_DIR="src/cb/jdynamite"
-
-java_prepare() {
- rm -fvr "${S}"/{lib/*,cb,src/gnu,build.xml} || die
-}
diff --git a/dev-java/jdynamite/metadata.xml b/dev-java/jdynamite/metadata.xml
deleted file mode 100644
index 4503586e61d9..000000000000
--- a/dev-java/jdynamite/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jdynamite</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jempbox/Manifest b/dev-java/jempbox/Manifest
deleted file mode 100644
index f61d482eaba3..000000000000
--- a/dev-java/jempbox/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST pdfbox-1.7.1-src.zip 9167805 BLAKE2B f9e02d1540eaf7e4bb748906e56887494d81eecc88685fa9d758cb50712a530528573f4a7e5f816b4ff57d664a416b35444517d840c9b37239ec1e2b5a62b5a1 SHA512 8b2af3d8f431626c106e4f6e9e1d59d14abcd58cfdc9553f20c5057eef9f9cfbd0287e14e58e4d34472ad81198eb3f4d0a2fd6e88bd1fa5cbcf01e4befbf77d0
-DIST pdfbox-1.8.11-src.zip 11026359 BLAKE2B b3eb1add38e9bd0e5a1fcb116263fdbc372d6adb77132aeb0647a6c5d2c2b735345220f0a5c22caa97d04f78ad6517df388327aaa625677bd8c99d2051329a9c SHA512 05c8e5075379ed5ebb09555b39434dd936fce9dd24445871d24ea7f0f6afa49e74242bf0c9eba2d1a847b505143789b687dd039ca51ce76851132f2f18d434d1
diff --git a/dev-java/jempbox/files/jempbox-1.7.1_maven-build.xml b/dev-java/jempbox/files/jempbox-1.7.1_maven-build.xml
deleted file mode 100644
index 453f9f69f665..000000000000
--- a/dev-java/jempbox/files/jempbox-1.7.1_maven-build.xml
+++ /dev/null
@@ -1,247 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 8/2/12 4:32 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jempbox-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jempbox-1.7.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- source="1.5"
- linksource="false"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/1.5.0/docs/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.8.1"/>
- <get src="http://repository.apache.org/snapshots/junit/junit/4.8.1/junit-4.8.1.jar"
- dest="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.8.1/junit-4.8.1.jar"
- dest="${maven.repo.local}/junit/junit/4.8.1/junit-4.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jempbox/jempbox-1.7.1-r1.ebuild b/dev-java/jempbox/jempbox-1.7.1-r1.ebuild
deleted file mode 100644
index 12e0360d573b..000000000000
--- a/dev-java/jempbox/jempbox-1.7.1-r1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN=pdfbox
-
-DESCRIPTION="An open source Java library for parsing font files"
-HOMEPAGE="https://pdfbox.apache.org/"
-SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_PN}-${PV}-src.zip"
-
-LICENSE="BSD"
-SLOT="1.7"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.8"
-DEPEND="
- >=virtual/jdk-1.8
- app-arch/unzip
- test? ( dev-java/ant-junit:0 )"
-
-S="${WORKDIR}/${MY_PN}-${PV}/${PN}"
-
-src_prepare() {
- default
-
- cp -v "${FILESDIR}"/${P}_maven-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar ${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/org
-}
diff --git a/dev-java/jempbox/jempbox-1.8.11-r1.ebuild b/dev-java/jempbox/jempbox-1.8.11-r1.ebuild
deleted file mode 100644
index 47984f37aa4d..000000000000
--- a/dev-java/jempbox/jempbox-1.8.11-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN="pdfbox"
-MY_P="${MY_PN}-${PV}"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An open source Java library for working with XMP metadata"
-HOMEPAGE="https://pdfbox.apache.org/"
-SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_P}-src.zip"
-LICENSE="Apache-2.0"
-SLOT="1.8"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.8"
-
-DEPEND=">=virtual/jdk-1.8
- app-arch/unzip
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${MY_P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README.txt
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4)"
- local TESTS=$(find ${DIR} -name "*Test.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/jempbox/metadata.xml b/dev-java/jempbox/metadata.xml
deleted file mode 100644
index fac651d95a59..000000000000
--- a/dev-java/jempbox/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">apache/pdfbox</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jeromq/Manifest b/dev-java/jeromq/Manifest
new file mode 100644
index 000000000000..015d1b539992
--- /dev/null
+++ b/dev-java/jeromq/Manifest
@@ -0,0 +1 @@
+DIST jeromq-0.5.2.tar.gz 422673 BLAKE2B f244ef95bff70de8eb184e6eda8e292c54488435b8c9e000dbff5f1d6cb7b2b3066061bcb1fa678d2756117a52c39df795dae84071b544b0f577a331aecc8516 SHA512 49a3e9f7ff6b54dcde03958a84e72b8d4b44fb150fc980e9f1ea4ba9e258dcb0a0730d006550a3eb33e9f241e6d89cdc0ee2155213ddd309e255d606d1fa567b
diff --git a/dev-java/jeromq/jeromq-0.5.2.ebuild b/dev-java/jeromq/jeromq-0.5.2.ebuild
new file mode 100644
index 000000000000..a9d3fe3c79c2
--- /dev/null
+++ b/dev-java/jeromq/jeromq-0.5.2.ebuild
@@ -0,0 +1,50 @@
+# 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/zeromq/jeromq/archive/refs/tags/v0.5.2.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jeromq-0.5.2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.zeromq:jeromq:0.5.2"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Pure Java implementation of libzmq"
+HOMEPAGE="https://github.com/zeromq/jeromq"
+SRC_URI="https://github.com/zeromq/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+# Common dependencies
+# POM: pom.xml
+# com.neilalexander:jnacl:1.0.0 -> >=dev-java/jnacl-1.0:0
+
+CP_DEPEND="dev-java/jnacl:0"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( AUTHORS LICENSE {CHANGELOG,CONTRIBUTING,README}.md )
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jeromq/metadata.xml b/dev-java/jeromq/metadata.xml
new file mode 100644
index 000000000000..d82f36ba2afd
--- /dev/null
+++ b/dev-java/jeromq/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">zeromq/jeromq</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jetty-alpn-api/Manifest b/dev-java/jetty-alpn-api/Manifest
deleted file mode 100644
index 65ff66a6517c..000000000000
--- a/dev-java/jetty-alpn-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST alpn-api-1.1.2.v20150522.tar.gz 4246 BLAKE2B 20c23033f2afb14b24ec28dc05c308f4363d0a398a25aa88e28b90e92a49c36e78450b71279e96da5d5d8047facf12f3f699743a623b6d293e8d74f3ccd1707a SHA512 5c7cedf80bf7b3e27fe365df2fb1a2b0f4eb5d94416f54565c960036c73a79aaee50fb7d00a0a856f2808be7dafa921b8ad89772101ff7bd97fe452a0e395e79
diff --git a/dev-java/jetty-alpn-api/jetty-alpn-api-1.1.2.ebuild b/dev-java/jetty-alpn-api/jetty-alpn-api-1.1.2.ebuild
deleted file mode 100644
index 0bcb4940d608..000000000000
--- a/dev-java/jetty-alpn-api/jetty-alpn-api-1.1.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="${PN/jetty-/}"
-MY_PV="${PV}.v20150522"
-MY_P="${MY_PN}-${MY_PV}"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Jetty's ALPN API"
-HOMEPAGE="http://www.eclipse.org/jetty/documentation/current/alpn-chapter.html"
-SRC_URI="https://github.com/eclipse/jetty.alpn/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.7"
-
-DEPEND=">=virtual/jdk-1.7"
-
-S="${WORKDIR}/${PN//-/.}-${MY_P}"
-JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/jetty-alpn-api/metadata.xml b/dev-java/jetty-alpn-api/metadata.xml
deleted file mode 100644
index e7ff4b83b664..000000000000
--- a/dev-java/jetty-alpn-api/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">eclipse/jetty.alpn.api</remote-id>
- </upstream>
- <longdescription>
- The Jetty project provides an implementation of the TLS extension for ALPN for OpenJDK 7 and OpenJDK 8. ALPN allows the application layer to negotiate which protocol to use over the secure connection.
-
- Any protocol can be negotiated by ALPN within a TLS connection. The protocols that are most commonly negotiated are HTTP/2 (for browsers that support it) and, historically, SPDY. The ALPN implementation is therefore not HTTP/2 or SPDY specific in any way. Jetty's ALPN implementation, although hosted under the umbrella of the Jetty project, is independent of Jetty (the Servlet Container); you can use the ALPN implementation in any other Java network server.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/jetty-npn-api/Manifest b/dev-java/jetty-npn-api/Manifest
deleted file mode 100644
index b02ddeaaa3f9..000000000000
--- a/dev-java/jetty-npn-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST npn-api-1.1.1.v20141010-sources.jar 3078 BLAKE2B 7326eff6ba762c6f345ceeffe12885c5f6a05ab7856ae76a5be5538689a65cae243514581d1206f06831e21106d0ccac3e4f715b67aa0fae84ceb5ca81a5d1df SHA512 8ae7847dfae1e2f0561f976ed887eeadcf62594c88df6400a79cd5f02b877e83016ade6f93153a9c31eb2ba41ea436c1c4faa960713f72c0d2bfa818c96cc13b
diff --git a/dev-java/jetty-npn-api/jetty-npn-api-1.1.1.ebuild b/dev-java/jetty-npn-api/jetty-npn-api-1.1.1.ebuild
deleted file mode 100644
index 73640e0131bc..000000000000
--- a/dev-java/jetty-npn-api/jetty-npn-api-1.1.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MY_PN="${PN/jetty-/}"
-MY_PV="${PV}.v20141010"
-MY_P="${MY_PN}-${MY_PV}"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Jetty's NPN API"
-HOMEPAGE="http://www.eclipse.org/jetty/"
-SRC_URI="http://central.maven.org/maven2/org/eclipse/jetty/npn/${MY_PN}/${MY_PV}/${MY_P}-sources.jar"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.7"
-
-DEPEND=">=virtual/jdk-1.7
- app-arch/unzip"
diff --git a/dev-java/jetty-npn-api/metadata.xml b/dev-java/jetty-npn-api/metadata.xml
deleted file mode 100644
index df60d53575e0..000000000000
--- a/dev-java/jetty-npn-api/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- The Jetty project provides an implementation of the Next Protocol Negotiation TLS Extension (NPN) for OpenJDK 7 or greater. NPN allows the application layer to negotiate which protocol to use over the secure connection.
-
- NPN currently negotiates using SPDY as an application level protocol on port 443, and also negotiates the SPDY version. However, NPN is not SPDY specific in any way. Jetty's NPN implementation, although hosted under the umbrella of the Jetty project, is independent of Jetty (the servlet container); you can use it in any other Java network server.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/jexcelapi/Manifest b/dev-java/jexcelapi/Manifest
deleted file mode 100644
index 4f4a786c0b8f..000000000000
--- a/dev-java/jexcelapi/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jexcelapi-2.6.8.tar.gz 1925926 BLAKE2B 72e11a9805d75bbf7a34e31f741ecb081770c44e165e4f20d48c85d8eb8a36c24a3118fb918f16ddad1262f0380e87d3e732e30130624605589c51d12823893c SHA512 c649dcff8647530ca719f3e546d45ac585fed46d0a220763848f6d97b3f42c871b6520aee3575202598c7aba3391f647690075b6d9d52d1c2920817ff69548c1
diff --git a/dev-java/jexcelapi/jexcelapi-2.6.8-r2.ebuild b/dev-java/jexcelapi/jexcelapi-2.6.8-r2.ebuild
deleted file mode 100644
index 2fefc655acf5..000000000000
--- a/dev-java/jexcelapi/jexcelapi-2.6.8-r2.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${P//-/_}"
-MY_P="${MY_P//./_}"
-
-DESCRIPTION="A Java API to read, write, and modify Excel spreadsheets"
-HOMEPAGE="http://jexcelapi.sourceforge.net/"
-SRC_URI="mirror://sourceforge/jexcelapi/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="dev-java/log4j:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${PN}"
-
-JAVA_ENCODING="ISO-8859-1"
-JAVA_SRC_DIR="src"
-JAVA_GENTOO_CLASSPATH="log4j"
-
-JAVA_RM_FILES=(
- src/common/log/Log4jLoggerName.java
- src/common/log/SimpleLoggerName.java
-)
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/jexcelapi/metadata.xml b/dev-java/jexcelapi/metadata.xml
deleted file mode 100644
index 3d1e38d960d1..000000000000
--- a/dev-java/jexcelapi/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- Java Excel API is a mature, open source java API enabling developers to read, write, and modifiy Excel spreadsheets dynamically. Now java developers can read Excel spreadsheets, modify them with a convenient and simple API, and write the changes to any output stream (e.g. disk, HTTP, database, or any socket).
- </longdescription>
- <upstream>
- <remote-id type="sourceforge">jexcelapi</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jffi/Manifest b/dev-java/jffi/Manifest
index 7e1b652c69c9..8a641aa1521d 100644
--- a/dev-java/jffi/Manifest
+++ b/dev-java/jffi/Manifest
@@ -1 +1 @@
-DIST jffi-1.2.9.tar.gz 1952668 BLAKE2B 320329b02ee9e93153fc334b73a6216da74ac2d924a64c8a1569f1f1507e1196d0b922f7d158ea91f6bc7164979b2ac12de239adbe98664a3708dd29c8d40f96 SHA512 2fd9a95cce9a3406a09856761d1318d4c6b976b1f9b66c7c5b0b5e95d44b19ba654ab8288f396782c7bb53e6d9949e7cfa9c46763f2a0761c6e86f102cd202e4
+DIST jffi-1.3.10.tar.gz 3304571 BLAKE2B a2ce4901d05b31cffcbe750e9a9294413057ae26426ae381f08ab07a085507afe38d447a60d4698d0878760ba1fe18bfdc31ce9b737676a70c93689d2e4533a7 SHA512 9e7d9aa1c16d7fa2486c75b71fd23465a3069ea3f314bc1b536115c982333d7cffa93f75a06ec86b740b83f4fca3be0c32cf99222d90bf1e6b45a9744ead1268
diff --git a/dev-java/jffi/files/jffi-1.2.8-junit-4.11.patch b/dev-java/jffi/files/jffi-1.2.8-junit-4.11.patch
deleted file mode 100644
index ac3843a0053a..000000000000
--- a/dev-java/jffi/files/jffi-1.2.8-junit-4.11.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/src/test/java/com/kenai/jffi/NumberTest.java
-+++ b/src/test/java/com/kenai/jffi/NumberTest.java
-@@ -234,9 +234,8 @@
- private void returnF32(InvokerType type) {
- LibNumberTest lib = UnitHelper.loadTestLibrary(LibNumberTest.class, type);
- float[] values = { 0f, 1.0f, -2.0f };
-- for (int i = 0; i < values.length; ++i) {
-- assertEquals("Value not returned correctly", values[i], lib.ret_float(values[i]), 0.1f);
-- }
-+ float[] lib_values = { lib.ret_float(0f), lib.ret_float(1.0f), lib.ret_float(-2.0f) };
-+ assertArrayEquals("Value not returned correctly", values, lib_values, 0.1f);
- }
-
- @Test public void returnDefaultF64() {
diff --git a/dev-java/jffi/files/jffi-1.2.8-makefile.patch b/dev-java/jffi/files/jffi-1.2.8-makefile.patch
deleted file mode 100644
index cdc28a662b51..000000000000
--- a/dev-java/jffi/files/jffi-1.2.8-makefile.patch
+++ /dev/null
@@ -1,52 +0,0 @@
---- a/jni/GNUmakefile
-+++ b/jni/GNUmakefile
-@@ -41,6 +41,7 @@
- JFFI_BUILD_DIR = $(BUILD_DIR)/jffi
-
- ifeq ($(USE_SYSTEM_LIBFFI),1)
-+ LIBFFI =
- LIBFFI_LIBS ?= $(shell pkg-config --libs libffi)
- LIBFFI_CFLAGS ?= $(shell pkg-config --cflags libffi)
- else
-@@ -64,9 +65,8 @@
- OFLAGS = -O2 $(JFLAGS)
-
- # MacOS headers aren't completely warning free, so turn them off
--WERROR = -Werror
- ifneq ($(OS),darwin)
-- WFLAGS += -Wundef $(WERROR)
-+ WFLAGS += -Wundef
- endif
- WFLAGS += -W -Wall -Wno-unused -Wno-parentheses -Wno-unused-parameter
- PICFLAGS = -fPIC
-@@ -279,7 +279,7 @@
- @echo "JFFI_BUILD_DIR=$(JFFI_BUILD_DIR)"
- @echo "OBJS=$(OBJS)"
-
--$(LIBJFFI): $(OBJS) $(LIBFFI_LIBS)
-+$(LIBJFFI): $(OBJS) $(LIBFFI)
- $(CC) -o $@ $(LDFLAGS) $(SOFLAGS) $(OBJS) $(LIBFFI_LIBS) $(LIBS)
- $(STRIP) $@
-
-@@ -291,7 +291,7 @@
- @mkdir -p $(@D)
- @$(CC) $(CFLAGS) -o $@ -c $<
-
--$(OBJS) : $(LIBFFI_LIBS)
-+$(OBJS) : $(LIBFFI)
-
- ifeq ($(OS), darwin)
- build_ffi = \
---- a/libtest/GNUmakefile
-+++ b/libtest/GNUmakefile
-@@ -44,8 +44,8 @@
- # Compiler/linker flags from:
- # http://weblogs.java.net/blog/kellyohair/archive/2006/01/compilation_of_1.html
- JFLAGS = -fno-omit-frame-pointer -fno-strict-aliasing
--OFLAGS = -O2 $(JFLAGS)
--WFLAGS = -W -Werror -Wall -Wno-unused -Wno-unused-parameter -Wno-parentheses
-+OFLAGS = $(JFLAGS)
-+WFLAGS = -W -Wall -Wno-unused -Wno-unused-parameter -Wno-parentheses
- PICFLAGS = -fPIC
- SOFLAGS = -shared -Wl,-O1
- LDFLAGS += $(SOFLAGS)
diff --git a/dev-java/jffi/files/jffi-1.3.8-GNUmakefile.patch b/dev-java/jffi/files/jffi-1.3.8-GNUmakefile.patch
new file mode 100644
index 000000000000..3153ff08d307
--- /dev/null
+++ b/dev-java/jffi/files/jffi-1.3.8-GNUmakefile.patch
@@ -0,0 +1,39 @@
+Bug: #898142
+--- a/jni/GNUmakefile
++++ b/jni/GNUmakefile
+@@ -67,9 +67,11 @@ OFLAGS = -O2 $(JFLAGS)
+ WERROR = -Werror
+ ifneq ($(OS),darwin)
+ ifneq ($(OS),aix)
++ifneq ($(OS),linux)
+ WFLAGS += -Wundef $(WERROR)
+ endif
+ endif
++endif
+ WFLAGS += -W -Wall -Wno-unused -Wno-parentheses -Wno-unused-parameter
+ PICFLAGS = -fPIC
+ SOFLAGS = # Filled in for each OS specifically
+@@ -278,7 +280,7 @@ debug:
+ @echo "OBJS=$(OBJS)"
+
+ $(LIBJFFI): $(OBJS) $(LIBFFI_LIBS)
+- $(CC) -o $@ $(LDFLAGS) $(SOFLAGS) $(OBJS) $(LIBFFI) $(LIBS)
++ $(CC) -o $@ $(LDFLAGS) $(SOFLAGS) $(OBJS) $(LIBFFI) $(LIBS) $(LIBFFI_LIBS)
+ $(STRIP) $@
+ ifeq ($(OS), darwin)
+ codesign -s - $@
+@@ -287,10 +289,14 @@ endif
+ $(BUILD_DIR)/%.o : $(SRC_DIR)/%.c $(wildcard $(JFFI_SRC_DIR)/*.h)
+ @mkdir -p $(@D)
+ @$(CCACHE) $(CC) $(CFLAGS) -c $< -o $@
++ mkdir -p $(@D)
++ $(CCACHE) $(CC) $(CFLAGS) -c $< -o $@
+
+ $(BUILD_DIR)/%.o : $(SRC_DIR)/%.S $(wildcard $(JFFI_SRC_DIR)/*.h)
+ @mkdir -p $(@D)
+ @$(CC) $(CFLAGS) -o $@ -c $<
++ mkdir -p $(@D)
++ $(CC) $(CFLAGS) -o $@ -c $<
+
+ $(OBJS) : $(LIBFFI)
+
diff --git a/dev-java/jffi/files/jffi_maven-build.xml b/dev-java/jffi/files/jffi_maven-build.xml
deleted file mode 100644
index d8114185ee41..000000000000
--- a/dev-java/jffi/files/jffi_maven-build.xml
+++ /dev/null
@@ -1,259 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 1/9/12 9:52 AM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jffi-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jffi-1.0.11"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.8.2"/>
- <get src="http://repository.jboss.com/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://snapshots.jboss.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repository.jboss.org/maven2//junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repository.jboss.org/nexus/content/groups/public-jboss//junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo1.maven.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jffi/jffi-1.2.9-r1.ebuild b/dev-java/jffi/jffi-1.2.9-r1.ebuild
deleted file mode 100644
index 6c6b7d259e42..000000000000
--- a/dev-java/jffi/jffi-1.2.9-r1.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="An optimized Java interface to libffi"
-HOMEPAGE="https://github.com/jnr/jffi"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( Apache-2.0 LGPL-3 )"
-SLOT="1.2"
-KEYWORDS="amd64 ~arm64 ppc64 x86 ~ppc-macos ~x64-macos"
-
-CDEPEND="dev-libs/libffi:0="
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-# java 1.8 is needed because javah is called which is not in newer jdks
-DEPEND="${CDEPEND}
- virtual/jdk:1.8
- test? (
- dev-java/ant-junit4:0
- dev-java/junit:4
- )"
-
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.2.8-makefile.patch
- "${FILESDIR}"/${PN}-1.2.8-junit-4.11.patch
-)
-
-RESTRICT="test"
-
-src_prepare() {
- default
-
- cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die
-
- # misc fixes for Darwin
- if [[ ${CHOST} == *-darwin* ]] ; then
- local uarch
- # don't do multiarch
- # avoid using Xcode stuff
- # use Prefix' headers
- # don't mess with deployment target
- # set install_name
- use x64-macos && uarch=x86_64
- use ppc-macos && uarch=ppc
- sed -i \
- -e "/ARCHES +=/s/=.*$/= ${uarch}/" \
- -e "/XCODE=/s:=.*$:=${EPREFIX}:" \
- -e "/MACSDK/s/^/#/" \
- -e "/MACOSX_DEPLOYMENT_TARGET=/s/MAC/NOMAC/" \
- -e "/SOFLAGS =/s:=.*:= -install_name ${EPREFIX}/usr/lib/jffi-${SLOT}/libjffi-${SLOT}.jnilib:" \
- jni/GNUmakefile || die
- fi
-
- java-pkg_clean
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
-
-src_compile() {
- # generate Version.java
- cat > src/main/java/com/kenai/jffi/Version.java <<-EOF
- package com.kenai.jffi;
- public final class Version {
- private Version() {}
- public static final int MAJOR = $(ver_cut 1);
- public static final int MINOR = $(ver_cut 2);
- public static final int MICRO = $(ver_cut 3);
- }
- EOF
-
- java-pkg-2_src_compile
-
- # generate headers
- mkdir -p build/jni
- javah -d build/jni -classpath target/classes \
- com.kenai.jffi.Foreign \
- com.kenai.jffi.ObjectBuffer \
- com.kenai.jffi.Version \
- || die
-
- #build native library.
- local args=(
- SRC_DIR=jni
- JNI_DIR=jni
- BUILD_DIR=build/jni
- VERSION=$(ver_cut 1-2)
- USE_SYSTEM_LIBFFI=1
- CCACHE=
- -f jni/GNUmakefile
- )
- emake "${args[@]}"
-}
-
-EANT_TEST_GENTOO_CLASSPATH="ant-junit4,junit-4"
-
-src_test() {
- # build native test library
- emake BUILD_DIR=build -f libtest/GNUmakefile
-
- _JAVA_OPTIONS="-Djffi.boot.library.path=${S}/build/jni" \
- java-pkg-2_src_test
-}
-
-src_install() {
- local libname=".so"
-
- [[ ${CHOST} == *-darwin* ]] && libname=.jnilib
- java-pkg_doso build/jni/lib${PN}-$(ver_cut 1-2)${libname}
-
- # must by after _doso to have JAVA_PKG_LIBDEST set
- cat > boot.properties <<-EOF
- jffi.boot.library.path = ${JAVA_PKG_LIBDEST}
- EOF
- jar -uf target/${PN}.jar boot.properties || die
-
- java-pkg_dojar target/${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/jffi/jffi-1.3.10.ebuild b/dev-java/jffi/jffi-1.3.10.ebuild
new file mode 100644
index 000000000000..6f5d7fa61f9e
--- /dev/null
+++ b/dev-java/jffi/jffi-1.3.10.ebuild
@@ -0,0 +1,118 @@
+# 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.github.jnr:jffi:1.3.10"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java Foreign Function Interface"
+HOMEPAGE="https://github.com/jnr/jffi"
+SRC_URI="https://github.com/jnr/${PN}/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="1.3"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*
+ >=dev-libs/libffi-3.4.2-r2:="
+RDEPEND=">=virtual/jre-1.8:*
+ >=dev-libs/libffi-3.4.2-r2:="
+
+PATCHES=( "${FILESDIR}"/jffi-1.3.8-GNUmakefile.patch )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.jnrproject.jffi"
+JAVA_SRC_DIR="src/main/java"
+
+# https://github.com/jnr/jffi/blob/b6ad5c066a6346072ea04f8ffa8177204aadcb13/build.xml#L26
+JAVA_TEST_EXTRA_ARGS="-Djffi.library.path=${S}/build/jni -Djffi.boot.library.path=${S}/build/jni"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ default
+ cat > src/main/java/com/kenai/jffi/Version.java <<-EOF
+ package com.kenai.jffi;
+ import java.lang.annotation.Native;
+ public final class Version {
+ private Version() {}
+ @Native
+ public static final int MAJOR = $(ver_cut 1);
+ @Native
+ public static final int MINOR = $(ver_cut 2);
+ @Native
+ public static final int MICRO = $(ver_cut 3);
+ }
+ EOF
+
+ # https://bugs.gentoo.org/829820
+ if use arm; then
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/invokeHeapDO()/i @Ignore' \
+ -e '/invokeHeapNO()/i @Ignore' \
+ -e '/invokeHeapOD()/i @Ignore' \
+ -e '/invokeHeapON()/i @Ignore' \
+ -e '/invokeHeapOO()/i @Ignore' \
+ -e '/invokeHeapO()/i @Ignore' \
+ -e '/invokeNativeDO()/i @Ignore' \
+ -e '/invokeNativeNO()/i @Ignore' \
+ -e '/invokeNativeOD()/i @Ignore' \
+ -e '/invokeNativeON()/i @Ignore' \
+ -e '/invokeNativeOO()/i @Ignore' \
+ -e '/invokeNativeO()/i @Ignore' \
+ -i src/test/java/com/kenai/jffi/InvokerTest.java || die
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/returnDefaultF128HighPrecision/i @Ignore' \
+ -i src/test/java/com/kenai/jffi/NumberTest.java || die
+ fi
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # generate headers
+ mkdir -p build/jni
+ javac -h build/jni -classpath target/classes \
+ ${JAVA_SRC_DIR}/com/kenai/jffi/{Foreign,ObjectBuffer,Version}.java \
+ || die
+
+ #build native library.
+ local args=(
+ SRC_DIR=jni
+ JNI_DIR=jni
+ BUILD_DIR=build/jni
+ VERSION=$(ver_cut 1-2)
+ USE_SYSTEM_LIBFFI=1
+ CCACHE=
+ -f jni/GNUmakefile
+ )
+ emake "${args[@]}"
+}
+
+src_test() {
+ # build native test library
+ emake BUILD_DIR=build -f libtest/GNUmakefile
+
+ # https://github.com/jnr/jffi/issues/60
+ LC_ALL=C java-pkg-simple_src_test
+}
+
+src_install() {
+ local libname=".so"
+ java-pkg_doso build/jni/lib${PN}-$(ver_cut 1-2)${libname}
+
+ # must be after _doso to have JAVA_PKG_LIBDEST set
+ cat > boot.properties <<-EOF
+ jffi.boot.library.path = ${JAVA_PKG_LIBDEST}
+ EOF
+ jar -uf ${PN}.jar boot.properties || die
+
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jffi/metadata.xml b/dev-java/jffi/metadata.xml
index d78b07b4d6bb..9b3e0ff4e80a 100644
--- a/dev-java/jffi/metadata.xml
+++ b/dev-java/jffi/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jflex/jflex-1.6.1-r1.ebuild b/dev-java/jflex/jflex-1.6.1-r1.ebuild
deleted file mode 100644
index 80b924fcbda7..000000000000
--- a/dev-java/jflex/jflex-1.6.1-r1.ebuild
+++ /dev/null
@@ -1,124 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="JFlex is a lexical analyzer generator for Java"
-HOMEPAGE="https://www.jflex.de/"
-SRC_URI="https://${PN}.de/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 ~x86 ~ppc-macos ~x64-macos"
-IUSE="examples test vim-syntax"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND=">=virtual/jre-1.8:*
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.8:*
- test? ( dev-java/junit:4 )
- ${CDEPEND}"
-
-PDEPEND="dev-java/javacup:0"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src/main/java"
-
-src_prepare() {
- eapply_user
-
- # See below for details.
- eapply "${FILESDIR}/icedtea-arm.patch"
-
- # We need the bundled jflex.jar.
- rm -rv ${JAVA_SRC_DIR}/java_cup examples/pom.xml || die
-
- # Remove the bundled java-cup.jar if unneeded.
- if has_version ${PDEPEND}; then
- rm -v lib/java-cup-*.jar || die
- fi
-}
-
-src_configure() {
- # javacup is a cyclic dependency. Use the package if we have it,
- # otherwise use the bundled version and install the package later.
- if has_version ${PDEPEND}; then
- # Use PORTAGE_QUIET to suppress a QA warning that is spurious
- # thanks to has_version above. This is Portage-specific but
- # showing the warning elsewhere isn't the end of the world.
- JAVACUP=$(PORTAGE_QUIET=1 java-pkg_getjar --build-only javacup javacup.jar)
- else
- JAVACUP=$(echo lib/java-cup-*.jar)
- fi
-
- JAVA_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --build-only ant-core):${JAVACUP}"
-}
-
-jflex_compile() {
- java "${@}" jflex.Main -d ${JAVA_SRC_DIR}/${PN} --skel src/main/${PN}/skeleton.nested src/main/${PN}/LexScan.flex || die
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_compile() {
- java -jar "${JAVACUP}" -destdir ${JAVA_SRC_DIR}/${PN} -package ${PN} -parser LexParse -interface src/main/cup/LexParse.cup || die
-
- # The IcedTea ARM HotSpot port (as of 2.6.1) hangs when running
- # jflex. We have patched jflex to fix it but we have to run the
- # bundled version first. -Xint works around the problem. See
- # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2678.
- use arm && local JFLEX_ARGS="-Xint"
-
- # First compile (without doc/source) using the bundled jflex.
- JAVA_PKG_IUSE= jflex_compile -cp "lib/${P}.jar:${JAVACUP}" ${JFLEX_ARGS}
-
- # Then recompile using the fresh jflex.
- jflex_compile -cp "${PN}.jar:${JAVACUP}"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${PN} --main ${PN}.Main
-
- java-pkg_register-dependency javacup javacup-runtime.jar
- java-pkg_register-ant-task
-
- use examples && java-pkg_doexamples examples
- dodoc {changelog,README}.md
-
- if use doc; then
- dodoc doc/*.pdf
- docinto html
- dodoc doc/*.{css,html,png} doc/COPYRIGHT
- fi
-
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/syntax
- doins lib/${PN}.vim
- fi
-}
-
-src_test() {
- if use arm && java-pkg_current-vm-matches oracle-jdk-bin-1.8; then
- # This results in a StackOverflowError as of 1.8.0.65 but works
- # fine on icedtea:7. Don't know about icedtea:8 yet.
- rm -v src/test/java/jflex/EmitterTest.java || die
- fi
-
- local CP="src/test/java:${PN}.jar:${JAVA_GENTOO_CLASSPATH_EXTRA}:$(java-pkg_getjars junit-4)"
-
- local TESTS=$(find src/test/java -name "*Test*.java" -printf "%P\n")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find src/test/java -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/jflex/jflex-1.6.1-r2.ebuild b/dev-java/jflex/jflex-1.6.1-r2.ebuild
new file mode 100644
index 000000000000..17d1b99fd468
--- /dev/null
+++ b/dev-java/jflex/jflex-1.6.1-r2.ebuild
@@ -0,0 +1,126 @@
+# 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
+
+DESCRIPTION="JFlex is a lexical analyzer generator for Java"
+HOMEPAGE="https://www.jflex.de/"
+SRC_URI="https://${PN}.de/${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
+IUSE="examples test vim-syntax"
+RESTRICT="!test? ( test )"
+
+CDEPEND=">=dev-java/ant-1.10.14:0"
+
+RDEPEND=">=virtual/jre-1.8:*
+ vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.8:*
+ test? ( dev-java/junit:4 )
+ ${CDEPEND}"
+
+PDEPEND="dev-java/javacup:0"
+
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ eapply_user
+
+ # See below for details.
+ eapply "${FILESDIR}/icedtea-arm.patch"
+
+ # We need the bundled jflex.jar.
+ rm -rv ${JAVA_SRC_DIR}/java_cup examples/pom.xml || die
+
+ # Remove the bundled java-cup.jar if unneeded.
+ if has_version ${PDEPEND}; then
+ rm -v lib/java-cup-*.jar || die
+ fi
+}
+
+src_configure() {
+ # javacup is a cyclic dependency. Use the package if we have it,
+ # otherwise use the bundled version and install the package later.
+ if has_version ${PDEPEND}; then
+ # Use PORTAGE_QUIET to suppress a QA warning that is spurious
+ # thanks to has_version above. This is Portage-specific but
+ # showing the warning elsewhere isn't the end of the world.
+ JAVACUP=$(PORTAGE_QUIET=1 java-pkg_getjar --build-only javacup javacup.jar)
+ else
+ JAVACUP=$(echo lib/java-cup-*.jar)
+ fi
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjar --build-only ant ant.jar):${JAVACUP}"
+}
+
+jflex_compile() {
+ java "${@}" jflex.Main -d ${JAVA_SRC_DIR}/${PN} \
+ --skel src/main/${PN}/skeleton.nested src/main/${PN}/LexScan.flex || die
+ java-pkg-simple_src_compile
+ java-pkg_addres ${PN}.jar src/main/resources
+}
+
+src_compile() {
+ java -jar "${JAVACUP}" -destdir ${JAVA_SRC_DIR}/${PN} -package ${PN} \
+ -parser LexParse -interface src/main/cup/LexParse.cup || die
+
+ # The IcedTea ARM HotSpot port (as of 2.6.1) hangs when running
+ # jflex. We have patched jflex to fix it but we have to run the
+ # bundled version first. -Xint works around the problem. See
+ # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2678.
+ use arm && local JFLEX_ARGS="-Xint"
+
+ # First compile using the bundled jflex.
+ jflex_compile -cp "lib/${P}.jar:${JAVACUP}" ${JFLEX_ARGS}
+
+ # Then recompile using the fresh jflex.
+ jflex_compile -cp "${PN}.jar:${JAVACUP}"
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_dolauncher ${PN} --main ${PN}.Main
+
+ java-pkg_register-dependency javacup javacup-runtime.jar
+ java-pkg_register-ant-task
+
+ use examples && java-pkg_doexamples examples
+ dodoc {changelog,README}.md
+
+ if use doc; then
+ dodoc doc/*.pdf
+ docinto html
+ dodoc doc/*.{css,html,png} doc/COPYRIGHT
+ fi
+
+ if use vim-syntax; then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins lib/${PN}.vim
+ fi
+}
+
+src_test() {
+ if use arm && java-pkg_current-vm-matches oracle-jdk-bin-1.8; then
+ # This results in a StackOverflowError as of 1.8.0.65 but works
+ # fine on icedtea:7. Don't know about icedtea:8 yet.
+ rm -v src/test/java/jflex/EmitterTest.java || die
+ fi
+
+ local CP="src/test/java:${PN}.jar:${JAVA_GENTOO_CLASSPATH_EXTRA}:$(java-pkg_getjars junit-4)"
+
+ local TESTS=$(find src/test/java -name "*Test*.java" -printf "%P\n")
+ TESTS="${TESTS//.java}"
+ TESTS="${TESTS//\//.}"
+
+ ejavac -classpath "${CP}" $(find src/test/java -name "*.java")
+ ejunit4 -classpath "${CP}" ${TESTS}
+}
diff --git a/dev-java/jflex/jflex-1.6.1.ebuild b/dev-java/jflex/jflex-1.6.1.ebuild
deleted file mode 100644
index 32c5d3413238..000000000000
--- a/dev-java/jflex/jflex-1.6.1.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit epatch java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JFlex is a lexical analyzer generator for Java"
-HOMEPAGE="https://www.jflex.de/"
-SRC_URI="https://${PN}.de/${P}.tar.gz"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
-IUSE="examples test vim-syntax"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND=">=virtual/jre-1.6
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- test? ( dev-java/junit:4 )
- ${CDEPEND}"
-
-PDEPEND=">=dev-java/javacup-0.11b_p20151001:0"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src/main/java"
-
-java_prepare() {
- # See below for details.
- epatch "${FILESDIR}/icedtea-arm.patch"
-
- # We need the bundled jflex.jar.
- rm -rv ${JAVA_SRC_DIR}/java_cup examples/pom.xml || die
-
- # Remove the bundled java-cup.jar if unneeded.
- if has_version ${PDEPEND}; then
- rm -v lib/java-cup-*.jar || die
- fi
-}
-
-src_configure() {
- # javacup is a cyclic dependency. Use the package if we have it,
- # otherwise use the bundled version and install the package later.
- if has_version ${PDEPEND}; then
- # Use PORTAGE_QUIET to suppress a QA warning that is spurious
- # thanks to has_version above. This is Portage-specific but
- # showing the warning elsewhere isn't the end of the world.
- JAVACUP=$(PORTAGE_QUIET=1 java-pkg_getjar --build-only javacup javacup.jar)
- else
- JAVACUP=$(echo lib/java-cup-*.jar)
- fi
-
- JAVA_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --build-only ant-core):${JAVACUP}"
-}
-
-jflex_compile() {
- java "${@}" jflex.Main -d ${JAVA_SRC_DIR}/${PN} --skel src/main/${PN}/skeleton.nested src/main/${PN}/LexScan.flex || die
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_compile() {
- java -jar "${JAVACUP}" -destdir ${JAVA_SRC_DIR}/${PN} -package ${PN} -parser LexParse -interface src/main/cup/LexParse.cup || die
-
- # The IcedTea ARM HotSpot port (as of 2.6.1) hangs when running
- # jflex. We have patched jflex to fix it but we have to run the
- # bundled version first. -Xint works around the problem. See
- # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2678.
- use arm && local JFLEX_ARGS="-Xint"
-
- # First compile (without doc/source) using the bundled jflex.
- JAVA_PKG_IUSE= jflex_compile -cp "lib/${P}.jar:${JAVACUP}" ${JFLEX_ARGS}
-
- # Then recompile using the fresh jflex.
- jflex_compile -cp "${PN}.jar:${JAVACUP}"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${PN} --main ${PN}.Main
-
- java-pkg_register-dependency javacup javacup-runtime.jar
- java-pkg_register-ant-task
-
- use examples && java-pkg_doexamples examples
- dodoc {changelog,README}.md
-
- if use doc; then
- dodoc doc/*.pdf
- docinto html
- dodoc doc/*.{css,html,png} doc/COPYRIGHT
- fi
-
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/syntax
- doins lib/${PN}.vim
- fi
-}
-
-src_test() {
- if use arm && java-pkg_current-vm-matches oracle-jdk-bin-1.8; then
- # This results in a StackOverflowError as of 1.8.0.65 but works
- # fine on icedtea:7. Don't know about icedtea:8 yet.
- rm -v src/test/java/jflex/EmitterTest.java || die
- fi
-
- local CP="src/test/java:${PN}.jar:${JAVA_GENTOO_CLASSPATH_EXTRA}:$(java-pkg_getjars junit-4)"
-
- local TESTS=$(find src/test/java -name "*Test*.java" -printf "%P\n")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find src/test/java -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/jflex/metadata.xml b/dev-java/jflex/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/jflex/metadata.xml
+++ b/dev-java/jflex/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jformatstring/Manifest b/dev-java/jformatstring/Manifest
deleted file mode 100644
index 0c99c9dd884c..000000000000
--- a/dev-java/jformatstring/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST findbugs-3.0.1-source.zip 9625065 BLAKE2B 26c940ac0eaec16de89ffbbe26d16b0b5c2883a6131a8b3ce93b9a35014a42c221456f977e581d2f4f1b8d9333237c24ac6d5ad8fc2ba6bb018c333b6a09f4eb SHA512 d967769f2356f28b34d92c7451cf3e2ac004e667bfc3b049b5b10b1c19d7be2cfa0db132a77698d042300330f77a2bb5dd8c4baa0d67c37b7e5ae6da9e83a64f
diff --git a/dev-java/jformatstring/jformatstring-2.0.3-r1.ebuild b/dev-java/jformatstring/jformatstring-2.0.3-r1.ebuild
deleted file mode 100644
index f0c536f80c94..000000000000
--- a/dev-java/jformatstring/jformatstring-2.0.3-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-FINDBUGS_PV="3.0.1"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Compile time checking for Java format strings"
-SRC_URI="mirror://sourceforge/findbugs/findbugs-${FINDBUGS_PV}-source.zip"
-HOMEPAGE="https://code.google.com/p/j-format-string"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*
- app-arch/unzip"
-
-src_unpack() {
- unzip -qoj "${DISTDIR}/findbugs-${FINDBUGS_PV}-source.zip" "findbugs-${FINDBUGS_PV}/lib/jFormatString.jar" || die
- unpack ./jFormatString.jar
-}
-
-src_prepare() {
- default
- find -name "*.class" -delete || die
-}
diff --git a/dev-java/jformatstring/metadata.xml b/dev-java/jformatstring/metadata.xml
deleted file mode 100644
index 84f3814eccb9..000000000000
--- a/dev-java/jformatstring/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>This code is designed to allow for compile time checking of Java format strings. It can check that the format string is valid, that the proper number of arguments are supplied and that they are of the correct type.</longdescription>
- <upstream>
- <remote-id type="sourceforge">findbugs</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jfreechart/Manifest b/dev-java/jfreechart/Manifest
deleted file mode 100644
index b7458ca749e9..000000000000
--- a/dev-java/jfreechart/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jfreechart-1.0.19.zip 8050676 BLAKE2B be5ac67befd6a16c9771f50bca59c3543251984b60e00e8aef350cadb1121caf391a8dddc383fa08ed89b0346e2a057a8da6a70b224d7f843f19535a4df873b2 SHA512 6345e6a6b4a82862f3908794efb70a6f5413f313ba5bcff1dfb713d21948034d80c743a0cea61be81921c62736b07209ed4b942fedca0c76226b1202a4596b31
diff --git a/dev-java/jfreechart/files/jfreechart-1.0.19-build.xml.patch b/dev-java/jfreechart/files/jfreechart-1.0.19-build.xml.patch
deleted file mode 100644
index ffe657b89c9d..000000000000
--- a/dev-java/jfreechart/files/jfreechart-1.0.19-build.xml.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/ant/build.xml 2011-11-20 22:40:13.000000000 +0100
-+++ b/ant/build.xml 2013-03-09 14:10:53.987970148 +0100
-@@ -40,10 +40,9 @@
- <available classname="java.lang.Annotation" property="src.version" value="1.5"/>
- <available classname="java.lang.Annotation" property="target.version" value="1.5"/>
- <path id="build.classpath">
-- <fileset dir="${basedir}/lib/">
-- <include name="${jcommon.name}-${jcommon.version}.jar"/>
-- <include name="servlet.jar"/>
-- </fileset>
-+ <pathelement location="${jcommon.jar}"/>
-+ <pathelement location="${servlet.jar}"/>
-+ <pathelement location="${gnujaxp.jar}"/>
- </path>
-
- </target>
-@@ -321,7 +320,7 @@
-
- <!-- COMPILE THE JUNIT TESTS. -->
- <target name="compile-tests"
-- depends="compile,compile-experimental"
-+ depends="initialise"
- description="Compile the test code">
-
- <mkdir dir="${basedir}/build-tests"/>
diff --git a/dev-java/jfreechart/files/jfreechart-1.0.19-fix-TimeSeriesCollectionTest.patch b/dev-java/jfreechart/files/jfreechart-1.0.19-fix-TimeSeriesCollectionTest.patch
deleted file mode 100644
index ebb6c4aeffa0..000000000000
--- a/dev-java/jfreechart/files/jfreechart-1.0.19-fix-TimeSeriesCollectionTest.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/tests/org/jfree/data/time/TimeSeriesCollectionTest.java 2011-11-20 22:40:13.000000000 +0100
-+++ b/tests/org/jfree/data/time/TimeSeriesCollectionTest.java 2013-05-21 00:18:03.840041846 +0200
-@@ -339,6 +339,10 @@
- * java.util.List, boolean)} method.
- */
- public void testFindDomainBounds() {
-+ // store the current time zone
-+ TimeZone saved = TimeZone.getDefault();
-+ TimeZone.setDefault(TimeZone.getTimeZone("Europe/Paris"));
-+
- TimeSeriesCollection dataset = new TimeSeriesCollection();
- List visibleSeriesKeys = new java.util.ArrayList();
- Range r = DatasetUtilities.findDomainBounds(dataset, visibleSeriesKeys,
-@@ -351,10 +355,6 @@
- r = DatasetUtilities.findDomainBounds(dataset, visibleSeriesKeys, true);
- assertNull(r);
-
-- // store the current time zone
-- TimeZone saved = TimeZone.getDefault();
-- TimeZone.setDefault(TimeZone.getTimeZone("Europe/Paris"));
--
- s1.add(new Year(2008), 8.0);
- r = DatasetUtilities.findDomainBounds(dataset, visibleSeriesKeys, true);
- assertEquals(1199142000000.0, r.getLowerBound(), EPSILON);
diff --git a/dev-java/jfreechart/jfreechart-1.0.19-r1.ebuild b/dev-java/jfreechart/jfreechart-1.0.19-r1.ebuild
deleted file mode 100644
index 57aacc5d752a..000000000000
--- a/dev-java/jfreechart/jfreechart-1.0.19-r1.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="JFreeChart is a free Java class library for generating charts"
-HOMEPAGE="http://www.jfree.org/jfreechart"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-
-LICENSE="LGPL-2.1"
-SLOT="1.0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-
-CDEPEND="
- dev-java/jfreesvg:2.1
- >=dev-java/jcommon-1.0.23:1.0
- java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- dev-java/junit:4
- )
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.19-build.xml.patch"
- "${FILESDIR}/${PN}-1.0.19-fix-TimeSeriesCollectionTest.patch"
-)
-
-JAVA_ANT_ENCODING="ISO-8859-1"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-EANT_BUILD_XML="ant/build.xml"
-EANT_BUILD_TARGET="compile-experimental"
-EANT_GENTOO_CLASSPATH="
- jfreesvg-2.1
- jcommon-1.0
- servlet-api-3.0
-"
-
-EANT_DOC_TARGET="javadoc"
-
-src_prepare() {
- epatch "${PATCHES[@]}"
-
- java-pkg_clean
-}
-
-src_install() {
- java-pkg_newjar "lib/${P}.jar" "${PN}.jar"
- java-pkg_newjar "lib/${P}-experimental.jar" "${PN}-experimental.jar"
-
- dodoc README.txt ChangeLog NEWS
-
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc source/org
-}
diff --git a/dev-java/jfreechart/metadata.xml b/dev-java/jfreechart/metadata.xml
deleted file mode 100644
index ba2158636f7e..000000000000
--- a/dev-java/jfreechart/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jfreechart</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jfreesvg/Manifest b/dev-java/jfreesvg/Manifest
deleted file mode 100644
index e35008887dbc..000000000000
--- a/dev-java/jfreesvg/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST jfreesvg-2.1.zip 2042545 BLAKE2B 702ea55c6e51bca156a41c5e624452fdad8c1a5472c204cbf58f796134ed6027259abd0a48719bbb5f83f6891ab3aec5db58c8726b0275b894065148a07ec179 SHA512 6c1556c640e749778aeb969540db7724895fe2113a7ceea732793730301dd04a1beafef35249b27b75696271bcd67a59236a15c106f7717482561011a1a08bc4
-DIST jfreesvg-3.0.zip 1946062 BLAKE2B 58aa3c95db3a0472de1e2c184f1e8bc9aa72b86f508dd7d41f169f03c8f07380269a36d0a22a71378ab7c2d45427fb479994b907c4e25317794814da69f79d7c SHA512 7d0bdcbf56f0a7110058137d53e291c41e53040cbc19442989a0c6d28f5d6d3ed26ecedbfc947ce845b8a971729e2d784e8ce5a041f6f095ff626a3494a55715
diff --git a/dev-java/jfreesvg/jfreesvg-2.1-r1.ebuild b/dev-java/jfreesvg/jfreesvg-2.1-r1.ebuild
deleted file mode 100644
index 948b007cad2d..000000000000
--- a/dev-java/jfreesvg/jfreesvg-2.1-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="JFreeSVG is a fast, light-weight, vector graphics library for the Java platform"
-HOMEPAGE="http://www.jfree.org/jfreesvg/"
-SRC_URI="mirror://sourceforge/jfreegraphics2d/${P}.zip"
-
-LICENSE="GPL-3"
-SLOT="2.1"
-KEYWORDS="amd64 x86"
-IUSE="debug"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_compile() {
- if ! use debug; then
- antflags="-Dbuild.debug=false -Dbuild.optimize=true"
- fi
- eant -f ant/build.xml compile $(use_doc) $antflags
-}
-
-src_install() {
- java-pkg_newjar "./lib/${P}.jar" ${PN}.jar
- dodoc README.md
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/jfreesvg/jfreesvg-3.0.ebuild b/dev-java/jfreesvg/jfreesvg-3.0.ebuild
deleted file mode 100644
index 2b3e2fef8407..000000000000
--- a/dev-java/jfreesvg/jfreesvg-3.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="JFreeSVG is a fast, light-weight, vector graphics library for the Java platform"
-HOMEPAGE="http://www.jfree.org/jfreesvg/"
-SRC_URI="mirror://sourceforge/jfreegraphics2d/${P}.zip"
-
-LICENSE="GPL-3"
-SLOT="3.0"
-KEYWORDS="amd64 x86"
-IUSE="debug"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-RDEPEND=">=virtual/jre-1.6"
-
-java_prepare() {
- find "${WORKDIR}" -name '*.jar' -print -delete || die
-}
-
-src_compile() {
- if ! use debug; then
- antflags="-Dbuild.debug=false -Dbuild.optimize=true"
- fi
- eant -f ant/build.xml compile $(use_doc) $antflags
-}
-
-src_install() {
- java-pkg_newjar "./lib/${P}.jar" ${PN}.jar
- dodoc README.md
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/jfreesvg/metadata.xml b/dev-java/jfreesvg/metadata.xml
deleted file mode 100644
index ab12970f46ef..000000000000
--- a/dev-java/jfreesvg/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <use>
- <flag name="debug">
- Enable debugging during compilation.
- </flag>
- </use>
- <upstream>
- <remote-id type="sourceforge">jfreegraphics2d</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jgoodies-animation/Manifest b/dev-java/jgoodies-animation/Manifest
deleted file mode 100644
index a3191f31ff45..000000000000
--- a/dev-java/jgoodies-animation/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jgoodies-animation-1.2.0.zip 728028 BLAKE2B 591b63b6a2799bfe6020c4e81b834807fba3e72a039dbd9954846b6c5a5c2445493e2d8814b1897b9465ec39c2b62c2f027c1e05ef7db5e9439acc236dbf9078 SHA512 2220630d7fd70a98b6d9605de7a1d6fc3470cc19b39815b9777e6bc8cf7db74ce77338861dde45aafbe336ce8b48ee00bcd8149af701a7001869cd3da3cf6a72
diff --git a/dev-java/jgoodies-animation/jgoodies-animation-1.2.0-r2.ebuild b/dev-java/jgoodies-animation/jgoodies-animation-1.2.0-r2.ebuild
deleted file mode 100644
index 0ca9ed5a45f6..000000000000
--- a/dev-java/jgoodies-animation/jgoodies-animation-1.2.0-r2.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_V=${PV//./_}
-
-DESCRIPTION="JGoodies Animation Library"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="mirror://gentoo/${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6
- test? ( dev-java/ant-junit:0 )"
-
-RDEPEND="
- >=virtual/jre-1.6
- examples? (
- >=dev-java/jgoodies-binding-1.1:1.0
- >=dev-java/jgoodies-forms-1.0:0
- )"
-
-S="${WORKDIR}/animation-${PV}"
-
-EANT_FILTER_COMPILER="jikes"
-EANT_DOC_TARGET=""
-
-DOCS=( RELEASE-NOTES.txt README.html )
-
-src_prepare() {
- default
-
- java-pkg_clean
-}
-
-src_test() {
- eant test -Djunit.jar.present=true \
- -Djunit.jar=$(java-pkg_getjar junit junit.jar)
-}
-
-src_install() {
- java-pkg_dojar build/animation.jar
- einstalldocs
- use doc && java-pkg_dohtml -r docs/*
- use source && java-pkg_dosrc src/core/*
- use examples && java-pkg_doexamples src/tutorial
-}
diff --git a/dev-java/jgoodies-animation/metadata.xml b/dev-java/jgoodies-animation/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jgoodies-animation/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jgoodies-binding/Manifest b/dev-java/jgoodies-binding/Manifest
deleted file mode 100644
index b4b653a2e7de..000000000000
--- a/dev-java/jgoodies-binding/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jgoodies-binding-1.1.2.zip 1265099 BLAKE2B 15cbb78e8289d7457d8c34112b18293b975046221226630542ffdee1950f8e0cf6120eb69daff57e601f75141b037e5ebc85248f396487e37f4435fbb9e77fe6 SHA512 2373a21f7866173a634adf34c089895ff69022ce24af3a0a9225dc312d659c910df387d26ccd94f3f9f2b79edf5a40a9c101e9040a36f08888cf96228cfcf5b7
diff --git a/dev-java/jgoodies-binding/jgoodies-binding-1.1.2-r2.ebuild b/dev-java/jgoodies-binding/jgoodies-binding-1.1.2-r2.ebuild
deleted file mode 100644
index e7e455b79489..000000000000
--- a/dev-java/jgoodies-binding/jgoodies-binding-1.1.2-r2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_V=${PV//./_}
-
-DESCRIPTION="Bind object properties with UI components"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="mirror://gentoo/${P}.zip"
-
-LICENSE="BSD"
-SLOT="1.0"
-KEYWORDS="amd64 x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-DOCS=( RELEASE-NOTES.txt README.html )
-
-S="${WORKDIR}/binding-${PV}"
-
-JAVA_SRC_DIR="src/core"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples \
- src/core \
- src/tutorial
- einstalldocs
-}
diff --git a/dev-java/jgoodies-binding/metadata.xml b/dev-java/jgoodies-binding/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jgoodies-binding/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jgoodies-common/jgoodies-common-1.8.0-r1.ebuild b/dev-java/jgoodies-common/jgoodies-common-1.8.0-r1.ebuild
new file mode 100644
index 000000000000..92301470bd7f
--- /dev/null
+++ b/dev-java/jgoodies-common/jgoodies-common-1.8.0-r1.ebuild
@@ -0,0 +1,40 @@
+# 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-pkg-simple
+
+MY_PN="common"
+MY_PV=${PV//./_}
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="JGoodies Common Library"
+HOMEPAGE="http://www.jgoodies.com/"
+SRC_URI="http://www.jgoodies.com/download/libraries/${MY_PN}/${MY_P}.zip"
+
+LICENSE="BSD"
+SLOT="1.8"
+KEYWORDS="amd64 ~ppc64 x86"
+IUSE=""
+
+RESTRICT="test"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DEPEND="
+ app-arch/unzip
+ >=virtual/jdk-1.8:*"
+
+S="${WORKDIR}"/${P}
+
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ default
+ mkdir src || die
+ unzip ${P}-sources.jar -d src || die
+ rm "${S}"/pom.xml "${S}"/*.jar || die
+}
diff --git a/dev-java/jgoodies-common/jgoodies-common-1.8.0.ebuild b/dev-java/jgoodies-common/jgoodies-common-1.8.0.ebuild
deleted file mode 100644
index 0c830c5581e9..000000000000
--- a/dev-java/jgoodies-common/jgoodies-common-1.8.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="common"
-MY_PV=${PV//./_}
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="JGoodies Common Library"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="http://www.jgoodies.com/download/libraries/${MY_PN}/${MY_P}.zip"
-
-LICENSE="BSD"
-SLOT="1.8"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-RESTRICT="test"
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}"/${P}
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- mkdir src || die
- unzip ${P}-sources.jar -d src || die
- rm "${S}"/pom.xml "${S}"/*.jar || die
-}
diff --git a/dev-java/jgoodies-common/metadata.xml b/dev-java/jgoodies-common/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/jgoodies-common/metadata.xml
+++ b/dev-java/jgoodies-common/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jgoodies-forms/Manifest b/dev-java/jgoodies-forms/Manifest
deleted file mode 100644
index 29766bc05358..000000000000
--- a/dev-java/jgoodies-forms/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST forms-1_3_0.zip 1320397 BLAKE2B a520ffe8a5487d125a53bed8d8524b68f68aaf1444389e4038af5f9a035ce800fdb1a470d172ec442240d5530e4c34cd34a0523a5ab92888daa57f543defd296 SHA512 d155cc85ec77f23f55e59d4651ef1f9df2ab749bc6cffd4dd7cfbc0035587a2e6bf03427e7bace6feb71e6c43efc87115d393fa54ea6da331ded21996b32a6e8
-DIST jgoodies-forms-1_8_0.zip 1668539 BLAKE2B eed78fccd151322737b0f9e5fe39bf7e50f2b4a761b406059af5b62c564f28c44cd4a4efbd5485389d31948b26661aae641066020ed8d460f1c297ef9223be7c SHA512 dced4ddaea7e9157f99b7c27ad06bfed53c307181bfc21cee8f454ba8cececa3f5fd5186947fe5bb299c4de2032bd7489248e3e77623785ac47388306e3d6933
diff --git a/dev-java/jgoodies-forms/jgoodies-forms-1.3.0-r1.ebuild b/dev-java/jgoodies-forms/jgoodies-forms-1.3.0-r1.ebuild
deleted file mode 100644
index 7a564f2d4aab..000000000000
--- a/dev-java/jgoodies-forms/jgoodies-forms-1.3.0-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="forms"
-MY_PV=${PV//./_}
-MY_P="${MY_PN}-${MY_PV}"
-
-DESCRIPTION="JGoodies library"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="http://www.jgoodies.com/download/libraries/${MY_PN}/${MY_P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg_dojar "build/${MY_PN}.jar"
-
- dodoc RELEASE-NOTES.txt README.html
-
- use doc && java-pkg_dohtml -r docs/*
- use source && java-pkg_dosrc src/{core,extras}/com
- use examples && java-pkg_doexamples src/tutorial
-}
diff --git a/dev-java/jgoodies-forms/jgoodies-forms-1.8.0.ebuild b/dev-java/jgoodies-forms/jgoodies-forms-1.8.0.ebuild
deleted file mode 100644
index 15575fc1f3e3..000000000000
--- a/dev-java/jgoodies-forms/jgoodies-forms-1.8.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="forms"
-MY_PV=${PV//./_}
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="JGoodies Forms Library"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="http://www.jgoodies.com/download/libraries/${MY_PN}/${MY_P}.zip"
-
-LICENSE="BSD"
-SLOT="1.8"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
-
-COMMON_DEPEND="dev-java/jgoodies-common:${SLOT}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${COMMON_DEPEND}"
-RDEPEND=">=virtual/jre-1.6
- ${COMMON_DEPEND}"
-
-S="${WORKDIR}"/${P}
-
-JAVA_SRC_DIR="src"
-JAVA_GENTOO_CLASSPATH="jgoodies-common-${SLOT}"
-
-java_prepare() {
- mkdir src || die
- unzip ${P}-sources.jar -d src || die
- rm "${S}"/pom.xml "${S}"/*.jar || die
-}
diff --git a/dev-java/jgoodies-forms/metadata.xml b/dev-java/jgoodies-forms/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jgoodies-forms/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jgoodies-looks/Manifest b/dev-java/jgoodies-looks/Manifest
index 85fb7177b8f0..1092b43c81c6 100644
--- a/dev-java/jgoodies-looks/Manifest
+++ b/dev-java/jgoodies-looks/Manifest
@@ -1,3 +1 @@
DIST jgoodies-looks-2_6_0.zip 2444893 BLAKE2B 97d00131cf07f609141c97e4fd3e6b3c93f67dc879eb0ad99469c602e7e30b0d78dc4bd59202db1a3a503dec6c92ea061a176ef11e6c5f4fc26a86c697cf961f SHA512 1c33413379f391109d1db35bdf301acf0cc6d66bf8aa1026280015946bddb230b4cc1d233b700d46a519fb02c169df4670c874058f5e636e1e924a9d3a42442a
-DIST looks-1_2_2.zip 1811849 BLAKE2B 47dd516b5523b655757c08ba108b58e7b1e2e113ae4d0e90649db88c4353b66810f9a7b3cc810fe7bdbd5e9c1ad2a32d4b504665d3ffa2917f7a46647f444d09 SHA512 d9c5f0590a44dbc7d778a9da135361f5753eca4d47bef3636f21aa0d014df86dbad90031b5289928b99c352147ea702948028b18b36eb3bc44aef800326fb302
-DIST looks-2_3_1.zip 2105839 BLAKE2B 590412d7ed00d68a3fd8f8e5402802ca69039f2619e542619de787c6e9b4b2019096e87b7809e3b1f5a7d72963da3657fae7e465a245ef1ab0a5630219a968ed SHA512 61278cc0b8556ce19cfb5bdaaab2b42d7035fcdf71d614a8d3673629d5b04c5698e2be521df3e0518e781f78c03a8d3f466f1fdfba525f679e9de7409faf1088
diff --git a/dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-build.xml b/dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-build.xml
deleted file mode 100644
index b24ec32156b4..000000000000
--- a/dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-build.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="Plastic" default="jar" basedir=".">
-
- <!-- This is a customized build.xml for portage! -->
- <!--
- <property file="${basedir}/build.properties"/>
- <property file="${basedir}/default.properties"/>
- -->
-
- <property name="build" value="${basedir}/build"/>
-
- <property name="spec.title" value="JGoodies Looks"/>
- <property name="spec.version" value="1.2"/>
- <property name="spec.vendor" value="Apache Software Foundation"/>
- <property name="imp.title" value="com.jgoodies.plaf"/>
- <property name="imp.version" value="1.2.2"/>
- <property name="imp.vendor" value="Apache Software Foundation"/>
-
- <property name="plaf.src" value="${basedir}/com/jgoodies/plaf"/>
- <property name="clearlook.src" value="${basedir}/com/jgoodies/clearlook"/>
-
- <property name="clearlook.javadoc" value="${build}/doc/clearlook"/>
- <property name="clearlook.packages" value="com.jgoodies.clearlook.*"/>
-
- <property name="plastic.javadoc" value="${build}/doc/plastic"/>
- <property name="plastic.packages" value="com.jgoodies.clearlook.*"/>
-
- <target name="init">
- <tstamp />
- <mkdir dir="${build}"/>
- <mkdir dir="${build}/doc"/>
- </target>
-
- <target name="manifest" depends="init">
- <manifest file="MANIFEST.MF" mode="update">
- <attribute name="Built-By" value="Gentoo Portage"/>
-
- <section name="com/jgoodies/plaf">
- <attribute name="Specification-Title" value="${spec.title}"/>
- <attribute name="Specification-Version" value="${spec.version}"/>
- <attribute name="Specification-Vendor" value="${spec.vendor}"/>
- <attribute name="Implementation-Title" value="${imp.title}"/>
- <attribute name="Implementation-Version" value="${imp.version}"/>
- <attribute name="Implementation-Vendor" value="${imp.vendor}"/>
- </section>
- </manifest>
- </target>
-
- <target name="compile" depends="init">
- <javac srcdir="${plaf.src};${clearlook.src}"
- destdir="${build}"
- source="1.4"
- target="1.4"/>
-
- <!--
- Copy application resources
- NOTE: THIS MAY NEED TO BE CHANGED IN FUTURE VERSIONS!!
- -->
- <copy toDir="${build}/com/jgoodies/plaf">
- <fileset dir="${plaf.src}" excludes="**/*.java"/>
- </copy>
- </target>
-
- <target name="javadoc" depends="compile">
- <javadoc sourcepath="${basedir}"
- destdir="${clearlook.javadoc}"
- packagenames="${clearlook.packages}"/>
- <javadoc sourcepath="${basedir}"
- destdir="${plastic.javadoc}"
- packagenames="${plastic.packages}"/>
- </target>
-
- <target name="jar" depends="compile,manifest">
- <jar jarfile="looks.jar" manifest="MANIFEST.MF">
- <fileset dir="${build}"/>
- <zipfileset dir="${basedir}"
- includes="plastic.txt"
- fullpath="META-INF/services/javax.swing.LookAndFeel"/>
- </jar>
- </target>
-
-</project>
diff --git a/dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-plastic.txt b/dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-plastic.txt
deleted file mode 100644
index ab3737ca6a30..000000000000
--- a/dev-java/jgoodies-looks/files/jgoodies-looks-1.2.2-plastic.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-# JGoodies Plastic L&F- replacement for Metal
-com.jgoodies.plaf.plastic.PlasticLookAndFeel
-# JGoodies Plastic 3D L&F
-com.jgoodies.plaf.plastic.Plastic3DLookAndFeel
-# JGoodies Plastic XP L&F
-com.jgoodies.plaf.plastic.PlasticXPLookAndFeel
-# JGoodies Windows L&F
-com.jgoodies.plaf.windows.ExtWindowsLookAndFeel
diff --git a/dev-java/jgoodies-looks/files/jgoodies-looks-2.3.1-build.xml.patch b/dev-java/jgoodies-looks/files/jgoodies-looks-2.3.1-build.xml.patch
deleted file mode 100644
index e6c0a4be2330..000000000000
--- a/dev-java/jgoodies-looks/files/jgoodies-looks-2.3.1-build.xml.patch
+++ /dev/null
@@ -1,61 +0,0 @@
---- build.xml.orig 2006-10-12 23:54:26.000000000 +0200
-+++ build.xml 2006-10-12 23:57:36.000000000 +0200
-@@ -100,7 +100,6 @@
- srcdir ="${src.core.dir}"
- destdir ="${build.core.dir}"
- encoding ="${build.encoding}"
-- executable ="${build.compile.executable}"
- fork ="${build.compile.fork}"
- debug ="${build.compile.debug}"
- depend ="${build.compile.depend}"
-@@ -109,8 +108,7 @@
- optimize ="${build.compile.optimize}"
- source ="${build.compile.source}"
- target ="${build.compile.target}"
-- verbose ="${build.compile.verbose}"
-- bootclasspath="${build.boot.classpath}" />
-+ verbose ="${build.compile.verbose}"/>
-
- <copy toDir="${build.core.dir}" >
- <fileset dir="${src.core.dir}"
-@@ -127,7 +125,6 @@
- srcdir ="${src.demo.dir}"
- destdir ="${build.demo.dir}"
- encoding ="${build.encoding}"
-- executable ="${build.compile.executable}"
- fork ="${build.compile.fork}"
- debug ="${build.compile.debug}"
- depend ="${build.compile.depend}"
-@@ -137,7 +134,6 @@
- source ="${build.compile.source}"
- target ="${build.compile.target}"
- verbose ="${build.compile.verbose}"
-- bootclasspath="${build.boot.classpath}"
- classpathref ="classpath.demo" />
- </target>
-
-@@ -149,7 +145,6 @@
- srcdir ="${src.test.dir}"
- destdir ="${build.test.dir}"
- encoding ="${build.encoding}"
-- executable ="${build.compile.executable}"
- fork ="${build.compile.fork}"
- debug ="${build.compile.debug}"
- depend ="${build.compile.depend}"
-@@ -159,7 +154,6 @@
- source ="${build.compile.source}"
- target ="${build.compile.target}"
- verbose ="${build.compile.verbose}"
-- bootclasspath="${build.boot.classpath}"
- classpathref ="classpath.tests" />
- </target>
-
-@@ -235,7 +229,7 @@
- </target>
-
- <!-- ***************************************************************** -->
-- <target name="jar-all" depends="compile, manifest"
-+ <target name="jar-all" depends="compile-core, manifest"
- description="Creates the library jar with all JGoodies l&amp;fs." >
-
- <jar
diff --git a/dev-java/jgoodies-looks/jgoodies-looks-1.2.2-r2.ebuild b/dev-java/jgoodies-looks/jgoodies-looks-1.2.2-r2.ebuild
deleted file mode 100644
index 4dee649843f9..000000000000
--- a/dev-java/jgoodies-looks/jgoodies-looks-1.2.2-r2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="looks"
-MY_PV="${PV//./_}"
-
-DESCRIPTION="JGoodies Looks Library"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="http://www.jgoodies.com/download/libraries/${MY_PN}-${MY_PV}.zip"
-
-LICENSE="BSD"
-SLOT="1.2"
-KEYWORDS="amd64 x86"
-IUSE="doc"
-
-DEPEND="
- >=virtual/jdk-1.5
- app-arch/unzip"
-
-RDEPEND=">=virtual/jre-1.5"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-EANT_DOC_TARGET="javadoc"
-
-java_prepare() {
- java-pkg_clean
-
- cp "${FILESDIR}/${P}-build.xml" "${S}"/build.xml || die
- cp "${FILESDIR}/${P}-plastic.txt" "${S}"/plastic.txt || die
-
- unzip ${MY_PN}-${PV}-src.zip || die
-}
-
-src_install() {
- java-pkg_dojar "${MY_PN}.jar"
-
- dodoc RELEASE-NOTES.txt
- use source && java-pkg_dosrc com
- use doc && java-pkg_dohtml -r build/doc
- use examples && java-pkg_doexamples src/examples
-}
diff --git a/dev-java/jgoodies-looks/jgoodies-looks-2.3.1-r1.ebuild b/dev-java/jgoodies-looks/jgoodies-looks-2.3.1-r1.ebuild
deleted file mode 100644
index 3a949d007d8b..000000000000
--- a/dev-java/jgoodies-looks/jgoodies-looks-2.3.1-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="looks"
-MY_PV="${PV//./_}"
-MY_P="${MY_PN}-${MY_PV}"
-
-DESCRIPTION="JGoodies Looks Library"
-HOMEPAGE="http://www.jgoodies.com/"
-SRC_URI="http://www.jgoodies.com/download/libraries/${MY_PN}/${MY_P}.zip"
-
-LICENSE="BSD"
-SLOT="2.0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND="
- >=virtual/jdk-1.4
- app-arch/unzip"
-
-RDEPEND=">=virtual/jre-1.4"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-# bug #150970
-EANT_FILTER_COMPILER="jikes"
-# jar target fails unless we make descriptors.dir an existing directory
-# update: it's where it looks for all.txt file
-EANT_EXTRA_ARGS="-Ddescriptors.dir=${S}"
-
-EANT_BUILD_TARGET="jar-all"
-
-java_prepare() {
- # remove the bootclasspath brokedness, make building demo optional
- epatch "${FILESDIR}/${P}-build.xml.patch"
-
- # unzip the look&feel settings from bundled jar before we delete it
- unzip -j looks-${PV}.jar META-INF/services/javax.swing.LookAndFeel \
- || die "unzip of javax.swing.LookAndFeel failed"
- # and rename it to what build.xml expects
- mv javax.swing.LookAndFeel all.txt || die
-
- java-pkg_clean
-}
-
-src_install() {
- java-pkg_dojar build/looks.jar
-
- dodoc RELEASE-NOTES.txt
- dohtml README.html
- use doc && java-pkg_dojavadoc build/docs/api
- use source && java-pkg_dosrc src/core/com
- use examples && java-pkg_doexamples src/demo
-}
diff --git a/dev-java/jgoodies-looks/metadata.xml b/dev-java/jgoodies-looks/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/jgoodies-looks/metadata.xml
+++ b/dev-java/jgoodies-looks/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jgraph/Manifest b/dev-java/jgraph/Manifest
deleted file mode 100644
index 82c33950366e..000000000000
--- a/dev-java/jgraph/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jgraph-5.12.0.4.jar 3460750 BLAKE2B 0d2c50673eb652e4335a2d4fe9edcd93745595302c9ce674e8bb05ceab5edcb6b4a190e4d4da14bdb552ca7d35421473d0931addb02c2d1326d81eb442c372d1 SHA512 0832afeb28c4d5abb9288de4e1b74eefc432bb98f622e71f0d192bf9f01741feb406ba0473b923e0cb93401120c1456a00eec4653355c37bff7e9e1863e81b5d
diff --git a/dev-java/jgraph/jgraph-5.12.0.4-r1.ebuild b/dev-java/jgraph/jgraph-5.12.0.4-r1.ebuild
deleted file mode 100644
index 1681ab0b8efb..000000000000
--- a/dev-java/jgraph/jgraph-5.12.0.4-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Open-source graph component for Java"
-SRC_URI="mirror://gentoo/${P}.jar"
-HOMEPAGE="https://www.jgraph.com"
-IUSE="doc examples source"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-DEPEND="
- >=virtual/jdk-1.8"
-
-RDEPEND="
- >=virtual/jre-1.8"
-
-DOCS=( README WHATSNEW LICENSE ChangeLog )
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="src"
-
-src_prepare() {
- default
-
- java-pkg_clean
-}
diff --git a/dev-java/jgraph/metadata.xml b/dev-java/jgraph/metadata.xml
deleted file mode 100644
index 6770432d3010..000000000000
--- a/dev-java/jgraph/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jgraph</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jgrapht/Manifest b/dev-java/jgrapht/Manifest
deleted file mode 100644
index b342056c1d04..000000000000
--- a/dev-java/jgrapht/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jgrapht-0.8.3.tar.gz 1268147 BLAKE2B 78b9c6a4787adead9c27a4cf74f9ce821bab1ff35a62828383d058d50e4b568118f54bb0270449d75268aaae4d4d47231349342d064d185b4906ceb6b19022d1 SHA512 964790dc74fea1d84f4a4cda4a253ede810725ee7173a2b376acb3f0e10baa2eefcbc38c76441600e0c282e0486243a464116cb803308eac134561181a2c28e6
diff --git a/dev-java/jgrapht/jgrapht-0.8.3.ebuild b/dev-java/jgrapht/jgrapht-0.8.3.ebuild
deleted file mode 100644
index 1ea27d57362a..000000000000
--- a/dev-java/jgrapht/jgrapht-0.8.3.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2 eutils
-
-DESCRIPTION="Graph library that is a simpler and faster alternative to JGraph"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-HOMEPAGE="http://jgrapht.sourceforge.net"
-
-KEYWORDS="amd64 x86"
-SLOT="0"
-LICENSE="LGPL-2.1"
-
-CDEPEND="dev-java/touchgraph-graphlayout:0
- dev-java/jgraph:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- test? ( dev-java/ant-junit:0
- dev-java/xmlunit:1 )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="touchgraph-graphlayout jgraph"
-EANT_DOC_TARGET="javadoc"
-
-java_prepare() {
- rm -rf "${S}/lib" || die
- rm -v "${S}"/*.jar || die
-}
-
-src_test() {
- EANT_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH} xmlunit:1" ANT_TASKS="ant-junit" eant test
-}
-
-src_install() {
- java-pkg_newjar ${PN}*.jar || die
-
- dohtml README.html
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/org
-}
diff --git a/dev-java/jgrapht/metadata.xml b/dev-java/jgrapht/metadata.xml
deleted file mode 100644
index 7c98afe81027..000000000000
--- a/dev-java/jgrapht/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jgrapht</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jibx-tools/Manifest b/dev-java/jibx-tools/Manifest
deleted file mode 100644
index dcfe103fc7b6..000000000000
--- a/dev-java/jibx-tools/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jibx_1_1_5.zip 6788994 BLAKE2B 0b579e6eb9f6037c92dce3acbec4e9fd5a6aec179cb0f4ecf935ff0bbfb525c4c317d79d21683c3ea6136256b69f5aa9250851802c8eaccf14f3dff9f5ad8aa6 SHA512 13c3a43a53746e9146d1240d73d1948b3c03ead55aa0e79158c2700a385b0dfba0e31122efd11446c1a46c2b3f85235035dc198c6b3acf2fcefa88b2a0683cc7
diff --git a/dev-java/jibx-tools/files/1.1.5-build.patch b/dev-java/jibx-tools/files/1.1.5-build.patch
deleted file mode 100644
index 7e2354c2cbde..000000000000
--- a/dev-java/jibx-tools/files/1.1.5-build.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- build/src/org/jibx/binding/SchemaGenerator.java 2007-05-23 21:31:14.000000000 +0300
-+++ build/src/org/jibx/binding/SchemaGenerator.java 2008-02-21 23:14:06.000000000 +0200
-@@ -178,7 +178,7 @@
- m_classLocator = new IClassLocator() {
- public IClass getClassInfo(String name) {
- try {
-- return new ClassWrapper(ClassCache.getClassFile(name));
-+ return new ClassWrapper(m_classLocator, ClassCache.getClassFile(name));
- } catch (JiBXException e) {
- throw new IllegalStateException("Class not found " + name);
- }
-@@ -382,7 +382,7 @@
-
- // check for reference to a mapped class
- StructureElement structure = (StructureElement)comp;
-- TemplateElementBase templ = structure.getMapAsMapping();
-+ TemplateElementBase templ = structure.getEffectiveMapping();
- if (! (templ instanceof MappingElement)) {
-
- // unknown content, leave it to user to fill in details
diff --git a/dev-java/jibx-tools/jibx-tools-1.1.5-r2.ebuild b/dev-java/jibx-tools/jibx-tools-1.1.5-r2.ebuild
deleted file mode 100644
index dd75ab9faf44..000000000000
--- a/dev-java/jibx-tools/jibx-tools-1.1.5-r2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2 versionator
-
-MY_PV=$(replace_all_version_separators '_')
-
-DESCRIPTION="JiBX: Binding XML to Java Code - Generators"
-HOMEPAGE="http://jibx.sourceforge.net/"
-SRC_URI="mirror://sourceforge/jibx/jibx_${MY_PV}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="dev-java/bcel:0
- java-virtuals/stax-api:0
- dev-java/jibx:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-S="${WORKDIR}/jibx"
-
-java_prepare() {
- # http://jira.codehaus.org/browse/JIBX-207
- epatch "${FILESDIR}/1.1.5-build.patch"
-
- java-ant_rewrite-classpath "${S}/build/build.xml"
-
- rm -v "${S}"/lib/*.jar || die
-}
-
-EANT_FILTER_COMPILER="ecj-3.3"
-EANT_BUILD_XML="build/build.xml"
-EANT_BUILD_TARGET="jar-tools"
-EANT_GENTOO_CLASSPATH="bcel,stax-api,jibx"
-
-src_install() {
- java-pkg_register-dependency jibx
-
- java-pkg_dojar "${S}/lib"/jibx-*.jar
- use source && java-pkg_dosrc "${S}"/build/src/* "${S}"/build/extras/*
-}
diff --git a/dev-java/jibx-tools/jibx-tools-1.1.5-r3.ebuild b/dev-java/jibx-tools/jibx-tools-1.1.5-r3.ebuild
deleted file mode 100644
index c60763f4676e..000000000000
--- a/dev-java/jibx-tools/jibx-tools-1.1.5-r3.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2 versionator
-
-MY_PV=$(replace_all_version_separators '_')
-
-DESCRIPTION="JiBX: Binding XML to Java Code - Generators"
-HOMEPAGE="http://jibx.sourceforge.net/"
-SRC_URI="mirror://sourceforge/jibx/jibx_${MY_PV}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-CDEPEND="dev-java/bcel:0
- dev-java/jibx:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-S="${WORKDIR}/jibx"
-
-java_prepare() {
- # http://jira.codehaus.org/browse/JIBX-207
- epatch "${FILESDIR}/1.1.5-build.patch"
-
- java-ant_rewrite-classpath "${S}/build/build.xml"
-
- rm -v "${S}"/lib/*.jar || die
-}
-
-EANT_FILTER_COMPILER="ecj-3.3"
-EANT_BUILD_XML="build/build.xml"
-EANT_BUILD_TARGET="jar-tools"
-EANT_GENTOO_CLASSPATH="bcel,jibx"
-
-src_install() {
- java-pkg_register-dependency jibx
-
- java-pkg_dojar "${S}/lib"/jibx-*.jar
- use source && java-pkg_dosrc "${S}"/build/src/* "${S}"/build/extras/*
-}
diff --git a/dev-java/jibx-tools/metadata.xml b/dev-java/jibx-tools/metadata.xml
deleted file mode 100644
index 991690c700b2..000000000000
--- a/dev-java/jibx-tools/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jibx</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jibx/Manifest b/dev-java/jibx/Manifest
deleted file mode 100644
index 87ac75936ba9..000000000000
--- a/dev-java/jibx/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST jibx-1.1.5.zip 6788994 BLAKE2B 0b579e6eb9f6037c92dce3acbec4e9fd5a6aec179cb0f4ecf935ff0bbfb525c4c317d79d21683c3ea6136256b69f5aa9250851802c8eaccf14f3dff9f5ad8aa6 SHA512 13c3a43a53746e9146d1240d73d1948b3c03ead55aa0e79158c2700a385b0dfba0e31122efd11446c1a46c2b3f85235035dc198c6b3acf2fcefa88b2a0683cc7
-DIST jibx-bind-1.2.6-sources.jar 450003 BLAKE2B 01dac23fe19f59f634bbf4c78c5f8bbdd5f61cb20e3fdc0d7a08d18614220b84b0512624019e29d3c2c2500c2d7278613260ce70601f8aaa0a863cbca38dff6a SHA512 8a93aed76d00c465f4fa1d4929bbecc37497b05d7e094b68745bd740bf06cfe87919f3c02b83311766852845e763a2ed51f9ed1d543d03921dea1b67526e7668
-DIST jibx-extras-1.2.6-sources.jar 61737 BLAKE2B 4a9a5f3d2f0490b7322a911bf245e9081c1aeea112908014a64dd32792a5ae2519b5a2d1f29119774ad4d9947ff6ed30304f401a984d677619837139fa4ad4bf SHA512 355e387f92766e2cdd8686e9ed26e80584c668ca6c670532f8f24ae758bc4713cfd505890f0ea634b3380f41429725e2ca719652700b0dc3562d5966b108b3ed
-DIST jibx-run-1.2.6-sources.jar 194660 BLAKE2B 4a5cafab6ed7a75e88151c141bd1b41cad12523c353fe7803de3a0d334c186a86884bb3969b6a0ae17a50f48a360368043b6bf8a2f2a00181650da9f15ecca2b SHA512 623ef57cc411464fe1b936d9795ba982fb221334ad8ea8448afa73d9c229a2b3dacde1ee424864d1c12830d59ca2e9431d54b5cb0d1e8273b4fd6fbc47a3cf5a
diff --git a/dev-java/jibx/jibx-1.1.5-r3.ebuild b/dev-java/jibx/jibx-1.1.5-r3.ebuild
deleted file mode 100644
index 26e71325f618..000000000000
--- a/dev-java/jibx/jibx-1.1.5-r3.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2 versionator
-
-MY_PV=$(replace_all_version_separators '_')
-
-DESCRIPTION="JiBX: Binding XML to Java Code"
-HOMEPAGE="http://jibx.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${MY_PV}.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-CDEPEND="
- dev-java/bcel:0
- dev-java/xpp3:0
- dev-java/dom4j:1
- dev-java/ant-core:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}"
-
-DOCS=( changes.txt docs/binding.dtd docs/binding.xsd )
-HTML_DOCS=( readme.html docs starter tutorial )
-
-EANT_BUILD_TARGET="small-jars"
-EANT_BUILD_XML="build/build.xml"
-
-src_prepare() {
- default
- java-pkg_clean
- java-pkg_jar-from --into lib ant-core,bcel,dom4j-1,xpp3
-}
-
-src_install() {
- java-pkg_dojar "${S}"/lib/${PN}*.jar
- use source && java-pkg_dosrc build/src/* build/extras/*
- einstalldocs
-}
diff --git a/dev-java/jibx/jibx-1.2.6-r1.ebuild b/dev-java/jibx/jibx-1.2.6-r1.ebuild
deleted file mode 100644
index bc637548228c..000000000000
--- a/dev-java/jibx/jibx-1.2.6-r1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bind XML to Java code"
-HOMEPAGE="http://jibx.sourceforge.net/"
-SRC_URI="
- https://repo1.maven.org/maven2/org/${PN}/${PN}-extras/${PV}/${PN}-extras-${PV}-sources.jar
- https://repo1.maven.org/maven2/org/${PN}/${PN}-bind/${PV}/${PN}-bind-${PV}-sources.jar
- https://repo1.maven.org/maven2/org/${PN}/${PN}-run/${PV}/${PN}-run-${PV}-sources.jar
-"
-
-LICENSE="BSD"
-SLOT="1.2"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-CDEPEND="
- dev-java/bcel:0
- dev-java/xpp3:0
- dev-java/jdom:0
- dev-java/dom4j:1
- dev-java/log4j:0
- dev-java/joda-time:0
- dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="
- joda-time
- ant-core
- dom4j-1
- log4j
- jdom
- bcel
- xpp3
-"
diff --git a/dev-java/jibx/metadata.xml b/dev-java/jibx/metadata.xml
deleted file mode 100644
index 991690c700b2..000000000000
--- a/dev-java/jibx/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jibx</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jide-oss/Manifest b/dev-java/jide-oss/Manifest
index 291567b1309f..c4c3faf58833 100644
--- a/dev-java/jide-oss/Manifest
+++ b/dev-java/jide-oss/Manifest
@@ -1,2 +1 @@
-DIST jide-oss-3.6.12.tar.gz 4751908 BLAKE2B 731e2c2308e1a7d118a348e3f88258078e16b15f0b3c5bd2ab2ded72d75c4a4c2649e6928d9fbdd1ba7d7b99589a7c1090cb10798e678c44f830df26f0afedff SHA512 a2a60a2af653a1c20099fe81479aadfd252eed086c1009c20a17b561502748cca1cc4b016fe184a60dcb281fd5843c63ad876ca93062bb788e55b485d0e46124
-DIST jide-oss-3.6.18.tar.gz 4752506 BLAKE2B dae7fa89da88295ef5aee03e54778c971b44cc2fc6c017d2e9b24ff9454b9691c34849c9649435ac0a04b28f7fb1ac6b1c147e7fb632e2e30461cf388b3dee7f SHA512 c35f4e5b0462247bb8cc207e1f2120f6a861e796893ce6e7c55e06cab76da84402b3465d420f3fc8d09490f0eb98361d3609bb1675beb9fbf145be4c0bd5ea8c
+DIST jide-oss-3.7.12.tar.gz 4819086 BLAKE2B 9f84b8f9e87b6e74844e11c925546b9a43ae99476c91b84be9269dd8e31658889c3cf38cd67c4a5ec94419d8c5ccecb600c55f747d15e3427e01eb146b0ee755 SHA512 f17ab94fd77237fa0891eb87972b0630a0709fbd7e5d07e6d8389fd18668747d13ca9f631f81cf1153f7d233131a0500e8e76dabf8d33fdce846db14f9958456
diff --git a/dev-java/jide-oss/jide-oss-3.6.12.ebuild b/dev-java/jide-oss/jide-oss-3.6.12.ebuild
deleted file mode 100644
index 5b2346e79eef..000000000000
--- a/dev-java/jide-oss/jide-oss-3.6.12.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="JIDE Common Layer (Professional Swing Components)"
-HOMEPAGE="https://github.com/jidesoft/jide-oss"
-SRC_URI="https://github.com/jidesoft/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2-with-exceptions"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-java_prepare() {
- rm -rv libs/ src/com/jidesoft/plaf/aqua/ || die
-}
-
-src_install() {
- java-pkg_newjar ${P}.jar ${PN}.jar
- dodoc README.txt
-
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/jide-oss/jide-oss-3.6.18.ebuild b/dev-java/jide-oss/jide-oss-3.6.18.ebuild
deleted file mode 100644
index 58d4d49dd0c3..000000000000
--- a/dev-java/jide-oss/jide-oss-3.6.18.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JIDE Common Layer (Professional Swing Components)"
-HOMEPAGE="https://github.com/jidesoft/jide-oss"
-SRC_URI="https://github.com/jidesoft/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2-with-exceptions"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-src_prepare() {
- default
- rm -rv libs/ src/com/jidesoft/plaf/aqua/ test/ || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- einstalldocs
-}
diff --git a/dev-java/jide-oss/jide-oss-3.7.12.ebuild b/dev-java/jide-oss/jide-oss-3.7.12.ebuild
new file mode 100644
index 000000000000..6445ab563a08
--- /dev/null
+++ b/dev-java/jide-oss/jide-oss-3.7.12.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2021 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/jidesoft/jide-oss/archive/19083238ce00ecbd7370f856cb64ea69dae669a5.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild jide-oss.3.7.12-r2.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.jidesoft:jide-oss:3.7.12"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+MY_COMMIT="19083238ce00ecbd7370f856cb64ea69dae669a5"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JIDE Common Layer (Professional Swing Components)"
+HOMEPAGE="https://github.com/jidesoft/jide-oss"
+SRC_URI="https://github.com/jidesoft/jide-oss/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2-with-exceptions"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# Upstream does not support java-11
+# https://github.com/jidesoft/jide-oss/issues/30
+DEPEND="virtual/jdk:1.8"
+RDEPEND="virtual/jre:1.8"
+
+DOCS=( {LICENSE,'Readme JDK9',README}.txt libs/README_lib )
+
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+JAVA_GENTOO_CLASSPATH_EXTRA="libs/ui.jar"
+JAVA_SRC_DIR=( "src" "src-jdk8" )
+JAVA_RESOURCE_DIRS=( "src" "properties" )
+
+JAVA_TEST_SRC_DIR="test"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+JAVA_TEST_EXCLUDES=(
+ "com.jidesoft.swing.CornerScrollerVisualTest" # No runnable methods
+ "com.jidesoft.swing.TestResizableWindow" # No runnable methods
+ "com.jidesoft.utils.TestCacheArray" # No runnable methods
+ # junit.framework.AssertionFailedError: expected:<0> but was:<100>
+ # probably the test is wrong as a cache entry is created for each font size
+ # and each iteration creates a new font size
+ "com.jidesoft.utils.TestFontUtils"
+)
+
+src_prepare() {
+ default
+ rm libs/junit-4.10.jar || die
+}
+
+src_install() {
+ default
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jide-oss/metadata.xml b/dev-java/jide-oss/metadata.xml
index a8fff703ba43..c078e6c8c8ab 100644
--- a/dev-java/jide-oss/metadata.xml
+++ b/dev-java/jide-oss/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
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..bb73a2d2a856
--- /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 ~arm arm64 ppc64 x86"
+
+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/jlex/Manifest b/dev-java/jlex/Manifest
deleted file mode 100644
index b89cec7d80a0..000000000000
--- a/dev-java/jlex/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jlex-1.2.6.tar.bz2 45868 BLAKE2B d56329396668528bb626f6f03af2ebec3ccde1fc73f9e2242ff3dacc4e92c76a0e1cca29bf240832ef26c0ac98bf4b18bd820a06c99aea2b958ac13f3eadb78d SHA512 ebe16f87fe5b524de5c31651b0d5a0c282fdac99814c8f432a850a394657da4016880fba0f7418c8c42a989e78145d39188c3e68b79ed64fa1911d5680b00b9c
diff --git a/dev-java/jlex/jlex-1.2.6-r2.ebuild b/dev-java/jlex/jlex-1.2.6-r2.ebuild
deleted file mode 100644
index 185e730f3028..000000000000
--- a/dev-java/jlex/jlex-1.2.6-r2.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2
-
-DESCRIPTION="JLex: a lexical analyzer generator for Java"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-HOMEPAGE="https://www.cs.princeton.edu/~appel/modern/java/JLex/"
-
-KEYWORDS="amd64 x86"
-LICENSE="jlex"
-SLOT="0"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-src_compile() {
- ejavac -nowarn Main.java
-}
-
-src_install() {
- dodoc README Bugs
-
- if use doc; then
- dohtml manual.html
- dodoc sample.lex
- fi
-
- mkdir JLex || die
- mv *.class JLex/ || die
- jar cf jlex.jar JLex/ || die "failed to jar"
-
- java-pkg_dojar "${PN}.jar"
- java-pkg_dolauncher "${PN}" --main JLex.Main "${PN}.jar"
-
- if use source; then
- rm JLex/*
- cp Main.java JLex
- java-pkg_dosrc JLex
- fi
-}
diff --git a/dev-java/jlex/metadata.xml b/dev-java/jlex/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jlex/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jlfgr/Manifest b/dev-java/jlfgr/Manifest
deleted file mode 100644
index 0d376f86af62..000000000000
--- a/dev-java/jlfgr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jlfgr-1_0.zip 66708 BLAKE2B 8b8053e0c1960da11413a647991d2b956c58ffdcb307f38223a281b262a00a31fd5441f76b80075e5827ca70ee12b3e67fb7c79a35e06a2bdc9a981ee75a10a0 SHA512 a6d9b6a617508bbe95afba23eed414c609078fc76dbb0bb86d1a7aecdb7d2e3ba57d58c7d60d29b0f7f36e12937e2838ad335db7fc714efe8f062b84dcab674d
diff --git a/dev-java/jlfgr/jlfgr-1.0-r2.ebuild b/dev-java/jlfgr/jlfgr-1.0-r2.ebuild
deleted file mode 100644
index df38eda7e2e9..000000000000
--- a/dev-java/jlfgr/jlfgr-1.0-r2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit versionator java-pkg-2
-
-MY_PV=$(replace_all_version_separators '_')
-
-DESCRIPTION="Java(TM) Look and Feel Graphics Repository"
-HOMEPAGE="http://java.sun.com/developer/techDocs/hi/repository/"
-SRC_URI="mirror://gentoo/jlfgr-${MY_PV}.zip"
-
-LICENSE="sun-jlfgr"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
-
-# Empty src_compile() to prevent message about not found build.xml
-src_compile() { :; }
-
-src_install() {
- java-pkg_newjar "jlfgr-${MY_PV}.jar" "${PN}.jar"
-}
diff --git a/dev-java/jlfgr/metadata.xml b/dev-java/jlfgr/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jlfgr/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jline/Manifest b/dev-java/jline/Manifest
index 2a51185c724d..b48e375690f1 100644
--- a/dev-java/jline/Manifest
+++ b/dev-java/jline/Manifest
@@ -1,2 +1 @@
-DIST jline-1.0.zip 463082 BLAKE2B 4f4eec5a2674bf97ed9fe83c60d339fce54dcd556aca6e95db74438e87253fd4e36e4eef26b3ac14ed84fff3d2fe1b58ba3a6fe13f33d96fe50a34f7bb34f541 SHA512 2957e19a3536d89aeaf8f27afb1f8eb4eb8bcc99560244c7f1ba14693a84a2f5e677a6c21d5f85ec519674cc4cd6cb3c9e4725cb4797144168d2f6df3954aba9
-DIST jline-2.12.1.tar.gz 97289 BLAKE2B 375711ad78cba26c0b4702dd739a18dd4db2fd1e8b16ce817dd1f567c405b7b0f96c72a6c6b7fabff1520617cf9149a29040e132d0b61e2d57149bb83b404c8d SHA512 368492fa0b28e6aa3827db05d266b332935d9a03c2f6645d039941c61a698e85fd57accfac444503de4cb2f2dae5787496924b8d258faad1c18b6cafe787f99d
+DIST jline-2.14.6.tar.gz 116599 BLAKE2B a3576314d8bb4886e0297822e0f37b4cc4c49cad1c5ea71a61a2813b0afae7ba8a5d5ad914fe900c4dca6c2f3891551157ca4a3d24231e8731cda4b5dbe80b32 SHA512 9e141c9a112dcb4850db95a7c2cec9b84f11be1f6740a3a33c99ec2ed5f900f4dae7474058e14319ef79476121997afbdb248ca22559a82a905c31690afa1d51
diff --git a/dev-java/jline/files/maven-build.properties b/dev-java/jline/files/maven-build.properties
deleted file mode 100644
index 66ef7cf2840e..000000000000
--- a/dev-java/jline/files/maven-build.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Generated by Maven Ant Plugin - DO NOT EDIT THIS FILE!
-#Sun Jan 21 15:31:06 EET 2007
-maven.build.finalName=jline-0.9.9
-maven.build.outputDir=${maven.build.dir}/classes
-maven.build.resourceDir.0=src/main/resources
-maven.build.testResourceDir.0=src/test/resources
-maven.build.testOutputDir=${maven.build.dir}/test-classes
-maven.repo.local=lib
-maven.settings.offline=false
-maven.build.dir=target
-maven.settings.interactiveMode=true
-maven.build.srcDir.0=src/main/java
-maven.build.testDir.0=src/test/java
diff --git a/dev-java/jline/files/maven-build.xml b/dev-java/jline/files/maven-build.xml
deleted file mode 100644
index 7be70998ddcc..000000000000
--- a/dev-java/jline/files/maven-build.xml
+++ /dev/null
@@ -1,199 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 1/21/07 3:31 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jline-from-maven" default="dist" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environnement properties -->
- <!-- ====================================================================== -->
-
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jline-0.9.9"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/main/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
-
- <property name="maven.settings.offline" value="true"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <fileset dir="${maven.repo.local}">
- <include name="*.jar"/>
- </fileset>
- </path>
- <path id="build.test.classpath">
- <fileset dir="${maven.repo.local}">
- <include name="*.jar"/>
- </fileset>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="junit-present, compile"
- description="Compile the test code"
- if="junit.present">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="junit-present, compile-tests"
- if="junit.present"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="junit-present"
- depends="test-junit-present"
- unless="junit.present">
- <echo>=================================== WARNING ===================================</echo>
- <echo> Junit isn&apos;t present in your $ANT_HOME/lib directory. Tests not executed. </echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Dist target -->
- <!-- ====================================================================== -->
-
- <target name="dist" depends="package,test" description="Package the application and run tests"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/3.8.1"/>
- <get src="http://jline.sourceforge.net/m2repo/junit/junit/3.8.1/junit-3.8.1.jar"
- dest="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"
- usetimestamp="true"
- ignoreerrors="true"/>
- <get src="http://repo1.maven.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar"
- dest="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"
- usetimestamp="true"
- ignoreerrors="true"/>
- </target>
-</project>
diff --git a/dev-java/jline/jline-1.0-r1.ebuild b/dev-java/jline/jline-1.0-r1.ebuild
deleted file mode 100644
index eb4e3f9754da..000000000000
--- a/dev-java/jline/jline-1.0-r1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Handle console input in Java"
-HOMEPAGE="http://jline.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-DEPEND="
- >=virtual/jdk-1.6
- app-arch/unzip
- test? (
- dev-java/ant-junit:0
- dev-java/junit:0
- )"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}/src"
-
-src_prepare() {
- default
- java-pkg_clean
-
- # we don't support maven for building yet.
- # this build.xml was generated by:
- # - mvn ant:ant
- # - tweak build.xml to not load properties from home dir
- # - tweak the test target to match the test cases
- # - change maven.repo.local from ~/.maven to "lib" in .properties
- # - change classpath definitions to "*.jar"
-
- cp "${FILESDIR}/maven-build.xml" build.xml || die
- cp "${FILESDIR}/maven-build.properties" . || die
- java-ant_ignore-system-classes
-
- mkdir lib || die
- cd lib || die
- if use test; then
- java-pkg_jar-from --build-only junit
- fi
-}
-
-src_compile() {
- # precompiled javadocs (needs maven to generate)
- # -Dmaven.build.finalName is needed to override the one defined in the
- # build.xml, which because it was generated with 0.9.9, defaults to
- # jline-0.9.9 -nichoj
- eant package -Dmaven.build.finalName=${P}
-}
-
-src_test() {
- ANT_TASKS="ant-junit" eant test -Djunit.present=true
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
- # no api docs in this release
- # use doc && java-pkg_dojavadoc ../apidocs
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/jline/jline-2.12.1-r1.ebuild b/dev-java/jline/jline-2.12.1-r1.ebuild
deleted file mode 100644
index e40695a585b8..000000000000
--- a/dev-java/jline/jline-2.12.1-r1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Java library for handling console input"
-HOMEPAGE="https://github.com/jline/jline2"
-SRC_URI="https://github.com/jline/${PN}2/archive/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="2"
-KEYWORDS="amd64 ~arm64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
- dev-java/jansi:0
- dev-java/jansi-native:0"
-
-DEPEND="
- test? (
- dev-java/junit:4
- )
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}2-${P}"
-
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_GENTOO_CLASSPATH="jansi,jansi-native"
-
-java_prepare() {
- # Easier to use java-pkg-simple.
- rm -v pom.xml || die
-
- # Don't forget the resources!
- mkdir -p target/classes || die
- cp -r src/main/resources/* target/classes || die
-}
-
-src_install() {
- java-pkg-simple_src_install
-
- dodoc {CHANGELOG,README}.md
-}
-
-src_test() {
- cd src/test/java || die
-
- local CP=".:../resources:${S}/${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find * -name "*Test.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/jline/jline-2.14.6.ebuild b/dev-java/jline/jline-2.14.6.ebuild
new file mode 100644
index 000000000000..181001afabb7
--- /dev/null
+++ b/dev-java/jline/jline-2.14.6.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source"
+JAVA_SRC_DIR="src/main/java"
+JAVA_GENTOO_CLASSPATH="jansi,jansi-native"
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A Java library for handling console input"
+HOMEPAGE="https://github.com/jline/jline2"
+SRC_URI="https://github.com/jline/${PN}2/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN}2-${P}"
+
+LICENSE="BSD"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+IUSE="test"
+# Needs yet-unpackaged powermock for tests
+RESTRICT="!test? ( test ) test"
+
+CDEPEND="
+ dev-java/jansi:0
+ dev-java/jansi-native:0"
+
+DEPEND="
+ test? (
+ dev-java/easymock:3.2
+ dev-java/junit:4
+ )
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+src_prepare() {
+ default
+
+ # Easier to use java-pkg-simple.
+ rm -v pom.xml || die
+
+ # Don't forget the resources!
+ mkdir -p target/classes || die
+ cp -r src/main/resources/* target/classes || die
+}
+
+src_test() {
+ cd src/test/java || die
+
+ local CP=".:../resources:${S}/${PN}.jar:$(java-pkg_getjars junit-4,easymock-3.2,${JAVA_GENTOO_CLASSPATH})"
+ local TESTS=$(find * -name "*Test.java" || die)
+ TESTS="${TESTS//.java}"
+ TESTS="${TESTS//\//.}"
+
+ ejavac -cp "${CP}" -d . $(find * -name "*.java" || die)
+ ejunit4 -classpath "${CP}" ${TESTS}
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ dodoc {CHANGELOG,README}.md
+}
diff --git a/dev-java/jline/metadata.xml b/dev-java/jline/metadata.xml
index cb172808c6ff..3e11ee49c906 100644
--- a/dev-java/jline/metadata.xml
+++ b/dev-java/jline/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jmc/Manifest b/dev-java/jmc/Manifest
new file mode 100644
index 000000000000..fdfb3ebf3c28
--- /dev/null
+++ b/dev-java/jmc/Manifest
@@ -0,0 +1 @@
+DIST jmc-8.3.0.ga.tar.gz 40714977 BLAKE2B 7ec59a23a62ede30844cee71bd1c859974ee3112bb5cc1b31b65f63f0bbf1b2689a94180d0fba687858353d05b3d1046a7b98688f01312606332bfd9d99ac9e8 SHA512 e4fb9fe8fa0ebfd3dd550dfa3412a4a7f88cb46eedaba329c4fd1a693047377b5c57db8ef8751f5966bce7621d6d2eff52a8d1921c089e7b1c3104684918fde9
diff --git a/dev-java/jmc/jmc-8.3.0.ebuild b/dev-java/jmc/jmc-8.3.0.ebuild
new file mode 100644
index 000000000000..49b64d2ec06b
--- /dev/null
+++ b/dev-java/jmc/jmc-8.3.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_PROVIDES="
+ org.openjdk.jmc:common:${PV}
+ org.openjdk.jmc:flightrecorder:${PV}
+"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JDK Mission Control"
+HOMEPAGE="https://openjdk.org/projects/jmc/"
+SRC_URI="https://github.com/openjdk/jmc/archive/${PV}-ga.tar.gz -> ${P}.ga.tar.gz"
+S="${WORKDIR}/${P}-ga"
+
+LICENSE="UPL-1.0"
+SLOT="0"
+KEYWORDS="amd64"
+
+DEPEND="
+ dev-java/lz4-java:0
+ dev-java/owasp-java-encoder:0
+ >=virtual/jdk-1.8:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+src_compile() {
+ einfo "Compiling jmc-common.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="org.openjdk.jmc.common"
+ JAVA_CLASSPATH_EXTRA="
+ lz4-java
+ owasp-java-encoder
+ "
+ JAVA_JAR_FILENAME="jmc-common.jar"
+ JAVA_RESOURCE_DIRS="core/org.openjdk.jmc.common/src/main/resources"
+ JAVA_SRC_DIR="core/org.openjdk.jmc.common/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jmc-common.jar"
+ rm -r target || die
+
+ einfo "Compiling jmc-flightrecorder.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="org.openjdk.jmc.flightrecorder"
+ JAVA_JAR_FILENAME="jmc-flightrecorder.jar"
+ JAVA_RESOURCE_DIRS="core/org.openjdk.jmc.flightrecorder/src/main/resources"
+ JAVA_SRC_DIR="core/org.openjdk.jmc.flightrecorder/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jmc-flightrecorder.jar"
+ rm -r target || die
+
+ if use doc; then
+ JAVA_SRC_DIR=()
+ JAVA_SRC_DIR=(
+ "core/org.openjdk.jmc.common/src/main/java"
+ "core/org.openjdk.jmc.flightrecorder/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ default
+ java-pkg_dojar jmc-common.jar jmc-flightrecorder.jar
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+ if use source; then
+ java-pkg_dosrc "core/org.openjdk.jmc.common/src/main/java/*"
+ java-pkg_dosrc "core/org.openjdk.jmc.flightrecorder/src/main/java/*"
+ fi
+}
diff --git a/dev-java/jmc/metadata.xml b/dev-java/jmc/metadata.xml
new file mode 100644
index 000000000000..13df86c0e8a8
--- /dev/null
+++ b/dev-java/jmc/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">openjdk/jmc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jmdns/Manifest b/dev-java/jmdns/Manifest
deleted file mode 100644
index d92a70ffe4bd..000000000000
--- a/dev-java/jmdns/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jmdns-3.4.1.tgz 665503 BLAKE2B b2ddf4216a39abf8b1fa9629005f83a5b6d3bbc6a2b85fcb716f4591d9435892977086276c1838ff4966d54bb501a589c4eff15948bae4ee7b8d0f035371fcb8 SHA512 06e01dc7ef9eabd1ba75be016d688294043a6eec53de40d20026587f2c3d82bd0b025efd9b662bbe28450940d277da0fbc30ef69293ca3e81426212d8e85d7fb
diff --git a/dev-java/jmdns/jmdns-3.4.1-r1.ebuild b/dev-java/jmdns/jmdns-3.4.1-r1.ebuild
deleted file mode 100644
index d33a9ab1c9b7..000000000000
--- a/dev-java/jmdns/jmdns-3.4.1-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JmDNS is an implementation of multi-cast DNS in Java"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tgz"
-HOMEPAGE="http://jmdns.sourceforge.net"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-JAVA_SRC_DIR="src"
-
-src_prepare() {
- rm "${S}"/build.xml || die
- find -name "*.jar" -delete || die
- find "${JAVA_SRC_DIR}" -name "*Test.java" -delete || die
-}
diff --git a/dev-java/jmdns/metadata.xml b/dev-java/jmdns/metadata.xml
deleted file mode 100644
index 98cdd972be35..000000000000
--- a/dev-java/jmdns/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <longdescription>
- JmDNS is an implementation of multi-cast DNS in Java.
- It supports service discovery and service registration.
- It is fully interoperable with Apple's Rendezvous.
- </longdescription>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jmdns</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jmh-core/Manifest b/dev-java/jmh-core/Manifest
index 668ef0de11ee..396f6a6ab0c2 100644
--- a/dev-java/jmh-core/Manifest
+++ b/dev-java/jmh-core/Manifest
@@ -1,2 +1 @@
-DIST jmh-core-1.21.tar.gz 615305 BLAKE2B 1a5cfe9784efe0cd7706382eaa89c8bcce0efcce3c2b802ce0772992dd16f0c6900a47d70b72d1c556584adb8afda442f49267ad4e0b53d04c20026979787210 SHA512 ac51d58d9b746157842a3bc9c4828bbff52c5882582e123e04b5ab6c4bfc1ff3cad1f6023ab1fe1eccfa68c73ffbd21b34388547bba544626af87092852ec166
-DIST jmh-core-1.4.1.tar.gz 585746 BLAKE2B ff6e9d3e8b11827042a9ff9983505fa5272d943a8365cf14ac43d940a7815f280c2b82c3ab810f1c22328a932912f6b09b9c5d5f1838a3cb357e6ebe21006e49 SHA512 a33c63b82712deb53218bb8d955c9606e5f393ff0c6256052ac8df022ec45be79bc0ee5ee08ce0d3762594214814bcf1e562717d83daa9ce13c664ca9e7c431b
+DIST jmh-1.37.tar.gz 658673 BLAKE2B 696997907f3505f84ed400d75f46625b9f2aa9faf8a6d4250e6380db9088a8d6a61792eed8163703cb0003dba6ee5a2061d08a1b09bed5c058612142cd594469 SHA512 a3aac7d2e774dd7e7457cc1dce9edbe5923fcdae266854d709b926580638a28057bd6b32b8d7dedc4707ab2ae9aa7d5cda04eb72b0116f1cb98480a8b8b02707
diff --git a/dev-java/jmh-core/jmh-core-1.21.ebuild b/dev-java/jmh-core/jmh-core-1.21.ebuild
deleted file mode 100644
index ad044bba454e..000000000000
--- a/dev-java/jmh-core/jmh-core-1.21.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-# Hash of tag, download not available via ${PV}
-MY_PN="jmh"
-MY_PV="f25ae8584db1"
-
-JAVA_PKG_IUSE="doc source"
-
-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://hg.openjdk.java.net/code-tools/${MY_PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# jopt *must* be 4.6, see https://mail.openjdk.java.net/pipermail/jmh-dev/2016-October/002395.html
-CP_DEPEND="
- dev-java/asm:4
- dev-java/junit:4
- dev-java/commons-math:3
- dev-java/jopt-simple:4.6"
-
-DEPEND=">=virtual/jdk-1.7
- ${CP_DEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CP_DEPEND}"
-
-S="${WORKDIR}/${MY_PN}-${MY_PV}/${PN}"
diff --git a/dev-java/jmh-core/jmh-core-1.37.ebuild b/dev-java/jmh-core/jmh-core-1.37.ebuild
new file mode 100644
index 000000000000..0fcaad366369
--- /dev/null
+++ b/dev-java/jmh-core/jmh-core-1.37.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="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.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"
+
+CP_DEPEND="
+ dev-java/commons-math:3
+ dev-java/jopt-simple:0"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_RESOURCE_DIRS="jmh-core/src/main/resources"
+JAVA_SRC_DIR="jmh-core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="jmh-core/src/test/resources"
+JAVA_TEST_SRC_DIR="jmh-core/src/test/java"
diff --git a/dev-java/jmh-core/jmh-core-1.4.1.ebuild b/dev-java/jmh-core/jmh-core-1.4.1.ebuild
deleted file mode 100644
index b2ef63a5460b..000000000000
--- a/dev-java/jmh-core/jmh-core-1.4.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-# Hash of tag, download not available via ${PV}
-MY_PN="jmh"
-MY_PV="7ff584954008"
-
-JAVA_PKG_IUSE="doc source"
-
-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://hg.openjdk.java.net/code-tools/${MY_PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# jopt *must* be 4.6, see https://mail.openjdk.java.net/pipermail/jmh-dev/2016-October/002395.html
-CDEPEND="
- dev-java/asm:4
- dev-java/junit:4
- dev-java/commons-math:3
- dev-java/jopt-simple:4.6
- source? ( app-arch/zip )"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="asm-4,commons-math-3,jopt-simple,junit-4"
-
-S="${WORKDIR}/${MY_PN}-${MY_PV}/${PN}"
diff --git a/dev-java/jmh-core/metadata.xml b/dev-java/jmh-core/metadata.xml
index 952a4b9b605c..09c955c1f8a5 100644
--- a/dev-java/jmh-core/metadata.xml
+++ b/dev-java/jmh-core/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">openjdk/jmh</remote-id>
+ </upstream>
</pkgmetadata>
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/jmh-generator-annprocess/metadata.xml b/dev-java/jmh-generator-annprocess/metadata.xml
new file mode 100644
index 000000000000..09c955c1f8a5
--- /dev/null
+++ b/dev-java/jmh-generator-annprocess/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">openjdk/jmh</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jmi-interface/Manifest b/dev-java/jmi-interface/Manifest
deleted file mode 100644
index 7f22b97b507b..000000000000
--- a/dev-java/jmi-interface/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST jmi-1_0-fr-interfaces.zip 38946 BLAKE2B fb48e994000bc01b9972bd50d6e110322f251de2356202d33fd16c2f8333e76d9d6c185e064e1b435bc572864f244483680a1a2ff9f4ab1970ebaf50bf647613 SHA512 40a7b983ca8bbd5c35f4e2ef0acda7ecb09230c80a41fd17998a24ae57216b579e0e33bcbb2348d0091d1e75c1132be9bcb959a957519fe9d5d29f347bf1eca6
-DIST mof-1.0.xml.bz2 7076 BLAKE2B e86f8cf05a4922130d70a79c95f3cb369d54f40246f89bd04d1371a6401a923633f353268954674dc86ae28ed1da760a3ff90fbffdbe79f4331814e657f9bd94 SHA512 72dfee938fb3cb019928d3813743d5d535e1a5dbaa39915f5af84c39f9a701f8b043150e53f25b3745c5bbf25010144735834b121e3884bcaf044db6ff22e722
diff --git a/dev-java/jmi-interface/files/jmi-interface-1.0-enum.patch b/dev-java/jmi-interface/files/jmi-interface-1.0-enum.patch
deleted file mode 100644
index a74dfd4d4461..000000000000
--- a/dev-java/jmi-interface/files/jmi-interface-1.0-enum.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/src/javax/jmi/reflect/RefClass.java
-+++ b/src/javax/jmi/reflect/RefClass.java
-@@ -8,6 +8,6 @@
- public Collection refAllOfClass();
- public RefStruct refCreateStruct(RefObject struct, List params);
- public RefStruct refCreateStruct(String structName, List params);
-- public RefEnum refGetEnum(RefObject enum, String name);
-+ public RefEnum refGetEnum(RefObject enumObj, String name);
- public RefEnum refGetEnum(String enumName, String name);
- }
-\ No newline at end of file
---- a/src/javax/jmi/reflect/RefPackage.java
-+++ b/src/javax/jmi/reflect/RefPackage.java
-@@ -14,7 +14,7 @@
- public Collection refAllAssociations();
- public RefStruct refCreateStruct(RefObject struct, List params);
- public RefStruct refCreateStruct(String structName, List params);
-- public RefEnum refGetEnum(RefObject enum, String name);
-+ public RefEnum refGetEnum(RefObject enumObj, String name);
- public RefEnum refGetEnum(String enumName, String name);
- public void refDelete();
- }
diff --git a/dev-java/jmi-interface/jmi-interface-1.0-r4.ebuild b/dev-java/jmi-interface/jmi-interface-1.0-r4.ebuild
deleted file mode 100644
index 338e0ca2b25a..000000000000
--- a/dev-java/jmi-interface/jmi-interface-1.0-r4.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-JMI_ZIP="jmi-${PV/./_}-fr-interfaces.zip"
-MOF_XML="mof-${PV}.xml.bz2"
-
-DESCRIPTION="Java Metadata Interface Sample Class Interface"
-HOMEPAGE="http://java.sun.com/products/jmi/"
-SRC_URI="mirror://gentoo/${JMI_ZIP}
- mirror://gentoo/${MOF_XML}"
-
-LICENSE="sun-bcla-jmi"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_SRC_DIR="src"
-
-src_unpack() {
- mkdir "${S}/src" || die
- cd "${S}/src" || die
- unpack ${JMI_ZIP}
-
- # adding mof.xml required by Netbeans
- # #98603 and #162328
- cd "${S}/src/javax/jmi/model" || die
- unpack ${MOF_XML}
- cp mof-1.0.xml mof.xml || die
-}
-
-java_prepare() {
- # rename enum keywords because javadoc hates them
- # even with -source 1.4, bummer
- epatch "${FILESDIR}/${P}-enum.patch"
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" src -name "*.xml"
-}
diff --git a/dev-java/jmi-interface/jmi-interface-1.0-r5.ebuild b/dev-java/jmi-interface/jmi-interface-1.0-r5.ebuild
deleted file mode 100644
index 76b58a2abf2c..000000000000
--- a/dev-java/jmi-interface/jmi-interface-1.0-r5.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-JMI_ZIP="jmi-${PV/./_}-fr-interfaces.zip"
-MOF_XML="mof-${PV}.xml.bz2"
-
-DESCRIPTION="Java Metadata Interface Sample Class Interface"
-HOMEPAGE="http://java.sun.com/products/jmi/"
-
-SRC_URI="mirror://gentoo/${JMI_ZIP}
- mirror://gentoo/${MOF_XML}"
-
-LICENSE="sun-bcla-jmi"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-JAVA_SRC_DIR="src"
-
-src_unpack() {
- mkdir "${S}/src" || die
- cd "${S}/src" || die
- unpack "${JMI_ZIP}"
-
- # adding mof.xml required by Netbeans
- # #98603 and #162328
- cd "${S}/src/javax/jmi/model" || die
- unpack ${MOF_XML}
- cp mof-1.0.xml mof.xml || die
-}
-
-src_prepare() {
- default
-
- # rename enum keywords because javadoc hates them
- # even with -source 1.4, bummer
- eapply "${FILESDIR}/${P}-enum.patch"
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" src -name "*.xml"
-}
diff --git a/dev-java/jmi-interface/metadata.xml b/dev-java/jmi-interface/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jmi-interface/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jmock/Manifest b/dev-java/jmock/Manifest
index 461e7589a929..3180d94c6641 100644
--- a/dev-java/jmock/Manifest
+++ b/dev-java/jmock/Manifest
@@ -1,2 +1,2 @@
DIST jmock-1.2.0-jars.zip 153214 BLAKE2B 2c40696229018406f3b60559013b73b5331c223da6e2743830c4c9b8b728484b1ebed8fb347c240f50f6936c2fd1e4ee85b754315682047a87a14414effc3a48 SHA512 5290f1d14cbc3d0f223bdaf59716b037dbc021c8f39a3784d13af8d8be3edbddc5e2eb4754b80e78ae954daf12889210183e7e11c110012b4d9320344efe19da
-DIST jmock-2.6.1-jars.zip 1249841 BLAKE2B 87861dad7151000e1397a54d0ded7e49c3fd81fca64afd74d6176436f336be5b5e89f73be8c124cf086798f74aef4972303137529113e3c85ba93353f95e3a42 SHA512 7cd1d2e89dceb31c68ad3f702ad937b5de6ec77cc37e94be7aa53db2fc61d11aa40ec5aab225a3eeeba5064ad8384f10413ac05a9df97102c8e63f4209ea149e
+DIST jmock-2.12.0.tar.gz 111963 BLAKE2B d4b8c8c4ca68ed8dae3b4906e3163fa5e8e8ea8f4b993386d7fa605e0188dd43462550ae4833ab9dbfe68c24e15cf6d19a6f444ca57f666fdfe8b29734fd32f7 SHA512 b1ba12981e7379f5b07a29749c7640906c02f72f52158921d0ac02abf69c9c8c2dc753f4462ff0afa5807852a06f59a6da9ed9357ae7dc0303b0377a0e3da854
diff --git a/dev-java/jmock/jmock-2.12.0.ebuild b/dev-java/jmock/jmock-2.12.0.ebuild
new file mode 100644
index 000000000000..a258ba6eeffd
--- /dev/null
+++ b/dev-java/jmock/jmock-2.12.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom jmock/pom.xml --download-uri https://github.com/jmock-developers/jmock-library/archive/2.12.0.tar.gz --slot 2 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild jmock-2.12.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.jmock:jmock:2.12.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An expressive Mock Object library for Test Driven Development"
+HOMEPAGE="http://jmock.org/"
+SRC_URI="https://github.com/${PN}-developers/${PN}-library/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/asm:9
+ dev-java/bsh:0
+ dev-java/hamcrest:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/findbugs-annotations:0
+ dev-java/jaxws-api:0
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/jmock-library-${PV}"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ findbugs-annotations
+ jaxws-api
+ junit-4
+"
+JAVA_TEST_SRC_DIR="jmock/src/test/java"
+
+src_prepare() {
+ default
+ # We have "signed.jar" directly in ${S}, not in "../testjar/target/".
+ sed \
+ -e 's:\.\.\/testjar\/target\/\(signed.jar\):\1:' \
+ -i jmock/src/test/java/org/jmock/test/unit/lib/JavaReflectionImposteriserTests.java || die
+}
+
+src_compile() {
+ if use test; then
+ einfo "Compiling testjar"
+ JAVA_SRC_DIR="testjar/src/main/java"
+ JAVA_CLASSPATH_EXTRA="findbugs-annotations"
+ JAVA_JAR_FILENAME="signed.jar"
+ java-pkg-simple_src_compile
+ cp {,un}signed.jar || die
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":signed.jar:unsigned.jar"
+ rm -r target || die
+ fi
+
+ einfo "Compiling jmock.jar"
+ JAVA_SRC_DIR="jmock/src/main/java"
+ JAVA_CLASSPATH_EXTRA="
+ asm-9
+ bsh
+ hamcrest
+ "
+ JAVA_JAR_FILENAME="jmock.jar"
+ java-pkg-simple_src_compile
+
+ # Code generation according to jmock/pom.xml#L73-L90
+ "$(java-config -J)" \
+ -cp $(java-config --with-dependencies --classpath asm:9):${PN}.jar \
+ org.jmock.ExpectationsCreator
+
+ # Update jmock.jar with updated Expectations.class
+ jar ufv jmock.jar -C target/classes org/jmock/Expectations.class || die
+}
+
+src_test() {
+ # ${S}/pom.xml#L131-L143
+ pushd jmock/src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -wholename "**/*Test.java" \
+ -o -wholename '**/*Tests.java' \)\
+ ! -wholename "**/Failing*TestCase.java" \
+ ! -wholename "**/VerifyingTestCaseTests$*" \
+ ! -wholename "**/Abstract*Test.java" \
+ )
+ popd
+ 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/jmock/jmock-2.6.1-r1.ebuild b/dev-java/jmock/jmock-2.6.1-r1.ebuild
deleted file mode 100644
index a61fb1719ea3..000000000000
--- a/dev-java/jmock/jmock-2.6.1-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="Library for testing Java code using mock objects"
-HOMEPAGE="http://jmock.org"
-SRC_URI="http://jmock.org/downloads/${P}-jars.zip"
-
-LICENSE="BSD"
-SLOT="2"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
-
-CDEPEND="dev-java/hamcrest-core:1.3
- dev-java/hamcrest-library:1.3
- dev-java/junit:4"
-
-RDEPEND=">=virtual/jre-1.8:*
- ${CDEPEND}"
-
-DEPEND="app-arch/unzip
- >=virtual/jdk-1.8:*
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="hamcrest-core-1.3,hamcrest-library-1.3,junit-4"
-
-S="${WORKDIR}/${P}"
-
-src_unpack() {
- unpack ${A}
- cd "${S}" || die
- unzip ${P}.jar -d src || die
- rm *.jar || die
-}
-
-src_prepare() {
- default
- find -name "*.class" -delete || die
-}
diff --git a/dev-java/jmock/metadata.xml b/dev-java/jmock/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/jmock/metadata.xml
+++ b/dev-java/jmock/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jna/Manifest b/dev-java/jna/Manifest
index 20ee000d50be..667bee66b18f 100644
--- a/dev-java/jna/Manifest
+++ b/dev-java/jna/Manifest
@@ -1 +1,2 @@
-DIST jna-4.2.2.tar.gz 58638853 BLAKE2B 3941202ad7839f748c65f1abf53a335f6de7959def06de27a30520457147af3f70f6de54d640718b8314f6e61ab61ee9b26c39812d5cb1f918b8ff714d6b902e SHA512 11ab524f87f6dc7fe3ac8eb0620f9ba392445147770304be7b7fa5cd49de8efed983ad30c16077bfa6419eaf1ff50311a3ded811a78fdcd09bc686ef93ad7f9f
+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/files/4.2.2-build.xml.patch b/dev-java/jna/files/4.2.2-build.xml.patch
deleted file mode 100644
index de49c24b1912..000000000000
--- a/dev-java/jna/files/4.2.2-build.xml.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/build.xml 2016-03-16 14:37:28.000000000 +0000
-+++ b/build.xml 2016-04-16 22:22:27.692967205 +0100
-@@ -320,7 +320,9 @@
- <pathelement path="${build}/${jar}"/>
- <pathelement path="${test.classes}"/>
- <pathelement path="${build}/${testjar}"/>
-+ <!--
- <pathelement path="lib/clover.jar"/>
-+ -->
- <path refid="test.libs"/>
- </path>
- </target>
-@@ -909,8 +911,10 @@
- <mkdir dir="${build}/jws"/>
- <copy todir="${build}/jws" file="${build}/${jar}"/>
- <copy todir="${build}/jws" file="${build}/${testjar}"/>
-+ <!--
- <copy todir="${build}/jws" file="lib/junit.jar"/>
- <copy todir="${build}/jws" file="lib/clover.jar"/>
-+ -->
- <jar jarfile="${build}/jws/jnidispatch.jar">
- <fileset dir="${build.native}" includes="*jnidispatch.*"/>
- </jar>
diff --git a/dev-java/jna/files/4.2.2-makefile-flags.patch b/dev-java/jna/files/4.2.2-makefile-flags.patch
deleted file mode 100644
index 3e290ece4e78..000000000000
--- a/dev-java/jna/files/4.2.2-makefile-flags.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/native/Makefile 2016-03-16 14:37:28.000000000 +0000
-+++ b/native/Makefile 2016-04-16 22:27:06.426345376 +0100
-@@ -81,7 +81,7 @@
- LIBSFX=.so
- ARSFX=.a
- JNISFX=$(LIBSFX)
--CC=gcc
-+CC?=gcc
- LD=$(CC)
- LIBS=
- # Default to Sun recommendations for JNI compilation
-@@ -94,10 +94,10 @@
- COUT=-o $@
- CINCLUDES=$(JAVA_INCLUDES) -I"$(JAVAH)" -I$(FFI_BUILD)/include
- CDEFINES=-D_REENTRANT
--PCFLAGS=-W -Wall -Wno-unused -Wno-parentheses
--CFLAGS=$(PCFLAGS) $(CFLAGS_EXTRA) $(COPT) $(CDEBUG) $(CDEFINES) $(CINCLUDES) \
-+PCFLAGS=-Wall -Wno-unused -Wno-parentheses
-+CFLAGS+= $(PCFLAGS) $(CFLAGS_EXTRA) $(COPT) $(CDEBUG) $(CDEFINES) $(CINCLUDES) \
- -DJNA_JNI_VERSION='"$(JNA_JNI_VERSION)"' -DCHECKSUM='"$(CHECKSUM)"'
--LDFLAGS=-o $@ -shared
-+LDFLAGS+= -o $@ -shared
- ifeq ($(DYNAMIC_LIBFFI),true)
- CFLAGS += $(shell pkg-config --cflags libffi 2>/dev/null || echo)
- LIBS += $(shell pkg-config --libs libffi 2>/dev/null || echo -lffi)
diff --git a/dev-java/jna/files/5.11.0-makefile-flags.patch b/dev-java/jna/files/5.11.0-makefile-flags.patch
new file mode 100644
index 000000000000..4a84abebf45d
--- /dev/null
+++ b/dev-java/jna/files/5.11.0-makefile-flags.patch
@@ -0,0 +1,34 @@
+--- a/native/Makefile
++++ b/native/Makefile
+@@ -81,7 +81,7 @@ LIBPFX=lib
+ LIBSFX=.so
+ ARSFX=.a
+ JNISFX=$(LIBSFX)
+-CC=gcc
++CC?=gcc
+ LD=$(CC)
+ LIBS=
+ # Default to Sun recommendations for JNI compilation
+@@ -94,10 +94,10 @@ CFLAGS_EXTRA=
+ COUT=-o $@
+ CINCLUDES=$(JAVA_INCLUDES) -I"$(JAVAH)" -I$(FFI_BUILD)/include
+ CDEFINES=-D_REENTRANT
+-PCFLAGS=-W -Wall -Wno-unused -Wno-parentheses
+-CFLAGS=$(PCFLAGS) $(CFLAGS_EXTRA) $(COPT) $(CDEBUG) $(CDEFINES) $(CINCLUDES) \
++PCFLAGS=-Wall -Wno-unused -Wno-parentheses
++CFLAGS+= $(PCFLAGS) $(CFLAGS_EXTRA) $(COPT) $(CDEBUG) $(CDEFINES) $(CINCLUDES) \
+ -DJNA_JNI_VERSION='"$(JNA_JNI_VERSION)"' -DCHECKSUM='"$(CHECKSUM)"'
+-LDFLAGS=-o $@ -shared
++LDFLAGS+= -o $@ -shared
+ ifeq ($(DYNAMIC_LIBFFI),true)
+ CFLAGS += $(shell pkg-config --cflags libffi 2>/dev/null || echo)
+ LIBS += $(shell pkg-config --libs libffi 2>/dev/null || echo -lffi)
+@@ -108,7 +108,7 @@ endif
+ # Avoid bug in X11-based 1.5/1.6 VMs; dynamically load instead of linking
+ # See http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6539705
+ #LIBS=-L"$(LIBDIR)" -ljawt
+-STRIP=strip -x
++STRIP?=strip -x
+ # end defaults
+
+ # Android build (cross-compile) requires the android NDK.
diff --git a/dev-java/jna/files/jna-5.11.0-no-Werror.patch b/dev-java/jna/files/jna-5.11.0-no-Werror.patch
new file mode 100644
index 000000000000..629a1a4452de
--- /dev/null
+++ b/dev-java/jna/files/jna-5.11.0-no-Werror.patch
@@ -0,0 +1,17 @@
+https://bugs.gentoo.org/888813
+--- a/native/Makefile
++++ b/native/Makefile
+@@ -356,11 +356,11 @@ ifeq ($(CC),gcc)
+ GCC_MAJOR_VERSION = $(shell gcc -dumpversion | cut -f 1 -d '.')
+ ifneq ($(GCC_MAJOR_VERSION),4)
+ ifneq ($(GCC_MAJOR_VERSION),3)
+- LOC_CC_OPTS=-Wno-unknown-warning-option -Werror -Wno-clobbered -Wno-unused-variable -Wno-alloca-larger-than
++ LOC_CC_OPTS=-Wno-unknown-warning-option -Wno-clobbered -Wno-unused-variable -Wno-alloca-larger-than
+ endif
+ endif
+ else
+- LOC_CC_OPTS=-Wno-unknown-warning-option -Werror -Wno-clobbered -Wno-unused-variable
++ LOC_CC_OPTS=-Wno-unknown-warning-option -Wno-clobbered -Wno-unused-variable
+ endif
+
+ # Enable 64-bit builds if the arch demands it
diff --git a/dev-java/jna/files/jna-5.13.0-LibCTest.patch b/dev-java/jna/files/jna-5.13.0-LibCTest.patch
new file mode 100644
index 000000000000..8cc9da563ed3
--- /dev/null
+++ b/dev-java/jna/files/jna-5.13.0-LibCTest.patch
@@ -0,0 +1,12 @@
+Bug #906053
+--- a/contrib/platform/test/com/sun/jna/platform/linux/LibCTest.java
++++ b/contrib/platform/test/com/sun/jna/platform/linux/LibCTest.java
+@@ -71,7 +71,7 @@ public class LibCTest extends TestCase {
+ }
+
+ @Test
+- public void testStatvfs() throws IOException, InterruptedException {
++ public void noTestStatvfs() throws IOException, InterruptedException {
+ Statvfs vfs = new Statvfs();
+
+ String testDirectory = "/";
diff --git a/dev-java/jna/files/jna-5.13.0-testpath.patch b/dev-java/jna/files/jna-5.13.0-testpath.patch
new file mode 100644
index 000000000000..7bd918c4181a
--- /dev/null
+++ b/dev-java/jna/files/jna-5.13.0-testpath.patch
@@ -0,0 +1,103 @@
+This patch solves several test failures on com.sun.jna.LibraryLoadTest like
+"Expected JNA native library at build/native-linux-x86-64/libtestlib.so is missing"
+--- a/test/com/sun/jna/Paths.java
++++ b/test/com/sun/jna/Paths.java
+@@ -47,12 +47,12 @@ public interface Paths {
+ USING_CLOVER
+ ? "build.clover" : "build");
+ String CLASSES = BUILDDIR + (Platform.isWindowsCE() ? "" : "/classes");
+- String JNAJAR = BUILDDIR + "/jna.jar";
++ String JNAJAR = "jna.jar";
+
+ String TESTPATH = Platform.isWindowsCE()
+ ? "/Storage Card/"
+ : System.getProperty("jna.nativedir",
+- BUILDDIR + "/native-" + Platform.RESOURCE_PREFIX + "/");
++ BUILDDIR + "/native/");
+ String TESTJAR = BUILDDIR + "/jna-test.jar";
+ String TESTJAR2 = BUILDDIR + "/jna-test2.jar";
+ String TESTJAR3 = BUILDDIR + "/jna-test3.jar";
+1) testAvoidJarUnpacking(com.sun.jna.JNALoadTest)
+java.lang.ClassNotFoundException: com.sun.jna.Native
+ at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
+ at com.sun.jna.JNALoadTest$TestLoader.findClass(JNALoadTest.java:64)
+ at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
+ at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
+ at java.lang.Class.forName0(Native Method)
+ at java.lang.Class.forName(Class.java:348)
+ at com.sun.jna.JNALoadTest.testAvoidJarUnpacking(JNALoadTest.java:94)
+2) testLoadAndUnloadFromJar(com.sun.jna.JNALoadTest)
+java.lang.ClassNotFoundException: com.sun.jna.Native
+ at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
+ at com.sun.jna.JNALoadTest$TestLoader.findClass(JNALoadTest.java:64)
+ at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
+ at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
+ at java.lang.Class.forName0(Native Method)
+ at java.lang.Class.forName(Class.java:348)
+ at com.sun.jna.JNALoadTest.testLoadAndUnloadFromJar(JNALoadTest.java:128)
+3) testAvoidResourcePathLoading(com.sun.jna.JNALoadTest)
+java.lang.Error: Expected JNA library at build/classes/com/sun/jna/linux-x86-64/libjnidispatch.so is missing
+ at com.sun.jna.JNALoadTest.assertLibraryExists(JNALoadTest.java:87)
+ at com.sun.jna.JNALoadTest$TestLoader.<init>(JNALoadTest.java:54)
+ at com.sun.jna.JNALoadTest.testAvoidResourcePathLoading(JNALoadTest.java:109)
+4) testLoadFromUnicodePath(com.sun.jna.JNALoadTest)
+java.lang.ClassNotFoundException: com.sun.jna.Native
+ at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
+ at com.sun.jna.JNALoadTest$TestLoader.findClass(JNALoadTest.java:64)
+ at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
+ at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
+ at java.lang.Class.forName0(Native Method)
+ at java.lang.Class.forName(Class.java:348)
+ at com.sun.jna.JNALoadTest.testLoadFromUnicodePath(JNALoadTest.java:255)
+5) testLoadAndUnloadFromResourcePath(com.sun.jna.JNALoadTest)
+java.lang.Error: Expected JNA library at build/classes/com/sun/jna/linux-x86-64/libjnidispatch.so is missing
+ at com.sun.jna.JNALoadTest.assertLibraryExists(JNALoadTest.java:87)
+ at com.sun.jna.JNALoadTest$TestLoader.<init>(JNALoadTest.java:54)
+ at com.sun.jna.JNALoadTest.testLoadAndUnloadFromResourcePath(JNALoadTest.java:184)
+--- a/test/com/sun/jna/JNALoadTest.java
++++ b/test/com/sun/jna/JNALoadTest.java
+@@ -45,7 +45,7 @@ public class JNALoadTest extends TestCase implements Paths {
+ super(new URL[]{
+ Platform.isWindowsCE()
+ ? new File("/Storage Card/" + (fromJar ? "jna.jar" : "test.jar")).toURI().toURL()
+- : new File(BUILDDIR + (fromJar ? "/jna.jar" : "/classes")).toURI().toURL()},
++ : new File((fromJar ? "jna.jar" : "/classes")).toURI().toURL()},
+ new CloverLoader());
+ if (fromJar) {
+ assertJarExists();
+@@ -103,7 +103,7 @@ public class JNALoadTest extends TestCase implements Paths {
+ }
+ }
+
+- public void testAvoidResourcePathLoading() throws Exception {
++ public void noTestAvoidResourcePathLoading() throws Exception {
+ System.setProperty("jna.noclasspath", "true");
+ try {
+ Class<?> cls = Class.forName("com.sun.jna.Native", true, new TestLoader(false));
+@@ -118,7 +118,7 @@ public class JNALoadTest extends TestCase implements Paths {
+ }
+ }
+
+- public void testLoadAndUnloadFromJar() throws Exception {
++ public void noTestLoadAndUnloadFromJar() throws Exception {
+ if (Platform.isIntel() && (! Platform.is64Bit())) {
+ System.out.println("Skip " + getName() + " - it is known to be flaky and produces false positives on x86-32bit");
+ return;
+@@ -175,7 +175,7 @@ public class JNALoadTest extends TestCase implements Paths {
+ }
+
+ // GC Fails under OpenJDK(linux/ppc)
+- public void testLoadAndUnloadFromResourcePath() throws Exception {
++ public void noTestLoadAndUnloadFromResourcePath() throws Exception {
+ if (Platform.isIntel() && (! Platform.is64Bit())) {
+ System.out.println("Skip " + getName() + " - it is known to be flaky and produces false positives on x86-32bit");
+ return;
+@@ -231,7 +231,7 @@ public class JNALoadTest extends TestCase implements Paths {
+ }
+ }
+
+- public void testLoadFromUnicodePath() throws Exception {
++ public void noTestLoadFromUnicodePath() throws Exception {
+ if (Platform.isWindows()) {
+ String vendor = System.getProperty("java.vendor");
+ if (vendor != null) {
diff --git a/dev-java/jna/jna-4.2.2-r2.ebuild b/dev-java/jna/jna-4.2.2-r2.ebuild
deleted file mode 100644
index ea4a7b11f2ce..000000000000
--- a/dev-java/jna/jna-4.2.2-r2.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="net.java.dev.jna:jna:4.2.2"
-
-inherit java-pkg-2 java-ant-2 toolchain-funcs
-
-DESCRIPTION="Java Native Access (JNA)"
-HOMEPAGE="https://github.com/java-native-access/jna"
-SRC_URI="https://github.com/java-native-access/jna/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="4"
-KEYWORDS="~amd64 ~x86"
-IUSE="+awt +nio-buffers test"
-
-REQUIRED_USE="test? ( awt nio-buffers )"
-
-# The tests stall immediately on some systems (not current stable?) when
-# the sandbox is active but pass successfully otherwise. Chewi has not
-# been able to determine why. This began in 4.2.0 as 4.1.0 worked
-# fine. Someone bisect it please. :)
-RESTRICT="test"
-
-CDEPEND="dev-libs/libffi"
-DEPEND="${CDEPEND}
- virtual/jdk:1.8
- x11-libs/libXt
- test? (
- dev-java/ant-junit:0
- dev-java/guava:20
- dev-java/javassist:3
- dev-java/reflections:0
- )"
-RDEPEND="${CDEPEND}
- virtual/jre:1.8"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PV}-build.xml.patch
- "${FILESDIR}"/${PV}-makefile-flags.patch
-)
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="native jar contrib-jars"
-EANT_EXTRA_ARGS="-Ddynlink.native=true"
-EANT_TEST_EXTRA_ARGS="-Dheadless=true -Djava.io.tmpdir=${T}"
-EANT_TEST_GENTOO_CLASSPATH="guava-20,javassist-3,reflections"
-
-src_prepare() {
- default
-
- # delete bundled jars and copy of libffi
- # except native jars because build.xml needs them all
- find ! -path "./lib/native/*" -name "*.jar" -delete || die
- rm -r native/libffi || die
-
- if ! use awt ; then
- sed -i -E "s/^(CDEFINES=.*)/\1 -DNO_JAWT/g" native/Makefile || die
- fi
-
- if ! use nio-buffers ; then
- sed -i -E "s/^(CDEFINES=.*)/\1 -DNO_NIO_BUFFERS/g" native/Makefile || die
- fi
-
- java-pkg-2_src_prepare
-}
-
-src_configure() {
- tc-export CC
-}
-
-src_install() {
- java-pkg_newjar build/${PN}-min.jar
- java-pkg_dojar contrib/platform/dist/${PN}-platform.jar
- java-pkg_doso build/native-*/libjnidispatch.so
-
- use source && java-pkg_dosrc src/*
- use doc && java-pkg_dojavadoc doc/javadoc
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/jna/jna-5.13.0-r1.ebuild b/dev-java/jna/jna-5.13.0-r1.ebuild
new file mode 100644
index 000000000000..a09e852950df
--- /dev/null
+++ b/dev-java/jna/jna-5.13.0-r1.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="
+ 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:*
+ 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/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/jna/metadata.xml b/dev-java/jna/metadata.xml
index ceb3d23251bb..8e530dbd3fd1 100644
--- a/dev-java/jna/metadata.xml
+++ b/dev-java/jna/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
- <use>
- <flag name="awt">Enables support for Java AWT</flag>
- <flag name="nio-buffers">Enables support for NIO buffers</flag>
- </use>
<upstream>
- <remote-id type="github">twall/jna</remote-id>
+ <remote-id type="github">java-native-access/jna</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jnacl/Manifest b/dev-java/jnacl/Manifest
new file mode 100644
index 000000000000..499e45453758
--- /dev/null
+++ b/dev-java/jnacl/Manifest
@@ -0,0 +1 @@
+DIST jnacl-1.0.tar.gz 9485 BLAKE2B ecbe56d12d7cc53dfc87b2f332c1c4328946ca4ed0d4ec3b8fa22a2ea5d98a3acf51fb17e1d93d3d7831f98a36a3d657a904cb63b225da4a30b8e907cbfe8384 SHA512 b4f28b4bd6deb13c17e74f911f89e762c9111aa90474754f072df66f0ca4bd366dc8369f51404fbd4f6c5f55223bb98b6bfe3de78e2f6b5527509741008f2015
diff --git a/dev-java/jnacl/jnacl-1.0.ebuild b/dev-java/jnacl/jnacl-1.0.ebuild
new file mode 100644
index 000000000000..a21823be388d
--- /dev/null
+++ b/dev-java/jnacl/jnacl-1.0.ebuild
@@ -0,0 +1,51 @@
+# 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/neilalexander/jnacl/archive/refs/tags/v1.0.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jnacl-1.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.neilalexander:jnacl:1.0"
+# JAVA_TESTING_FRAMEWORKS="testng"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Pure Java implementation of NaCl: Networking and Cryptography library"
+HOMEPAGE="https://github.com/neilalexander/jnacl"
+SRC_URI="https://github.com/neilalexander/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+# We don't have fest-assert
+RESTRICT="test"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? org.easytesting:fest-assert:1.4 -> !!!groupId-not-found!!!
+# test? org.testng:testng:6.13.1 -> !!!groupId-not-found!!!
+
+DEPEND=">=virtual/jdk-1.8:*"
+# test? (
+# !!!groupId-not-found!!!
+# )
+#"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( LICENSE README.md )
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+# JAVA_TEST_GENTOO_CLASSPATH="!!!groupId-not-found!!!,!!!groupId-not-found!!!"
+# JAVA_TEST_SRC_DIR="src/test/java"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jnacl/metadata.xml b/dev-java/jnacl/metadata.xml
new file mode 100644
index 000000000000..4be1272c32fb
--- /dev/null
+++ b/dev-java/jnacl/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+ <longdescription>
+ Pure Java implementation of curve25519, salsa20, hsalsa20, xsalsa20 and poly1305 cryptographic primitives, along with a NaCl "Box" implementation
+ </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/jnlp-api/Manifest b/dev-java/jnlp-api/Manifest
deleted file mode 100644
index 3e3fce18b542..000000000000
--- a/dev-java/jnlp-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jnlp-api-6.0.18.tar.bz2 10518 BLAKE2B c5e9f1c3f14dac45c2bdd979844ff3a49f573c6a79010d3b412086a2496ca7429a8ecd6211224c934cba90f40f7cc903fe23715006570e5876a504070ac797d8 SHA512 e3b7ed5092255b665feac2c37341be81bd71c1f2c925851338f1dbfb05bf1e1a8f09f5fea63c08ca1e737db7072b6ee25ec55cfaa18789e40101d6930785209f
diff --git a/dev-java/jnlp-api/jnlp-api-6.0.18.ebuild b/dev-java/jnlp-api/jnlp-api-6.0.18.ebuild
deleted file mode 100644
index a5b656de4c1b..000000000000
--- a/dev-java/jnlp-api/jnlp-api-6.0.18.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JNLP API classes, repackaged from the icedtea-web fork of netx"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=56"
-SRC_URI="https://dev.gentoo.org/~caster/distfiles/${P}.tar.bz2"
-
-LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="source"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-src_install() {
- java-pkg_dojar ${PN}.jar
- use source && java-pkg_dosrc javax
-}
diff --git a/dev-java/jnlp-api/metadata.xml b/dev-java/jnlp-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jnlp-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jnr-a64asm/jnr-a64asm-1.0.0.ebuild b/dev-java/jnr-a64asm/jnr-a64asm-1.0.0.ebuild
index a1c6f07ac18e..998ea27aa3f3 100644
--- a/dev-java/jnr-a64asm/jnr-a64asm-1.0.0.ebuild
+++ b/dev-java/jnr-a64asm/jnr-a64asm-1.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/jnr/${PN}/archive/refs/tags/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="2"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND="
>=virtual/jdk-1.8:*
diff --git a/dev-java/jnr-a64asm/metadata.xml b/dev-java/jnr-a64asm/metadata.xml
index 0d49beafc75d..75321cfb5598 100644
--- a/dev-java/jnr-a64asm/metadata.xml
+++ b/dev-java/jnr-a64asm/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jnr-constants/Manifest b/dev-java/jnr-constants/Manifest
index 53a190cc279d..4d84788ddc47 100644
--- a/dev-java/jnr-constants/Manifest
+++ b/dev-java/jnr-constants/Manifest
@@ -1 +1 @@
-DIST jnr-constants-0.8.6.tar.gz 71080 BLAKE2B db86f3c0347b85dd56de72465c4198e74faa877b8a1373ab378728945edaf0c45748ed707e6b591224858f498ae7d43269d8127cb61b7ac2893ef9817e36ca1c SHA512 2098f8e1869b9c018ba3afa70ef386fce2609d9c650ee851dcd7cf7dc9d4d87dbe26886eb2e744d96cc11425f6b66144a018826360b7bab48a4b99e323f3717a
+DIST jnr-constants-0.10.4.tar.gz 261915 BLAKE2B 61ed310837a27cd5a03627db6d9a2c46874f9140d046ac653c6deb6409411ab69b6103c52aab64fff99a311fc9d9e85bf97bd361291e13685d836cdf7253993c SHA512 4ab82699e58523a5f3dbc5cfba333569a605e9d3fafe828fed726aa8fe08de0aba32af431d53565ed19b67f08a63b7a28d533617aa424f95b552e3d6ec3994cb
diff --git a/dev-java/jnr-constants/files/jnr-constants_maven-build.xml b/dev-java/jnr-constants/files/jnr-constants_maven-build.xml
deleted file mode 100644
index 75f8458ee2c2..000000000000
--- a/dev-java/jnr-constants/files/jnr-constants_maven-build.xml
+++ /dev/null
@@ -1,259 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 1/11/12 12:52 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jnr-constants-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jnr-constants-0.8.2"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.8.2"/>
- <get src="http://repository.jboss.com/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://snapshots.jboss.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repository.jboss.org/maven2//junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://repository.jboss.org/nexus/content/groups/public-jboss//junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo1.maven.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jnr-constants/jnr-constants-0.10.4.ebuild b/dev-java/jnr-constants/jnr-constants-0.10.4.ebuild
new file mode 100644
index 000000000000..a4db1ae9b528
--- /dev/null
+++ b/dev-java/jnr-constants/jnr-constants-0.10.4.ebuild
@@ -0,0 +1,29 @@
+# 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.github.jnr:jnr-constants:0.10.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A set of platform constants (e.g. errno values)"
+HOMEPAGE="https://github.com/jnr/jnr-constants"
+SRC_URI="https://github.com/jnr/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.jnrproject.constants"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/jnr-constants/jnr-constants-0.8.6.ebuild b/dev-java/jnr-constants/jnr-constants-0.8.6.ebuild
deleted file mode 100644
index 3f8c33be960e..000000000000
--- a/dev-java/jnr-constants/jnr-constants-0.8.6.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A set of platform constants (e.g. errno values)"
-HOMEPAGE="https://github.com/jnr/jnr-constants"
-# SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-SRC_URI="https://github.com/jnr/${PN}/archive/${P}.tar.gz"
-
-LICENSE="|| ( Apache-2.0 LGPL-3 )"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- >=dev-java/junit-4.8:4
- )"
-
-S="${WORKDIR}/${PN}-${P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die
-}
-
-JAVA_ANT_ENCODING="UTF-8"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
-EANT_TEST_GENTOO_CLASSPATH="junit-4"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/jnr-constants/metadata.xml b/dev-java/jnr-constants/metadata.xml
index 337019727399..e3b0a4e7b0f0 100644
--- a/dev-java/jnr-constants/metadata.xml
+++ b/dev-java/jnr-constants/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jnr-enxio/Manifest b/dev-java/jnr-enxio/Manifest
deleted file mode 100644
index 8d474e4d53be..000000000000
--- a/dev-java/jnr-enxio/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jnr-enxio-0.7.tar.gz 10520 BLAKE2B 762c36ad59473d6be4f2c2b8c62ce489fe46ce30afe9b32101aa41ab703c50247cfa0908499f8c2fa79c2ac8c33972abe203984c5cbbe5111416e4684e4c79ed SHA512 ed8c13ae4de2334aa9ddd9a13534e0c49fb1bde48e3bd5085a62c96f2b9fe6970b4ba08fe6b27901c5e6db1b360511265ac276ca56f89fddf5e18db9726bd834
diff --git a/dev-java/jnr-enxio/files/jnr-enxio-0.7-build.xml b/dev-java/jnr-enxio/files/jnr-enxio-0.7-build.xml
deleted file mode 100644
index efdb518451e1..000000000000
--- a/dev-java/jnr-enxio/files/jnr-enxio-0.7-build.xml
+++ /dev/null
@@ -1,320 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 6/6/13 12:27 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jnr-enxio-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jnr-enxio-0.7"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.11"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/junit/junit/4.11/junit-4.11.jar"
- dest="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.11/junit-4.11.jar"
- dest="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- dest="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- dest="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jffi/1.2.7"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jffi/1.2.7"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm/4.0/asm-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm/4.0/asm-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-commons/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-tree/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-util/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jnr-enxio/jnr-enxio-0.7-r1.ebuild b/dev-java/jnr-enxio/jnr-enxio-0.7-r1.ebuild
deleted file mode 100644
index a5257b885a5e..000000000000
--- a/dev-java/jnr-enxio/jnr-enxio-0.7-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java Native Runtime Enhanced X-platform I/O"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-HOMEPAGE="https://github.com/jnr/jnr-enxio"
-
-SLOT="0"
-KEYWORDS="amd64 x86"
-LICENSE="Apache-2.0"
-
-CDEPEND="dev-java/jnr-constants:0
- dev-java/jnr-ffi:2"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="jnr-constants,jnr-ffi-2"
-
-src_install() {
- java-pkg_newjar target/${P}.jar ${PN}.jar
-
- use source && java-pkg_dosrc src/main/java/jnr
- use examples && java-pkg_doexamples src/main/java/jnr/enxio/example
- use doc && java-pkg_dojavadoc target/site/apidocs
-}
diff --git a/dev-java/jnr-enxio/metadata.xml b/dev-java/jnr-enxio/metadata.xml
deleted file mode 100644
index 8dadb2bd8904..000000000000
--- a/dev-java/jnr-enxio/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jnr/jnr-enxio</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jnr-ffi/Manifest b/dev-java/jnr-ffi/Manifest
index 4955244d4391..cfbd2c1ca16d 100644
--- a/dev-java/jnr-ffi/Manifest
+++ b/dev-java/jnr-ffi/Manifest
@@ -1 +1 @@
-DIST jnr-ffi-2.0.2.tar.gz 170707 BLAKE2B fc4f1dcea51939b6098b980b4962380e58ba590ea9d4cdba7823c1372bd645d985ae25d8ebf1f0b575a0e4b5c192e5595094076d3cd44e4bb3c077dd838c170f SHA512 80a932408f5ceaf19fd7a399b786aa0d7b9251ea144bc2755bcf3cdc3aea85615a1faa001bbcd3072bc0eead2aaa30d0bbead5f96c82c4b9e455c1ed1379b4c0
+DIST jnr-ffi-2.2.12.tar.gz 285324 BLAKE2B 32e866654b901ded7cdc82999d79873d49bd9d3599d265e9d029e7cf8ce1895f9e830a1af75b8c149c3debc5f3d256f6241d706ecbd94277ce1fa49a2868885c SHA512 420adb647c5d0547f0b18e4f8a21096da9aaebbdf0e50761ec1fd6be64ad29649c7af4d6daf0a8c4c38e02a05e0df836de6fdb7776f10c02d8bfd447a11882b3
diff --git a/dev-java/jnr-ffi/files/jnr-ffi-2.0.2-junit48.patch b/dev-java/jnr-ffi/files/jnr-ffi-2.0.2-junit48.patch
deleted file mode 100644
index 92b4cb2bcfc3..000000000000
--- a/dev-java/jnr-ffi/files/jnr-ffi-2.0.2-junit48.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/test/java/jnr/ffi/ObjectReferenceManagerTest.java
-+++ b/src/test/java/jnr/ffi/ObjectReferenceManagerTest.java
-@@ -35,7 +35,7 @@
- Pointer ptr = referenceManager.add(bar);
- Pointer ptr2 = referenceManager.add(bar2);
- assertNotSame(ptr, ptr2);
-- assertNotEquals(ptr, ptr2);
-+ assertTrue(!ptr.equals(ptr2));
- assertSame(bar, referenceManager.get(ptr));
- assertSame(bar2, referenceManager.get(ptr2));
- }
diff --git a/dev-java/jnr-ffi/files/jnr-ffi_maven-build.xml b/dev-java/jnr-ffi/files/jnr-ffi_maven-build.xml
deleted file mode 100644
index 0337f347bec0..000000000000
--- a/dev-java/jnr-ffi/files/jnr-ffi_maven-build.xml
+++ /dev/null
@@ -1,250 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 1/9/12 11:18 AM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jnr-ffi-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jnr-ffi-0.6.0"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm/3.2/asm-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-commons/3.2/asm-commons-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-analysis/3.2/asm-analysis-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-tree/3.2/asm-tree-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-util/3.2/asm-util-3.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.1/jnr-x86asm-1.0.1.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11-native.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm/3.2/asm-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-commons/3.2/asm-commons-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-analysis/3.2/asm-analysis-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-tree/3.2/asm-tree-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-util/3.2/asm-util-3.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.1/jnr-x86asm-1.0.1.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <!-- removed -->
- </target>
-
-</project>
diff --git a/dev-java/jnr-ffi/jnr-ffi-2.0.2.ebuild b/dev-java/jnr-ffi/jnr-ffi-2.0.2.ebuild
deleted file mode 100644
index c5807844d596..000000000000
--- a/dev-java/jnr-ffi/jnr-ffi-2.0.2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="An abstracted interface to invoking native functions from java"
-HOMEPAGE="https://github.com/jnr/jnr-ffi"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( Apache-2.0 LGPL-3 )"
-SLOT="2"
-KEYWORDS="amd64 ~arm64 x86"
-
-COMMON_DEP="
- dev-java/jffi:1.2
- dev-java/jnr-x86asm:1.0
- dev-java/asm:4"
-
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.5"
-
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.5
- test? (
- dev-java/ant-junit:0
- >=dev-java/junit-4.8:4
- )"
-
-java_prepare() {
- cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die
- epatch "${FILESDIR}"/${P}-junit48.patch
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS="${JAVA_ANT_CLASSPATH_TAGS} javadoc"
-JAVA_ANT_ENCODING="UTF-8"
-
-EANT_GENTOO_CLASSPATH="asm-4,jffi-1.2,jnr-x86asm-1.0"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
-
-src_test() {
- # build native test library
- emake BUILD_DIR=build -f libtest/GNUmakefile
-
- _JAVA_OPTIONS="-Djnr.ffi.library.path=build" \
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/jnr-ffi/jnr-ffi-2.2.12.ebuild b/dev-java/jnr-ffi/jnr-ffi-2.2.12.ebuild
new file mode 100644
index 000000000000..7020f2331029
--- /dev/null
+++ b/dev-java/jnr-ffi/jnr-ffi-2.2.12.ebuild
@@ -0,0 +1,47 @@
+# 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/jnr/jnr-ffi/archive/jnr-ffi-2.2.12.tar.gz --slot 2 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild jnr-ffi-2.2.12.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.github.jnr:jnr-ffi:2.2.12"
+# We don't have junit-jupiter yet
+# JAVA_TESTING_FRAMEWORKS="junit-jupiter"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A library for invoking native functions from java"
+HOMEPAGE="https://github.com/jnr/jnr-ffi"
+SRC_URI="https://github.com/jnr/${PN}/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/asm:9
+ >=dev-java/jffi-1.3.8:1.3
+ dev-java/jnr-a64asm:2
+ dev-java/jnr-x86asm:1.0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+# JAVA_TEST_GENTOO_CLASSPATH="!!!groupId-not-found!!!"
+# JAVA_TEST_SRC_DIR="src/test/java"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jnr-ffi/metadata.xml b/dev-java/jnr-ffi/metadata.xml
index 8554bb04eb46..4db2706797db 100644
--- a/dev-java/jnr-ffi/metadata.xml
+++ b/dev-java/jnr-ffi/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jnr-netdb/Manifest b/dev-java/jnr-netdb/Manifest
index 1ca6fa73f8ea..e22f9d59deea 100644
--- a/dev-java/jnr-netdb/Manifest
+++ b/dev-java/jnr-netdb/Manifest
@@ -1 +1 @@
-DIST jnr-netdb-1.1.4.tar.gz 648347 BLAKE2B 08953f93fe4a6146dfc77c463e07a8b9f6e784ffc26165d7409a623756733a7598b4d0a3fa55302b5f9b01c870cee3062f310c74e20f6a8a11ff1b41d38a0d7a SHA512 949a744b1d443cde564a2582baf7b4323c721417f32a45fd7413f791823cac5877bef62ed0d3079345631b908a581a1acf83dd00a926f87ebbd8e61d38a20195
+DIST jnr-netdb-1.2.0.tar.gz 649059 BLAKE2B 660074d3a0d201784bddb259796ee4bb87a3579d6ffffcb5c3bf171d34e525c768c8c9282d8a99c250282d108011c0cf4bc9b8cf32dc7f3edc7e0a2b1cbaf9d4 SHA512 6eeb21d42b1eb7c0beed4f263c3440c7e5ae15f76365fb189fc8727c824e01d92662564ae641e1233ec0df68f6761c3c31a8a61891de59a524c213959bd32856
diff --git a/dev-java/jnr-netdb/files/jnr-netdb_maven-build.xml b/dev-java/jnr-netdb/files/jnr-netdb_maven-build.xml
deleted file mode 100644
index 9f4dfef15335..000000000000
--- a/dev-java/jnr-netdb/files/jnr-netdb_maven-build.xml
+++ /dev/null
@@ -1,231 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/28/12 5:31 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jnr-netdb-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jnr-netdb"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- </target>
-
-</project>
diff --git a/dev-java/jnr-netdb/jnr-netdb-1.1.4-r1.ebuild b/dev-java/jnr-netdb/jnr-netdb-1.1.4-r1.ebuild
deleted file mode 100644
index 447a17513133..000000000000
--- a/dev-java/jnr-netdb/jnr-netdb-1.1.4-r1.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Network services database access for java"
-HOMEPAGE="https://github.com/jnr/jnr-netdb"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.0"
-KEYWORDS="amd64 ~arm64 x86"
-
-COMMON_DEP="
- dev-java/jnr-ffi:2"
-
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.8:*"
-
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.8:*
- test? (
- dev-java/ant-junit
- dev-java/junit:4
- )"
-
-src_prepare() {
- default
- find -name '*.jar' -exec rm -v {} + || die
-
- cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS="${JAVA_ANT_CLASSPATH_TAGS} javadoc"
-JAVA_ANT_ENCODING="UTF-8"
-
-EANT_GENTOO_CLASSPATH="jnr-ffi-2"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
- dodoc README
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/jnr-netdb/jnr-netdb-1.2.0.ebuild b/dev-java/jnr-netdb/jnr-netdb-1.2.0.ebuild
new file mode 100644
index 000000000000..23bbacedb948
--- /dev/null
+++ b/dev-java/jnr-netdb/jnr-netdb-1.2.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 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="Network services database access for java"
+HOMEPAGE="https://github.com/jnr/jnr-netdb"
+SRC_URI="https://github.com/jnr/jnr-netdb/archive/jnr-netdb-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="1.0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/jnr-ffi:2"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jnr-netdb/metadata.xml b/dev-java/jnr-netdb/metadata.xml
index b9e170aa3d0d..b5c614a85200 100644
--- a/dev-java/jnr-netdb/metadata.xml
+++ b/dev-java/jnr-netdb/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jnr-posix/Manifest b/dev-java/jnr-posix/Manifest
index 8d1346b1a5b2..b71b1747be9a 100644
--- a/dev-java/jnr-posix/Manifest
+++ b/dev-java/jnr-posix/Manifest
@@ -1 +1 @@
-DIST jnr-posix-3.0.10.tar.gz 85912 BLAKE2B b87ff78ccf10718bd1faf9e308421ba3ab5e90dee5e244fb1b7f53592da8ad98973cc50e6469bcea59e1202ee82b3f77522eb95e23584ff70cc66099ef1c4266 SHA512 a282c164b0b9ace8aba508a48d08d53beb0ddcd4baf5389412941a1e1430d75df9bdd35935a6982d4bb1910c0fdad55910ba028b1b5388c55e19a6c4ed2ba6a1
+DIST jnr-posix-3.1.16.tar.gz 120553 BLAKE2B b430d4699b84e9c4139291c34c328ade600adade68081167d3b47ce52caa6f96a818702dcb26652d186d7de825b32b00f2f1329b79f9c459cbbb6f6a4260d9f3 SHA512 988221a9a499db64c2bc3fe4e798fb77ce1bce44a31b51ace4f1e52b9a76a3af9a1521477a64413b44f36da9ab5446feb1b2ffd4e7dc50be055f6092d9e1f977
diff --git a/dev-java/jnr-posix/files/jnr-posix_maven-build.xml b/dev-java/jnr-posix/files/jnr-posix_maven-build.xml
deleted file mode 100644
index 82260e156394..000000000000
--- a/dev-java/jnr-posix/files/jnr-posix_maven-build.xml
+++ /dev/null
@@ -1,256 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 1/9/12 10:58 AM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jnr-posix-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jnr-posix-2.0"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-ffi/0.6.0/jnr-ffi-0.6.0.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11-native.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm/3.2/asm-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-commons/3.2/asm-commons-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-analysis/3.2/asm-analysis-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-tree/3.2/asm-tree-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-util/3.2/asm-util-3.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.1/jnr-x86asm-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.2/jnr-constants-0.8.2.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-ffi/0.6.0/jnr-ffi-0.6.0.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.0.11/jffi-1.0.11-native.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm/3.2/asm-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-commons/3.2/asm-commons-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-analysis/3.2/asm-analysis-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-tree/3.2/asm-tree-3.2.jar"/>
- <pathelement location="${maven.repo.local}/asm/asm-util/3.2/asm-util-3.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.1/jnr-x86asm-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.2/jnr-constants-0.8.2.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.1"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- manifest="MANIFEST.MF"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <!-- removed -->
- </target>
-
-</project>
diff --git a/dev-java/jnr-posix/jnr-posix-3.0.10.ebuild b/dev-java/jnr-posix/jnr-posix-3.0.10.ebuild
deleted file mode 100644
index d42fb953dfb4..000000000000
--- a/dev-java/jnr-posix/jnr-posix-3.0.10.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Lightweight cross-platform POSIX emulation layer for Java"
-HOMEPAGE="https://github.com/jnr/jnr-posix"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( CPL-1.0 GPL-2 LGPL-2.1 )"
-SLOT="3.0"
-KEYWORDS="amd64 ~arm64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-
-CDEPEND="dev-java/jnr-constants:0
- dev-java/jnr-ffi:2"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- test? (
- dev-java/ant-junit
- dev-java/junit:4
- )"
-
-java_prepare() {
- cp "${FILESDIR}"/${PN}_maven-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS="${JAVA_ANT_CLASSPATH_TAGS} javadoc"
-JAVA_ANT_ENCODING="UTF-8"
-
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
-EANT_GENTOO_CLASSPATH="jnr-constants,jnr-ffi-2"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
- dodoc README.txt
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/jnr-posix/jnr-posix-3.1.16.ebuild b/dev-java/jnr-posix/jnr-posix-3.1.16.ebuild
new file mode 100644
index 000000000000..dde31b7e4fa4
--- /dev/null
+++ b/dev-java/jnr-posix/jnr-posix-3.1.16.ebuild
@@ -0,0 +1,95 @@
+# 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.github.jnr:jnr-posix:3.1.16"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Common cross-project/cross-platform POSIX APIs"
+HOMEPAGE="https://github.com/jnr/jnr-posix"
+SRC_URI="https://github.com/jnr/${PN}/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="EPL-2.0 GPL-2 LGPL-2.1"
+SLOT="3.0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/jnr-ffi-2.2.12:2
+ dev-java/jnr-constants:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.jnrproject.posix"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -i src/test/java/jnr/posix/FileTest.java || die
+
+ if use ppc64; then
+ # Ignore testMessageHdrMultipleControl
+ # https://bugs.gentoo.org/866199
+ # https://github.com/jnr/jnr-posix/issues/178
+ sed \
+ -e '/testMessageHdrMultipleControl/i @Ignore' \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -i src/test/java/jnr/posix/LinuxPOSIXTest.java || die
+ fi
+
+ if use arm; then
+ # https://bugs.gentoo.org/866692
+ sed \
+ -e '/utimensatRelativePath()/i @Ignore' \
+ -e '/utimesDefaultValuesTest()/i @Ignore' \
+ -e '/futimeTest()/i @Ignore' \
+ -e '/utimesTest()/i @Ignore' \
+ -e '/utimesPointerTest()/i @Ignore' \
+ -e '/utimensatAbsolutePath()/i @Ignore' \
+ -e '/futimens()/i @Ignore' \
+ -i src/test/java/jnr/posix/FileTest.java || die
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/ioprioThreadedTest()/i @Ignore' \
+ -e '/testPosixFadvise()/i @Ignore' \
+ -i src/test/java/jnr/posix/LinuxPOSIXTest.java || die
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testSetRlimitPointerLinux()/i @Ignore' \
+ -e '/testGetRLimitPointer()/i @Ignore' \
+ -i src/test/java/jnr/posix/ProcessTest.java || die
+ fi
+
+ JAVA_TEST_EXCLUDES=(
+ # https://github.com/jnr/jnr-posix/blob/jnr-posix-3.1.16/pom.xml#L185
+ # <exclude>**/windows/*Test.java</exclude>
+ "jnr.posix.windows.WindowsFileTest"
+ "jnr.posix.windows.WindowsHelpersTest"
+ )
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if [[ "${vm_version}" -ge "17" ]] ; then
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.io=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.util=ALL-UNNAMED )
+ # Some tests in jnr.posix.FileTest fail with jdk-17
+ sed \
+ -e '/flockTest()/i @Ignore' \
+ -e '/dupTest()/i @Ignore' \
+ -e '/closeTest()/i @Ignore' \
+ -e '/fcntlDupfdWithArgTest()/i @Ignore' \
+ -i src/test/java/jnr/posix/FileTest.java || die
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jnr-posix/metadata.xml b/dev-java/jnr-posix/metadata.xml
index e649bf08d80f..2e265dd4fd16 100644
--- a/dev-java/jnr-posix/metadata.xml
+++ b/dev-java/jnr-posix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jnr-unixsocket/Manifest b/dev-java/jnr-unixsocket/Manifest
deleted file mode 100644
index 1ef26ed91003..000000000000
--- a/dev-java/jnr-unixsocket/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jnr-unixsocket-0.6.tar.gz 6756 BLAKE2B a011f3f660526b0a7e4973a5e2168f9b0ee8a408ad2c9c1b622d9aae7659d915e258a0588f010fb56e0ac5740590b89988d77579884930f70675aff4ffe056bf SHA512 93ceb4f90b259c94eb0a68f13da1bbdae547b77637102fc36b9aa4427ed079bca1e9d503579c52cb4ea591bf67df30efcb99c6c4d71e7545cc6ff35f5ca65249
diff --git a/dev-java/jnr-unixsocket/files/jnr-unixsocket-0.6-build.xml b/dev-java/jnr-unixsocket/files/jnr-unixsocket-0.6-build.xml
deleted file mode 100644
index 4ef23a7785e3..000000000000
--- a/dev-java/jnr-unixsocket/files/jnr-unixsocket-0.6-build.xml
+++ /dev/null
@@ -1,321 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 6/6/13 12:11 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="jnr-unixsocket-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="jnr-unixsocket-0.6"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-enxio/0.4/jnr-enxio-0.4.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"/>
- <pathelement location="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"/>
- <pathelement location="${maven.repo.local}/com/github/jnr/jnr-enxio/0.4/jnr-enxio-0.4.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.8.2"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.8.2/junit-4.8.2.jar"
- dest="${maven.repo.local}/junit/junit/4.8.2/junit-4.8.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-ffi/1.0.3/jnr-ffi-1.0.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jffi/1.2.7"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jffi/1.2.7"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- dest="${maven.repo.local}/com/github/jnr/jffi/1.2.7/jffi-1.2.7-native.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm/4.0/asm-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm/4.0/asm-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm/4.0/asm-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-commons/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-commons/4.0/asm-commons-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-analysis/4.0/asm-analysis-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-tree/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-tree/4.0/asm-tree-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/org/ow2/asm/asm-util/4.0"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- dest="${maven.repo.local}/org/ow2/asm/asm-util/4.0/asm-util-4.0.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-x86asm/1.0.2/jnr-x86asm-1.0.2.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-constants/0.8.4/jnr-constants-0.8.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/com/github/jnr/jnr-enxio/0.4"/>
- <get src="https://oss.sonatype.org/content/repositories/snapshots/com/github/jnr/jnr-enxio/0.4/jnr-enxio-0.4.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-enxio/0.4/jnr-enxio-0.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/com/github/jnr/jnr-enxio/0.4/jnr-enxio-0.4.jar"
- dest="${maven.repo.local}/com/github/jnr/jnr-enxio/0.4/jnr-enxio-0.4.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/jnr-unixsocket/jnr-unixsocket-0.6-r1.ebuild b/dev-java/jnr-unixsocket/jnr-unixsocket-0.6-r1.ebuild
deleted file mode 100644
index 4b92a5c3baaa..000000000000
--- a/dev-java/jnr-unixsocket/jnr-unixsocket-0.6-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Unix sockets for Java"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-HOMEPAGE="https://github.com/jnr/jnr-unixsocket"
-
-SLOT="0"
-KEYWORDS="amd64 x86"
-LICENSE="Apache-2.0"
-
-CDEPEND="dev-java/jnr-constants:0
- dev-java/jnr-enxio:0
- dev-java/jnr-posix:3.0
- dev-java/jnr-ffi:2"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="jnr-constants,jnr-enxio,jnr-ffi-2,jnr-posix-3.0"
-
-src_install() {
- java-pkg_newjar target/${P}.jar ${PN}.jar
-
- use source && java-pkg_dosrc src/main/java/jnr
- use examples && java-pkg_doexamples src/main/java/jnr/unixsocket/example
- use doc && java-pkg_dojavadoc target/site/apidocs
-}
diff --git a/dev-java/jnr-unixsocket/metadata.xml b/dev-java/jnr-unixsocket/metadata.xml
deleted file mode 100644
index 1b1cbe76af50..000000000000
--- a/dev-java/jnr-unixsocket/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jnr/jnr-unixsocket</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jnr-x86asm/Manifest b/dev-java/jnr-x86asm/Manifest
index cc78e6837ed6..324db797fe04 100644
--- a/dev-java/jnr-x86asm/Manifest
+++ b/dev-java/jnr-x86asm/Manifest
@@ -1 +1 @@
-DIST jnr-x86asm-1.0.2.zip 180046 BLAKE2B f346357dadaf4727e061ae4f11cb4a2fcb0aac7056c1ddc902c1779a0aa323ed47a90b7a7fef1148e4aefba2f003853d10718ae01ddcaffeb2b5b6d80d362b83 SHA512 e77124b7f0074dcd8b17ba200a1c99350827e6a3c641d6caa33b6bd900c95af9140f8ab716a5299bc591969f295158709b381f9b45faddbd6b75355949e4f463
+DIST jnr-x86asm-1.0.2.tar.gz 114138 BLAKE2B 4fd5d331e271e03771c1165823a3852b0ea9f5c45df26c7a009d356173050aabf99a7ef5a17559ef8fc907e521f8fae96b048867703bc901504fa21bcd24c3d1 SHA512 e3ad28b2d6be36b9e9d3e20bbe5cc6bf98361372fa02a40d0bbf64437fca351c3dac5cb04dfc8c2f08d73b9bffc8ca69276fb6a6fc00c7cc5cc3cf08fa2b6463
diff --git a/dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r1.ebuild b/dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r1.ebuild
deleted file mode 100644
index 4cf9bc564824..000000000000
--- a/dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="com.github.jnr:jnr-x86asm:1.0.2"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A pure-java port of asmjit"
-HOMEPAGE="https://github.com/jnr/jnr-x86asm"
-SRC_URI="https://github.com/jnr/${PN}/archive/${PV}.zip -> ${P}.zip"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src/main/java"
-JAVA_ANT_ENCODING="UTF-8"
diff --git a/dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r2.ebuild b/dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r2.ebuild
new file mode 100644
index 000000000000..d6d1682c2b7f
--- /dev/null
+++ b/dev-java/jnr-x86asm/jnr-x86asm-1.0.2-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.github.jnr:jnr-x86asm:1.0.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A pure-java port of asmjit"
+HOMEPAGE="https://github.com/jnr/jnr-x86asm"
+SRC_URI="https://github.com/jnr/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+IUSE=""
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_ANT_ENCODING="UTF-8"
diff --git a/dev-java/jnr-x86asm/metadata.xml b/dev-java/jnr-x86asm/metadata.xml
index 49236c1e21dc..bbd623926263 100644
--- a/dev-java/jnr-x86asm/metadata.xml
+++ b/dev-java/jnr-x86asm/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/joda-convert/Manifest b/dev-java/joda-convert/Manifest
index c79515207e11..aa51e39d0cff 100644
--- a/dev-java/joda-convert/Manifest
+++ b/dev-java/joda-convert/Manifest
@@ -1 +1 @@
-DIST joda-convert-1.3.1-dist.tar.gz 131288 BLAKE2B 0b7b6cebb7e13e89d838ec10c4edd54b52bf3449b3003cd41ea2628719b8ea52bc00a8681a96fad0de79b4acd56fc4a8d4a31d558841fa268d9ffbeb97ca1ed0 SHA512 ee3f7264e9ee445dd8cf088c862809faceb012d317c4974d2312e1ce9b580193096259978a79cdefc2217818600ff38569348625986e19bdb753edb03ba58451
+DIST joda-convert-2.2.2.tar.gz 65476 BLAKE2B 9ef8e3b172d31f4e3b748ba5aae807b1d344c3b6bedeb0bf0b84b93009171495f271d03cd9f7b29147a256ddd1081b3fc9640c1df6b45425080ce1d44e2c0f37 SHA512 9660491373d5f7d415ab47cec7164922fc8901803e759bbf8cf7d0cc58040c2c8b245271f33d641a563ffb25b8e42f8197e297da7d1fe68a5c50ebb61536f3ae
diff --git a/dev-java/joda-convert/files/joda-convert-1.3.1-build.xml b/dev-java/joda-convert/files/joda-convert-1.3.1-build.xml
deleted file mode 100644
index c66dfec9c1d7..000000000000
--- a/dev-java/joda-convert/files/joda-convert-1.3.1-build.xml
+++ /dev/null
@@ -1,248 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/9/13 4:18 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="joda-convert-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="joda-convert-1.3.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.5/junit-4.5.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="true"
- deprecation="false"
- target="1.6"
- verbose="true"
- fork="true"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.0}">
- <include name="LICENSE.txt"/>
- <include name="NOTICE.txt"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="true"
- deprecation="false"
- target="1.6"
- verbose="true"
- fork="true"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- encoding="UTF-8"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="true"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/6/docs/api/"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- manifest="src/conf/MANIFEST.MF"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/4.5"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/4.5/junit-4.5.jar"
- dest="${maven.repo.local}/junit/junit/4.5/junit-4.5.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/joda-convert/joda-convert-1.3.1-r1.ebuild b/dev-java/joda-convert/joda-convert-1.3.1-r1.ebuild
deleted file mode 100644
index 80b986790cd2..000000000000
--- a/dev-java/joda-convert/joda-convert-1.3.1-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java library for conversion between Object and String"
-HOMEPAGE="https://www.joda.org/joda-convert/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-dist.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-DEPEND="virtual/jdk:1.8
- test? (
- dev-java/junit:4
- dev-java/ant-junit:0
- )"
-RDEPEND=">=virtual/jre-1.8"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_TEST_GENTOO_CLASSPATH="junit-4"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
-
-src_prepare() {
- default
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
- dodoc NOTICE.txt RELEASE-NOTES.txt
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/joda-convert/joda-convert-2.2.2-r2.ebuild b/dev-java/joda-convert/joda-convert-2.2.2-r2.ebuild
new file mode 100644
index 000000000000..ead8e8b640ec
--- /dev/null
+++ b/dev-java/joda-convert/joda-convert-2.2.2-r2.ebuild
@@ -0,0 +1,65 @@
+# 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/JodaOrg/joda-convert/archive/refs/tags/v2.2.2.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild joda-convert-2.2.2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.joda:joda-convert:2.2.2"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Library to convert Objects to and from String"
+HOMEPAGE="https://www.joda.org/joda-convert/"
+SRC_URI="https://github.com/JodaOrg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.google.guava:guava:31.0.1-jre -> !!!suitable-mavenVersion-not-found!!!
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+
+DEPEND="
+ >=virtual/jdk-11:*
+ test? (
+ dev-java/guava:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( {NOTICE,RELEASE-NOTES}.txt README.md )
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+JAVA_TEST_EXCLUDES=(
+ # Upstream: Tests run: 186, Failures: 0, Errors: 0, Skipped: 0
+ # All following: No runnable methods
+ org.joda.convert.test1.Test1Class
+ org.joda.convert.test1.Test1Interface
+ org.joda.convert.test2.Test2Class
+ org.joda.convert.test2.Test2Factory
+ org.joda.convert.test2.Test2Interface
+ org.joda.convert.test3.Test3Class
+ org.joda.convert.test3.Test3Factory
+ org.joda.convert.test3.Test3Interface
+ org.joda.convert.test3.Test3SuperClass
+ org.joda.convert.test4.Test4Class
+ org.joda.convert.test4.Test4Factory
+ org.joda.convert.test4.Test4Interface
+ org.joda.convert.TestRenameHandlerBadInit
+)
diff --git a/dev-java/joda-convert/metadata.xml b/dev-java/joda-convert/metadata.xml
index 50873a696170..9286c1123b77 100644
--- a/dev-java/joda-convert/metadata.xml
+++ b/dev-java/joda-convert/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="sourceforge">joda-convert</remote-id>
+ <remote-id type="github">JodaOrg/joda-convert</remote-id>
+ <bugs-to>https://github.com/JodaOrg/joda-convert/issues</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/joda-time/Manifest b/dev-java/joda-time/Manifest
index a0252fc34687..9acad90f89bc 100644
--- a/dev-java/joda-time/Manifest
+++ b/dev-java/joda-time/Manifest
@@ -1 +1 @@
-DIST joda-time-2.10.10.tar.gz 1052384 BLAKE2B 656efddf6b98f10ce6729c6fa4c76ddfeb86dd94971c2637af3ddcb8a3a47f83948dbd58b04a6249445ef2857c5c5edb994a6d56349ed4ff4130ce9aaebd57e9 SHA512 e7917fd28cd10d7fbee02016b1f13a15a80af099b952cc0e8978bfc7fa389109553804670492c206f2b49bcf910ea093fc1838cb45ce4b7a3a885aac2aaf5943
+DIST joda-time-2.11.2.tar.gz 1055885 BLAKE2B 52281dcb530734dd33d0c01b07c9fbc5e7afd507a97e6926f7ef442dc91907d999d126289bc609e6fabf6af4267e47e5a79452d462a3f0561c405e6cd7f5976f SHA512 ea43deea4ef751fc631c35589adec0c5d9d0a5c836c1a24ada5d994cb9310a55b5af69260afd2647516c64fc84b892a2e25fca4bb38e852982c40f7caa5858b3
diff --git a/dev-java/joda-time/files/joda-time-2.11.0-test.patch b/dev-java/joda-time/files/joda-time-2.11.0-test.patch
new file mode 100644
index 000000000000..a74cd01edfbc
--- /dev/null
+++ b/dev-java/joda-time/files/joda-time-2.11.0-test.patch
@@ -0,0 +1,14 @@
+--- a/src/test/java/org/joda/time/TestDateTimeZone.java
++++ b/src/test/java/org/joda/time/TestDateTimeZone.java
+@@ -778,9 +778,10 @@ public class TestDateTimeZone extends TestCase {
+ static final boolean JDK9;
+ static {
+ boolean jdk9 = true;
++ System.out.println("java.version = " + System.getProperty("java.version") );
+ try {
+ String str = System.getProperty("java.version");
+- jdk9 = str.startsWith("9");
++ jdk9 = str.startsWith("11");
+ } catch (Exception ex) {
+ jdk9 = false;
+ }
diff --git a/dev-java/joda-time/joda-time-2.10.10-r1.ebuild b/dev-java/joda-time/joda-time-2.10.10-r1.ebuild
deleted file mode 100644
index ac875a454202..000000000000
--- a/dev-java/joda-time/joda-time-2.10.10-r1.ebuild
+++ /dev/null
@@ -1,75 +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 joda-time-2.10.10/pom.xml --download-uri https://github.com/JodaOrg/joda-time/archive/refs/tags/v2.10.10.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris" --ebuild joda-time-2.10.10.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="joda-time:joda-time:2.10.10"
-JAVA_TESTING_FRAMEWORKS="junit"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Date and time library to replace JDK date handling"
-HOMEPAGE="https://www.joda.org/joda-time/"
-SRC_URI="https://github.com/JodaOrg/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-
-# Common dependencies
-# POM: ${P}/pom.xml
-# org.joda:joda-convert:1.9.2 -> >=dev-java/joda-convert-2.2.1:0
-
-CDEPEND="
- dev-java/joda-convert:0
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}"
-
-JAVA_GENTOO_CLASSPATH="joda-convert"
-JAVA_SRC_DIR="${P}/src/main/java"
-JAVA_RESOURCE_DIRS=(
- "${P}/src/main/java"
-)
-
-JAVA_TEST_GENTOO_CLASSPATH="junit"
-JAVA_TEST_SRC_DIR="${P}/src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "${P}/src/test/resources"
-)
-
-src_compile() {
- java-pkg-simple_src_compile
-
- # Generate the missing "org/joda/time/tz/data/ZoneInfoMap"
- # Arguments from https://github.com/JodaOrg/joda-time/blob/v2.10.10/pom.xml#L413-L427
- "$(java-config -J)" \
- -cp ${PN}.jar \
- org.joda.time.tz.ZoneInfoCompiler \
- -src "${JAVA_SRC_DIR}/org/joda/time/tz/src" \
- -dst "${P}/src/main/resources/org/joda/time/tz/data" \
- africa \
- antarctica \
- asia \
- australasia \
- europe \
- northamerica \
- southamerica \
- etcetera \
- backward
-
- java-pkg_addres ${PN}.jar "${P}"/src/main/resources || die
-}
diff --git a/dev-java/joda-time/joda-time-2.11.2.ebuild b/dev-java/joda-time/joda-time-2.11.2.ebuild
new file mode 100644
index 000000000000..9df6e71a7775
--- /dev/null
+++ b/dev-java/joda-time/joda-time-2.11.2.ebuild
@@ -0,0 +1,95 @@
+# 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/JodaOrg/joda-time/archive/v2.11..tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos" --ebuild joda-time-2.11..ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="joda-time:joda-time:2.11.2"
+JAVA_TESTING_FRAMEWORKS="junit"
+
+inherit edo java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Date and time library to replace JDK date handling"
+HOMEPAGE="https://www.joda.org/joda-time/"
+SRC_URI="https://github.com/JodaOrg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+# Common dependencies
+# POM: pom.xml
+# org.joda:joda-convert:1.9.2 -> >=dev-java/joda-convert-2.2.2:0
+
+CP_DEPEND="dev-java/joda-convert:0"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+PATCHES=(
+ # Enable tests for jdk-11 in
+ # src/test/java/org/joda/time/TestDateTimeZone.java
+ "${FILESDIR}/joda-time-2.11.0-test.patch"
+)
+
+DOCS=( NOTICE.txt README.md RELEASE-NOTES.txt )
+
+S="${WORKDIR}/${P}"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.joda.time"
+JAVA_RESOURCE_DIRS="src/main/res"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY="org.joda.time.TestAllPackages"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default
+ # move .properties files to JAVA_RESOURCE_DIRS
+ mkdir -p src/main/res
+ cp -r src/main/{java/*,res} || die
+ find src/main/res -type f ! -name '*.properties' -exec rm -rf {} + || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # Generate the missing "org/joda/time/tz/data/ZoneInfoMap"
+ # Arguments from https://github.com/JodaOrg/joda-time/blob/v2.10.10/pom.xml#L413-L427
+ edo "$(java-config -J)" \
+ -cp ${PN}.jar \
+ org.joda.time.tz.ZoneInfoCompiler \
+ -src "${JAVA_SRC_DIR}/org/joda/time/tz/src" \
+ -dst "${P}/src/main/resources/org/joda/time/tz/data" \
+ africa \
+ antarctica \
+ asia \
+ australasia \
+ europe \
+ northamerica \
+ southamerica \
+ etcetera \
+ backward
+
+ java-pkg_addres ${PN}.jar "${P}"/src/main/resources
+}
+
+src_test() {
+ # There are test failures in
+ # src/test/java/org/joda/time/TestDateTimeZone.java
+ # with jdk higher than 11
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -le 11 ; then
+ java-pkg-simple_src_test
+ else
+ einfo "Tests restricted to <=jdk-11"
+ fi
+}
diff --git a/dev-java/joda-time/metadata.xml b/dev-java/joda-time/metadata.xml
index b64115a9a19c..8a540039ed06 100644
--- a/dev-java/joda-time/metadata.xml
+++ b/dev-java/joda-time/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jol-core/Manifest b/dev-java/jol-core/Manifest
new file mode 100644
index 000000000000..f47b3094ce86
--- /dev/null
+++ b/dev-java/jol-core/Manifest
@@ -0,0 +1 @@
+DIST jol-0.16.tar.gz 120373 BLAKE2B 06301e1802c89c76038aec2247cbb45d96cc74afa9f099500f8e5f33b919117e85744bc2b8214b6c9e765a2579a43f256eecc2ba8537e76c81aceaa8694f49dc SHA512 d9abf579d0230f2b6d0e0a33ee11c9599b4f36d945239dd8670bbd00591137c2229e5251b32dd5405fd4b08e0070af70e6b04e4ea4be0c28c4d5bc94874858de
diff --git a/dev-java/jol-core/jol-core-0.16-r1.ebuild b/dev-java/jol-core/jol-core-0.16-r1.ebuild
new file mode 100644
index 000000000000..18b26a837482
--- /dev/null
+++ b/dev-java/jol-core/jol-core-0.16-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-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.openjdk.jol:jol-core:0.16"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="${PN%-core}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Java Object Layout: Core"
+HOMEPAGE="https://openjdk.org/projects/code-tools/jol/"
+SRC_URI="https://github.com/openjdk/jol/archive/${PV}.tar.gz -> jol-${PV}.tar.gz"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/asm:9
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/${MY_P}"
+
+JAVA_SRC_DIR="${PN}/src/main/java"
+JAVA_RESOURCE_DIRS="${PN}/src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,asm-9"
+JAVA_TEST_SRC_DIR="${PN}/src/test/java"
diff --git a/dev-java/jol-core/metadata.xml b/dev-java/jol-core/metadata.xml
new file mode 100644
index 000000000000..770ce3726f19
--- /dev/null
+++ b/dev-java/jol-core/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">openjdk/jol</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/joni/Manifest b/dev-java/joni/Manifest
deleted file mode 100644
index 940c22ce389c..000000000000
--- a/dev-java/joni/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST joni-2.1.0.tar.gz 125084 BLAKE2B 4f5fa651f2a2c898b29c311f8bdabe10ded3dc86ededbdf35d703a08618e2dcc57e34a9ab928f0f69e4f47d59a287e138dcf2ec7d2bb71e1152637f174f5fa8e SHA512 dd40b3a857deb02848d4a87de010ec6b9c96fb962643ea1022833a1bb5ebd76ffac403ff2a54497df288998939ed81910c22c02a2df1f7290112bb2ea506db0e
-DIST joni-2.1.41.tar.gz 178366 BLAKE2B a83b9df9fb481a8b1650f9542bd88028d638042946c68a03add8f64449136b655ca0425e488487803f48f8bb1a9101d5d1531350ba534fa081fb9e61cb3795f7 SHA512 6306a871b1d34cf6bb838220ad0cf4824d75a055412740848d02a89ce3198fb7a0d909838a31e33d85f504cc43fa26ee73d9665b4cf81481226c19f5186dab53
diff --git a/dev-java/joni/joni-2.1.0-r1.ebuild b/dev-java/joni/joni-2.1.0-r1.ebuild
deleted file mode 100644
index cf7f00117692..000000000000
--- a/dev-java/joni/joni-2.1.0-r1.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
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java port of the Oniguruma regular expression engine"
-HOMEPAGE="https://github.com/codehaus"
-SRC_URI="https://github.com/jruby/${PN}/archive/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2.1"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-
-CDEPEND="dev-java/asm:9
- dev-java/jcodings:1"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${PN}-${PN}-${PV}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="build"
-EANT_GENTOO_CLASSPATH="asm-9 jcodings-1"
-
-src_install() {
- java-pkg_dojar target/${PN}.jar
-
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/joni/joni-2.1.41.ebuild b/dev-java/joni/joni-2.1.41.ebuild
deleted file mode 100644
index 65d03d06022a..000000000000
--- a/dev-java/joni/joni-2.1.41.ebuild
+++ /dev/null
@@ -1,46 +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 pom.xml --download-uri https://github.com/jruby/joni/archive/refs/tags/joni-2.1.41.tar.gz --slot 2.1 --keywords "~amd64 ~ppc64 ~x86" --ebuild joni-2.1.41.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.jruby.joni:joni:2.1.41"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java port of the Oniguruma regular expression engine"
-HOMEPAGE="https://github.com/jruby/joni"
-SRC_URI="https://github.com/jruby/${PN}/archive/refs/tags/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2.1"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-# Common dependencies
-# POM: pom.xml
-# org.jruby.jcodings:jcodings:1.0.55 -> >=dev-java/jcodings-1.0.55:1
-
-CDEPEND="
- dev-java/jcodings:1
-"
-
-DEPEND="
- >=virtual/jdk-11:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-11:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${PN}-${P}"
-
-JAVA_GENTOO_CLASSPATH="jcodings-1"
-JAVA_SRC_DIR="src"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="test"
diff --git a/dev-java/joni/metadata.xml b/dev-java/joni/metadata.xml
deleted file mode 100644
index 4fff4866bf68..000000000000
--- a/dev-java/joni/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jruby/joni</remote-id>
- <bugs-to>https://github.com/jruby/joni/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jopt-simple/Manifest b/dev-java/jopt-simple/Manifest
index 5e45f7495c78..cfeed4629d9b 100644
--- a/dev-java/jopt-simple/Manifest
+++ b/dev-java/jopt-simple/Manifest
@@ -1,2 +1 @@
-DIST jopt-simple-4.6.tar.gz 107082 BLAKE2B 622144647b24049861398cc99ca3cc268baae045f8ca23cdd5bddb2e656bc97d17397ae752ca9a6edc91b8486e1e55ce19ba335d2afadf6c6df4f858faf43a1e SHA512 c2f467521f6419f91206f6036d420671b02106beadff3fc51d1893e6f3f6302b8fcbb31957327b9e40cbfd7a7d55030e0c999d9570d7e29fe7a4375bab10ed76
-DIST jopt-simple-5.0.tar.gz 119502 BLAKE2B 975a0d338fa3154963954fd3b218c944dded023b3a2da59ee2671c73450a578dbf1aee8e52b9f715839e15c1937e0a493c4b37518b73038aa017e1d0ec1ca06a SHA512 f440c62cb307aad7cab64f091c82f78e11a117e60aaadf71883c149a622576531272de3d67859f6df093df658bb0bfb435d9bb33bc729bcda24dcc99d27369ff
+DIST jopt-simple-5.0.4.tar.gz 120388 BLAKE2B b9eec360f9399a40fa8fe33f14708c14a45689eb78efcdf99f27d666168d67f2670b4aa5bd6e7f26ddff72565107f1359214c808281918947d66874bde237b86 SHA512 ae4274bb4b3e2584dc6fb4370c4d63f9b95e63ff2cd124f92f8ad6e3a4a3dd91cd9e9b70ac423a560d52039508549a5319bb23035215b4a191c4fdc0f0e082d5
diff --git a/dev-java/jopt-simple/jopt-simple-4.6.ebuild b/dev-java/jopt-simple/jopt-simple-4.6.ebuild
deleted file mode 100644
index 197957670e4c..000000000000
--- a/dev-java/jopt-simple/jopt-simple-4.6.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Java library for parsing command line options"
-HOMEPAGE="https://pholser.github.com/jopt-simple/"
-SRC_URI="https://github.com/pholser/${PN}/tarball/${P} -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="4.6"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-JAVA_SRC_DIR="src/main/java"
-
-S="${WORKDIR}/${PN}-${PN}-8808a39"
-
-src_prepare() {
- default
- rm -v pom.xml || die
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/jopt-simple/jopt-simple-5.0.4.ebuild b/dev-java/jopt-simple/jopt-simple-5.0.4.ebuild
new file mode 100644
index 000000000000..1ac84e768ee5
--- /dev/null
+++ b/dev-java/jopt-simple/jopt-simple-5.0.4.ebuild
@@ -0,0 +1,30 @@
+# 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-pkg-simple
+
+DESCRIPTION="A Java library for parsing command line options"
+HOMEPAGE="https://jopt-simple.github.io/jopt-simple/"
+SRC_URI="https://github.com/jopt-simple/jopt-simple/archive/jopt-simple-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+src_install() {
+ einstalldocs
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jopt-simple/jopt-simple-5.0.ebuild b/dev-java/jopt-simple/jopt-simple-5.0.ebuild
deleted file mode 100644
index 763a855732f2..000000000000
--- a/dev-java/jopt-simple/jopt-simple-5.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Java library for parsing command line options"
-HOMEPAGE="https://pholser.github.com/jopt-simple"
-SRC_URI="https://github.com/pholser/${PN}/tarball/${P} -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.8"
-DEPEND=">=virtual/jdk-1.8"
-
-S="${WORKDIR}/${PN}-${PN}-01719a6"
-
-JAVA_SRC_DIR="src/main/java"
-
-src_prepare() {
- default
- rm -v pom.xml || die
-}
-
-src_install() {
- einstalldocs
- java-pkg-simple_src_install
-}
diff --git a/dev-java/jopt-simple/metadata.xml b/dev-java/jopt-simple/metadata.xml
index 16afdff9de8f..eede771ba474 100644
--- a/dev-java/jopt-simple/metadata.xml
+++ b/dev-java/jopt-simple/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">pholser/jopt-simple</remote-id>
+ <remote-id type="github">jopt-simple/jopt-simple</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/jrexx/Manifest b/dev-java/jrexx/Manifest
deleted file mode 100644
index 05d4d2957ed2..000000000000
--- a/dev-java/jrexx/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jrexx-1.1.1.zip 62878 BLAKE2B bb72a406bace2accb5fa1c31609222e0390debfaf598b5f5afa260a1620d74c259a03ab9000f7a8c62634e73979eb1058b1c3627bc9292ae0008e90fb30299aa SHA512 dc3e84e9c6313d8fc4c8fb57bc2713976d07284eae5d36ca4411d0e28eaae36351bbf7a6a16d9db365105e592d2e0cbccf7c3662f8d24114662422f02f0707d1
diff --git a/dev-java/jrexx/jrexx-1.1.1-r2.ebuild b/dev-java/jrexx/jrexx-1.1.1-r2.ebuild
deleted file mode 100644
index 7d88aed26871..000000000000
--- a/dev-java/jrexx/jrexx-1.1.1-r2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="API for textual pattern matching based on the finite state automaton theory"
-HOMEPAGE="http://www.karneim.com/jrexx/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip -> ${P}.zip"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_ENCODING="ISO-8859-1"
diff --git a/dev-java/jrexx/metadata.xml b/dev-java/jrexx/metadata.xml
deleted file mode 100644
index 5ad5c3c0dcdd..000000000000
--- a/dev-java/jrexx/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jrexx</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jrobin/jrobin-1.6.0-r1.ebuild b/dev-java/jrobin/jrobin-1.6.0-r1.ebuild
deleted file mode 100644
index 3b819e8ef465..000000000000
--- a/dev-java/jrobin/jrobin-1.6.0-r1.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JRobin is a 100% pure Java alternative to RRDTool"
-HOMEPAGE="http://www.jrobin.org/"
-SRC_URI="https://github.com/OpenNMS/${PN}/archive/${P}-1.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- test? ( dev-java/asm:4
- >=dev-java/cglib-3.1:3
- dev-java/easymock:3.2
- dev-java/junit:4
- dev-java/objenesis:0 )"
-
-S="${WORKDIR}/${PN}-${P}-1/src"
-JAVA_SRC_DIR="main/java"
-
-java_prepare() {
- find "${WORKDIR}" -name "*.jar" -delete || die
-
- # The tests need the resources in this directory for some reason.
- mkdir -p test/java/target/classes || die
- cd test/java/target/classes || die
- ln -snf ../../../../main/resources/* . || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- jar uf "${PN}.jar" -C main/resources . || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher "${PN}-rrdtool" --main org.jrobin.cmd.RrdCommander
-}
-
-src_test() {
- cd test/java || die
-
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars asm-4,cglib-3,easymock-3.2,junit-4,objenesis)"
- local TESTS=$(find * -name "*Test.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
-
-pkg_postinst() {
- elog "The rrdtool executable has been installed as ${PN}-rrdtool to"
- elog "avoid conflicting with net-analyzer/rrdtool."
-}
diff --git a/dev-java/jrobin/jrobin-1.6.0-r2.ebuild b/dev-java/jrobin/jrobin-1.6.0-r2.ebuild
new file mode 100644
index 000000000000..591a820c6055
--- /dev/null
+++ b/dev-java/jrobin/jrobin-1.6.0-r2.ebuild
@@ -0,0 +1,74 @@
+# 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/OpenNMS/jrobin/archive/jrobin-1.6.0-1.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild jrobin-1.6.0-r2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.jrobin:jrobin:1.6.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JRobin is a 100% pure Java alternative to RRDTool"
+HOMEPAGE="https://github.com/OpenNMS/jrobin"
+SRC_URI="https://github.com/OpenNMS/${PN}/archive/${P}-1.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# junit:junit:4.11 -> >=dev-java/junit-4.13.2:4
+
+# Compile dependencies
+# POM: pom.xml
+# test? org.easymock:easymock:3.1 -> >=dev-java/easymock-3.3.1:3.2
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/easymock:3.2
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+DOCS=( LICENSE.txt README.osgi )
+
+S="${WORKDIR}/${PN}-${P}-1"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_MAIN_CLASS="org.jrobin.cmd.RrdCommander"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+# Workaround for https://github.com/OpenNMS/jrobin/issues/7
+JAVADOC_ARGS="-source 8"
+
+JAVA_TEST_GENTOO_CLASSPATH="easymock-3.2,junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_test() {
+ export LANG="C" LC_ALL="C"
+
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if [[ "${vm_version}" -ge "17" ]] ; then
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED )
+ fi
+
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/jrobin/metadata.xml b/dev-java/jrobin/metadata.xml
index 485eb49b8399..71e2d72fcb23 100644
--- a/dev-java/jrobin/metadata.xml
+++ b/dev-java/jrobin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jrrd/Manifest b/dev-java/jrrd/Manifest
deleted file mode 100644
index 6704e0aaaa3f..000000000000
--- a/dev-java/jrrd/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jrrd-1.0.1.tar.gz 320476 BLAKE2B c8f2a16bd9e3d1dc53e6523e7b936ea65e23852feb69af917df9fcb40fe63a69335faf0bb476779f1e618ad44dabfec52f890232a8d85d8d5aa5c901c739bb6f SHA512 f794f052af32544e17d5aef58c7acb068f442c85e991d7f11c25119d94edb4aebb75f744df53caa64f4fd1e9f900f9018a82790a77dcac48e071b13833a8cced
diff --git a/dev-java/jrrd/files/jrrd-1.0.1-javacflags.patch b/dev-java/jrrd/files/jrrd-1.0.1-javacflags.patch
deleted file mode 100644
index b211ec1f3cbe..000000000000
--- a/dev-java/jrrd/files/jrrd-1.0.1-javacflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile.am (revision 7413)
-+++ b/Makefile.am (working copy)
-@@ -15,7 +15,7 @@
-
- .java.class:
- -mkdir -p $(classdir)
-- $(JAVAC) -d $(classdir) $<
-+ $(JAVAC) $(JAVACFLAGS) -d $(classdir) $<
-
- rrd_jinterface.c: org_opennms_netmgt_rrd_rrdtool_Interface.h
-
diff --git a/dev-java/jrrd/jrrd-1.0.1-r2.ebuild b/dev-java/jrrd/jrrd-1.0.1-r2.ebuild
deleted file mode 100644
index 286cb6ffdc32..000000000000
--- a/dev-java/jrrd/jrrd-1.0.1-r2.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit autotools java-pkg-2
-
-DESCRIPTION="Java Interface to Tobias Oetiker's RRDtool"
-
-SRC_URI="mirror://sourceforge/opennms/${P}.tar.gz"
-HOMEPAGE="http://www.opennms.org/"
-KEYWORDS="amd64 x86"
-LICENSE="GPL-2"
-
-SLOT="0"
-
-CDEPEND="net-analyzer/rrdtool"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-PATCHES=( "${FILESDIR}/${P}-javacflags.patch" )
-
-src_configure() {
- econf
-}
-
-src_compile() {
- emake -j1
- use doc && ejavadoc -d javadoc $(find org -name "*.java")
-}
-
-src_install() {
- java-pkg_newjar "${S}/${PN}.jar"
- java-pkg_doso .libs/*.so
- use source && java-pkg_dosrc org
- use doc && java-pkg_dojavadoc javadoc
-}
diff --git a/dev-java/jrrd/metadata.xml b/dev-java/jrrd/metadata.xml
deleted file mode 100644
index fba66bc4abac..000000000000
--- a/dev-java/jrrd/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">opennms</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jsch-agent-proxy/Manifest b/dev-java/jsch-agent-proxy/Manifest
new file mode 100644
index 000000000000..e2a3213c4d20
--- /dev/null
+++ b/dev-java/jsch-agent-proxy/Manifest
@@ -0,0 +1 @@
+DIST jsch-agent-proxy-0.0.9.tar.gz 19040 BLAKE2B d20989663ed4544d60e890d48c8b3262184bbdf5bc6b8a42d8a008a0ad94831b283ec76382616a3df2f9ad677e59608920bcbc973f6da79d8e373dc21758ece8 SHA512 a80bb2cda8f0a96f4d069c64bc60633292fac46fcca94402f2c2762d3def94e3b9fef886b56e8f2b834141643173cea29ca678a61963fefa33fbb3cd56c1af88
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
new file mode 100644
index 000000000000..0a12a3826469
--- /dev/null
+++ b/dev-java/jsch-agent-proxy/jsch-agent-proxy-0.0.9.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom jsch-agent-proxy-12c3d64fc2b0a4fd37659369edfdee26e48954e2/jsch-agent-proxy-jsch/pom.xml --download-uri https://github.com/ymnk/jsch-agent-proxy/archive/12c3d64fc2b0a4fd37659369edfdee26e48954e2.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild jsch-agent-proxy-0.0.9.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.jcraft:jsch.agentproxy.jsch:0.0.9"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_COMMIT="12c3d64fc2b0a4fd37659369edfdee26e48954e2"
+DESCRIPTION="a proxy to ssh-agent and Pageant in Java"
+HOMEPAGE="http://www.jcraft.com/jsch-agent-proxy/"
+SRC_URI="https://github.com/ymnk/jsch-agent-proxy/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+# Common dependencies
+# POM: ${PN}-12c3d64fc2b0a4fd37659369edfdee26e48954e2/${PN}-jsch/pom.xml
+# com.jcraft:jsch:0.1.49 -> >=dev-java/jsch-0.1.54:0
+# com.jcraft:jsch.agentproxy.core:0.0.9 -> >=dev-java/jsch-agentproxy-core-0.0.9:0
+
+CDEPEND="
+ dev-java/jna:4
+ dev-java/jsch:0
+"
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( LICENSE.txt README README.md )
+
+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"
+ JAVA_JAR_FILENAME="jsch-agentproxy-core.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ JAVA_SRC_DIR="${PN}-jsch"
+ JAVA_JAR_FILENAME="jsch-agentproxy-jsch.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ JAVA_SRC_DIR="${PN}-pageant"
+ JAVA_JAR_FILENAME="jsch-agentproxy-pageant.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ JAVA_SRC_DIR="${PN}-sshagent"
+ JAVA_JAR_FILENAME="jsch-agentproxy-sshagent.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ JAVA_SRC_DIR="${PN}-usocket-jna"
+ JAVA_JAR_FILENAME="jsch-agentproxy-usocket-jna.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ JAVA_SRC_DIR="${PN}-usocket-nc"
+ JAVA_JAR_FILENAME="jsch-agentproxy-usocket-nc.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ JAVA_SRC_DIR="${PN}-connector-factory"
+ JAVA_JAR_FILENAME="jsch-agentproxy-connector-factory.jar"
+ java-pkg-simple_src_compile
+ rm -fr target || die
+
+ use doc && ejavadoc
+}
+
+src_install() {
+ default
+ java-pkg_dojar "jsch-agentproxy-core.jar"
+ java-pkg_dojar "jsch-agentproxy-jsch.jar"
+ java-pkg_dojar "jsch-agentproxy-pageant.jar"
+ java-pkg_dojar "jsch-agentproxy-sshagent.jar"
+ java-pkg_dojar "jsch-agentproxy-usocket-jna.jar"
+ java-pkg_dojar "jsch-agentproxy-usocket-nc.jar"
+ java-pkg_dojar "jsch-agentproxy-connector-factory.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+ if use source; then
+ java-pkg_dosrc "${PN}-core" "${PN}-jsch" "${PN}-pageant" "${PN}-sshagent" "${PN}-usocket-jna" "${PN}-usocket-nc" "${PN}-connector-factory"
+ fi
+}
diff --git a/dev-java/jsch-agent-proxy/metadata.xml b/dev-java/jsch-agent-proxy/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/jsch-agent-proxy/metadata.xml
@@ -0,0 +1,7 @@
+<?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/jsch/Manifest b/dev-java/jsch/Manifest
index 018afebf8cf4..80775bf0b8a4 100644
--- a/dev-java/jsch/Manifest
+++ b/dev-java/jsch/Manifest
@@ -1 +1 @@
-DIST jsch-0.1.54.zip 365455 BLAKE2B 5cd6fa012e5a511bad8f23a233559e6ad6d600f39ea7b519e66e118b1fdb997491b7ac8cff5bc1491c28f7ee99f0f4a3b4727f5d8ec02030576f34949d74e203 SHA512 2ed29f07495fbc28d6eb7b4fe414e8a9a96b911b2feea5b1513cc48a9439adba12341bceb23a3ea9ab307e32d48bfd4356c7bc877c56e77f6f55d69214db3a9e
+DIST jsch-0.1.55.zip 369664 BLAKE2B 4a35845e7b9e57c64a890547b2cabdec5bd03fa462ac3c78d8bcb757dbd5b50b366d41c042e904e44b967c85da01396c7dd085b8fe5f69ad243237fab38fa1f1 SHA512 334b550594272fe179f13fb6bbfc0a353334586786db2b3279608b85cdab3dd604e6dd04aa2376b5532816d906133e636b5359dda36c449d90173be501c61418
diff --git a/dev-java/jsch/jsch-0.1.54.ebuild b/dev-java/jsch/jsch-0.1.54.ebuild
deleted file mode 100644
index 42b5f979f56f..000000000000
--- a/dev-java/jsch/jsch-0.1.54.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source examples"
-MAVEN_ID="com.jcraft:jsch:0.1.55"
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-DESCRIPTION="JSch is a pure Java implementation of SSH2"
-HOMEPAGE="http://www.jcraft.com/jsch/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="zlib"
-
-CDEPEND="
- zlib? ( dev-java/jzlib:0 )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-EANT_BUILD_TARGET="dist"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-src_compile() {
- if use zlib; then
- EANT_EXTRA_ARGS="-Djzlib.available=true"
- EANT_GENTOO_CLASSPATH="jzlib"
- fi
-
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-osgi_newjar dist/lib/jsch*.jar \
- "com.jcraft.jsch" "JSch" \
- "com.jcraft.jsch, com.jcraft.jsch.jce;x-internal:=true, \
- com.jcraft.jsch.jcraft;x-internal:=true"
-
- einstalldocs
- use doc && java-pkg_dojavadoc javadoc
- use source && java-pkg_dosrc src/*
- use examples && java-pkg_doexamples examples
-}
diff --git a/dev-java/jsch/jsch-0.1.55.ebuild b/dev-java/jsch/jsch-0.1.55.ebuild
new file mode 100644
index 000000000000..3b319db72cf5
--- /dev/null
+++ b/dev-java/jsch/jsch-0.1.55.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom jsch-0.1.55.pom --download-uri https://repo1.maven.org/maven2/com/jcraft/jsch/0.1.55/jsch-0.1.55-sources.jar --slot 55 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild jsch-0.1.55.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.jcraft:jsch:0.1.55"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JSch is a pure Java implementation of SSH2"
+HOMEPAGE="http://www.jcraft.com/jsch/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.zip"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: ${P}.pom
+# com.jcraft:jzlib:1.0.7 -> >=dev-java/jzlib-1.1.3:0
+
+CP_DEPEND="
+ >=dev-java/jzlib-1.1.3:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
diff --git a/dev-java/jsch/metadata.xml b/dev-java/jsch/metadata.xml
index a4be664f1511..c300c0475ad9 100644
--- a/dev-java/jsch/metadata.xml
+++ b/dev-java/jsch/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/json-simple/Manifest b/dev-java/json-simple/Manifest
index 2d05f995e396..ca0205d6e68a 100644
--- a/dev-java/json-simple/Manifest
+++ b/dev-java/json-simple/Manifest
@@ -1 +1 @@
-DIST json-simple-1.1.tar.gz 22154 BLAKE2B 594717df45d56b4e70cee9aadca661a9da7e19c2a77e5ab2176396c48bdf061f25db0e4cbf5b93b12dc862dfca593a71dcd154f24c914a4d2ff510e3f4b11570 SHA512 f09cb298254a8f35b534670d6a1801eeaf58385529f459f413aed556df1ac577bea6e678a32065077abc851dc310b3af38b818f1737bd255f05e756d7e2da066
+DIST json-simple-2.3.1.tar.gz 56230 BLAKE2B c4a196ffa67a729a1964db8c30b95ccb0bef0c213a76e37e463153a895a5fdb8c6f02f6d188d28f0b56665bf24c75dbdeeb42d88297c8df5e1b409606b0f04f2 SHA512 b80ea33480f8b32511ee2db5cfacc9c02cb5dbf0765b41fb76e099f41ac6c0ea69d75fdf0a5f783e3bfb7b4f200c49ca192a3321e0d8480b3a8b67ada469dbb1
diff --git a/dev-java/json-simple/json-simple-1.1-r2.ebuild b/dev-java/json-simple/json-simple-1.1-r2.ebuild
deleted file mode 100644
index d73b7b55ba0c..000000000000
--- a/dev-java/json-simple/json-simple-1.1-r2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="tag_release_1_1_1"
-
-DESCRIPTION="Simple Java toolkit for JSON"
-HOMEPAGE="http://www.json.org"
-SRC_URI="https://github.com/fangyidong/json-simple/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${PN}-${MY_P}"
-
-JAVA_SRC_DIR="src/main"
-
-src_prepare() {
- default
- rm -rv src/test || die
-}
diff --git a/dev-java/json-simple/json-simple-2.3.1.ebuild b/dev-java/json-simple/json-simple-2.3.1.ebuild
new file mode 100644
index 000000000000..db1876d94be6
--- /dev/null
+++ b/dev-java/json-simple/json-simple-2.3.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="source doc test"
+MAVEN_ID="com.github.cliftonlabs:json-simple:2.3.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java 7+ toolkit to quickly develop RFC 4627 JSON compatible applications"
+HOMEPAGE="https://www.json.org"
+SRC_URI="https://github.com/cliftonlabs/json-simple/archive/json-simple-${PV}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="2.3"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/json-simple/metadata.xml b/dev-java/json-simple/metadata.xml
index 92e38406b83b..22e6f7bfad33 100644
--- a/dev-java/json-simple/metadata.xml
+++ b/dev-java/json-simple/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -13,6 +13,6 @@
website,I found that wrappers to JSONObject and JSONArray can be simpler,
due to the simplicity of JSON itself. So I wrote the JSON.simple package.</longdescription>
<upstream>
- <remote-id type="google-code">json-simple</remote-id>
+ <remote-id type="github">cliftonlabs/json-simple</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/json-smart/Manifest b/dev-java/json-smart/Manifest
new file mode 100644
index 000000000000..08a0756cd16f
--- /dev/null
+++ b/dev-java/json-smart/Manifest
@@ -0,0 +1,2 @@
+DIST json-smart-1.3.3.tar.gz 49430 BLAKE2B 805e16e0de5321a2e8164468757e9b722849f0fe90fd6822cc99f7afffd9f4e480fc4e14c2bbd12b325a27abc8ca7e93b4a17ce56ac352117cef336e1ebb3fe9 SHA512 c6006c6a00a085ea8810e18889450d11240dc3671351f20602214db418107808df1f413fe67c199d6529e4c0087f2533601826666ac4fa493bcaf72d2c18ed83
+DIST json-smart-2.5.0.tar.gz 88839 BLAKE2B 25760bd9c9ddecfef2fc3e60fc28b83def2223c7fc1e52ef39b3e6d01e5f2f29f36a35bfd43fc4d6ce6d5df5fcb25f59b1c86e1864a3044c69a6d0010335280b SHA512 4bffadf68998da4b63b34bcc9dbf804fd2b21b8d9514de4e155127d5a2eb3db74c7e396959b54c61c08e169eeed85dff3ad2f1d899cfddca53e501c45cebae21
diff --git a/dev-java/json-smart/json-smart-1.3.3.ebuild b/dev-java/json-smart/json-smart-1.3.3.ebuild
new file mode 100644
index 000000000000..c174d7e6acb7
--- /dev/null
+++ b/dev-java/json-smart/json-smart-1.3.3.ebuild
@@ -0,0 +1,26 @@
+# 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="net.minidev:json-smart:1.3.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="old JSON parser"
+HOMEPAGE="https://urielch.github.io"
+SRC_URI="https://github.com/netplex/json-smart-v1/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${PN}-v1-${PV}/json-smart"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
diff --git a/dev-java/json-smart/json-smart-2.5.0.ebuild b/dev-java/json-smart/json-smart-2.5.0.ebuild
new file mode 100644
index 000000000000..04a95c02d05f
--- /dev/null
+++ b/dev-java/json-smart/json-smart-2.5.0.ebuild
@@ -0,0 +1,71 @@
+# 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.minidev:accessors-smart:${PV}
+ net.minidev:json-smart:${PV}
+"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JSON Small and Fast Parser"
+HOMEPAGE="https://urielch.github.io"
+SRC_URI="https://github.com/netplex/json-smart-v2/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-v2-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+RESTRICT="test" #839681
+
+DEPEND="
+ dev-java/asm:9
+ >=virtual/jdk-1.8:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+src_compile() {
+ einfo "Compiling accessors-smart.jar"
+ JAVA_CLASSPATH_EXTRA="asm-9"
+ JAVA_JAR_FILENAME="accessors-smart.jar"
+ JAVA_SRC_DIR="accessors-smart/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":accessors-smart.jar"
+ rm -r target || die
+
+ einfo "Compiling json-smart.jar"
+ JAVA_JAR_FILENAME="json-smart.jar"
+ JAVA_SRC_DIR="json-smart/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":json-smart.jar"
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_SRC_DIR=(
+ accessors-smart/src/main/java
+ json-smart/src/main/java
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ einstalldocs
+ java-pkg_dojar "accessors-smart.jar"
+ java-pkg_dojar "json-smart.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "accessors-smart/src/main/java/*"
+ java-pkg_dosrc "json-smart/src/main/java/*"
+ fi
+}
diff --git a/dev-java/json-smart/metadata.xml b/dev-java/json-smart/metadata.xml
new file mode 100644
index 000000000000..d5b2471c532c
--- /dev/null
+++ b/dev-java/json-smart/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">netplex/json-smart-v1</remote-id>
+ <remote-id type="github">netplex/json-smart-v2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/json/Manifest b/dev-java/json/Manifest
index 6434984e3124..05f94127628e 100644
--- a/dev-java/json/Manifest
+++ b/dev-java/json/Manifest
@@ -1,2 +1,4 @@
-DIST json-20150729.zip 52114 BLAKE2B 8730eaa92002debf3563f1b07901118b2b5fb8754d5d35491ef7e4a7c8f208687a00ea2ab587e183d0d88af59f5527deb2a64e244b2668196f9f31a80099148f SHA512 ad21ce236b9df04482e039e57a16edec4018214aa6e00379573dc7c6977062c759aa21084b70540d35656ebcdb5eaa6525defb88e281ee0e4e7277e32f22755c
-DIST json-20160212.zip 52295 BLAKE2B a0cd21b9cdf5f14ad7531af2e48f8a6f22b8f05d3b2baba48c659bb91b7791681c74e37a4011bf2ef525c4e39edf2c7c73d1275514f44c8bc7e8eddf5c2b76e6 SHA512 6648443c55f7e427e700a2bcb5cce8e4b796c42c0afb53a455dc847b0636f2e009171a39f96f0c317fdc1080ddc106dcd4c8066cfbd71091db3ad83bf7c0ae2c
+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-20150729.ebuild b/dev-java/json/json-20150729.ebuild
deleted file mode 100644
index a40b3e9d7189..000000000000
--- a/dev-java/json/json-20150729.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java implementation of the JavaScript Object Notation"
-HOMEPAGE="https://github.com/douglascrockford/JSON-java"
-SRC_URI="https://github.com/douglascrockford/JSON-java/archive/${PV}.zip -> ${P}.zip"
-
-LICENSE="JSON"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/JSON-java-${PV}"
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- chmod a-x *.java || die
- mkdir -p src || die
- mv *.java src || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README
-}
diff --git a/dev-java/json/json-20160212.ebuild b/dev-java/json/json-20160212.ebuild
deleted file mode 100644
index e0a506eb6468..000000000000
--- a/dev-java/json/json-20160212.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java implementation of the JavaScript Object Notation"
-HOMEPAGE="https://github.com/douglascrockford/JSON-java"
-SRC_URI="https://github.com/douglascrockford/JSON-java/archive/${PV}.zip -> ${P}.zip"
-
-LICENSE="JSON"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/JSON-java-${PV}"
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- chmod a-x *.java || die
- mkdir -p src || die
- mv *.java src || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc README
-}
diff --git a/dev-java/json/json-20231013-r1.ebuild b/dev-java/json/json-20231013-r1.ebuild
new file mode 100644
index 000000000000..33b11fb0702e
--- /dev/null
+++ b/dev-java/json/json-20231013-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 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"
+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/2.1.0/json-path-2.1.0.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_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
+src_test() {
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/json-path-2.1.0.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/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/json/metadata.xml b/dev-java/json/metadata.xml
index ab2a8a11f34f..44f2fdc3862b 100644
--- a/dev-java/json/metadata.xml
+++ b/dev-java/json/metadata.xml
@@ -1,11 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <upstream>
- <remote-id type="github">douglascrockford/JSON-java</remote-id>
- </upstream>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
+ <upstream>
+ <bugs-to>https://github.com/stleary/JSON-java/issues</bugs-to>
+ <doc>https://github.com/stleary/JSON-java/wiki/</doc>
+ <remote-id type="github">stleary/JSON-java</remote-id>
+ </upstream>
+ <longdescription>
+ JSON is a light-weight, language independent, data interchange format. See http://www.JSON.org/ The files in this package implement JSON encoders/decoders in Java. It also includes the capability to convert between JSON and XML, HTTP headers, Cookies, and CDL. This is a reference implementation. There is a large number of JSON packages in Java. Perhaps someday the Java community will standardize on one. Until then, choose carefully. The license includes this restriction: \"The software shall be used for good, not evil.\" If your conscience cannot live with that, then choose a different package.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/jsonrpc2-base/Manifest b/dev-java/jsonrpc2-base/Manifest
new file mode 100644
index 000000000000..30ad08f11225
--- /dev/null
+++ b/dev-java/jsonrpc2-base/Manifest
@@ -0,0 +1 @@
+DIST jsonrpc2-base-1.38.2.tar.bz2 31673 BLAKE2B e7ee637f4794f9c0c8e80824200976b8bdb762d14c0d0716bf60e840cc166c8be5794e186294072eb14543f04d37b342f74308b30f9477f066b9785ea94c38b1 SHA512 8084730e36e30d950a57ed6ae6cbe8bb4e5719e428881e394450a5811faa97b33d63991c5f12cb8d17896ead507f96917568881e9923676a942ac229ef146934
diff --git a/dev-java/jsonrpc2-base/jsonrpc2-base-1.38.2.ebuild b/dev-java/jsonrpc2-base/jsonrpc2-base-1.38.2.ebuild
new file mode 100644
index 000000000000..239213069dcd
--- /dev/null
+++ b/dev-java/jsonrpc2-base/jsonrpc2-base-1.38.2.ebuild
@@ -0,0 +1,35 @@
+# 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.thetransactioncompany:jsonrpc2-base:1.38.2"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Represent, parse and serialise JSON-RPC 2.0 messages"
+HOMEPAGE="https://software.dzhuvinov.com/json-rpc-2.0-base.html"
+SRC_URI="https://bitbucket.org/thetransactioncompany/json-rpc-2.0-base/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="dev-java/json-smart:1"
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/thetransactioncompany-json-rpc-2.0-base-75e66af02953"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_EXCLUDES=( "com.thetransactioncompany.jsonrpc2.util.TestEnumDay" )
diff --git a/dev-java/jsonrpc2-base/metadata.xml b/dev-java/jsonrpc2-base/metadata.xml
new file mode 100644
index 000000000000..8ab1b3b4387d
--- /dev/null
+++ b/dev-java/jsonrpc2-base/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="bitbucket">thetransactioncompany/json-rpc-2.0-base</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jsonrpc2-server/Manifest b/dev-java/jsonrpc2-server/Manifest
new file mode 100644
index 000000000000..7993af44cfce
--- /dev/null
+++ b/dev-java/jsonrpc2-server/Manifest
@@ -0,0 +1 @@
+DIST jsonrpc2-server-1.11.1.tar.bz2 12155 BLAKE2B 5bf0140a45cfe51e9aedff49c881ab9a98a35599d8dc564d6a0d7b77bb3fe252edf93e75ebd7f4dfb9573e0adf71416174e170c3d79d32f626edccc7bdc103d1 SHA512 637f07d51abb86d0febe170856ba8b3ca39b885ac9f2525033beee57d8db8704a48857cab4f434f2638e8c61defaed857c6ca65a41e93392d13975a4a44f3f2f
diff --git a/dev-java/jsonrpc2-server/jsonrpc2-server-1.11.1.ebuild b/dev-java/jsonrpc2-server/jsonrpc2-server-1.11.1.ebuild
new file mode 100644
index 000000000000..b54e6d257874
--- /dev/null
+++ b/dev-java/jsonrpc2-server/jsonrpc2-server-1.11.1.ebuild
@@ -0,0 +1,50 @@
+# 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.thetransactioncompany:jsonrpc2-server:1.11.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Server framework for processing JSON-RPC 2.0 messages"
+HOMEPAGE="https://software.dzhuvinov.com/json-rpc-2.0-server.html"
+SRC_URI="https://bitbucket.org/thetransactioncompany/json-rpc-2.0-server/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+PROPERTIES="test_network"
+RESTRICT="test" # single test, need access to google
+
+CP_DEPEND="
+ dev-java/jsonrpc2-base:1
+ dev-java/json-smart:1
+"
+
+DEPEND="
+ ${CP_DEPEND}
+ dev-java/javax-servlet-api:3.0
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/thetransactioncompany-json-rpc-2.0-server-40234a8c2029"
+
+JAVA_CLASSPATH_EXTRA="javax-servlet-api-3.0"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+src_prepare() {
+ default
+
+ rm -r src/main/java/com/thetransactioncompany/jsonrpc2/server/examples ||
+ die 'rm example codes'
+}
diff --git a/dev-java/jsonrpc2-server/metadata.xml b/dev-java/jsonrpc2-server/metadata.xml
new file mode 100644
index 000000000000..0432ff238301
--- /dev/null
+++ b/dev-java/jsonrpc2-server/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="bitbucket">thetransactioncompany/json-rpc-2.0-server</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jsoup/Manifest b/dev-java/jsoup/Manifest
deleted file mode 100644
index 2d3bf41db17b..000000000000
--- a/dev-java/jsoup/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsoup-1.8.3a.zip 370626 BLAKE2B 9ba471a8e161ef4ad5f0abd54feb29075400a53622dcd1a9934307a123bfad087bea9fc17f3cf020929aadbf51a47b0df1aa1ad5201487394faaaf4c44a793a9 SHA512 d044231fc70ff6d5428707d56853db77feedbb29a4ea1a501e6fcbaaecb2743bdeeaa8dcf4c76f7d278905b31e83707ad2644e7876a44c9d2325537d647aab85
diff --git a/dev-java/jsoup/jsoup-1.8.3.ebuild b/dev-java/jsoup/jsoup-1.8.3.ebuild
deleted file mode 100644
index 103a8ed904c7..000000000000
--- a/dev-java/jsoup/jsoup-1.8.3.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PV="${PV}a"
-MY_P="${PN}-${PN}-${MY_PV}"
-
-DESCRIPTION="Java HTML parser that makes sense of real-world HTML soup"
-HOMEPAGE="https://jsoup.org/"
-SRC_URI="https://github.com/jhy/${PN}/archive/${PN}-${MY_PV}.zip"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux"
-
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_SRC_DIR="src/main/java"
-
-java_prepare() {
- rm pom.xml || die
- mkdir -p target/classes/org/jsoup/nodes/ || die
- cp src/main/java/org/jsoup/nodes/*.properties target/classes/org/jsoup/nodes/ || die
-}
-
-src_test() {
- testcp="${S}/${PN}.jar:$(java-pkg_getjars junit-4):target/tests"
-
- mkdir target/tests || die
- ejavac -cp "${testcp}" -d target/tests $(find src/test/java -name "*.java")
- cp -r src/test/resources/* target/tests || die
-
- tests=$(find target/tests -name "*Test.class" \
- | sed -e 's/target\/tests\///g' -e "s/\.class//" -e "s/\//./g" \
- | grep -vP '\$');
- ejunit4 -cp "${testcp}" ${tests}
-}
diff --git a/dev-java/jsoup/metadata.xml b/dev-java/jsoup/metadata.xml
deleted file mode 100644
index 423272137d7f..000000000000
--- a/dev-java/jsoup/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jhy/jsoup</remote-id>
- </upstream>
- <longdescription>
- jsoup is a Java library for working with real-world HTML. It provides a
- very convenient API for extracting and manipulating data, using the best
- of DOM, CSS, and jquery-like methods.
- It implements the WHATWG HTML5 specification (http://whatwg.org/html),
- and parses HTML to the same DOM as modern browsers do. It's designed to
- deal with all varieties of HTML found in the wild; from pristine and
- validating, to invalid tag-soup; jsoup will create a sensible parse tree.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/jspeex/Manifest b/dev-java/jspeex/Manifest
deleted file mode 100644
index 37f71379208c..000000000000
--- a/dev-java/jspeex/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jspeex-0.9.7.zip 733580 BLAKE2B d5bfabb0857975ab8ca74d54401f6d4008c7386d8e2464c7386ecccfde8dcf3b92580d6168e4ff06cf8c1a27ca848abc7f630be7f19c6a0245beb8a9cb66c3f6 SHA512 9673bef155f1cccc45bc0a0d5596e79b48ba044309ba3446548b570bc7bad60b4b22cc7761749b0769114c7341b9fab6db8e8a155070f9de6fe2730c843199fe
diff --git a/dev-java/jspeex/files/jspeex-0.9.7-remove-junit-report.patch b/dev-java/jspeex/files/jspeex-0.9.7-remove-junit-report.patch
deleted file mode 100644
index d3446420f720..000000000000
--- a/dev-java/jspeex/files/jspeex-0.9.7-remove-junit-report.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -Naur a/build.xml b/build.xml
---- a/build.xml 2014-02-18 23:32:25.440819710 +0100
-+++ b/build.xml 2014-02-18 23:32:43.017053558 +0100
-@@ -218,12 +218,6 @@
- </fileset>
- </batchtest>
- </junit>
-- <junitreport todir="${doc}/junit">
-- <fileset dir="${doc}/junit">
-- <include name="TEST-*.xml"/>
-- </fileset>
-- <report format="noframes" todir="${doc}/junit"/>
-- </junitreport>
- </target>
-
- <!-- ******************************************************************** -->
diff --git a/dev-java/jspeex/files/jspeex-0.9.7-remove-proguard-taskdef.patch b/dev-java/jspeex/files/jspeex-0.9.7-remove-proguard-taskdef.patch
deleted file mode 100644
index eb9e6fc24af2..000000000000
--- a/dev-java/jspeex/files/jspeex-0.9.7-remove-proguard-taskdef.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff -Naur a/build.xml b/build.xml
---- a/build.xml 2014-02-18 23:32:25.440819710 +0100
-+++ b/build.xml 2014-02-18 23:33:26.308555686 +0100
-@@ -57,10 +57,6 @@
-
- <property name="version" value="0.9.7"/>
-
-- <!-- Define additional tasks -->
-- <taskdef name="proguard" classname="proguard.ant.ProGuardTask"
-- classpath="${lib}/proguard3.2.jar" />
--
- <target name="init" description="Initialise ant" depends="clean">
- <tstamp>
- <format property="NOW" pattern="dd/MM/yyyy HH:mm" locale="en"/>
-@@ -138,19 +134,6 @@
- <target name="compress" depends="package"
- description="Package obfuscated JSpeex library" >
- <mkdir dir="${log}"/>
-- <proguard>
---libraryjars ${java.home}/lib/rt.jar
---injars ${dist}/jspeex.jar
---outjar ${dist}/jspeex-obf.jar
---renamesourcefileattribute SourceFile
---keepattributes InnerClasses,SourceFile
---printmapping ${log}/jspeex-obf.map
---overloadaggressively
--
---keep public class * {
-- public protected *;
--}
-- </proguard>
- </target>
-
- <target name="compress-dec-nb" depends="compile-nb"
-@@ -161,18 +144,6 @@
- <attribute name="Main-Class" value="JSpeexDec"/>
- </manifest>
- </jar>
-- <proguard>
---libraryjars ${java.home}/lib/rt.jar
---injars ${dist}/jspeex-dec-nb.jar
---outjar ${dist}/jspeex-dec-nb-obf.jar
---printmapping ${log}/jspeex-dec-nb-obf.map
---overloadaggressively
---defaultpackage ''
--
---keep public class JSpeexDec {
-- public static void main(java.lang.String[]);
--}
-- </proguard>
- </target>
-
- <!-- ******************************************************************** -->
diff --git a/dev-java/jspeex/jspeex-0.9.7-r2.ebuild b/dev-java/jspeex/jspeex-0.9.7-r2.ebuild
deleted file mode 100644
index 404e7773e708..000000000000
--- a/dev-java/jspeex/jspeex-0.9.7-r2.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Speex speech codec library for Java"
-HOMEPAGE="http://jspeex.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-S="${WORKDIR}/${PN}"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/ant-core:0"
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*
-"
-DEPEND="
- ${CDEPEND}
- dev-java/junit:0
- >=virtual/jdk-1.8:*
- test? (
- dev-java/ant-junit:0
- )
-"
-BDEPEND="app-arch/unzip"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="ant-core"
-EANT_BUILD_TARGET="package"
-
-PATCHES=(
- "${FILESDIR}"/${P}-remove-junit-report.patch
- "${FILESDIR}"/${P}-remove-proguard-taskdef.patch
-)
-
-src_prepare() {
- default
-
- java-pkg_clean
-
- cd lib || die
- java-pkg_jar-from --build-only junit
-}
-
-src_test() {
- ANT_TASKS="ant-junit ant-core" eant test
-}
-
-src_install() {
- java-pkg_dojar dist/${PN}.jar
-
- dodoc README TODO
-
- use doc && java-pkg_dojavadoc doc/javadoc
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/jspeex/metadata.xml b/dev-java/jspeex/metadata.xml
deleted file mode 100644
index 3b016edaf12a..000000000000
--- a/dev-java/jspeex/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jspeex</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jsr101/Manifest b/dev-java/jsr101/Manifest
deleted file mode 100644
index af1154f8b63c..000000000000
--- a/dev-java/jsr101/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr101-1.4.tar.bz2 18614 BLAKE2B c181e07db54cdf13ec15c18b8340b4f4bd9befee62aace934fd2ffcc12de386d4749e63d16dd654a7c369795c12f7c71bf4628a7878540f8c486302f65699b6e SHA512 a29cca7e0ed1eb8aff4b70da6d804cb1cd61cdd9a800f420be6794aa927bca6a4146a95d71c8521d4dc16a0da56419f3e82079d942194380dbddb9d44d773317
diff --git a/dev-java/jsr101/jsr101-1.4-r3.ebuild b/dev-java/jsr101/jsr101-1.4-r3.ebuild
deleted file mode 100644
index c6482614c9f4..000000000000
--- a/dev-java/jsr101/jsr101-1.4-r3.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java(TM) API for XML-Based RPC Specification Interface Classes"
-HOMEPAGE="http://jcp.org/aboutJava/communityprocess/first/jsr101/"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.bz2"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="
- java-virtuals/saaj-api:0
- java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- >=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND="
- >=virtual/jdk-1.6
- ${CDEPEND}"
-
-JAVA_SRC_DIR="src"
-
-JAVA_GENTOO_CLASSPATH="
- servlet-api-3.0
- saaj-api
-"
diff --git a/dev-java/jsr101/metadata.xml b/dev-java/jsr101/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/jsr101/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jsr173/Manifest b/dev-java/jsr173/Manifest
deleted file mode 100644
index c6dc5ebf90b1..000000000000
--- a/dev-java/jsr173/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr173-1.0.jar 639734 BLAKE2B f34caff27d216303d14050c78c3a4413685e843b9a5aacb228c38c57c50a009b691bff889ebc970097f998ba93b3a0737256c3b8a19f9df3529d238b43f71538 SHA512 8b299532716682772e5eeafb63a5dd125dec8954a9a284f6766bac05409fff611724ae1a9b6f4f6f303b64c12b19e394371a6b0a87132b36e88f94e20b69efe4
diff --git a/dev-java/jsr173/jsr173-1.0-r4.ebuild b/dev-java/jsr173/jsr173-1.0-r4.ebuild
deleted file mode 100644
index d9fb07247d0c..000000000000
--- a/dev-java/jsr173/jsr173-1.0-r4.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Yet another Java library for parsing and writing XML"
-HOMEPAGE="http://dev2dev.bea.com/xml/stax.html"
-SRC_URI="mirror://gentoo/${P}.jar"
-
-LICENSE="bea.ri.jsr173"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}"
-
-DOCS=( README.txt jsr173_1.0.pdf )
-
-src_unpack() {
- cd "${S}" || die
- jar xvf "${DISTDIR}/${A}" || die "failed to unpack"
- jar xvf "${P//-/_}_src.jar" || die "failed to unpack"
-}
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use doc && einstalldocs
-}
diff --git a/dev-java/jsr173/metadata.xml b/dev-java/jsr173/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jsr173/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jsr181/Manifest b/dev-java/jsr181/Manifest
deleted file mode 100644
index dee5def50463..000000000000
--- a/dev-java/jsr181/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr181-api-1.0-MR1-sources.jar 3929 BLAKE2B 8372097db6f3bd7073628b1fb22694d0d5c013163b83ab1daded1c08ed6f319d02fc7d5322789b35d44621dd5377b980e16a8ed2b2e7c6df8b30451f6dca3713 SHA512 383806428ebe80e94af2c80a3d383f24e934cde57d5628e60b2e2335052ac037ad45f1e8c265c579cf60ed7383b15fd8f2e8dda6b08d8edf1d171b9f0ef0080e
diff --git a/dev-java/jsr181/jsr181-1.0-r2.ebuild b/dev-java/jsr181/jsr181-1.0-r2.ebuild
deleted file mode 100644
index 0cc33422ff56..000000000000
--- a/dev-java/jsr181/jsr181-1.0-r2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}-api"
-MY_PV="${PV}-MR1"
-MY_P="${MY_PN}-${MY_PV}"
-
-DESCRIPTION="JSR 181 API classes"
-HOMEPAGE="http://jcp.org/en/jsr/summary?id=181"
-SRC_URI="http://central.maven.org/maven2/javax/jws/${MY_PN}/${MY_PV}/${MY_P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr181/metadata.xml b/dev-java/jsr181/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/jsr181/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jsr223/Manifest b/dev-java/jsr223/Manifest
deleted file mode 100644
index dc88fe111e1f..000000000000
--- a/dev-java/jsr223/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr223-openjdk-6-src-b19.tar.bz2 15936 BLAKE2B fb72dce61428f8a2bf5ef13dafa8b7fe4a4b2060322756d3140e8d3da0a995024a71cc954ca5f275fcedbffb0ca40001761f4c7b5a9e26a7610df7766d411a88 SHA512 69e09e7cce017693abdbf1a9fc1c4b412686f05fa6a3098bc2724020c95bbb8e5349a0a176b930a364a8848b91dd4383d9e9c40dde317b3ab998139bd528f205
diff --git a/dev-java/jsr223/jsr223-1.0-r2.ebuild b/dev-java/jsr223/jsr223-1.0-r2.ebuild
deleted file mode 100644
index 758dd0285b50..000000000000
--- a/dev-java/jsr223/jsr223-1.0-r2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Scripting for the Java(TM) Platform"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=223"
-SRC_URI="mirror://gentoo/${PN}-openjdk-6-src-b19.tar.bz2"
-
-LICENSE="GPL-2-with-linking-exception"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr223/metadata.xml b/dev-java/jsr223/metadata.xml
deleted file mode 100644
index 33a02ea0f34d..000000000000
--- a/dev-java/jsr223/metadata.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-java/jsr225/Manifest b/dev-java/jsr225/Manifest
deleted file mode 100644
index c8500459e37d..000000000000
--- a/dev-java/jsr225/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr225-1.0.jar 58968 BLAKE2B 063cf9c372165a5382345e02cc4a6be9cc856533d18eca86c83c484034f97967e718f408ba701c1afccf8869f35980dba098d837b8cfb6cbe2d6b7adc9c70ef3 SHA512 c7f89904269bb09037599914cc4199b467f9d882b982eeeb7663776b61dbf6868c3aac8d576ca2d8999d0fe3378e3a3896776316c24039487d2501d6e2872712
diff --git a/dev-java/jsr225/jsr225-1.0.ebuild b/dev-java/jsr225/jsr225-1.0.ebuild
deleted file mode 100644
index bef070caa856..000000000000
--- a/dev-java/jsr225/jsr225-1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="xqj-api"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="XQuery API for Java"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=225"
-SRC_URI="https://github.com/cfoster/${MY_P}.0/raw/master/javax/xml/xquery/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="GPL-2-with-linking-exception"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-JAVA_ENCODING="ISO-8859-1"
diff --git a/dev-java/jsr225/metadata.xml b/dev-java/jsr225/metadata.xml
deleted file mode 100644
index cda5077b67bf..000000000000
--- a/dev-java/jsr225/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="github">cfoster/xqj-api-1.0.0</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jsr250/Manifest b/dev-java/jsr250/Manifest
deleted file mode 100644
index 75b5a631328c..000000000000
--- a/dev-java/jsr250/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr250-1.2.jar 42311 BLAKE2B 9b5868fcbee673b1c3a535e8cd28c7b8896be087906a0db37f4a6d585ce6d1bb7be6d028adfc0e233c28581960a59ed8da18960c21053410a74c4af11ced66a6 SHA512 bf6e816958a74009e6aa13d03530c1ee4520ac756305544958669bd6fd0fd1de0ec036855260dea9c7a3f86a10f88a866a7cd1d86a52856097d1f1ea3ec92d63
diff --git a/dev-java/jsr250/jsr250-1.2.ebuild b/dev-java/jsr250/jsr250-1.2.ebuild
deleted file mode 100644
index 95b2ac491d76..000000000000
--- a/dev-java/jsr250/jsr250-1.2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JSR 250 Common Annotations"
-HOMEPAGE="https://jcp.org/en/jsr/detail?id=250"
-SRC_URI="https://repo1.maven.org/maven2/javax/annotation/javax.annotation-api/${PV}/javax.annotation-api-${PV}-sources.jar -> ${P}.jar"
-
-LICENSE="|| ( CDDL GPL-2 )"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux"
-
-RDEPEND=">=virtual/jre-1.7"
-DEPEND=">=virtual/jdk-1.7"
diff --git a/dev-java/jsr250/metadata.xml b/dev-java/jsr250/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/jsr250/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jsr305/Manifest b/dev-java/jsr305/Manifest
index 34d4b3252bba..7dc9938f0d2d 100644
--- a/dev-java/jsr305/Manifest
+++ b/dev-java/jsr305/Manifest
@@ -1,2 +1 @@
-DIST jsr305-3.0.1-sources.jar 16622 BLAKE2B c9cc042845c8cd0d4680568d1c1f7c3ae43ba03c0bc21eeac662572ec17a048b86d38848f116653f466904f5a90c345ab7e5ac827fdfe00c899521cea54e3474 SHA512 ca9902929de94fbc03b848599bb1f5f542898ade724eb0d6022f799733c9093bb27c0a565f0a90f47dba7bff72d5a6d24de687746721a1bec2050c2061ecd148
-DIST jsr305-3.0.2.jar 18102 BLAKE2B fa6c40a63eb3e4683ae70612058420a905428b9ac9b920b2f7f4024579a5ff6fcffa576d50a616ed585b4896cbba87f4496273b860930f047184cf5df77004d0 SHA512 02327071dde09470c8cd0fe39405263146d7e86b15312bc3f909c6a6fa9b11c730bdb833b6cdbdf1aee0c6553e519cecd0257a296947f94636650e88cd8c5b79
+DIST jsr305-3.0.2-sources.jar 18102 BLAKE2B fa6c40a63eb3e4683ae70612058420a905428b9ac9b920b2f7f4024579a5ff6fcffa576d50a616ed585b4896cbba87f4496273b860930f047184cf5df77004d0 SHA512 02327071dde09470c8cd0fe39405263146d7e86b15312bc3f909c6a6fa9b11c730bdb833b6cdbdf1aee0c6553e519cecd0257a296947f94636650e88cd8c5b79
diff --git a/dev-java/jsr305/jsr305-3.0.1.ebuild b/dev-java/jsr305/jsr305-3.0.1.ebuild
deleted file mode 100644
index 02401bb30056..000000000000
--- a/dev-java/jsr305/jsr305-3.0.1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Annotations for Software Defect Detection in Java"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=305"
-SRC_URI="http://central.maven.org/maven2/com/google/code/findbugs/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr305/jsr305-3.0.2-r1.ebuild b/dev-java/jsr305/jsr305-3.0.2-r1.ebuild
new file mode 100644
index 000000000000..83b864f8feb9
--- /dev/null
+++ b/dev-java/jsr305/jsr305-3.0.2-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="source doc"
+MAVEN_ID="com.google.code.findbugs:jsr305:3.0.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Annotations for Software Defect Detection in Java"
+HOMEPAGE="https://jcp.org/en/jsr/detail?id=305"
+SRC_URI="https://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/${PV}/jsr305-${PV}-sources.jar"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
diff --git a/dev-java/jsr305/jsr305-3.0.2.ebuild b/dev-java/jsr305/jsr305-3.0.2.ebuild
deleted file mode 100644
index 13fb5256256d..000000000000
--- a/dev-java/jsr305/jsr305-3.0.2.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Annotations for Software Defect Detection in Java"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=305"
-SRC_URI="http://central.maven.org/maven2/com/google/code/findbugs/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr305/metadata.xml b/dev-java/jsr305/metadata.xml
index 37998bf40746..6ef2d50cf07e 100644
--- a/dev-java/jsr305/metadata.xml
+++ b/dev-java/jsr305/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jsr311-api/Manifest b/dev-java/jsr311-api/Manifest
deleted file mode 100644
index 0c6118dea72f..000000000000
--- a/dev-java/jsr311-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr311-api-1.1.1-sources.jar 70022 BLAKE2B ca1c08bbdc256475adb89642d97ee278f0a26bd1191a29460a928a5148449207e41906eddc7a76bcfa8451cb241230ed8010e261ba8ac37ca0d260d6c4d1a3b9 SHA512 4f32eb290aa312794ae91b3b4e2baa72efbcf2036962c7223320f7f7e7cd9b5de10c4acb1c92277df946b12710e0699bc1d3ddd7459903c43107437c21cb5542
diff --git a/dev-java/jsr311-api/jsr311-api-1.1.1.ebuild b/dev-java/jsr311-api/jsr311-api-1.1.1.ebuild
deleted file mode 100644
index 0a55c763d1c7..000000000000
--- a/dev-java/jsr311-api/jsr311-api-1.1.1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JAX-RS: Java API for RESTful Web Services"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=311"
-SRC_URI="http://repo1.maven.org/maven2/javax/ws/rs/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr311-api/metadata.xml b/dev-java/jsr311-api/metadata.xml
deleted file mode 100644
index 9d9f207e4b59..000000000000
--- a/dev-java/jsr311-api/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="person">
- <email>robbat2@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-java/jsr322/Manifest b/dev-java/jsr322/Manifest
deleted file mode 100644
index be702f795177..000000000000
--- a/dev-java/jsr322/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr322-1.5.jar 86462 BLAKE2B e39aa3573ec711c721ed1cdf6ba3a3d58eb267ff6e05222852ba0d424100dfd9048f39e3f22910e70da60c8cbfff7ecd552488122789ade09a21972d8373e589 SHA512 e96d54f8ac8279e53754a3950590382f7857abf26a0a97f7ad70dc72e0da66c11c537627a329bee943756ffbb4d96e47b0501663b51c3775fb1dd5e8bfe3a9ae
diff --git a/dev-java/jsr322/jsr322-1.5.ebuild b/dev-java/jsr322/jsr322-1.5.ebuild
deleted file mode 100644
index a6017011f867..000000000000
--- a/dev-java/jsr322/jsr322-1.5.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source doc"
-
-MY_PN="connector-api"
-MY_P="${MY_PN}-${PV}"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java EE Connector Architecture"
-HOMEPAGE="http://jcp.org/en/jsr/detail?id=322"
-SRC_URI="https://repo1.maven.org/maven2/javax/resource/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr322/metadata.xml b/dev-java/jsr322/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/jsr322/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jsr67/Manifest b/dev-java/jsr67/Manifest
deleted file mode 100644
index 48433b78a147..000000000000
--- a/dev-java/jsr67/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jsr67-1.3.jar 327033 BLAKE2B cdfcb6d600a3b6cf6d355906eced551053f2cf608596dacfa477337d54eb47ef5dd6d87f508c59587453972d0eb547e6d6863ff57ec1d3c9e366f812c05a87c4 SHA512 c4145e5870af677542a09a17b7b57d9e5501f6354b26743b9eb9946dbd263114eb705c023af996ddcb256961df28a7ac2420a54fcdd69f73c8595901ee21760a
diff --git a/dev-java/jsr67/jsr67-1.3-r1.ebuild b/dev-java/jsr67/jsr67-1.3-r1.ebuild
deleted file mode 100644
index e9e87397f717..000000000000
--- a/dev-java/jsr67/jsr67-1.3-r1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-MY_PN="saaj-impl"
-MY_P="${MY_PN}-${PV}"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SAAJ 1.3 (AKA JSR-67 MR3) API"
-HOMEPAGE="https://jcp.org/en/jsr/detail?id=67"
-SRC_URI="https://repo1.maven.org/maven2/com/sun/xml/messaging/${MY_PN%%-*}/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="sun-jsr67"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/jsr67/metadata.xml b/dev-java/jsr67/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/jsr67/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jss/Manifest b/dev-java/jss/Manifest
deleted file mode 100644
index 08f711777829..000000000000
--- a/dev-java/jss/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jss-4.3.2.tar.bz2 435542 BLAKE2B 9623018e6e67654219fa439fdc907777cd286aa28b6bdbafee39a7082f949bc393d60dba32ca0b49178ecd423dcff0aa3ad411abb9db9332c6429d7751d89127 SHA512 3296da72f204fc4a0ea58dd889cf2721a4afa0ec7b5406312e64354cc67edcfc370140ad22a24f0dfcf11e438e69ebe9da45a70b5cbaa4026b40fd5fcf96c232
diff --git a/dev-java/jss/files/jss-3.4-target_source.patch b/dev-java/jss/files/jss-3.4-target_source.patch
deleted file mode 100644
index e024a0b8b622..000000000000
--- a/dev-java/jss/files/jss-3.4-target_source.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nru jss-3.4-src/mozilla/security/jss/build_java.pl jss-3.4-src.patched/mozilla/security/jss/build_java.pl
---- jss-3.4-src/mozilla/security/jss/build_java.pl 2002-10-17 02:33:29.000000000 +0200
-+++ jss-3.4-src.patched/mozilla/security/jss/build_java.pl 2006-08-15 00:53:05.000000000 +0200
-@@ -190,7 +190,7 @@
- #
- if( scalar(@source_list) > 0 ) {
- ensure_dir_exists($class_dir);
-- print_do("$javac $javac_opt_flag -sourcepath . -d $class_dir " .
-+ print_do("$javac $ENV{JAVA_GENTOO_OPTS} $javac_opt_flag -sourcepath . -d $class_dir " .
- "$classpath " . join(" ",@source_list));
- }
-
diff --git a/dev-java/jss/files/jss-4.2.5-use_pkg-config.patch b/dev-java/jss/files/jss-4.2.5-use_pkg-config.patch
deleted file mode 100644
index a2c3a3e5ad93..000000000000
--- a/dev-java/jss/files/jss-4.2.5-use_pkg-config.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Submitted By: Mario Fetka (mario-fetka at gmx dot at)
-Date: 2007-10-06
-Initial Package Version: 4.2.5
-Origin: me
-Upstream Status: #392775 UNCONFIRMED
-Description: this patch adds pkgconfig support to jss coreconf
-!!!! no check for NSS_PKGCONFIG NSPR_PKGCONFIG at the moment !!!!
-
-diff -Naur mozilla.orig/security/coreconf/location.mk mozilla/security/coreconf/location.mk
---- mozilla.orig/security/coreconf/location.mk 2006-02-27 21:18:31.000000000 +0000
-+++ mozilla/security/coreconf/location.mk 2007-10-06 10:10:17.000000000 +0000
-@@ -67,6 +67,13 @@
-
- GARBAGE += $(DEPENDENCIES) core $(wildcard core.[0-9]*)
-
-+ifdef USE_PKGCONFIG
-+ NSPR_INCLUDE_DIR = `pkg-config --variable=includedir $(NSPR_PKGCONFIG)`
-+ NSPR_LIB_DIR = `pkg-config --variable=libdir $(NSPR_PKGCONFIG)`
-+ NSS_INCLUDE_DIR = `pkg-config --variable=includedir $(NSS_PKGCONFIG)`
-+ NSS_LIB_DIR = `pkg-config --variable=libdir $(NSS_PKGCONFIG)`
-+endif
-+
- ifdef NSPR_INCLUDE_DIR
- INCLUDES += -I$(NSPR_INCLUDE_DIR)
- endif
diff --git a/dev-java/jss/files/jss-4.3-cflags.patch b/dev-java/jss/files/jss-4.3-cflags.patch
deleted file mode 100644
index 3298a2765fc1..000000000000
--- a/dev-java/jss/files/jss-4.3-cflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- security/coreconf/command.mk 2007-10-23 23:55:00.000000000 +0200
-+++ security/coreconf/command.mk.b 2013-06-05 11:15:31.092383902 +0200
-@@ -45,7 +45,7 @@
- CCF = $(CC) $(CFLAGS)
- LINK_DLL = $(LINK) $(OS_DLLFLAGS) $(DLLFLAGS)
- LINK_EXE = $(LINK) $(OS_LFLAGS) $(LFLAGS)
--CFLAGS = $(OPTIMIZER) $(OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \
-+CFLAGS += $(OPTIMIZER) $(OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \
- $(XCFLAGS)
- PERL = perl
- RANLIB = echo
diff --git a/dev-java/jss/files/jss-4.3-javadoc.patch b/dev-java/jss/files/jss-4.3-javadoc.patch
deleted file mode 100644
index 891e1ff93838..000000000000
--- a/dev-java/jss/files/jss-4.3-javadoc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- security/jss/build_java.pl.orig 2015-10-01 23:04:22.540035573 +0100
-+++ security/jss/build_java.pl 2015-10-01 23:11:41.413230402 +0100
-@@ -323,7 +323,7 @@
- ensure_dir_exists("$dist_dir/jssdoc");
- my $targets = join(" ", @packages);
- print "$targets\n";
-- print_do("$javadoc -breakiterator -sourcepath . -d $dist_dir/jssdoc $html_header_opt $targets");
-+ print_do("$javadoc -Xdoclint:none -breakiterator -sourcepath . -d $dist_dir/jssdoc $html_header_opt $targets");
- print_do("cp $dist_dir/jssdoc/index.html $dist_dir/jssdoc/index.html.bak");
- print_do("cp $dist_dir/jssdoc/overview-summary.html $dist_dir/jssdoc/index.html");
- }
diff --git a/dev-java/jss/files/jss-4.3-secitem.patch b/dev-java/jss/files/jss-4.3-secitem.patch
deleted file mode 100644
index d9e7da394075..000000000000
--- a/dev-java/jss/files/jss-4.3-secitem.patch
+++ /dev/null
@@ -1,154 +0,0 @@
---- a/security/jss/org/mozilla/jss/CryptoManager.c 2008-05-22 06:28:09.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/CryptoManager.c 2013-06-05 11:09:58.649080012 +0200
-@@ -35,7 +35,7 @@
- * ***** END LICENSE BLOCK ***** */
- #include "_jni/org_mozilla_jss_CryptoManager.h"
-
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <secmod.h>
- #include <cert.h>
- #include <certt.h>
---- a/security/jss/org/mozilla/jss/SecretDecoderRing/KeyManager.c 2003-12-19 20:36:30.000000000 +0100
-+++ b/security/jss/org/mozilla/jss/SecretDecoderRing/KeyManager.c 2013-06-05 11:09:58.585746684 +0200
-@@ -36,7 +36,7 @@
-
- #include "_jni/org_mozilla_jss_SecretDecoderRing_KeyManager.h"
- #include <nspr.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <jss_exceptions.h>
- #include <jssutil.h>
- #include <pk11func.h>
---- a/security/jss/org/mozilla/jss/crypto/PQGParams.c 2004-04-25 17:02:21.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/crypto/PQGParams.c 2013-06-05 11:09:58.589080017 +0200
-@@ -39,7 +39,7 @@
- #include <nspr.h>
-
- #include <plarena.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <secoidt.h>
- #include <keyt.h> /* for PQGParams */
- #include <pk11pqg.h>
---- a/security/jss/org/mozilla/jss/crypto/SecretDecoderRing.c 2002-01-08 20:38:46.000000000 +0100
-+++ b/security/jss/org/mozilla/jss/crypto/SecretDecoderRing.c 2013-06-05 11:09:58.585746684 +0200
-@@ -36,7 +36,7 @@
-
- #include "_jni/org_mozilla_jss_crypto_SecretDecoderRing.h"
- #include <nspr.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <pk11sdr.h>
- #include <jss_exceptions.h>
- #include <jssutil.h>
---- a/security/jss/org/mozilla/jss/pkcs11/PK11Cipher.c 2004-04-25 17:02:22.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11Cipher.c 2013-06-05 11:09:58.632413347 +0200
-@@ -40,7 +40,7 @@
- #include <plarena.h>
- #include <seccomon.h>
- #include <pk11func.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
-
- /* JSS includes */
- #include <java_ids.h>
---- a/security/jss/org/mozilla/jss/pkcs11/PK11KeyPairGenerator.c 2006-02-23 02:21:42.000000000 +0100
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11KeyPairGenerator.c 2013-06-05 11:09:58.595746684 +0200
-@@ -40,7 +40,7 @@
- #include <pk11pqg.h>
- #include <nspr.h>
- #include <key.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
-
- #include <jssutil.h>
- #include <pk11util.h>
---- a/security/jss/org/mozilla/jss/pkcs11/PK11KeyWrapper.c 2006-02-23 02:21:42.000000000 +0100
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11KeyWrapper.c 2013-06-05 11:09:58.629080014 +0200
-@@ -40,7 +40,7 @@
- #include <plarena.h>
- #include <seccomon.h>
- #include <pk11func.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <keyt.h>
-
- /* JSS includes */
---- a/security/jss/org/mozilla/jss/pkcs11/PK11MessageDigest.c 2004-04-25 17:02:22.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11MessageDigest.c 2013-06-05 11:09:58.609080016 +0200
-@@ -40,7 +40,7 @@
- #include <plarena.h>
- #include <seccomon.h>
- #include <pk11func.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
-
- /* JSS includes */
- #include <java_ids.h>
---- a/security/jss/org/mozilla/jss/pkcs11/PK11PrivKey.c 2006-04-25 03:26:42.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11PrivKey.c 2013-06-05 11:09:58.609080016 +0200
-@@ -43,7 +43,7 @@
- #include <secerr.h>
- #include <nspr.h>
- #include <key.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
-
- #include <jss_bigint.h>
- #include <jssutil.h>
---- a/security/jss/org/mozilla/jss/pkcs11/PK11Signature.c 2004-04-25 17:02:22.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11Signature.c 2013-06-05 11:09:58.605746683 +0200
-@@ -35,7 +35,7 @@
- * ***** END LICENSE BLOCK ***** */
-
- #include <nspr.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <secoidt.h>
- #include <secmodt.h>
- #include <pk11func.h>
---- a/security/jss/org/mozilla/jss/pkcs11/PK11Token.c 2007-11-10 01:37:57.000000000 +0100
-+++ b/security/jss/org/mozilla/jss/pkcs11/PK11Token.c 2013-06-05 11:09:58.622413348 +0200
-@@ -53,7 +53,7 @@
- #include <jss_bigint.h>
- #include <Algorithm.h>
-
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include "java_ids.h"
-
- #include "pk11util.h"
---- a/security/jss/org/mozilla/jss/ssl/callbacks.c 2004-09-03 20:32:03.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/ssl/callbacks.c 2013-06-05 11:09:58.565746686 +0200
-@@ -39,7 +39,7 @@
- #include <nspr.h>
- #include <java_ids.h>
- #include <jss_exceptions.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include <jssutil.h>
- #include <certt.h>
- #include <keythi.h>
---- a/security/jss/org/mozilla/jss/util/jssutil.c 2004-04-25 17:02:29.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/util/jssutil.c 2013-06-05 11:09:58.579080018 +0200
-@@ -38,7 +38,7 @@
- #include <nspr.h>
- #include <plstr.h>
- #include <seccomon.h>
--#include <secitem.h>
-+#include <nss/secitem.h>
- #include "jssutil.h"
- #include "jss_bigint.h"
- #include "jss_exceptions.h"
---- a/security/jss/org/mozilla/jss/util/jssutil.h 2004-04-25 17:02:29.000000000 +0200
-+++ b/security/jss/org/mozilla/jss/util/jssutil.h 2013-06-05 11:09:49.829080794 +0200
-@@ -39,7 +39,7 @@
- /* Need to include these first.
- * #include <nspr.h>
- * #include <jni.h>
-- * #include <secitem.h>
-+ * #include <nss/secitem.h>
- */
-
- PR_BEGIN_EXTERN_C
diff --git a/dev-java/jss/files/jss-4.3.2-ldflags.patch b/dev-java/jss/files/jss-4.3.2-ldflags.patch
deleted file mode 100644
index fde2e26bf77c..000000000000
--- a/dev-java/jss/files/jss-4.3.2-ldflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- security/coreconf/Linux.mk.orig 2010-01-15 22:19:00.000000000 +0000
-+++ security/coreconf/Linux.mk 2015-09-27 22:17:50.102547607 +0100
-@@ -142,7 +142,7 @@
- ARCH = linux
-
- DSO_CFLAGS = -fPIC
--DSO_LDOPTS = -shared $(ARCHFLAG)
-+DSO_LDOPTS = $(LDFLAGS) -shared $(ARCHFLAG)
- # The linker on Red Hat Linux 7.2 and RHEL 2.1 (GNU ld version 2.11.90.0.8)
- # incorrectly reports undefined references in the libraries we link with, so
- # we don't use -z defs there.
diff --git a/dev-java/jss/jss-4.3.2.ebuild b/dev-java/jss/jss-4.3.2.ebuild
deleted file mode 100644
index 077c3bf848fb..000000000000
--- a/dev-java/jss/jss-4.3.2.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit multilib toolchain-funcs java-pkg-2
-
-DESCRIPTION="Network Security Services for Java (JSS)"
-HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/JSS"
-# 4.3.2 was released but was seemingly never announced. The binary jar
-# exists on Mozilla's servers but Chewi could only find a source tarball
-# at https://obs.kolabsys.com/package/show/Kolab:3.4/jss. However, you
-# need to register in order to download it, hence he has mirrored it.
-SRC_URI="https://dev.gentoo.org/~chewi/distfiles/${P}.tar.bz2"
-LICENSE="MPL-1.1"
-SLOT="3.4"
-KEYWORDS="amd64 x86"
-IUSE="examples test"
-
-CDEPEND=">=dev-libs/nspr-4.7.1
- >=dev-libs/nss-3.12.5"
-
-DEPEND="${CDEPEND}
- dev-lang/perl
- >=virtual/jdk-1.6
- virtual/pkgconfig
- test? ( dev-libs/nss[utils] )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}/mozilla"
-
-java_prepare() {
- epatch "${FILESDIR}"/${PN}-3.4-target_source.patch
- epatch "${FILESDIR}"/${PN}-4.2.5-use_pkg-config.patch
- epatch "${FILESDIR}"/${PN}-4.3-cflags.patch
- epatch "${FILESDIR}"/${PN}-4.3.2-ldflags.patch
- epatch "${FILESDIR}"/${PN}-4.3-secitem.patch
-
- if java-pkg_is-vm-version-ge 1.8; then
- epatch "${FILESDIR}"/${PN}-4.3-javadoc.patch
- fi
-}
-
-src_compile() {
- local ARGS=(
- "CC=$(tc-getCC)"
- "AR=$(tc-getAR) cr \$@"
- "OS_RELEASE=2.6"
- "BUILD_OPT=1"
- )
-
- export JAVA_GENTOO_OPTS="$(java-pkg_javac-args)"
- use amd64 && export USE_64=1
-
- cd "${S}/security/coreconf" || die
- emake -j1 "${ARGS[@]}"
-
- cd "${S}/security/jss" || die
- emake -j1 "${ARGS[@]}" USE_PKGCONFIG=1 NSS_PKGCONFIG=nss NSPR_PKGCONFIG=nspr
- use doc && emake -j1 "${ARGS[@]}" javadoc
-}
-
-# Chewi has managed to reach a test pass rate of 31/40 (78%) but the
-# remainder fail due to JSS not having kept pace with the ciphersuites
-# in NSS. There's not much we can do about that. The suite also leaves
-# java processes running and exits successfully on failure.
-RESTRICT="test"
-
-src_test() {
- # Parts of NSS are required for the tests.
- ln -snf "${EROOT}usr/$(get_libdir)/libnssckbi.so" dist/Linux*.OBJ/lib/ || die
- ln -snf "${EROOT}usr/bin" dist/Linux*.OBJ/ || die
-
- # The tests must be run from this directory.
- cd security/jss/org/mozilla/jss/tests || die
- BUILD_OPT=1 perl all.pl dist "${S}"/dist/Linux*.OBJ/ || die "tests failed"
-}
-
-src_install() {
- java-pkg_dojar dist/*.jar
-
- # Use this instead of the one in dist because it is a symlink
- # and doso handles symlinks by just symlinking to the original
- java-pkg_doso ./security/${PN}/lib/*/*.so
-
- use doc && java-pkg_dojavadoc dist/jssdoc
- use source && java-pkg_dosrc ./security/jss/org
- use examples && java-pkg_doexamples ./security/jss/samples
-}
diff --git a/dev-java/jss/metadata.xml b/dev-java/jss/metadata.xml
deleted file mode 100644
index a3b5c860a274..000000000000
--- a/dev-java/jss/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-
-Network Security Services for Java (JSS) is a Java interface to NSS. It supports
-most of the security standards and encryption technologies supported by NSS. JSS
-also provides a pure Java interface for ASN.1 types and BER/DER encoding.
-
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/jssc/Manifest b/dev-java/jssc/Manifest
deleted file mode 100644
index d6ed149d0aba..000000000000
--- a/dev-java/jssc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jssc-2.8.0.zip 171914 BLAKE2B 8bac5000d5512683809efab0ef041228f846390b29fa51ad5295d655dbec031dfc0a7ad67f7589d3f8b5dcfa8facd9896c7ec545b9db9c442eb3d34b569cd948 SHA512 4d767054085a79cff4fe60d96d664918f69a791c8263d96c9d9fd622070f567acacb621079f23d5c54253366beb9d2a01fea7ea48b95f6267bc693a9bacb8466
diff --git a/dev-java/jssc/files/jssc-2.8.0-library-load.patch b/dev-java/jssc/files/jssc-2.8.0-library-load.patch
deleted file mode 100644
index 829a18af69bd..000000000000
--- a/dev-java/jssc/files/jssc-2.8.0-library-load.patch
+++ /dev/null
@@ -1,117 +0,0 @@
---- src/java/jssc/SerialNativeInterface.java.orig 2016-03-13 16:35:20.521644430 -0400
-+++ src/java/jssc/SerialNativeInterface.java 2016-03-13 16:38:00.022571256 -0400
-@@ -44,7 +44,7 @@
- public static final int OS_SOLARIS = 2;//since 0.9.0
- public static final int OS_MAC_OS_X = 3;//since 0.9.0
-
-- private static int osType = -1;
-+ private static int osType = OS_LINUX;
-
- /**
- * @since 2.3.0
-@@ -77,104 +77,11 @@
- public static final String PROPERTY_JSSC_PARMRK = "JSSC_PARMRK";
-
- static {
-- String libFolderPath;
-- String libName;
--
-- String osName = System.getProperty("os.name");
-- String architecture = System.getProperty("os.arch");
-- String userHome = System.getProperty("user.home");
-- String fileSeparator = System.getProperty("file.separator");
-- String tmpFolder = System.getProperty("java.io.tmpdir");
--
-- //since 2.3.0 ->
-- String libRootFolder = new File(userHome).canWrite() ? userHome : tmpFolder;
-- //<- since 2.3.0
--
-- String javaLibPath = System.getProperty("java.library.path");//since 2.1.0
--
-- if(osName.equals("Linux")){
-- osName = "linux";
-- osType = OS_LINUX;
-- }
-- else if(osName.startsWith("Win")){
-- osName = "windows";
-- osType = OS_WINDOWS;
-- }//since 0.9.0 ->
-- else if(osName.equals("SunOS")){
-- osName = "solaris";
-- osType = OS_SOLARIS;
-- }
-- else if(osName.equals("Mac OS X") || osName.equals("Darwin")){//os.name "Darwin" since 2.6.0
-- osName = "mac_os_x";
-- osType = OS_MAC_OS_X;
-- }//<- since 0.9.0
--
-- if(architecture.equals("i386") || architecture.equals("i686")){
-- architecture = "x86";
-- }
-- else if(architecture.equals("amd64") || architecture.equals("universal")){//os.arch "universal" since 2.6.0
-- architecture = "x86_64";
-- }
-- else if(architecture.equals("arm")) {//since 2.1.0
-- String floatStr = "sf";
-- if(javaLibPath.toLowerCase().contains("gnueabihf") || javaLibPath.toLowerCase().contains("armhf")){
-- floatStr = "hf";
-- }
-- else {
-- try {
-- Process readelfProcess = Runtime.getRuntime().exec("readelf -A /proc/self/exe");
-- BufferedReader reader = new BufferedReader(new InputStreamReader(readelfProcess.getInputStream()));
-- String buffer = "";
-- while((buffer = reader.readLine()) != null && !buffer.isEmpty()){
-- if(buffer.toLowerCase().contains("Tag_ABI_VFP_args".toLowerCase())){
-- floatStr = "hf";
-- break;
-- }
-- }
-- reader.close();
-- }
-- catch (Exception ex) {
-- //Do nothing
-- }
-- }
-- architecture = "arm" + floatStr;
-- }
--
-- libFolderPath = libRootFolder + fileSeparator + ".jssc" + fileSeparator + osName;
-- libName = "jSSC-" + libVersion + "_" + architecture;
-- libName = System.mapLibraryName(libName);
--
-- if(libName.endsWith(".dylib")){//Since 2.1.0 MacOSX 10.8 fix
-- libName = libName.replace(".dylib", ".jnilib");
-- }
--
-- boolean loadLib = false;
--
-- if(isLibFolderExist(libFolderPath)){
-- if(isLibFileExist(libFolderPath + fileSeparator + libName)){
-- loadLib = true;
-- }
-- else {
-- if(extractLib((libFolderPath + fileSeparator + libName), osName, libName)){
-- loadLib = true;
-- }
-- }
-- }
-- else {
-- if(new File(libFolderPath).mkdirs()){
-- if(extractLib((libFolderPath + fileSeparator + libName), osName, libName)){
-- loadLib = true;
-- }
-- }
-- }
--
-- if (loadLib) {
-- System.load(libFolderPath + fileSeparator + libName);
-+ System.loadLibrary("jssc");
- String versionBase = getLibraryBaseVersion();
- String versionNative = getNativeLibraryVersion();
- if (!versionBase.equals(versionNative)) {
- System.err.println("Warning! jSSC Java and Native versions mismatch (Java: " + versionBase + ", Native: " + versionNative + ")");
-- }
- }
- }
-
diff --git a/dev-java/jssc/jssc-2.8.0-r1.ebuild b/dev-java/jssc/jssc-2.8.0-r1.ebuild
deleted file mode 100644
index e36b1c84a10c..000000000000
--- a/dev-java/jssc/jssc-2.8.0-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple toolchain-funcs
-
-MY_PN="java-simple-serial-connector"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Java Simple Serial Connector"
-HOMEPAGE="https://github.com/scream3r/java-simple-serial-connector"
-SRC_URI="https://github.com/scream3r/${MY_PN}/archive/${PV}.zip -> ${P}.zip"
-
-LICENSE="GPL-1"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-PATCHES=(
- "${FILESDIR}/${P}-library-load.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- epatch "${PATCHES[@]}"
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- $(tc-getCXX) \
- ${CPP_FLAGS} ${CXX_FLAGS} \
- -c -o ${PN}.o \
- -fPIC -Wall \
- -I$(java-config-2 -o)/include \
- -I$(java-config-2 -o)/include/linux \
- "${S}/src/cpp/_nix_based/${PN}.cpp" || die
-
- $(tc-getCXX) \
- -Wl,-soname,libjssc.so \
- -shared -o "libjssc.so.${PV}" \
- -Wall "${PN}.o" || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- dolib libjssc*
- dosym "libjssc.so.${PV}" /usr/$(get_libdir)/libjssc.so
-}
diff --git a/dev-java/jssc/metadata.xml b/dev-java/jssc/metadata.xml
deleted file mode 100644
index 4767debd6260..000000000000
--- a/dev-java/jssc/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">scream3r/java-simple-serial-connector</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jstl-api/Manifest b/dev-java/jstl-api/Manifest
new file mode 100644
index 000000000000..0133dc5a57f2
--- /dev/null
+++ b/dev-java/jstl-api/Manifest
@@ -0,0 +1 @@
+DIST jstl-1.2.7.tar.gz 291252 BLAKE2B 37383f519615f41e4247b1e2207cf1cc57df3a3d01f939bb41cc400dbdb49b331fc0bc3e5ee26c3d9d1e361bd4ec11efd5b6e6a9cc6cafee2b196c1d9491d07f SHA512 2b52869fe5f6d586b8505a2a417790ffad7112db17af667cd52fb567fb6c7ee4a3b3906a072d0d4e7ef463b56a1e5cf9a955b9fbaab97c91a1a286e05add23c3
diff --git a/dev-java/jstl-api/jstl-api-1.2.7.ebuild b/dev-java/jstl-api/jstl-api-1.2.7.ebuild
new file mode 100644
index 000000000000..2d1f36d7caa3
--- /dev/null
+++ b/dev-java/jstl-api/jstl-api-1.2.7.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api:1.2.7"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Standard Tag Library API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jstl"
+SRC_URI="https://github.com/jakartaee/tags/archive/${PV}-RELEASE.tar.gz -> jstl-${PV}.tar.gz"
+S="${WORKDIR}/tags-${PV}-RELEASE"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="
+ dev-java/javax-el-api:2.2
+ dev-java/javax-jsp-api:2.2
+ dev-java/javax-servlet-api:2.5
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+DOCS=(
+ CONTRIBUTING.md
+ NOTICE.md
+ README.md
+)
+
+JAVA_SRC_DIR="api/src/main/java"
diff --git a/dev-java/jstl-api/metadata.xml b/dev-java/jstl-api/metadata.xml
new file mode 100644
index 000000000000..6f95d33b7ee3
--- /dev/null
+++ b/dev-java/jstl-api/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">jakartaee/tags</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jstl/Manifest b/dev-java/jstl/Manifest
new file mode 100644
index 000000000000..0133dc5a57f2
--- /dev/null
+++ b/dev-java/jstl/Manifest
@@ -0,0 +1 @@
+DIST jstl-1.2.7.tar.gz 291252 BLAKE2B 37383f519615f41e4247b1e2207cf1cc57df3a3d01f939bb41cc400dbdb49b331fc0bc3e5ee26c3d9d1e361bd4ec11efd5b6e6a9cc6cafee2b196c1d9491d07f SHA512 2b52869fe5f6d586b8505a2a417790ffad7112db17af667cd52fb567fb6c7ee4a3b3906a072d0d4e7ef463b56a1e5cf9a955b9fbaab97c91a1a286e05add23c3
diff --git a/dev-java/jstl/jstl-1.2.7.ebuild b/dev-java/jstl/jstl-1.2.7.ebuild
new file mode 100644
index 000000000000..a7312416c603
--- /dev/null
+++ b/dev-java/jstl/jstl-1.2.7.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.glassfish.web:javax.servlet.jsp.jstl:1.2.7"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jakarta Standard Tag Library API"
+HOMEPAGE="https://projects.eclipse.org/projects/ee4j.jstl"
+SRC_URI="https://github.com/jakartaee/tags/archive/${PV}-RELEASE.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/tags-${PV}-RELEASE"
+
+LICENSE="EPL-2.0 GPL-2-with-classpath-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="
+ dev-java/javax-el-api:2.2
+ dev-java/javax-jsp-api:2.2
+ dev-java/javax-servlet-api:2.5
+ dev-java/jstl-api:0
+ dev-java/xalan:0
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+DOCS=(
+ CONTRIBUTING.md
+ NOTICE.md
+ README.md
+)
+
+JAVA_JAR_FILENAME="jstl-impl.jar"
+JAVA_RESOURCE_DIRS="impl/src/main/resources"
+JAVA_SRC_DIR="impl/src/main/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # java-pkg-simple expects resource files in JAVA_RESOURCE_DIRS
+ cp -r impl/src/main/java/* impl/src/main/resources || die
+ find impl/src/main/resources -type f \
+ \( -name '*.java' \
+ -o -name '*.txt' \
+ -o -name '*Parser.jj' \
+ -o -name 'spath.tld' \
+ \) -exec rm -rf {} + || die "deleting classes failed"
+}
diff --git a/dev-java/jstl/metadata.xml b/dev-java/jstl/metadata.xml
new file mode 100644
index 000000000000..6f95d33b7ee3
--- /dev/null
+++ b/dev-java/jstl/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">jakartaee/tags</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jta/Manifest b/dev-java/jta/Manifest
deleted file mode 100644
index 50bda7fa8158..000000000000
--- a/dev-java/jta/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jta-1_1-classes.zip 13236 BLAKE2B f2e1ffd531fce804d562c4cdcbe9b260d08eb2bcd79a879f94fbd3e23801849cbf311d8f7410a9776f9a8866027dcedcac479a64444321e8c6b2b23bd9a69054 SHA512 fb8b76223ccdec0ef97b00d7248d74b6316dd67c570667f3a644d03b05cd28af061a191cf71b6624fd4a4195f7bc107281eb847fc4c0ee4606c85c414da79a14
diff --git a/dev-java/jta/jta-1.1-r1.ebuild b/dev-java/jta/jta-1.1-r1.ebuild
deleted file mode 100644
index 4d3770f9bca4..000000000000
--- a/dev-java/jta/jta-1.1-r1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JTA_ZIP="jta-1_1-classes.zip"
-
-inherit java-pkg-2
-
-DESCRIPTION="The Java Transaction API"
-HOMEPAGE="https://www.oracle.com/java/technologies/jta.html"
-SRC_URI="${JTA_ZIP}"
-
-LICENSE="sun-bcla-jta"
-SLOT=0
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
-
-RESTRICT="fetch"
-
-S="${WORKDIR}"
-
-pkg_nofetch() {
- einfo
- einfo " Due to license restrictions, we cannot fetch the"
- einfo " distributables automagically."
- einfo
- einfo " 1. Visit ${HOMEPAGE}"
- einfo " 2. Select 'Java Transaction API Specification 1.1 Maintenance Release'"
- einfo " 3. Download ${JTA_ZIP}"
- einfo " 4. Move file to your DISTDIR directory"
- einfo " 5. Restart the emerge process"
- einfo
-}
-
-src_unpack() {
- unzip -qq "${DISTDIR}"/${JTA_ZIP} || die "failed to unpack"
-}
-
-src_compile() {
- jar cvf jta.jar javax/ || die "failed to create jar"
-}
-
-src_install() {
- java-pkg_dojar jta.jar
-}
diff --git a/dev-java/jta/metadata.xml b/dev-java/jta/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/jta/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jtds/jtds-1.3.1-r1.ebuild b/dev-java/jtds/jtds-1.3.1-r1.ebuild
new file mode 100644
index 000000000000..650c6251d4b3
--- /dev/null
+++ b/dev-java/jtds/jtds-1.3.1-r1.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"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="jTDS - SQL Server and Sybase JDBC driver"
+HOMEPAGE="http://jtds.sourceforge.net"
+SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}-src.zip"
+
+LICENSE="LGPL-2.1"
+SLOT="1.3"
+KEYWORDS="amd64 x86"
+RESTRICT="test" # Needs a running server
+
+CDEPEND="dev-java/jcifs:1.1"
+
+DEPEND="${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CDEPEND}
+ >=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+
+JAVA_SRC_DIR="src/main"
+JAVA_ENCODING="ISO-8859-1"
+JAVA_GENTOO_CLASSPATH="jcifs-1.1"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ java-pkg_addres ${PN}.jar ${JAVA_SRC_DIR}
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ dodoc CHANGELOG README*
+}
diff --git a/dev-java/jtds/jtds-1.3.1.ebuild b/dev-java/jtds/jtds-1.3.1.ebuild
deleted file mode 100644
index fd6ec16d4026..000000000000
--- a/dev-java/jtds/jtds-1.3.1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="jTDS - SQL Server and Sybase JDBC driver"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip"
-HOMEPAGE="http://jtds.sourceforge.net"
-LICENSE="LGPL-2.1"
-SLOT="1.3"
-KEYWORDS="amd64 x86"
-RESTRICT="test" # Needs a running server
-
-CDEPEND="dev-java/jcifs:1.1"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- app-arch/unzip"
-
-JAVA_SRC_DIR="src/main"
-JAVA_ENCODING="ISO-8859-1"
-JAVA_GENTOO_CLASSPATH="jcifs-1.1"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar ${JAVA_SRC_DIR}
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc CHANGELOG README*
-}
diff --git a/dev-java/jtds/metadata.xml b/dev-java/jtds/metadata.xml
index 816c7d4dfbca..bb04112b5b30 100644
--- a/dev-java/jtds/metadata.xml
+++ b/dev-java/jtds/metadata.xml
@@ -1,19 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<longdescription>
-jTDS is an open source 100% pure Java (type 4) JDBC 3.0 driver for Microsoft SQL
-Server (6.5, 7, 2000 and 2005) and Sybase (10, 11, 12). jTDS is based on the
-work of the FreeTDS project and is currently the fastest complete JDBC driver
-for SQL Server and Sybase. Starting with release 0.9 jTDS is 100% JDBC 3.0
-compatible, supporting forward-only and scrollable/updateable ResultSets,
-multiple concurrent (completely independent) Statements per Connection and
-implementing all the DatabaseMetaData and ResultSetMetaData methods.
-</longdescription>
+ jTDS is an open source 100% pure Java (type 4) JDBC 3.0 driver for Microsoft SQL
+ Server (6.5, 7, 2000 and 2005) and Sybase (10, 11, 12). jTDS is based on the
+ work of the FreeTDS project and is currently the fastest complete JDBC driver
+ for SQL Server and Sybase. Starting with release 0.9 jTDS is 100% JDBC 3.0
+ compatible, supporting forward-only and scrollable/updateable ResultSets,
+ multiple concurrent (completely independent) Statements per Connection and
+ implementing all the DatabaseMetaData and ResultSetMetaData methods.
+ </longdescription>
<upstream>
<remote-id type="sourceforge">jtds</remote-id>
</upstream>
diff --git a/dev-java/jtidy/files/jtidy-1.0-build.xml.patch b/dev-java/jtidy/files/jtidy-1.0-build.xml.patch
deleted file mode 100644
index fea64813365d..000000000000
--- a/dev-java/jtidy/files/jtidy-1.0-build.xml.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- build.xml.orig 2015-12-01 21:10:36.689000000 +0000
-+++ build.xml 2015-12-01 21:11:05.642000000 +0000
-@@ -9,11 +9,7 @@
- <property name="srczip" value="jtidy-${version}-sources.zip"/>
- <property name="allzip" value="jtidy-${version}.zip"/>
-
-- <target name="clean">
-- <delete dir="${target}"/>
-- </target>
--
-- <target name="jar" depends="clean">
-+ <target name="jar">
- <mkdir dir="${target}"/>
- <mkdir dir="${bin}"/>
- <javac srcdir="${src}" destdir="${bin}" source="1.4" target="1.4"/>
-@@ -30,13 +26,13 @@
- </jar>
- </target>
-
-- <target name="javadoc" depends="clean">
-+ <target name="javadoc">
- <javadoc sourcepath="${src}" destdir="${target}/${doc}" windowtitle=" JTidy ${version} " doctitle="JTidy ${version} API documentation">
- <tag name="todo" scope="all" description="To do:"/>
- </javadoc>
- </target>
-
-- <target name="src" depends="clean">
-+ <target name="src">
- <zip destfile="${target}/${srczip}">
- <fileset dir=".">
- <include name="${src}/**"/>
diff --git a/dev-java/jtidy/jtidy-1.0-r2.ebuild b/dev-java/jtidy/jtidy-1.0-r2.ebuild
new file mode 100644
index 000000000000..3121a966d659
--- /dev/null
+++ b/dev-java/jtidy/jtidy-1.0-r2.ebuild
@@ -0,0 +1,31 @@
+# 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="net.sf.jtidy:jtidy:r${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PV="r938"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="a Java port of HTML Tidy, a HTML syntax checker and pretty printer"
+HOMEPAGE="https://sourceforge.net/projects/jtidy/"
+SRC_URI="https://downloads.sourceforge.net/project/${PN}/JTidy/${MY_PV}/${PN}-${MY_PV}-sources.zip -> ${P}.zip"
+
+LICENSE="HTML-Tidy W3C"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+BDEPEND="app-arch/unzip"
+CP_DEPEND=">=dev-java/ant-1.10.14-r3:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_MAIN_CLASS="org.w3c.tidy.Tidy"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/jtidy/jtidy-1.0.ebuild b/dev-java/jtidy/jtidy-1.0.ebuild
deleted file mode 100644
index f91781cedec6..000000000000
--- a/dev-java/jtidy/jtidy-1.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PV="r938"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="Java port of HTML Tidy, an HTML syntax checker and pretty printer"
-HOMEPAGE="http://jtidy.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}-${MY_PV}-sources.zip -> ${P}.zip"
-LICENSE="HTML-Tidy W3C"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_ANT_ENCODING="UTF-8"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="ant-core"
-EANT_BUILD_TARGET="jar"
-
-S="${WORKDIR}"
-
-PATCHES=(
- "${FILESDIR}"/"${P}-build.xml.patch"
-)
-
-java_prepare() {
- epatch "${PATCHES[@]}"
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- java-pkg_dolauncher "jtidy" --main org.w3c.tidy.Tidy
-
- use doc && java-pkg_dojavadoc target/javadoc/
- use source && java-pkg_dosrc src/main/java
-}
diff --git a/dev-java/jtidy/metadata.xml b/dev-java/jtidy/metadata.xml
index 48c119643336..2c9f2e82ba49 100644
--- a/dev-java/jtidy/metadata.xml
+++ b/dev-java/jtidy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/jtreemap/Manifest b/dev-java/jtreemap/Manifest
deleted file mode 100644
index 7880d1634444..000000000000
--- a/dev-java/jtreemap/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jtreemap-1.1.0.zip 7358161 BLAKE2B 29afa39a3e7e1b581c36bc80d0a15b8b987a87cffad732ca24d3c344c6e8b3071ff6b85bf93266e779e2be722139853cf343ff07b2f280705b63559c59c4fabc SHA512 61c6b5e22cc839d6cfe8368bbd51db94b3667c8f4064645c3d70f5e6c93b029dd495b64b602570f59559dd99723516a197dcd1d915799411dc7f7c516bfce84c
diff --git a/dev-java/jtreemap/jtreemap-1.1.0-r1.ebuild b/dev-java/jtreemap/jtreemap-1.1.0-r1.ebuild
deleted file mode 100644
index 6e31859b2e15..000000000000
--- a/dev-java/jtreemap/jtreemap-1.1.0-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library for treemapping data"
-HOMEPAGE="http://jtreemap.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip -> ${P}.zip"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${PN}-site-${PV}/JTreeMap"
-
-JAVA_SRC_DIR="src/main"
-
-JAVA_ENCODING="ISO-8859-1"
-
-java_prepare() {
- pushd .. > /dev/null || die
- java-pkg_clean
- popd > /dev/null || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${PN}-demo --main net.sf.jtreemap.swing.example.JTreeMapExample
-}
diff --git a/dev-java/jtreemap/metadata.xml b/dev-java/jtreemap/metadata.xml
deleted file mode 100644
index b01b71f46e41..000000000000
--- a/dev-java/jtreemap/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jtreemap</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jts-core/Manifest b/dev-java/jts-core/Manifest
deleted file mode 100644
index 41dbb90572e3..000000000000
--- a/dev-java/jts-core/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jts-1.14.tar.gz 19693410 BLAKE2B 1784032fbd41858caebcca60898d947da4e47e98a33f82a25540bdf940203c923529df09066260b5998f9b85f475a725e32cf01d005401698dde71f380918542 SHA512 1d90f2e2774bf8738ce24fc65c5430f7970fcc1823c304a18bbdc243040e66409fc33bf9058ebc22217640e4c384772f852316031ef1b8779592d0e041e2261d
diff --git a/dev-java/jts-core/jts-core-1.14.ebuild b/dev-java/jts-core/jts-core-1.14.ebuild
deleted file mode 100644
index c69d022e3778..000000000000
--- a/dev-java/jts-core/jts-core-1.14.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# The project recently switched to git. There are no tags yet.
-GIT_REF="f67d35c1da06922c8165f66a919490ee94a04649"
-
-MY_PN="jts"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JTS Topology Suite for Java"
-HOMEPAGE="https://tsusiatsoftware.net/jts/main.html"
-SRC_URI="https://github.com/dr-jts/jts/archive/${GIT_REF}.tar.gz -> ${MY_PN}-${PV}.tar.gz"
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND=">=virtual/jdk-1.7
- app-arch/unzip
- test? ( dev-java/junit:4 )"
-
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/${MY_PN}-${GIT_REF}/${MY_PN}"
-JAVA_SRC_DIR="java/src"
-
-java_prepare() {
- java-pkg_clean
-
- # Use text-based test runner.
- sed -i "s/swingui/textui/g" java/test/test/jts/junit/SimpleTest.java || die
-}
-
-src_test() {
- cd java/test || die
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4)"
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" test.jts.junit.MasterTester
-}
diff --git a/dev-java/jts-core/metadata.xml b/dev-java/jts-core/metadata.xml
deleted file mode 100644
index 1cbcbcf30180..000000000000
--- a/dev-java/jts-core/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">dr-jts/jts</remote-id>
- </upstream>
-</pkgmetadata>
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..4750629545a8
--- /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 ~x86"
+# no tests because
+# net.jperf does not exist
+# org.unitils.reflectionassert does not exist
+RESTRICT="test"
+
+DEPEND="
+ dev-java/commons-lang:3.6
+ dev-java/concurrentlinkedhashmap-lru:0
+ dev-java/guava:0
+ dev-java/jtwig-reflection:0
+ dev-java/parboiled:0
+ dev-java/slf4j-api:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/commons-io:1
+ dev-java/commons-lang:3.6
+ dev-java/hamcrest:0
+ dev-java/mockito:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+JAVA_CLASSPATH_EXTRA="
+ commons-lang-3.6
+ concurrentlinkedhashmap-lru
+ guava
+ jtwig-reflection
+ parboiled
+ slf4j-api
+"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ commons-io-1
+ commons-lang-3.6
+ hamcrest
+ junit-4
+ mockito
+"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
diff --git a/dev-java/jtwig-core/metadata.xml b/dev-java/jtwig-core/metadata.xml
new file mode 100644
index 000000000000..488c6bf7458e
--- /dev/null
+++ b/dev-java/jtwig-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">jtwig/jtwig</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jtwig-reflection/Manifest b/dev-java/jtwig-reflection/Manifest
new file mode 100644
index 000000000000..abbce93fde11
--- /dev/null
+++ b/dev-java/jtwig-reflection/Manifest
@@ -0,0 +1 @@
+DIST jtwig-reflection-5.87.0.tar.gz 70500 BLAKE2B 526e009bfabd3ed5d9034285f28980a52fafeee635e07446f32533ea7f6e4546d164ddc577fa25aabdcd80f64b953752a8c48405858534739d52c19474273fcf SHA512 87e4129833951c5c2903d574a9c4986219c7eb61d7ca2c657ecdeb9890d79149ff610ad7ad0002119ba5db0953f342d648eb46d9553185794d7bb7cb0a79e3ab
diff --git a/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild b/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild
new file mode 100644
index 000000000000..46276ea49c1f
--- /dev/null
+++ b/dev-java/jtwig-reflection/jtwig-reflection-5.87.0.ebuild
@@ -0,0 +1,67 @@
+# 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-reflection:${PV}.RELEASE"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Jtwig Reflection Library"
+HOMEPAGE="https://github.com/jtwig/jtwig-reflection"
+SRC_URI="https://github.com/jtwig/jtwig-reflection/archive/${PV}.RELEASE.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}.RELEASE"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND="
+ dev-java/commons-lang:3.6
+ dev-java/guava:0
+ dev-java/slf4j-api:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/commons-io:1
+ dev-java/hamcrest:0
+ dev-java/mockito:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+JAVA_CLASSPATH_EXTRA="
+ commons-lang-3.6
+ guava
+ slf4j-api
+"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXCLUDES=(
+ # Invalid test class; No runnable methods
+ org.jtwig.reflection.integration.example.TestArgumentValueResolver
+ org.jtwig.reflection.integration.example.TestArgumentResolver
+ org.jtwig.reflection.integration.example.TestArgument
+)
+JAVA_TEST_GENTOO_CLASSPATH="
+ commons-io-1
+ hamcrest
+ junit-4
+ mockito
+"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # Unable to make field private final byte[] java.lang.String.value accessible:
+ # module java.base does not "opens java.lang" to unnamed module @3bc9f433
+ 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 )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/jtwig-reflection/metadata.xml b/dev-java/jtwig-reflection/metadata.xml
new file mode 100644
index 000000000000..488c6bf7458e
--- /dev/null
+++ b/dev-java/jtwig-reflection/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">jtwig/jtwig</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/juel/Manifest b/dev-java/juel/Manifest
deleted file mode 100644
index 5d1e58fe3592..000000000000
--- a/dev-java/juel/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST juel-2.1.0.zip 477363 BLAKE2B 3d1af823adcf27a5f9918983abf3de47f218089fdabc63975d8f3031c81bb02dcfe5c2fa822be02087f50537ba4e29b606c86abb324cc2bddbf07a6e80c56453 SHA512 eec79c301491b8bae5c394591feab0abed302da55e8cded798874286af32f15ce575bdb365ec9f90add89e320d23d3e40fbb5d465d34c66da60df26e1f7cb6f3
diff --git a/dev-java/juel/juel-2.1.0-r2.ebuild b/dev-java/juel/juel-2.1.0-r2.ebuild
deleted file mode 100644
index 6b7b4c894a20..000000000000
--- a/dev-java/juel/juel-2.1.0-r2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Implementation of the Unified Expression Language (EL) - JSR-245"
-HOMEPAGE="http://juel.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux"
-
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/unzip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR=( "src/api" "src/impl" )
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples src/samples/*
-}
diff --git a/dev-java/juel/metadata.xml b/dev-java/juel/metadata.xml
deleted file mode 100644
index 0d41ddbd0a1f..000000000000
--- a/dev-java/juel/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">juel</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jul-to-slf4j/Manifest b/dev-java/jul-to-slf4j/Manifest
new file mode 100644
index 000000000000..502a0b5b52a6
--- /dev/null
+++ b/dev-java/jul-to-slf4j/Manifest
@@ -0,0 +1 @@
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/jul-to-slf4j/jul-to-slf4j-2.0.3.ebuild b/dev-java/jul-to-slf4j/jul-to-slf4j-2.0.3.ebuild
new file mode 100644
index 000000000000..cf9d0c136c29
--- /dev/null
+++ b/dev-java/jul-to-slf4j/jul-to-slf4j-2.0.3.ebuild
@@ -0,0 +1,55 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64" --ebuild jul-to-slf4j-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:jul-to-slf4j:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JUL to SLF4J bridge"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+CP_DEPEND="~dev-java/slf4j-api-${PV}:0"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.slf4j:slf4j-reload4j:2.0.3 -> >=dev-java/slf4j-reload4j-2.0.3:0
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ ~dev-java/slf4j-reload4j-${PV}:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-reload4j"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/jul-to-slf4j/metadata.xml b/dev-java/jul-to-slf4j/metadata.xml
new file mode 100644
index 000000000000..14f9229b142a
--- /dev/null
+++ b/dev-java/jul-to-slf4j/metadata.xml
@@ -0,0 +1,13 @@
+<?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>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
+ <remote-id type="github">qos-ch/slf4j</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/jump/Manifest b/dev-java/jump/Manifest
deleted file mode 100644
index f8b48a506d2b..000000000000
--- a/dev-java/jump/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jump-0.5.tar.gz 31266 BLAKE2B 7c7e4c7de2322e32e96e966617c774f8c19d2d5a6a25b4116412b4160282ef0e13b5a8f65c8f2b771968ae22ca659988f6262abac9f67c055eb2fa362f00b610 SHA512 9772ea61e921c4342f0e25a951d74850b9dbdd2bde5de9fabad4d55ddb82b6d09debd478f92f3f8c02a05425244b7eaf12d7b3d7d2876263234bafa27783bba8
diff --git a/dev-java/jump/jump-0.5-r1.ebuild b/dev-java/jump/jump-0.5-r1.ebuild
deleted file mode 100644
index 460016fbe6f5..000000000000
--- a/dev-java/jump/jump-0.5-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java-based extensible high-precision math library"
-HOMEPAGE="http://jump-math.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}-math/${P}.tar.gz"
-
-KEYWORDS="amd64 x86"
-LICENSE="BSD"
-SLOT="0"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src/main"
-
-java_prepare() {
- rm -rv src/tests || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples src/examples
-}
diff --git a/dev-java/jump/metadata.xml b/dev-java/jump/metadata.xml
deleted file mode 100644
index 3fc5ac0fea10..000000000000
--- a/dev-java/jump/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jump-math</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jung/Manifest b/dev-java/jung/Manifest
deleted file mode 100644
index 03c05931aa6d..000000000000
--- a/dev-java/jung/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jung-1.7.6.zip 8164548 BLAKE2B f7ae35557e531686ca56235a6087587dd520ab1336e1121871e1f6727d64818b078dedaf55b1cbd83c32a8c5e03af7926a75302033a7e21e07200ac8f5d729b5 SHA512 126f06e34a6db6cc55df2b1c1b52612ddece7db7a1fb45cbc91892122678b0b629eac00276fc501aeab558cf1f01a4e5e7f5d0392bfae977ca1950df2c3d063a
diff --git a/dev-java/jung/jung-1.7.6-r1.ebuild b/dev-java/jung/jung-1.7.6-r1.ebuild
deleted file mode 100644
index 529a37e622f1..000000000000
--- a/dev-java/jung/jung-1.7.6-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="The Java Universal Network/Graph Framework"
-HOMEPAGE="http://jung.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-CDEPEND="
- dev-java/colt:0
- dev-java/commons-collections:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_SRC_DIR="src/edu"
-
-JAVA_GENTOO_CLASSPATH="
- colt
- commons-collections
-"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/jung/metadata.xml b/dev-java/jung/metadata.xml
deleted file mode 100644
index 50e56a48add2..000000000000
--- a/dev-java/jung/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- A software library that provides a common and extendible language for
- the modeling, analysis, and visualization of data that can be
- represented as a graph or network.
- </longdescription>
- <upstream>
- <remote-id type="sourceforge">jung</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/junit-clptr/Manifest b/dev-java/junit-clptr/Manifest
new file mode 100644
index 000000000000..56b54083a018
--- /dev/null
+++ b/dev-java/junit-clptr/Manifest
@@ -0,0 +1 @@
+DIST junit-clptr-1.2.2-sources.tar.gz 11418 BLAKE2B 9089cb4ce38ac4318ff7a26db978a1b1a9bf70d4efd4c35e94a88a312d05100cd53a2ebe7b162885904e0cec04a513393e3e5a137ec3ecba684b70653cef22e6 SHA512 28400aca95686d67bb81c7ce8fd0bd2804ec33cabc86aceb01cbb2fd42d89b3c4b4c5f3a1670ecd3d0b486a087ebbd3e7b41fd18061c0653246b17bae557032d
diff --git a/dev-java/junit-clptr/junit-clptr-1.2.2.ebuild b/dev-java/junit-clptr/junit-clptr-1.2.2.ebuild
new file mode 100644
index 000000000000..bbf2af86203e
--- /dev/null
+++ b/dev-java/junit-clptr/junit-clptr-1.2.2.ebuild
@@ -0,0 +1,45 @@
+# 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/bitstrings/junit-clptr/archive/refs/tags/1.2.2.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild junit-clptr-1.2.2.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.bitstrings.test:junit-clptr:1.2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="ClassLoader per Test runner for JUnit 4.12+"
+HOMEPAGE="http://nexus.sonatype.org/oss-repository-hosting.html/junit-clptr"
+SRC_URI="https://github.com/bitstrings/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}-sources.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# junit:junit:4.12 -> >=dev-java/junit-4.13.2:4
+
+CDEPEND="
+ dev-java/junit:4
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CDEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CDEPEND}
+"
+
+S="${WORKDIR}/${P}"
+
+JAVA_GENTOO_CLASSPATH="junit-4"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS=(
+ "src/main/resources"
+)
diff --git a/dev-java/junit-clptr/metadata.xml b/dev-java/junit-clptr/metadata.xml
new file mode 100644
index 000000000000..645a73add6c7
--- /dev/null
+++ b/dev-java/junit-clptr/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <bugs-to>https://github.com/bitstrings/junit-clptr/issues</bugs-to>
+ <changelog>https://github.com/bitstrings/junit-clptr/commits/master</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/junit-dataprovider/Manifest b/dev-java/junit-dataprovider/Manifest
new file mode 100644
index 000000000000..1ed767805252
--- /dev/null
+++ b/dev-java/junit-dataprovider/Manifest
@@ -0,0 +1 @@
+DIST junit-dataprovider-2.9.tar.gz 192088 BLAKE2B 4b6650bb2488bb2102e433c48f9c19620e4f60cf222fbab0dd5c8486fb0e64a86cdbf445739e2ad26f6d1e68239805cda7dd48802b556f56c53130b8fd348569 SHA512 78b9c02213e43c05e1896ce740cd177ce728ba00607dd90a029d87abcdb9bf899a285e39d6c69ef8e0b7463fe04159d4e80c405f983059a7a5a349f95767cc99
diff --git a/dev-java/junit-dataprovider/junit-dataprovider-2.9.ebuild b/dev-java/junit-dataprovider/junit-dataprovider-2.9.ebuild
new file mode 100644
index 000000000000..79576d4265fc
--- /dev/null
+++ b/dev-java/junit-dataprovider/junit-dataprovider-2.9.ebuild
@@ -0,0 +1,94 @@
+# 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="com.tngtech.junit.dataprovider:junit-dataprovider:2.9"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The common core for a TestNG like dataprovider runner for JUnit"
+HOMEPAGE="https://github.com/TNG/junit-dataprovider"
+SRC_URI="https://github.com/TNG/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="dev-java/findbugs-annotations:0"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ dev-java/junit:4
+ test? (
+ dev-java/assertj-core:3
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+DOCS=( {CODE-OF-CONDUCT,CONTRIBUTING,README,SECURITY}.md NOTICE )
+
+S="${WORKDIR}/${PN}-${PV}/"
+
+src_compile() {
+ einfo "Compiling junit-dataprovider-core"
+ JAVA_SRC_DIR="core/src/main/java"
+ JAVA_JAR_FILENAME="junit-dataprovider-core.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":junit-dataprovider-core.jar"
+ rm -r target || die
+
+ einfo "Compiling junit4-dataprovider"
+ JAVA_SRC_DIR="junit4/src/main/java"
+ JAVA_JAR_FILENAME="juni4-dataprovider.jar"
+ JAVA_CLASSPATH_EXTRA="junit-4"
+ java-pkg-simple_src_compile
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_SRC_DIR=(
+ "core/src/main/java"
+ "junit4/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test() {
+ einfo "Testing junit-dataprovider-core"
+ JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3,junit-4,mockito:4"
+ JAVA_TEST_SRC_DIR="core/src/test/java"
+ java-pkg-simple_src_test
+
+ einfo "Testing junit4-dataprovider"
+ JAVA_TEST_SRC_DIR="junit4/src/main/java"
+ JAVA_TEST_EXCLUDES=(
+ com.tngtech.java.junit.dataprovider.internal.TestGenerator
+ com.tngtech.java.junit.dataprovider.internal.TestValidator
+ )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg_dojar "junit-dataprovider-core.jar"
+ java-pkg_dojar "juni4-dataprovider.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "core/src/main/java/*"
+ java-pkg_dosrc "junit4/src/main/java/*"
+ fi
+}
diff --git a/dev-java/junit-dataprovider/metadata.xml b/dev-java/junit-dataprovider/metadata.xml
new file mode 100644
index 000000000000..b37d0d1e2439
--- /dev/null
+++ b/dev-java/junit-dataprovider/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">TNG/junit-dataprovider</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/junit/Manifest b/dev-java/junit/Manifest
index 14d9453f2dae..edb0ff99b55c 100644
--- a/dev-java/junit/Manifest
+++ b/dev-java/junit/Manifest
@@ -1,2 +1,5 @@
-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 712ad30d85d9..79144cb8e889 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="https://downloads.sourceforge.net/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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+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.ebuild b/dev-java/junit/junit-4.13.2.ebuild
deleted file mode 100644
index a11c549f9673..000000000000
--- a/dev-java/junit/junit-4.13.2.ebuild
+++ /dev/null
@@ -1,68 +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 junit4-r4.13.2/pom.xml --download-uri https://github.com/junit-team/junit4/archive/refs/tags/r4.13.2.tar.gz --slot 4 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild junit-4.13.2.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="junit:junit:4.13.2"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Simple framework to write repeatable tests"
-HOMEPAGE="https://junit.org/junit5/"
-SRC_URI="https://github.com/${PN}-team/${PN}4/archive/refs/tags/r${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="4"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-
-# Common dependencies
-# POM: ${PN}4-r${PV}/pom.xml
-# org.hamcrest:hamcrest-core:1.3 -> >=dev-java/hamcrest-core-1.3:1.3
-
-CDEPEND="
- dev-java/hamcrest-core:1.3
-"
-
-# Compile dependencies
-# POM: ${PN}4-r${PV}/pom.xml
-# test? org.hamcrest:hamcrest-library:1.3 -> >=dev-java/hamcrest-library-1.3:1.3
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- dev-java/hamcrest-library:1.3
- )
- ${CDEPEND}"
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}"
-
-JAVA_ENCODING="ISO-8859-1"
-
-JAVA_GENTOO_CLASSPATH="hamcrest-core-1.3"
-JAVA_SRC_DIR="${PN}4-r${PV}/src/main/java"
-JAVA_RESOURCE_DIRS="${PN}4-r${PV}/src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="hamcrest-core-1.3,hamcrest-library-1.3"
-JAVA_TEST_SRC_DIR="${PN}4-r${PV}/src/test/java"
-JAVA_TEST_RESOURCE_DIRS="${PN}4-r${PV}/src/test/resources"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-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")
- java -cp "${CP}" -Djava.awt.headless=true org.junit.runner.JUnitCore junit.tests.AllTests || die "Running junit failed"
-}
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..6a2ce43fc405
--- /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..9429d37e25d6
--- /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 ~arm arm64 ppc64 x86"
+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
new file mode 100644
index 000000000000..46efd8fcf0d8
--- /dev/null
+++ b/dev-java/junit/junit-5.9.2.ebuild
@@ -0,0 +1,337 @@
+# 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"
+
+inherit java-pkg-2 java-pkg-simple
+
+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
+ 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}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+ ${COND_DEPEND}
+"
+
+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)"
+ 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/metadata.xml b/dev-java/junit/metadata.xml
index 618f5e0e4b6d..87435c66c2c7 100644
--- a/dev-java/junit/metadata.xml
+++ b/dev-java/junit/metadata.xml
@@ -1,12 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">junit-team/junit5</remote-id>
<remote-id type="github">junit-team/junit4</remote-id>
<remote-id type="sourceforge">junit</remote-id>
</upstream>
+ <use>
+ <flag name="migration-support" restrict="&gt;=dev-java/junit-5">Include the junit-jupiter-migrationsupport module, which helps with migration from JUnit 4 to JUnit Jupiter</flag>
+ <flag name="suite" restrict="&gt;=dev-java/junit-5">Include the JUnit Platform Suite Engine, which adds test suite support</flag>
+ <flag name="vintage" restrict="&gt;=dev-java/junit-5">Include JUnit Vintage, which allows JUnit 5 to run JUnit 3 and JUnit 4 tests</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-java/junitparams/junitparams-1.1.1-r1.ebuild b/dev-java/junitparams/junitparams-1.1.1-r1.ebuild
new file mode 100644
index 000000000000..db8ec80d207d
--- /dev/null
+++ b/dev-java/junitparams/junitparams-1.1.1-r1.ebuild
@@ -0,0 +1,64 @@
+# 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/Pragmatists/JUnitParams/archive/refs/tags/JUnitParams-1.1.1.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild junitparams-1.1.1.ebuild
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="pl.pragmatists:JUnitParams:1.1.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Better parameterised tests for JUnit"
+HOMEPAGE="https://github.com/Pragmatists/JUnitParams"
+SRC_URI="https://github.com/Pragmatists/JUnitParams/archive/refs/tags/JUnitParams-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# junit:junit:4.12 -> >=dev-java/junit-4.12:4
+
+CP_DEPEND="dev-java/junit:4"
+
+# Compile dependencies
+# POM: pom.xml
+# test? org.assertj:assertj-core:1.7.1 -> >=dev-java/assertj-core-2.3.0:2
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/assertj-core:3
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/junitparams-1.1.1-test.patch
+)
+
+S="${WORKDIR}/JUnitParams-JUnitParams-${PV}"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+JAVA_TEST_EXCLUDES=(
+ # java.lang.RuntimeException: Could not find method: paramsForSuperclassMethod so no params were used.
+ "junitparams.SuperclassTest"
+)
+
+src_prepare() {
+ default
+}
diff --git a/dev-java/junitparams/junitparams-1.1.1.ebuild b/dev-java/junitparams/junitparams-1.1.1.ebuild
deleted file mode 100644
index fdc7ef0929dc..000000000000
--- a/dev-java/junitparams/junitparams-1.1.1.ebuild
+++ /dev/null
@@ -1,67 +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 pom.xml --download-uri https://github.com/Pragmatists/JUnitParams/archive/refs/tags/JUnitParams-1.1.1.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild junitparams-1.1.1.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="pl.pragmatists:JUnitParams:1.1.1"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Better parameterised tests for JUnit"
-HOMEPAGE="https://github.com/Pragmatists/JUnitParams"
-SRC_URI="https://github.com/Pragmatists/JUnitParams/archive/refs/tags/JUnitParams-${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-
-# Common dependencies
-# POM: pom.xml
-# junit:junit:4.12 -> >=dev-java/junit-4.12:4
-
-CDEPEND="
- >=dev-java/junit-4.12:4
-"
-
-# Compile dependencies
-# POM: pom.xml
-# test? org.assertj:assertj-core:1.7.1 -> >=dev-java/assertj-core-2.3.0:2
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- >=dev-java/assertj-core-2.3.0:2
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/junitparams-1.1.1-test.patch
-)
-
-S="${WORKDIR}/JUnitParams-JUnitParams-${PV}"
-
-JAVA_GENTOO_CLASSPATH="junit-4"
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="assertj-core-2"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-
-JAVA_TEST_EXCLUDES=(
- # java.lang.RuntimeException: Could not find method: paramsForSuperclassMethod so no params were used.
- "junitparams.SuperclassTest"
-)
-
-src_prepare() {
- default
-}
diff --git a/dev-java/junitparams/metadata.xml b/dev-java/junitparams/metadata.xml
index d5b551e571ab..8d7346cf8e03 100644
--- a/dev-java/junitparams/metadata.xml
+++ b/dev-java/junitparams/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">Pragmatists/JUnitParams/tags</remote-id>
+ <remote-id type="github">Pragmatists/JUnitParams</remote-id>
<doc>https://github.com/Pragmatists/JUnitParams/wiki</doc>
<bugs-to>https://github.com/Pragmatists/JUnitParams/issues</bugs-to>
</upstream>
diff --git a/dev-java/junitperf/Manifest b/dev-java/junitperf/Manifest
deleted file mode 100644
index 5db6f5b570ba..000000000000
--- a/dev-java/junitperf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST junitperf-1.9.1.zip 110600 BLAKE2B f3f1467382da532d104fb1236607c72f2984f00e98eb9ae931df6cfdd8235f075e485f2cdb21a9837a866ea00fd4d07a55ed80c29c9a74871890441519a551a9 SHA512 35fd3cddf5643ede31a89f39e0149ceb5a07c97521bcb4e661fce32b08a5299064f6b52828889d4918485f3ca000f6020dd6cec802d8b1579f46bd861ad74b1b
diff --git a/dev-java/junitperf/junitperf-1.9.1-r2.ebuild b/dev-java/junitperf/junitperf-1.9.1-r2.ebuild
deleted file mode 100644
index ec0cf9ffc4bb..000000000000
--- a/dev-java/junitperf/junitperf-1.9.1-r2.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc test source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Simple framework to write repeatable tests"
-SRC_URI="http://www.clarkware.com/software/${P}.zip"
-HOMEPAGE="http://www.clarkware.com/software/JUnitPerf.html"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux"
-
-IUSE=""
-
-CDEPEND="dev-java/junit:4"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? ( dev-java/ant-junit:0 )
- source? ( app-arch/zip )
- >=virtual/jdk-1.6"
-
-java_prepare() {
- java-pkg_clean
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="junit-4"
-EANT_DOC_TARGET="doc"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH}"
-EANT_TEST_TARGET="test"
-
-src_test() {
- ANT_TASKS="ant-junit" java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar "lib/${PN}.jar"
- dodoc README
- use doc && java-pkg_dojavadoc docs/api
- use source && java-pkg_dosrc src/app/*
-}
diff --git a/dev-java/junitperf/metadata.xml b/dev-java/junitperf/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/junitperf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jupidator/Manifest b/dev-java/jupidator/Manifest
deleted file mode 100644
index b33d40b0e2e6..000000000000
--- a/dev-java/jupidator/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jupidator-0.6.0.tar.bz2 253170 BLAKE2B 0a32df25c2885115ba914ecbcad8d8c426893eace2f8067a3f6c858ae15f3573e9106693694acc9179fe6841e5f3a664a0b1038cbda001dbbee08b475914d29b SHA512 5e96831ca41b6871eb5f6c883c21eae17474844a74fc5e103b534d6e225d0a16ef98149da1d52728e737607eb7ece586f05aafa0a0ada29c4c28ff3e078a2415
diff --git a/dev-java/jupidator/jupidator-0.6.0-r1.ebuild b/dev-java/jupidator/jupidator-0.6.0-r1.ebuild
deleted file mode 100644
index eecea93a1353..000000000000
--- a/dev-java/jupidator/jupidator-0.6.0-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}.${PV}"
-
-DESCRIPTION="Jupidator is a library/tool in Java for automatic updating of applications"
-HOMEPAGE="http://www.sourceforge.net/projects/jupidator"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2 -> ${P}.tar.bz2"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${PN}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/jupidator/metadata.xml b/dev-java/jupidator/metadata.xml
deleted file mode 100644
index fe573240f061..000000000000
--- a/dev-java/jupidator/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jupidator</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jutils/Manifest b/dev-java/jutils/Manifest
deleted file mode 100644
index 81be3af887ab..000000000000
--- a/dev-java/jutils/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jutils-1.0.0-sources.jar 10247 BLAKE2B 877998d7c442bdf0f6ad58c69832d3f69377a973c0a7d3d2fe252825e7e8a1b72e7383dae2fd820f793a58a1889dc8eaa2d53e378d3a779e47ed3ec18e95ec29 SHA512 3bf29fa8e0ca0cb6cdba022a122f152df929d9738725839234b15eb6ef2f87c72d5a30c8788783e44f73a39aeeba459882d4106ccfd44449e43d838054a1fb01
diff --git a/dev-java/jutils/jutils-1.0.0-r1.ebuild b/dev-java/jutils/jutils-1.0.0-r1.ebuild
deleted file mode 100644
index 87b28ba5fd1b..000000000000
--- a/dev-java/jutils/jutils-1.0.0-r1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Common utilities for the Java Game Technology Group"
-HOMEPAGE="https://java.net/projects/jutils"
-SRC_URI="http://central.maven.org/maven2/net/java/${PN}/${PN}/${PV}/${P}-sources.jar"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
diff --git a/dev-java/jutils/metadata.xml b/dev-java/jutils/metadata.xml
deleted file mode 100644
index 7e5bd9f460ca..000000000000
--- a/dev-java/jutils/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>The JUtils project hosts an implementation of a set of APIs utilized by other Java Game Technology Group projects (e.g. JInput, JOAl, JOGL). Some of those other projects may have build and/or run-time dependencies on the jutils.jar file.</longdescription>
-</pkgmetadata>
diff --git a/dev-java/jvyaml/Manifest b/dev-java/jvyaml/Manifest
deleted file mode 100644
index ab75aecea68d..000000000000
--- a/dev-java/jvyaml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jvyaml-0.2.1.tar.gz 202550 BLAKE2B ec58d90a209916d21e9fe1e19b6dd3a394d77a41e4bf3272d55abc0c975eee31a6520270f1e2607017d558421e96cc0997e8ba075d3e5786e241e864be3c3cd2 SHA512 edac9309c285cf569c453cd63f2cbd5e0a29012936af181616010bebb4eac2c474e2b37463af61b5e66876ffba517040796c596ac2bbcc9dad2af7aedf324221
diff --git a/dev-java/jvyaml/jvyaml-0.2.1-r2.ebuild b/dev-java/jvyaml/jvyaml-0.2.1-r2.ebuild
deleted file mode 100644
index f3d5a25246ce..000000000000
--- a/dev-java/jvyaml/jvyaml-0.2.1-r2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java YAML parser and emitter"
-HOMEPAGE="https://jvyaml.dev.java.net/"
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-KEYWORDS="amd64 x86"
-SLOT="0"
-LICENSE="MIT"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6"
-
-JAVA_SRC_DIR="src"
-
-S="${WORKDIR}/${P}"
-
-java_prepare() {
- java-pkg_clean
- rm -rv src/test || die
-}
diff --git a/dev-java/jvyaml/metadata.xml b/dev-java/jvyaml/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/jvyaml/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/jvyamlb/Manifest b/dev-java/jvyamlb/Manifest
deleted file mode 100644
index 83024eaa4112..000000000000
--- a/dev-java/jvyamlb/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jvyamlb-0.2.5.tar.gz 526052 BLAKE2B 8b55748eb4e9b03b1e5ca78fd41145456d1329a3edb0a7d02c6b5e37a15c4a25e93cae9337ee9aeedb6611ee87ba09157e00ef4a55ed4a8202f8282e287b56dc SHA512 28d707255ca7447ad00f29bf1215e28fa485557e76795c47cbf309a5b1b97ba4c901ddc7b1507d06301b4f544bfc437c4926f457516832f953aff6b29b01b711
diff --git a/dev-java/jvyamlb/jvyamlb-0.2.5-r2.ebuild b/dev-java/jvyamlb/jvyamlb-0.2.5-r2.ebuild
deleted file mode 100644
index d0f8d8558026..000000000000
--- a/dev-java/jvyamlb/jvyamlb-0.2.5-r2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="JvYAMLb, YAML processor extracted from JRuby"
-HOMEPAGE="https://github.com/olabini/jvyamlb"
-SRC_URI="https://github.com/olabini/jvyamlb/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~x86-solaris"
-
-CDEPEND="
- dev-java/bytelist:0
- dev-java/jcodings:1
- dev-java/joda-time:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit )"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="bytelist jcodings-1 joda-time"
-
-DOCS=( CREDITS README )
-
-src_prepare() {
- default
-
- java-pkg_clean
-
- sed -i 's:depends="test":depends="compile":' build.xml || die
-}
-
-src_install() {
- einstalldocs
- java-pkg_newjar lib/${P}.jar
- use source && java-pkg_dosrc src/*
-}
-
-src_test() {
- ANT_TASKS="ant-junit" eant test
-}
diff --git a/dev-java/jvyamlb/metadata.xml b/dev-java/jvyamlb/metadata.xml
deleted file mode 100644
index 893114c9c1ca..000000000000
--- a/dev-java/jvyamlb/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="google-code">jvyamlb</remote-id>
- <remote-id type="github">olabini/jvyamlb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jython/Manifest b/dev-java/jython/Manifest
deleted file mode 100644
index 37e6fec3e242..000000000000
--- a/dev-java/jython/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jython-2.7.0-sources.jar 15371691 BLAKE2B 7e1c29f2a2c03b034e89bb9c3a8fdddbaef6a0191a7320c82b76e31b41336f3d99c1995b2e9864c033ec53629d45669ad460fb4a1433ea7bc6b0390919500a24 SHA512 7583810245d694fd1d99a57ad504fcefdfbc1183def2cbb93ae3660f341104205c73041d846bdcf2b564b3cf4b770b481703c1dcdb1458396812c92d30ee9fa6
diff --git a/dev-java/jython/files/CVE-2016-4000.patch b/dev-java/jython/files/CVE-2016-4000.patch
deleted file mode 100644
index 81785eb05b07..000000000000
--- a/dev-java/jython/files/CVE-2016-4000.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-
-# HG changeset patch
-# User Jim Baker <jim.baker@rackspace.com>
-# Date 1454384221 25200
-# Node ID d06e29d100c04576735e86c75a26c5f33669bb72
-# Parent b6735606c13df95f770527e629954407f82808c5
-Do not deserialize PyFunction objects. Fixes #2454
-
-Instead use standard Python pickling; or subclass PyFunction.
-
-diff --git a/Lib/test/test_java_integration.py b/Lib/test/test_java_integration.py
---- a/Lib/test/test_java_integration.py
-+++ b/Lib/test/test_java_integration.py
-@@ -14,8 +14,9 @@ import re
- from collections import deque
- from test import test_support
-
--from java.lang import (ClassCastException, ExceptionInInitializerError, String, Runnable, System,
-- Runtime, Math, Byte)
-+from java.lang import (
-+ ClassCastException, ExceptionInInitializerError, UnsupportedOperationException,
-+ String, Runnable, System, Runtime, Math, Byte)
- from java.math import BigDecimal, BigInteger
- from java.net import URI
- from java.io import (ByteArrayInputStream, ByteArrayOutputStream, File, FileInputStream,
-@@ -656,13 +657,30 @@ class SerializationTest(unittest.TestCas
- self.assertEqual(date_list, roundtrip_serialization(date_list))
-
- def test_java_serialization_pycode(self):
--
- def universal_answer():
- return 42
-
- serialized_code = roundtrip_serialization(universal_answer.func_code)
- self.assertEqual(eval(serialized_code), universal_answer())
-
-+ def test_java_serialization_pyfunction(self):
-+ # Not directly supported due to lack of general utility
-+ # (globals will usually be in the function object in
-+ # func_globals), and problems with unserialization
-+ # vulnerabilities. Users can always subclass from PyFunction
-+ # for specific cases, as seen in PyCascading
-+ import new
-+ def f():
-+ return 6 * 7 + max(0, 1, 2)
-+ # However, using the new module, it's possible to create a
-+ # function with no globals, which means the globals will come
-+ # from the current context
-+ g = new.function(f.func_code, {}, "g")
-+ # But still forbid Java deserialization of this function
-+ # object. Use pickling or other support instead.
-+ with self.assertRaises(UnsupportedOperationException):
-+ roundtrip_serialization(g)
-+
- def test_builtin_names(self):
- import __builtin__
- names = [x for x in dir(__builtin__)]
-@@ -872,7 +890,7 @@ class SingleMethodInterfaceTest(unittest
- future.get()
- self.assertEqual(x, [42])
-
-- @unittest.skip("FIXME: not working")
-+ @unittest.skip("FIXME: not working; see http://bugs.jython.org/issue2115")
- def test_callable_object(self):
- callable_obj = CallableObject()
- future = self.executor.submit(callable_obj)
-diff --git a/Lib/test/test_new.py b/Lib/test/test_new.py
---- a/Lib/test/test_new.py
-+++ b/Lib/test/test_new.py
-@@ -24,18 +24,10 @@ class NewTest(unittest.TestCase):
- c = new.instance(C, {'yolks': 3})
-
- o = new.instance(C)
--
-- # __dict__ is a non dict mapping in Jython
-- if test_support.is_jython:
-- self.assertEqual(len(o.__dict__), 0, "new __dict__ should be empty")
-- else:
-- self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
-+ self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
- del o
- o = new.instance(C, None)
-- if test_support.is_jython:
-- self.assertEqual(len(o.__dict__), 0, "new __dict__ should be empty")
-- else:
-- self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
-+ self.assertEqual(o.__dict__, {}, "new __dict__ should be empty")
- del o
-
- def break_yolks(self):
-@@ -109,7 +101,14 @@ class NewTest(unittest.TestCase):
- test_closure(g, (1, 1), ValueError) # closure is wrong size
- test_closure(f, g.func_closure, ValueError) # no closure needed
-
-- if hasattr(new, 'code') and not test_support.is_jython:
-+ # [Obsolete] Note: Jython will never have new.code()
-+ #
-+ # Who said that?!!! guess what, we do! :)
-+ #
-+ # Unfortunately we still need a way to compile to Python bytecode,
-+ # so support is still incomplete, as seen in the fact that we need
-+ # to get values from CPython 2.7.
-+ if hasattr(new, 'code'):
- def test_code(self):
- # bogus test of new.code()
- def f(a): pass
-@@ -117,16 +116,16 @@ class NewTest(unittest.TestCase):
- c = f.func_code
- argcount = c.co_argcount
- nlocals = c.co_nlocals
-- stacksize = c.co_stacksize
-+ stacksize = 1 # TODO c.co_stacksize
- flags = c.co_flags
-- codestring = c.co_code
-- constants = c.co_consts
-- names = c.co_names
-+ codestring = 'd\x00\x00S' # TODO c.co_code
-+ constants = (None,) # TODO c.co_consts
-+ names = () # TODO c.co_names
- varnames = c.co_varnames
- filename = c.co_filename
- name = c.co_name
- firstlineno = c.co_firstlineno
-- lnotab = c.co_lnotab
-+ lnotab = '' # TODO c.co_lnotab, but also see http://bugs.jython.org/issue1638
- freevars = c.co_freevars
- cellvars = c.co_cellvars
-
-diff --git a/src/org/python/core/PyBytecode.java b/src/org/python/core/PyBytecode.java
---- a/src/org/python/core/PyBytecode.java
-+++ b/src/org/python/core/PyBytecode.java
-@@ -66,6 +66,12 @@ public class PyBytecode extends PyBaseCo
-
- debug = defaultDebug;
-
-+ if (argcount < 0) {
-+ throw Py.ValueError("code: argcount must not be negative");
-+ } else if (nlocals < 0) {
-+ throw Py.ValueError("code: nlocals must not be negative");
-+ }
-+
- co_argcount = nargs = argcount;
- co_varnames = varnames;
- co_nlocals = nlocals; // maybe assert = varnames.length;
-diff --git a/src/org/python/core/PyFunction.java b/src/org/python/core/PyFunction.java
---- a/src/org/python/core/PyFunction.java
-+++ b/src/org/python/core/PyFunction.java
-@@ -545,6 +545,9 @@ public class PyFunction extends PyObject
- @Override
- public boolean isSequenceType() { return false; }
-
-+ private Object readResolve() {
-+ throw new UnsupportedOperationException();
-+ }
-
- /* Traverseproc implementation */
- @Override
-
diff --git a/dev-java/jython/files/jython-2.5.2-distutils_scripts_location.patch b/dev-java/jython/files/jython-2.5.2-distutils_scripts_location.patch
deleted file mode 100644
index fc9a95be89f9..000000000000
--- a/dev-java/jython/files/jython-2.5.2-distutils_scripts_location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Lib/distutils/command/install.py
-+++ b/Lib/distutils/command/install.py
-@@ -70,7 +70,7 @@
- 'purelib': '$base/Lib/site-packages',
- 'platlib': '$base/Lib/site-packages',
- 'headers': '$base/Include/$dist_name',
-- 'scripts': '$base/bin',
-+ 'scripts': '/usr/bin',
- 'data' : '$base',
- }
- }
diff --git a/dev-java/jython/files/jython-2.5.2-respect_PYTHONPATH.patch b/dev-java/jython/files/jython-2.5.2-respect_PYTHONPATH.patch
deleted file mode 100644
index e695122ba1d6..000000000000
--- a/dev-java/jython/files/jython-2.5.2-respect_PYTHONPATH.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/src/org/python/core/PySystemState.java
-+++ b/src/org/python/core/PySystemState.java
-@@ -646,6 +646,12 @@
- if (jythonpath != null) {
- registry.setProperty("python.path", jythonpath);
- }
-+ else {
-+ jythonpath = System.getenv("PYTHONPATH");
-+ if (jythonpath != null) {
-+ registry.setProperty("python.path", jythonpath);
-+ }
-+ }
- } catch (SecurityException e) {
- }
- registry.putAll(postProperties);
diff --git a/dev-java/jython/files/jython-2.7.0-build.xml.patch b/dev-java/jython/files/jython-2.7.0-build.xml.patch
deleted file mode 100644
index 1f0be614dbe5..000000000000
--- a/dev-java/jython/files/jython-2.7.0-build.xml.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/build.xml.orig 2015-06-27 16:12:08.442000000 +0000
-+++ b/build.xml 2015-06-27 16:12:15.684000000 +0000
-@@ -448,7 +448,7 @@
- </target>
-
- <target name="antlr_gen" depends="prepare-output" unless="antlr.notneeded">
-- <java classname="org.antlr.Tool" failonerror="true" fork="true" dir="${jython.base.dir}">
-+ <java classname="org.antlr.Tool" failonerror="false" fork="true" dir="${jython.base.dir}">
- <jvmarg value="-Xmx512m"/>
- <arg value="-Xconversiontimeout"/>
- <arg value="2000"/>
diff --git a/dev-java/jython/files/jython-2.7_beta1-ant.patch b/dev-java/jython/files/jython-2.7_beta1-ant.patch
deleted file mode 100644
index c86cae894a92..000000000000
--- a/dev-java/jython/files/jython-2.7_beta1-ant.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- jython-2.7-b1-sources/build.xml
-+++ jython-2.7-b1-sources/build.xml
-@@ -508,6 +509,7 @@
- </javac>
-
- <!-- java files used by tests -->
-+<!--
- <javac srcdir="${test.source.dir}"
- destdir="${compile.dir}"
- target="${jdk.target.version}"
-@@ -529,6 +531,7 @@
- <compilerarg line="${javac.Xlint}"/>
- <classpath refid="test.classpath" />
- </javac>
-+-->
- <copy file="${source.dir}/org/python/modules/ucnhash.dat"
- todir="${compile.dir}/org/python/modules"
- preservelastmodified="true" />
-@@ -826,9 +829,6 @@
-
- <target name="copy-javalib" unless="full-build">
- <copy todir="${dist.dir}/javalib">
-- <fileset dir="${jython.base.dir}/extlibs">
-- <exclude name="profile.properties"/>
-- </fileset>
- <fileset dir="${work.dir}/build">
- <include name="*.jar"/>
- <include name="*.properties"/>
diff --git a/dev-java/jython/files/jython-2.7_beta1-dont-always-recompile-classes.patch b/dev-java/jython/files/jython-2.7_beta1-dont-always-recompile-classes.patch
deleted file mode 100644
index 326ef7f62afa..000000000000
--- a/dev-java/jython/files/jython-2.7_beta1-dont-always-recompile-classes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/org/python/core/imp.java
-+++ b/src/org/python/core/imp.java
-@@ -228,7 +228,7 @@
- }
- if (testing && mtime != NO_MTIME) {
- long time = ar.getMTime();
-- if (mtime != time) {
-+ if (mtime < time) {
- return null;
- }
- }
diff --git a/dev-java/jython/files/jython-2.7_beta2-maxrepeat-import.patch b/dev-java/jython/files/jython-2.7_beta2-maxrepeat-import.patch
deleted file mode 100644
index 944bb195cb38..000000000000
--- a/dev-java/jython/files/jython-2.7_beta2-maxrepeat-import.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -r 035eded55c4d lib-python/2.7/sre_constants.py
---- a/lib-python/2.7/sre_constants.py Wed Apr 16 18:30:13 2014 -0600
-+++ b/lib-python/2.7/sre_constants.py Fri Jul 25 10:31:27 2014 -0700
-@@ -15,7 +15,11 @@
-
- MAGIC = 20031017
-
--from _sre import MAXREPEAT
-+try:
-+ from _sre import MAXREPEAT
-+except ImportError:
-+ import _sre
-+ MAXREPEAT = _sre.MAXREPEAT = 65535
-
- # SRE standard exception (access as sre.error)
- # should this really be here?
diff --git a/dev-java/jython/jython-2.7.0-r2.ebuild b/dev-java/jython/jython-2.7.0-r2.ebuild
deleted file mode 100644
index 82ca29839984..000000000000
--- a/dev-java/jython/jython-2.7.0-r2.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-JAVA_PKG_IUSE="doc source"
-
-inherit eutils java-pkg-2 java-ant-2 python-utils-r1 flag-o-matic
-
-MY_PV=${PV/_beta/-b}
-MY_P=${PN}-${MY_PV}
-
-DESCRIPTION="An implementation of Python written in Java"
-HOMEPAGE="https://www.jython.org"
-SRC_URI="https://search.maven.org/remotecontent?filepath=org/python/${PN}/${MY_PV}/${MY_P}-sources.jar"
-
-LICENSE="PSF-2"
-SLOT="2.7"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
-IUSE="examples test"
-
-CP_DEPEND="dev-java/antlr:3
- dev-java/netty-transport:0
- >=dev-java/asm-5:4
- dev-java/commons-compress:0
- dev-java/guava:20
- dev-java/jffi:1.2
- dev-java/jline:2
- dev-java/icu4j:52
- dev-java/jnr-constants:0
- dev-java/jnr-posix:3.0
- dev-java/jnr-netdb:1.0
- dev-java/stringtemplate:0
- dev-java/xerces:2
- java-virtuals/script-api:0
- java-virtuals/servlet-api:3.0"
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.7"
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.7
- app-arch/unzip
- dev-java/ant-core:0
- test? (
- dev-java/junit:4
- dev-java/ant-junit:0
- )"
-
-S=${WORKDIR}
-
-RESTRICT="test"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS+=" java"
-
-EANT_BUILD_TARGET="developer-build"
-EANT_TEST_EXTRA_ARGS="-Dpython.home=dist"
-
-# jdbc-informix and jdbc-oracle-bin (requires registration) aren't exposed.
-# Uncomment and add to CDEPEND if you want either of them
-#EANT_GENTOO_CLASSPATH+=",jdbc-informix" EANT_EXTRA_ARGS+=" -Dinformix.present"
-#EANT_GENTOO_CLASSPATH+=",jdbc-oracle-bin" EANT_EXTRA_ARGS+=" -Doracle.present"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.5.2-distutils_scripts_location.patch
- "${FILESDIR}"/${PN}-2.5.2-respect_PYTHONPATH.patch
- "${FILESDIR}"/${PN}-2.7_beta1-ant.patch
- "${FILESDIR}"/${PN}-2.7_beta1-dont-always-recompile-classes.patch
- "${FILESDIR}"/${PN}-2.7_beta2-maxrepeat-import.patch
- "${FILESDIR}"/${PN}-2.7.0-build.xml.patch
- "${FILESDIR}"/CVE-2016-4000.patch
-)
-
-src_prepare() {
- default
-
- find \( -name '*.jar' -o -name '*.class' \
- -o -name '*.pyc' -o -name '*.exe' \) -delete
-
- # needed for launchertest
- chmod +x tests/shell/test-jython.sh || die
-
- java-pkg-2_src_prepare
-}
-
-src_configure() {
- # apparently this can cause problems
- append-flags -fno-stack-protector
-
- EANT_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --with-dependencies antlr-3,jnr-posix-3.0)"
- EANT_GENTOO_CLASSPATH_EXTRA+=":$(java-pkg_getjars --build-only ant-core)"
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- local instdir=/usr/share/${PN}-${SLOT}
-
- java-pkg_newjar dist/${PN}-dev.jar
-
- java-pkg_register-optional-dependency jdbc-mysql
- java-pkg_register-optional-dependency jdbc-postgresql
-
- insinto ${instdir}
- doins -r dist/{Lib,registry}
-
- dodoc ACKNOWLEDGMENTS NEWS README.txt
-
- use doc && java-pkg_dohtml -r dist/Doc/javadoc
- use source && java-pkg_dosrc src/*
- use examples && java-pkg_doexamples Demo/*
-
- local java_args=(
- -Dpython.home="${EPREFIX}"/usr/share/${PN}-${SLOT}
- -Dpython.executable="${EPREFIX}"/usr/bin/jython${SLOT}
- -Dpython.cachedir="\${HOME}/.jythoncachedir"
- )
-
- java-pkg_dolauncher jython${SLOT} \
- --main org.python.util.jython \
- --java_args "${java_args[*]}"
-
- # we need a wrapper to help python_optimize
- cat <<-EOF > "${T}"/jython
- exec java -cp "$(java-pkg_getjars "${EANT_GENTOO_CLASSPATH}"):${EANT_GENTOO_CLASSPATH_EXTRA}:dist/${PN}-dev.jar" \
- -Dpython.home="${ED}${instdir}" \
- -Dpython.cachedir="${T}/.jythoncachedir" \
- -Duser.home="${T}" \
- org.python.util.jython "\${@}"
- EOF
- chmod +x "${T}"/jython || die
-
- local -x PYTHON="${T}"/jython
- # we can't get the path from the interpreter since it does some
- # magic that fails on non-installed copy...
- local PYTHON_SITEDIR=${EPREFIX}/usr/share/jython-${SLOT}/Lib/site-packages
- python_export jython${SLOT} EPYTHON
-
- # compile tests (everything else is compiled already)
- # we're keeping it quiet since jython reports errors verbosely
- # and some of the tests are supposed to trigger compile errors
- python_optimize "${ED}${instdir}"/Lib/test &>/dev/null
-
- # for python-exec
- echo "EPYTHON='${EPYTHON}'" > epython.py || die
- python_domodule epython.py
-
- # some of the class files end up with newer timestamps than the files they
- # were generated from, make sure this doesn't happen
- find "${ED}${instdir}"/Lib/ -name '*.class' | xargs touch
-}
diff --git a/dev-java/jython/metadata.xml b/dev-java/jython/metadata.xml
deleted file mode 100644
index d20250bf86a6..000000000000
--- a/dev-java/jython/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">jython</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/jzlib/jzlib-1.1.3-r2.ebuild b/dev-java/jzlib/jzlib-1.1.3-r2.ebuild
index 615a5512fc00..0961413b289f 100644
--- a/dev-java/jzlib/jzlib-1.1.3-r2.ebuild
+++ b/dev-java/jzlib/jzlib-1.1.3-r2.ebuild
@@ -1,9 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="examples source test"
+MAVEN_ID="com.jcraft:jzlib:1.1.3"
inherit java-pkg-2 java-pkg-simple
@@ -13,7 +14,7 @@ SRC_URI="https://github.com/ymnk/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
>=virtual/jre-1.8:*"
diff --git a/dev-java/jzlib/metadata.xml b/dev-java/jzlib/metadata.xml
index 19b210e94d14..2439c107d002 100644
--- a/dev-java/jzlib/metadata.xml
+++ b/dev-java/jzlib/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/kafka-clients/Manifest b/dev-java/kafka-clients/Manifest
new file mode 100644
index 000000000000..209429c06cae
--- /dev/null
+++ b/dev-java/kafka-clients/Manifest
@@ -0,0 +1 @@
+DIST kafka-1.1.1-src.tgz 6443963 BLAKE2B 721f9efb4bd2a1c605e1750a29a33f9939d346a1f81d380b980631d03a1dffcba2f435a91e9420a5876d2294f62c4e4ef39e951b0d37406c0b924f036947848d SHA512 26aa54fe5a761619fb748e4597dd2e3968a99c32d39312b56a83738df6df5e62052d7f883bf56cec25d1e31315d2ff856375fdc7f97a6029786abfa341769ecc
diff --git a/dev-java/kafka-clients/kafka-clients-1.1.1.ebuild b/dev-java/kafka-clients/kafka-clients-1.1.1.ebuild
new file mode 100644
index 000000000000..88b5337e7ba3
--- /dev/null
+++ b/dev-java/kafka-clients/kafka-clients-1.1.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.kafka:kafka-clients:1.1.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Apache Kafka distributed event streaming platform"
+HOMEPAGE="https://kafka.apache.org/"
+SRC_URI="https://archive.apache.org/dist/kafka/${PV}/kafka-${PV}-src.tgz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/lz4-java-1.4.1:0
+ >=dev-java/slf4j-api-1.7.25:0
+ >=dev-java/snappy-1.1.7.1:1.1
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/kafka-${PV}-src/clients"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/kafka-clients/metadata.xml b/dev-java/kafka-clients/metadata.xml
new file mode 100644
index 000000000000..4221e170cbc0
--- /dev/null
+++ b/dev-java/kafka-clients/metadata.xml
@@ -0,0 +1,8 @@
+<?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/kunststoff/Manifest b/dev-java/kunststoff/Manifest
deleted file mode 100644
index 00ebe0b37971..000000000000
--- a/dev-java/kunststoff/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST kunststoff-2_0_2.zip 77078 BLAKE2B f4da25026f04b1feec10fc1f74405116702d745711d1d6ddd3a8844905a1530a577fd9bf832451bdb87320b6ae2f34390842f58b9a5b70af70ce045e576554b1 SHA512 30e4d74ba28795152b7c740430ac8e5aa650bead2adcbe17442b6e2daefb36b0000d6f98653a161c6d504a6ac77b40fd1477d64143b77e73bec8c28f1c03c5d7
diff --git a/dev-java/kunststoff/kunststoff-2.0.2-r2.ebuild b/dev-java/kunststoff/kunststoff-2.0.2-r2.ebuild
deleted file mode 100644
index 381acae2d3ce..000000000000
--- a/dev-java/kunststoff/kunststoff-2.0.2-r2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Kunststoff look'n'feel Java library"
-HOMEPAGE="http://www.incors.org/archive"
-SRC_URI="http://www.incors.org/archive/${P//./_}.zip"
-LICENSE="LGPL-2.1"
-SLOT="0"
-
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
diff --git a/dev-java/kunststoff/metadata.xml b/dev-java/kunststoff/metadata.xml
deleted file mode 100644
index b15522ebffed..000000000000
--- a/dev-java/kunststoff/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-
-The Kunststoff Look&amp;Feel is an extension to the the Java Metal
-Look&amp;Feel. This makes it very compact in size (approx. 43 kBytes) and
-ensures that all the great features provided by the Metal Look&amp;Feel do not
-get lost.
-
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/kxml/Manifest b/dev-java/kxml/Manifest
deleted file mode 100644
index 83f9fcc407d3..000000000000
--- a/dev-java/kxml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST kxml2-src-2.3.0.zip 354878 BLAKE2B 5e1a5f7d684493eac0b74ef1c2220075d85f2276dbd2b5ff4cba539571831045dad1a9e84f71596390adbcc34368f381318dd20ccd75968eb66abdb2805e50c8 SHA512 f4eeaa71fbe76b51cefb9a195d292c22c79c241920915fe8ddcf30dc11af39bbeb6b848a8c4dab9775fc8e327c5a29586ac53263a577de361312bbf45e25c1e5
diff --git a/dev-java/kxml/files/kxml-2.3.0-build.xml b/dev-java/kxml/files/kxml-2.3.0-build.xml
deleted file mode 100644
index ee1280d24b1b..000000000000
--- a/dev-java/kxml/files/kxml-2.3.0-build.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project default="build" basedir="." name="kxml2" >
-
- <property name="version" value="2.3.0" ></property>
-
-
- <target name="javadoc" >
- <delete dir="www/kxml2/javadoc" ></delete>
- <mkdir dir="www/kxml2/javadoc" ></mkdir>
- <javadoc use="true" windowtitle="kxml API" author="true" sourcepath="src" classpath="" destdir="www/kxml2/javadoc" doctitle="kxml API" version="true" packagenames="org.kxml2.*" public="yes" source="1.4" ></javadoc>
- </target>
-
-
- <target depends="build_jar,javadoc" name="build_src" >
- <zip zipfile="dist/kxml2-src-${version}.zip" >
- <fileset dir="." >
- <include name="*/**" ></include>
- <exclude name=".*" ></exclude>
- <exclude name="classes/**" ></exclude>
- <exclude name="tmpclasses/**" ></exclude>
- <exclude name="dist/kxml2-src-*.zip" ></exclude>
- </fileset>
- </zip>
-
- </target>
-
-
- <target name="build_jar" >
-
- <delete dir="tmpclasses" ></delete>
- <mkdir dir="tmpclasses" ></mkdir>
-
- <javac destdir="tmpclasses" debuglevel="none" srcdir="src" optimize="true" verbose="true" source="1.4" target="1.4" nowarn="yes" classpath="${gentoo.classpath}" ><classpath path="${gentoo.classpath}" ></classpath></javac>
-
- <mkdir dir="dist" ></mkdir>
-
-
- <jar jarfile="dist/kxml2-${version}.jar" >
- <fileset dir="tmpclasses" >
- <include name="**/*.class" ></include>
- <include name="META-INF/**" ></include>
- </fileset>
- <fileset dir="src" >
- <include name="META-INF/**" ></include>
- </fileset>
- </jar>
-
- <jar jarfile="dist/kxml2-min-${version}.jar" >
- <fileset dir="tmpclasses" >
- <include name="org/kxml2/io/KXmlParser.class" ></include>
- </fileset>
- </jar>
-
- <delete dir="tmpclasses" ></delete>
- </target>
-
-
- <target depends="build_src" name="build" ></target>
-
-
-
-</project>
diff --git a/dev-java/kxml/kxml-2.3.0.ebuild b/dev-java/kxml/kxml-2.3.0.ebuild
deleted file mode 100644
index 434bf19f6533..000000000000
--- a/dev-java/kxml/kxml-2.3.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Small XML Pull Parser"
-HOMEPAGE="http://kxml.org/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}2-src-${PV}.zip"
-
-LICENSE="BSD"
-SLOT="2"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="dev-java/xpp3:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}"
-
-java_prepare() {
- java-pkg_clean
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="build_jar"
-EANT_GENTOO_CLASSPATH="xpp3"
-
-src_install() {
- java-pkg_newjar dist/${PN}2-${PV}.jar ${PN}.jar
- java-pkg_newjar dist/${PN}2-min-${PV}.jar ${PN}-min.jar
-
- use source && java-pkg_dosrc src/org
- use doc && java-pkg_dojavadoc www/kxml2/javadoc
- use examples && java-pkg_doexamples samples
-}
diff --git a/dev-java/kxml/metadata.xml b/dev-java/kxml/metadata.xml
deleted file mode 100644
index b63d654b57bb..000000000000
--- a/dev-java/kxml/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">kxml</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/laf-plugin/Manifest b/dev-java/laf-plugin/Manifest
deleted file mode 100644
index cdc702d77434..000000000000
--- a/dev-java/laf-plugin/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST laf-plugin-0.2.tar.bz2 13799 BLAKE2B b466053ccc064cc067f408a2d57e9ff99ae1d0e421ec70fe789baa865aa8ad12dae0143591b06ee9f19ce7d59b3c41e75ccb2adfe597d40923f5e4a4f156e144 SHA512 91ac3f9f5ebfcd70e7cc76f2e028e9578c6113a848b0ccdc6b001fff006bf5aaa12af08b1752851693d218d4b2d7d053f62461481e49d5a0bde21e5a7d086331
-DIST laf-plugin-1.1.jar 8105 BLAKE2B 45d065389b25f2e6cf8a06058edba8f056bb02a8e1eb038d0e88c04e086ba09b4ede4064f7bd8c618a0daf328e20781fa15d4902cf7889d41110af92bcf5e5a7 SHA512 2ca265d23ac95e5d194e4905ead4c975cb8739a0aa30096c028d2f6467b148de2ac0ff71c6730752a666eee53551867d9d8c852d25238a873fbd4bd994cf80c0
diff --git a/dev-java/laf-plugin/files/laf-plugin-0.2-enum.patch b/dev-java/laf-plugin/files/laf-plugin-0.2-enum.patch
deleted file mode 100644
index 35d818ead30a..000000000000
--- a/dev-java/laf-plugin/files/laf-plugin-0.2-enum.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- a/src/org/jvnet/lafplugin/XMLElement.java 2017-03-24 19:08:40.320048066 +0000
-+++ b/src/org/jvnet/lafplugin/XMLElement.java 2017-03-24 19:10:18.490049991 +0000
-@@ -478,9 +478,9 @@
- this.children = new Vector();
- this.entities = entities;
- this.lineNr = 0;
-- Enumeration enum = this.entities.keys();
-- while (enum.hasMoreElements()) {
-- Object key = enum.nextElement();
-+ Enumeration myEnum = this.entities.keys();
-+ while (myEnum.hasMoreElements()) {
-+ Object key = myEnum.nextElement();
- Object value = this.entities.get(key);
- if (value instanceof String) {
- value = ((String) value).toCharArray();
-@@ -2168,10 +2168,10 @@
- writer.write('<');
- writer.write(this.name);
- if (! this.attributes.isEmpty()) {
-- Enumeration enum = this.attributes.keys();
-- while (enum.hasMoreElements()) {
-+ Enumeration myEnum = this.attributes.keys();
-+ while (myEnum.hasMoreElements()) {
- writer.write(' ');
-- String key = (String) enum.nextElement();
-+ String key = (String) myEnum.nextElement();
- String value = (String) this.attributes.get(key);
- writer.write(key);
- writer.write('='); writer.write('"');
-@@ -2189,9 +2189,9 @@
- writer.write('/'); writer.write('>');
- } else {
- writer.write('>');
-- Enumeration enum = this.enumerateChildren();
-- while (enum.hasMoreElements()) {
-- XMLElement child = (XMLElement) enum.nextElement();
-+ Enumeration myEnum = this.enumerateChildren();
-+ while (myEnum.hasMoreElements()) {
-+ XMLElement child = (XMLElement) myEnum.nextElement();
- child.write(writer);
- }
- writer.write('<'); writer.write('/');
diff --git a/dev-java/laf-plugin/laf-plugin-0.2-r2.ebuild b/dev-java/laf-plugin/laf-plugin-0.2-r2.ebuild
deleted file mode 100644
index 27a2ea3f6544..000000000000
--- a/dev-java/laf-plugin/laf-plugin-0.2-r2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Look'n'feel Java library"
-HOMEPAGE="http://laf-plugin.dev.java.net/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-KEYWORDS="amd64 x86"
-SLOT="0"
-LICENSE="BSD"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-PATCHES=( "${FILESDIR}/${P}-enum.patch" )
-
-src_prepare() {
- default
-}
-
-src_install() {
- java-pkg-simple_src_install
-}
diff --git a/dev-java/laf-plugin/laf-plugin-1.1-r1.ebuild b/dev-java/laf-plugin/laf-plugin-1.1-r1.ebuild
deleted file mode 100644
index 0c34f8779fc1..000000000000
--- a/dev-java/laf-plugin/laf-plugin-1.1-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Look'n'feel Java library"
-HOMEPAGE="http://laf-plugin.dev.java.net"
-SRC_URI="https://repo1.maven.org/maven2/net/java/dev/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-LICENSE="BSD"
-SLOT="1"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/nanoxml:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-JAVA_GENTOO_CLASSPATH="nanoxml"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
-}
diff --git a/dev-java/laf-plugin/metadata.xml b/dev-java/laf-plugin/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/laf-plugin/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/leiningen-bin/Manifest b/dev-java/leiningen-bin/Manifest
index 75202b393bb9..61b3224c3455 100644
--- a/dev-java/leiningen-bin/Manifest
+++ b/dev-java/leiningen-bin/Manifest
@@ -1,8 +1,2 @@
-DIST leiningen-2.8.0-standalone.jar 13541842 BLAKE2B 79697751b9da90a3f61bd4b8722436d1af1ce9f8db5c0e3a68d15d006f2afcb9518ab2034554b9b8a8e5f8bb991b304d51b8f45fb9a77d7337718035dc271e7d SHA512 e16359b2d211f9a72eeb9b672a94155f49531cbb731df11451b76ec30ad83be4a22e0b2ecc582bb01fdadd6822f56f27d42fa214df222f6c95e0fde64cb305ed
-DIST leiningen-2.8.0.sh 4335 BLAKE2B 951cc9b69e726bbb84c88b8b6407386c878cb1521c5cd79c7ce39ed48805cd24e9af0102f21cd7e852a024830b151751d42e7524f729bcca40f0e7de013ceb8b SHA512 08a5e2fc68ac3bd34dc32558088bd2ff79c9d72c54a610cfcd8c79fa5dcb98ad28d6950cb91b88081d024d5be881a168c2f9235c7888aa36c0f0e7e1f124169f
-DIST leiningen-2.8.1-standalone.jar 13541128 BLAKE2B f38c5d9e8e0088af352f915c2e3290bbbd97fd791607e1553109084a302c6c58d37f1d712b68b31d16d5de83239a9908bcf69aad0eaf1d2dc2e358090665fab8 SHA512 7c585d25f7089dbd718d84711b202b087ec4987f2e1a448fc00cb789a12da88967c048f2de1d087c9e81c6fcfd8b82825117220ba729096b4c946ae25504c716
-DIST leiningen-2.8.1.sh 4461 BLAKE2B ed3fe5421bfdf4fc3a0a8d09bba7c3ca4de4571bd2dcd26251af338dcff0baaa71208c83317b62067f2fcde4a70aef5593cc7c31742eed6ce5db8c3ce8a80b9b SHA512 77ef29885a87e7c23b972d519cdb052b94a74d63f8a455935c199f5f7c04ab30ed06503792ea5a21ac047c7abdcf7e4e72e54114b96f984e4bcb9790e97909de
-DIST leiningen-2.8.3-standalone.jar 13598124 BLAKE2B 1810acb75adb25985b660d14d5be429a82b81480d38a6325ddb99a34ae6d44fed0b19243135c673001ff958935d1bb8e912940e22b25b3aed7982a80fbbd3fb3 SHA512 f9ed3604dbf0498524b3a137a872576de7cb5b8df6d4841cf6d552adc0b8cf2186244805cd53228d57c4285803069ed8a67a8dd33a326369cb468dcc773444f7
-DIST leiningen-2.8.3.sh 4509 BLAKE2B b5291c5596dea00c2043ae7c791f2a79077e545eec667a99e584400af5351258fb5041037fe060a12033115dd0fbc63a8e9ad83f1d6c926c231d49ad331adb51 SHA512 d62a5e9bbf10d940763ca988f900900413e80bf9d0e2d8c668f897f178dbc64daf7b828e8dcd1c72aa0794e266814491122b8d8acd47c5561feec177595cabdd
-DIST leiningen-2.9.1-standalone.jar 14621704 BLAKE2B 51d3aca27c56dcdf1560271509e6c4868e387255af5f4e75f42755243b14949ef994cbee81f796a5a533089433fff59e9aff65d7e4e93df02e86fccfd47cf7f9 SHA512 4364aa2a071117049f97f95e020f75bfd0875c88475591d4e04100ac1b228137360a8b24c09877cd3400b7854bf9392b4e5d07ed7f7972e10e4ef5396d0db574
-DIST leiningen-2.9.1.sh 4511 BLAKE2B 66fd656c20ed9b109982840315951b062b1a3fbf0b2b76fc1b6ca612d4daa5d07480838f3f58ec1f1193ff29318323123b6f58bde390d4fb628566687ed39eab SHA512 044621254d31bee3bcdd3f6bd52e9c233a736e2e780edaa3af1d5a7a90424294efd25590c9d3a0606560b223b9e73c87c258fbbb626d2af1b39a400ba1aea86d
+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.11.2.ebuild b/dev-java/leiningen-bin/leiningen-bin-2.11.2.ebuild
new file mode 100644
index 000000000000..9b67aaa8bbc5
--- /dev/null
+++ b/dev-java/leiningen-bin/leiningen-bin-2.11.2.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+MY_PN="${PN%-bin}"
+MY_PNV="${MY_PN}-${PV}"
+
+DESCRIPTION="Automate Clojure projects without setting your hair on fire"
+HOMEPAGE="https://leiningen.org/"
+SRC_URI="
+ https://github.com/technomancy/${MY_PN}/releases/download/${PV}/${MY_PNV}-standalone.jar
+ https://raw.githubusercontent.com/technomancy/${MY_PN}/${PV}/bin/lein-pkg -> ${MY_PNV}.sh
+"
+
+LICENSE="EPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 arm64 ~x86 ~x64-macos"
+
+RDEPEND=">=virtual/jre-1.8"
+DEPEND=">=virtual/jdk-1.8"
+
+RESTRICT="test"
+
+src_unpack() {
+ mkdir -p "${S}" || die "Can't mkdir ${S}"
+ cd "${S}" || die "Can't enter ${S}"
+ for file in ${A}; do
+ einfo "Copying ${file}"
+ cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
+ done
+}
+
+src_prepare() {
+ einfo "Copying leinrc"
+ cp "${FILESDIR}/leinrc" "${S}/" || die "Can't copy leinrc"
+ einfo "Patching leinrc"
+ sed -i "s^@@PN@@^${PN}^" "${S}/leinrc" || die "Can't patch leinrc"
+
+ einfo "Renaming lein-pkg"
+ # Rename generically to help user patching
+ mv "${S}/${MY_PNV}.sh" "${S}/lein" || die "Can't rename to lein"
+
+ einfo "Patching lein"
+ java-pkg_init_paths_
+ sed -i "s|^LEIN_JAR=.*$|LEIN_JAR=${EPREFIX}/${JAVA_PKG_JARDEST#/}/${PN}.jar|" "${S}/lein" \
+ || die "Can't patch LEIN_JAR in lein"
+
+ default
+}
+
+src_compile() { :; }
+
+src_install() {
+ dobin "${S}/lein"
+ java-pkg_newjar "${MY_PNV}-standalone.jar"
+ insinto /etc
+ doins "${S}/leinrc"
+ fperms 0644 "/etc/leinrc"
+}
diff --git a/dev-java/leiningen-bin/leiningen-bin-2.8.0.ebuild b/dev-java/leiningen-bin/leiningen-bin-2.8.0.ebuild
deleted file mode 100644
index dd80a3d2fd2f..000000000000
--- a/dev-java/leiningen-bin/leiningen-bin-2.8.0.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit java-pkg-2
-
-MY_PN="${PN%-bin}"
-MY_PNV="${MY_PN}-${PV}"
-
-DESCRIPTION="Automate Clojure projects without setting your hair on fire"
-HOMEPAGE="https://leiningen.org/"
-SRC_URI="
- https://github.com/technomancy/${MY_PN}/releases/download/${PV}/${MY_PNV}-standalone.zip -> ${MY_PNV}-standalone.jar
- https://raw.githubusercontent.com/technomancy/${MY_PN}/${PV}/bin/lein-pkg -> ${MY_PNV}.sh
-"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x64-macos"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-RESTRICT="test"
-
-src_unpack() {
- mkdir -p "${S}" || die "Can't mkdir ${S}"
- cd "${S}" || die "Can't enter ${S}"
- for file in ${A}; do
- einfo "Copying ${file}"
- cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
- done
-}
-
-src_prepare() {
- einfo "Copying leinrc"
- cp "${FILESDIR}/leinrc" "${S}/" || die "Can't copy leinrc"
- einfo "Patching leinrc"
- sed -i "s^@@PN@@^${PN}^" "${S}/leinrc" || die "Can't patch leinrc"
-
- einfo "Renaming lein-pkg"
- # Rename generically to help user patching
- mv "${S}/${MY_PNV}.sh" "${S}/lein" || die "Can't rename to lein"
-
- einfo "Patching lein"
- java-pkg_init_paths_
- sed -i "s|^LEIN_JAR=.*$|LEIN_JAR=${EPREFIX}/${JAVA_PKG_JARDEST#/}/${PN}.jar|" "${S}/lein" \
- || die "Can't patch LEIN_JAR in lein"
-
- default
-}
-
-src_compile() { :; }
-
-src_install() {
- dobin "${S}/lein"
- java-pkg_newjar "${MY_PNV}-standalone.jar"
- insinto /etc
- doins "${S}/leinrc"
- fperms 0644 "/etc/leinrc"
-}
diff --git a/dev-java/leiningen-bin/leiningen-bin-2.8.1.ebuild b/dev-java/leiningen-bin/leiningen-bin-2.8.1.ebuild
deleted file mode 100644
index c8a23a81510b..000000000000
--- a/dev-java/leiningen-bin/leiningen-bin-2.8.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit java-pkg-2
-
-MY_PN="${PN%-bin}"
-MY_PNV="${MY_PN}-${PV}"
-
-DESCRIPTION="Automate Clojure projects without setting your hair on fire"
-HOMEPAGE="https://leiningen.org/"
-SRC_URI="
- https://github.com/technomancy/${MY_PN}/releases/download/${PV}/${MY_PNV}-standalone.zip -> ${MY_PNV}-standalone.jar
- https://raw.githubusercontent.com/technomancy/${MY_PN}/${PV}/bin/lein-pkg -> ${MY_PNV}.sh
-"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x64-macos"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-RESTRICT="test"
-
-src_unpack() {
- mkdir -p "${S}" || die "Can't mkdir ${S}"
- cd "${S}" || die "Can't enter ${S}"
- for file in ${A}; do
- einfo "Copying ${file}"
- cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
- done
-}
-
-src_prepare() {
- einfo "Copying leinrc"
- cp "${FILESDIR}/leinrc" "${S}/" || die "Can't copy leinrc"
- einfo "Patching leinrc"
- sed -i "s^@@PN@@^${PN}^" "${S}/leinrc" || die "Can't patch leinrc"
-
- einfo "Renaming lein-pkg"
- # Rename generically to help user patching
- mv "${S}/${MY_PNV}.sh" "${S}/lein" || die "Can't rename to lein"
-
- einfo "Patching lein"
- java-pkg_init_paths_
- sed -i "s|^LEIN_JAR=.*$|LEIN_JAR=${EPREFIX}/${JAVA_PKG_JARDEST#/}/${PN}.jar|" "${S}/lein" \
- || die "Can't patch LEIN_JAR in lein"
-
- default
-}
-
-src_compile() { :; }
-
-src_install() {
- dobin "${S}/lein"
- java-pkg_newjar "${MY_PNV}-standalone.jar"
- insinto /etc
- doins "${S}/leinrc"
- fperms 0644 "/etc/leinrc"
-}
diff --git a/dev-java/leiningen-bin/leiningen-bin-2.8.3.ebuild b/dev-java/leiningen-bin/leiningen-bin-2.8.3.ebuild
deleted file mode 100644
index 8025bfa59aba..000000000000
--- a/dev-java/leiningen-bin/leiningen-bin-2.8.3.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit java-pkg-2
-
-MY_PN="${PN%-bin}"
-MY_PNV="${MY_PN}-${PV}"
-
-DESCRIPTION="Automate Clojure projects without setting your hair on fire"
-HOMEPAGE="https://leiningen.org/"
-SRC_URI="
- https://github.com/technomancy/${MY_PN}/releases/download/${PV}/${MY_PNV}-standalone.zip -> ${MY_PNV}-standalone.jar
- https://raw.githubusercontent.com/technomancy/${MY_PN}/${PV}/bin/lein-pkg -> ${MY_PNV}.sh
-"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x64-macos"
-
-RDEPEND=">=virtual/jre-1.8"
-DEPEND=">=virtual/jdk-1.8"
-
-RESTRICT="test"
-
-src_unpack() {
- mkdir -p "${S}" || die "Can't mkdir ${S}"
- cd "${S}" || die "Can't enter ${S}"
- for file in ${A}; do
- einfo "Copying ${file}"
- cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
- done
-}
-
-src_prepare() {
- einfo "Copying leinrc"
- cp "${FILESDIR}/leinrc" "${S}/" || die "Can't copy leinrc"
- einfo "Patching leinrc"
- sed -i "s^@@PN@@^${PN}^" "${S}/leinrc" || die "Can't patch leinrc"
-
- einfo "Renaming lein-pkg"
- # Rename generically to help user patching
- mv "${S}/${MY_PNV}.sh" "${S}/lein" || die "Can't rename to lein"
-
- einfo "Patching lein"
- java-pkg_init_paths_
- sed -i "s|^LEIN_JAR=.*$|LEIN_JAR=${EPREFIX}/${JAVA_PKG_JARDEST#/}/${PN}.jar|" "${S}/lein" \
- || die "Can't patch LEIN_JAR in lein"
-
- default
-}
-
-src_compile() { :; }
-
-src_install() {
- dobin "${S}/lein"
- java-pkg_newjar "${MY_PNV}-standalone.jar"
- insinto /etc
- doins "${S}/leinrc"
- fperms 0644 "/etc/leinrc"
-}
diff --git a/dev-java/leiningen-bin/leiningen-bin-2.9.1.ebuild b/dev-java/leiningen-bin/leiningen-bin-2.9.1.ebuild
deleted file mode 100644
index 9ce40e8c97b8..000000000000
--- a/dev-java/leiningen-bin/leiningen-bin-2.9.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit java-pkg-2
-
-MY_PN="${PN%-bin}"
-MY_PNV="${MY_PN}-${PV}"
-
-DESCRIPTION="Automate Clojure projects without setting your hair on fire"
-HOMEPAGE="https://leiningen.org/"
-SRC_URI="
- https://github.com/technomancy/${MY_PN}/releases/download/${PV}/${MY_PNV}-standalone.zip -> ${MY_PNV}-standalone.jar
- https://raw.githubusercontent.com/technomancy/${MY_PN}/${PV}/bin/lein-pkg -> ${MY_PNV}.sh
-"
-
-LICENSE="EPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~x86 ~x64-macos"
-
-RDEPEND=">=virtual/jre-1.8"
-DEPEND=">=virtual/jdk-1.8"
-
-RESTRICT="test"
-
-src_unpack() {
- mkdir -p "${S}" || die "Can't mkdir ${S}"
- cd "${S}" || die "Can't enter ${S}"
- for file in ${A}; do
- einfo "Copying ${file}"
- cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
- done
-}
-
-src_prepare() {
- einfo "Copying leinrc"
- cp "${FILESDIR}/leinrc" "${S}/" || die "Can't copy leinrc"
- einfo "Patching leinrc"
- sed -i "s^@@PN@@^${PN}^" "${S}/leinrc" || die "Can't patch leinrc"
-
- einfo "Renaming lein-pkg"
- # Rename generically to help user patching
- mv "${S}/${MY_PNV}.sh" "${S}/lein" || die "Can't rename to lein"
-
- einfo "Patching lein"
- java-pkg_init_paths_
- sed -i "s|^LEIN_JAR=.*$|LEIN_JAR=${EPREFIX}/${JAVA_PKG_JARDEST#/}/${PN}.jar|" "${S}/lein" \
- || die "Can't patch LEIN_JAR in lein"
-
- default
-}
-
-src_compile() { :; }
-
-src_install() {
- dobin "${S}/lein"
- java-pkg_newjar "${MY_PNV}-standalone.jar"
- insinto /etc
- doins "${S}/leinrc"
- fperms 0644 "/etc/leinrc"
-}
diff --git a/dev-java/leiningen-bin/metadata.xml b/dev-java/leiningen-bin/metadata.xml
index d406dfb37e66..a8dcf9c216a1 100644
--- a/dev-java/leiningen-bin/metadata.xml
+++ b/dev-java/leiningen-bin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/libg/Manifest b/dev-java/libg/Manifest
index 068af0665527..a890570b45c8 100644
--- a/dev-java/libg/Manifest
+++ b/dev-java/libg/Manifest
@@ -1 +1 @@
-DIST bndlib-2.1.0.tar.gz 123217291 BLAKE2B ab8e6876b13db538746f77aa1fe7800e5a3b5e539e1980da78f69c64344f4964bf0a21f2329f7684b055d0de39a10c8df36e030922e9933b29fccb9a35aa669a SHA512 6965143ced45c15fc2316716de32e80506cc411d52309b24313fff37e0713a45ad200d5b3701f0d47a131a3163ec266ed8acb4544884cd1c59c9716c7a2b285e
+DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c
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 4ac55d9243ba..000000000000
--- a/dev-java/libg/libg-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="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 ~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
new file mode 100644
index 000000000000..7acbb7965c60
--- /dev/null
+++ b/dev-java/libg/libg-7.0.0.ebuild
@@ -0,0 +1,51 @@
+# 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="biz.aQute.bnd:aQute.libg:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A library to be statically linked. Contains many small utilities"
+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 ppc64 x86"
+# aQute.bnd.test.jupiter does not exist
+# org.assertj.core.api.junit.jupiter does not exist
+RESTRICT="test" #839681
+
+CP_DEPEND="
+ dev-java/slf4j-api:0
+"
+
+# compile error with jdk:21, restricting to jdk:17
+# aQute.libg/src/aQute/lib/collections/SortedList.java:31: error: types List<T> and SortedSet<T> are incompatible;
+# public class SortedList<T> implements SortedSet<T>, List<T> {
+# ^
+# both define reversed(), but with unrelated return types
+# where T is a type-variable:
+# T extends Object declared in class SortedList
+DEPEND="${CP_DEPEND}
+ ~dev-java/bnd-annotation-${PV}:0
+ dev-java/osgi-cmpn:8
+ virtual/jdk:17
+"
+
+# aQute.libg/src/aQute/libg/uri/URIUtil.java:161:
+# error: switch expressions are not supported in -source 11
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-17:*
+"
+
+JAVA_AUTOMATIC_MODULE_NAME="aQute.libg"
+JAVA_CLASSPATH_EXTRA="
+ bnd-annotation
+ osgi-cmpn-8
+"
+JAVA_SRC_DIR="aQute.libg/src"
diff --git a/dev-java/libg/metadata.xml b/dev-java/libg/metadata.xml
index 7ed2fdf0797a..cb6317e530db 100644
--- a/dev-java/libg/metadata.xml
+++ b/dev-java/libg/metadata.xml
@@ -1,11 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <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/libreadline-java/Manifest b/dev-java/libreadline-java/Manifest
deleted file mode 100644
index 681ab055aa4b..000000000000
--- a/dev-java/libreadline-java/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST libreadline-java-0.8.0.tar.gz 77122 BLAKE2B cd25c3aea6189d0d48a10c26ad2f359e7f22533fd4a22d22b8491fd19c2d12c0fda6c8f1b8908bd66be8094efb374a51c6877eb89835360c4a2be8d9107d1336 SHA512 16bbb01a4852244387d63d8d5a7203e2862f235d8a68b436f33b586c7a6ea5297d1fabfa910c54bc33cfdc43b5dfe80e9eb4828b80196a974410c90387c3d1f2
diff --git a/dev-java/libreadline-java/files/libreadline-java-0.8.0-gmake.patch b/dev-java/libreadline-java/files/libreadline-java-0.8.0-gmake.patch
deleted file mode 100644
index 34a01e48ae55..000000000000
--- a/dev-java/libreadline-java/files/libreadline-java-0.8.0-gmake.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/src/native/Makefile
-+++ b/src/native/Makefile
-@@ -69,13 +69,13 @@ all: $(T_LIBS)
- lib: $(ROOTDIR)/$(LIB_PRE)$(TG).$(LIB_EXT)
-
- JavaReadline:
-- make TG=$@ lib
-+ $(MAKE) TG=$@ lib
-
- JavaEditline:
-- make TG=$@ lib
-+ $(MAKE) TG=$@ lib
-
- JavaGetline:
-- make TG=$@ lib
-+ $(MAKE) TG=$@ lib
-
- $(ROOTDIR)/$(LIB_PRE)$(TG).$(LIB_EXT): $(OBJECTS)
- ifeq (MSC,$(WIN32))
diff --git a/dev-java/libreadline-java/files/libreadline-java-0.8.0-respect-flags.patch b/dev-java/libreadline-java/files/libreadline-java-0.8.0-respect-flags.patch
deleted file mode 100644
index 9af21ba83d4b..000000000000
--- a/dev-java/libreadline-java/files/libreadline-java-0.8.0-respect-flags.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git a/src/native/Makefile b/src/native/Makefile
-index 679adb7..a1f2a6a 100644
---- a/src/native/Makefile
-+++ b/src/native/Makefile
-@@ -51,11 +51,11 @@ JavaEditline_LIBS = -ledit -ltermcap
- ifeq (cygwin,$(WIN32))
- JavaGetline_LIBS = -lcygwin
- endif
--CC = gcc
-+CC ?= gcc
- OBJ_EXT := o
- LIB_PRE := lib
- LIB_EXT := so
--CFLAGS=-fPIC -DPOSIX
-+CFLAGS += -fPIC -DPOSIX
- endif
-
-
-@@ -97,7 +97,7 @@ ifeq (CYGWIN,$(WIN32))
- $(CC) -W1,$(ROOTDIR)/lib$(TG).exp -o $@ \
- $(OBJECTS) -W1,-e,_readline_init@12
- else
-- $(CC) -shared $(OBJECTS) $(LIBPATH) $($(TG)_LIBS) -o $@
-+ $(CC) -shared $(LDFLAGS) $(OBJECTS) $(LIBPATH) $($(TG)_LIBS) -o $@
- endif
- endif
-
diff --git a/dev-java/libreadline-java/files/termcap-to-ncurses.patch b/dev-java/libreadline-java/files/termcap-to-ncurses.patch
deleted file mode 100644
index 256cf6573da1..000000000000
--- a/dev-java/libreadline-java/files/termcap-to-ncurses.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/native/Makefile.org 2004-09-07 16:43:16.703100016 +0200
-+++ b/src/native/Makefile 2004-09-07 16:43:28.804919625 +0200
-@@ -45,8 +45,8 @@
- CFLAGS=-DWIN32=$(WIN32) -D__IBMC__
- else
- INCLUDES = -I $(JAVAINCLUDE) -I $(JAVANATINC)
--LIBPATH = -L/usr/lib/termcap
--JavaReadline_LIBS = -lreadline -ltermcap -lhistory
-+LIBPATH =
-+JavaReadline_LIBS = -lreadline -lncurses -lhistory
- JavaEditline_LIBS = -ledit -ltermcap
- ifeq (cygwin,$(WIN32))
- JavaGetline_LIBS = -lcygwin
diff --git a/dev-java/libreadline-java/libreadline-java-0.8.0-r5.ebuild b/dev-java/libreadline-java/libreadline-java-0.8.0-r5.ebuild
deleted file mode 100644
index 32411ad2c864..000000000000
--- a/dev-java/libreadline-java/libreadline-java-0.8.0-r5.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 eutils
-
-DESCRIPTION="A JNI-wrapper to GNU Readline"
-HOMEPAGE="http://java-readline.sourceforge.net/"
-SRC_URI="mirror://sourceforge/java-readline/${P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="elibc_FreeBSD"
-
-CDEPEND="sys-libs/ncurses:0="
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-DEPEND="
- virtual/jdk:1.8
- ${CDEPEND}"
-
-RESTRICT="test"
-
-# 1: See bug #157387 reported upstream.
-# 2: Respect CC CFLAGS LDFLAGS, see bugs #336302 #296741.
-PATCHES=(
- "${FILESDIR}/termcap-to-ncurses.patch"
- "${FILESDIR}/${P}-gmake.patch"
- "${FILESDIR}/${P}-respect-flags.patch"
-)
-
-DOCS=( ChangeLog NEWS README README.1st TODO )
-
-src_prepare() {
- default
-
- # See bug #157390.
- sed -i "s/^\(JC_FLAGS =\)/\1 $(java-pkg_javac-args)/" Makefile || die
- if use elibc_FreeBSD; then
- sed -i -e '/JAVANATINC/s:linux:freebsd:' Makefile || die "sed JAVANATINC failed"
- fi
-
-}
-
-src_compile() {
- emake -j1
- if use doc; then
- # src/org/gnu/readline/Readline.java is completely bogus and generate a
- # truckload of errors. Let's call make without catching anything. :(
- make -j1 apidoc
- fi
-}
-
-src_install() {
- java-pkg_doso *.so
- java-pkg_dojar *.jar
- use source && java-pkg_dosrc src/*
- use doc && java-pkg_dojavadoc api
-}
diff --git a/dev-java/libreadline-java/metadata.xml b/dev-java/libreadline-java/metadata.xml
deleted file mode 100644
index ee80557bb2d5..000000000000
--- a/dev-java/libreadline-java/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">java-readline</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/lmax-disruptor/Manifest b/dev-java/lmax-disruptor/Manifest
new file mode 100644
index 000000000000..07618fb8c6fc
--- /dev/null
+++ b/dev-java/lmax-disruptor/Manifest
@@ -0,0 +1 @@
+DIST lmax-disruptor-3.4.4.tar.gz 237165 BLAKE2B ff17747e24a587e4b0656e16281ecf98cad5b3f260cd270a87e157ccbd6afc4a4e0886fcfab774a3c7919a9f5d26e13199a3cbcd3f7699986d4f9a36576f72dd SHA512 871d474ecbc4e09d33b0d099232f2abdf88b755141e00406e4a721e5bd6c5edc99c6c446277e054bd603ae9b158bdb6b438aa6e8532194dca9bce953b748bfde
diff --git a/dev-java/lmax-disruptor/lmax-disruptor-3.4.4.ebuild b/dev-java/lmax-disruptor/lmax-disruptor-3.4.4.ebuild
new file mode 100644
index 000000000000..75b087415f61
--- /dev/null
+++ b/dev-java/lmax-disruptor/lmax-disruptor-3.4.4.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.lmax:disruptor:3.4.4"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A High Performance Inter-Thread Messaging Library"
+HOMEPAGE="https://lmax-exchange.github.io/disruptor/"
+SRC_URI="https://github.com/LMAX-Exchange/disruptor/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( LICENCE.txt README.md )
+
+S="${WORKDIR}/disruptor-${PV}"
+
+JAVA_SRC_DIR="src/main"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_EXCLUDES=(
+ # valid test classes have pattern *Test with nothing behind
+ com.lmax.disruptor.dsl.stubs.TestWorkHandler # No runnable methods
+ com.lmax.disruptor.support.TestEvent # No runnable methods
+ com.lmax.disruptor.support.TestWaiter # No runnable methods
+)
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/lmax-disruptor/metadata.xml b/dev-java/lmax-disruptor/metadata.xml
new file mode 100644
index 000000000000..bc7984dba201
--- /dev/null
+++ b/dev-java/lmax-disruptor/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">LMAX-Exchange/disruptor</remote-id>
+ <bugs-to>https://github.com/LMAX-Exchange/disruptor/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/log4j-12-api/Manifest b/dev-java/log4j-12-api/Manifest
new file mode 100644
index 000000000000..90ceb3023e39
--- /dev/null
+++ b/dev-java/log4j-12-api/Manifest
@@ -0,0 +1 @@
+DIST apache-log4j-2.19.0-src.tar.gz 11764795 BLAKE2B 02ec7c5c825cabe9994a2f50d6761110f87a19ff46874c00d46986da7338c32148f3b6c3551c95721aaf94b71d1d5ce8bcea32462e11fa3fe0c3cbbc0cf5f887 SHA512 c72859c415e701921497bb4f02047fa022083f66b4d21b1dbae28361bd73498b2eae335b9a1ac2d7f796df734a6d54db2701ae5ebf999197597e9e2ad064c271
diff --git a/dev-java/log4j-12-api/log4j-12-api-2.19.0.ebuild b/dev-java/log4j-12-api/log4j-12-api-2.19.0.ebuild
new file mode 100644
index 000000000000..eb4baf392fe0
--- /dev/null
+++ b/dev-java/log4j-12-api/log4j-12-api-2.19.0.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom log4j-1.2-api/pom.xml --download-uri mirror://apache/logging/log4j/2.19.0/apache-log4j-2.19.0-src.tar.gz --slot 2 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild log4j-12-api-2.19.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.logging.log4j:log4j-1.2-api:2.19.0"
+JAVA_TESTING_FRAMEWORKS="junit-vintage junit-jupiter"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The Apache Log4j 1.x Compatibility API"
+HOMEPAGE="https://logging.apache.org/log4j/2.x/"
+SRC_URI="mirror://apache/logging/log4j/${PV}/apache-log4j-${PV}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# We don't have junit-vintage and junit-jupiter
+RESTRICT="test"
+
+# Common dependencies
+# POM: log4j-1.2-api/pom.xml
+# org.apache.logging.log4j:log4j-api:2.19.0 -> >=dev-java/log4j-api-2.19.0:2
+# org.apache.logging.log4j:log4j-core:2.19.0 -> >=dev-java/log4j-core-2.19.0:2
+
+CP_DEPEND="
+ ~dev-java/log4j-api-${PV}:2
+ ~dev-java/log4j-core-${PV}:2
+"
+
+# Compile dependencies
+# POM: log4j-1.2-api/pom.xml
+# javax.jms:javax.jms-api:2.0.1 -> !!!groupId-not-found!!!
+# POM: log4j-1.2-api/pom.xml
+# test? com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.13.4 -> >=dev-java/jackson-dataformat-xml-2.13.4:0
+# test? commons-io:commons-io:2.11.0 -> >=dev-java/commons-io-2.11.0:1
+# test? org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
+# test? org.apache.felix:org.apache.felix.framework:7.0.5 -> >=dev-java/felix-framework-7.0.5:0
+# test? org.apache.logging.log4j:log4j-api:2.19.0 -> >=dev-java/log4j-api-2.19.0:2
+# test? org.apache.logging.log4j:log4j-core:2.19.0 -> >=dev-java/log4j-core-2.19.0:2
+# test? org.apache.velocity:velocity:1.7 -> !!!artifactId-not-found!!!
+# test? org.eclipse.tycho:org.eclipse.osgi:3.13.0.v20180226-1711 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-engine:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-params:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.vintage:junit-vintage-engine:5.9.0 -> !!!groupId-not-found!!!
+# test? org.mockito:mockito-core:4.4.0 -> >=dev-java/mockito-4.6.1:4
+# test? oro:oro:2.0.8 -> >=dev-java/jakarta-oro-2.0.8:2.0
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ dev-java/javax-jms-api:0"
+# test? (
+# !!!artifactId-not-found!!!
+# !!!groupId-not-found!!!
+# >=dev-java/commons-io-2.11.0:1
+# >=dev-java/commons-lang-3.12.0:3.6
+# >=dev-java/felix-framework-7.0.5:0
+# >=dev-java/jackson-dataformat-xml-2.13.4:0
+# >=dev-java/jakarta-oro-2.0.8:2.0
+# >=dev-java/log4j-api-2.19.0:2
+# >=dev-java/log4j-core-2.19.0:2
+# >=dev-java/mockito-4.6.1:4
+# )
+#"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( {CONTRIBUTING,README,RELEASE-NOTES,SECURITY}.md )
+
+S="${WORKDIR}/apache-log4j-${PV}-src"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.log4j"
+JAVA_CLASSPATH_EXTRA="javax-jms-api"
+JAVA_RESOURCE_DIRS="log4j-1.2-api/src/main/resources"
+JAVA_SRC_DIR="log4j-1.2-api/src/main/java"
+
+#JAVA_TEST_GENTOO_CLASSPATH="jackson-dataformat-xml,commons-io-1,commons-lang-3.6,!!!groupId-not-found!!!,log4j-api-2,log4j-core-2,!!!artifactId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,mockito-4,jakarta-oro-2.0"
+#JAVA_TEST_SRC_DIR="log4j-1.2-api/src/test/java"
+#JAVA_TEST_RESOURCE_DIRS=(
+# "log4j-1.2-api/src/test/resources"
+#)
diff --git a/dev-java/log4j-12-api/metadata.xml b/dev-java/log4j-12-api/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/log4j-12-api/metadata.xml
@@ -0,0 +1,7 @@
+<?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/log4j-api/Manifest b/dev-java/log4j-api/Manifest
new file mode 100644
index 000000000000..14e2988064c0
--- /dev/null
+++ b/dev-java/log4j-api/Manifest
@@ -0,0 +1,2 @@
+DIST apache-log4j-2.19.0-src.tar.gz 11764795 BLAKE2B 02ec7c5c825cabe9994a2f50d6761110f87a19ff46874c00d46986da7338c32148f3b6c3551c95721aaf94b71d1d5ce8bcea32462e11fa3fe0c3cbbc0cf5f887 SHA512 c72859c415e701921497bb4f02047fa022083f66b4d21b1dbae28361bd73498b2eae335b9a1ac2d7f796df734a6d54db2701ae5ebf999197597e9e2ad064c271
+DIST apache-log4j-2.19.0-src.tar.gz.asc 858 BLAKE2B 36cefcd5f016919d18a7d74121bbd913be65e32daa38cef312c167be5c4a0e722aac1c2c802f95792c7c7e8e455a755cd3c5a737b34c36ffa061c60eb6488775 SHA512 0de52ad15d593330631cd26feb4827f1dadc4858c16e33c33099efe27cddf854c5c4ed7f0cde4c6593bc74e573b6378e7f993477d02215295ec7992b81d0b338
diff --git a/dev-java/log4j-api/log4j-api-2.19.0.ebuild b/dev-java/log4j-api/log4j-api-2.19.0.ebuild
new file mode 100644
index 000000000000..3175e9cecaea
--- /dev/null
+++ b/dev-java/log4j-api/log4j-api-2.19.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom log4j-api/pom.xml --download-uri mirror://apache/logging/log4j/2.19.0/apache-log4j-2.19.0-src.tar.gz --slot 2 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild log4j-api-2.19.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.logging.log4j:log4j-api:2.19.0"
+JAVA_TESTING_FRAMEWORKS="junit-vintage junit-jupiter"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="The Apache Log4j API"
+HOMEPAGE="https://logging.apache.org/log4j/2.x/"
+SRC_URI="mirror://apache/logging/log4j/${PV}/apache-log4j-${PV}-src.tar.gz
+ verify-sig? ( https://www.apache.org/dist/logging/log4j/${PV}/apache-log4j-${PV}-src.tar.gz.asc )"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# junit-{jupiter,vintage} is not available in ::gentoo
+RESTRICT="test"
+
+# Compile dependencies
+# POM: ${PN}/pom.xml
+# org.osgi:org.osgi.core:6.0.0 -> !!!suitable-mavenVersion-not-found!!!
+# POM: ${PN}/pom.xml
+# test? com.fasterxml.jackson.core:jackson-core:2.13.4 -> >=dev-java/jackson-core-2.13.4:0
+# test? com.fasterxml.jackson.core:jackson-databind:2.13.4 -> >=dev-java/jackson-databind-2.13.4:0
+# test? org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
+# test? org.apache.felix:org.apache.felix.framework:7.0.5 -> >=dev-java/felix-framework-7.0.5:0
+# test? org.apache.maven:maven-core:3.8.5 -> !!!groupId-not-found!!!
+# test? org.assertj:assertj-core:3.23.1 -> !!!suitable-mavenVersion-not-found!!!
+# test? org.eclipse.tycho:org.eclipse.osgi:3.13.0.v20180226-1711 -> !!!groupId-not-found!!!
+# test? org.junit-pioneer:junit-pioneer:1.6.2 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-engine:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-migrationsupport:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-params:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.vintage:junit-vintage-engine:5.9.0 -> !!!groupId-not-found!!!
+# test? uk.org.webcompere:system-stubs-jupiter:2.0.1 -> !!!groupId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ dev-java/osgi-core:0"
+# test? (
+# !!!groupId-not-found!!!
+# !!!suitable-mavenVersion-not-found!!!
+# >=dev-java/commons-lang-3.12.0:3.6
+# >=dev-java/felix-framework-7.0.5:0
+# >=dev-java/jackson-core-2.13.4:0
+# >=dev-java/jackson-databind-2.13.4:0
+# )
+#"
+
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="
+ verify-sig? ( sec-keys/openpgp-keys-apache-logging )
+"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/logging.apache.org.asc"
+
+DOCS=( {CONTRIBUTING,README,RELEASE-NOTES,SECURITY}.md )
+
+S="${WORKDIR}/apache-log4j-${PV}-src"
+
+JAVA_CLASSPATH_EXTRA="osgi-core"
+JAVA_SRC_DIR="${PN}/src/main/java"
+JAVA_RESOURCE_DIRS="${PN}/src/main/resources"
+
+# JAVA_TEST_GENTOO_CLASSPATH="jackson-core,jackson-databind,commons-lang-3.6,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!suitable-mavenVersion-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!"
+# JAVA_TEST_SRC_DIR="${PN}/src/test/java"
+# JAVA_TEST_RESOURCE_DIRS=(
+# "${PN}/src/test/resources"
+# )
diff --git a/dev-java/log4j-api/metadata.xml b/dev-java/log4j-api/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/log4j-api/metadata.xml
@@ -0,0 +1,7 @@
+<?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/log4j-core/Manifest b/dev-java/log4j-core/Manifest
new file mode 100644
index 000000000000..90ceb3023e39
--- /dev/null
+++ b/dev-java/log4j-core/Manifest
@@ -0,0 +1 @@
+DIST apache-log4j-2.19.0-src.tar.gz 11764795 BLAKE2B 02ec7c5c825cabe9994a2f50d6761110f87a19ff46874c00d46986da7338c32148f3b6c3551c95721aaf94b71d1d5ce8bcea32462e11fa3fe0c3cbbc0cf5f887 SHA512 c72859c415e701921497bb4f02047fa022083f66b4d21b1dbae28361bd73498b2eae335b9a1ac2d7f796df734a6d54db2701ae5ebf999197597e9e2ad064c271
diff --git a/dev-java/log4j-core/log4j-core-2.19.0.ebuild b/dev-java/log4j-core/log4j-core-2.19.0.ebuild
new file mode 100644
index 000000000000..1ef9298c2298
--- /dev/null
+++ b/dev-java/log4j-core/log4j-core-2.19.0.ebuild
@@ -0,0 +1,179 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom log4j-core/pom.xml --download-uri mirror://apache/logging/log4j/2.19.0/apache-log4j-2.19.0-src.tar.gz --slot 2 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild log4j-core-2.19.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.logging.log4j:log4j-core:2.19.0"
+# JAVA_TESTING_FRAMEWORKS="junit-vintage junit-jupiter"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The Apache Log4j Implementation"
+HOMEPAGE="https://logging.apache.org/log4j/2.x/"
+SRC_URI="mirror://apache/logging/log4j/${PV}/apache-log4j-${PV}-src.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# We don't have junit-vintage and junit-jupiter
+RESTRICT="test"
+
+# Common dependencies
+# POM: ${PN}/pom.xml
+# com.conversantmedia:disruptor:1.2.15 -> >=dev-java/conversant-disruptor-1.2.20:0
+# com.fasterxml.jackson.core:jackson-core:2.13.4 -> >=dev-java/jackson-core-2.13.4:0
+# com.fasterxml.jackson.core:jackson-databind:2.13.4 -> >=dev-java/jackson-databind-2.13.4:0
+# com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.13.4 -> >=dev-java/jackson-dataformat-xml-2.13.4:0
+# com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.13.4 -> >=dev-java/jackson-dataformat-yaml-2.13.4:0
+# com.fasterxml.woodstox:woodstox-core:6.3.1 -> >=dev-java/woodstox-core-6.3.1:0
+# com.lmax:disruptor:3.4.4 -> >=dev-java/lmax-disruptor-3.4.4:0
+# org.apache.commons:commons-compress:1.21 -> >=dev-java/commons-compress-1.21:0
+# org.apache.commons:commons-csv:1.9.0 -> >=dev-java/commons-csv-1.9.0:0
+# org.apache.kafka:kafka-clients:1.1.1 -> >=dev-java/kafka-clients-1.1.1:0
+# org.apache.logging.log4j:log4j-api:2.19.0 -> >=dev-java/log4j-api-2.19.0:2
+# org.fusesource.jansi:jansi:2.4.0 -> >=dev-java/jansi-2.4.0:2
+# org.jctools:jctools-core:3.3.0 -> >=dev-java/jctools-core-3.3.0:3
+# org.slf4j:slf4j-api:1.7.36 -> >=dev-java/slf4j-api-1.7.36:0
+# org.zeromq:jeromq:0.5.2 -> >=dev-java/jeromq-0.5.2:0
+
+CP_DEPEND="
+ dev-java/commons-compress:0
+ dev-java/commons-csv:0
+ dev-java/conversant-disruptor:0
+ dev-java/jackson-core:0
+ dev-java/jackson-databind:0
+ dev-java/jackson-dataformat-xml:0
+ dev-java/jackson-dataformat-yaml:0
+ dev-java/jansi:2
+ dev-java/javax-mail:0
+ dev-java/jctools-core:3
+ dev-java/jeromq:0
+ dev-java/kafka-clients:0
+ dev-java/lmax-disruptor:0
+ ~dev-java/log4j-api-${PV}:2
+ dev-java/slf4j-api:0
+ dev-java/woodstox-core:0
+"
+
+# Compile dependencies
+# POM: ${PN}/pom.xml
+# javax.activation:javax.activation-api:1.2.0 -> !!!groupId-not-found!!!
+# javax.jms:javax.jms-api:2.0.1 -> !!!groupId-not-found!!!
+# javax.mail:javax.mail-api:1.6.2 -> !!!groupId-not-found!!!
+# org.osgi:org.osgi.core:6.0.0 -> >=dev-java/osgi-core-8.0.0:0
+# POM: ${PN}/pom.xml
+# test? ch.qos.logback:logback-classic:1.2.11 -> >=dev-java/logback-classic-1.2.11:0
+# test? ch.qos.logback:logback-core:1.2.11 -> >=dev-java/logback-core-1.2.11:0
+# test? com.github.tomakehurst:wiremock:2.26.3 -> !!!groupId-not-found!!!
+# test? com.google.code.java-allocation-instrumenter:java-allocation-instrumenter:3.3.0 -> !!!groupId-not-found!!!
+# test? com.h2database:h2:2.1.214 -> !!!groupId-not-found!!!
+# test? commons-codec:commons-codec:1.15 -> >=dev-java/commons-codec-1.15:0
+# test? commons-io:commons-io:2.11.0 -> >=dev-java/commons-io-2.11.0:1
+# test? commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
+# test? net.javacrumbs.json-unit:json-unit:2.35.0 -> !!!groupId-not-found!!!
+# test? org.apache-extras.beanshell:bsh:2.0b6 -> >=dev-java/bsh-2.0_beta6:0
+# test? org.apache.activemq:activemq-broker:5.17.1 -> !!!groupId-not-found!!!
+# test? org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
+# test? org.apache.felix:org.apache.felix.framework:7.0.5 -> >=dev-java/felix-framework-7.0.5:0
+# test? org.apache.logging.log4j:log4j-api:2.19.0 -> >=dev-java/log4j-api-2.19.0:2
+# test? org.apache.maven:maven-core:3.8.5 -> !!!groupId-not-found!!!
+# test? org.assertj:assertj-core:3.23.1 -> !!!suitable-mavenVersion-not-found!!!
+# test? org.awaitility:awaitility:4.2.0 -> !!!groupId-not-found!!!
+# test? org.codehaus.groovy:groovy-dateutil:3.0.10 -> !!!groupId-not-found!!!
+# test? org.codehaus.groovy:groovy-jsr223:3.0.10 -> !!!groupId-not-found!!!
+# test? org.codehaus.plexus:plexus-utils:3.4.2 -> !!!artifactId-not-found!!!
+# test? org.eclipse.tycho:org.eclipse.osgi:3.13.0.v20180226-1711 -> !!!groupId-not-found!!!
+# test? org.hamcrest:hamcrest:2.2 -> >=dev-java/hamcrest-2.2:0
+# test? org.hsqldb:hsqldb:2.5.2 -> !!!groupId-not-found!!!
+# test? org.jmdns:jmdns:3.5.8 -> !!!groupId-not-found!!!
+# test? org.junit-pioneer:junit-pioneer:1.6.2 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-engine:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.jupiter:junit-jupiter-params:5.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.platform:junit-platform-commons:1.9.0 -> !!!groupId-not-found!!!
+# test? org.junit.vintage:junit-vintage-engine:5.9.0 -> !!!groupId-not-found!!!
+# test? org.mockito:mockito-core:4.4.0 -> >=dev-java/mockito-4.6.1:4
+# test? org.mockito:mockito-junit-jupiter:4.4.0 -> !!!artifactId-not-found!!!
+# test? org.slf4j:slf4j-ext:1.7.36 -> >=dev-java/slf4j-ext-1.7.36:0
+# test? org.springframework:spring-test:5.3.20 -> !!!groupId-not-found!!!
+# test? org.tukaani:xz:1.9 -> >=dev-java/xz-java-1.9:0
+# test? org.xmlunit:xmlunit-core:2.9.0 -> !!!groupId-not-found!!!
+# test? org.xmlunit:xmlunit-matchers:2.9.0 -> !!!groupId-not-found!!!
+# test? org.zapodot:embedded-ldap-junit:0.8.1 -> !!!groupId-not-found!!!
+
+DEPEND="${CP_DEPEND}
+ dev-java/jakarta-activation-api:1
+ dev-java/jakarta-mail-api:0
+ dev-java/javax-jms-api:0
+ dev-java/osgi-core:0
+ >=virtual/jdk-1.8:*"
+# test? (
+# !!!artifactId-not-found!!!
+# !!!groupId-not-found!!!
+# !!!suitable-mavenVersion-not-found!!!
+# >=dev-java/bsh-2.0_beta6:0
+# >=dev-java/commons-codec-1.15:0
+# >=dev-java/commons-io-2.11.0:1
+# >=dev-java/commons-lang-3.12.0:3.6
+# >=dev-java/commons-logging-1.2:0
+# >=dev-java/felix-framework-7.0.5:0
+# >=dev-java/hamcrest-2.2:0
+# >=dev-java/log4j-api-2.19.0:2
+# >=dev-java/logback-classic-1.2.11:0
+# >=dev-java/logback-core-1.2.11:0
+# >=dev-java/mockito-4.6.1:4
+# >=dev-java/slf4j-ext-1.7.36:0
+# >=dev-java/xz-java-1.9:0
+# )
+#"
+
+# Runtime dependencies
+# POM: ${PN}/pom.xml
+# com.sun.mail:javax.mail:1.6.2 -> !!!artifactId-not-found!!!
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( {CONTRIBUTING,README,RELEASE-NOTES,SECURITY}.md )
+
+S="${WORKDIR}/apache-log4j-${PV}-src"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.logging.log4j.core"
+JAVA_CLASSPATH_EXTRA="jakarta-activation-api-1,jakarta-mail-api,javax-jms-api,osgi-core"
+JAVA_RESOURCE_DIRS="${PN}/src/main/resources"
+JAVA_SRC_DIR="${PN}/src/main/java"
+
+#JAVA_TEST_GENTOO_CLASSPATH="logback-classic,logback-core,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,commons-codec,commons-io-1,commons-logging,!!!groupId-not-found!!!,bsh,!!!groupId-not-found!!!,commons-lang-3.6,!!!groupId-not-found!!!,log4j-api-2,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,hamcrest,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!,mockito-4,!!!artifactId-not-found!!!,slf4j-ext,!!!groupId-not-found!!!,xz-java,!!!groupId-not-found!!!,!!!groupId-not-found!!!,!!!groupId-not-found!!!"
+#JAVA_TEST_SRC_DIR="${PN}/src/test/java"
+#JAVA_TEST_RESOURCE_DIRS=(
+# "${PN}/src/test/resources"
+#)
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # Process the @Plugin annotation used on Log4j 2 built-in plugins
+ # to generate a serialized plugin listing file
+ # https://logging.apache.org/log4j/2.x/manual/plugins.html
+ local processor="org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor"
+ local classes="target/classes"
+ local classpath="${JAVA_JAR_FILENAME}:$(\
+ java-pkg_getjars --build-only --with-dependencies \
+ "${JAVA_GENTOO_CLASSPATH},${JAVA_CLASSPATH_EXTRA}")"
+ # Just in case java-pkg-simple.eclass changes the path in the future
+ mkdir -p "${classes}" || die "Failed to create directory for classes"
+ local sources_list_file="${T}/sources.lst"
+ find "${JAVA_SRC_DIR}" -type f -name "*.java" > "${sources_list_file}" || die
+ ejavac -d "${classes}" -cp "${classpath}" \
+ -proc:only -processor "${processor}" \
+ @"${sources_list_file}"
+ # Update the JAR to include the serialized plugin listing file
+ local jar="$(java-config -j)"
+ "${jar}" -uf "${JAVA_JAR_FILENAME}" -C "${classes}" . ||
+ die "Failed to update JAR"
+}
diff --git a/dev-java/log4j-core/metadata.xml b/dev-java/log4j-core/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/log4j-core/metadata.xml
@@ -0,0 +1,7 @@
+<?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/log4j-over-slf4j/Manifest b/dev-java/log4j-over-slf4j/Manifest
new file mode 100644
index 000000000000..502a0b5b52a6
--- /dev/null
+++ b/dev-java/log4j-over-slf4j/Manifest
@@ -0,0 +1 @@
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/log4j-over-slf4j/log4j-over-slf4j-2.0.3.ebuild b/dev-java/log4j-over-slf4j/log4j-over-slf4j-2.0.3.ebuild
new file mode 100644
index 000000000000..d71e64f91321
--- /dev/null
+++ b/dev-java/log4j-over-slf4j/log4j-over-slf4j-2.0.3.ebuild
@@ -0,0 +1,60 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64" --ebuild log4j-over-slf4j-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:log4j-over-slf4j:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Log4j implemented over SLF4J"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+CP_DEPEND="~dev-java/slf4j-api-${PV}:0"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.slf4j:slf4j-jdk14:2.0.3 -> !!!artifactId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR=( src/main/java{,9} )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default
+ # org.slf4j:slf4j-jdk14:2.0.3 is not packaged
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testPop()/i @Ignore' \
+ -e '/testSmoke()/i @Ignore' \
+ -i src/test/java/org/apache/log4j/test/NDCTest.java || die
+}
diff --git a/dev-java/log4j-over-slf4j/metadata.xml b/dev-java/log4j-over-slf4j/metadata.xml
new file mode 100644
index 000000000000..14f9229b142a
--- /dev/null
+++ b/dev-java/log4j-over-slf4j/metadata.xml
@@ -0,0 +1,13 @@
+<?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>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
+ <remote-id type="github">qos-ch/slf4j</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/log4j/Manifest b/dev-java/log4j/Manifest
deleted file mode 100644
index a0ee5600d166..000000000000
--- a/dev-java/log4j/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST log4j-1.2.17.tar.gz 2864448 BLAKE2B 233763dbe53f92b5408d3e278b291dff8a7d74657f367ec8b7c7ae1e685ddc0170783c8a5e4b48ec2590b6dda13f45e91bd66066f2c6b515e5d692caca31660b SHA512 7df8dca721f960b9fd22dd5f642dbe7d89167f167aa11604c5f9fe54d649a26dd05af88d7188b47abfb91d501535a4b3665dd84d7e0058ef77159713a10b5af8
diff --git a/dev-java/log4j/log4j-1.2.17-r3.ebuild b/dev-java/log4j/log4j-1.2.17-r3.ebuild
deleted file mode 100644
index ee8247958b42..000000000000
--- a/dev-java/log4j/log4j-1.2.17-r3.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="log4j:log4j:1.2.17"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A low-overhead robust logging package for Java"
-SRC_URI="mirror://apache/logging/${PN}/${PV}/${P}.tar.gz"
-HOMEPAGE="http://logging.apache.org/log4j/"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux"
-IUSE="javamail jms"
-
-CDEPEND="
- javamail? ( dev-java/oracle-javamail:0 )
- jms? ( java-virtuals/jms:0 )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-MY_P="apache-${P}"
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-JAVA_ANT_IGNORE_SYSTEM_CLASSES="true"
-EANT_BUILD_TARGET="log4j.jar"
-EANT_EXTRA_ARGS="-Djaxp-present=true -Djmx-present=true"
-EANT_DOC_TARGET=""
-
-src_compile() {
- if use javamail; then
- EANT_GENTOO_CLASSPATH+="oracle-javamail"
- EANT_EXTRA_ARGS+=" -Djavamail-present=true"
- fi
-
- if use jms; then
- EANT_EXTRA_ARGS+=" -Djms-present=true -Djms.jar=$(java-pkg_getjars jms)"
- fi
-
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-pkg_newjar dist/lib/${PN}-1.2.17.jar ${PN}.jar
-
- if use doc; then
- java-pkg_dohtml -r site/*
- rm -fr "${ED}/usr/share/doc/${PF}/html/apidocs"
- java-pkg_dojavadoc --symlink apidocs site/apidocs
- fi
-
- if use source; then
- java-pkg_dosrc src/main/java/*
- fi
-}
diff --git a/dev-java/log4j/metadata.xml b/dev-java/log4j/metadata.xml
deleted file mode 100644
index 84c33199b892..000000000000
--- a/dev-java/log4j/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <use>
- <flag name="javamail">Build the SMTPAppender</flag>
- <flag name="jms">Build the JMSAppender</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-java/lucene/Manifest b/dev-java/lucene/Manifest
index b91637637531..32bc29febef6 100644
--- a/dev-java/lucene/Manifest
+++ b/dev-java/lucene/Manifest
@@ -1,2 +1 @@
DIST lucene-2.4.1.tar.gz 5057003 BLAKE2B 3e2a29cfa94b367f1e62f60a2f7b7e195c788048564fb061ade4b1babcb2fd71e36b282049d3816c3faaaa3dacc07f4a7dbdb0504a659ea3ab8e06e247debcba SHA512 cf227eea4aeee904ccf5316ee7f2399864bf28b9c01e044ef27232dd483c3a5f0ecc8836633f44acfa41ffee6bf1c530e756ef45fa77ac1d15e1f83129b7aa5e
-DIST lucene-3.6.2-src.tgz 32139784 BLAKE2B 48fe88efeae8396e084f827aa66530480f40aee3a2e59c8524420059f004a73be4c1e50c98345ad0ad4808ff8a0a996f9406523bf5c124616657ec91f9797f70 SHA512 e9a08a1b5303c44e4feecc0bb6e7013e4a9420517ae4e98999bd318ec25b5b2ff3b6de8b51db8f68afc0fdc3149829297023a95b103d4f99e7db68deee4c3965
diff --git a/dev-java/lucene/lucene-2.4.1-r2.ebuild b/dev-java/lucene/lucene-2.4.1-r2.ebuild
deleted file mode 100644
index b3f32a4fea35..000000000000
--- a/dev-java/lucene/lucene-2.4.1-r2.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test"
-JAVA_PKG_BSFIX_ALL="no"
-JAVA_PKG_BSFIX_NAME="build.xml common-build.xml"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="High-performance, full-featured text search engine written entirely in Java"
-HOMEPAGE="https://lucene.apache.org"
-SRC_URI="https://archive.apache.org/dist/${PN}/java/${P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2.4"
-KEYWORDS="amd64 x86"
-
-CDEPEND="
- dev-java/javacc:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- test? (
- dev-java/junit:0
- dev-java/ant-core:0
- )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-src_prepare() {
- default
- java-pkg_clean
- sed -i -e '/-Xmax/ d' common-build.xml || die
-
- # Portage marks shese files as bogus for some reason.
- find . -type f -name instruction_arrow.png -exec rm -v {} \; || die
-}
-
-src_compile() {
- # regenerate javacc files just because we can
- # put javacc.jar on ant's classpath here even when <javacc> task
- # doesn't use it - it's to fool the <available> test, first time
- # it's useful not to have ignoresystemclasses=true...
- ANT_TASKS="ant-core javacc" \
- eant \
- -Djavacc.home="${EPREFIX}"/usr/share/javacc/lib \
- javacc
- ANT_TASKS="none" \
- eant \
- -Dversion=${PV} \
- jar-core \
- jar-demo \
- $(use_doc javadocs-core javadocs-demo)
-}
-
-src_test() {
- java-ant_rewrite-classpath common-build.xml
- EANT_GENTOO_CLASSPATH="junit ant-core" \
- ANT_TASKS="ant-junit" \
- eant \
- test-core
-}
-
-src_install() {
- einstalldocs
- java-pkg_newjar "build/${PN}-core-${PV}.jar" "${PN}-core.jar"
- java-pkg_newjar "build/${PN}-demos-${PV}.jar" "${PN}-demos.jar"
-
- if use doc; then
- dodoc -r docs
- java-pkg_dohtml -r build/docs/api
- fi
- use source && java-pkg_dosrc src/java/org
-}
diff --git a/dev-java/lucene/lucene-2.4.1-r3.ebuild b/dev-java/lucene/lucene-2.4.1-r3.ebuild
new file mode 100644
index 000000000000..01cdd2a220ea
--- /dev/null
+++ b/dev-java/lucene/lucene-2.4.1-r3.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+JAVA_PKG_BSFIX_ALL="no"
+JAVA_PKG_BSFIX_NAME="build.xml common-build.xml"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="High-performance, full-featured text search engine written entirely in Java"
+HOMEPAGE="https://lucene.apache.org"
+SRC_URI="https://archive.apache.org/dist/${PN}/java/${P}-src.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2.4"
+KEYWORDS="amd64 x86"
+
+CDEPEND="
+ dev-java/javacc:0"
+
+# Restricting to jdk:1.8 since it fails to build with openjdk-17
+# BUILD FAILED
+# /var/tmp/portage/dev-java/lucene-2.4.1-r3/work/lucene-2.4.1/build.xml:52: rmic does not exist under Java 15 and higher,
+# use rmic of an older JDK and explicitly set the executable attribute
+DEPEND="
+ ${CDEPEND}
+ virtual/jdk:1.8
+ test? (
+ dev-java/junit:0
+ dev-java/ant-core:0
+ )"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+src_prepare() {
+ default
+ java-pkg_clean
+ sed -i -e '/-Xmax/ d' common-build.xml || die
+
+ # Portage marks shese files as bogus for some reason.
+ find . -type f -name instruction_arrow.png -exec rm -v {} \; || die
+}
+
+src_compile() {
+ # regenerate javacc files just because we can
+ # put javacc.jar on ant's classpath here even when <javacc> task
+ # doesn't use it - it's to fool the <available> test, first time
+ # it's useful not to have ignoresystemclasses=true...
+ ANT_TASKS="ant-core javacc" \
+ eant \
+ -Djavacc.home="${EPREFIX}"/usr/share/javacc/lib \
+ javacc
+ ANT_TASKS="none" \
+ eant \
+ -Dversion=${PV} \
+ jar-core \
+ jar-demo \
+ $(use_doc javadocs-core javadocs-demo)
+}
+
+src_test() {
+ java-ant_rewrite-classpath common-build.xml
+ EANT_GENTOO_CLASSPATH="junit ant-core" \
+ ANT_TASKS="ant-junit" \
+ eant \
+ test-core
+}
+
+src_install() {
+ einstalldocs
+ java-pkg_newjar "build/${PN}-core-${PV}.jar" "${PN}-core.jar"
+ java-pkg_newjar "build/${PN}-demos-${PV}.jar" "${PN}-demos.jar"
+
+ if use doc; then
+ dodoc -r docs
+ java-pkg_dohtml -r build/docs/api
+ fi
+ use source && java-pkg_dosrc src/java/org
+}
diff --git a/dev-java/lucene/lucene-3.6.2-r2.ebuild b/dev-java/lucene/lucene-3.6.2-r2.ebuild
deleted file mode 100644
index 091821750c1b..000000000000
--- a/dev-java/lucene/lucene-3.6.2-r2.ebuild
+++ /dev/null
@@ -1,189 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source test contrib"
-JAVA_PKG_BSFIX_ALL="no"
-JAVA_PKG_BSFIX_NAME="build.xml common-build.xml contrib-build.xml"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="High-performance, full-featured text search engine written entirely in Java"
-HOMEPAGE="https://lucene.apache.org"
-SRC_URI="mirror://apache/lucene/java/${PV}/${P}-src.tgz"
-
-LICENSE="Apache-2.0"
-SLOT="3.6"
-KEYWORDS="amd64 x86"
-
-CDEPEND="
- dev-java/ant-ivy:2
- dev-java/ant-junit:0
- dev-java/ant-core:0
- dev-java/hamcrest-core:0
- contrib? (
- dev-java/jakarta-regexp:1.4
- dev-java/commons-compress:0
- dev-java/commons-collections:0
- dev-java/commons-digester:0
- dev-java/commons-logging:0
- dev-java/commons-beanutils:1.7
- )"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- test? (
- dev-java/junit:4
- )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DOCS=(
- CHANGES.txt README.txt
- NOTICE.txt CHANGES.txt
- JRE_VERSION_MIGRATION.txt
-)
-
-# All tests fail with the following error:
-# junit.framework.AssertionFailedError: ensure your setUp() calls super.setUp()!!!
-RESTRICT="test"
-
-src_prepare() {
- default
- java-pkg_clean
- sed -i \
- -e '/-Xmax/ d' \
- common-build.xml || die
-
- # FIXME: contrib builds do not work if junit not included
- #java-pkg_jar-from --build-only --into lib \
- # junit-4 junit.jar junit-4.7.jar
- java-pkg_jar-from --build-only --into lib \
- ant-core ant.jar ant-1.7.1.jar
- java-pkg_jar-from --build-only --into lib \
- ant-junit ant-junit.jar ant-junit-1.7.1.jar
-
- if use contrib; then
- cd contrib/ || die
- java-pkg_jar-from --build-only --into queries/lib \
- jakarta-regexp:1.4 jakarta-regexp.jar jakarta-regexpt-1.4.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-compress commons-compress.jar commons-compress-1.1.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-collections commons-collections.jar commons-collections-3.1.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-digester commons-digester.jar commons-digester-1.7.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-logging commons-logging.jar commons-logging-1.0.4.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-beanutils:1.7 commons-beanutils.jar commons-beanutils-1.7.0.jar
- fi
-}
-
-src_prepare() {
- default
- java-pkg_clean
- sed -i \
- -e '/-Xmax/ d' \
- -e '/property="ivy.available"/s,resource="${ivy.resource}",file="." type="dir",g' \
- -e '/<ivy:retrieve/d' \
- common-build.xml || die
- mkdir -p {.,queries,benchmark,analyzers/phonetic}/lib || die
- java-pkg_jar-from --build-only --into lib \
- ant-core ant.jar ant-1.7.1.jar
- java-pkg_jar-from --build-only --into lib \
- ant-junit ant-junit.jar ant-junit-1.7.1.jar
- java-pkg_jar-from --build-only --into lib \
- ant-ivy:2
- java-pkg_jar-from --build-only --into lib \
- junit-4 junit.jar junit-4.10.jar
- java-pkg_jar-from --build-only --into lib \
- hamcrest-core
-
- # Always needed anyway
- cd "${S}"/test-framework/ || die
- java-pkg_jar-from --build-only --into lib \
- ant-core ant.jar ant-1.7.1.jar
- java-pkg_jar-from --build-only --into lib \
- ant-junit ant-junit.jar ant-junit-1.7.1.jar
- java-pkg_jar-from --build-only --into lib \
- junit-4 junit.jar junit-4.10.jar
- java-pkg_jar-from --build-only --into lib \
- hamcrest-core
-
- if use contrib; then
- cd "${S}"/contrib/ || die
- # queries
- java-pkg_jar-from --build-only --into queries/lib \
- jakarta-regexp:1.4 jakarta-regexp.jar jakarta-regexp-1.4.jar
- # benchmark
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-compress commons-compress.jar commons-compress-1.1.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-collections commons-collections.jar commons-collections-3.1.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-digester commons-digester.jar commons-digester-1.7.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-logging commons-logging.jar commons-logging-1.0.4.jar
- java-pkg_jar-from --build-only --into benchmark/lib \
- commons-beanutils:1.7 commons-beanutils.jar commons-beanutils-1.7.0.jar
- # analyzers/phonetic
- java-pkg_jar-from --build-only --into analyzers/phonetic/lib \
- commons-codec commons-codec.jar commons-codec-1.6.jar
- fi
-}
-
-src_compile() {
- # FIXME: docs do not build if behind a proxy, -autoproxy does not work
- java-ant_xml-rewrite -f common-build.xml \
- -c -e javadoc \
- -a failonerror \
- -v "false"
-
- ANT_TASKS="none" \
- eant -Dversion=${PV} \
- -Dfailonjavadocwarning=false \
- jar-core \
- $(use_doc javadocs-core)
-
- if use contrib; then
- ANT_TASKS="none" \
- eant -Dversion=${PV} \
- -Dfailonjavadocwarning=false \
- build-contrib \
- $(use_doc javadocs-all)
- fi
-}
-
-src_test() {
- # FIXME: test does not get run, even when selected
- java-ant_rewrite-classpath common-build.xml
- EANT_GENTOO_CLASSPATH="junit-4 ant-core ant-junit" \
- ANT_TASKS="ant-junit" \
- eant test-core
-}
-
-src_install() {
- einstalldocs
- java-pkg_newjar build/core/${PN}-core-${PV}.jar ${PN}-core.jar
-
- if use contrib; then
- local i j
- for i in $(find build/contrib -name \*-${PV}.jar); do
- j=${i##*/}
- java-pkg_newjar $i ${j%%-${PV}.jar}.jar
- done
- fi
- if use doc; then
- dodoc -r docs
- java-pkg_dohtml -r build/docs/api
- fi
- if use source; then
- java-pkg_dosrc core/src/java/org
- use contrib && java-pkg_dosrc contrib
- fi
-}
diff --git a/dev-java/lucene/metadata.xml b/dev-java/lucene/metadata.xml
index 524a5553a331..9a0df749aac0 100644
--- a/dev-java/lucene/metadata.xml
+++ b/dev-java/lucene/metadata.xml
@@ -1,11 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
-<use>
- <flag name="contrib">Include extra functionality from contrib/</flag>
-</use>
</pkgmetadata>
diff --git a/dev-java/lz4-java/Manifest b/dev-java/lz4-java/Manifest
new file mode 100644
index 000000000000..47194c6142a1
--- /dev/null
+++ b/dev-java/lz4-java/Manifest
@@ -0,0 +1 @@
+DIST lz4-java-1.8.0.tar.gz 1069398 BLAKE2B 02ee363fc42eeeade01f04649416dd874513f4517264c6e1b6474d64e8b81e2ee9ff1f55e51b508608929e8d78cb30e98d929cc4a118c03f86b0e69bae237e8a SHA512 ae78748d984d2ede18018d5e9ae6aee0d5fe6ac8b56d717f863968cfad6e9f85b62305692345ba16002bee68278e87a0364aa98aeb92e2af6dc169e5d5b612d4
diff --git a/dev-java/lz4-java/files/lz4-java-1.8.0-fix-load.patch b/dev-java/lz4-java/files/lz4-java-1.8.0-fix-load.patch
new file mode 100644
index 000000000000..e6c15cc1dbc9
--- /dev/null
+++ b/dev-java/lz4-java/files/lz4-java-1.8.0-fix-load.patch
@@ -0,0 +1,32 @@
+--- a/src/java/net/jpountz/util/Native.java
++++ b/src/java/net/jpountz/util/Native.java
+@@ -100,17 +100,18 @@ public enum Native {
+ return;
+ }
+
+- cleanupOldTempLibs();
++// cleanupOldTempLibs();
+
+ // Try to load lz4-java (liblz4-java.so on Linux) from the java.library.path.
++ final File library = new File(System.mapLibraryName("lz4-java"));
+ try {
+- System.loadLibrary("lz4-java");
++ System.load(library.getAbsolutePath());
+ loaded = true;
+ return;
+ } catch (UnsatisfiedLinkError ex) {
+ // Doesn't exist, so proceed to loading bundled library.
+ }
+-
++/*
+ String resourceName = resourceName();
+ InputStream is = Native.class.getResourceAsStream(resourceName);
+ if (is == null) {
+@@ -158,6 +159,6 @@ public enum Native {
+ tempLib.deleteOnExit();
+ tempLibLock.deleteOnExit();
+ }
+- }
++ }*/
+ }
+ }
diff --git a/dev-java/lz4-java/lz4-java-1.8.0-r4.ebuild b/dev-java/lz4-java/lz4-java-1.8.0-r4.ebuild
new file mode 100644
index 000000000000..9e2b264421f8
--- /dev/null
+++ b/dev-java/lz4-java/lz4-java-1.8.0-r4.ebuild
@@ -0,0 +1,93 @@
+# 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.lz4:lz4-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs
+
+DESCRIPTION="LZ4 compression for Java"
+HOMEPAGE="https://github.com/lz4/lz4-java"
+SRC_URI="https://github.com/lz4/lz4-java/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ app-arch/lz4:=
+ dev-java/mvel:2.5
+ dev-libs/xxhash:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/randomized-runner:0 )"
+RDEPEND="
+ app-arch/lz4:=
+ >=virtual/jre-1.8:*"
+
+PATCHES=( "${FILESDIR}/${P}-fix-load.patch" )
+
+DOCS=( CHANGES.md README.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.lz4.java"
+JAVA_SRC_DIR=( src/java{,-unsafe} )
+JAVA_TEST_GENTOO_CLASSPATH="junit-4 randomized-runner"
+JAVA_TEST_RESOURCE_DIRS="src/test-resources"
+JAVA_TEST_SRC_DIR="src/test"
+
+src_prepare() {
+ default
+}
+
+src_compile() {
+ # remove precompiled native libraries
+ rm -r src/resources || die
+
+ # cannot include template 'decompressor.template': file not found.]
+ cp src/build/source_templates/* . || die
+
+ einfo "Code generation"
+ "$(java-config -J)" \
+ -Dout.dir="src/java" \
+ -cp "$(java-pkg_getjars --build-only mvel-2.5)" \
+ org.mvel2.sh.Main \
+ src/build/gen_sources.mvel \
+ || die
+
+ java-pkg-simple_src_compile
+
+ einfo "Generate headers" # build.xml lines 194-204
+ ejavac -h build/jni-headers -classpath "target/classes" \
+ src/java/net/jpountz/xxhash/XXHashJNI.java \
+ src/java/net/jpountz/lz4/LZ4JNI.java || die
+
+ einfo "Generate native library"
+ # https://devmanual.gentoo.org/ebuild-writing/functions/src_compile/no-build-system
+ mkdir -p build/objects/src/jni
+ mkdir -p build/jni/net/jpountz/util/linux/amd64
+ "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} \
+ $(java-pkg_get-jni-cflags) \
+ -Ibuild/jni-headers \
+ -c -o build/objects/src/jni/net_jpountz_lz4_LZ4JNI.o \
+ src/jni/net_jpountz_lz4_LZ4JNI.c
+ "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} \
+ $(java-pkg_get-jni-cflags) \
+ -Ibuild/jni-headers \
+ -c -o build/objects/src/jni/net_jpountz_xxhash_XXHashJNI.o \
+ src/jni/net_jpountz_xxhash_XXHashJNI.c
+
+ "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} \
+ -shared \
+ -Wl,-soname,liblz4-java.so \
+ -o liblz4-java.so \
+ build/objects/src/jni/net_jpountz_lz4_LZ4JNI.o \
+ build/objects/src/jni/net_jpountz_xxhash_XXHashJNI.o -llz4
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_doso liblz4-java.so
+}
diff --git a/dev-java/lz4-java/metadata.xml b/dev-java/lz4-java/metadata.xml
new file mode 100644
index 000000000000..0b61987a4768
--- /dev/null
+++ b/dev-java/lz4-java/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">lz4/lz4-java</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/lzma/Manifest b/dev-java/lzma/Manifest
index 0f4ad791797a..bedc97973b95 100644
--- a/dev-java/lzma/Manifest
+++ b/dev-java/lzma/Manifest
@@ -1 +1 @@
-DIST lzma918.tar.bz2 533322 BLAKE2B ed79541be70e127ead9f7683ed098fe6c69cca90574377a4abf0d130434624b05e67448e65e5f88602640b1784a7d613527fafd237d0a94c01ddd91a8f698dd4 SHA512 fa32920d5c45e80c6d029fa1244154e7ae2a2db676e9b115359e955bec829f4cffa6cd8297cae388aca540fc2974dfced4ce284fb351992d7b4a337292da3803
+DIST lzma-22.01.7z 1261282 BLAKE2B 31bfa505626c6d22f84562d927cb8b7f0c6f9d7cfe9e38f49b33866957ad81f7bd1e6fb7b02a3e001edf9d64fc499b396e73738585e7d3a29fcd7d41dc65d1d7 SHA512 83e320242a51cb37caefd386a5768e64c6872101fd3c3cf4d3318bf834d27e84d8a92e3252987520a578b19ce3e2cddcbf9e10b909f5263c5cdc0710c2f26797
diff --git a/dev-java/lzma/lzma-22.01.ebuild b/dev-java/lzma/lzma-22.01.ebuild
new file mode 100644
index 000000000000..69ea039791a5
--- /dev/null
+++ b/dev-java/lzma/lzma-22.01.ebuild
@@ -0,0 +1,23 @@
+# 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-pkg-simple unpacker
+
+DESCRIPTION="Java code for LZMA compression and decompression"
+HOMEPAGE="https://7-zip.org/"
+SRC_URI="https://7-zip.org/a/lzma${PV/./}.7z -> ${P}.7z"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+BDEPEND="$(unpacker_src_uri_depends)"
+
+S="${WORKDIR}/Java"
+
+JAVA_SRC_DIR="SevenZip"
diff --git a/dev-java/lzma/lzma-9.18.ebuild b/dev-java/lzma/lzma-9.18.ebuild
deleted file mode 100644
index c08f6ff48dc2..000000000000
--- a/dev-java/lzma/lzma-9.18.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java code for LZMA compression and decompression"
-HOMEPAGE="https://www.7-zip.org/"
-SRC_URI="mirror://sourceforge/sevenzip/${PN}${PV/./}.tar.bz2"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/Java"
-
-JAVA_SRC_DIR="SevenZip"
diff --git a/dev-java/lzma/metadata.xml b/dev-java/lzma/metadata.xml
index 8a8bf5973243..427e91cf6bea 100644
--- a/dev-java/lzma/metadata.xml
+++ b/dev-java/lzma/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tommy@gentoo.org</email>
- <name>Thomas Sachau (Tommy[D])</name>
- </maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
diff --git a/dev-java/lzmajio/lzmajio-0.95-r1.ebuild b/dev-java/lzmajio/lzmajio-0.95-r1.ebuild
deleted file mode 100644
index 614275aea27e..000000000000
--- a/dev-java/lzmajio/lzmajio-0.95-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="LzmaInputStream/LzmaOutputStream interacting with underlying LZMA en-/decoders"
-HOMEPAGE="https://contrapunctus.net/league/haques/lzmajio/
- https://github.com/league/lzmajio"
-SRC_URI="http://comsci.liu.edu/~league/dist/${PN}/${P}.tar.gz"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-CDEPEND="dev-java/lzma:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}"
-JAVA_GENTOO_CLASSPATH="lzma"
-JAVA_SRC_DIR="net"
diff --git a/dev-java/lzmajio/lzmajio-0.95-r2.ebuild b/dev-java/lzmajio/lzmajio-0.95-r2.ebuild
deleted file mode 100644
index d0cfe223c5d6..000000000000
--- a/dev-java/lzmajio/lzmajio-0.95-r2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="LzmaInputStream/LzmaOutputStream interacting with underlying LZMA en-/decoders"
-HOMEPAGE="https://contrapunctus.net/league/haques/lzmajio/
- https://github.com/league/lzmajio"
-SRC_URI="https://github.com/league/${P}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/lzma:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="lzma"
-JAVA_SRC_DIR="net"
diff --git a/dev-java/lzmajio/lzmajio-0.95-r3.ebuild b/dev-java/lzmajio/lzmajio-0.95-r3.ebuild
new file mode 100644
index 000000000000..3eee961802ac
--- /dev/null
+++ b/dev-java/lzmajio/lzmajio-0.95-r3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2022 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
+
+DESCRIPTION="LzmaInputStream/LzmaOutputStream interacting with underlying LZMA en-/decoders"
+HOMEPAGE="https://contrapunctus.net/league/haques/lzmajio/
+ https://github.com/league/lzmajio"
+SRC_URI="https://github.com/league/${P}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+
+CDEPEND="dev-java/lzma:0"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${P}"
+
+JAVA_GENTOO_CLASSPATH="lzma"
+JAVA_SRC_DIR="net"
diff --git a/dev-java/lzmajio/metadata.xml b/dev-java/lzmajio/metadata.xml
index 380bcf5d302a..5e61ef6e5b3f 100644
--- a/dev-java/lzmajio/metadata.xml
+++ b/dev-java/lzmajio/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tommy@gentoo.org</email>
- <name>Thomas Sachau (Tommy[D])</name>
- </maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
- </pkgmetadata>
+ <upstream>
+ <remote-id type="github">league/lzmajio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/maven-bin/Manifest b/dev-java/maven-bin/Manifest
index 61c3f9c603f2..7158eea18442 100644
--- a/dev-java/maven-bin/Manifest
+++ b/dev-java/maven-bin/Manifest
@@ -1 +1,2 @@
-DIST apache-maven-3.8.1-bin.tar.gz 9536838 BLAKE2B a6b464d44d577e126ea042ea37aa07a6ea18c56252627b3a266c6c25cc3520421c01d372930948bd2d784ace330f888fb6a8a5a1012946015c8d16d465bb5953 SHA512 0ec48eb515d93f8515d4abe465570dfded6fa13a3ceb9aab8031428442d9912ec20f066b2afbf56964ffe1ceb56f80321b50db73cf77a0e2445ad0211fb8e38d
+DIST apache-maven-3.8.8-bin.tar.gz 8296049 BLAKE2B af6353193365ed33e8f2f0a7e4d31933132751f142ebbdb68aab7a74ad2dda6593bf34cef9d8d56d6c93ff93293b75517a10a5c1c048733b8c911f4ac150bdf6 SHA512 332088670d14fa9ff346e6858ca0acca304666596fec86eea89253bd496d3c90deae2be5091be199f48e09d46cec817c6419d5161fb4ee37871503f472765d00
+DIST apache-maven-3.9.6-bin.tar.gz 9410508 BLAKE2B 2a99f002912e6c0fcf9f78f0553553898cf39c17bd7c8b58269c8a7d061c425c62a2f557a686fd2b1f114ef1f47aab6e9b318555235bb436e8c7e5c8b1a0dd9d SHA512 706f01b20dec0305a822ab614d51f32b07ee11d0218175e55450242e49d2156386483b506b3a4e8a03ac8611bae96395fd5eec15f50d3013d5deed6d1ee18224
diff --git a/dev-java/maven-bin/maven-bin-3.8.1.ebuild b/dev-java/maven-bin/maven-bin-3.8.1.ebuild
deleted file mode 100644
index e06ebe56a590..000000000000
--- a/dev-java/maven-bin/maven-bin-3.8.1.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-MY_PN=apache-${PN%%-bin}
-MY_PV=${PV/_alpha/-alpha-}
-MY_P="${MY_PN}-${MY_PV}"
-MY_MV="${PV%%.*}"
-
-DESCRIPTION="Project Management and Comprehension Tool for Java"
-SRC_URI="mirror://apache/maven/maven-${MY_MV}/${PV}/binaries/${MY_P}-bin.tar.gz"
-HOMEPAGE="https://maven.apache.org/"
-
-LICENSE="Apache-2.0"
-SLOT="3.8"
-KEYWORDS="amd64 x86"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- app-eselect/eselect-java"
-
-RDEPEND="
- >=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}"
-
-MAVEN="${PN}-${SLOT}"
-MAVEN_SHARE="/usr/share/${MAVEN}"
-
-QA_FLAGS_IGNORED=(
- "${MAVEN_SHARE}/lib/jansi-native/linux32/libjansi.so"
- "${MAVEN_SHARE}/lib/jansi-native/linux64/libjansi.so"
-)
-
-# TODO:
-# We should use jars from packages, instead of what is bundled.
-src_install() {
- dodir "${MAVEN_SHARE}"
-
- cp -Rp bin boot conf lib "${ED}/${MAVEN_SHARE}" || die "failed to copy"
-
- java-pkg_regjar "${ED}/${MAVEN_SHARE}"/boot/*.jar
- java-pkg_regjar "${ED}/${MAVEN_SHARE}"/lib/*.jar
-
- dodoc NOTICE README.txt
-
- dodir /usr/bin
- dosym "${MAVEN_SHARE}/bin/mvn" /usr/bin/mvn-${SLOT}
-
- # See bug #342901.
- echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
- doenvd "${T}/25${MAVEN}"
-
- # remove broken useless files (bug #734906 and #704618)
- rm -r "${ED}"/${MAVEN_SHARE}/lib/jansi-native/freebsd* || die "Failed to remove FreeBSD files"
-}
-
-pkg_postinst() {
- eselect maven update mvn-${SLOT}
-}
-
-pkg_postrm() {
- eselect maven update
-}
diff --git a/dev-java/maven-bin/maven-bin-3.8.8-r1.ebuild b/dev-java/maven-bin/maven-bin-3.8.8-r1.ebuild
new file mode 100644
index 000000000000..731294052d5e
--- /dev/null
+++ b/dev-java/maven-bin/maven-bin-3.8.8-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+MY_PN=apache-${PN%%-bin}
+MY_PV=${PV/_alpha/-alpha-}
+MY_P="${MY_PN}-${MY_PV}"
+MY_MV="${PV%%.*}"
+
+DESCRIPTION="Project Management and Comprehension Tool for Java"
+SRC_URI="mirror://apache/maven/maven-${MY_MV}/${PV}/binaries/${MY_P}-bin.tar.gz"
+HOMEPAGE="https://maven.apache.org/"
+
+LICENSE="Apache-2.0"
+SLOT="3.8"
+KEYWORDS="amd64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ app-eselect/eselect-java"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${MY_P}"
+
+MAVEN="${PN}-${SLOT}"
+MAVEN_SHARE="/usr/share/${MAVEN}"
+
+QA_FLAGS_IGNORED=(
+ "${MAVEN_SHARE}/lib/jansi-native/linux32/libjansi.so"
+ "${MAVEN_SHARE}/lib/jansi-native/linux64/libjansi.so"
+)
+
+# TODO:
+# We should use jars from packages, instead of what is bundled.
+src_install() {
+ dodir "${MAVEN_SHARE}"
+
+ cp -Rp bin boot conf lib "${ED}/${MAVEN_SHARE}" || die "failed to copy"
+
+ java-pkg_regjar "${ED}/${MAVEN_SHARE}"/boot/*.jar
+ java-pkg_regjar "${ED}/${MAVEN_SHARE}"/lib/*.jar
+
+ dodoc NOTICE README.txt
+
+ dodir /usr/bin
+ dosym "${MAVEN_SHARE}/bin/mvn" "${EPREFIX}/usr/bin/mvn-${SLOT}"
+
+ # See bug #342901.
+ echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
+ doenvd "${T}/25${MAVEN}"
+}
+
+pkg_postinst() {
+ eselect maven update mvn-${SLOT}
+}
+
+pkg_postrm() {
+ eselect maven update
+}
diff --git a/dev-java/maven-bin/maven-bin-3.9.6.ebuild b/dev-java/maven-bin/maven-bin-3.9.6.ebuild
new file mode 100644
index 000000000000..99a723fc7721
--- /dev/null
+++ b/dev-java/maven-bin/maven-bin-3.9.6.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+MY_PN=apache-${PN%%-bin}
+MY_PV=${PV/_alpha/-alpha-}
+MY_P="${MY_PN}-${MY_PV}"
+MY_MV="${PV%%.*}"
+
+DESCRIPTION="Project Management and Comprehension Tool for Java"
+SRC_URI="mirror://apache/maven/maven-${MY_MV}/${PV}/binaries/${MY_P}-bin.tar.gz"
+HOMEPAGE="https://maven.apache.org/"
+
+LICENSE="Apache-2.0"
+SLOT="3.9"
+KEYWORDS="amd64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ app-eselect/eselect-java"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${MY_P}"
+
+MAVEN="${PN}-${SLOT}"
+MAVEN_SHARE="/usr/share/${MAVEN}"
+
+QA_FLAGS_IGNORED=(
+ "${MAVEN_SHARE}/lib/jansi-native/linux32/libjansi.so"
+ "${MAVEN_SHARE}/lib/jansi-native/linux64/libjansi.so"
+)
+
+# TODO:
+# We should use jars from packages, instead of what is bundled.
+src_install() {
+ dodir "${MAVEN_SHARE}"
+
+ cp -Rp bin boot conf lib "${ED}/${MAVEN_SHARE}" || die "failed to copy"
+
+ java-pkg_regjar "${ED}/${MAVEN_SHARE}"/boot/*.jar
+ java-pkg_regjar "${ED}/${MAVEN_SHARE}"/lib/*.jar
+
+ dodoc NOTICE README.txt
+
+ dodir /usr/bin
+ dosym "${MAVEN_SHARE}/bin/mvn" "${EPREFIX}/usr/bin/mvn-${SLOT}"
+
+ # See bug #342901.
+ echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
+ doenvd "${T}/25${MAVEN}"
+}
+
+pkg_postinst() {
+ eselect maven update mvn-${SLOT}
+}
+
+pkg_postrm() {
+ eselect maven update
+}
diff --git a/dev-java/maven-bin/metadata.xml b/dev-java/maven-bin/metadata.xml
index af5cc0fd07e0..8500c68aa7d6 100644
--- a/dev-java/maven-bin/metadata.xml
+++ b/dev-java/maven-bin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/maven-hawtjni-plugin/Manifest b/dev-java/maven-hawtjni-plugin/Manifest
deleted file mode 100644
index fb7445899281..000000000000
--- a/dev-java/maven-hawtjni-plugin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hawtjni-project-1.15.tar.gz 1606236 BLAKE2B 52357dbefde43ec82cf218ada90642d118ebaa6a6be173cc1f4f48377fda95b902f0a90dfb60822c02c144b9bf13d0800c94d67cc2f9c76e607bbbb80a80898e SHA512 1a93658bf8621c770cf97b546c6a5c0cf1821b06cb16dbc872ad0c830c599d3947ffe56b4cca16217a510d4e929ebcfc5eabdf4ad4364f5225b53d22c7d48abb
diff --git a/dev-java/maven-hawtjni-plugin/maven-hawtjni-plugin-1.15.ebuild b/dev-java/maven-hawtjni-plugin/maven-hawtjni-plugin-1.15.ebuild
deleted file mode 100644
index 4a5d1926aec1..000000000000
--- a/dev-java/maven-hawtjni-plugin/maven-hawtjni-plugin-1.15.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-pkg-2
-
-MY_P="hawtjni-project-${PV}"
-
-DESCRIPTION="Maven plugin for the HawtJNI code generator (resources only)"
-HOMEPAGE="https://github.com/fusesource/hawtjni"
-SRC_URI="https://github.com/fusesource/hawtjni/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-DEPEND=">=virtual/jdk-1.8"
-RDEPEND=">=virtual/jre-1.8"
-
-S="${WORKDIR}/hawtjni-${MY_P}/${PN}"
-
-src_compile() {
- touch ${PN}.jar || die # jar won't create on update.
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-}
diff --git a/dev-java/maven-hawtjni-plugin/metadata.xml b/dev-java/maven-hawtjni-plugin/metadata.xml
deleted file mode 100644
index 6208a5add14c..000000000000
--- a/dev-java/maven-hawtjni-plugin/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">fusesource/hawtjni</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/mchange-commons/Manifest b/dev-java/mchange-commons/Manifest
index 1821120392c4..92fd041bcf5b 100644
--- a/dev-java/mchange-commons/Manifest
+++ b/dev-java/mchange-commons/Manifest
@@ -1 +1 @@
-DIST mchange-commons-java-0.2.10.zip 773768 BLAKE2B abfcc70e109431afcc514e80a2dc3585a90de07f8cb800d0a9807b72ad10f0488ad0a8b7a641c3de7a91029e3d6b25590985df85e592d90d0af42728389d7e28 SHA512 8196cd4476c3dea55355ba11cc2f801602235de3a977d75eff3835dacaf612647adc0e595e0bf77a6313adcd718d143d08ecf6fd5aa0e6638a419cf1f107c3a9
+DIST mchange-commons-0.2.20.tar.gz 231274 BLAKE2B f13d82d8a9f67a81c0fe69bd2d59e4ee88100c21067e454ba81ba5b5f60761c2352e8f2303c12e1ab0d54027ae9e7daca76f4e8308417a8e933d5a4c8cc0ad73 SHA512 d9019ca73f77f3f629c54bb65416f92b0a2c2fe5b23ef32cc48b4a951d505d8ba89f0ab71654b8e5d5983e4237c5c4e15c529abbb91ef0abdbff989806c2e44f
diff --git a/dev-java/mchange-commons/mchange-commons-0.2.10.ebuild b/dev-java/mchange-commons/mchange-commons-0.2.10.ebuild
deleted file mode 100644
index da085079a41a..000000000000
--- a/dev-java/mchange-commons/mchange-commons-0.2.10.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}-java"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="a library of arguably useful Java utilities"
-HOMEPAGE="https://github.com/swaldman/mchange-commons-java"
-SRC_URI="https://github.com/swaldman/${MY_PN}/archive/${MY_P}.zip"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-IUSE="doc source"
-
-CDEPEND="
- dev-java/log4j:0
- dev-java/slf4j-api:0
- dev-java/typesafe-config:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/zip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-JAVA_SRC_DIR="src/main"
-
-JAVA_GENTOO_CLASSPATH="
- log4j
- slf4j-api
- typesafe-config"
diff --git a/dev-java/mchange-commons/mchange-commons-0.2.20.ebuild b/dev-java/mchange-commons/mchange-commons-0.2.20.ebuild
new file mode 100644
index 000000000000..9ad7bcf8724b
--- /dev/null
+++ b/dev-java/mchange-commons/mchange-commons-0.2.20.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom src/main/maven/pom.xml --download-uri https://github.com/swaldman/mchange-commons-java/archive/refs/tags/v0.2.20.tar.gz --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild mchange-commons-0.2.20.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.mchange:mchange-commons-java:0.2.20"
+# JAVA_TESTING_FRAMEWORKS=""
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="a library of arguably useful Java utilities."
+HOMEPAGE="https://github.com/swaldman/mchange-commons-java"
+SRC_URI="https://github.com/swaldman/${PN}-java/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="EPL-1.0 LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/log4j-api:2
+ dev-java/log4j-12-api:2
+ dev-java/log4j-core:2
+ dev-java/slf4j-api:0
+ dev-java/typesafe-config:0"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/mchange-commons-java-${PV}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+# # https://github.com/swaldman/mchange-commons-java/blob/master/build.sbt#L29-L31
+# JAVA_TEST_GENTOO_CLASSPATH=""
+# JAVA_TEST_SRC_DIR="src/test/java"
+# JAVA_TEST_RESOURCE_DIRS="src/test/resources"
diff --git a/dev-java/mchange-commons/metadata.xml b/dev-java/mchange-commons/metadata.xml
index 3a0ba11e13d0..517a69b7b990 100644
--- a/dev-java/mchange-commons/metadata.xml
+++ b/dev-java/mchange-commons/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/memoryfilesystem/Manifest b/dev-java/memoryfilesystem/Manifest
new file mode 100644
index 000000000000..eaac963a85aa
--- /dev/null
+++ b/dev-java/memoryfilesystem/Manifest
@@ -0,0 +1 @@
+DIST memoryfilesystem-2.3.0.tar.gz 127429 BLAKE2B 74ce26328db840d3fce6aebc089cbe6921c2ab7b7448c63aedcffc7358890785ec10f7823d7bd686e3a82bdfb84b9c7c796f49f377f577473a98b298cd04848d SHA512 1aac6b19fe0f6f6c950f13fff3507c61e3307d8d400cba664ae7907c0b4fab03166482ab6515bf355fe27498775ac8ee2850eca8c510e3e72a481b00fec63078
diff --git a/dev-java/memoryfilesystem/memoryfilesystem-2.3.0.ebuild b/dev-java/memoryfilesystem/memoryfilesystem-2.3.0.ebuild
new file mode 100644
index 000000000000..4164784cd150
--- /dev/null
+++ b/dev-java/memoryfilesystem/memoryfilesystem-2.3.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.github.marschall:memoryfilesystem:2.3.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An in memory implementation of a JSR-203 file system."
+HOMEPAGE="https://github.com/marschall/memoryfilesystem"
+SRC_URI="https://github.com/marschall/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/jakarta-annotations-api:0
+"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+src_prepare() {
+ default
+ # https://github.com/marschall/memoryfilesystem/blob/2.3.0/pom.xml#L236-L259
+ cat > src/main/java/module-info.java <<-EOF
+ module com.github.marschall.memoryfilesystem {
+ requires java.base;
+ requires static jakarta.annotation;
+ exports com.github.marschall.memoryfilesystem;
+ provides java.nio.file.spi.FileSystemProvider with
+ com.github.marschall.memoryfilesystem.MemoryFileSystemProvider;
+ }
+ EOF
+ sed \
+ -e 's:javax\(.annotation.PreDestroy\):jakarta\1:' \
+ -i src/main/java/com/github/marschall/memoryfilesystem/MemoryFileSystem.java || die
+}
diff --git a/dev-java/memoryfilesystem/metadata.xml b/dev-java/memoryfilesystem/metadata.xml
new file mode 100644
index 000000000000..f67c22072a32
--- /dev/null
+++ b/dev-java/memoryfilesystem/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">marschall/memoryfilesystem</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/mersennetwister/mersennetwister-0_pre23765-r1.ebuild b/dev-java/mersennetwister/mersennetwister-0_pre23765-r1.ebuild
deleted file mode 100644
index d6c0247fd153..000000000000
--- a/dev-java/mersennetwister/mersennetwister-0_pre23765-r1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Modified MersenneTwister java port for Freenet"
-HOMEPAGE="http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND="
- source? ( app-arch/zip )
- >=virtual/jdk-1.6"
diff --git a/dev-java/mersennetwister/mersennetwister-0_pre23765-r2.ebuild b/dev-java/mersennetwister/mersennetwister-0_pre23765-r2.ebuild
new file mode 100644
index 000000000000..c633ea89d5c8
--- /dev/null
+++ b/dev-java/mersennetwister/mersennetwister-0_pre23765-r2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 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
+
+DESCRIPTION="Modified MersenneTwister java port for Freenet"
+HOMEPAGE="http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 x86"
+IUSE=""
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND="
+ source? ( app-arch/zip )
+ >=virtual/jdk-1.8:*"
diff --git a/dev-java/mersennetwister/metadata.xml b/dev-java/mersennetwister/metadata.xml
index bc74090b9d62..4221e170cbc0 100644
--- a/dev-java/mersennetwister/metadata.xml
+++ b/dev-java/mersennetwister/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tommy@gentoo.org</email>
- <name>Thomas Sachau (Tommy[D])</name>
- </maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
diff --git a/dev-java/metadata-extractor/Manifest b/dev-java/metadata-extractor/Manifest
deleted file mode 100644
index 10923c5b14d9..000000000000
--- a/dev-java/metadata-extractor/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metadata-extractor-2.8.1.tar.gz 3132397 BLAKE2B 919a0bdb04304255efbe3cc39def8c8d6440334853e840acaf5c2c51f4eec53860f0abb5d2c99d26c8865c846270f5a331372cebce7cdf1fea9831e3701afe41 SHA512 4e9fe88be4112fbf9ce481e7fd3b3a7c9544d1d5b1ebd646d2c6e2a2a1fe2d53a4b80ab859fe5e277c3e72f5e035aa46d7af7a953a182f5b8215edf9cde99974
diff --git a/dev-java/metadata-extractor/metadata-extractor-2.8.1.ebuild b/dev-java/metadata-extractor/metadata-extractor-2.8.1.ebuild
deleted file mode 100644
index adc3496b2da8..000000000000
--- a/dev-java/metadata-extractor/metadata-extractor-2.8.1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Access the metadata in digital images and video via a simple Java API"
-HOMEPAGE="http://www.drewnoakes.com/code/exif/"
-SRC_URI="https://github.com/drewnoakes/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="examples test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/xmpcore:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- test? ( dev-java/junit:4 )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="Source"
-JAVA_GENTOO_CLASSPATH="xmpcore"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc {CONTRIBUTING,README}.md
- use examples && java-pkg_doexamples Samples
-}
-
-src_test() {
- local DIR=Tests
- local CP="${DIR}:${S}/${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find ${DIR} -name "*Test.java")
- TESTS="${TESTS//Tests\/}"
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d ${DIR} $(find ${DIR} -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/metadata-extractor/metadata.xml b/dev-java/metadata-extractor/metadata.xml
deleted file mode 100644
index 9ad285ab6075..000000000000
--- a/dev-java/metadata-extractor/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- metadata-extractor is a straightforward Java library for reading metadata from image files.
-
- Metadata metadata = ImageMetadataReader.readMetadata(imagePath);
-
- With that metadata object, you can iterate or query the various tag values that were read from the image.
-
- The library understands several formats of metadata, many of which may be present in a single image.
- </longdescription>
- <upstream>
- <remote-id type="github">drewnoakes/metadata-extractor</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/metadata.xml b/dev-java/metadata.xml
index 110adbe2ca1d..a2557d91b8b9 100644
--- a/dev-java/metadata.xml
+++ b/dev-java/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The dev-java category contains libraries and utilities relevant to the
diff --git a/dev-java/metainf-services/Manifest b/dev-java/metainf-services/Manifest
index 6788adb48ee3..9f645d5aee76 100644
--- a/dev-java/metainf-services/Manifest
+++ b/dev-java/metainf-services/Manifest
@@ -1 +1 @@
-DIST metainf-services-1.7.tar.gz 5301 BLAKE2B dabb2229e5123b535c81f5796d92365eba609e696c0c513666c105534eb1430420b71768436ed53078dc72a2261ed821010ffea0098a4a65f81c5f1c2c118a6e SHA512 d6162e94ff5efcf61e56e0c1e1d22c51854fa7f98662b6ac0cc7d230b7f11b0d3c7c7238b640693d8d6f5e6e6f508bf5116ea22e73487d00145cd5a87853b3df
+DIST metainf-services-1.9.tar.gz 5353 BLAKE2B a2d72b886169f6697033c56fa581e4fed9f69236a335397b0480111959e87e1d25ee16b96c6449b37b467aa68f0b4997873346416d8a09e3b14b911ffe37ffd4 SHA512 6d666c2582944e824cc66dd58c09474775e475146af7f8edcb4abce45eff6573481f550d8c37b854addd81825201207be7855b9bbc21f539559395a63e9fa261
diff --git a/dev-java/metainf-services/files/metainf-services-1.7-build.xml b/dev-java/metainf-services/files/metainf-services-1.7-build.xml
deleted file mode 100644
index 4dd4174c45b4..000000000000
--- a/dev-java/metainf-services/files/metainf-services-1.7-build.xml
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 7/13/13 1:12 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="metainf-services-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="metainf-services-1.7"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath"/>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="false"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- </target>
-
-</project>
diff --git a/dev-java/metainf-services/metadata.xml b/dev-java/metainf-services/metadata.xml
index 6248f7ab18f2..9f78c943a6f1 100644
--- a/dev-java/metainf-services/metadata.xml
+++ b/dev-java/metainf-services/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/metainf-services/metainf-services-1.7.ebuild b/dev-java/metainf-services/metainf-services-1.7.ebuild
deleted file mode 100644
index bb7d68cfe2f2..000000000000
--- a/dev-java/metainf-services/metainf-services-1.7.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Generates META-INF/services files automatically"
-HOMEPAGE="http://metainf-services.kohsuke.org/"
-SRC_URI="https://github.com/kohsuke/${PN}/archive/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PN}-${P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
-}
diff --git a/dev-java/metainf-services/metainf-services-1.9.ebuild b/dev-java/metainf-services/metainf-services-1.9.ebuild
new file mode 100644
index 000000000000..bc65997190d7
--- /dev/null
+++ b/dev-java/metainf-services/metainf-services-1.9.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Generates META-INF/services files automatically"
+HOMEPAGE="https://metainf-services.kohsuke.org/"
+SRC_URI="https://github.com/kohsuke/${PN}/archive/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
diff --git a/dev-java/microba/Manifest b/dev-java/microba/Manifest
deleted file mode 100644
index b61bb6c87b35..000000000000
--- a/dev-java/microba/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST microba-0.4.4.3.zip 89737 BLAKE2B 130f6a39f069b0b4e93f352b7fea10abd6eec23b7f0392ad15fa34c198b4dfb46a9b0208322b245f0934e2ff2260661934f958e6216a45c4c69573976f366a2c SHA512 17933578fe101053a1004a1aa0ef342ffa1dc1f2ea2d670fa8aa2523c7d8207bb79e54755e58d0b7ce5ba627ca3b348ac10870718622e818f4097a966acc0a10
diff --git a/dev-java/microba/metadata.xml b/dev-java/microba/metadata.xml
deleted file mode 100644
index bf98076be4e0..000000000000
--- a/dev-java/microba/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">microba</remote-id>
- <remote-id type="github">tdbear/microba</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/microba/microba-0.4.4.3-r1.ebuild b/dev-java/microba/microba-0.4.4.3-r1.ebuild
deleted file mode 100644
index 02c622fbcd24..000000000000
--- a/dev-java/microba/microba-0.4.4.3-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Swing components for date operations and palettes"
-HOMEPAGE="https://github.com/tdbear/microba"
-SRC_URI="https://github.com/tdbear/${PN}/archive/${PV}.zip -> ${P}.zip"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CP_DEPEND="dev-java/jgraph:0"
-
-RDEPEND="${CP_DEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CP_DEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src/main/java"
-
-DOCS=(
- change.log.txt
- readme.txt
- README.md
-)
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar ${JAVA_SRC_DIR}
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
-}
diff --git a/dev-java/miglayout/Manifest b/dev-java/miglayout/Manifest
index dbb4d9c86ef1..1206d63a2d6d 100644
--- a/dev-java/miglayout/Manifest
+++ b/dev-java/miglayout/Manifest
@@ -1 +1 @@
-DIST miglayout-4.0-sources.jar 194675 BLAKE2B 9d0a4fce1b76e49f4a2962fccf323676172fc9fa084060d8b3507031635b7979d8b29ce598a0a484e3707eefdf90721162e67d36be5702e9309ef067fd39aab3 SHA512 27284ceac254707428351fb2451ffd5f2ebd580374df59624bb6af06011f70d87b27849900c2573aff782ebe6d84e1806c18a59741213948f0b238ee5a51ec2f
+DIST miglayout-5.3.tar.gz 627150 BLAKE2B 2b28b3dd95d84db1665308a2908c6ddf8f0e285431ffc03af0275f7005d98117f873b0752f9b1f428b213a30c9e020b626eb0e6709470c62eac46480c3aab542 SHA512 ee711a453a9e2962017eed9363e4b8c2fb1fb28d9b36455d928b60db40262be310e6d2ab6c9f3ac286f3975e9927f8a8a77827a27cd1cb2238b2033c38a67cdb
diff --git a/dev-java/miglayout/metadata.xml b/dev-java/miglayout/metadata.xml
index 34ad0f5b718e..457503f62795 100644
--- a/dev-java/miglayout/metadata.xml
+++ b/dev-java/miglayout/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -8,7 +8,7 @@
<longdescription lang="en">
For Java developers writing GUI layouts by hand that wants simplicity, power and automatic per platform fidelity, that are dissatisfied with the current layout managers in Swing, JavaFX and SWT, MigLayout solves your layout problems. User interfaces created with MigLayout is easy to maintain, you will understand how the layout will look like just by looking at the source code.
</longdescription>
- <use>
- <flag name="swt">Add support for the SWT toolkit.</flag>
- </use>
+ <upstream>
+ <remote-id type="github">mikaelgrev/miglayout</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/miglayout/miglayout-4.0-r1.ebuild b/dev-java/miglayout/miglayout-4.0-r1.ebuild
deleted file mode 100644
index d451c751b91f..000000000000
--- a/dev-java/miglayout/miglayout-4.0-r1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2
-
-DESCRIPTION="Easy to use yet very powerful Java Swing layout manager"
-HOMEPAGE="http://www.miglayout.com/"
-SRC_URI="http://www.migcalendar.com/miglayout/versions/${PV}/${P}-sources.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="swt"
-
-COMMON_DEPEND="swt? ( dev-java/swt:3.7 )"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${COMMON_DEPEND}
- >=virtual/jre-1.8:*
-"
-DEPEND="
- ${COMMON_DEPEND}
- >=virtual/jdk-1.8:*
-"
-
-S="${WORKDIR}"
-
-src_prepare() {
- default
-
- mv net/miginfocom/{demo,examples} . || die
- mv demo/* examples || die
-
- if ! use swt; then
- rm -r net/miginfocom/swt || die
- fi
-
- find net -name '*.java' > sources.lst
-}
-
-src_compile() {
- local classpath
- use swt && classpath=( -classpath "$(java-pkg_getjars swt-3.7)" )
-
- mkdir classes || die
- ejavac "${classpath[@]}" -d classes @sources.lst || die
- jar -cf ${PN}.jar -C classes . || die
-
- if use doc; then
- javadoc "${classpath[@]}" -author -version -d api @sources.lst || die
- fi
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-
- use doc && java-pkg_dojavadoc api
- use examples && java-pkg_doexamples examples
- use source && java-pkg_dosrc net
-}
diff --git a/dev-java/miglayout/miglayout-4.0-r2.ebuild b/dev-java/miglayout/miglayout-4.0-r2.ebuild
deleted file mode 100644
index 863e44285ea3..000000000000
--- a/dev-java/miglayout/miglayout-4.0-r2.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2
-
-DESCRIPTION="Easy to use yet very powerful Java Swing layout manager"
-HOMEPAGE="http://www.miglayout.com/"
-SRC_URI="http://www.migcalendar.com/miglayout/versions/${PV}/${P}-sources.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="swt"
-
-COMMON_DEPEND="swt? ( dev-java/swt:4.10 )"
-BDEPEND="app-arch/unzip"
-RDEPEND="
- ${COMMON_DEPEND}
- >=virtual/jre-1.8:*
-"
-DEPEND="
- ${COMMON_DEPEND}
- >=virtual/jdk-1.8:*
-"
-
-S="${WORKDIR}"
-
-src_prepare() {
- default
-
- mv net/miginfocom/{demo,examples} . || die
- mv demo/* examples || die
-
- if ! use swt; then
- rm -r net/miginfocom/swt || die
- fi
-
- find net -name '*.java' > sources.lst
-}
-
-src_compile() {
- local classpath
- use swt && classpath=( -classpath "$(java-pkg_getjars swt-4.10)" )
-
- mkdir classes || die
- ejavac "${classpath[@]}" -d classes @sources.lst || die
- jar -cf ${PN}.jar -C classes . || die
-
- if use doc; then
- javadoc "${classpath[@]}" -author -version -d api @sources.lst || die
- fi
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-
- use doc && java-pkg_dojavadoc api
- use examples && java-pkg_doexamples examples
- use source && java-pkg_dosrc net
-}
diff --git a/dev-java/miglayout/miglayout-5.3.ebuild b/dev-java/miglayout/miglayout-5.3.ebuild
new file mode 100644
index 000000000000..26caf78554f7
--- /dev/null
+++ b/dev-java/miglayout/miglayout-5.3.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.miglayout:miglayout-core:5.0 com.miglayout:miglayout-swing:5.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="MiGLayout - Java Layout Manager for Swing, SWT and JavaFX"
+HOMEPAGE="https://miglayout.com/"
+SRC_URI="https://github.com/mikaelgrev/miglayout/archive/V${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="5"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RUN_ONLY="net.miginfocom.swing.MigLayoutTest"
+JAVA_TEST_SRC_DIR="swing/src/test/java"
+
+src_compile() {
+ einfo "Compiling miglayout-core.jar"
+ JAVA_JAR_FILENAME="miglayout-core.jar"
+ JAVA_SRC_DIR="core/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":miglayout-core.jar"
+ rm -r target || die
+
+ einfo "Compiling miglayout-wingore.jar"
+ JAVA_JAR_FILENAME="miglayout-swing.jar"
+ JAVA_SRC_DIR="swing/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":miglayout-swing.jar"
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_SRC_DIR=(
+ "core/src/main/java"
+ "swing/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test() {
+ # There was 1 failure:
+ # 1) testDPIScaling(net.miginfocom.swing.MigLayoutTest)
+ # java.awt.HeadlessException
+ # at java.desktop/sun.awt.HeadlessToolkit.getScreenResolution(HeadlessToolkit.java:122)
+ # at net.miginfocom.swing.MigLayoutTest.testDPIScaling(MigLayoutTest.java:28)
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testDPIScaling()/i @Ignore' \
+ -i swing/src/test/java/net/miginfocom/swing/MigLayoutTest.java || die
+}
+
+src_install() {
+ java-pkg_dojar "miglayout-core.jar"
+ java-pkg_dojar "miglayout-swing.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "core/src/main/java/*"
+ java-pkg_dosrc "swing/src/main/java/*"
+ fi
+}
diff --git a/dev-java/mill-bin/Manifest b/dev-java/mill-bin/Manifest
new file mode 100644
index 000000000000..6513dd221b48
--- /dev/null
+++ b/dev-java/mill-bin/Manifest
@@ -0,0 +1,3 @@
+DIST mill-bin-0.11.5 52760276 BLAKE2B 1583403fba8782d759a5d56513e2d40cd81ffb68d4947b638052cc6108d6d6516f7fc16e9cf516fc7c2c60820d2d6fcb5c15179bcef715c6d75f25c6802fe711 SHA512 673d636fc64fff01289ad642f2f861f6da18d3e652cdd645e3d2487daf1baf4616515e31540a03f67dbc354efff4f48a6881e1ceecfb966eb24d7675abb6dff7
+DIST mill-bin-0.11.6 52778046 BLAKE2B 5f05b14cafba4e6b40b89572310a2b06ddbf1839a2da0dbdfe73a63606c9b1262fed686f7ffb17dc178072242136a4b334a2ae89b2fdc7274bffee928ff3c5fe SHA512 9f187b00d37f8d0bb97b7cd08c57e59e081c835e25f83e6c65bf2ca425f4325a6c641f7082ef700dac30ab6d4f59da5492136eeab21c898f11a259b89d55e9b8
+DIST mill-bin-0.11.7 59806165 BLAKE2B bc97d64a692a33a482752828a703cb22d44bafeeb3aa329136d601058b56bf94703f97047be416bcbcfeb9633288f31e5715646aad359be59deffc957fc15b7c SHA512 c7c2cecd5cec6aab735e36182fade4e7360684795af42b528c1a7e5b0a0dc89dc4c68d47400d46121854c455f72e47f51c73ac4f8e70339ce5a7d18ae8b088de
diff --git a/dev-java/mill-bin/metadata.xml b/dev-java/mill-bin/metadata.xml
new file mode 100644
index 000000000000..f8f99d4f8310
--- /dev/null
+++ b/dev-java/mill-bin/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type='person'>
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">com-lihaoyi/mill</remote-id>
+ <bugs-to>https://github.com/com-lihaoyi/mill/issues</bugs-to>
+ <changelog>https://github.com/com-lihaoyi/mill/releases</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/mill-bin/mill-bin-0.11.5.ebuild b/dev-java/mill-bin/mill-bin-0.11.5.ebuild
new file mode 100644
index 000000000000..b2461d64d37b
--- /dev/null
+++ b/dev-java/mill-bin/mill-bin-0.11.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN%-bin}
+
+DESCRIPTION="A Java/Scala build tool"
+HOMEPAGE="https://com-lihaoyi.github.io/mill/"
+SRC_URI="https://github.com/com-lihaoyi/${MY_PN}/releases/download/${PV}/${PV}-assembly -> ${P}"
+KEYWORDS="amd64 ~x86"
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}"
+
+src_unpack() {
+ :
+}
+
+src_install() {
+ newbin "${DISTDIR}"/${P} ${MY_PN}
+}
diff --git a/dev-java/mill-bin/mill-bin-0.11.6.ebuild b/dev-java/mill-bin/mill-bin-0.11.6.ebuild
new file mode 100644
index 000000000000..95f583ce077d
--- /dev/null
+++ b/dev-java/mill-bin/mill-bin-0.11.6.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN%-bin}
+
+DESCRIPTION="A Java/Scala build tool"
+HOMEPAGE="https://com-lihaoyi.github.io/mill/"
+SRC_URI="https://github.com/com-lihaoyi/${MY_PN}/releases/download/${PV}/${PV}-assembly -> ${P}"
+KEYWORDS="amd64 ~x86"
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}"
+
+src_unpack() {
+ :
+}
+
+src_install() {
+ newbin "${DISTDIR}"/${P} ${MY_PN}
+}
diff --git a/dev-java/mill-bin/mill-bin-0.11.7.ebuild b/dev-java/mill-bin/mill-bin-0.11.7.ebuild
new file mode 100644
index 000000000000..5b24c097e25e
--- /dev/null
+++ b/dev-java/mill-bin/mill-bin-0.11.7.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN%-bin}
+
+DESCRIPTION="A Java/Scala build tool"
+HOMEPAGE="https://com-lihaoyi.github.io/mill/"
+SRC_URI="https://github.com/com-lihaoyi/${MY_PN}/releases/download/${PV}/${PV}-assembly -> ${P}"
+KEYWORDS="~amd64 ~x86"
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}"
+
+src_unpack() {
+ :
+}
+
+src_install() {
+ newbin "${DISTDIR}"/${P} ${MY_PN}
+}
diff --git a/dev-java/milton-api/Manifest b/dev-java/milton-api/Manifest
deleted file mode 100644
index 5c8cee48d258..000000000000
--- a/dev-java/milton-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST milton-api-2.7.1.3-sources.jar 240367 BLAKE2B 9c6ff4484336b5dc2d8f4506398d4e522cbad102473f6a2fb59fad8b98c6154a4b09c18378adceaa698a9db0bc495dd1b83fcc93c5afcd153876e52a4df99e5f SHA512 9d73e830a4c62b872fe756679158a961d6160016cc6db6915dd17f65f9ca6008cf7f451aae71beb735b24c7b0872b8b672f53f4a0ecb1279d9572e1908fd5f08
diff --git a/dev-java/milton-api/metadata.xml b/dev-java/milton-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/milton-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/milton-api/milton-api-2.7.1.3.ebuild b/dev-java/milton-api/milton-api-2.7.1.3.ebuild
deleted file mode 100644
index 72136a1b758f..000000000000
--- a/dev-java/milton-api/milton-api-2.7.1.3.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Milton WebDav library"
-HOMEPAGE="http://milton.io"
-SRC_URI="http://milton.io/maven/io/milton/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-CDEPEND="
- dev-java/commons-codec:0
- dev-java/commons-io:1
- dev-java/slf4j-api:0
-"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="commons-codec,commons-io-1,slf4j-api"
diff --git a/dev-java/milton-mail-api/Manifest b/dev-java/milton-mail-api/Manifest
deleted file mode 100644
index 9624656a4c9b..000000000000
--- a/dev-java/milton-mail-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST milton-mail-api-2.7.1.3-sources.jar 34106 BLAKE2B 3307f0bbc700c529d1988648d1aab306dbefe6b5c6ca78d9706b0342b6f122836d05de99971d67c2c99bfdd07014f85307b8a87d97ef85337dbc8096fc4a289a SHA512 c0b7f7d62b54f996f42c44e8b28eeaee8a76e8990be5a9894a0f3b2daead699e78442c5cf96a272f71a54536c87247f366f10f3aa2c3adb9d4870253ec8c3b67
diff --git a/dev-java/milton-mail-api/metadata.xml b/dev-java/milton-mail-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/milton-mail-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/milton-mail-api/milton-mail-api-2.7.1.3.ebuild b/dev-java/milton-mail-api/milton-mail-api-2.7.1.3.ebuild
deleted file mode 100644
index 13bf1e501a5a..000000000000
--- a/dev-java/milton-mail-api/milton-mail-api-2.7.1.3.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Milton WebDav library"
-HOMEPAGE="http://milton.io"
-SRC_URI="http://milton.io/maven/io/milton/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-CDEPEND="
- dev-java/slf4j-api:0
- dev-java/milton-api:0
- dev-java/oracle-javamail:0
-"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="
- slf4j-api
- milton-api
- oracle-javamail
-"
diff --git a/dev-java/mimepull/Manifest b/dev-java/mimepull/Manifest
deleted file mode 100644
index f9d0b67b482b..000000000000
--- a/dev-java/mimepull/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST mimepull-1.9.6.jar 68382 BLAKE2B a59c4837dd82fa2a1e67e653870ead62c6db6ede03690eb483724d2a9bdb588e34145eff604b372a417cda12a1f4074741630e47b3acd81f438145c938d04578 SHA512 528eb77d6edbbfb1b1d8aebb617f9d20c84b9c18f7ab763163ea136c3898319519bbfa8a8e204bd0697a4eac9b964eaf3fb2ee214555efcb3da152ebf467ae64
diff --git a/dev-java/mimepull/metadata.xml b/dev-java/mimepull/metadata.xml
deleted file mode 100644
index b06e421248fc..000000000000
--- a/dev-java/mimepull/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- This provides a streaming API to access attachments parts in a MIME message.
- Often times, a large MIME message cannot be loaded into memory. Hence the
- whole message or attachment parts are written to a file system and access to
- the attachment parts is provided using those files.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/mimepull/mimepull-1.9.6-r2.ebuild b/dev-java/mimepull/mimepull-1.9.6-r2.ebuild
deleted file mode 100644
index 87dee3af3282..000000000000
--- a/dev-java/mimepull/mimepull-1.9.6-r2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Pull API for parsing MIME messages"
-HOMEPAGE="http://java.net/projects/mimepull"
-SRC_URI="https://repo1.maven.org/maven2/org/jvnet/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-DEPEND="
- >=virtual/jdk-1.7"
-
-RDEPEND="
- >=virtual/jre-1.7"
diff --git a/dev-java/mina-core/Manifest b/dev-java/mina-core/Manifest
deleted file mode 100644
index 54a0506ee355..000000000000
--- a/dev-java/mina-core/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST mina-core-1.1.7.jar 272148 BLAKE2B 08017722d3e85f233725c0f3495372d4c189a18bea346ff56ab2911dd35fa65df3697101a577424c8702b4fe52dee2701a13bdb2a90f187ff9df0f038fdfa02e SHA512 44f2f94aa356ce1b4ac0379ecec7b76b15210e54314c911bd8ba6d48910415363c9a34dc50e29b8e04ad08a371398ad9e2a00065a44b71c25caa3ef14a72b832
-DIST mina-core-2.0.7.tar.bz2 1953751 BLAKE2B 973e7d67f2328a8bc9fec31f693280b7f640fc3856912e7186b9c7f1d4b506303c4857304f26138a07b0cc10b6e6ff7516be504388980e4042f0ac450ddb5fbd SHA512 406f5fe9c389dc0a2ebe602207e1c914fee308368d5a1e15815ae4c160a986a30a453a1bfb4e010452de87aa28a6817c02f0b5a669ad272fdf603084e994e57e
diff --git a/dev-java/mina-core/metadata.xml b/dev-java/mina-core/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/mina-core/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/mina-core/mina-core-1.1.7-r1.ebuild b/dev-java/mina-core/mina-core-1.1.7-r1.ebuild
deleted file mode 100644
index bb2d5a60560a..000000000000
--- a/dev-java/mina-core/mina-core-1.1.7-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache MINA Project"
-HOMEPAGE="https://mina.apache.org/"
-SRC_URI="mirror://gentoo/${P}.jar"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="dev-java/slf4j-api:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}"
-
-JAVA_GENTOO_CLASSPATH="slf4j-api"
diff --git a/dev-java/mina-core/mina-core-2.0.7-r1.ebuild b/dev-java/mina-core/mina-core-2.0.7-r1.ebuild
deleted file mode 100644
index 443f413218fe..000000000000
--- a/dev-java/mina-core/mina-core-2.0.7-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="apache-mina-${PV}"
-
-DESCRIPTION="Apache MINA Project"
-HOMEPAGE="https://mina.apache.org/"
-SRC_URI="mirror://apache/mina/mina/${PV}/${MY_P}-src.tar.bz2 -> ${P}.tar.bz2"
-KEYWORDS="amd64 ppc64 x86"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-CDEPEND="dev-java/slf4j-api:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="slf4j-api"
-
-JAVA_SRC_DIR="my_src"
-
-src_prepare() {
- default
- mkdir my_src || die
- mv src/mina-core/src/main/java/org my_src || die
-}
diff --git a/dev-java/minidns-core/Manifest b/dev-java/minidns-core/Manifest
new file mode 100644
index 000000000000..c6098e740f38
--- /dev/null
+++ b/dev-java/minidns-core/Manifest
@@ -0,0 +1 @@
+DIST minidns-core-1.0.4.tar.gz 160110 BLAKE2B 5465a4f94ef98966ddf54633fe23a8f5a567aad5b059030e204e495e8bcc9ba3aa6e32b2a45be53d0d0df18edf4731e2cc1b163fadb7b8cbbddb259848b022ef SHA512 21a6065b2de3e5ec0cb3da8f68e655e2b72424472186256fc29b3e51303b3bf6f3b1c9d0a106968b21ba55656ea9ef9e90d51cee23eea8d865e11dc2f4d5c2b3
diff --git a/dev-java/minidns-core/metadata.xml b/dev-java/minidns-core/metadata.xml
new file mode 100644
index 000000000000..115bee3bf8c1
--- /dev/null
+++ b/dev-java/minidns-core/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">minidns/minidns</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/minidns-core/minidns-core-1.0.4.ebuild b/dev-java/minidns-core/minidns-core-1.0.4.ebuild
new file mode 100644
index 000000000000..3a9f492efae0
--- /dev/null
+++ b/dev-java/minidns-core/minidns-core-1.0.4.ebuild
@@ -0,0 +1,27 @@
+# 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.minidns:minidns-core:1.0.4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="DNS library for Java and Android systems"
+HOMEPAGE="https://github.com/minidns/minidns"
+SRC_URI="https://github.com/MiniDNS/minidns/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/minidns-${PV}/${PN}"
+
+JAVA_SRC_DIR="src/main/java"
+# needs junit:5
+#JAVA_TESTING_FRAMEWORKS="junit-5"
+#JAVA_TEST_SRC_DIR="src/test/java"
+#JAVA_TEST_RESOURCE_DIRS="src/test/resources"
diff --git a/dev-java/mockito/Manifest b/dev-java/mockito/Manifest
index ef719554f694..9d9fe63d1383 100644
--- a/dev-java/mockito/Manifest
+++ b/dev-java/mockito/Manifest
@@ -1 +1,3 @@
-DIST mockito-1.9.5.zip 6453870 BLAKE2B b577c4a82f03b5c345462ecc10e9fe25c03836d08d57d633d95a1eaba17f52d4306603f50f332df360d0a4880c85c65bad4503503df0acad8f7b437694a2b887 SHA512 93768992c74fbc2e2653b46b3afb526ab816b9c707cb5f9608564299ffd206e256182be146c590b4777a624379f576d7117ed7d43b11f8d2974e87c402eede51
+DIST mockito-2.28.2.tar.gz 875085 BLAKE2B d0aab378c028530724156f999700506fe64f5bf19371dc9b957e34924d3d17b8191f093054c6dde4f5879d61ddf9614a60b1fd597aae09b92abf559c08fbcdf7 SHA512 9921fe9ffbdff4d7a9a8de56aa5078e68eb6bee38f379f58059dcc42da07a59b7e5953309d646e1fb760f7135f5076e201529370cc5df56d685f7acb08311ea5
+DIST mockito-4.11.0.tar.gz 1050218 BLAKE2B 7f7298e233c9cdb0b475aa201300a1063fd8efc587f3a4de0cb1caedd6f6506a32f8e9b0548fa5898892515ec96625153a1a2ad65fc8070b7dc6c254206fbbfd SHA512 b1de01c8e9b2fc4eef0013af562efeac7e22babdebbd8c7842ecd55071627e11c5e6ab575436990ea70d4ceefb56fc260333278c8d4b833e454956bf89841fc5
+DIST mockito-core-1.9.5-sources.jar 723074 BLAKE2B e553a923542a1a2574ee0cda5979d168cc3e9644dbbc9fceed2301ae1bac150c4e35dbc4432d50e2479efea2a6cd35ec19c62c3598f61709f1f5dc8959cc0155 SHA512 271e626c3b5be9a7d7c82a2f0bf44077aabd51924b0956a88633ace7fe8c134d8cd1f89ce348ce0d15ccce55a50027e303836d2d2f430500317b6136d308d3d4
diff --git a/dev-java/mockito/files/mockito-2.28.2-skip-failing-tests.patch b/dev-java/mockito/files/mockito-2.28.2-skip-failing-tests.patch
new file mode 100644
index 000000000000..06bf5bcd6346
--- /dev/null
+++ b/dev-java/mockito/files/mockito-2.28.2-skip-failing-tests.patch
@@ -0,0 +1,82 @@
+# https://bugs.gentoo.org/903897
+--- a/src/test/java/org/mockito/internal/creation/bytebuddy/AbstractByteBuddyMockMakerTest.java
++++ b/src/test/java/org/mockito/internal/creation/bytebuddy/AbstractByteBuddyMockMakerTest.java
+@@ -6,6 +6,7 @@ package org.mockito.internal.creation.bytebuddy;
+
+ import net.bytebuddy.ByteBuddy;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.mockito.Mockito;
+ import org.mockito.internal.creation.MockSettingsImpl;
+ import org.mockito.internal.handler.MockHandlerImpl;
+@@ -134,7 +135,7 @@ public abstract class AbstractByteBuddyMockMakerTest<MM extends MockMaker> {
+ }
+ }
+
+- @Test
++ @Test @Ignore
+ public void instantiate_fine_when_objenesis_on_the_classpath() throws Exception {
+ // given
+ ClassLoader classpath_with_objenesis = ClassLoaders.excludingClassLoader()
+--- a/src/test/java/org/mockitousage/matchers/VarargsTest.java
++++ b/src/test/java/org/mockitousage/matchers/VarargsTest.java
+@@ -19,6 +19,7 @@ import org.assertj.core.api.ObjectAssert;
+ import org.junit.Ignore;
+ import org.junit.Rule;
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.rules.ExpectedException;
+ import org.mockito.ArgumentCaptor;
+ import org.mockito.Captor;
+@@ -78,7 +79,7 @@ public class VarargsTest {
+ verify(mock).varargs((String[]) isNotNull());
+ }
+
+- @Test
++ @Test @Ignore
+ public void shouldMatchVarArgs_oneNullArg_eqNull() {
+ Object arg = null;
+ mock.varargs(arg);
+@@ -86,7 +87,7 @@ public class VarargsTest {
+ verify(mock).varargs(eq(null));
+ }
+
+- @Test
++ @Test @Ignore
+ public void shouldMatchVarArgs_oneNullArg_isNull() {
+ Object arg = null;
+ mock.varargs(arg);
+@@ -94,7 +95,7 @@ public class VarargsTest {
+ verify(mock).varargs(isNull());
+ }
+
+- @Test
++ @Test @Ignore
+ public void shouldMatchVarArgs_nullArrayArg() {
+ Object[] argArray = null;
+ mock.varargs(argArray);
+@@ -118,21 +119,21 @@ public class VarargsTest {
+ verify(mock).varargs((String[])any()); // any() -> VarargMatcher
+ }
+
+- @Test
++ @Test @Ignore
+ public void shouldMatchVarArgs_oneArgsOneAnyMatcher() {
+ mock.varargs(1);
+
+ verify(mock).varargs(any()); // any() -> VarargMatcher
+ }
+
+- @Test
++ @Test @Ignore
+ public void shouldMatchVarArgs_twoArgsOneAnyMatcher() {
+ mock.varargs(1, 2);
+
+ verify(mock).varargs(any()); // any() -> VarargMatcher
+ }
+
+- @Test
++ @Test @Ignore
+ public void shouldMatchVarArgs_twoArgsTwoAnyMatcher() {
+ mock.varargs(1, 2);
+
diff --git a/dev-java/mockito/metadata.xml b/dev-java/mockito/metadata.xml
index 37aa3d0ae1cc..a48a1160ecfd 100644
--- a/dev-java/mockito/metadata.xml
+++ b/dev-java/mockito/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="google-code">mockito</remote-id>
<remote-id type="github">mockito/mockito</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/mockito/mockito-1.9.5-r1.ebuild b/dev-java/mockito/mockito-1.9.5-r1.ebuild
deleted file mode 100644
index bb99d5cb44b6..000000000000
--- a/dev-java/mockito/mockito-1.9.5-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A mocking framework for Java"
-HOMEPAGE="https://github.com/mockito/mockito"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.zip"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-IUSE=""
-
-CDEPEND="dev-java/junit:4
- dev-java/objenesis:0
- dev-java/hamcrest-core:0
- dev-java/ant-core:0"
-RDEPEND=">=virtual/jre-1.5
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.5
- app-arch/unzip
- ${CDEPEND}"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="src"
-JAVA_GENTOO_CLASSPATH="junit-4,objenesis,hamcrest-core,ant-core"
-
-src_unpack() {
- unpack ${A}
- unzip "${S}"/sources/${PN}-core-${PV}-sources.jar -d src/ || die
-}
-
-java_prepare() {
- find "${S}" -name "*.jar" -delete || die
-}
diff --git a/dev-java/mockito/mockito-1.9.5-r2.ebuild b/dev-java/mockito/mockito-1.9.5-r2.ebuild
deleted file mode 100644
index 1076b1486ea3..000000000000
--- a/dev-java/mockito/mockito-1.9.5-r2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="A mocking framework for Java"
-HOMEPAGE="https://github.com/mockito/mockito"
-SRC_URI="https://${PN}.googlecode.com/files/${P}.zip"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-
-CDEPEND="
- dev-java/ant-core:0
- dev-java/hamcrest-core:0
- dev-java/junit:4
- dev-java/objenesis:0
-"
-RDEPEND="${CDEPEND}
- virtual/jre:1.8"
-DEPEND="${CDEPEND}
- virtual/jdk:1.8"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="src"
-JAVA_GENTOO_CLASSPATH="junit-4,objenesis,hamcrest-core,ant-core"
-
-src_unpack() {
- unpack ${A}
- unzip "${S}"/sources/${PN}-core-${PV}-sources.jar -d src/ || die
-}
-
-src_prepare() {
- default
- find "${S}" -name "*.jar" -delete || die
-}
diff --git a/dev-java/mockito/mockito-1.9.5-r4.ebuild b/dev-java/mockito/mockito-1.9.5-r4.ebuild
new file mode 100644
index 000000000000..6c673f92d0ab
--- /dev/null
+++ b/dev-java/mockito/mockito-1.9.5-r4.ebuild
@@ -0,0 +1,31 @@
+# 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.mockito:mockito-core:1.9.5"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A mocking framework for Java"
+HOMEPAGE="https://github.com/mockito/mockito"
+SRC_URI="https://repo1.maven.org/maven2/org/mockito/mockito-core/${PV}/mockito-core-${PV}-sources.jar"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/hamcrest-core:0
+ dev-java/junit:4
+ dev-java/objenesis:0
+"
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+BDEPEND="app-arch/unzip"
+
+JAVADOC_ARGS="-source 8"
diff --git a/dev-java/mockito/mockito-2.28.2.ebuild b/dev-java/mockito/mockito-2.28.2.ebuild
new file mode 100644
index 000000000000..40c00744c354
--- /dev/null
+++ b/dev-java/mockito/mockito-2.28.2.ebuild
@@ -0,0 +1,103 @@
+# 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.mockito:mockito-core:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Mockito mock objects library core API and implementation"
+HOMEPAGE="https://github.com/mockito/mockito"
+SRC_URI="https://github.com/mockito/mockito/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/asm:9
+ dev-java/byte-buddy:0
+ dev-java/objenesis:0
+"
+
+DEPEND="
+ dev-java/junit:4
+ dev-java/opentest4j:0
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? ( dev-java/assertj-core:3 )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+# see https://bugs.gentoo.org/903897
+PATCHES=( "${FILESDIR}/mockito-2.28.2-skip-failing-tests.patch" )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.mockito"
+JAVA_CLASSPATH_EXTRA="junit-4 opentest4j"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXCLUDES=(
+ org.mockito.internal.junit.JUnitRuleTest # We run it in JAVA_TEST_RUN_ONLY
+ org.mockito.internal.util.reflection.DummyClassForTests # No runnable methods
+ org.mockito.internal.util.reflection.DummyParentClassForTests # No runnable methods
+ org.mockito.junit.TestableJUnitRunner # No runnable methods
+ org.mockitoutil.TestBase # No runnable methods
+)
+JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3,junit-4"
+JAVA_TEST_RUN_ONLY=(
+ # This needs to run separately, otherwise one of its 4 tests would fail.
+ org.mockito.internal.junit.JUnitRuleTest
+)
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ default
+ # dev-java/byte-buddy is built from byte-buddy-dep without shaded stuff.
+ sed \
+ -e 's:net.bytebuddy.jar.asm:org.objectweb.asm:' \
+ -i src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java \
+ -i src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ mv target/classes/org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.{class,raw} || die
+ jar ufv mockito.jar -C target/classes org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.raw || die
+}
+
+src_test() {
+ # Increasing number of test failures with higher Java versions
+ # Test failures are documented in https://bugs.gentoo.org/903897
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 11; then
+ JAVA_TEST_EXCLUDES+=(
+ org.mockito.internal.stubbing.defaultanswers.ReturnsMocksTest
+ org.mockitousage.bugs.GenericsMockitoAnnotationsTest
+ )
+ fi
+ if ver_test "${vm_version}" -ge 17; then
+ JAVA_TEST_EXCLUDES+=(
+ org.concurrentmockito.ThreadsRunAllTestsHalfManualTest
+ org.mockitousage.matchers.InvalidUseOfMatchersTest
+ org.mockitousage.serialization.DeepStubsSerializableTest
+ org.mockitousage.stubbing.StubbingWithDelegateTest
+ )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.io=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED )
+ fi
+ # First run what needs to run separately
+ java-pkg-simple_src_test
+ # And then the other tests
+ JAVA_TEST_RUN_ONLY=""
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/mockito/mockito-4.11.0.ebuild b/dev-java/mockito/mockito-4.11.0.ebuild
new file mode 100644
index 000000000000..1327aa6b7fa7
--- /dev/null
+++ b/dev-java/mockito/mockito-4.11.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Tests not enabled, wants junit-jupiter.
+# "${S}/settings.gradle.kts"
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.mockito:mockito-core:4.11.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Mockito mock objects library core API and implementation"
+HOMEPAGE="https://github.com/mockito/mockito"
+SRC_URI="https://github.com/mockito/mockito/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/asm:9
+ dev-java/byte-buddy:0
+ dev-java/objenesis:0
+"
+
+DEPEND="
+ dev-java/junit:4
+ dev-java/opentest4j:0
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/${P}"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.mockito"
+JAVA_CLASSPATH_EXTRA="junit-4 opentest4j"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ default
+ # dev-java/byte-buddy is built from byte-buddy-dep without shaded stuff.
+ sed \
+ -e 's:net.bytebuddy.jar.asm:org.objectweb.asm:' \
+ -i src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java \
+ -i src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java || die
+}
diff --git a/dev-java/mojarra/Manifest b/dev-java/mojarra/Manifest
deleted file mode 100644
index 01c094e85fef..000000000000
--- a/dev-java/mojarra/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST javax.faces-2.2.12-sources.jar 3105808 BLAKE2B 347daf8b44171a94e7ebf09c8ad22b1b20255355f589def6c537c49e37275605caf80f219be21dd8561597c94c15e6fe2cc0c0c713297ceaf8d6be669b6a6e78 SHA512 b2bc2ce38d72af38a4b2fdb5aec790600ca41a5d7f6340bf6be671a901c9fe664d50d9d13f021694e85e0e145a2031e2d8b61dd6d6ccebb544f2512a91ff670a
diff --git a/dev-java/mojarra/files/mojarra-2.2.12-Util.java.patch b/dev-java/mojarra/files/mojarra-2.2.12-Util.java.patch
deleted file mode 100644
index 23033f652969..000000000000
--- a/dev-java/mojarra/files/mojarra-2.2.12-Util.java.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- src/com/sun/faces/util/Util.java.orig 2015-09-03 14:43:30.953486000 +0000
-+++ src/com/sun/faces/util/Util.java 2015-09-03 14:43:57.692486000 +0000
-@@ -354,13 +354,15 @@
- // as the same adapter in a standalone program works as one might expect.
- // So, for now, if the classname starts with '[', then use Class.forName()
- // to avoid CR 643419 and for all other cases, use ClassLoader.loadClass().
-- if (loader.getClass() == com.sun.faces.scripting.groovy.GroovyHelperImpl.MojarraGroovyClassLoader.class) {
-- if (name.charAt(0) == '[') {
-- return Class.forName(name, true, loader);
-- } else {
-- return loader.loadClass(name);
-- }
-- }
-+ //
-+ // Disable Groovy support.
-+ // if (loader.getClass() == com.sun.faces.scripting.groovy.GroovyHelperImpl.MojarraGroovyClassLoader.class) {
-+ // if (name.charAt(0) == '[') {
-+ // return Class.forName(name, true, loader);
-+ // } else {
-+ // return loader.loadClass(name);
-+ // }
-+ // }
- return Class.forName(name, true, loader);
- }
-
diff --git a/dev-java/mojarra/metadata.xml b/dev-java/mojarra/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/mojarra/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/mojarra/mojarra-2.2.12-r1.ebuild b/dev-java/mojarra/mojarra-2.2.12-r1.ebuild
deleted file mode 100644
index 735e0e7b91bc..000000000000
--- a/dev-java/mojarra/mojarra-2.2.12-r1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Project Mojarra - GlassFish's Implementation for JavaServer Faces API"
-HOMEPAGE="https://javaserverfaces.dev.java.net/"
-SRC_URI="https://maven.java.net/content/repositories/releases/org/glassfish/javax.faces/${PV}/javax.faces-${PV}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="2.2"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-CDEPEND="dev-java/glassfish-persistence:0
- dev-java/glassfish-ejb-api:0
- java-virtuals/servlet-api:3.0
- dev-java/tomcat-jstl-spec:0
- dev-java/tomcat-jstl-impl:0
- dev-java/validation-api:1.0
- dev-java/javax-inject:0
- dev-java/cdi-api:1.2"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-
-JAVA_SRC_DIR="src"
-
-JAVA_GENTOO_CLASSPATH="
- glassfish-persistence
- glassfish-ejb-api
- tomcat-jstl-spec
- tomcat-jstl-impl
- validation-api-1.0
- cdi-api-1.2
- servlet-api-3.0
- javax-inject
-"
-
-java_prepare() {
- mkdir src || die
- mv * src
-
- # We *MUST* bump Groovy to 2.4 at some point
- # to make this stuff work correctly.
- rm -v src/com/sun/faces/scripting/groovy/GroovyHelperImpl.java || die
- epatch "${FILESDIR}"/${P}-Util.java.patch
-}
diff --git a/dev-java/moshi/Manifest b/dev-java/moshi/Manifest
deleted file mode 100644
index 0b4777a4f8e4..000000000000
--- a/dev-java/moshi/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST moshi-parent-1.1.0.tar.gz 85572 BLAKE2B 22a2192c47142591f1a3bc56525bd715247b94c61c0e97f2db942ddca1cdba914ef5eab61d19632f4eccd02425f29ad27f288e030e0f6af238095c75a6e20a9f SHA512 58557f20a84f4b59f0b603b6e6dbe803285f5c066451dac72e9926ca57131b62fddd222b995dc233e1c7120fc7787fa5b2c6ddab33d0b8e69b8ea1147ca06549
diff --git a/dev-java/moshi/metadata.xml b/dev-java/moshi/metadata.xml
deleted file mode 100644
index b2097aa1b4c9..000000000000
--- a/dev-java/moshi/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">square/moshi</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/moshi/moshi-1.1.0.ebuild b/dev-java/moshi/moshi-1.1.0.ebuild
deleted file mode 100644
index 5348dfbdb2f7..000000000000
--- a/dev-java/moshi/moshi-1.1.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-parent-${PV}"
-
-DESCRIPTION="A modern JSON library for Android and Java"
-HOMEPAGE="https://github.com/square/moshi"
-SRC_URI="https://github.com/square/${PN}/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="
- dev-java/assertj-core:2
- dev-java/junit:4
- dev-java/okio:0
-"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="assertj-core-2,junit-4,okio"
-
-JAVA_SRC_PATH="${WORKDIR}/${MY_P}/${PN}/src"
-
-src_prepare() {
- # Some don't compile, not putting effort into it now
- rm -rf "${WORKDIR}/${PN}-${MY_P}/${PN}"/src/test
-}
diff --git a/dev-java/msv/Manifest b/dev-java/msv/Manifest
new file mode 100644
index 000000000000..9475f768708b
--- /dev/null
+++ b/dev-java/msv/Manifest
@@ -0,0 +1 @@
+DIST msv-2022.7.tar.gz 2594951 BLAKE2B fce006f4b845efcd930b7999ac00eaab06c404888eb73a6eeab6cfad616b4922271d2d682abc82f3be4c4f6a791aa14681f6e6bfebd2118ac3aa2bcba41fd1f8 SHA512 315342628f79c561883be0d966211dd81daae66a414dcc9bb5a87d86f97121d38b5835e9a6d1ac7c21ccff46040e53d3cabd32e9ea677c9ca4335a86c5259949
diff --git a/dev-java/msv/metadata.xml b/dev-java/msv/metadata.xml
new file mode 100644
index 000000000000..d52f73b93e44
--- /dev/null
+++ b/dev-java/msv/metadata.xml
@@ -0,0 +1,15 @@
+<?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>
+ The Sun Multi-Schema XML Validator (MSV) is a Java technology tool
+ to validate XML documents against several kinds of XML schemata.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">xmlark/msv</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/msv/msv-2022.7.ebuild b/dev-java/msv/msv-2022.7.ebuild
new file mode 100644
index 000000000000..9f000389fc0a
--- /dev/null
+++ b/dev-java/msv/msv-2022.7.ebuild
@@ -0,0 +1,70 @@
+# 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/xmlark/msv/archive/msv-2022.7.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild msv-2022.7.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="net.java.dev.msv:msv-core:2022.7"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Multi-Schema Validator Core package"
+HOMEPAGE="https://xmlark.github.io/msv/core/"
+SRC_URI="https://github.com/xmlark/msv/archive/msv-${PV}.tar.gz"
+
+LICENSE="BSD-1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# isorelax:isorelax:20030108 -> !!!groupId-not-found!!!
+# net.java.dev.msv:xsdlib:2022.7 -> !!!suitable-mavenVersion-not-found!!!
+# relaxngDatatype:relaxngDatatype:20020414 -> >=dev-java/relaxng-datatype-20020414:0
+# xerces:xercesImpl:2.12.2 -> >=dev-java/xerces-2.12.2:2
+# xml-apis:xml-apis:1.4.01 -> >=dev-java/xml-commons-external-1.4.01:1.4
+# xml-resolver:xml-resolver:1.2 -> >=dev-java/xml-commons-resolver-1.2:0
+
+CP_DEPEND="
+ dev-java/iso-relax:0
+ dev-java/relaxng-datatype:0
+ dev-java/xerces:2
+ dev-java/xml-commons-external:1.4
+ dev-java/xml-commons-resolver:0
+ dev-java/xsdlib:0
+"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/msv-${P}/msv"
+
+JAVA_MAIN_CLASS="com.sun.msv.driver.textui.Driver"
+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_test() {
+ # Selection according to pom.xml#L182-L210
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -wholename "**/*Test.java" \
+ -o -wholename "**/*TestCase.java" \
+ -o -wholename "**/*TestCases.java" \) \
+ ! -wholename "**/*\$*" \
+ )
+ popd
+ 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/mvel/Manifest b/dev-java/mvel/Manifest
new file mode 100644
index 000000000000..41568dbf8e17
--- /dev/null
+++ b/dev-java/mvel/Manifest
@@ -0,0 +1 @@
+DIST mvel2-2.5.0.Final.tar.gz 2182715 BLAKE2B 1e8dbde4b75e36ea4d285ab45c0040957b9af7b5819786daf6469ae509c9c1e16ba2b201a05f9f9cf1c694bac816afd2d613226a8eb3b06f9049a898c6586b85 SHA512 29ca1ef8fdc4cbb97b5847f59e7c3118e837022d7292b507869208da1798b55d0445c40214d72c159e610d7094df7002c091296b2b31775a1ad0606f622d12b5
diff --git a/dev-java/mvel/metadata.xml b/dev-java/mvel/metadata.xml
new file mode 100644
index 000000000000..74329d8771b3
--- /dev/null
+++ b/dev-java/mvel/metadata.xml
@@ -0,0 +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>
+ <upstream>
+ <remote-id type="github">mvel/mvel</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/mvel/mvel-2.5.0.ebuild b/dev-java/mvel/mvel-2.5.0.ebuild
new file mode 100644
index 000000000000..dc7079a91c1c
--- /dev/null
+++ b/dev-java/mvel/mvel-2.5.0.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2021-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.mvel:mvel2:${PV}.Final"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="MVFLEX Expression Language"
+HOMEPAGE="https://github.com/mvel/mvel"
+SRC_URI="https://github.com/mvel/mvel/archive/mvel2-${PV}.Final.tar.gz"
+S="${WORKDIR}/${PN}-${PN}2-${PV}.Final"
+
+LICENSE="Apache-2.0"
+SLOT="2.5"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ dev-java/asm:9
+ >=virtual/jdk-1.8:*
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+# Required due to use of '_' as identifiers in source files
+JAVADOC_ARGS="-source 8"
+JAVA_CLASSPATH_EXTRA="asm-9"
+JAVA_MAIN_CLASS="org.mvel2.sh.Main"
+JAVA_SRC_DIR="src/main/java"
+
+# Significantly speed up test execution
+# https://github.com/mvel/mvel/blob/mvel2-2.3.2.Final/pom.xml#L158-L171
+JAVA_TEST_EXTRA_ARGS=(
+ -Dfile.encoding=UTF-8
+ -Dmvel.disable.jit=true
+ -Dmvel.tests.quick=true
+)
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" )
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # ${S}/pom.xml#201-214
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -name "*Test.java" \
+ -o -name '*Tests.java' \
+ -o -name 'UsageDemos.java' \)\
+ ! -name "AbstractTest.java*" \
+ ! -name "CompiledUnitTestEx.java" \
+ ! -name "PerfTest.java" \
+ ! -name "DroolsTest.java" \
+ ! -name "FailureTests.java" \
+ ! -name "PerformanceTest.java" \
+ ! -name "CompiledPerformanceTests.java" \
+ ! -name "MVELThreadTest.java*" \
+ ! -name "SimpleTests.java*" \
+ ! -name "BaseOperatorsTest.java*" \
+ )
+ popd
+ 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/myfaces-api/Manifest b/dev-java/myfaces-api/Manifest
deleted file mode 100644
index 6ebb8728c642..000000000000
--- a/dev-java/myfaces-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST myfaces-api-2.2.14-sources.jar 960365 BLAKE2B da66641c77161af268f42f197fff9366e6971b1646ac1b469fc2b318b179844ef995d3911975269375e3d46fe8e7590eb812d6ac9be0bb7bda0f4170dde47d77 SHA512 9c6d1ae8cf1fe0d407c3241a260071391c642206184f7be83a0d0c767da08981a0ce21cafb31a52c6bd4f4023501538fbec9bee122f0a60943300ef7e22b2d1a
diff --git a/dev-java/myfaces-api/metadata.xml b/dev-java/myfaces-api/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/myfaces-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/myfaces-api/myfaces-api-2.2.14.ebuild b/dev-java/myfaces-api/myfaces-api-2.2.14.ebuild
deleted file mode 100644
index d5da5cc0cf63..000000000000
--- a/dev-java/myfaces-api/myfaces-api-2.2.14.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="Apache MyFaces API - Core package"
-HOMEPAGE="https://myfaces.apache.org/"
-SRC_URI="https://repo1.maven.org/maven2/org/apache/myfaces/core/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="
- dev-java/cdi-api:1.2
- dev-java/javax-inject:0
- dev-java/tomcat-jstl-spec:0
- dev-java/validation-api:1.0
- dev-java/tomcat-servlet-api:3.0
- dev-java/myfaces-builder-annotations:0
- "
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8
- app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="
- cdi-api-1.2
- javax-inject
- tomcat-jstl-spec
- validation-api-1.0
- tomcat-servlet-api-3.0
- myfaces-builder-annotations
-"
diff --git a/dev-java/myfaces-builder-annotations/Manifest b/dev-java/myfaces-builder-annotations/Manifest
deleted file mode 100644
index 29c6740f21f1..000000000000
--- a/dev-java/myfaces-builder-annotations/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST myfaces-builder-annotations-1.0.9-sources.jar 43051 BLAKE2B 72ea55574c863965465189fb38abfbefed51aec8b260d041b1cbfd8cd97bcdacbf8d2cafcd8589863a2c54f9e6eea7a0858abe35f91a75b160ad23c0a824fac0 SHA512 09bf3f9faaaae0545544b2195c8070689431bf28497afc9e317010243617137528a61be82f47123237e114b1a7f5f174a5e2cc2190abdff8beb5188e38feec04
diff --git a/dev-java/myfaces-builder-annotations/metadata.xml b/dev-java/myfaces-builder-annotations/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/myfaces-builder-annotations/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/myfaces-builder-annotations/myfaces-builder-annotations-1.0.9.ebuild b/dev-java/myfaces-builder-annotations/myfaces-builder-annotations-1.0.9.ebuild
deleted file mode 100644
index 10d59c6e606f..000000000000
--- a/dev-java/myfaces-builder-annotations/myfaces-builder-annotations-1.0.9.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache MyFaces API - Builder annotations package"
-HOMEPAGE="http://myfaces.apache.org/"
-SRC_URI="http://repo1.maven.org/maven2/org/apache/myfaces/buildtools/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
diff --git a/dev-java/nachocalendar/Manifest b/dev-java/nachocalendar/Manifest
deleted file mode 100644
index 9d64a38eace1..000000000000
--- a/dev-java/nachocalendar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST nachocalendar-0.23.tar.bz2 412489 BLAKE2B 780189da72bb6c8848ead81896cf19c4e389db7124bf04fdaf25b5d4f1c8023338f2752233491e014e2cea6bf1b59f6381049108a5a5c12ef8b9b2d42efc8b20 SHA512 a7b34d1caab2fb26856bd668a80b7f5c57f192be0729f4f9063600866160c26a4163389bf0136c3f101911f4547c5f474800c8e3d96cc77de6febd589564e98b
diff --git a/dev-java/nachocalendar/metadata.xml b/dev-java/nachocalendar/metadata.xml
deleted file mode 100644
index 3a1015d84eae..000000000000
--- a/dev-java/nachocalendar/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">nachocalendar</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/nachocalendar/nachocalendar-0.23-r1.ebuild b/dev-java/nachocalendar/nachocalendar-0.23-r1.ebuild
deleted file mode 100644
index ba1cc419b4cf..000000000000
--- a/dev-java/nachocalendar/nachocalendar-0.23-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Flexible Calendar component to the Java Platform"
-HOMEPAGE="http://nachocalendar.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}-src-${PV}.tar.bz2 -> ${P}.tar.bz2"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RESTRICT="test"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- source? ( app-arch/zip )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
- rm -rf src/test || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" resources
-}
diff --git a/dev-java/nanoxml/Manifest b/dev-java/nanoxml/Manifest
deleted file mode 100644
index 56e112e3528b..000000000000
--- a/dev-java/nanoxml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST nanoxml-2.2.3.tar.gz 426111 BLAKE2B ac9980502c8c6ec50c6aebd19c0d08319701a508eea2a58847b804dcb3a3a93ca8d41ee1f08f4ec48527e669fc1695ec945933688516775373458ac7b6564895 SHA512 6800b86039cb555efc05644db65c516fb242d4d081ea612969d6cc52a12ffd7571e012a7afe7962cd61c28b0ebb3b9d94af76f20013f3b4dd7d2aacdc552c6fc
diff --git a/dev-java/nanoxml/files/nanoxml-2.2.3-enum.patch b/dev-java/nanoxml/files/nanoxml-2.2.3-enum.patch
deleted file mode 100644
index f3992f845b85..000000000000
--- a/dev-java/nanoxml/files/nanoxml-2.2.3-enum.patch
+++ /dev/null
@@ -1,208 +0,0 @@
---- a/Sources/Java/net/n3/nanoxml/XMLElement.java.orig 2016-03-04 09:21:07.908000000 +0000
-+++ a/Sources/Java/net/n3/nanoxml/XMLElement.java 2016-03-04 09:35:16.283000000 +0000
-@@ -484,9 +484,9 @@
- * @return the child element, or null if no such child was found.
- */
- public IXMLElement getFirstChildNamed(String name) {
-- Enumeration enum = this.children.elements();
-- while (enum.hasMoreElements()) {
-- IXMLElement child = (IXMLElement) enum.nextElement();
-+ Enumeration myEnum = this.children.elements();
-+ while (myEnum.hasMoreElements()) {
-+ IXMLElement child = (IXMLElement) myEnum.nextElement();
- String childName = child.getFullName();
- if ((childName != null) && childName.equals(name)) {
- return child;
-@@ -506,9 +506,9 @@
- */
- public IXMLElement getFirstChildNamed(String name,
- String namespace) {
-- Enumeration enum = this.children.elements();
-- while (enum.hasMoreElements()) {
-- IXMLElement child = (IXMLElement) enum.nextElement();
-+ Enumeration myEnum = this.children.elements();
-+ while (myEnum.hasMoreElements()) {
-+ IXMLElement child = (IXMLElement) myEnum.nextElement();
- String str = child.getName();
- boolean found = (str != null) && (str.equals(name));
- str = child.getNamespace();
-@@ -534,9 +534,9 @@
- */
- public Vector getChildrenNamed(String name) {
- Vector result = new Vector(this.children.size());
-- Enumeration enum = this.children.elements();
-- while (enum.hasMoreElements()) {
-- IXMLElement child = (IXMLElement) enum.nextElement();
-+ Enumeration myEnum = this.children.elements();
-+ while (myEnum.hasMoreElements()) {
-+ IXMLElement child = (IXMLElement) myEnum.nextElement();
- String childName = child.getFullName();
- if ((childName != null) && childName.equals(name)) {
- result.addElement(child);
-@@ -557,9 +557,9 @@
- public Vector getChildrenNamed(String name,
- String namespace) {
- Vector result = new Vector(this.children.size());
-- Enumeration enum = this.children.elements();
-- while (enum.hasMoreElements()) {
-- IXMLElement child = (IXMLElement) enum.nextElement();
-+ Enumeration myEnum = this.children.elements();
-+ while (myEnum.hasMoreElements()) {
-+ IXMLElement child = (IXMLElement) myEnum.nextElement();
- String str = child.getName();
- boolean found = (str != null) && (str.equals(name));
- str = child.getNamespace();
-@@ -585,9 +585,9 @@
- * @return the attribute, or null if the attribute does not exist.
- */
- private XMLAttribute findAttribute(String fullName) {
-- Enumeration enum = this.attributes.elements();
-- while (enum.hasMoreElements()) {
-- XMLAttribute attr = (XMLAttribute) enum.nextElement();
-+ Enumeration myEnum = this.attributes.elements();
-+ while (myEnum.hasMoreElements()) {
-+ XMLAttribute attr = (XMLAttribute) myEnum.nextElement();
- if (attr.getFullName().equals(fullName)) {
- return attr;
- }
-@@ -606,9 +606,9 @@
- */
- private XMLAttribute findAttribute(String name,
- String namespace) {
-- Enumeration enum = this.attributes.elements();
-- while (enum.hasMoreElements()) {
-- XMLAttribute attr = (XMLAttribute) enum.nextElement();
-+ Enumeration myEnum = this.attributes.elements();
-+ while (myEnum.hasMoreElements()) {
-+ XMLAttribute attr = (XMLAttribute) myEnum.nextElement();
- boolean found = attr.getName().equals(name);
- if (namespace == null) {
- found &= (attr.getNamespace() == null);
-@@ -860,9 +860,9 @@
- */
- public Enumeration enumerateAttributeNames() {
- Vector result = new Vector();
-- Enumeration enum = this.attributes.elements();
-- while (enum.hasMoreElements()) {
-- XMLAttribute attr = (XMLAttribute) enum.nextElement();
-+ Enumeration myEnum = this.attributes.elements();
-+ while (myEnum.hasMoreElements()) {
-+ XMLAttribute attr = (XMLAttribute) myEnum.nextElement();
- result.addElement(attr.getFullName());
- }
- return result.elements();
-@@ -897,9 +897,9 @@
- */
- public Properties getAttributes() {
- Properties result = new Properties();
-- Enumeration enum = this.attributes.elements();
-- while (enum.hasMoreElements()) {
-- XMLAttribute attr = (XMLAttribute) enum.nextElement();
-+ Enumeration myEnum = this.attributes.elements();
-+ while (myEnum.hasMoreElements()) {
-+ XMLAttribute attr = (XMLAttribute) myEnum.nextElement();
- result.put(attr.getFullName(), attr.getValue());
- }
- return result;
-@@ -915,9 +915,9 @@
- */
- public Properties getAttributesInNamespace(String namespace) {
- Properties result = new Properties();
-- Enumeration enum = this.attributes.elements();
-- while (enum.hasMoreElements()) {
-- XMLAttribute attr = (XMLAttribute) enum.nextElement();
-+ Enumeration myEnum = this.attributes.elements();
-+ while (myEnum.hasMoreElements()) {
-+ XMLAttribute attr = (XMLAttribute) myEnum.nextElement();
- if (namespace == null) {
- if (attr.getNamespace() == null) {
- result.put(attr.getName(), attr.getValue());
-@@ -1007,9 +1007,9 @@
- if (this.attributes.size() != elt.getAttributeCount()) {
- return false;
- }
-- Enumeration enum = this.attributes.elements();
-- while (enum.hasMoreElements()) {
-- XMLAttribute attr = (XMLAttribute) enum.nextElement();
-+ Enumeration myEnum = this.attributes.elements();
-+ while (myEnum.hasMoreElements()) {
-+ XMLAttribute attr = (XMLAttribute) myEnum.nextElement();
- if (! elt.hasAttribute(attr.getName(), attr.getNamespace())) {
- return false;
- }
---- a/Sources/Java/net/n3/nanoxml/NonValidator.java.orig 2016-03-04 09:36:05.247000000 +0000
-+++ a/Sources/Java/net/n3/nanoxml/NonValidator.java 2016-03-04 09:36:25.195000000 +0000
-@@ -587,10 +587,10 @@
- int lineNr)
- {
- Properties props = (Properties) this.currentElements.pop();
-- Enumeration enum = props.keys();
-+ Enumeration myEnum = props.keys();
-
-- while (enum.hasMoreElements()) {
-- String key = (String) enum.nextElement();
-+ while (myEnum.hasMoreElements()) {
-+ String key = (String) myEnum.nextElement();
- extraAttributes.put(key, props.get(key));
- }
- }
---- a/Sources/Java/net/n3/nanoxml/XMLWriter.java.orig 2016-03-04 09:36:53.616000000 +0000
-+++ a/Sources/Java/net/n3/nanoxml/XMLWriter.java 2016-03-04 09:38:11.868000000 +0000
-@@ -182,10 +182,10 @@
- }
- }
-
-- Enumeration enum = xml.enumerateAttributeNames();
-+ Enumeration myEnum = xml.enumerateAttributeNames();
-
-- while (enum.hasMoreElements()) {
-- String key = (String) enum.nextElement();
-+ while (myEnum.hasMoreElements()) {
-+ String key = (String) myEnum.nextElement();
- int index = key.indexOf(':');
-
- if (index >= 0) {
-@@ -203,10 +203,10 @@
- }
- }
-
-- enum = xml.enumerateAttributeNames();
-+ myEnum = xml.enumerateAttributeNames();
-
-- while (enum.hasMoreElements()) {
-- String key = (String) enum.nextElement();
-+ while (myEnum.hasMoreElements()) {
-+ String key = (String) myEnum.nextElement();
- String value = xml.getAttribute(key, null);
- this.writer.print(" " + key + "=\"");
- this.writeEncoded(value);
-@@ -229,10 +229,10 @@
- writer.println();
- }
-
-- enum = xml.enumerateChildren();
-+ myEnum = xml.enumerateChildren();
-
-- while (enum.hasMoreElements()) {
-- IXMLElement child = (IXMLElement) enum.nextElement();
-+ while (myEnum.hasMoreElements()) {
-+ IXMLElement child = (IXMLElement) myEnum.nextElement();
- this.write(child, prettyPrint, indent + 4,
- collapseEmptyElements);
- }
---- a/Sources/Java/net/n3/nanoxml/StdXMLParser.java.orig 2016-03-04 09:38:44.521000000 +0000
-+++ a/Sources/Java/net/n3/nanoxml/StdXMLParser.java 2016-03-04 09:39:08.028000000 +0000
-@@ -492,10 +492,10 @@
- extraAttributes,
- this.reader.getSystemID(),
- this.reader.getLineNr());
-- Enumeration enum = extraAttributes.keys();
-+ Enumeration myEnum = extraAttributes.keys();
-
-- while (enum.hasMoreElements()) {
-- String key = (String) enum.nextElement();
-+ while (myEnum.hasMoreElements()) {
-+ String key = (String) myEnum.nextElement();
- String value = extraAttributes.getProperty(key);
- attrNames.addElement(key);
- attrValues.addElement(value);
diff --git a/dev-java/nanoxml/files/nanoxml-2.2.3-lite-enum.patch b/dev-java/nanoxml/files/nanoxml-2.2.3-lite-enum.patch
deleted file mode 100644
index 602cd9f87909..000000000000
--- a/dev-java/nanoxml/files/nanoxml-2.2.3-lite-enum.patch
+++ /dev/null
@@ -1,53 +0,0 @@
---- a/Sources/Lite/nanoxml/XMLElement.java.orig 2016-03-04 09:16:52.339000000 +0000
-+++ a/Sources/Lite/nanoxml/XMLElement.java 2016-03-04 09:19:03.213000000 +0000
-@@ -63,8 +63,8 @@
- * The following example shows how to list the attributes of an element:
- * <UL><CODE>
- * XMLElement element = ...;<BR>
-- * Enumeration enum = element.getAttributeNames();<BR>
-- * while (enum.hasMoreElements()) {<BR>
-+ * Enumeration myEnum = element.getAttributeNames();<BR>
-+ * while (myEnum.hasMoreElements()) {<BR>
- * &nbsp;&nbsp;&nbsp;&nbsp;String key = (String) enum.nextElement();<BR>
- * &nbsp;&nbsp;&nbsp;&nbsp;String value = element.getStringAttribute(key);<BR>
- * &nbsp;&nbsp;&nbsp;&nbsp;System.out.println(key + " = " + value);<BR>
-@@ -478,9 +478,9 @@
- this.children = new Vector();
- this.entities = entities;
- this.lineNr = 0;
-- Enumeration enum = this.entities.keys();
-- while (enum.hasMoreElements()) {
-- Object key = enum.nextElement();
-+ Enumeration myEnum = this.entities.keys();
-+ while (myEnum.hasMoreElements()) {
-+ Object key = myEnum.nextElement();
- Object value = this.entities.get(key);
- if (value instanceof String) {
- value = ((String) value).toCharArray();
-@@ -2168,10 +2168,10 @@
- writer.write('<');
- writer.write(this.name);
- if (! this.attributes.isEmpty()) {
-- Enumeration enum = this.attributes.keys();
-- while (enum.hasMoreElements()) {
-+ Enumeration myEnum = this.attributes.keys();
-+ while (myEnum.hasMoreElements()) {
- writer.write(' ');
-- String key = (String) enum.nextElement();
-+ String key = (String) myEnum.nextElement();
- String value = (String) this.attributes.get(key);
- writer.write(key);
- writer.write('='); writer.write('"');
-@@ -2189,9 +2189,9 @@
- writer.write('/'); writer.write('>');
- } else {
- writer.write('>');
-- Enumeration enum = this.enumerateChildren();
-- while (enum.hasMoreElements()) {
-- XMLElement child = (XMLElement) enum.nextElement();
-+ Enumeration myEnum = this.enumerateChildren();
-+ while (myEnum.hasMoreElements()) {
-+ XMLElement child = (XMLElement) myEnum.nextElement();
- child.write(writer);
- }
- writer.write('<'); writer.write('/');
diff --git a/dev-java/nanoxml/metadata.xml b/dev-java/nanoxml/metadata.xml
deleted file mode 100644
index 4c006a5b2b06..000000000000
--- a/dev-java/nanoxml/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">nanoxml</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/nanoxml/nanoxml-2.2.3-r4.ebuild b/dev-java/nanoxml/nanoxml-2.2.3-r4.ebuild
deleted file mode 100644
index fb78db838106..000000000000
--- a/dev-java/nanoxml/nanoxml-2.2.3-r4.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-MY_P="NanoXML-${PV}"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="NanoXML is a small non-validating parser for Java"
-HOMEPAGE="http://nanoxml.sourceforge.net/"
-SRC_URI="http://pkgs.fedoraproject.org/repo/pkgs/nanoxml/${MY_P}.tar.gz/357c7136417ea996cf714278ea84f2df/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="ZLIB"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-CDEPEND="dev-java/sax:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="sax"
-
-JAVA_SRC_DIR="Sources"
-
-PATCHES=(
- "${FILESDIR}"/"${P}-lite-enum.patch"
- "${FILESDIR}"/"${P}-enum.patch"
-)
-
-src_prepare() {
- default
- java-pkg_clean
- rm -rf Test || die
-}
diff --git a/dev-java/netty-buffer/Manifest b/dev-java/netty-buffer/Manifest
deleted file mode 100644
index 32835590c2a5..000000000000
--- a/dev-java/netty-buffer/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST netty-4.0.21.Final.tar.gz 960489 BLAKE2B ef279fcc2d56baaee62841ad973702c585d5450a45e513ca6beafa295943878b88ed81b8a167091e77aa9f26bccbdcea4138230850dca57321f1241c4ff56d0b SHA512 5d432e9e433c22b82e67ed3463c6982ca95c2ad823165e1ca9a5046e598878f06aac4221be235f2bda15edfdb22028f2a4f74fb37d431f24a2636e4ec60fae74
-DIST netty-4.0.36.Final.tar.gz 1267617 BLAKE2B 351b1f73b1a3c60fd843767254ae57e74d74cdfe570828b1a2e7aea55a203866ae4e232bad285c3937d8f2dc7689534ffb180fcd345c8cf10bced7048ec58ec3 SHA512 b222205963366d5a0f5539c7029dc47edea8d532fca05d169dfe12dbedf956959ba422a22254b09622db428b517da0fd0e58198d11e66193abdb6050481ccbe6
diff --git a/dev-java/netty-buffer/files/netty-buffer-4.0.21-build.xml b/dev-java/netty-buffer/files/netty-buffer-4.0.21-build.xml
deleted file mode 100644
index 376c30458ecd..000000000000
--- a/dev-java/netty-buffer/files/netty-buffer-4.0.21-build.xml
+++ /dev/null
@@ -1,229 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/15/14 7:12 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="netty-buffer-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="netty-buffer-4.0.21.Final"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="true"
- debug="true"
- optimize="true"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="true"
- memoryInitialSize="1024m"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="true"
- debug="true"
- optimize="true"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="true"
- memoryInitialSize="1024m"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/*Test*.java"/>
- <include name="**/*Benchmark*.java"/>
- <exclude name="**/Abstract*"/>
- <exclude name="**/TestUtil*"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/Abstract*"/>
- <exclude name="**/TestUtil*"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="false"
- use="true"
- author="false"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="true"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-</project>
diff --git a/dev-java/netty-buffer/metadata.xml b/dev-java/netty-buffer/metadata.xml
deleted file mode 100644
index 3a4bd0130d1b..000000000000
--- a/dev-java/netty-buffer/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">netty/netty</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/netty-buffer/netty-buffer-4.0.21.ebuild b/dev-java/netty-buffer/netty-buffer-4.0.21.ebuild
deleted file mode 100644
index 48cbb2f8942c..000000000000
--- a/dev-java/netty-buffer/netty-buffer-4.0.21.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="netty"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Async event-driven framework for high performance network applications"
-HOMEPAGE="https://netty.io/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_P}.Final.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/${MY_PN}-common:0"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- test? (
- dev-java/ant-core:0
- dev-java/easymock:3.2
- dev-java/hamcrest-library:1.3
- dev-java/junit:4
- )"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}.Final/${PN/${MY_PN}-}"
-
-EANT_BUILD_TARGET="package"
-EANT_GENTOO_CLASSPATH="${MY_PN}-common"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},ant-core,easymock-3.2,hamcrest-library-1.3,junit-4"
-EANT_TEST_EXTRA_ARGS+=" -Djunit.present=true"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-src_test() {
- ANT_TASKS="ant-junit" java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${MY_PN}-*.jar ${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/netty-buffer/netty-buffer-4.0.36.ebuild b/dev-java/netty-buffer/netty-buffer-4.0.36.ebuild
deleted file mode 100644
index b8f079b88e59..000000000000
--- a/dev-java/netty-buffer/netty-buffer-4.0.36.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="netty"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Async event-driven framework for high performance network applications"
-HOMEPAGE="https://netty.io/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_P}.Final.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="~dev-java/${MY_PN}-common-${PV}:0"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}
- test? (
- dev-java/easymock:3.2
- dev-java/hamcrest-core:1.3
- dev-java/hamcrest-library:1.3
- dev-java/junit:4
- )"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}.Final/${PN/${MY_PN}-}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="${MY_PN}-common"
-
-src_test() {
- cd src/test/java || die
-
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars --with-dependencies ${JAVA_GENTOO_CLASSPATH},easymock-3.2,hamcrest-core-1.3,hamcrest-library-1.3,junit-4)"
- local TESTS=$(find * -name "*Test.java" ! -name "Abstract*")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/netty-common/Manifest b/dev-java/netty-common/Manifest
deleted file mode 100644
index 32835590c2a5..000000000000
--- a/dev-java/netty-common/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST netty-4.0.21.Final.tar.gz 960489 BLAKE2B ef279fcc2d56baaee62841ad973702c585d5450a45e513ca6beafa295943878b88ed81b8a167091e77aa9f26bccbdcea4138230850dca57321f1241c4ff56d0b SHA512 5d432e9e433c22b82e67ed3463c6982ca95c2ad823165e1ca9a5046e598878f06aac4221be235f2bda15edfdb22028f2a4f74fb37d431f24a2636e4ec60fae74
-DIST netty-4.0.36.Final.tar.gz 1267617 BLAKE2B 351b1f73b1a3c60fd843767254ae57e74d74cdfe570828b1a2e7aea55a203866ae4e232bad285c3937d8f2dc7689534ffb180fcd345c8cf10bced7048ec58ec3 SHA512 b222205963366d5a0f5539c7029dc47edea8d532fca05d169dfe12dbedf956959ba422a22254b09622db428b517da0fd0e58198d11e66193abdb6050481ccbe6
diff --git a/dev-java/netty-common/metadata.xml b/dev-java/netty-common/metadata.xml
deleted file mode 100644
index 3a4bd0130d1b..000000000000
--- a/dev-java/netty-common/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">netty/netty</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/netty-common/netty-common-4.0.21.ebuild b/dev-java/netty-common/netty-common-4.0.21.ebuild
deleted file mode 100644
index 8af40d85bfea..000000000000
--- a/dev-java/netty-common/netty-common-4.0.21.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="netty"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Async event-driven framework for high performance network applications"
-HOMEPAGE="https://netty.io/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_P}.Final.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/commons-logging:0
- dev-java/javassist:3
- dev-java/log4j:0
- dev-java/slf4j-nop:0
- dev-java/slf4j-api:0"
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}.Final/${PN/${MY_PN}-}"
-
-JAVA_GENTOO_CLASSPATH="
- log4j
- slf4j-api
- slf4j-nop
- javassist-3
- commons-logging"
-
-JAVA_SRC_DIR="src/main/java"
-
-# Tests fail as they might need logging to be properly set up and/or compatible.
-#
-# junit.framework.AssertionFailedError: expected:<[foo]> but was:<[NOP]>
-# at io.netty.util.internal.logging.Slf4JLoggerFactoryTest.testCreation
-RESTRICT="test"
diff --git a/dev-java/netty-common/netty-common-4.0.36.ebuild b/dev-java/netty-common/netty-common-4.0.36.ebuild
deleted file mode 100644
index 7748f7f898eb..000000000000
--- a/dev-java/netty-common/netty-common-4.0.36.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="netty"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Async event-driven framework for high performance network applications"
-HOMEPAGE="https://netty.io/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_P}.Final.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="dev-java/commons-logging:0
- dev-java/javassist:3
- dev-java/log4j:0
- dev-java/slf4j-api:0"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}
- test? (
- dev-java/asm:4
- dev-java/cglib:3
- dev-java/easymock:3.2
- dev-java/hamcrest-core:1.3
- dev-java/hamcrest-library:1.3
- dev-java/junit:4
- dev-java/mockito:0
- dev-java/objenesis:0
- dev-java/slf4j-simple:0
- )"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}.Final/${PN/${MY_PN}-}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="commons-logging,javassist-3,log4j,slf4j-api"
-
-java_prepare() {
- # Needs Mockito 1.10.
- rm -v src/test/java/io/netty/util/concurrent/PromiseCombinerTest.java || die
-}
-
-src_test() {
- cd src/test/java || die
-
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars --with-dependencies ${JAVA_GENTOO_CLASSPATH},asm-4,cglib-3,easymock-3.2,hamcrest-core-1.3,hamcrest-library-1.3,junit-4,mockito,objenesis,slf4j-simple)"
- local TESTS=$(find * -name "*Test.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/netty-tcnative/Manifest b/dev-java/netty-tcnative/Manifest
deleted file mode 100644
index 667a99fb65c8..000000000000
--- a/dev-java/netty-tcnative/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST netty-tcnative-1.1.33.Fork15.tar.gz 186153 BLAKE2B 3d769a04e659c09aa32059fc2a2eede84f6105469de33ef7d26df436de6a1f6290a6640268934f63f77a969eb6aa024651380cca6dc69099c4016ed61f7d5310 SHA512 592c70a926473a4903b704be920aac1a4fd5a032a8d821a77800b6922b374cb28decf496a65ef62867c027dbac93f0e563e9bb4ecf6659bc70cc33663bb979f5
-DIST netty-tcnative-parent-2.0.31.Final.tar.gz 175283 BLAKE2B 421b8228fb30da7f2983771e3c20e2442ae0c3ef8d12a139a7c01cb43056e916c889294622dbde04443382965750db0195dc667deb34ffcce998ef6381b54eb3 SHA512 0b11d6ec82636e8db09142d345df4b50dbbb7b7a2543f8e4e4d8793205fb22f2f631f454f70b78e93d24a9aeebe55098635c0e9d7a0daf1786b63fe3580aa236
diff --git a/dev-java/netty-tcnative/metadata.xml b/dev-java/netty-tcnative/metadata.xml
deleted file mode 100644
index ab6637a0c595..000000000000
--- a/dev-java/netty-tcnative/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">netty/netty-tcnative</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/netty-tcnative/netty-tcnative-1.1.33.15.ebuild b/dev-java/netty-tcnative/netty-tcnative-1.1.33.15.ebuild
deleted file mode 100644
index 5facd9153492..000000000000
--- a/dev-java/netty-tcnative/netty-tcnative-1.1.33.15.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit autotools versionator java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-$(replace_version_separator 3 .Fork)"
-
-DESCRIPTION="Fork of Tomcat Native that incorporates various patches"
-HOMEPAGE="https://netty.io/wiki/forked-tomcat-native.html"
-SRC_URI="https://github.com/netty/netty-tcnative/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-libs/apr:1=
- dev-libs/openssl:0="
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- app-arch/unzip
- dev-java/maven-hawtjni-plugin:0"
-
-S="${WORKDIR}/${PN}-${MY_P}"
-JAVA_SRC_DIR="${S}/openssl-dynamic/src/main/java"
-NATIVE_DIR="${S}/openssl-dynamic/src/main/native-package"
-
-java_prepare() {
- cd "${NATIVE_DIR}" || die
- ln -sn ../c src || die
- ln -sn . project-template || die
-
- # Provides missing m4 files and Makefile.am template.
- unzip -n $(java-pkg_getjars --build-only maven-hawtjni-plugin) project-template/\* || die
-
- sed -i \
- -e "s:@PROJECT_NAME@:${PN}:g" \
- -e "s:@PROJECT_NAME_UNDER_SCORE@:${PN//-/_}:g" \
- -e "s:@PROJECT_SOURCES@:$(echo src/*.c):g" \
- Makefile.am || die
-
- # Avoid dummy version and tedious symlink.
- sed -i "s/-release @VERSION@/-avoid-version/g" configure.ac || die
-
- eautoreconf
-}
-
-src_configure() {
- cd "${NATIVE_DIR}" || die
- econf --with-apr=/usr/bin/apr-1-config --with-ssl=/usr
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- emake -C "${NATIVE_DIR}"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_doso "${NATIVE_DIR}"/.libs/lib${PN}.so
- dodoc README.md
-}
diff --git a/dev-java/netty-tcnative/netty-tcnative-2.0.31.ebuild b/dev-java/netty-tcnative/netty-tcnative-2.0.31.ebuild
deleted file mode 100644
index da142b72aac4..000000000000
--- a/dev-java/netty-tcnative/netty-tcnative-2.0.31.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-
-inherit autotools java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-parent-${PV}.Final"
-MAVEN_ID="io.netty:netty-tcnative:2.0.31"
-
-DESCRIPTION="Fork of Tomcat Native that incorporates various patches"
-HOMEPAGE="https://netty.io/wiki/forked-tomcat-native.html"
-SRC_URI="https://github.com/netty/netty-tcnative/archive/${MY_P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-libs/apr:1=
- dev-libs/openssl:0="
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8
- app-arch/unzip
- dev-java/maven-hawtjni-plugin:0"
-
-S="${WORKDIR}/${PN}-${MY_P}"
-JAVA_SRC_DIR="${S}/openssl-dynamic/src/main/java"
-NATIVE_DIR="${S}/openssl-dynamic/src/main/native-package"
-
-src_prepare() {
- default
-
- cd "${NATIVE_DIR}" || die
- ln -sn ../c src || die
- ln -sn . project-template || die
-
- # Provides missing m4 files and Makefile.am template.
- unzip -n $(java-pkg_getjars --build-only maven-hawtjni-plugin) project-template/\* || die
-
- sed -i \
- -e "s:@PROJECT_NAME@:${PN}:g" \
- -e "s:@PROJECT_NAME_UNDER_SCORE@:${PN//-/_}:g" \
- -e "s:@PROJECT_SOURCES@:$(echo src/*.c):g" \
- Makefile.am || die
-
- # Avoid dummy version and tedious symlink.
- sed -i "s/-release @VERSION@/-avoid-version/g" configure.ac || die
-
- eautoreconf
-}
-
-src_configure() {
- cd "${NATIVE_DIR}" || die
- econf --with-apr=/usr/bin/apr-1-config --with-ssl=/usr
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- emake -C "${NATIVE_DIR}"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_doso "${NATIVE_DIR}"/.libs/lib${PN}.so
- dodoc README.md
-}
diff --git a/dev-java/netty-transport/Manifest b/dev-java/netty-transport/Manifest
deleted file mode 100644
index 32835590c2a5..000000000000
--- a/dev-java/netty-transport/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST netty-4.0.21.Final.tar.gz 960489 BLAKE2B ef279fcc2d56baaee62841ad973702c585d5450a45e513ca6beafa295943878b88ed81b8a167091e77aa9f26bccbdcea4138230850dca57321f1241c4ff56d0b SHA512 5d432e9e433c22b82e67ed3463c6982ca95c2ad823165e1ca9a5046e598878f06aac4221be235f2bda15edfdb22028f2a4f74fb37d431f24a2636e4ec60fae74
-DIST netty-4.0.36.Final.tar.gz 1267617 BLAKE2B 351b1f73b1a3c60fd843767254ae57e74d74cdfe570828b1a2e7aea55a203866ae4e232bad285c3937d8f2dc7689534ffb180fcd345c8cf10bced7048ec58ec3 SHA512 b222205963366d5a0f5539c7029dc47edea8d532fca05d169dfe12dbedf956959ba422a22254b09622db428b517da0fd0e58198d11e66193abdb6050481ccbe6
diff --git a/dev-java/netty-transport/files/netty-transport-4.0.21-build.xml b/dev-java/netty-transport/files/netty-transport-4.0.21-build.xml
deleted file mode 100644
index 4f033f48124a..000000000000
--- a/dev-java/netty-transport/files/netty-transport-4.0.21-build.xml
+++ /dev/null
@@ -1,229 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/15/14 7:12 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="netty-transport-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="netty-transport-4.0.21.Final"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="true"
- debug="true"
- optimize="true"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="true"
- memoryInitialSize="1024m"
- source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="true"
- debug="true"
- optimize="true"
- deprecation="true"
- target="1.6"
- verbose="false"
- fork="true"
- memoryInitialSize="1024m"
- source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/*Test*.java"/>
- <include name="**/*Benchmark*.java"/>
- <exclude name="**/Abstract*"/>
- <exclude name="**/TestUtil*"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/Abstract*"/>
- <exclude name="**/TestUtil*"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="false"
- use="true"
- author="false"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="true"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-</project>
diff --git a/dev-java/netty-transport/metadata.xml b/dev-java/netty-transport/metadata.xml
deleted file mode 100644
index 3a4bd0130d1b..000000000000
--- a/dev-java/netty-transport/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">netty/netty</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/netty-transport/netty-transport-4.0.21-r1.ebuild b/dev-java/netty-transport/netty-transport-4.0.21-r1.ebuild
deleted file mode 100644
index 0460b4e47566..000000000000
--- a/dev-java/netty-transport/netty-transport-4.0.21-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="netty"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Async event-driven framework for high performance network applications"
-HOMEPAGE="https://netty.io/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_P}.Final.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/${MY_PN}-buffer:0
- dev-java/${MY_PN}-common:0"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}.Final/${PN/${MY_PN}-}"
-
-EANT_BUILD_TARGET="package"
-EANT_GENTOO_CLASSPATH="${MY_PN}-buffer,${MY_PN}-common"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-JAVA_ANT_ENCODING="UTF-8"
-
-# error: package ch.qos.logback.classic does not exist
-RESTRICT="test"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-src_install() {
- java-pkg_newjar target/${MY_PN}-*.jar ${PN}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/netty-transport/netty-transport-4.0.36.ebuild b/dev-java/netty-transport/netty-transport-4.0.36.ebuild
deleted file mode 100644
index 0c0f9456d7e5..000000000000
--- a/dev-java/netty-transport/netty-transport-4.0.36.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="netty"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Async event-driven framework for high performance network applications"
-HOMEPAGE="https://netty.io/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/${MY_P}.Final.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="~dev-java/${MY_PN}-buffer-${PV}:0
- ~dev-java/${MY_PN}-common-${PV}:0"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}
- test? (
- dev-java/easymock:3.2
- dev-java/hamcrest-core:1.3
- dev-java/hamcrest-library:1.3
- dev-java/junit:4
- dev-java/mockito:0
- dev-java/objenesis:0
- )"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}.Final/${PN/${MY_PN}-}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="${MY_PN}-buffer,${MY_PN}-common"
-
-java_prepare() {
- # Need to package "classic" component of logback.
- rm -v src/test/java/io/netty/channel/SingleThreadEventLoopTest.java || die
-}
-
-src_test() {
- ewarn "If the hostname does not resolve to this system then these tests will"
- ewarn "fail. It is currently set to: $(uname -n)"
-
- cd src/test/java || die
-
- # --with-dependencies breaks while mockito needs hamcrest-core:0.
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars ${JAVA_GENTOO_CLASSPATH},easymock-3.2,hamcrest-core-1.3,hamcrest-library-1.3,junit-4,mockito,objenesis)"
- local TESTS=$(find * -name "*Test.java" ! -name "Abstract*" ! -name "Base*")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -cp "${CP}" -d . $(find * -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/neuroph/Manifest b/dev-java/neuroph/Manifest
deleted file mode 100644
index c5e02151f7a7..000000000000
--- a/dev-java/neuroph/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST neuroph_2.4_nb.zip 20050658 BLAKE2B a05e9feeb7c0dd8dd505cc9f85f33f40058b26521d9a80b00991ed84cb150240caedf6c00bcf4a7562f5559a6e5efeac7d150017a17c882e2119e6c3f4b35e10 SHA512 9c675f0d2194c5c1b822af8adffd8120f97962d22eb8e99561cfc78f2d87bb76e73d335c1c8ee5278964f3717bfde41c8ae91527e78efca63f5914529ae6d61a
diff --git a/dev-java/neuroph/metadata.xml b/dev-java/neuroph/metadata.xml
deleted file mode 100644
index 34e441f73ac8..000000000000
--- a/dev-java/neuroph/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">neuroph</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/neuroph/neuroph-2.4.ebuild b/dev-java/neuroph/neuroph-2.4.ebuild
deleted file mode 100644
index c2bd142ce233..000000000000
--- a/dev-java/neuroph/neuroph-2.4.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A lightweight Java neural network framework"
-HOMEPAGE="http://neuroph.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}_nb.zip"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}/${PN}_${PV}_nb/${PN}"
-
-java_prepare() {
- find "${WORKDIR}" -iname '*.jar' -delete
- find "${WORKDIR}" -iname '*.class' -delete
-}
-
-EANT_BUILD_XML="nbbuild.xml"
-EANT_BUILD_TARGET="jar"
-EANT_DOC_TARGET="javadoc"
-EANT_EXTRA_ARGS="-Djavadoc.additionalparam=\"\""
-
-src_install() {
- java-pkg_dojar "dist/${PN}.jar"
- use doc && java-pkg_dojavadoc dist/javadoc
- use source && java-pkg_dosrc src
-}
diff --git a/dev-java/objenesis-test/Manifest b/dev-java/objenesis-test/Manifest
deleted file mode 100644
index b705a57d89bb..000000000000
--- a/dev-java/objenesis-test/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST objenesis-3.2.tar.gz 123629 BLAKE2B d875224d7a9fcf6173787edaca35f58f72d6c85ee443831be8050170ba826e8a155c7983c62ef5d01a1bb8331943dd6da5cb50eefb87cc0c7d3db540b01fcac3 SHA512 8f0bf9449191bce1823be0cbae85438edf595bde0483bb2fb4415a880b6715ae60826473bd5ee15789a7d0638932878dbdaaf7b42a6d582aa7bbf09124e97e3b
diff --git a/dev-java/objenesis-test/metadata.xml b/dev-java/objenesis-test/metadata.xml
deleted file mode 100644
index 36a0882f4080..000000000000
--- a/dev-java/objenesis-test/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">easymock/objenesis</remote-id>
- <bugs-to>https://github.com/easymock/objenesis/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/objenesis-test/objenesis-test-3.2.ebuild b/dev-java/objenesis-test/objenesis-test-3.2.ebuild
deleted file mode 100644
index a4285de9bf73..000000000000
--- a/dev-java/objenesis-test/objenesis-test-3.2.ebuild
+++ /dev/null
@@ -1,32 +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 objenesis-3.2/test/pom.xml --download-uri https://github.com/easymock/objenesis/archive/refs/tags/3.2.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild objenesis-test-3.2.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.objenesis:objenesis-test:3.2"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Test library for Objenesis library"
-HOMEPAGE="http://objenesis.org"
-SRC_URI="https://github.com/easymock/objenesis/archive/refs/tags/${PV}.tar.gz -> objenesis-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-
-DEPEND="
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="objenesis-${PV}/test/src/main/java"
diff --git a/dev-java/objenesis/Manifest b/dev-java/objenesis/Manifest
index b705a57d89bb..955ff2825c1c 100644
--- a/dev-java/objenesis/Manifest
+++ b/dev-java/objenesis/Manifest
@@ -1 +1 @@
-DIST objenesis-3.2.tar.gz 123629 BLAKE2B d875224d7a9fcf6173787edaca35f58f72d6c85ee443831be8050170ba826e8a155c7983c62ef5d01a1bb8331943dd6da5cb50eefb87cc0c7d3db540b01fcac3 SHA512 8f0bf9449191bce1823be0cbae85438edf595bde0483bb2fb4415a880b6715ae60826473bd5ee15789a7d0638932878dbdaaf7b42a6d582aa7bbf09124e97e3b
+DIST objenesis-3.3.tar.gz 125400 BLAKE2B 36cff7cb5a2dca9a81f3ca07d56995f68d9c61c9d2b7caeac5f87bb13da02b0494053927e2221c776edef0bafb862f5c97dfc0e79cf991c6c970b5b9206a5aa3 SHA512 786fe0d2d1dba0f006d5218101578d8fd23616765f5cdb4df190d138fd10dd675b9189887c27a40b63f09ed5e1dac1324b2936c7ac24a655e6f63d53b9cd7c01
diff --git a/dev-java/objenesis/metadata.xml b/dev-java/objenesis/metadata.xml
index 36a0882f4080..cb2dde5b7ecf 100644
--- a/dev-java/objenesis/metadata.xml
+++ b/dev-java/objenesis/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/objenesis/objenesis-3.2.ebuild b/dev-java/objenesis/objenesis-3.2.ebuild
deleted file mode 100644
index 893f78715071..000000000000
--- a/dev-java/objenesis/objenesis-3.2.ebuild
+++ /dev/null
@@ -1,44 +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 objenesis-3.2/main/pom.xml --download-uri https://github.com/easymock/objenesis/archive/refs/tags/3.2.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild objenesis-3.2.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.objenesis:objenesis:3.2"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A library for instantiating Java objects"
-HOMEPAGE="http://objenesis.org/objenesis"
-SRC_URI="https://github.com/easymock/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-
-# Compile dependencies
-# POM: ${P}/main/pom.xml
-# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
-# test? org.objenesis:objenesis-test:3.2 -> >=dev-java/objenesis-test-3.2:0
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- >=dev-java/objenesis-test-3.2:0
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="${P}/main/src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4,objenesis-test"
-JAVA_TEST_SRC_DIR="${P}/main/src/test/java"
diff --git a/dev-java/objenesis/objenesis-3.3.ebuild b/dev-java/objenesis/objenesis-3.3.ebuild
new file mode 100644
index 000000000000..7ce789fc392d
--- /dev/null
+++ b/dev-java/objenesis/objenesis-3.3.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# No tests since we don't have junit-jupiter
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.objenesis:objenesis:3.3"
+# JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A library for instantiating Java objects"
+HOMEPAGE="http://objenesis.org/"
+SRC_URI="https://github.com/easymock/objenesis/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${P}"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="main/src/test/java"
+
+src_compile() {
+# if use test; then
+# einfo "Compiling objenesis-test"
+# JAVA_AUTOMATIC_MODULE_NAME="org.objenesis.test"
+# JAVA_SRC_DIR="test/src/main/java"
+# JAVA_JAR_FILENAME="objenesis-test.jar"
+# java-pkg-simple_src_compile
+# JAVA_GENTOO_CLASSPATH_EXTRA+=":objenesis-test.jar"
+# rm -r target || die
+# fi
+
+ einfo "Compiling objenesis"
+ JAVA_SRC_DIR="main/src/main/java"
+ JAVA_JAR_FILENAME="objenesis.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="org.objenesis"
+ java-pkg-simple_src_compile
+}
diff --git a/dev-java/offo-hyphenation/Manifest b/dev-java/offo-hyphenation/Manifest
deleted file mode 100644
index 22b31f2601f9..000000000000
--- a/dev-java/offo-hyphenation/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST offo-hyphenation_v2.0.zip 858046 BLAKE2B 193ef92fd55a4c5e8f840d29f96417a725e678e5bd03473ff22a116894b94a40aee8b12ef7a0534020746f21db8304a2840ce09417f2182259c78a03109e63ad SHA512 8a907a38dcb54ef1578973293efa2fcd771e3c77faedd537381f04f6f543b3f04ff8b8f96fb692274e9fe9cbdb2d3d8e5c7b29caae412271d9d8c023c079421b
diff --git a/dev-java/offo-hyphenation/metadata.xml b/dev-java/offo-hyphenation/metadata.xml
deleted file mode 100644
index eb0f3a26bd42..000000000000
--- a/dev-java/offo-hyphenation/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">offo</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/offo-hyphenation/offo-hyphenation-2.0.ebuild b/dev-java/offo-hyphenation/offo-hyphenation-2.0.ebuild
deleted file mode 100644
index a70c0911e6b8..000000000000
--- a/dev-java/offo-hyphenation/offo-hyphenation-2.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-DESCRIPTION="Hyphenation patterns for Apache Fop"
-HOMEPAGE="http://offo.sourceforge.net"
-SRC_URI="mirror://sourceforge/offo/${PN}_v${PV}.zip"
-LICENSE="GPL-2 Apache-2.0 LPPL-1.3b TeX"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="doc"
-
-RDEPEND=""
-DEPEND="app-arch/unzip"
-
-S="${WORKDIR}/${PN}"
-
-src_compile() { :; }
-
-src_install() {
- insinto /usr/share/${PN}/
- doins -r hyph
-
- if use doc; then
- dohtml -r images skin i*.html
- fi
-}
-
-pkg_postinst() {
- elog "This package installs hyphenation files for several languages"
- elog "into /usr/share/${PN}/hyph"
- elog "Check /usr/share/doc/${PF}/html/licenses.html for each file's license."
- elog "To compile the patterns, install dev-java/fop with USE=hyphenation."
- elog "Alternatively, use the uncompiled patterns via the <hyphenation-base>"
- elog "configuration option. See the documentation for more details."
-}
diff --git a/dev-java/ognl/Manifest b/dev-java/ognl/Manifest
deleted file mode 100644
index 96f282ad438a..000000000000
--- a/dev-java/ognl/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST OGNL_3_0_8.tar.gz 3564389 BLAKE2B c39c5d4e51727d0a0b12b3908953ff01a9dd6458a5d6b6b6c654a860e4c0d1f4414fb3b79288c4ef0a86fdcdcbf3666c9af4c05a39ba85ff593c021319e6fb68 SHA512 79ca457077f344da16677e56f8e0ae809d2af85015e1c4bc17a3eef4dd25c01738fdbcac8a9397b83251b48164404df161d60e20d43868e1ff32e9bb388ef4b6
-DIST osbuild.xml 5939 BLAKE2B 7d34f6713a53cddc17d526af7bf30fe03c13897fad4e02b87454811a1943f7aca03abd9fd889ed3566484252d3076007595fd4c85a0c9b3fea823b5ab18acfda SHA512 6b66b7b27073fd6b707b71fb2da7017602edd85de52e767ecb8d8931fdd96811b04d9ec0ac9ec1cb32daf03d43610f760471959cf7211b1921a92d5f5a070416
diff --git a/dev-java/ognl/metadata.xml b/dev-java/ognl/metadata.xml
deleted file mode 100644
index 88611f363347..000000000000
--- a/dev-java/ognl/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jkuhnert/ognl</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/ognl/ognl-3.0.8.ebuild b/dev-java/ognl/ognl-3.0.8.ebuild
deleted file mode 100644
index c3d11389846b..000000000000
--- a/dev-java/ognl/ognl-3.0.8.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Object-Graph Navigation Language: get/set properties of objects"
-HOMEPAGE="http://www.ognl.org/"
-SRC_URI="https://github.com/jkuhnert/ognl/archive/OGNL_${PV//./_}.tar.gz
- https://ognl.dev.java.net/source/browse/*checkout*/ognl/osbuild.xml"
-
-LICENSE="Apache-1.1"
-SLOT="3.0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/javassist:3"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PN}-OGNL_${PV//./_}"
-
-java_prepare() {
- java-pkg_clean
-
- cp "${DISTDIR}/osbuild.xml" "${S}/" || die
-
- sed "s/\(name=\"compile.version\" value=\"\)1.3\"/\1$(java-pkg_get-source)\"/" \
- -i osbuild.xml || die
-
- cd lib/build || die
-
- java-pkg_jar-from javassist-3
-}
-
-EANT_DOC_TARGET="javadocs"
-
-src_install() {
- java-pkg_newjar build/ognl-2.7.2.jar "${PN}.jar"
-
- use doc && java-pkg_dohtml -r dist/docs/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/okio/Manifest b/dev-java/okio/Manifest
deleted file mode 100644
index 458c68ce017a..000000000000
--- a/dev-java/okio/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST okio-1.11.0.tar.gz 95398 BLAKE2B 6d31d61f1ac0d34289e601bdf4a35768f81ada35883958d0a7fddd6ba9fcbbe36ca75f87ad1879a207d3b587d22a096b41945102c5c8829b094e9954901fe87e SHA512 12b6d63cf037be2679c01e71bd6318ea1f8bd19f7f2a38f58c210d6bbb4650db6ba5aa527808c109ca02af2ccd663dc31102dd1b8ea6c6ce326dd7be7c1d8071
diff --git a/dev-java/okio/files/okio-remove-maven-animal-jre.patch b/dev-java/okio/files/okio-remove-maven-animal-jre.patch
deleted file mode 100644
index 0e5e5d62880e..000000000000
--- a/dev-java/okio/files/okio-remove-maven-animal-jre.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- okio/src/main/java/okio/DeflaterSink.java 2016-08-22 12:01:19.828823222 -0500
-+++ okio/src/main/java/okio/DeflaterSink.java 2016-08-22 12:01:25.039823574 -0500
-@@ -17,7 +17,6 @@
-
- import java.io.IOException;
- import java.util.zip.Deflater;
--import org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement;
-
- import static okio.Util.checkOffsetAndCount;
-
-@@ -79,7 +78,6 @@
- }
- }
-
-- @IgnoreJRERequirement
- private void deflate(boolean syncFlush) throws IOException {
- Buffer buffer = sink.buffer();
- while (true) {
---- okio/src/main/java/okio/Okio.java 2016-08-22 12:03:23.819831591 -0500
-+++ okio/src/main/java/okio/Okio.java 2016-08-22 12:03:34.874832337 -0500
-@@ -30,7 +30,6 @@
- import java.nio.file.Path;
- import java.util.logging.Level;
- import java.util.logging.Logger;
--import org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement;
-
- import static okio.Util.checkOffsetAndCount;
-
-@@ -167,7 +166,6 @@
- }
-
- /** Returns a source that reads from {@code path}. */
-- @IgnoreJRERequirement // Should only be invoked on Java 7+.
- public static Source source(Path path, OpenOption... options) throws IOException {
- if (path == null) throw new IllegalArgumentException("path == null");
- return source(Files.newInputStream(path, options));
-@@ -186,7 +184,6 @@
- }
-
- /** Returns a sink that writes to {@code path}. */
-- @IgnoreJRERequirement // Should only be invoked on Java 7+.
- public static Sink sink(Path path, OpenOption... options) throws IOException {
- if (path == null) throw new IllegalArgumentException("path == null");
- return sink(Files.newOutputStream(path, options));
diff --git a/dev-java/okio/metadata.xml b/dev-java/okio/metadata.xml
deleted file mode 100644
index 1f3df0522d64..000000000000
--- a/dev-java/okio/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">square/okio</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/okio/okio-1.11.0.ebuild b/dev-java/okio/okio-1.11.0.ebuild
deleted file mode 100644
index 743f89f4b4cb..000000000000
--- a/dev-java/okio/okio-1.11.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_P="${PN}-parent-${PV}"
-
-DESCRIPTION="A modern I/O API for Java"
-HOMEPAGE="https://github.com/square/okio"
-SRC_URI="https://github.com/square/${PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- >=virtual/jre-1.7"
-CDEPEND="
- source? ( app-arch/zip )
- dev-java/jmh-core:0
- dev-java/junit:4"
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-S="${WORKDIR}/${PN}-${MY_P}"
-
-JAVA_GENTOO_CLASSPATH="jmh-core,junit-4"
-
-src_prepare() {
- epatch "${FILESDIR}/okio-remove-maven-animal-jre.patch"
-}
diff --git a/dev-java/open-test-reporting-events/Manifest b/dev-java/open-test-reporting-events/Manifest
new file mode 100644
index 000000000000..9ca788989fa9
--- /dev/null
+++ b/dev-java/open-test-reporting-events/Manifest
@@ -0,0 +1 @@
+DIST open-test-reporting-0.1.0-M1.tar.gz 98076 BLAKE2B 1780f24776ddbb31752044c7ebee85cd852425b295b2c61d25e36856123e0d9cd4420ecb4f88e17bba52746dd209a5160bfe3bf0c05ac544a0a94e74c49ce1b2 SHA512 75523de2342b1b1027e68eb738ffef8571d6bb81b2cb0d87c26b097d8aac98f52728a6a5f46420ce8bb051d60b226646aef47ec00eee5876b833ba4e1121f5c7
diff --git a/dev-java/open-test-reporting-events/metadata.xml b/dev-java/open-test-reporting-events/metadata.xml
new file mode 100644
index 000000000000..fd71ca7a8b38
--- /dev/null
+++ b/dev-java/open-test-reporting-events/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">ota4j-team/open-test-reporting</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/open-test-reporting-events/open-test-reporting-events-0.1.0_pre1.ebuild b/dev-java/open-test-reporting-events/open-test-reporting-events-0.1.0_pre1.ebuild
new file mode 100644
index 000000000000..d14e4f96b6e6
--- /dev/null
+++ b/dev-java/open-test-reporting-events/open-test-reporting-events-0.1.0_pre1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.opentest4j.reporting:open-test-reporting-events:0.1.0-M1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Language-agnostic test reporting format and tooling"
+HOMEPAGE="https://github.com/ota4j-team/open-test-reporting"
+MY_PV="${PV/_pre/-M}"
+SRC_URI="https://github.com/ota4j-team/open-test-reporting/archive/r${MY_PV}.tar.gz -> open-test-reporting-${MY_PV}.tar.gz"
+S="${WORKDIR}/open-test-reporting-r${MY_PV}/events"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="~dev-java/open-test-reporting-schema-${PV}:0"
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_AUTOMATIC_MODULE_NAME="org.opentest4j.reporting.events"
diff --git a/dev-java/open-test-reporting-schema/Manifest b/dev-java/open-test-reporting-schema/Manifest
new file mode 100644
index 000000000000..9ca788989fa9
--- /dev/null
+++ b/dev-java/open-test-reporting-schema/Manifest
@@ -0,0 +1 @@
+DIST open-test-reporting-0.1.0-M1.tar.gz 98076 BLAKE2B 1780f24776ddbb31752044c7ebee85cd852425b295b2c61d25e36856123e0d9cd4420ecb4f88e17bba52746dd209a5160bfe3bf0c05ac544a0a94e74c49ce1b2 SHA512 75523de2342b1b1027e68eb738ffef8571d6bb81b2cb0d87c26b097d8aac98f52728a6a5f46420ce8bb051d60b226646aef47ec00eee5876b833ba4e1121f5c7
diff --git a/dev-java/open-test-reporting-schema/metadata.xml b/dev-java/open-test-reporting-schema/metadata.xml
new file mode 100644
index 000000000000..fd71ca7a8b38
--- /dev/null
+++ b/dev-java/open-test-reporting-schema/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">ota4j-team/open-test-reporting</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/open-test-reporting-schema/open-test-reporting-schema-0.1.0_pre1.ebuild b/dev-java/open-test-reporting-schema/open-test-reporting-schema-0.1.0_pre1.ebuild
new file mode 100644
index 000000000000..220e706acfc9
--- /dev/null
+++ b/dev-java/open-test-reporting-schema/open-test-reporting-schema-0.1.0_pre1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.opentest4j.reporting:open-test-reporting-schema:0.1.0-M1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Language-agnostic test reporting format and tooling"
+HOMEPAGE="https://github.com/ota4j-team/open-test-reporting"
+MY_PV="${PV/_pre/-M}"
+SRC_URI="https://github.com/ota4j-team/open-test-reporting/archive/r${MY_PV}.tar.gz -> open-test-reporting-${MY_PV}.tar.gz"
+S="${WORKDIR}/open-test-reporting-r${MY_PV}/schema"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_AUTOMATIC_MODULE_NAME="org.opentest4j.reporting.schema"
diff --git a/dev-java/opencsv/Manifest b/dev-java/opencsv/Manifest
deleted file mode 100644
index 0753279df32d..000000000000
--- a/dev-java/opencsv/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST opencsv-2.3.tar.gz 280510 BLAKE2B 02455b2a78854146af5c1bb262240678bbedf740a6994f9ef28a447145b0a1e9e2ab74d3c877f7d90882f598eef097a95acb71a458d5db338b7a3c73e640766a SHA512 3831cb9c5aaf8b19ed6895406e7358ddb6b30cba1876b42daeab41230d83bd532b9db53c073960413a385222ca889f1aae14404fd46143aa28ee05b3d1019106
diff --git a/dev-java/opencsv/metadata.xml b/dev-java/opencsv/metadata.xml
deleted file mode 100644
index 0ae56959dc98..000000000000
--- a/dev-java/opencsv/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">opencsv</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/opencsv/opencsv-2.3.ebuild b/dev-java/opencsv/opencsv-2.3.ebuild
deleted file mode 100644
index 17e96b3424e3..000000000000
--- a/dev-java/opencsv/opencsv-2.3.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A very simple csv (comma-separated values) parser library for Java"
-HOMEPAGE="http://opencsv.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src-with-libs.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-IUSE=""
-
-RESTRICT="test"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
- rm -rf test || die
-}
diff --git a/dev-java/openjdk-bin/Manifest b/dev-java/openjdk-bin/Manifest
index 113076a3d89d..706e0d6d8ec1 100644
--- a/dev-java/openjdk-bin/Manifest
+++ b/dev-java/openjdk-bin/Manifest
@@ -1,10 +1,42 @@
-DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.11_9.tar.gz 189549576 BLAKE2B 9eb55593643911573dbb7aa0f69169cf63c0cd8d0a4b4d3a4bf42131f2dfa51305c55c26e802f07fddd70911dba20c4d7b57983782aa2da61fa730f12258a94c SHA512 f2aa4514bad0a4116d0b703adef866f420b1bf264781b58d4075c54747856a657ec7fd1ef622712419823f76a87b9965426f59e5c66b21dbc073387e66f949a9
-DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.11_9.tar.gz 180784025 BLAKE2B c15ae126f1c2bb00f97571d4bb3316ecf5ee36a18895eefb48db616996dcdf363acbbd8ac17ecb6a507cc0f3a811f476cd72993b42e0a0b857b82c3e2d4d5279 SHA512 33cdc99dcf119a3f5161cdc08853ed1b8a1630f884577b6a167cf79621b0fa6f87ec652452fce0e27ee550b63952fcf75a3a6bd70c61564faafc0e8e1c74c0bf
-DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.11_9.tar.gz 174865783 BLAKE2B 717168b8b2dc326495dc41f3af2d85b515c10774ae58f35bcdf86694d89b1e11db50be24f4c046add5223e912448d67c2ecac8a3a6f3ca2dca3e915fa61f9654 SHA512 dafd40c133fd83c06a29816f4e45ff63e588ea5e6046fe331acbee4eb5efac4b3fc7da0f0fd55e4044846a053644a71efa00e45cf4ba39106b8d1018f9bca0ec
-DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.11_9.tar.gz 192792051 BLAKE2B b11a0934d358d255df743e241fa5040bbc48746b5fd131e98a9b253add114d3504a0f4b10887d9b86189da4f2bccfc65134247b0580d96e2fa7ae9374d44ff38 SHA512 b79eb8a672706b643773711a59a756de88eadd54e74bfef7dad14a0f7ab7412ee6c457b4d3489f6c530abbd442307a9355b5d4a01d2610f90cfd614b614f6507
-DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.11_9.tar.gz 186275966 BLAKE2B 09c54989a7d1c4989946bd1afe26c3254e2a0294ed4a8ae92e1e3e62f7e53eff7e30739b362d8a07cfe601633850efa4ad91445d474e1de196fd5b88d4e14338 SHA512 04bd14301bc9e1601096141c4c8d8b1637a8a99f8bf66d60081e5a36360440d6eb87d595df6b4b34fb44446746681774b2761fe837f3353a4e5bd5669182a09e
-DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u292b10.tar.gz 102423506 BLAKE2B dab839491d359e4366d316fd1a0eb3b7009e1739d7c6d4dc3ded47bd44fc7af36068d76183d9656d748beec0117bf95f09a78e577c3e1f685f0fb3c2e2d45e28 SHA512 6ca2dddd371223c0bae6caea1f4841d7d718b9ea812d914ec8fe3f03671e2176454ca094c05e55286ba0560e2897a515714bf607e868b4b0405b6bce03c5c22c
-DIST OpenJDK8U-jdk_arm_linux_hotspot_8u292b10.tar.gz 98376195 BLAKE2B 55ae7181b8e4aa5d3097bee40a5acfaee48a2f208e4362e74cdec1647460770efe49b774b22188c78ca6816716ef20173471b881ce3f75b0d90e95740049f4c7 SHA512 d2c88712a95bcc96172b6b589493038d8e721eb7ec4ae546dd998d82a5148dd5ada6e22c92bacaec2ef88e47a75761d283d1f73983f1848a631e00c5833901ee
-DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u292b10.tar.gz 100518660 BLAKE2B 11b1d1b32f76359362bc101678b0123d29d32bd720a10b806a55cf9b4cd3e9d5cf2ec50f985a4de85ae41ec4b90376e7b7e2f501bfe86ad9ba832813444a8f9a SHA512 2999972ecd574169d50afc6c7ff3e7b3f892939b125a9d02184b09ac11ed32b741e1bacac64f93fd4fce75bb4b16130290c1011d3948c66095132208cfc05839
-DIST OpenJDK8U-jdk_x64_linux_hotspot_8u292b10.tar.gz 103026380 BLAKE2B 4aca546720c8cdb9f8ca5ffe59eca4a2f4a5d36716faa3f3dff7517ebcb9cc13dc6749f16c3f7da9d0d7dbce28a7b4405cef9c5d96306fa79bf87ebefb4c6113 SHA512 44d36d221c4fe660f3f5b5627c6629d4716e7ae1fdc2d2c2b74c1235aae3c2b2f1ad28b9fb882ad574c7d6dd579a24ffdfab6809b2be6f02e4d6e802dab7e3ba
-DIST OpenJDK8U-jdk_x64_mac_hotspot_8u292b10.tar.gz 103785976 BLAKE2B 81f4b24f2b201478dbd439603e19df2c0b699cbceb679dd2fae14f72a19550c78cf52e7932f4816491bd04ec6556e157b7010518d1ffde4a3e99fcd9e183a721 SHA512 044ffada083a0ca32209513d7bb4ad51af9667611635a2a343e01b0d07d30257493ec1439ed104b094ef88844c1ed69671e3a8f413b51468e15f6172220747ae
+DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.22_7.tar.gz 191713436 BLAKE2B 2d0381ca8dc4bdc07330f79c7e290bdb60a28fe21122d4db1810dc036e7213071d327470b20361db1435fe2d5492e7d3815f3e244597d3d76a9f7894b515783f SHA512 a0772607ede5642051446dc742180fd4e42fbe78602eb3b874b00930ea4ba19eefdcf6a130f378b6cc7dde414a3db2259edb1ad570da4a7951a73bebc5a90b9b
+DIST OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz 192013902 BLAKE2B 6a4b47b9a3397d3436bd55a16a459a3cab3f8a2a7dc3285b3bde8db13f0e66d5e094803df0c5901a17272e6378161caada6f27845184e2efd17a6761661299c8 SHA512 90e53418efc7c34d7cf0691d566f07a84f02bd2d34cdee0c9c343e27c8d9bfd4d1bf86f104ae33a47274932ab8ba6ec8071a35e7d613129d03e439ae3382452c
+DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.22_7.tar.gz 182591395 BLAKE2B 858c6033c161dfe6c1475037bce5d538ca7b95b95b65a75edff03d0292e64d1ac2e3c2ed008b52938d9811e35a94ed694df2801605b55d6732c6c1c1b68b547b SHA512 aa0be475706f6cca490ff81389e131fb512efaa948d722b108a7060355af77134210c2509711f9c8bf4d32130cba813dc460c093d831ac8de539571ab3d08f20
+DIST OpenJDK11U-jdk_arm_linux_hotspot_11.0.23_9.tar.gz 182785851 BLAKE2B 453ca29859e749a9050f8b6627696ab6d38ee5e83ab69b1d159eb3b7c0bae68104cf68ca21b87123b4fc61059e528ba4ed0ee29fa4759f33a3cf46182f52a48a SHA512 af8ed3659f8ff07f5e5c135d96a7368d326f5b19e3d73077a3fa701716f6e415d4a784ff6c5f81267eb1b3d2e171a688126253f1c3197fc80ea260826ebad5a0
+DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.22_7.tar.gz 177146946 BLAKE2B 2e285abcde91eb578c88e81c6a737d6c6e00d58001325eaed7fd332d4d42588779192ae73f3de598cf725c9cd08860ff3a0db29f7fae54a6a404cbdf0db0b2ad SHA512 6288e599a54f1e2e02dd0eef5f0aae051ae8b15ed30e924c7018ac52d2eeb2572934557b7e722df7f704568656c8a8f93797dd2e86fdc3f0f32ffd004f803419
+DIST OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz 177453532 BLAKE2B aa98f381f2ac4f208ced4dac4f4b01d20cfd27c8ccc75a0c41db6a57b67ca11d87b8133cb0af96283f646e5e90612f9ad69db5129e6f50518ad2eb0a53c86db1 SHA512 c590fa032593db48531d49977c95d1f884fe751472d927d0d0bc15f36ec35f71ea53c9acafa3dc00c4b25e88d4c18ab590b42f8057a277e16947c3ce31362381
+DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.22_7.tar.gz 193744131 BLAKE2B 2cdbf676ecc860dd8ec13d959f9f63537e4b14feb0627cc360602a377c8a7193a2db67cb71f462939ab252f2ff3be1b46a15c25a7c1c1f1632254b1ea09eeef9 SHA512 81dabded0d6cee459ade96992d4002910448aa5fa091fd1b6c376a585c382d449bc63f5e51ba0c21e5fdd81f3e1d58e1d27f0b6016daca775644610087f3b090
+DIST OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.23_9.tar.gz 193956832 BLAKE2B bc334b59bbb021812ee7064b1915b6106923d41a74a3acf5b5d8fbcf50f6e0d467a96da22f996252422b08f5c7864418c552a102a18f3bd9cb14e5b4904656e5 SHA512 f0992a7fdb1acadf8cb19a94822e7a75f7453033cc0a3432f9efface7827b4a7ebb1ff67a81774da83844afdb046461415f50ddf11192863e88ab06889c86836
+DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.22_7.tar.gz 195002045 BLAKE2B 1898bcc1c1d97668238a13c70226b14f325a7c5be55f393ce2e6373fa0764a38633511a485257d05e173670e20b8c0195fb63d7143f41a1296556e5d59a8fe00 SHA512 00d75269a88c3d879907408f76ca1ee5a1ed48914e1ac27fa4faadf66a12fbccd6235d23be6c0d096a508c6ed996884ff2fe206290c061c2542835050476cfa5
+DIST OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz 195220527 BLAKE2B b2f024fdd2d72e78c86f562fbd37684c9d9639472d66e15b4b882c35241c500c09467e97440249bf69f4e63ef99d3f057b0e79852b67d55c5518d041cba2d657 SHA512 ccccb5003b78cff0cbf471d9b885ebd5805b5a21dd71afdb03a0d447cd6715e781dbf01f11970f7632b8181147fe0090f7fe8fc46c8732d2b17f0978f01934a4
+DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.22_7.tar.gz 187409838 BLAKE2B edbbb534fad7d6b50c79253d7c8bc1369f413fd1748a4f160003db2e01d8b907c115a5a3815de85e25a16c74bf0d316cccf7e0a508a488c51c476511876d5d54 SHA512 3371785f6bcc27dea59b074798795c91f3a0fc2241ea24d9e04bdb98fd77ebc1ccb058d1b34ea56660a7bac92e60192396a9d8b85b8983f1617bddf50d118276
+DIST OpenJDK11U-jdk_x64_mac_hotspot_11.0.23_9.tar.gz 187689918 BLAKE2B c1ccebd2bfeccdf64f1ab0c781e4ba5f2701f6c70de81486c6b4d91bb1d1df367f58fa66bf8f073ed47413649905a306ad3f75c6696e1d0510ce02fe3453d255 SHA512 93974938c10d58b182a7bda49e21e26806a01a03fe72915ca559df3e02c694b3b88ed11c49987bc2ca7c1acabda0892d8c22a4ab19ed8b796dd02f29c44dbff0
+DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.10_7.tar.gz 190867185 BLAKE2B dfac2c4383af080b8101e73d141f6ecaf38f44a0b8e88fddf8e33eb0454fccb22075e00a8eb3031c33a0d63a079da634b128766f4ab4fed70c8da999c8f8a568 SHA512 74447bacae664b5a1a420605d1c3b68a7be8deb230cc08700b23bb159ef10acb613595505f711906aa132aec2a25d5151f178cd9982d0d254a4d31a7396b4aef
+DIST OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz 191052267 BLAKE2B 837cd3f3e9cdff7b66d1a8e10e2e8ebb9db1168fad2982fd523eb8067ca017efdc05e577b93af74623558d04a8458dc1d790c9626e7ed2d6568bf7fc22a44925 SHA512 eeeacbd0f8daa1d62663f7ec95fb7dd3ff855a0187347e3c1ddb4a5d13e494c1a940b43b5fdf75480963d65dd4d94330570b751fa7cde540124ed2164c176870
+DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.10_7.tar.gz 178168341 BLAKE2B 425cac786cd7bd758d40ad76bdfc96969e2ca2b1ecf20c449a7e42b77020881f7c7414099b7ff9df482ce4698c680af4d819a928efb4e4608c54266412fcb2f5 SHA512 006773423fa46d61d1111a74bf1a41d50cb419d4a2855d0257a11282f9ab966a59e6bf22044b46d3a29041c37942f2f69780ee38002e8443da2bd40543ce0948
+DIST OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.11_9.tar.gz 178367345 BLAKE2B 7f1c8f77ab8ce9ce401947e51cc3051491df1579409f7ecb73107f091b58d6e7fce2004604951dfad019cd60e8da84fd4ee9f8987f92c9363889b310ee098e54 SHA512 0283452e56b3fbd85af33a7939ec8ae69624241ef07224152de55c5aafb1a5cb8423b8a211b5fadf8f5ea50aa0e5ed8211d02abf1398473ddf3ef13f2ba3f1c4
+DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.10_7.tar.gz 189087918 BLAKE2B e8c70966cd362ac26e748c4efb16bbe3816d27bbec5d3b2448b77bc07f8f17b6c77dd7cddcccd1256e621db93653e3aed2ebf1f895606023b00fdf3a98232b57 SHA512 17d540bfa9fd458fb214dc550df4bd1bd563630712b23549d61182d3c5dcf39cf016510b2318655e9bff594e40b960d7754200ba6184ea23bab40ed2d8e9c06f
+DIST OpenJDK17U-jdk_arm_linux_hotspot_17.0.11_9.tar.gz 189349607 BLAKE2B 2508ca965c27b1cf6457a595418ee9cd0450f9633a2fb80605a58a4bb7546cebb95b04c0d66bb14107c75fdff9fb678d78cdb879316929a3da6863579d4df9dd SHA512 bb76dcc65f65bbd3a256a54cea00eddb25312f1a1e2ed30fd3088bd44e9f8db7bb2ff3a6776b5ff6733ea7afc02928ef9e2bae296325fb1b8eb9b66b4e6f4a87
+DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.10_7.tar.gz 191584458 BLAKE2B 77ad2b213ee0957afdf6c204b2c987f568f62071ef282b8eb44d041980e44d5b964e4403324555f98caccd8736278ede2b486a4647ffbe669d4a285d19bf6507 SHA512 f808ad1d20ec025925653f6fe4566d6075c242b0f60f3dca3d0b46ec309ff3dd30637b9d2d2937b0fd2dff5a3ffd9e675766ea56a6bccc00a991266101d63db0
+DIST OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.11_9.tar.gz 191737628 BLAKE2B d78a0a64bf936bf85a4f9fe1c9299d1db4773e10cd308afa5167d61ce35ea7415d2a94a1dc160345fa5aa3d3a7b730235801789db147d62dae621572ca060fe7 SHA512 9ae308f12b5c74b48aed4ef2312d7e0b23e9fa73b7d78eb3576037b0fcbcfc3a5381ebc448fb41279e770d5994c46bdda6822b97181fa3d3365da63c8b0ecadf
+DIST OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.10_7.tar.gz 191453728 BLAKE2B 61e54448c7540f43c11ec55ffffe07ba43bbb60bcbc2acd07a3a06562ffbf7bd5b25c2a91540ead82978c43ef30ac2adbae1554d0718156b28bb34d46882020a SHA512 b7eded9bef2bbfa38b6350914df472e10daf82600af8090b59ce01cd0d2e6efd02f0bf28920cbcd3f7da2018e5642d8e5a282337ad969c8b9a8c35c0ae4890d3
+DIST OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.11_9.tar.gz 191615499 BLAKE2B 4b342ebf3da0cf49d448b95dec6b04819d2ab2e31327b793b9d9aef86b4e78ce33a54995a5d0608d14214f3d0fde73d0ad334c9b0e3c5d2cbb6d40c4bb22637f SHA512 7773843e3b2a02ccb70c3ea49639c723f5da715dcb3e27ed85dbd2182648621a5822c49728436377c8e8af4d20231ba5b861e45be17efe44a5a81a92c225a851
+DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.10_7.tar.gz 192205930 BLAKE2B 1c1ae9515a273ff7d7d4ef806fcb6d101e127f224912626982fbe848375f240bfca69815173b65c8c3ecc7019bb681ef43665bf3fe82d5c4333da057a35c976d SHA512 fcbb1bc62d484a8b851ea22d725921f72a4ce7ace33c1db737e7294aac17b74cd7ae9a366cac09d328be66e742916f0191fafaf531641610e652d24390df591a
+DIST OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz 192396023 BLAKE2B 1e5f12041d9c17195f242d7d36edf6995b1f71cb52ca211773faaa0cca6af983ec8c7885d58d4b87b38a0a26f71d088c104cdbcb84fdfffd97643f2a09a2a4ed SHA512 f11e61d91ad27ca31196ded87d06b5e379e4e652c09ffdd5c3d73cdc9fe6c46cd7785838c70514897645213ff6c6948227be27d7fd773949f1055338966ba275
+DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.10_7.tar.gz 180364858 BLAKE2B ded64698ee98c051b4f2bdbf7d30eb27bbc5418742306bd07fe87b0cf7cc579adc553bc2a16f8b15d2fe1950b463195ca3f3d414494491435fca052faedb8bf8 SHA512 4c199bbf2584d4a360caced88bb6f297417469334d3a3007f5a172f2fd3a41a492968fc0ad32a4f8424e4d6712d01060aef2531957edccc100f6cb58bbfce000
+DIST OpenJDK17U-jdk_x64_mac_hotspot_17.0.11_9.tar.gz 180563846 BLAKE2B f9bf368e39d95cce40413caeb98192f88f90cad7dcb486ef5e1d7369cfc346603d37de88c049930b958043621e44c103e020354eb80faff0cf83fac8dc7497a7 SHA512 999ad1fb7c822e9000e734c86e70e73aa572ec1a75d14219b391e9d358d1dba1fd0d9d568df4c28d8ca88fd4341e24feee2f840b6c35c4c530d2cd174dd797b1
+DIST OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.3_9.tar.gz 205794447 BLAKE2B 4d6ac1fa90b81be10cd32be76665dc26bae59a5c288d1b1f87e396ea356bf46f73b58db06b5b09417714f4638550d7ade55792f276f39dabc100345efd18c28f SHA512 b9cea7a7f4405c66722b3562e0ded7362475146753b1fcc4ad0d068264e9f228b8547dae704c6ce2be9c4a879902c2fbd93524176ffa02ddcb3edc4d4f6759cb
+DIST OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.3_9.tar.gz 207595331 BLAKE2B 7358f61aaee85fc5ac584307f1d5372de17aa06676aa823de157236e4332184b9212e74cc4214845a9e834ebac88d41ba185d1823257254174a960db88cb0574 SHA512 dafe0f31867f2ef817f188fe1222adefae72fe4443ec95eba8f18d60c141bdca0f63c2591c834c470c7b15d011618c97c45bbc65e746cdc47ba9be9a2f2ce523
+DIST OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.3_9.tar.gz 207940807 BLAKE2B 331e80062987c1932c24c8ecee8456240261ab43da04df2e5782f28c9683226e74116b2d8b5dac7047ce62e1ccaa5020fb9d94b98c515e9c94445ac8165f9692 SHA512 149dc0e7f058443787e99641b0c996ea7ac15d171abcf03778ca6a44769583cae5e507415b16fd8de5015d2acfef4705910cd43289cdfe624d07280e7b7ad961
+DIST OpenJDK21U-jdk_x64_linux_hotspot_21.0.3_9.tar.gz 207698369 BLAKE2B 27dbfba74a3dc46ff98c982208e10c1c40940cfb90db0d756e8038cbb1c5f45e30ac3ca07b408a3593c471d0f5ea75bb652902d49786490e9ad5ba290ca91162 SHA512 cd9e6054989a838004490f6162f6831397e5498033777d90da224f0aa4809e0f5c8a14459e6f30d441fa1238371d7db9718e2c606c38862b803dda824bbdba1f
+DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u402b06.tar.gz 102121884 BLAKE2B 78d6cb02f1c264eeb47f0ed7c6ea63cb0923119fb718be4f493423e9ef16546d810fadae82321fd1465528375383f0a65c6fe1a0bb091829ad14a9fc1f91296c SHA512 3a1bb7f684032d6130006597d1665ff063490a155bcbe720bb9cb94ff0368df1d86646923dad8965e6cecc12d05618e348f1b9d260a9fab3b9fb275c3350cf91
+DIST OpenJDK8U-jdk_aarch64_linux_hotspot_8u412b08.tar.gz 102116126 BLAKE2B 19f8deee04fe5521323ead5193ff7b383979afa32c4375bdef7ce53b868dd7cb317bcd208b94d373c353f5480433cb3a28beeacbb7f42b501058acdfe6917079 SHA512 e2c5e17eda6a25b8f12c8fe5a50b5c58a9b52bf9cdac7213e2b0eb7ea0c99ba0d3c31ecbaea834443fac12adacfe506ecbe3a487abd16846c6619678ac24c4ee
+DIST OpenJDK8U-jdk_arm_linux_hotspot_8u402b06.tar.gz 98319479 BLAKE2B 6b59e92767566e8abf7bd360f6b0b543ceb514c3b1677ef1610596998390dba74e54cd673cff764677c11316f88ab05fe0080549ab063eec5bf42ac6f97343af SHA512 6595b35a5d883d17de56fcac638a4936397e01c2a132269ce66e325a8cb0fc6b437ab16062c1decaf5a93b6597e72034e2aef1ddbe5442f23575f31504a3767c
+DIST OpenJDK8U-jdk_arm_linux_hotspot_8u412b08.tar.gz 98318417 BLAKE2B 11ec1cb2e793da8252511dee62ad193b67b3bc5c8aa91dbd6b1e8aa2d2f7e2e342528d145e0eb9e26b17b7e81c9ff17586f068b4d146f6789b157026aff67099 SHA512 84eab7b032fb55e02870013f9a87d0898ece12c52c560c0600d8d2ecb4901cc64e6e5cd44375ec6785a5c8f139263e8b6b32d348149e22200c962438fabea9fe
+DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u402b06.tar.gz 100525497 BLAKE2B b3ca75fd946ea70dd8fcbc444b361e02b3249144795b0d2786892e6ec668802ae3b2f082fabe1d9e91e5db5877d6774f5c56f5fc382b38e739070e54e95bdca5 SHA512 e00df5042f7f813153689e33e7e64b23efbe2b64d8a11e60072f50f0ba38a61cf66214c535d75175f9ed99f67c22857ccc36d62c9c34962a7385e4b9c880c5d0
+DIST OpenJDK8U-jdk_ppc64le_linux_hotspot_8u412b08.tar.gz 100529230 BLAKE2B 1498ff1c4d89f65a41a565cf3d6949f715bc8783a33b70e6cf7b44e513ddf7ade1242e2a0a95b582813ab212fb2367a5f17f794f54b5e458f0e23dd22e74123d SHA512 cf80eb66063559d4fbe062d8a198490468e4936c9e0b27ffe04912b4468a2d1f4d12fffe5df5fede38b44870b65a7f0cd85545f7031957b12a7d1a368a7770c6
+DIST OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u402b06.tar.gz 100908305 BLAKE2B 3beb70ed7c99f80fb338fd8580f6b6ee9a4af0d7034abff59c0f8d42255fe83a3e9b9847d82dd4bb793439a64dc9d5fcc2d407f4bfd09625bf8be3ad92bf0e5f SHA512 e5563646a505923c1f2342a884c94e24c06de14dd6da21c3cb010bcf1e4c481ff7cdbae8cecfb70bf52a4c5d23a9fa87e38b1c7b8b84f99b0a8b3e8ca25242aa
+DIST OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u412b08.tar.gz 100923084 BLAKE2B 9c9b0d7f95983a44f040efa83c69100163b1450d04102000d4f75361e9164024697380c055fdb31bac2ef4dabc05df592bbf342e716d8f438954b89236ff0986 SHA512 07b721e57225165d3dbc51c1d8f79f269e75fa3fe946ab76e933d1d3645dd19b3e7e8ea924d4f510382b5bcebbf073e262010c0e4655e0282379cce9d411eeab
+DIST OpenJDK8U-jdk_x64_linux_hotspot_8u402b06.tar.gz 103003119 BLAKE2B c97a924fe236ec0ad30eb70fb9ad2bea19065a22622d68dabb86be02eccdb30707bc00af98f46246fc8242f0bff4be8d5becfd32bf6cb015dd443d94e2722489 SHA512 22259ee3d98ed49e38f7c78efc200f72ee1fe5c02830e79061d16cc634df3276d1e17a113354bfd3d575ebf3b56e128848d03ae3dd5c06cc1954e33ad395b9e9
+DIST OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz 103005511 BLAKE2B f3df80c160d723df67700363ed6f40f3308a7625635b5afcb1656c77c9f78cc2796c5878aac0bda6cbde8d6551371ed15223de6aa8e75c01ba3e4848285a88eb SHA512 6f7df3fbb34c5971b7bbc4bafbe0179983abfa0aee212cc810e2656697cf0a7f4736cbbf6755cc88cc885d7beb5c15482a21d5287c52bae560988cf80908ca05
+DIST OpenJDK8U-jdk_x64_mac_hotspot_8u402b06.tar.gz 109474943 BLAKE2B e277cf06d893aa75f9aee91894fa6177c52fa556128614b80755af3c1bb16036daf972b4267c5c02d6e187c6bd52713eeeffd93e23f8d7a2897ad01149e8545c SHA512 718a120a1c6a861cba900ad267f646177e1b56d9646068121341ae9ce52a9ae9a20afa173d85c4870d539105f94b75685108c019da84bd23e973ce80e2356841
+DIST OpenJDK8U-jdk_x64_mac_hotspot_8u412b08.tar.gz 109506799 BLAKE2B bdf043df0df0f0fe100e80a464a0fe8c60e7c80ab7ca5e7481c8f7458b793a24b0f2d93ec482b5f0de7a65b3d068322b7b3a9e9c9ec5c5b61342cb85232db847 SHA512 4d774c3f0794d7403dfbf953e7e9d635b71c463bb193ffb4cc98e98455ff7a448f0bbf290a28c9290e3d9affc7390eeb4be88ad48cbfb60d9f605e57158f5058
diff --git a/dev-java/openjdk-bin/files/openjdk-bin-11.env.sh b/dev-java/openjdk-bin/files/openjdk-bin-11.env.sh
deleted file mode 100644
index 9e9c5ec54870..000000000000
--- a/dev-java/openjdk-bin/files/openjdk-bin-11.env.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="AdoptOpenJDK ${PV}"
-JAVA_HOME="${EPREFIX}/opt/${P}"
-JDK_HOME="${EPREFIX}/opt/${P}"
-JAVAC="\${JAVA_HOME}/bin/javac"
-PATH="\${JAVA_HOME}/bin"
-ROOTPATH="\${JAVA_HOME}/bin"
-LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
-MANPATH=""
-PROVIDES_TYPE="JDK JRE"
-PROVIDES_VERSION="${SLOT}"
-BOOTCLASSPATH=""
-GENERATION="2"
-ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openjdk-bin/files/openjdk-bin-8.env.sh b/dev-java/openjdk-bin/files/openjdk-bin-8.env.sh
index 264572a4b219..9bb340ba4db4 100644
--- a/dev-java/openjdk-bin/files/openjdk-bin-8.env.sh
+++ b/dev-java/openjdk-bin/files/openjdk-bin-8.env.sh
@@ -1,7 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="AdoptOpenJDK ${PV}"
+VERSION="Eclipse Temurin JDK ${PV}"
JAVA_HOME="${EPREFIX}/opt/${P}"
JDK_HOME="${EPREFIX}/opt/${P}"
JAVAC="\${JAVA_HOME}/bin/javac"
diff --git a/dev-java/openjdk-bin/files/openjdk-bin.env.sh b/dev-java/openjdk-bin/files/openjdk-bin.env.sh
new file mode 100644
index 000000000000..64619f60c7c5
--- /dev/null
+++ b/dev-java/openjdk-bin/files/openjdk-bin.env.sh
@@ -0,0 +1,13 @@
+VERSION="Eclipse Temurin JDK ${PV}"
+JAVA_HOME="${EPREFIX}/opt/${P}"
+JDK_HOME="${EPREFIX}/opt/${P}"
+JAVAC="\${JAVA_HOME}/bin/javac"
+PATH="\${JAVA_HOME}/bin"
+ROOTPATH="\${JAVA_HOME}/bin"
+LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
+MANPATH=""
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="${SLOT}"
+BOOTCLASSPATH=""
+GENERATION="2"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openjdk-bin/metadata.xml b/dev-java/openjdk-bin/metadata.xml
index 85cbb949c92f..7adf9448bc9e 100644
--- a/dev-java/openjdk-bin/metadata.xml
+++ b/dev-java/openjdk-bin/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
@@ -16,7 +12,6 @@
</longdescription>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
<flag name="source">Install JVM sources</flag>
</use>
</pkgmetadata>
diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.11_p9-r1.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.11_p9-r1.ebuild
deleted file mode 100644
index b103904be5a9..000000000000
--- a/dev-java/openjdk-bin/openjdk-bin-11.0.11_p9-r1.ebuild
+++ /dev/null
@@ -1,136 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-vm-2 toolchain-funcs
-
-abi_uri() {
- local os=linux
- case ${2} in
- *-macos) os=mac ;;
- *-solaris) os=solaris ;;
- esac
- echo "${2-$1}? (
- https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
- )"
-}
-
-MY_PV=${PV/_p/+}
-SLOT=${MY_PV%%[.+]*}
-
-SRC_URI="
- $(abi_uri arm)
- $(abi_uri aarch64 arm64)
- $(abi_uri ppc64le ppc64)
- $(abi_uri x64 amd64)
- $(abi_uri x64 x64-macos)
-"
-
-DESCRIPTION="Prebuilt Java JDK binaries provided by AdoptOpenJDK"
-HOMEPAGE="https://adoptopenjdk.net"
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos"
-IUSE="alsa cups +gentoo-vm headless-awt selinux source"
-
-RDEPEND="
- >=sys-apps/baselayout-java-0.1.0-r1
- kernel_linux? (
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- media-libs/harfbuzz
- >=sys-libs/glibc-2.2.5:*
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )
- )"
-
-RESTRICT="preserve-libs splitdebug"
-QA_PREBUILT="*"
-
-S="${WORKDIR}/jdk-${MY_PV}"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]]; then
- die "These binaries require a hardfloat system."
- fi
-}
-
-src_unpack() {
- default
- if [[ ${A} == *_mac_* ]] ; then
- mv -v "${S}/Contents/Home/"* "${S}" || die
- rm -Rf "${S}/Contents" # drop macOS executable
- fi
-}
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
-
- # on macOS if they would exist they would be called .dylib, but most
- # importantly, there are no different providers, so everything
- # that's shipped works.
- if [[ ${A} != *_mac_* ]] ; then
- # Not sure why they bundle this as it's commonly available and they
- # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
- # also has an explicit dependency while Oracle seemingly dlopens it.
- rm -vf lib/libfreetype.so || die
-
- # prefer system copy # https://bugs.gentoo.org/776676
- rm -vf lib/libharfbuzz.so || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if use headless-awt ; then
- rm -v lib/lib*{[jx]awt,splashscreen}* || die
- fi
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
- dosym ../../../../etc/ssl/certs/java/cacerts \
- "${dest}"/lib/security/cacerts
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- # provide stable symlink
- dosym "${P}" "/opt/${PN}-${SLOT}"
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-
- if use gentoo-vm ; then
- ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
- ewarn "recognised by the system. This will almost certainly break"
- ewarn "many java ebuilds as they are not ready for openjdk-11"
- else
- ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
- ewarn "will not be recognised by the system. For example, simply calling"
- ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
- ewarn "fully supports Java 11. This JDK must therefore be invoked using its"
- ewarn "absolute location under ${EPREFIX}/opt/${P}."
- fi
-}
diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild
new file mode 100644
index 000000000000..879465da18c0
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-11.0.22_p7.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 x64-macos)
+ $(abi_uri x64 amd64 musl)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild b/dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild
new file mode 100644
index 000000000000..879465da18c0
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-11.0.23_p9.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 x64-macos)
+ $(abi_uri x64 amd64 musl)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-17.0.10_p7.ebuild b/dev-java/openjdk-bin/openjdk-bin-17.0.10_p7.ebuild
new file mode 100644
index 000000000000..43345bca275a
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-17.0.10_p7.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri aarch64 arm64-macos)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild b/dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild
new file mode 100644
index 000000000000..1e59953a44c8
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-17.0.11_p9.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri aarch64 arm64-macos)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild b/dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild
new file mode 100644
index 000000000000..c45432f5aea4
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-21.0.3_p9.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2 toolchain-funcs
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//+/_}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=$(ver_cut 1)
+
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+"
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="alsa cups headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ media-libs/harfbuzz
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}"
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]]; then
+ die "These binaries require a hardfloat system."
+ fi
+}
+
+src_unpack() {
+ default
+ if [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # prefer system copy # https://bugs.gentoo.org/776676
+ rm -vf lib/libharfbuzz.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-8.292_p10.ebuild b/dev-java/openjdk-bin/openjdk-bin-8.292_p10.ebuild
deleted file mode 100644
index ed94c334091a..000000000000
--- a/dev-java/openjdk-bin/openjdk-bin-8.292_p10.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eapi7-ver java-vm-2
-
-abi_uri() {
- local os=linux
- case ${2} in
- *-macos) os=mac ;;
- *-solaris) os=solaris ;;
- esac
- echo "${2-$1}? (
- https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jdk_${1}_${os}_hotspot_${3-${MY_PV/-/}}.tar.gz
- )"
-}
-
-# they have different tarball names for different arches...
-# https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u282b08.tar.gz
-# https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_jdk8u282-b08.tar.gz
-
-MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
-SLOT="$(ver_cut 1)"
-
-DESCRIPTION="Prebuilt Java JDK binaries provided by AdoptOpenJDK"
-HOMEPAGE="https://adoptopenjdk.net"
-SRC_URI="
- $(abi_uri aarch64 arm64)
- $(abi_uri arm)
- $(abi_uri ppc64le ppc64)
- $(abi_uri x64 amd64)
- $(abi_uri x64 x64-macos)
-"
-
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos"
-
-IUSE="alsa cups examples headless-awt selinux source"
-
-RDEPEND="
- >=sys-apps/baselayout-java-0.1.0-r1
- kernel_linux? (
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- >=sys-libs/glibc-2.2.5:*
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- arm? ( dev-libs/libffi-compat:6 )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )
- )
-"
-
-RESTRICT="preserve-libs strip"
-QA_PREBUILT="*"
-
-S="${WORKDIR}/jdk${MY_PV}"
-
-src_unpack() {
- default
- # 753575
- if use arm; then
- mv -v "${S}"* "${S}" || die
- elif [[ ${A} == *_mac_* ]] ; then
- mv -v "${S}/Contents/Home/"* "${S}" || die
- rm -Rf "${S}/Contents" # drop macOS executable
- fi
-}
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
-
- rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
-
- # on macOS if they would exist they would be called .dylib, but most
- # importantly, there are no different providers, so everything
- # that's shipped works.
- if [[ ${A} != *_mac_* ]] ; then
- # this does not exist on arm64 hence -f
- rm -fv jre/lib/*/libfreetype.so* || die
-
- if ! use alsa ; then
- rm -v jre/lib/*/libjsoundalsa.so* || die
- fi
-
- if ! use examples ; then
- rm -vr sample || die
- fi
-
- if use headless-awt ; then
- rm -fvr {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
- {,jre/}bin/policytool bin/appletviewer || die
- fi
- fi
-
- if ! use source ; then
- rm -v src.zip || die
- fi
-
- rm -v jre/lib/security/cacerts || die
- dosym ../../../../../etc/ssl/certs/java/cacerts \
- "${dest}"/jre/lib/security/cacerts
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-}
diff --git a/dev-java/openjdk-bin/openjdk-bin-8.402_p06.ebuild b/dev-java/openjdk-bin/openjdk-bin-8.402_p06.ebuild
new file mode 100644
index 000000000000..f93a2a4afad5
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-8.402_p06.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//-/}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT=$(ver_cut 1)
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~x64-macos"
+
+IUSE="alsa cups examples headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ arm? ( dev-libs/libffi-compat:6 )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )
+"
+
+RESTRICT="preserve-libs strip"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}"
+
+src_unpack() {
+ default
+ # 753575
+ if use arm; then
+ mv -v "${S}"* "${S}" || die
+ elif [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # this does not exist on arm64 hence -f
+ rm -fv jre/lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v jre/lib/*/libjsoundalsa.so* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr sample || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ rm -v jre/lib/security/cacerts || die
+ dosym ../../../../../etc/ssl/certs/java/cacerts \
+ "${dest}"/jre/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild b/dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild
new file mode 100644
index 000000000000..ffff2917ded0
--- /dev/null
+++ b/dev-java/openjdk-bin/openjdk-bin-8.412_p08.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ local baseuri="https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}"
+ local musl=
+ local os=linux
+
+ case ${2} in
+ *-macos) os=mac ;;
+ *-solaris) os=solaris ;;
+ esac
+
+ if [[ ${3} == musl ]]; then
+ os=alpine-linux
+ musl=true
+ fi
+
+ echo "${2-$1}? (
+ ${musl:+ elibc_musl? ( }
+ ${baseuri}/OpenJDK${SLOT}U-jdk_${1}_${os}_hotspot_${MY_PV//-/}.tar.gz
+ ${musl:+ ) } )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT=$(ver_cut 1)
+
+DESCRIPTION="Prebuilt Java JDK binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+SRC_URI="
+ $(abi_uri aarch64 arm64)
+ $(abi_uri arm)
+ $(abi_uri ppc64le ppc64)
+ $(abi_uri x64 amd64)
+ $(abi_uri x64 amd64 musl)
+ $(abi_uri x64 x64-macos)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos"
+
+IUSE="alsa cups examples headless-awt selinux source"
+
+RDEPEND="
+ >=sys-apps/baselayout-java-0.1.0-r1
+ kernel_linux? (
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ elibc_glibc? ( >=sys-libs/glibc-2.2.5:* )
+ elibc_musl? ( sys-libs/musl )
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ arm? ( dev-libs/libffi-compat:6 )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )
+ )
+"
+
+RESTRICT="preserve-libs strip"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}"
+
+src_unpack() {
+ default
+ # 753575
+ if use arm; then
+ mv -v "${S}"* "${S}" || die
+ elif [[ ${A} == *_mac_* ]] ; then
+ mv -v "${S}/Contents/Home/"* "${S}" || die
+ rm -Rf "${S}/Contents" # drop macOS executable
+ fi
+}
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # on macOS if they would exist they would be called .dylib, but most
+ # importantly, there are no different providers, so everything
+ # that's shipped works.
+ if [[ ${A} != *_mac_* ]] ; then
+ # this does not exist on arm64 hence -f
+ rm -fv jre/lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v jre/lib/*/libjsoundalsa.so* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr sample || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr {,jre/}lib/*/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ rm -v jre/lib/security/cacerts || die
+ dosym ../../../../../etc/ssl/certs/java/cacerts \
+ "${dest}"/jre/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk-jre-bin/Manifest b/dev-java/openjdk-jre-bin/Manifest
index 168fc7d94629..a550f6c7ebc3 100644
--- a/dev-java/openjdk-jre-bin/Manifest
+++ b/dev-java/openjdk-jre-bin/Manifest
@@ -1,2 +1,7 @@
-DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.11_9.tar.gz 42432277 BLAKE2B 18138eb163db4609790286cfe7bc951da9ea244eed50bafa10e5d84ec43e7a80ebc2f759f3e1547b9d785b1a6d560b5399a0449a8fe301e19625c2b98abba928 SHA512 5b8c1c16c5faa467bbb35a1d1e694afc50b0c2dbbe77abb29620f30602187a1a903f60169e2b691dcc81b6d902ed5a17239318f27765f19351281209befb0e96
-DIST OpenJDK8U-jre_x64_linux_hotspot_8u292b10.tar.gz 41355668 BLAKE2B 761358d7e5dd9c96ed13d7302ea5f39719f044a37add7fcadb76ed799d41b17faee014c9e4bec3ce388d4a6965e2c14dd4ddf029baa6dd1f5f84cde7e7b1fcd5 SHA512 fd63dceddcd32b0f48b6d35c14ab3165f2b45152fdbc2bcaf833ed2624d833592cf1001627029fd04f9b77a033e2d4e993830d54c2e7c08adde5cd7a684447fd
+DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.20.1_1.tar.gz 43033465 BLAKE2B 484ec2b8512e2c759840157608ae4b7cdd2729533589a8ad1ba718779e88319fa02da4c9f59b56dea93123646ca7a55e84675985679a25f5163d7511b8147f66 SHA512 4a962e2ee8c885753b7bc25c3a30af307bee2c8829438eb85b9a7b20abd72fa22b340cfb9b6a0721e8fb00379bd3a230653daa52f5f1e3e6d5ed028ea2066c99
+DIST OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz 43361001 BLAKE2B 7f5fe24de2f0967ceeaee783430fc1aa9d8c510d955eff2e10c9d94058a2985308e99a57f1dffb3adb3cee9d90d0a553abcb5438a41a0cda054b0a260e435f31 SHA512 82b4b021b7fb136a9016623cd6ab7b4ac1f5fc3bff69594b74c8b2b0305d6b0c7d20d12759062826dc27ce0b50ea176bcec76960d3d458549e11a5452b7df014
+DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz 46382823 BLAKE2B 79612a8a73cee7a8ac022779a12077fa613ff7b18d8d5d198c42ae886cba21c46a1919422249696a74b5e5491542b88b57244eaa74f3b1bc8ae63ae851d10d40 SHA512 a98534b49a71a1bb6488aff4f1d2fc4fdcadfbaa17ef1ca3003568aed8498b3d3618c065334dd6bd9cffab0af15b6cbc980353e09da66c5ac69f0c96f9b0a889
+DIST OpenJDK17U-jre_x64_linux_hotspot_17.0.8.1_1.tar.gz 46332104 BLAKE2B cd27d457ecb64a17cd86fb7f348e7868b6a5e4bb59a98971dabfcdc213e4afc70dc7c1c912dcf209c9a3931ce2abece961480cc06039b565e09f70e55269ceb9 SHA512 773f39ec8f66d1285df74706014c690f3ade9c960bc27c5032bd4c100b2e89c3d4a23150af548128bdf499d64ba1567aa065f4a39f5e583600d86414d283f66f
+DIST OpenJDK21U-jre_x64_linux_hotspot_21.0.3_9.tar.gz 52430722 BLAKE2B 32a969bfd1a6e334db34db6f12317810a81b60b0f6c4c978aee3fb588ed30daca0b54089feba7721a51f71d2ebb89d453aba8e7ded29f524d5923a3804828d88 SHA512 2fefc61c36f4cf4bbe722aef93aced8dc4b76d2fddeb91ad8687dc54f7afd9dff03df25ff12214bbd66fcbd637ff0ca5a21a1d839e60da9622904284bc2abfee
+DIST OpenJDK8U-jre_x64_linux_hotspot_8u382b05.tar.gz 41389960 BLAKE2B e79d0d6b08a0f2066c877b3f970742a209f1b56a46dd4e5bc3b3942b590ae4eb0e72ac9b909d2e0d9b61bee76d507d9df8def88c16ec87930152b8375c6272e5 SHA512 536e2b3f87907aa2d79938dae3f92efa5d6402ae252e147beb9ddc3f81b1001a8031e4eba7132b0640dad36652fb619b761e038a88246442fc8592d5fe8a9c41
+DIST OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz 41415973 BLAKE2B 1372ef4f608eaecd4a82c8e5598e67b91d4b200818a896c2977f40d7c228377ad033187e5afda7cd812b37950b998bc764c155d952a62b7bf7c625299b9477d9 SHA512 f1e3a168724fd9826262d1f4e895d0809618414231e246750f96522bc89fb4f27fed83f83dd548ddd859b519512ac7a080c6a3482a9d129275102aed973eab28
diff --git a/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-11.env.sh b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-11.env.sh
deleted file mode 100644
index ec0dca401e6f..000000000000
--- a/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-11.env.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="AdoptOpenJDK JRE ${PV}"
-JAVA_HOME="${EPREFIX}/opt/${P}"
-JDK_HOME="${EPREFIX}/opt/${P}"
-JAVAC="\${JAVA_HOME}/bin/javac"
-PATH="\${JAVA_HOME}/bin"
-ROOTPATH="\${JAVA_HOME}/bin"
-LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
-MANPATH="\${JAVA_HOME}/man"
-PROVIDES_TYPE="JRE"
-PROVIDES_VERSION="${SLOT}"
-BOOTCLASSPATH=""
-GENERATION="2"
-ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh
index fabc13c4091c..091a43a4efc9 100644
--- a/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh
+++ b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh
@@ -1,7 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="AdoptOpenJDK JRE ${PV}"
+VERSION="Eclipse Temurin JRE ${PV}"
JAVA_HOME="${EPREFIX}/opt/${P}"
JDK_HOME="${EPREFIX}/opt/${P}"
JAVAC="\${JAVA_HOME}/bin/javac"
diff --git a/dev-java/openjdk-jre-bin/files/openjdk-jre-bin.env.sh b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin.env.sh
new file mode 100644
index 000000000000..3d5130c67fd2
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin.env.sh
@@ -0,0 +1,11 @@
+VERSION="Eclipse Temurin JRE ${PV}"
+JAVA_HOME="${EPREFIX}/opt/${PN}-${SLOT}"
+PATH="\${JAVA_HOME}/bin"
+ROOTPATH="\${JAVA_HOME}/bin"
+LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
+MANPATH="\${JAVA_HOME}/man"
+PROVIDES_TYPE="JRE"
+PROVIDES_VERSION="${SLOT}"
+BOOTCLASSPATH=""
+GENERATION="2"
+ENV_VARS="JAVA_HOME PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openjdk-jre-bin/metadata.xml b/dev-java/openjdk-jre-bin/metadata.xml
index 8fa79b50533c..b4bbaa93f791 100644
--- a/dev-java/openjdk-jre-bin/metadata.xml
+++ b/dev-java/openjdk-jre-bin/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
@@ -16,6 +12,5 @@
</longdescription>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
</use>
</pkgmetadata>
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.11_p9.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.11_p9.ebuild
deleted file mode 100644
index 441b2550e44a..000000000000
--- a/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.11_p9.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit java-vm-2
-
-abi_uri() {
- echo "${2-$1}? (
- https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
- )"
-}
-
-MY_PV=${PV/_p/+}
-SLOT=${MY_PV%%[.+]*}
-
-SRC_URI="
- $(abi_uri x64 amd64)
-"
-
-DESCRIPTION="Prebuilt Java JRE binaries provided by AdoptOpenJDK"
-HOMEPAGE="https://adoptopenjdk.net"
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="~amd64"
-IUSE="alsa cups +gentoo-vm headless-awt selinux"
-
-RDEPEND="
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- >net-libs/libnet-1.1
- >=sys-apps/baselayout-java-0.1.0-r1
- >=sys-libs/glibc-2.2.5:*
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )"
-
-RESTRICT="preserve-libs splitdebug"
-QA_PREBUILT="*"
-
-S="${WORKDIR}/jdk-${MY_PV}-jre"
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
-
- # Not sure why they bundle this as it's commonly available and they
- # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
- # also has an explicit dependency while Oracle seemingly dlopens it.
- rm -vf lib/libfreetype.so || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if use headless-awt ; then
- rm -v lib/lib*{[jx]awt,splashscreen}* || die
- fi
-
- rm -v lib/security/cacerts || die
- dosym ../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- # provide stable symlink
- dosym "${P}" "/opt/${PN}-${SLOT}"
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-
- if use gentoo-vm ; then
- ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JRE"
- ewarn "recognised by the system. This will almost certainly break things."
- else
- ewarn "The experimental gentoo-vm USE flag has not been enabled so this JRE"
- ewarn "will not be recognised by the system. For example, simply calling"
- ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
- ewarn "fully supports Java 11. This JRE must therefore be invoked using its"
- ewarn "absolute location under ${EPREFIX}/opt/${P}."
- fi
-}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild
new file mode 100644
index 000000000000..7e2efc602026
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.20.1_p1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptopenjdk.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild
new file mode 100644
index 000000000000..4bac8986b66a
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-11.0.23_p9.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild
new file mode 100644
index 000000000000..4bac8986b66a
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.11_p9.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild
new file mode 100644
index 000000000000..7e2efc602026
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-17.0.8.1_p1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptopenjdk.net"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild
new file mode 100644
index 000000000000..9fe0d3158b43
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-21.0.3_p9.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jre_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
+ )"
+}
+
+MY_PV=${PV/_p/+}
+SLOT=${MY_PV%%[.+]*}
+
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk-${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ # Not sure why they bundle this as it's commonly available and they
+ # only do so on x86_64. It's needed by libfontmanager.so. IcedTea
+ # also has an explicit dependency while Oracle seemingly dlopens it.
+ rm -vf lib/libfreetype.so || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if use headless-awt ; then
+ rm -v lib/lib*{[jx]awt,splashscreen}* || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.292_p10.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.292_p10.ebuild
deleted file mode 100644
index acb70caacff7..000000000000
--- a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.292_p10.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eapi7-ver java-vm-2
-
-abi_uri() {
- echo "${2-$1}? (
- https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
- )"
-}
-
-MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
-SLOT="$(ver_cut 1)"
-
-DESCRIPTION="Prebuilt Java JRE binaries provided by AdoptOpenJDK"
-HOMEPAGE="https://adoptopenjdk.net"
-SRC_URI="
- $(abi_uri x64 amd64)
-"
-
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="amd64"
-
-IUSE="alsa cups headless-awt selinux"
-
-RDEPEND="
- media-libs/fontconfig:1.0
- media-libs/freetype:2
- >net-libs/libnet-1.1
- >=sys-apps/baselayout-java-0.1.0-r1
- >=sys-libs/glibc-2.2.5:*
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXtst
- )"
-
-RESTRICT="preserve-libs splitdebug"
-QA_PREBUILT="*"
-
-S="${WORKDIR}/jdk${MY_PV}-jre"
-
-src_install() {
- local dest="/opt/${P}"
- local ddest="${ED%/}/${dest#/}"
-
- rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
-
- # this does not exist on arm64 hence -f
- rm -fv lib/*/libfreetype.so* || die
-
- if ! use alsa ; then
- rm -v lib/*/libjsoundalsa.so* || die
- fi
-
- if use headless-awt ; then
- rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
- bin/policytool || die
- fi
-
- rm -v lib/security/cacerts || die
- dosym ../../../../../etc/ssl/certs/java/cacerts \
- "${dest}"/lib/security/cacerts
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.382_p05.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.382_p05.ebuild
new file mode 100644
index 000000000000..1071fa2afe06
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.382_p05.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
+ )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT="$(ver_cut 1)"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net"
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64"
+
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # this does not exist on arm64 hence -f
+ rm -fv lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v lib/*/libjsoundalsa.so* || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
+ bin/policytool || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild
new file mode 100644
index 000000000000..04fb01a2b751
--- /dev/null
+++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.412_p08.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-vm-2
+
+abi_uri() {
+ echo "${2-$1}? (
+ https://github.com/adoptium/temurin${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
+ )"
+}
+
+MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
+SLOT="$(ver_cut 1)"
+
+DESCRIPTION="Prebuilt Java JRE binaries provided by Eclipse Temurin"
+HOMEPAGE="https://adoptium.net/"
+SRC_URI="
+ $(abi_uri x64 amd64)
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="~amd64"
+
+IUSE="alsa cups headless-awt selinux"
+
+RDEPEND="
+ media-libs/fontconfig:1.0
+ media-libs/freetype:2
+ >net-libs/libnet-1.1
+ >=sys-apps/baselayout-java-0.1.0-r1
+ >=sys-libs/glibc-2.2.5:*
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXtst
+ )"
+
+RESTRICT="preserve-libs splitdebug"
+QA_PREBUILT="*"
+
+S="${WORKDIR}/jdk${MY_PV}-jre"
+
+src_install() {
+ local dest="/opt/${P}"
+ local ddest="${ED}/${dest#/}"
+
+ rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
+
+ # this does not exist on arm64 hence -f
+ rm -fv lib/*/libfreetype.so* || die
+
+ if ! use alsa ; then
+ rm -v lib/*/libjsoundalsa.so* || die
+ fi
+
+ if use headless-awt ; then
+ rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
+ bin/policytool || die
+ fi
+
+ rm -v lib/security/cacerts || die
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ # provide stable symlink
+ dosym "${P}" "/opt/${PN}-${SLOT}"
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+}
diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest
index 35d7bee2b779..f132a4ccb269 100644
--- a/dev-java/openjdk/Manifest
+++ b/dev-java/openjdk/Manifest
@@ -1,17 +1,19 @@
-DIST openjdk-11.0.11_p9.tar.bz2 95298760 BLAKE2B 7572d297fecffa9d38998c79dda00ea9361c1cf2f6c8bf51bac782da17cd3b6b272d08ab57fff96d523a1299f5514cb3788d05eeb37ef467ee7ad8bbb156d98e SHA512 72deecf32b793fa331deb6a1c0294b1efc68b72af9aebc1ba0528189e0097ff6d226cd0c3947d3cdc35c3cf28b3450cc538d375be0b9d43dca379f244894d20e
-DIST openjdk-8.292_p10.tar.bz2 457861 BLAKE2B 043c1d6f7d040dedaadd05091ce4fdf3f516c1cd241e3603c81f2c49fd81df9c4f1082822a5471255381d56f3ab838a24e499b4ec647f3354ee051078c496b2c SHA512 6e1ac380db32fa5f1decc80291dcdb5e1d3d9afb0dc4587966c5a1b840588a984bc07109c23cb0c69c60509c6db8152e7306509280063f7d2e853aed41e391cc
-DIST openjdk-aarch64-shenandoah-8.292_p10.tar.bz2 464164 BLAKE2B 3f50f20517ef7b4599f9062330b3bc86900c137751e65d3047d165ad153032447b5f9c88e0d390c0ed758ad10d818295ce2cde04150da5036dd6b05fa26c2745 SHA512 074e9ea2fe83f4edb4d0de72f0d1a9c9091c28707c17b08ffab11cad2620790e740bfe53cef41a07d04b31cc32c1388e52e09eb07ca0b9929300d611c514619e
-DIST openjdk-aarch64-shenandoah-corba-8.292_p10.tar.bz2 1052188 BLAKE2B b4acda6a4d97cdfb4cfe16e1442dac6989af5fec82143dabb914ee31632b5421bc091708b06e37f95d552b21dbf24ed681b026635e96d32f05ac7d964eb53ac0 SHA512 9f4cfdf8a2580414f90ce0b128fd2ebbeb46977994605d3182ee5033be92898f3b292bafe6c0ca3a0fc767c03de598c93e25cbbc06726383b35961d40c601cee
-DIST openjdk-aarch64-shenandoah-hotspot-8.292_p10.tar.bz2 8787501 BLAKE2B 628c84ad165e82b782a66c159ea2bfc2e739eafa41981d353272911bce3338b8eedeb204bf5c8238270ef22259c215301dbf30bcbcc366bbb1c1ed05c6bcf0fc SHA512 50a97c8bbf225c7b2dae50d398eb17831ad761fafb210a481942101bac54164604c76353ca4f0ec7c3a601039eb80164afdfc62f509c0b87e9c948970c0e6140
-DIST openjdk-aarch64-shenandoah-jaxp-8.292_p10.tar.bz2 2726660 BLAKE2B dc720b115212084ab59a4af6b257b485592a84e630650445ed3bdc0c471d529bdc8a1f2b73c5e38fbdd65ff1c221309e814adbba851c59279c8b3740b4560d90 SHA512 43c0e6327c3f7ff2d6320e7d1504f1575c0993c53a207dcabc75a0e1785fcca2aac7f78856db374198e3e95bce4bb05520a9a4e94f2ec03446b28f4d65cd69b6
-DIST openjdk-aarch64-shenandoah-jaxws-8.292_p10.tar.bz2 2560138 BLAKE2B 6e40ca6fd363c6ef9500b6b40c7f6c836b496899d289d0626f0e52412924498eb6b000291b58af8d42b9bc7dcc2beb1374ef6b8ea18d483841568d3848230842 SHA512 0ffbe33f375f18679797a7e724b621015650a6a9374ff231814f8e8ad0eafe42f281f76a83e87e234604c266ccbc15bd6e84692c3d7e272e702be316ce0048b2
-DIST openjdk-aarch64-shenandoah-jdk-8.292_p10.tar.bz2 48705934 BLAKE2B ab8995ef30267d635f670791417124ce63435f4cde095c057e4b506cbc23b879bf308986ea0960392836acd46aa6fd7be9a09fea011a85c981388ad58a876f0a SHA512 7f76a8e81cf759989657101a4b71ae0e896273571e5d61790100e412dc1c211118251b6f068da3764ff1059635f98079d88c6cdddf04f676c5db3a665d3d9d8b
-DIST openjdk-aarch64-shenandoah-langtools-8.292_p10.tar.bz2 2402059 BLAKE2B 707654793fa26f2a992c2ded6130d5710efac6a91661914bde150a91720fcf08a54931fcd1a56fbc31dc1a61a5216b61e3871d963a2b03803ae8cbcfa8b095ab SHA512 6dc82a18edeb5390d078a3113d2f7c7510737b9a9761b1a714d855d36afe4530b41a6e980af0bb090b31e8f95f67e097190d656d265c8518f3971526ee5e4001
-DIST openjdk-aarch64-shenandoah-nashorn-jdk8.292_p10.tar.bz2 2841484 BLAKE2B 4d95d38c6af366fa4be8e9ad2d3cf09d6ad1ac05d25ca94d15200a051cdfcc67af666420a5487f0b2782040dc3483475bf2515b0b5d40e520f162e78f768d5c5 SHA512 523e1292169a6a791c2b90672295cd3210a09b8c973cc038e9ebda7e89afc0339568a993909eb108985998060ccdd13601a9bd9a8e4890ac606febf07578a887
-DIST openjdk-corba-8.292_p10.tar.bz2 1033217 BLAKE2B f6ac60ad0aab0c1ca149fdf2b26648d38ab083ee6fa36b2f82aca19e79037ac7166c43f91c193493923ea4dabd57de3bcccd75a73aeb6439c1d464729afa957b SHA512 7bbc2b61421a81ca2f0e1080bf5c3bd065f737c0dbc822f123875f2675515b947b4f8efbf0ddb3b8d887b90ab5c646fbb12ae35607ff295d9ca489737ff4fac9
-DIST openjdk-hotspot-8.292_p10.tar.bz2 8558678 BLAKE2B 02aaa0cef73dc7aa7e9db426fb021d00f25321426438365f672e0fcbec476826d62c92d897b520f0162ab63f2bf72ecdbf6d8e8a7241d455900d427aafa22bb8 SHA512 ae1e174fad6c41f30593abb4c0be17752d6f7de0fa0a1b83c383cb7cd0848e462ca88feb391c9a8427e167c06e6c3d01230fb769f711dcfddd007f8e43d4c481
-DIST openjdk-jaxp-8.292_p10.tar.bz2 2684063 BLAKE2B 7130d33afb81d83f0ec3afb5e6e161c318e7c6b36189dd7f88410a7edc07a17ebe2d5c15c5991b31d180d4d1c70c683953a9cfcac1c3eded64a4ab679d4a0366 SHA512 92a15a693440cda28aebe9033675aadcbc099a913f9148b26eae90004d54b246152b326e0005b3da6178286ee21f71f12ecd2f395c09b6707679239506154849
-DIST openjdk-jaxws-8.292_p10.tar.bz2 2543680 BLAKE2B f39b7e939de9ba19f9ff53d2748e2fee7acc82bd4d85a4d8e1f49e3b0919daa03c4996e63a46e908da966dbebbf7051955104b291178f9b059d60e8208dce51c SHA512 5106a28819da3708f8a71e4595cb0191099a7d2e06b7190981beea6af504681927be6c07ebcbe77340735bb22c365e1cf001709311c0a57940247d9584a0ee48
-DIST openjdk-jdk-8.292_p10.tar.bz2 48746031 BLAKE2B a54a832a305b87cbd4ceda4eb5bcea07e2a3d4b9f5648f21f52b4e29cf6053b830f876591a0c2c1a6447473354bfcf79d70c260c7bb24505743bd3ba67ba2568 SHA512 c10a64086e0fd63f2ecab884b7baa88c3dcdaad83f2240d7fe3d590913af252a57c9d735268acb1e75bda2883c4c41d47f405db0c15f82d833d33d08c824b9d6
-DIST openjdk-langtools-8.292_p10.tar.bz2 2401270 BLAKE2B b4043862df04e9f0056d420116e47f4f1515d1e935bfb6830a67a9de3894c94a6289a7952153bef971369cdbdf2374154cd4895950fe49f8a21af5e3316dfa8a SHA512 ba66be7f37ca8268d1dd0b8d4e68c90ae19f815ac3b64aa1f1abf02a722a09ec46c7605d5124ac960bd44335b053da12b36d4b0562b3675ac503fd838d4924d7
-DIST openjdk-nashorn-8.292_p10.tar.bz2 2849397 BLAKE2B d875dea02ec8a3a3cba49f173f42ad7d73d15492cb86a15b095063ad327655ab9c260571c8a8ed35daf4078d52eb24d58b04125d3cea148bbc9e3fe924375c45 SHA512 4b707059bc6b217bdae2d9ea685c18b9cc3759180d5dcb5e51ad4eb00e6e660ca6181a68427f1e53c81b9636a323c1229e19de35b51e14a5d599cb64412ae11f
+DIST openjdk-11.0.18-riscv.patch.xz 272672 BLAKE2B b079612032a5bf135b05bdd1da16f2823772a5d9a18447a435f191daf78c5429a15c2e9ea64758dc9b26ee2a88275532b4f27714b2a7e4489f920c0ed2f5003b SHA512 c0426f243c5aa581d90366cb01ce811e34883a9d8a0298cab420378470e8eb427a56932ca1fbb5ed57e7430be2b38c6bc4491028ebaa25be0a938ba0bb2baf45
+DIST openjdk-11.0.22_p7.tar.gz 116235391 BLAKE2B 50b845b8f1e316da37e45c94a1890939659b554a314a1a455903e8cc58465cd69cd485548b6b42c445150187e37df5cf946d52bca754236a198f6aa10d7de37e SHA512 b88d0db9750d8201dfb4b027045de4023be766e42cca7a3ff5e0cb28db4c6da3f146a57819a6b81cb33e5837726986bcc3780ecf88bf525f445c2cd35a3993d8
+DIST openjdk-11.0.23_p9.tar.gz 116316363 BLAKE2B a3745b2afe9d2529daf89aceed43025aca72a353210b0987aacb32af971262077411e9a2b6cfd938ca9d0c93c8762759b9207a13cee0808288674671164e3a36 SHA512 3851063289042ed467a9cb636eba7170a0feeaa3e5d19bda6c30a186ea624e4ae1b308006652acb9c9820c2065382bd719ee130b7a1a0524fe25ecd639f8a51d
+DIST openjdk-17.0.10_p7.tar.gz 106398664 BLAKE2B 48cb2bc7d063da25a62834734ba4a887d26a27a8d84c535255df67419bf4f6d8b060c48ef37bd7324e14e957a141791380d4d9e42335a90f72dc34bc7b1d12fe SHA512 c2dfd66debdce488de044efcfc3f57cc9eb07ead2cfb7dd6e28e5748d48ec89f0c326a4c3f4a5c740019b8e5a02b858d93dd74a0c6626de445144b9840d3a426
+DIST openjdk-17.0.11_p9.tar.gz 106574173 BLAKE2B 3db4763527d1acb83a2d492c3e94dc571065b844cf2ac56b7377a821cf2cb48af405b9fef73f477502bedc2c119ac57a115315140af04d51dbab5a78dfa6c789 SHA512 77baa3ec3ff2d06b28121342357311d1d5ca2ddd9ac7982b1aa5fc745b49519d2f95d14226ad4ac413d9a0ecf0e49d15078cabbba0b2897d0c6883b92ef0b5e9
+DIST openjdk-21.0.3_p9.tar.gz 112404688 BLAKE2B e73688fdd2e4f4da144f66058e4ff68da4a557d9c7693c7854ba6c7e1a12155abec4aa0fcd724f62333060c4b4f7488f827c1b5499fe5667743516101f7f2fa6 SHA512 efc2d03a7e7afed62a2cdc9f7707d056ed62d63f513394d7e3c6bbe11980ac492a2cad144021cea4180f4c93f1a481bdd65cb61156023a3f14ba596fd9c0eb60
+DIST openjdk-8.402_p06.tar.gz 93136112 BLAKE2B 023422ca2b4dfc08fd3642e3cb3ec0503d57d09dbcb54841e4a04f67a6cd118712cba90b7760eaf9135f9f001f7c15221c4bcb19986547fb2b6b3fb852bb8af4 SHA512 476d195ef500d8dd2013b17de0669a77ef8076b55c2753eb88b1a13f7a48526b1be7a1befabd284eb9ee8411df19ab1f39c81287ab659984d2d67e8aa7192d79
+DIST openjdk-8.412_p08.tar.gz 93003614 BLAKE2B 71a3825bf69bb196ae219f5125e8452f634be2ff7b9f42a4829f6581f0a143bfec95013971c6f6b8f402c11efa34443f55a7f89d4133eac0b05a6d1cd6e0324d SHA512 d198f26474a4bd0b5e09c3c3aa53fbf77f217b8cd23499f7e661224048e925e0e020b28264b6ce7401baf83f8ffd8e3247788e2f5e7188509dea8b06f9fa0572
+DIST openjdk-bootstrap-11.0.13_p8-ppc64.tar.xz 108215404 BLAKE2B 5e6c0b905b34b437137922b73a9724da96b8832186fea945f8c73d941db822ca1cc5718f3ecb4607ed98d1f8241c9f365b54caaf978863e8b84680a94f067b5d SHA512 732e2220219d42be10589fcaf2420da87ebc8564b4afc6bd02f61f31cdca9c31b339366e34d374fb814499b92f8aa796435a18f28e10c8cb00d9a0f5953bb60e
+DIST openjdk-bootstrap-11.0.13_p8-x86.tar.xz 105420236 BLAKE2B d3137ad497937a9a04dedf38776f3ac45bf3b115d275991fd8582b72ade48390b6aa8ad89e0b4d34fa6a787a3c413dab20b32ef347dc8733544e810150c55d29 SHA512 f71a7ef8fbf19b0595dd7d4ebe52bbe1c95b8c17f34d092472c5f5ce8caf52a053f22db8587f1649f9a96ad01c0c632be343342812f5a8cc4ff843b33b8d9b0f
+DIST openjdk-bootstrap-11.0.14_p9-riscv.tar.xz 104601676 BLAKE2B 5f976e8a626a829fae70ad6c007f10bfeff79e29c85d6c75fb2f5ff8984fd2a2bd44ee6e07958dbbdaaed761c6839d375e1b5ba6cffc63b02ad9e2c9178310db SHA512 580dec81626553fe3e7afd0f6385a733ba80a0502cf0f9e8bdc973048887290c9ab6171267d61d8838c4ece4de58c9ca8b78540bd52b1757495a27175057ec64
+DIST openjdk-bootstrap-17.0.1_p12-ppc64.tar.xz 116557680 BLAKE2B d20e45a5a76e30ee60446993bf5dcf0fa10b8b668ebec637ea02b458a472c642f22740e18f28cbf9923ea4cceb17702115c038b13137442e5f0572477d37f12f SHA512 92e0343f493d094300911625a561f42c47402ca4cdbd2ac18414089e8ed8a50ca58f02ec1ef9a3dce017ab7af99a22ab465ddf732ab9e55728e2b146de56fba7
+DIST openjdk-bootstrap-17.0.1_p12-x86.tar.xz 111479904 BLAKE2B 17d33f8ee81c2846f417d8e7cd1429eb611e916a6b375c76127179dc6afc55b0254248360c892ce37a178fd553934d952ec8955ff5d0613eb66678b8ecefe917 SHA512 094bcc960801e5fd7e1c966c8101c195ac7fa5e222d9c8e79ca64f8a3e6812613c17a0356211e7dd831325fa11af88cc22ed56c434d65504f18dd4f4ceaedfdf
+DIST openjdk-bootstrap-17.0.2_p8-arm64-musl.tar.xz 115353932 BLAKE2B 0cc4ab078085f094bbcc65448458d98a0f521e3b754c5118b1b4f957cfa00c24e896c811c2a477822c469ffcfe0de1ad6a8d0b7db23b0b09ae3b459eaf8c4fc8 SHA512 e30acd6c64a0095f4203129ecf2cff4c6b4293bc017457465d3abb746d280a2f5d89028eed22f7f3d236890d047149c7aa257e3b49593d7a6ab4dd6b777a7c26
+DIST openjdk-bootstrap-17.0.3_p7-riscv.tar.xz 113344052 BLAKE2B 69ae326c600ecf1840a0874b1e26545779434b979e195a3bc7975615f873cd9ffce324f291e56a2800edc304447845baec774b2a08964afde274bd8e0dd3f704 SHA512 4a483faa32b26758f6fae605fdb3d3b77814c627a3a560e91ca88e2d36a88543a53f019a59b5a6456b87ca671e8b7129d5766210bd5cd52125cb3a040ec2a23f
+DIST openjdk-bootstrap-21.0.0_p35-ppc64.tar.xz 125375264 BLAKE2B 28802995f393dc76362dae766f8b598fd56085051418075d4c426293e6431b441ea38a2d2e4676fc89173d10324e3aafac52c97a5d9459bb0199168a07807e16 SHA512 cbd3992450c44764373c25313f6ce32f0c8a47abec557e4a10f7f8517435bf450ba5ac9fa9c8cdfb41f1536b55829d733426dc12dc2b5a2eebf5a94e9094752a
+DIST openjdk-bootstrap-21.0.0_p35-x86.tar.xz 120906212 BLAKE2B c3a56f4e51a8aca1c318b9c32bebdb4c09e42d80416ce1843bc80077f09466b7f54627ab6992f9149fdabdb4d5557c3cad6b5e93b37ba3d89d84f736fc07a57a SHA512 40f0cf60adaebd0c6ae11badb6b71727a5cc64c89077731b0f7cc82f203297b9b780ae43ec74eca9dd5a64de1209f519c2ad0f9083c017cf474d1020206f762c
+DIST openjdk-bootstrap-8.402_p06-ppc64.tar.xz 34476368 BLAKE2B 1f896772f5e40a2793c5d9294e65e429c94204f91e91bfd76ff780e1d6318741c2052c3f20e59abcfb7018924983b5c9f386f14f912660e3e86296185f348482 SHA512 7bace068c5ac7604ad9db3ed655a52a4a90195efbf2fc342389cf7929d82d3f7b861fe700c16f513599bf9c064a87c9aa5966d7bd45aa7ed5e55ec317667be6a
+DIST openjdk-bootstrap-8.402_p06-x86.tar.xz 37076244 BLAKE2B bd50f84e8ac2ee9850c158c7e7d9fae9741112230dcd6e314163911921d63e3222cd3f4ab9d08bbaacbf6d9bfce9a1a9336e21088fba6396613489a701b30797 SHA512 fe5719e0bbf9bcd6eb9790ebd4da34e7f6c99fe4b7d41de2b5d00b20ebe76a77d857c726d1a71b7f40657ca2a9aa08eaa9efc1ab4be60016f66af95530b454b5
diff --git a/dev-java/openjdk/files/openjdk-11.env.sh b/dev-java/openjdk/files/openjdk-11.env.sh
deleted file mode 100644
index 96c4be79c33f..000000000000
--- a/dev-java/openjdk/files/openjdk-11.env.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-VERSION="OpenJDK ${PV}"
-JAVA_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
-JDK_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
-JAVAC="\${JAVA_HOME}/bin/javac"
-PATH="\${JAVA_HOME}/bin"
-ROOTPATH="\${JAVA_HOME}/bin"
-LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
-MANPATH=""
-PROVIDES_TYPE="JDK JRE"
-PROVIDES_VERSION="${SLOT}"
-BOOTCLASSPATH=""
-GENERATION="2"
-ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openjdk/files/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch b/dev-java/openjdk/files/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch
new file mode 100644
index 000000000000..317f1aa226b3
--- /dev/null
+++ b/dev-java/openjdk/files/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch
@@ -0,0 +1,41 @@
+From cc568d4d246ffc9bf08a96db0889d3b89c852718 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 6 Mar 2024 11:22:11 +0000
+Subject: [PATCH 1/4] Fix -Wint-conversion
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Backport of upstream commit https://github.com/openjdk/jdk21u-dev/commit/7b1455163ed893639059b3d62b71b2ff347c2e3f.
+
+Fixes the following warning/error:
+```
+jdk8u-jdk8u402-ga/jdk/src/share/bin/splashscreen_stubs.c:64:5: error: returning ‘void *’ from a function with return type ‘int’ makes integer from pointer without a cast [-Wint-conversion]
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+---
+ jdk/src/share/bin/splashscreen_stubs.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/jdk/src/share/bin/splashscreen_stubs.c b/jdk/src/share/bin/splashscreen_stubs.c
+index 9c1f514..666634f 100644
+--- a/jdk/src/share/bin/splashscreen_stubs.c
++++ b/jdk/src/share/bin/splashscreen_stubs.c
+@@ -61,11 +61,11 @@ typedef char* (*SplashGetScaledImageName_t)(const char* fileName,
+ #define INVOKEV(name) _INVOKE(name, ,;)
+
+ int DoSplashLoadMemory(void* pdata, int size) {
+- INVOKE(SplashLoadMemory, NULL)(pdata, size);
++ INVOKE(SplashLoadMemory, 0)(pdata, size);
+ }
+
+ int DoSplashLoadFile(const char* filename) {
+- INVOKE(SplashLoadFile, NULL)(filename);
++ INVOKE(SplashLoadFile, 0)(filename);
+ }
+
+ void DoSplashInit(void) {
+--
+2.44.0
+
diff --git a/dev-java/openjdk/files/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch b/dev-java/openjdk/files/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch
new file mode 100644
index 000000000000..3e8a5d17113c
--- /dev/null
+++ b/dev-java/openjdk/files/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch
@@ -0,0 +1,48 @@
+From 57b8fef20b090ffdf99bcf2c3f5fc8d0d4472788 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 6 Mar 2024 11:54:24 +0000
+Subject: [PATCH 2/4] Fix -Wincompatible-pointer-types
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Backport https://github.com/openjdk/jdk17u/commit/6632e6c6ca74101b45b052fb7962376fbe97605e.
+
+```
+jdk8u-jdk8u402-ga/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c: In function ‘Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_writeImage’:
+jdk8u-jdk8u402-ga/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c:2853:19: error: passing argument 1 of ‘freeArray’ from incompatible pointer type [-Wincompatible-pointer-types]
+ 2853 | freeArray(scale, numBands);
+ | ^~~~~
+ | |
+ | UINT8 ** {aka unsigned char **}
+jdk8u-jdk8u402-ga/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c:2689:30: note: expected ‘void **’ but argument is of type ‘UINT8 **’ {aka ‘unsigned char **’}
+ 2689 | static void freeArray(void** arr, jint size) {
+ | ~~~~~~~^~~
+jdk8u-jdk8u402-ga/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c:2860:19: error: passing argument 1 of ‘freeArray’ from incompatible pointer type [-Wincompatible-pointer-types]
+ 2860 | freeArray(scale, numBands);
+ | ^~~~~
+ | |
+ | UINT8 ** {aka unsigned char **}
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+---
+ jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c b/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c
+index 7e1d8c9..163003c 100644
+--- a/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c
++++ b/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c
+@@ -2686,7 +2686,7 @@ Java_com_sun_imageio_plugins_jpeg_JPEGImageWriter_writeTables
+ RELEASE_ARRAYS(env, data, NULL);
+ }
+
+-static void freeArray(void** arr, jint size) {
++static void freeArray(UINT8** arr, jint size) {
+ int i;
+ if (arr != NULL) {
+ for (i = 0; i < size; i++) {
+--
+2.44.0
+
diff --git a/dev-java/openjdk/files/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch b/dev-java/openjdk/files/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch
new file mode 100644
index 000000000000..3e4296d21aac
--- /dev/null
+++ b/dev-java/openjdk/files/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch
@@ -0,0 +1,38 @@
+From 685bf942bdf5b265a3b343c2b682b01b11b6e58a Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 6 Mar 2024 12:20:03 +0000
+Subject: [PATCH 3/4] Fix negative value left shift
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Backport of https://github.com/openjdk/jdk17u/commit/51be7db96f3fc32a7ddb24f8af19fb4fc0577aaf.
+
+```
+jdk/src/share/native/com/sun/java/util/jar/pack/constants.h:226:37: error: left operand of shift expression ‘(-1 << 13)’ is negative [-fpermissive]
+jdk/src/share/native/com/sun/java/util/jar/pack/constants.h:226:39: error: enumerator value for ‘AO_UNUSED_MBZ’ is not an integer constant
+ 226 | AO_UNUSED_MBZ = (-1)<<13, // options bits reserved for future use.
+ | ^~
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+---
+ jdk/src/share/native/com/sun/java/util/jar/pack/constants.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/jdk/src/share/native/com/sun/java/util/jar/pack/constants.h b/jdk/src/share/native/com/sun/java/util/jar/pack/constants.h
+index f1a1f73..536003b 100644
+--- a/jdk/src/share/native/com/sun/java/util/jar/pack/constants.h
++++ b/jdk/src/share/native/com/sun/java/util/jar/pack/constants.h
+@@ -223,7 +223,7 @@ enum {
+ AO_HAVE_FIELD_FLAGS_HI = 1<<10,
+ AO_HAVE_METHOD_FLAGS_HI = 1<<11,
+ AO_HAVE_CODE_FLAGS_HI = 1<<12,
+- AO_UNUSED_MBZ = (-1)<<13, // options bits reserved for future use.
++ AO_UNUSED_MBZ = (int)((~0U)<<13), // options bits reserved for future use.
+
+ #define ARCHIVE_BIT_DO(F) \
+ F(AO_HAVE_SPECIAL_FORMATS) \
+--
+2.44.0
+
diff --git a/dev-java/openjdk/files/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch b/dev-java/openjdk/files/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch
new file mode 100644
index 000000000000..44c5268646d8
--- /dev/null
+++ b/dev-java/openjdk/files/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch
@@ -0,0 +1,61 @@
+From 24f51a75b79aec29bd1631d320e051a646b9fae4 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 6 Mar 2024 12:23:41 +0000
+Subject: [PATCH 4/4] Fix misc. warnings
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Backport of https://github.com/openjdk/jdk11u/commit/49dec121161c162f4aa94caf8c09413253d89377.
+
+```
+jdk8u-jdk8u402-ga/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp: In function ‘_jobject* Java_com_sun_java_util_jar_Unpack_getUnusedInput(JNIEnv*, jobject)’:
+jdk8u-jdk8u402-ga/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp:295:12: error: cannot convert ‘bool’ to ‘jobject’ {aka ‘_jobject*’} in return
+ 295 | return false;
+ | ^~~~~
+jdk8u-jdk8u402-ga/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp: In function ‘jlong Java_com_sun_java_util_jar_pack_NativeUnpack_finish(JNIEnv*, jobject)’:
+jdk8u-jdk8u402-ga/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp:315:3: warning: converting to non-pointer type ‘long int’ from NULL [-Wconversion-null]
+ 315 | CHECK_EXCEPTION_RETURN_VALUE(uPtr, NULL);
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
+jdk8u-jdk8u402-ga/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp:315:3: warning: converting to non-pointer type ‘long int’ from NULL [-Wconversion-null]
+[...]
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+---
+ jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp b/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp
+index 5fbc726..4c002e7 100644
+--- a/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp
++++ b/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp
+@@ -292,7 +292,7 @@ Java_com_sun_java_util_jar_pack_NativeUnpack_getUnusedInput(JNIEnv *env, jobject
+
+ if (uPtr->aborting()) {
+ THROW_IOE(uPtr->get_abort_message());
+- return false;
++ return null;
+ }
+
+ // We have fetched all the files.
+@@ -312,7 +312,7 @@ Java_com_sun_java_util_jar_pack_NativeUnpack_finish(JNIEnv *env, jobject pObj) {
+ // There's no need to create a new unpacker here if we don't already have one
+ // just to immediatly free it afterwards.
+ unpacker* uPtr = get_unpacker(env, pObj, /* noCreate= */ true);
+- CHECK_EXCEPTION_RETURN_VALUE(uPtr, NULL);
++ CHECK_EXCEPTION_RETURN_VALUE(uPtr, 0);
+ size_t consumed = uPtr->input_consumed();
+ // free_unpacker() will set the unpacker field on 'pObj' to null
+ free_unpacker(env, pObj, uPtr);
+@@ -323,6 +323,7 @@ JNIEXPORT jboolean JNICALL
+ Java_com_sun_java_util_jar_pack_NativeUnpack_setOption(JNIEnv *env, jobject pObj,
+ jstring pProp, jstring pValue) {
+ unpacker* uPtr = get_unpacker(env, pObj);
++ CHECK_EXCEPTION_RETURN_VALUE(uPtr, false);
+ const char* prop = env->GetStringUTFChars(pProp, JNI_FALSE);
+ CHECK_EXCEPTION_RETURN_VALUE(prop, false);
+ const char* value = env->GetStringUTFChars(pValue, JNI_FALSE);
+--
+2.44.0
+
diff --git a/dev-java/openjdk/files/openjdk-8.env.sh b/dev-java/openjdk/files/openjdk-8.env.sh
index e85a08ce4a8b..cc0bc80b474b 100644
--- a/dev-java/openjdk/files/openjdk-8.env.sh
+++ b/dev-java/openjdk/files/openjdk-8.env.sh
@@ -1,13 +1,10 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
VERSION="OpenJDK ${PV}"
JAVA_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
JDK_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
JAVAC="\${JAVA_HOME}/bin/javac"
PATH="\${JAVA_HOME}/bin"
ROOTPATH="\${JAVA_HOME}/bin"
-LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
+LDPATH="\${JAVA_HOME}/jre/lib/$(get_system_arch)/:\${JAVA_HOME}/jre/lib/$(get_system_arch)/server/"
MANPATH="\${JAVA_HOME}/man"
PROVIDES_TYPE="JDK JRE"
PROVIDES_VERSION="1.${SLOT}"
diff --git a/dev-java/openjdk/files/openjdk.env.sh b/dev-java/openjdk/files/openjdk.env.sh
new file mode 100644
index 000000000000..287c0578b7c2
--- /dev/null
+++ b/dev-java/openjdk/files/openjdk.env.sh
@@ -0,0 +1,13 @@
+VERSION="OpenJDK ${PV}"
+JAVA_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
+JDK_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}"
+JAVAC="\${JAVA_HOME}/bin/javac"
+PATH="\${JAVA_HOME}/bin"
+ROOTPATH="\${JAVA_HOME}/bin"
+LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
+MANPATH=""
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="${SLOT}"
+BOOTCLASSPATH=""
+GENERATION="2"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
diff --git a/dev-java/openjdk/metadata.xml b/dev-java/openjdk/metadata.xml
index 24efdf8c8119..543587cc5399 100644
--- a/dev-java/openjdk/metadata.xml
+++ b/dev-java/openjdk/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
@@ -16,14 +12,21 @@
<slots>
<slot name="8">Javaâ„¢ 8 is Javaâ„¢ 1.8, where 8 is the version number, and 1.8 is the version string</slot>
<slot name="11">Javaâ„¢ version 11</slot>
+ <slot name="17">Javaâ„¢ version 17</slot>
</slots>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
<flag name="javafx" restrict="&lt;=dev-java/openjdk-9">Provide JavaFX support via <pkg>dev-java/openjfx</pkg></flag>
<flag name="javafx" restrict="&gt;=dev-java/openjdk-11">Import OpenJFX modules at build time, via <pkg>dev-java/openjfx</pkg></flag>
<flag name="jbootstrap">Build OpenJDK twice, the second time using the result of the first</flag>
<flag name="source">Install JVM sources</flag>
+ <flag name="system-bootstrap">Bootstrap using installed openjdk</flag>
<flag name="systemtap" restrict="&gt;=dev-java/openjdk-11">Enable SystemTAP/DTrace tracing</flag>
</use>
+ <upstream>
+ <remote-id type="github">openjdk/jdk8u</remote-id>
+ <remote-id type="github">openjdk/jdk11u</remote-id>
+ <remote-id type="github">openjdk/jdk17u</remote-id>
+ <remote-id type="github">openjdk/jdk21u</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/openjdk/openjdk-11.0.11_p9-r1.ebuild b/dev-java/openjdk/openjdk-11.0.11_p9-r1.ebuild
deleted file mode 100644
index 789f3f0fde3b..000000000000
--- a/dev-java/openjdk/openjdk-11.0.11_p9-r1.ebuild
+++ /dev/null
@@ -1,275 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs
-
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="${PV%_p*}-ga"
-SLOT="${MY_PV%%[.+]*}"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.java.net"
-SRC_URI="https://hg.${PN}.java.net/jdk-updates/jdk${SLOT}u/archive/jdk-${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
-
-LICENSE="GPL-2"
-KEYWORDS="amd64 ~arm arm64 ppc64"
-
-IUSE="alsa cups debug doc examples gentoo-vm headless-awt javafx +jbootstrap +pch selinux source systemtap"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- virtual/jpeg:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- )
-"
-
-REQUIRED_USE="javafx? ( alsa !headless-awt )"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- # The nastiness below is necessary while the gentoo-vm USE flag is
- # masked. First we call java-pkg-2_pkg_setup if it looks like the
- # flag was unmasked against one of the possible build VMs. If not,
- # we try finding one of them in their expected locations. This would
- # have been slightly less messy if openjdk-bin had been installed to
- # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
- # file but disable it so that it would not normally be selectable.
-
- local vm
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
-
- if has_version --host-root dev-java/openjdk:${SLOT}; then
- export JDK_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
- else
- if [[ ${MERGE_TYPE} != "binary" ]]; then
- JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
- export JDK_HOME
- fi
- fi
-}
-
-src_prepare() {
- default
- chmod +x configure || die
-}
-
-src_configure() {
- # Work around stack alignment issue, bug #647954. in case we ever have x86
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype=system
- --with-giflib=system
- --with-harfbuzz=system
- --with-lcms=system
- --with-libjpeg=system
- --with-libpng=system
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib=system
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- if use javafx; then
- local zip="${EPREFIX%/}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- # PaX breaks pch, bug #601016
- if use pch && ! host-is-pax; then
- myconf+=( --enable-precompiled-headers )
- else
- myconf+=( --disable-precompiled-headers )
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym ../../../../../etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-
- if use gentoo-vm ; then
- ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
- ewarn "recognised by the system. This will almost certainly break"
- ewarn "many java ebuilds as they are not ready for openjdk-11"
- else
- ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
- ewarn "will not be recognised by the system. For example, simply calling"
- ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
- ewarn "fully supports Java ${SLOT}. This JDK must therefore be invoked using its"
- ewarn "absolute location under ${EPREFIX}/usr/$(get_libdir)/${PN}-${SLOT}."
- fi
-}
diff --git a/dev-java/openjdk/openjdk-11.0.22_p7.ebuild b/dev-java/openjdk/openjdk-11.0.22_p7.ebuild
new file mode 100644
index 000000000000..a5a6cc2d4a63
--- /dev/null
+++ b/dev-java/openjdk/openjdk-11.0.22_p7.ebuild
@@ -0,0 +1,312 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eapi8-dosym check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="${PV%_p*}-ga"
+SLOT="${MY_PV%%[.+]*}"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
+RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
+X86_XPAK="11.0.13_p8"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri riscv ${RISCV_XPAK})
+ $(bootstrap_uri x86 ${X86_XPAK})
+ )
+ riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.18-riscv.patch.xz )
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
+ dev-java/openjdk:${SLOT}[gentoo-vm(+)]
+ )
+ )
+"
+
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ if use system-bootstrap; then
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ use riscv && eapply "${WORKDIR}"/openjdk-11.0.18-riscv.patch
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if ! use system-bootstrap; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ fi
+
+ # Work around stack alignment issue, bug #647954.
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+ ! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ # this is not useful for users, just for upstream developers
+ # build system compares mesa version in md file
+ # https://bugs.gentoo.org/822612
+ export LEGAL_EXCLUDES=mesa3d.md
+
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-11.0.23_p9.ebuild b/dev-java/openjdk/openjdk-11.0.23_p9.ebuild
new file mode 100644
index 000000000000..60f9354ff576
--- /dev/null
+++ b/dev-java/openjdk/openjdk-11.0.23_p9.ebuild
@@ -0,0 +1,311 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="${PV%_p*}-ga"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
+RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
+X86_XPAK="11.0.13_p8"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk11u/archive/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri riscv ${RISCV_XPAK})
+ $(bootstrap_uri x86 ${X86_XPAK})
+ )
+ riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.18-riscv.patch.xz )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
+ dev-java/openjdk:${SLOT}[gentoo-vm(+)]
+ )
+ )
+"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ if use system-bootstrap; then
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ use riscv && eapply "${WORKDIR}"/openjdk-11.0.18-riscv.patch
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if ! use system-bootstrap; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ fi
+
+ # Work around stack alignment issue, bug #647954.
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+ ! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ # this is not useful for users, just for upstream developers
+ # build system compares mesa version in md file
+ # https://bugs.gentoo.org/822612
+ export LEGAL_EXCLUDES=mesa3d.md
+
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-17.0.10_p7.ebuild b/dev-java/openjdk/openjdk-17.0.10_p7.ebuild
new file mode 100644
index 000000000000..0b834a1a41a4
--- /dev/null
+++ b/dev-java/openjdk/openjdk-17.0.10_p7.ebuild
@@ -0,0 +1,321 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+ARM64_XPAK="17.0.2_p8" # musl bootstrap install
+PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
+RISCV_XPAK="17.0.3_p7"
+X86_XPAK="17.0.1_p12"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+ [[ ${cond} == elibc_musl* ]] && local musl=yes
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
+}
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+MY_PV="${PV%_p*}-ga"
+SLOT="${MY_PV%%[.+]*}"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri x86 ${X86_XPAK})
+ $(bootstrap_uri riscv ${RISCV_XPAK})
+ )
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ # The nastiness below is necessary while the gentoo-vm USE flag is
+ # masked. First we call java-pkg-2_pkg_setup if it looks like the
+ # flag was unmasked against one of the possible build VMs. If not,
+ # we try finding one of them in their expected locations. This would
+ # have been slightly less messy if openjdk-bin had been installed to
+ # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
+ # file but disable it so that it would not normally be selectable.
+
+ local vm
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+}
+
+src_prepare() {
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if has_version dev-java/openjdk:${SLOT}; then
+ export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
+ elif use !system-bootstrap ; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ else
+ JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+ [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+ JDK_HOME=${JDK_HOME#*/}
+ JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
+ export JDK_HOME
+ fi
+
+ # Work around stack alignment issue, bug #647954. in case we ever have x86
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --disable-warnings-as-errors
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-jvm-feature-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-17.0.11_p9.ebuild b/dev-java/openjdk/openjdk-17.0.11_p9.ebuild
new file mode 100644
index 000000000000..1c4f51f66acd
--- /dev/null
+++ b/dev-java/openjdk/openjdk-17.0.11_p9.ebuild
@@ -0,0 +1,320 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+ARM64_XPAK="17.0.2_p8" # musl bootstrap install
+PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
+RISCV_XPAK="17.0.3_p7"
+X86_XPAK="17.0.1_p12"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+ [[ ${cond} == elibc_musl* ]] && local musl=yes
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
+}
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+MY_PV="${PV%_p*}-ga"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk17u/archive/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri x86 ${X86_XPAK})
+ $(bootstrap_uri riscv ${RISCV_XPAK})
+ )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ # The nastiness below is necessary while the gentoo-vm USE flag is
+ # masked. First we call java-pkg-2_pkg_setup if it looks like the
+ # flag was unmasked against one of the possible build VMs. If not,
+ # we try finding one of them in their expected locations. This would
+ # have been slightly less messy if openjdk-bin had been installed to
+ # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
+ # file but disable it so that it would not normally be selectable.
+
+ local vm
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+}
+
+src_prepare() {
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if has_version dev-java/openjdk:${SLOT}; then
+ export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
+ elif use !system-bootstrap ; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ else
+ JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+ [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+ JDK_HOME=${JDK_HOME#*/}
+ JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
+ export JDK_HOME
+ fi
+
+ # Work around stack alignment issue, bug #647954. in case we ever have x86
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --disable-warnings-as-errors
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-jvm-feature-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-21.0.3_p9.ebuild b/dev-java/openjdk/openjdk-21.0.3_p9.ebuild
new file mode 100644
index 000000000000..943ac23576da
--- /dev/null
+++ b/dev-java/openjdk/openjdk-21.0.3_p9.ebuild
@@ -0,0 +1,319 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+PPC64_XPAK="21.0.0_p35" # big-endian bootstrap tarball
+X86_XPAK="21.0.0_p35"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
+# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+ [[ ${cond} == elibc_musl* ]] && local musl=yes
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
+}
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+MY_PV="${PV%_p*}-ga"
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/${PN}/jdk21u/archive/jdk-${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ $(bootstrap_uri x86 ${X86_XPAK})
+ )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${MY_PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap lto selinux source +system-bootstrap systemtap"
+
+REQUIRED_USE="
+ javafx? ( alsa !headless-awt )
+ !system-bootstrap? ( jbootstrap )
+ !system-bootstrap? ( || ( ppc64 x86 ) )
+"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ media-libs/harfbuzz:=
+ media-libs/libpng:0=
+ media-libs/lcms:2=
+ sys-libs/zlib
+ media-libs/libjpeg-turbo:0=
+ systemtap? ( dev-debug/systemtap )
+"
+
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ javafx? ( dev-java/openjfx:${SLOT}= )
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ # The nastiness below is necessary while the gentoo-vm USE flag is
+ # masked. First we call java-pkg-2_pkg_setup if it looks like the
+ # flag was unmasked against one of the possible build VMs. If not,
+ # we try finding one of them in their expected locations. This would
+ # have been slightly less messy if openjdk-bin had been installed to
+ # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
+ # file but disable it so that it would not normally be selectable.
+
+ local vm
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+}
+
+src_prepare() {
+ default
+ chmod +x configure || die
+}
+
+src_configure() {
+ if has_version dev-java/openjdk:${SLOT}; then
+ export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
+ elif use !system-bootstrap ; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ else
+ JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+ [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+ JDK_HOME=${JDK_HOME#*/}
+ JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
+ export JDK_HOME
+ fi
+
+ # Work around stack alignment issue, bug #647954. in case we ever have x86
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # bug 906987; append-cppflags doesnt work
+ use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, we rely on USE=lto and --with-jvm-features=link-time-opt
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ # Enabling full docs appears to break doc building. If not
+ # explicitly disabled, the flag will get auto-enabled if pandoc and
+ # graphviz are detected. pandoc has loads of dependencies anyway.
+
+ local myconf=(
+ --disable-ccache
+ --disable-precompiled-headers
+ --disable-warnings-as-errors
+ --enable-full-docs=no
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype="${XPAK_BOOTSTRAP:-system}"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
+ --with-lcms="${XPAK_BOOTSTRAP:-system}"
+ --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
+ --with-libpng="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-vendor-version-string="${PVR}"
+ --with-version-pre=""
+ --with-version-string="${PV%_p*}"
+ --with-version-build="${PV#*_p}"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --enable-jvm-feature-dtrace=$(usex systemtap yes no)
+ --enable-headless-only=$(usex headless-awt yes no)
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ use riscv && myconf+=( --with-boot-jdk-jvmargs="-Djdk.lang.Process.launchMechanism=vfork" )
+
+ use lto && myconf+=( --with-jvm-features=link-time-opt )
+
+ if use javafx; then
+ local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
+ if [[ -r ${zip} ]]; then
+ myconf+=( --with-import-modules="${zip}" )
+ else
+ die "${zip} not found or not readable"
+ fi
+ fi
+
+ if use !system-bootstrap ; then
+ addpredict /dev/random
+ addpredict /proc/self/coredump_filter
+ fi
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images product-images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/jdk || die
+
+ # Create files used as storage for system preferences.
+ mkdir .systemPrefs || die
+ touch .systemPrefs/.system.lock || die
+ touch .systemPrefs/.systemRootModFile || die
+
+ # Oracle and IcedTea have libjsoundalsa.so depending on
+ # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
+ if ! use alsa ; then
+ rm -v lib/libjsound.* || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v lib/src.zip || die
+ fi
+
+ rm -v lib/security/cacerts || die
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
+
+ # must be done before running itself
+ java-vm_set-pax-markings "${ddest}"
+
+ einfo "Creating the Class Data Sharing archives and disabling usage tracking"
+ "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
+
+ java-vm_install-env "${FILESDIR}"/${PN}.env.sh
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/images/docs/*
+ dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+}
diff --git a/dev-java/openjdk/openjdk-8.292_p10.ebuild b/dev-java/openjdk/openjdk-8.292_p10.ebuild
deleted file mode 100644
index 898080f8d64f..000000000000
--- a/dev-java/openjdk/openjdk-8.292_p10.ebuild
+++ /dev/null
@@ -1,253 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils toolchain-funcs
-
-# we need latest -ga tag from hg, but want to keep build number as well
-# as _p component of the gentoo version string.
-
-MY_PV=$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)
-MY_PN_AARCH64="${PN}-aarch64-shenandoah"
-MY_PV_AARCH64="$(ver_rs 1 'u' 2 '-' ${PV/_p/-b})"
-MY_P_AARCH64="${MY_PN_AARCH64/#${PN}-}-jdk${MY_PV_AARCH64}"
-
-BASE_URI="https://hg.${PN}.java.net/jdk8u/jdk8u"
-AARCH64_URI="https://hg.${PN}.java.net/aarch64-port/jdk8u-shenandoah"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.java.net"
-SRC_URI="
- !arm64? (
- ${BASE_URI}/archive/jdk${MY_PV}.tar.bz2 -> ${P}.tar.bz2
- ${BASE_URI}/corba/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-corba-${PV}.tar.bz2
- ${BASE_URI}/hotspot/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-hotspot-${PV}.tar.bz2
- ${BASE_URI}/jaxp/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jaxp-${PV}.tar.bz2
- ${BASE_URI}/jaxws/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jaxws-${PV}.tar.bz2
- ${BASE_URI}/jdk/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-jdk-${PV}.tar.bz2
- ${BASE_URI}/langtools/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-langtools-${PV}.tar.bz2
- ${BASE_URI}/nashorn/archive/jdk${MY_PV}.tar.bz2 -> ${PN}-nashorn-${PV}.tar.bz2
- )
- arm64? (
- ${AARCH64_URI}/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-${PV}.tar.bz2
- ${AARCH64_URI}/corba/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-corba-${PV}.tar.bz2
- ${AARCH64_URI}/hotspot/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-hotspot-${PV}.tar.bz2
- ${AARCH64_URI}/jaxp/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-jaxp-${PV}.tar.bz2
- ${AARCH64_URI}/jaxws/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-jaxws-${PV}.tar.bz2
- ${AARCH64_URI}/jdk/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-jdk-${PV}.tar.bz2
- ${AARCH64_URI}/langtools/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-langtools-${PV}.tar.bz2
- ${AARCH64_URI}/nashorn/archive/${MY_P_AARCH64}.tar.bz2 -> ${MY_PN_AARCH64}-nashorn-jdk${PV}.tar.bz2
- )
-"
-
-LICENSE="GPL-2"
-SLOT="$(ver_cut 1)"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="alsa debug cups doc examples headless-awt javafx +jbootstrap +pch selinux source"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- sys-libs/zlib
-"
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- virtual/pkgconfig
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/icedtea-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- dev-java/icedtea:${SLOT}
- )
-"
-
-PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
-
-PATCHES=( "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" )
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT} icedtea-${SLOT} icedtea-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- java-vm-2_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-src_unpack() {
- default
- mv -v "jdk${SLOT}u"* "${P}" || die
-
- local repo
- for repo in corba hotspot jdk jaxp jaxws langtools nashorn; do
- mv -v "${repo}-"* "${P}/${repo}" || die
- done
-}
-
-src_prepare() {
- default
-
- # new warnings in new gcc https://bugs.gentoo.org/685426
- sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
- hotspot/make/linux/makefiles/gcc.make || die
-
- chmod +x configure || die
-}
-
-src_configure() {
- # general build info found here:
- #https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #706638
- append-flags -fcommon
-
- tc-export_build_env CC CXX PKG_CONFIG STRIP
-
- local myconf=(
- --disable-ccache
- --enable-unlimited-crypto
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-giflib=system
- --with-jtreg=no
- --with-jobs=1
- --with-num-cores=1
- --with-update-version="$(ver_cut 2)"
- --with-build-number="b$(ver_cut 4)"
- --with-milestone="fcs" # magic variable that means "release version"
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-zlib=system
- --with-native-debug-symbols=$(usex debug internal none)
- $(usex headless-awt --disable-headful '')
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- # PaX breaks pch, bug #601016
- if use pch && ! host-is-pax; then
- myconf+=( --enable-precompiled-headers )
- else
- myconf+=( --disable-precompiled-headers )
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- CONFIG_SHELL="${EPREFIX}/bin/bash"
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED%/}/${dest#/}"
-
- cd "${S}"/build/*-release/images/j2sdk-image || die
-
- if ! use alsa; then
- rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
- fi
-
- # build system does not remove that
- if use headless-awt ; then
- rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
- {,jre/}bin/policytool bin/appletviewer || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v src.zip || die
- fi
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym ../../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
-
- java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/docs/*
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
- einfo "JavaWebStart functionality provided by icedtea-web package"
-}
diff --git a/dev-java/openjdk/openjdk-8.402_p06-r2.ebuild b/dev-java/openjdk/openjdk-8.402_p06-r2.ebuild
new file mode 100644
index 000000000000..84a8a1eeb9d6
--- /dev/null
+++ b/dev-java/openjdk/openjdk-8.402_p06-r2.ebuild
@@ -0,0 +1,284 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
+SLOT="${PV%%[.+]*}"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+X86_XPAK="8.402_p06"
+PPC64_XPAK="8.402_p06"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri x86 8.402_p06)
+# Output: ppc64? ( big-endian? ( https://...8.402_p06-x86.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/openjdk/jdk${SLOT}u/archive/refs/tags/jdk${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri x86 ${X86_XPAK})
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ )
+"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="amd64 arm64 ppc64 x86"
+IUSE="alsa big-endian debug cups doc examples headless-awt javafx +jbootstrap selinux system-bootstrap source"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ sys-libs/zlib
+"
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ virtual/pkgconfig
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
+
+S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
+
+PATCHES=(
+ "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch"
+)
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ if use system-bootstrap; then
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ default
+
+ # new warnings in new gcc https://bugs.gentoo.org/685426
+ sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
+ hotspot/make/linux/makefiles/gcc.make || die
+
+ chmod +x configure || die
+}
+
+src_configure() {
+ if ! use system-bootstrap; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ fi
+
+ # general build info found here:
+ # https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
+
+ # -Wregister use (bug #918655)
+ append-cxxflags -std=gnu++14
+
+ # Work around stack alignment issue, bug #647954.
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, no support in this version.
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ tc-export_build_env CC CXX PKG_CONFIG STRIP
+
+ local myconf=(
+ --disable-ccache
+ --disable-freetype-bundling
+ --disable-precompiled-headers
+ --enable-unlimited-crypto
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )"
+ --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-jtreg=no
+ --with-jobs=1
+ --with-num-cores=1
+ --with-update-version="$(ver_cut 2)"
+ --with-build-number="b$(ver_cut 4)"
+ --with-milestone="fcs" # magic variable that means "release version"
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ $(usex headless-awt --disable-headful '')
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ CONFIG_SHELL="${BROOT}/bin/bash"
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/j2sdk-image || die
+
+ if ! use alsa; then
+ rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
+ fi
+
+ # build system does not remove that
+ if use headless-awt ; then
+ rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/docs/*
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+ einfo "JavaWebStart functionality provided by icedtea-web package"
+}
diff --git a/dev-java/openjdk/openjdk-8.412_p08.ebuild b/dev-java/openjdk/openjdk-8.412_p08.ebuild
new file mode 100644
index 000000000000..6280651782d6
--- /dev/null
+++ b/dev-java/openjdk/openjdk-8.412_p08.ebuild
@@ -0,0 +1,283 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
+
+# don't change versioning scheme
+# to find correct _p number, look at
+# https://github.com/openjdk/jdk${SLOT}u/tags
+# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
+# to exact same commit sha. we should always use the full version.
+# -ga tag is just for humans to easily identify General Availability release tag.
+# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
+# set build version properly
+MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
+
+# variable name format: <UPPERCASE_KEYWORD>_XPAK
+X86_XPAK="8.402_p06"
+PPC64_XPAK="8.402_p06"
+
+# Usage: bootstrap_uri <keyword> <version> [extracond]
+# Example: $(bootstrap_uri x86 8.402_p06)
+# Output: ppc64? ( big-endian? ( https://...8.402_p06-x86.tar.xz ) )
+bootstrap_uri() {
+ local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
+ local suff="tar.xz"
+ local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
+ local ver="${2:?${FUNCNAME[0]}: version not specified}"
+ local cond="${3-}"
+
+ # here be dragons
+ echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
+}
+
+DESCRIPTION="Open source implementation of the Java programming language"
+HOMEPAGE="https://openjdk.org"
+SRC_URI="
+ https://github.com/openjdk/jdk8u/archive/jdk${MY_PV}.tar.gz
+ -> ${P}.tar.gz
+ !system-bootstrap? (
+ $(bootstrap_uri x86 ${X86_XPAK})
+ $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
+ )
+"
+S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="${PV%%[.+]*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="alsa big-endian debug cups doc examples headless-awt javafx +jbootstrap selinux system-bootstrap source"
+
+COMMON_DEPEND="
+ media-libs/freetype:2=
+ media-libs/giflib:0/7
+ sys-libs/zlib
+"
+# Many libs are required to build, but not to run, make is possible to remove
+# by listing conditionally in RDEPEND unconditionally in DEPEND
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=sys-apps/baselayout-java-0.1.0-r1
+ !headless-awt? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ )
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ selinux? ( sec-policy/selinux-java )
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ app-arch/zip
+ media-libs/alsa-lib
+ net-print/cups
+ virtual/pkgconfig
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst
+ system-bootstrap? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
+
+PATCHES=(
+ "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0001-Fix-Wint-conversion.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0002-Fix-Wincompatible-pointer-types.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0003-Fix-negative-value-left-shift.patch"
+ "${FILESDIR}/openjdk-8.402_p06-0004-Fix-misc.-warnings.patch"
+)
+
+# The space required to build varies wildly depending on USE flags,
+# ranging from 2GB to 16GB. This function is certainly not exact but
+# should be close enough to be useful.
+openjdk_check_requirements() {
+ local M
+ M=2048
+ M=$(( $(usex debug 3 1) * $M ))
+ M=$(( $(usex jbootstrap 2 1) * $M ))
+ M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
+
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+pkg_pretend() {
+ openjdk_check_requirements
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
+ fi
+}
+
+pkg_setup() {
+ openjdk_check_requirements
+ java-vm-2_pkg_setup
+
+ [[ ${MERGE_TYPE} == "binary" ]] && return
+
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ if use system-bootstrap; then
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+ fi
+}
+
+src_prepare() {
+ default
+
+ # new warnings in new gcc https://bugs.gentoo.org/685426
+ sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
+ hotspot/make/linux/makefiles/gcc.make || die
+
+ chmod +x configure || die
+}
+
+src_configure() {
+ if ! use system-bootstrap; then
+ local xpakvar="${ARCH^^}_XPAK"
+ export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
+ fi
+
+ # general build info found here:
+ # https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
+
+ # -Wregister use (bug #918655)
+ append-cxxflags -std=gnu++14
+
+ # Work around stack alignment issue, bug #647954.
+ use x86 && append-flags -mincoming-stack-boundary=2
+
+ # Strip some flags users may set, but should not. #818502
+ filter-flags -fexceptions
+
+ # Strip lto related flags, no support in this version.
+ # https://bugs.gentoo.org/833097
+ # https://bugs.gentoo.org/833098
+ filter-lto
+ filter-flags -fdevirtualize-at-ltrans
+
+ tc-export_build_env CC CXX PKG_CONFIG STRIP
+
+ local myconf=(
+ --disable-ccache
+ --disable-freetype-bundling
+ --disable-precompiled-headers
+ --enable-unlimited-crypto
+ --with-boot-jdk="${JDK_HOME}"
+ --with-extra-cflags="${CFLAGS}"
+ --with-extra-cxxflags="${CXXFLAGS}"
+ --with-extra-ldflags="${LDFLAGS}"
+ --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )"
+ --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2"
+ --with-giflib="${XPAK_BOOTSTRAP:-system}"
+ --with-jtreg=no
+ --with-jobs=1
+ --with-num-cores=1
+ --with-update-version="$(ver_cut 2)"
+ --with-build-number="b$(ver_cut 4)"
+ --with-milestone="fcs" # magic variable that means "release version"
+ --with-vendor-name="Gentoo"
+ --with-vendor-url="https://gentoo.org"
+ --with-vendor-bug-url="https://bugs.gentoo.org"
+ --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
+ --with-zlib="${XPAK_BOOTSTRAP:-system}"
+ --with-native-debug-symbols=$(usex debug internal none)
+ $(usex headless-awt --disable-headful '')
+ $(tc-is-clang && echo "--with-toolchain-type=clang")
+ )
+
+ (
+ unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
+ CFLAGS= CXXFLAGS= LDFLAGS= \
+ CONFIG_SITE=/dev/null \
+ CONFIG_SHELL="${BROOT}/bin/bash"
+ econf "${myconf[@]}"
+ )
+}
+
+src_compile() {
+ # Too brittle - gets confused by e.g. -Oline
+ export MAKEOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg)"
+ unset GNUMAKEFLAGS MAKEFLAGS
+
+ local myemakeargs=(
+ JOBS=$(makeopts_jobs)
+ LOG=debug
+ CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
+ NICE= # Use PORTAGE_NICENESS, don't adjust further down
+ $(usex doc docs '')
+ $(usex jbootstrap bootcycle-images images)
+ )
+ emake "${myemakeargs[@]}" -j1
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
+ local ddest="${ED}/${dest#/}"
+
+ cd "${S}"/build/*-release/images/j2sdk-image || die
+
+ if ! use alsa; then
+ rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
+ fi
+
+ # build system does not remove that
+ if use headless-awt ; then
+ rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
+ {,jre/}bin/policytool bin/appletviewer || die
+ fi
+
+ if ! use examples ; then
+ rm -vr demo/ || die
+ fi
+
+ if ! use source ; then
+ rm -v src.zip || die
+ fi
+
+ dodir "${dest}"
+ cp -pPR * "${ddest}" || die
+
+ dosym -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
+
+ java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
+ java-vm_set-pax-markings "${ddest}"
+ java-vm_revdep-mask
+ java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
+
+ if use doc ; then
+ docinto html
+ dodoc -r "${S}"/build/*-release/docs/*
+ fi
+}
+
+pkg_postinst() {
+ java-vm-2_pkg_postinst
+ einfo "JavaWebStart functionality provided by icedtea-web package"
+}
diff --git a/dev-java/openjfx/Manifest b/dev-java/openjfx/Manifest
index 46d451a907e9..63028b364713 100644
--- a/dev-java/openjfx/Manifest
+++ b/dev-java/openjfx/Manifest
@@ -7,6 +7,6 @@ DIST lucene-grouping-7.1.0.jar 87200 BLAKE2B 93f4ca6938b3fbc74752e22ee9d53022a60
DIST lucene-queries-7.1.0.jar 243126 BLAKE2B 166c3efea04c19314be7fd8c1d6b1378b2b967243289d9bded5e9768cb441a35fabbe63641d00b72a8c14aace0bad402df49c21b853f620bf81bc1e829dcecdb SHA512 34df5eccf0577ed037ef347adc9c2552c49d57e35dbff629fdbb860926765be48f8b06fd693bdacfc2edcd9c6ad711c13fe98e5317cb1d1f2157dcab938e34ea
DIST lucene-queryparser-7.1.0.jar 384680 BLAKE2B adce2572de9f534323eead31dd30f97b853b2d5e4be6828c415f0c647460c361e00680d856ff9ffbba0fe45c3e4a425d68938a3d2dc01c76491bb65673e120fa SHA512 7151ef899e318679995138262c3450577ae33580708864581dc22a027f43ca4989825d434680925547e3c04ad4453a454e7045f605d7eee0da57d63db978ed68
DIST lucene-sandbox-7.1.0.jar 182914 BLAKE2B 70c795f84d8f0908abe47db77f632eeb6571a77e1445b8ab04a75080cea40e3b8171071965ff7fd9f6d39a450dd33144e922d19c1f07c605de54b45e3e881323 SHA512 6faf9fd9c7c082bf062adb6a28d89447e6e27152eb3f0a325081e5f791196e5440334632ccbf9c458940220676f7e73390a174889d9b7a656d088b3dade5d500
-DIST openjfx-11.0.9_p0.tar.bz2 64148934 BLAKE2B 317fb1c9ea99816ecbd8ab64ed3a6ad0aaa319bedd17bf71ee192c5e610fea14611f3938302f1caf666980bcc7d4787f770e36aec1884a73dac3ddba8e1a878f SHA512 8b6d339131f096b4490d7a8c4a20c15362b4f6c6aa4ddd74f610f3b5a8b8c7aac3ab123dcdd5488cc37dc38f1536ce1db95286f4233ee4db1845d1bd560b2236
+DIST openjfx-11.0.11_p1.tar.bz2 65017753 BLAKE2B ea5834e469bb0bd3a70595a91cc298f6091bc45de4c471ee9d0bcd45700ab3966a3396781ace2666bf94decd1219a83f01b277116cf23baeb6dd34a1a0f44191 SHA512 a1f94b3166aca50344f8af77ec2a5f52be1b0abc1c65fd3ff97f98017377ab772262502af00ad8cd4a6c44281ea459aff43a9cb7e30a1c35b822da8fb39b94fb
DIST openjfx-8.1000-backports.tar.bz2 9142182 BLAKE2B 58ea420ec015c49d2755105a3d11675a92ecab337c7bda5a1ad72e84d0b35f04ed4252cee24da89b1e7b1b5b8b8b9fea7db93364434800246b87827b21970cc3 SHA512 077392368947cb9da1b5c7e14b641d6edcddd9821eb4f16dbea33e8986568211e93799aca29e70b490c8ef2125d69f8372abd1b1ce428a95420f62ff15c414d6
DIST openjfx-8.1000.tar.bz2 62286455 BLAKE2B c9a714a618d9ae02768dae6128756d64b2b6299a36a6ad9828bf2213dc641cbbcaa2d3f3e0b4913bb60893419a2d5c730ca2db88f759bbd94b3e83112199278c SHA512 6049730b72e569939fed3d62b46a409e949b4c2309f4355253c8c891799c7fb5138e20aa217454fbbd78b1dd99c254b34b3fe6c9cbb35854bd8656993655bf32
diff --git a/dev-java/openjfx/files/11/0001-c99.patch b/dev-java/openjfx/files/11/0001-c99.patch
new file mode 100644
index 000000000000..f553d2858801
--- /dev/null
+++ b/dev-java/openjfx/files/11/0001-c99.patch
@@ -0,0 +1,22 @@
+https://bugs.gentoo.org/919413
+https://src.fedoraproject.org/rpms/openjfx/c/9e893037f3a20273c79603220b7a18a44be60fcc?branch=rawhide
+
+commit 42321838b98d2ebb3d8384c88a764ff2b4d70581
+Author: Florian Weimer <fweimer@openjdk.org>
+Date: Fri Jun 16 12:19:10 2023 +0000
+
+ 8307542: Call to FcConfigAppFontAddFile uses wrong prototype, arguments
+
+ Reviewed-by: kcr
+
+--- a/modules/javafx.graphics/src/main/native-font/pango.c
++++ b/modules/javafx.graphics/src/main/native-font/pango.c
+@@ -243,7 +243,7 @@ JNIEXPORT jboolean JNICALL OS_NATIVE(FcConfigAppFontAddFile)
+ if (text) {
+ // rc = (jboolean)FcConfigAppFontAddFile(arg0, text);
+ if (fp) {
+- rc = (jboolean)((jboolean (*)(void *, const char *))fp)(arg0, text);
++ rc = (jboolean)((int (*)(void *, const char *))fp)((void *)arg0, text);
+ }
+ (*env)->ReleaseStringUTFChars(env, arg1, text);
+ }
diff --git a/dev-java/openjfx/files/11/0002-c99.patch b/dev-java/openjfx/files/11/0002-c99.patch
new file mode 100644
index 000000000000..4cdc5ed35e50
--- /dev/null
+++ b/dev-java/openjfx/files/11/0002-c99.patch
@@ -0,0 +1,18 @@
+https://bugs.gentoo.org/919413
+https://src.fedoraproject.org/rpms/openjfx/c/9e893037f3a20273c79603220b7a18a44be60fcc?branch=rawhide
+
+8323078: Incorrect length argument to g_utf8_strlen in pango.c
+
+Submitted upstream: <https://github.com/openjdk/jfx/pull/1320>
+
+--- a/modules/javafx.graphics/src/main/native-font/pango.c
++++ b/modules/javafx.graphics/src/main/native-font/pango.c
+@@ -402,7 +402,7 @@ JNIEXPORT jlong JNICALL OS_NATIVE(g_1utf8_1strlen)
+ (JNIEnv *env, jclass that, jlong str, jlong pos)
+ {
+ if (!str) return 0;
+- return (jlong)g_utf8_strlen((const gchar *)str, (const gchar *)pos);
++ return (jlong)g_utf8_strlen((const gchar *)str, (gssize)pos);
+ }
+
+ JNIEXPORT jlong JNICALL OS_NATIVE(g_1utf16_1to_1utf8)
diff --git a/dev-java/openjfx/files/11/0003-c99.patch b/dev-java/openjfx/files/11/0003-c99.patch
new file mode 100644
index 000000000000..8779f882b799
--- /dev/null
+++ b/dev-java/openjfx/files/11/0003-c99.patch
@@ -0,0 +1,19 @@
+https://bugs.gentoo.org/919413
+https://src.fedoraproject.org/rpms/openjfx/c/9e893037f3a20273c79603220b7a18a44be60fcc?branch=rawhide
+
+8323077: C type error (incompatible function pointer) in X11GLContext.c
+
+Submitted upstream: <https://github.com/openjdk/jfx/pull/1319>
+
+--- a/modules/javafx.graphics/src/main/native-prism-es2/x11/X11GLContext.c
++++ b/modules/javafx.graphics/src/main/native-prism-es2/x11/X11GLContext.c
+@@ -275,7 +275,8 @@ JNIEXPORT jlong JNICALL Java_com_sun_prism_es2_X11GLContext_nInitialize
+ dlsym(RTLD_DEFAULT, "glXSwapIntervalSGI");
+
+ if (ctxInfo->glXSwapIntervalSGI == NULL) {
+- ctxInfo->glXSwapIntervalSGI = glXGetProcAddress("glXSwapIntervalSGI");
++ ctxInfo->glXSwapIntervalSGI = (PFNGLXSWAPINTERVALSGIPROC)
++ glXGetProcAddress((const GLubyte *)"glXSwapIntervalSGI");
+ }
+
+ }
diff --git a/dev-java/openjfx/files/11/don-t-force-msse-11.0.11.patch b/dev-java/openjfx/files/11/don-t-force-msse-11.0.11.patch
new file mode 100644
index 000000000000..aa04c15aa778
--- /dev/null
+++ b/dev-java/openjfx/files/11/don-t-force-msse-11.0.11.patch
@@ -0,0 +1,92 @@
+From cf60da4cb9429f01b5793b0116651e6766068e7b Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Sat, 19 Sep 2020 18:30:58 -0700
+Subject: [PATCH] don't force -msse
+
+---
+ .../src/main/native/gstreamer/projects/linux/avplugin/Makefile | 1 -
+ .../main/native/gstreamer/projects/linux/fxplugins/Makefile | 1 -
+ .../src/main/native/gstreamer/projects/mac/fxplugins/Makefile | 3 +--
+ .../main/native/gstreamer/projects/mac/gstreamer-lite/Makefile | 3 +--
+ .../src/main/native/jfxmedia/projects/linux/Makefile | 1 -
+ .../src/main/native/jfxmedia/projects/mac/Makefile | 3 +--
+ 6 files changed, 3 insertions(+), 9 deletions(-)
+
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile
+index 682f1da..6222e29 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile
+@@ -24,7 +24,6 @@ CFLAGS = -fPIC \
+ -fstack-protector \
+ -Werror=implicit-function-declaration \
+ -Werror=trampolines \
+- -msse2 \
+ -fbuiltin \
+ -DHAVE_STDINT_H \
+ -DLINUX \
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile
+index c2cd04d..bb815fe 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile
+@@ -21,7 +21,6 @@ CFLAGS = -fPIC \
+ -fstack-protector \
+ -Werror=implicit-function-declaration \
+ -Werror=trampolines \
+- -msse2 \
+ -fbuiltin \
+ -DHAVE_STDINT_H \
+ -DLINUX \
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/mac/fxplugins/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/mac/fxplugins/Makefile
+index 9f80434..659ab1c 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/mac/fxplugins/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/mac/fxplugins/Makefile
+@@ -30,8 +30,7 @@ CFLAGS += -fPIC \
+ -DHAVE_STDINT_H \
+ -DGSTREAMER_LITE \
+ -DG_DISABLE_DEPRECATED \
+- -DOSX \
+- -msse2
++ -DOSX
+
+ ifeq ($(BUILD_TYPE), Release)
+ CFLAGS += -Os
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/mac/gstreamer-lite/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/mac/gstreamer-lite/Makefile
+index 2020404..34bdf42 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/mac/gstreamer-lite/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/mac/gstreamer-lite/Makefile
+@@ -51,8 +51,7 @@ CFLAGS += -fPIC \
+ -DHAVE_CONFIG_H \
+ -DGSTREAMER_LITE \
+ -DGST_REMOVE_DISABLED \
+- -DOSX \
+- -msse2
++ -DOSX
+
+ ifeq ($(BUILD_TYPE), Release)
+ CFLAGS += -Os
+diff --git a/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile b/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile
+index aaef98e..f5b06c6 100644
+--- a/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile
++++ b/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile
+@@ -42,7 +42,6 @@ ifdef HOST_COMPILE
+ -Wformat-security \
+ -fstack-protector \
+ -Werror=trampolines \
+- -msse2 \
+ -DGSTREAMER_LITE
+
+ PACKAGES_INCLUDES := $(shell pkg-config --cflags glib-2.0)
+diff --git a/modules/javafx.media/src/main/native/jfxmedia/projects/mac/Makefile b/modules/javafx.media/src/main/native/jfxmedia/projects/mac/Makefile
+index 5ffd9ea..a7b3ddb 100644
+--- a/modules/javafx.media/src/main/native/jfxmedia/projects/mac/Makefile
++++ b/modules/javafx.media/src/main/native/jfxmedia/projects/mac/Makefile
+@@ -30,8 +30,7 @@ CFLAGS += -pipe \
+ -fPIC \
+ -Werror=implicit-function-declaration \
+ -DTARGET_OS_MAC=1 \
+- -D_GNU_SOURCE \
+- -msse2
++ -D_GNU_SOURCE
+
+ ifeq ($(BUILD_TYPE), Release)
+ CFLAGS += -Os
diff --git a/dev-java/openjfx/files/11/ffmpeg5.patch b/dev-java/openjfx/files/11/ffmpeg5.patch
new file mode 100644
index 000000000000..ca0bd1fbecb5
--- /dev/null
+++ b/dev-java/openjfx/files/11/ffmpeg5.patch
@@ -0,0 +1,17 @@
+--- a/build.gradle
++++ b/build.gradle
+@@ -3710,14 +3710,6 @@
+ }
+ }
+ }
+- } else {
+- // Building fxavcodec plugin (libav plugin)
+- exec {
+- commandLine ("make", "${makeJobsFlag}", "-C", "${nativeSrcDir}/gstreamer/projects/linux/avplugin")
+- args("CC=${mediaProperties.compiler}", "LINKER=${mediaProperties.linker}",
+- "OUTPUT_DIR=${nativeOutputDir}", "BUILD_TYPE=${buildType}",
+- "BASE_NAME=avplugin", IS_64 ? "ARCH=x64" : "ARCH=x32")
+- }
+ }
+ }
+ }
diff --git a/dev-java/openjfx/files/11/gstreamer-CVE-2021-3522.patch b/dev-java/openjfx/files/11/gstreamer-CVE-2021-3522.patch
new file mode 100644
index 000000000000..600f1cb84640
--- /dev/null
+++ b/dev-java/openjfx/files/11/gstreamer-CVE-2021-3522.patch
@@ -0,0 +1,31 @@
+From 8a88e5c1db05ebadfd4569955f6f47c23cdca3c4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
+Date: Wed, 3 Mar 2021 01:08:25 +0000
+Subject: [PATCH] tag: id3v2: fix frame size check and potential invalid reads
+
+Check the right variable when checking if there's
+enough data left to read the frame size.
+
+Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/876
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1066>
+---
+ gst-libs/gst/tag/id3v2frames.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gst-libs/gst/tag/id3v2frames.c b/gst-libs/gst/tag/id3v2frames.c
+index 8e9f78254..f39659bf7 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/gstreamer-lite/gst-plugins-base/gst-libs/gst/tag/id3v2frames.c
++++ b/modules/javafx.media/src/main/native/gstreamer/gstreamer-lite/gst-plugins-base/gst-libs/gst/tag/id3v2frames.c
+@@ -109,7 +109,7 @@ id3v2_parse_frame (ID3TagsWorking * work)
+
+ if (work->frame_flags & (ID3V2_FRAME_FORMAT_COMPRESSION |
+ ID3V2_FRAME_FORMAT_DATA_LENGTH_INDICATOR)) {
+- if (work->hdr.frame_data_size <= 4)
++ if (frame_data_size <= 4)
+ return FALSE;
+ if (ID3V2_VER_MAJOR (work->hdr.version) == 3) {
+ work->parse_size = GST_READ_UINT32_BE (frame_data);
+--
+GitLab
+
diff --git a/dev-java/openjfx/files/11/respect-cc.patch b/dev-java/openjfx/files/11/respect-cc.patch
new file mode 100644
index 000000000000..85b742f3a630
--- /dev/null
+++ b/dev-java/openjfx/files/11/respect-cc.patch
@@ -0,0 +1,15 @@
+diff --git a/buildSrc/linux.gradle b/buildSrc/linux.gradle
+index 2295566..ce54c3f 100644
+--- a/buildSrc/linux.gradle
++++ b/buildSrc/linux.gradle
+@@ -214,8 +214,8 @@ setupTools("linux_freetype_tools",
+ }
+ )
+
+-def compiler = IS_COMPILE_PARFAIT ? "parfait-gcc" : "${toolchainDir}gcc";
+-def linker = IS_STATIC_BUILD ? "ar" : IS_COMPILE_PARFAIT ? "parfait-g++" : "${toolchainDir}g++";
++def compiler = IS_COMPILE_PARFAIT ? "parfait-gcc" : System.getenv("CC");
++def linker = IS_STATIC_BUILD ? "ar" : IS_COMPILE_PARFAIT ? "parfait-g++" : System.getenv("CXX");
+
+ LINUX.glass = [:]
+ LINUX.glass.variants = ["glass", "glassgtk2", "glassgtk3"]
diff --git a/dev-java/openjfx/files/11/respect-user-cflags-11.0.11.patch b/dev-java/openjfx/files/11/respect-user-cflags-11.0.11.patch
new file mode 100644
index 000000000000..458305608903
--- /dev/null
+++ b/dev-java/openjfx/files/11/respect-user-cflags-11.0.11.patch
@@ -0,0 +1,227 @@
+From a28f9aaab759d82384279c16d86bb98ab47412a3 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Sat, 1 Jun 2019 00:12:55 -0700
+Subject: [PATCH] respect user cflags
+
+---
+ buildSrc/linux.gradle | 7 ++++++-
+ .../gstreamer/projects/linux/avplugin/Makefile | 16 ++++++----------
+ .../gstreamer/projects/linux/fxplugins/Makefile | 17 ++++++-----------
+ .../projects/linux/gstreamer-lite/Makefile | 16 ++++++----------
+ .../native/jfxmedia/projects/linux/Makefile | 16 ++++++----------
+ 5 files changed, 30 insertions(+), 42 deletions(-)
+
+diff --git a/buildSrc/linux.gradle b/buildSrc/linux.gradle
+index 7a7cbc72..6705a0f3 100644
+--- a/buildSrc/linux.gradle
++++ b/buildSrc/linux.gradle
+@@ -44,8 +44,11 @@ LINUX.library = { name -> return "lib${name}.so" as String }
+ def commonFlags = [
+ "-fno-strict-aliasing", "-fPIC", "-fno-omit-frame-pointer", // optimization flags
+ "-fstack-protector",
++ "-Wno-error=cast-function-type",
+ "-Wextra", "-Wall", "-Wformat-security", "-Wno-unused", "-Wno-parentheses", "-Werror=trampolines"] // warning flags
+
++commonFlags.addAll(System.getenv("CFLAGS").trim().split(" "))
++
+ if (!IS_64) {
+ commonFlags += "-m32"
+ }
+@@ -61,6 +64,8 @@ def linkFlags = ["-static-libgcc", "-static-libstdc++", "-shared", commonFlags,
+ "-z", "relro",
+ "-Wl,--gc-sections"].flatten()
+
++linkFlags.addAll(System.getenv("LDFLAGS").trim().split(" "))
++
+ if (IS_DEBUG_NATIVE) {
+ linkFlags += "-g"
+ }
+@@ -294,7 +299,7 @@ LINUX.iio.nativeSource = [
+ LINUX.iio.compiler = compiler
+ LINUX.iio.ccFlags = [ccFlags].flatten()
+ LINUX.iio.linker = linker
+-LINUX.iio.linkFlags = [linkFlags].flatten()
++LINUX.iio.linkFlags = [linkFlags, "-ljpeg"].flatten()
+ LINUX.iio.lib = "javafx_iio"
+
+ LINUX.prismES2 = [:]
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile
+index 450b55d3..f27b9479 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/avplugin/Makefile
+@@ -17,7 +17,7 @@ TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so
+ OBJBASE_DIR = $(BUILD_DIR)/obj/plugins/avplugin
+ endif
+
+-CFLAGS = -fPIC \
++CFLAGS := -fPIC \
+ -Wformat \
+ -Wextra \
+ -Wformat-security \
+@@ -29,13 +29,8 @@ CFLAGS = -fPIC \
+ -DLINUX \
+ -DGST_DISABLE_LOADSAVE \
+ -DGSTREAMER_LITE \
+- -ffunction-sections -fdata-sections
+-
+-ifeq ($(BUILD_TYPE), Release)
+- CFLAGS += -Os
+-else
+- CFLAGS += -g -Wall
+-endif
++ -ffunction-sections -fdata-sections \
++ ${CFLAGS}
+
+ PACKAGES_INCLUDES := $(shell pkg-config --cflags glib-2.0)
+ PACKAGES_LIBS := $(shell pkg-config --libs glib-2.0 gobject-2.0)
+@@ -46,11 +41,12 @@ INCLUDES= -I../../../plugins \
+ -I../../../gstreamer-lite/gstreamer/libs \
+ $(PACKAGES_INCLUDES)
+
+-LDFLAGS = -L$(BUILD_DIR) \
++LDFLAGS := -L$(BUILD_DIR) \
+ -lgstreamer-lite \
+ $(PACKAGES_LIBS) \
+ -z relro \
+- -static-libgcc -static-libstdc++ -Wl,--gc-sections
++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \
++ ${LDFLAGS}
+
+ ifneq ($(strip $(LIBAV_DIR)),)
+ INCLUDES += -I$(LIBAV_DIR)/include
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile
+index 1e58d4d3..627865f9 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/fxplugins/Makefile
+@@ -14,7 +14,7 @@ DIRLIST = progressbuffer \
+
+ TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so
+
+-CFLAGS = -fPIC \
++CFLAGS := -fPIC \
+ -Wformat \
+ -Wextra \
+ -Wformat-security \
+@@ -30,14 +30,8 @@ CFLAGS = -fPIC \
+ -DGST_DISABLE_LOADSAVE \
+ -DGST_DISABLE_GST_DEBUG \
+ -DGSTREAMER_LITE \
+- -ffunction-sections -fdata-sections
+-
+-ifeq ($(BUILD_TYPE), Release)
+- CFLAGS += -Os
+-else
+- CFLAGS += -g -Wall
+-endif
+-
++ -ffunction-sections -fdata-sections \
++ ${CFLAGS}
+
+ INCLUDES = -I$(SRCBASE_DIR) \
+ $(addprefix -I$(SRCBASE_DIR)/,$(DIRLIST)) \
+@@ -47,9 +41,10 @@ INCLUDES = -I$(SRCBASE_DIR) \
+ PACKAGES_INCLUDES := $(shell pkg-config --cflags glib-2.0)
+ PACKAGES_LIBS := $(shell pkg-config --libs glib-2.0 gobject-2.0)
+
+-LDFLAGS = -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \
++LDFLAGS := -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \
+ -z relro \
+- -static-libgcc -static-libstdc++ -Wl,--gc-sections
++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \
++ ${LDFLAGS}
+
+ ifeq ($(ARCH), x32)
+ CFLAGS += -m32
+diff --git a/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile b/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile
+index 5baa30a1..ddf0e521 100644
+--- a/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile
++++ b/modules/javafx.media/src/main/native/gstreamer/projects/linux/gstreamer-lite/Makefile
+@@ -37,7 +37,7 @@ DIRLIST = gstreamer/gst \
+
+ TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so
+
+-CFLAGS =-fPIC \
++CFLAGS :=-fPIC \
+ -Wformat \
+ -Wextra \
+ -Wformat-security \
+@@ -51,13 +51,8 @@ CFLAGS =-fPIC \
+ -DLINUX \
+ -DGST_DISABLE_GST_DEBUG \
+ -DGST_DISABLE_LOADSAVE \
+- -ffunction-sections -fdata-sections
+-
+-ifeq ($(BUILD_TYPE), Release)
+- CFLAGS += -Os
+-else
+- CFLAGS += -g -Wall
+-endif
++ -ffunction-sections -fdata-sections \
++ ${CFLAGS}
+
+ INCLUDES = -I$(BASE_DIR)/plugins \
+ -I$(SRCBASE_DIR)/projects/build/linux/common \
+@@ -75,9 +70,10 @@ INCLUDES = -I$(BASE_DIR)/plugins \
+ PACKAGES_INCLUDES := $(shell pkg-config --cflags alsa glib-2.0)
+ PACKAGES_LIBS := $(shell pkg-config --libs alsa glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0)
+
+-LDFLAGS = -L$(BUILD_DIR) -lm $(PACKAGES_LIBS) \
++LDFLAGS := -L$(BUILD_DIR) -lm $(PACKAGES_LIBS) \
+ -z relro \
+- -static-libgcc -static-libstdc++ -Wl,--gc-sections
++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \
++ ${LDFLAGS}
+
+ ifeq ($(ARCH), x32)
+ CFLAGS += -m32
+diff --git a/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile b/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile
+index ecbd859f..5881cf53 100644
+--- a/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile
++++ b/modules/javafx.media/src/main/native/jfxmedia/projects/linux/Makefile
+@@ -17,7 +17,7 @@ DIRLIST = jni \
+
+ TARGET = $(BUILD_DIR)/lib$(BASE_NAME).so
+
+-CFLAGS = -DTARGET_OS_LINUX=1 \
++CFLAGS := -DTARGET_OS_LINUX=1 \
+ -D_GNU_SOURCE \
+ -DGST_REMOVE_DEPRECATED \
+ -DGST_DISABLE_GST_DEBUG \
+@@ -26,7 +26,8 @@ CFLAGS = -DTARGET_OS_LINUX=1 \
+ -DHAVE_CONFIG_H \
+ -DJFXMEDIA_JNI_EXPORTS \
+ -DLINUX \
+- -ffunction-sections -fdata-sections
++ -ffunction-sections -fdata-sections \
++ ${CFLAGS}
+
+ CPPFLAGS = -fno-rtti -ffunction-sections -fdata-sections
+
+@@ -56,21 +57,16 @@ ifdef HOST_COMPILE
+ -I$(GSTREAMER_LITE_DIR)/gstreamer/libs \
+ $(PACKAGES_INCLUDES)
+
+- LDFLAGS = -Wl,-rpath,\$$ORIGIN -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \
++ LDFLAGS := -Wl,-rpath-link,\$$ORIGIN -L$(BUILD_DIR) -lgstreamer-lite $(PACKAGES_LIBS) \
+ -z relro \
+- -static-libgcc -static-libstdc++ -Wl,--gc-sections
++ -static-libgcc -static-libstdc++ -Wl,--gc-sections \
++ ${LDFLAGS}
+ else
+ CFLAGS += $(EXTRA_CFLAGS)
+ INCLUDES = $(BASE_INCLUDES)
+ LDFLAGS = -Wl,-rpath,\$$ORIGIN -L$(BUILD_DIR) $(EXTRA_LDFLAGS)
+ endif
+
+-ifeq ($(BUILD_TYPE), Release)
+- CFLAGS += -Os
+-else
+- CFLAGS += -g -Wall -D_DEBUG
+-endif
+-
+ ifeq ($(ARCH), x32)
+ CFLAGS += -m32
+ LDFLAGS += -m32
+--
+2.21.0
+
diff --git a/dev-java/openjfx/files/11/strip-blank-elements-flags.patch b/dev-java/openjfx/files/11/strip-blank-elements-flags.patch
new file mode 100644
index 000000000000..87f0279979f7
--- /dev/null
+++ b/dev-java/openjfx/files/11/strip-blank-elements-flags.patch
@@ -0,0 +1,29 @@
+Without this, you'll get bizarre errors where linking fails because it looks for
+a literal "" arg.
+
+https://bugs.gentoo.org/715092
+https://bugs.gentoo.org/719484
+https://bugs.gentoo.org/799227
+https://bugs.gentoo.org/915727
+--- a/buildSrc/linux.gradle
++++ b/buildSrc/linux.gradle
+@@ -47,7 +47,8 @@ def commonFlags = [
+ "-Wno-error=cast-function-type",
+ "-Wextra", "-Wall", "-Wformat-security", "-Wno-unused", "-Wno-parentheses", "-Werror=trampolines"] // warning flags
+
+-commonFlags.addAll(System.getenv("CFLAGS").trim().split(" "))
++commonFlags.addAll(System.getenv("CFLAGS").strip().split(" "))
++commonFlags.removeAll([""])
+
+ if (!IS_64) {
+ commonFlags += "-m32"
+@@ -75,7 +76,8 @@ def staticLinkFlags = [].flatten()
+
+ def linkFlags = IS_STATIC_BUILD ? staticLinkFlags : dynamicLinkFlags;
+
+-linkFlags.addAll(System.getenv("LDFLAGS").trim().split(" "))
++linkFlags.addAll(System.getenv("LDFLAGS").strip().split(" "))
++linkFlags.removeAll([""])
+
+ if (IS_DEBUG_NATIVE) {
+ linkFlags += "-g"
diff --git a/dev-java/openjfx/files/11/wno-error-11.0.11.patch b/dev-java/openjfx/files/11/wno-error-11.0.11.patch
new file mode 100644
index 000000000000..639b3c117889
--- /dev/null
+++ b/dev-java/openjfx/files/11/wno-error-11.0.11.patch
@@ -0,0 +1,43 @@
+From 9df57c50dcf4b0ac729595600932f844e1f8d4a3 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Wed, 17 Nov 2021 19:52:13 -0800
+Subject: [PATCH] no -Werror
+
+---
+ buildSrc/linux.gradle | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/buildSrc/linux.gradle b/buildSrc/linux.gradle
+index 00a3bca..2295566 100644
+--- a/buildSrc/linux.gradle
++++ b/buildSrc/linux.gradle
+@@ -231,7 +231,7 @@ FileTree ft_gtk = fileTree("${project(":graphics").projectDir}/src/main/native-g
+ LINUX.glass.glass = [:]
+ LINUX.glass.glass.nativeSource = ft_gtk_launcher.getFiles()
+ LINUX.glass.glass.compiler = compiler
+-LINUX.glass.glass.ccFlags = [cppFlags, "-Werror"].flatten()
++LINUX.glass.glass.ccFlags = [cppFlags].flatten()
+ LINUX.glass.glass.linker = linker
+ LINUX.glass.glass.linkFlags = IS_STATIC_BUILD? linkFlags : [linkFlags, "-lX11", "-ldl"].flatten()
+ LINUX.glass.glass.lib = "glass"
+@@ -241,7 +241,7 @@ LINUX.glass.glassgtk2.nativeSource = ft_gtk.getFiles()
+ LINUX.glass.glassgtk2.compiler = compiler
+ LINUX.glass.glassgtk2.ccFlags = IS_STATIC_BUILD ?
+ ["-fno-threadsafe-statics", cppFlags, gtk2CCFlags].flatten() :
+- [cppFlags, gtk2CCFlags, "-Werror"].flatten()
++ [cppFlags, gtk2CCFlags].flatten()
+ LINUX.glass.glassgtk2.linker = linker
+ LINUX.glass.glassgtk2.linkFlags = IS_STATIC_BUILD ? linkFlags : [linkFlags, gtk2LinkFlags].flatten()
+ LINUX.glass.glassgtk2.lib = "glassgtk2"
+@@ -251,7 +251,7 @@ LINUX.glass.glassgtk3.nativeSource = ft_gtk.getFiles()
+ LINUX.glass.glassgtk3.compiler = compiler
+ LINUX.glass.glassgtk3.ccFlags = IS_STATIC_BUILD ?
+ ["-fno-threadsafe-statics", cppFlags, gtk3CCFlags].flatten() :
+- [cppFlags, gtk3CCFlags, "-Werror"].flatten()
++ [cppFlags, gtk3CCFlags].flatten()
+ LINUX.glass.glassgtk3.linker = linker
+ LINUX.glass.glassgtk3.linkFlags = IS_STATIC_BUILD ? linkFlags : [linkFlags, gtk3LinkFlags].flatten()
+ LINUX.glass.glassgtk3.lib = "glassgtk3"
+--
+2.34.0
+
diff --git a/dev-java/openjfx/metadata.xml b/dev-java/openjfx/metadata.xml
index 3ae082145524..ea592d9837e1 100644
--- a/dev-java/openjfx/metadata.xml
+++ b/dev-java/openjfx/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
</maintainer>
diff --git a/dev-java/openjfx/openjfx-11.0.11_p1-r3.ebuild b/dev-java/openjfx/openjfx-11.0.11_p1-r3.ebuild
new file mode 100644
index 000000000000..55962035a564
--- /dev/null
+++ b/dev-java/openjfx/openjfx-11.0.11_p1-r3.ebuild
@@ -0,0 +1,231 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV="${PV/_p/+}"
+SLOT="${MY_PV%%[.+]*}"
+EGRADLE_VER="4.10.3"
+
+inherit flag-o-matic java-pkg-2 multiprocessing toolchain-funcs
+
+DESCRIPTION="Java OpenJFX client application platform"
+HOMEPAGE="https://openjfx.io"
+
+SRC_URI="
+ https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
+ https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar
+ https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar
+ https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar
+ https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar
+"
+
+S="${WORKDIR}/rt-${MY_PV}"
+
+LICENSE="GPL-2-with-classpath-exception"
+KEYWORDS="-* ~amd64 ~ppc64"
+IUSE="cpu_flags_x86_sse2 debug doc source +media"
+REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )"
+
+RDEPEND="
+ app-accessibility/at-spi2-core
+ dev-java/swt:4.10[cairo,opengl]
+ dev-libs/glib:2
+ dev-libs/libxml2:2
+ dev-libs/libxslt
+ media-libs/freetype:2
+ media-libs/fontconfig:1.0
+ media-libs/libjpeg-turbo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:2
+ x11-libs/gtk+:3
+ x11-libs/cairo[glib]
+ x11-libs/libX11
+ x11-libs/libXtst
+ x11-libs/libXxf86vm
+ x11-libs/pango
+ virtual/opengl
+ doc? ( dev-java/openjdk:${SLOT}[doc] )
+ !doc? (
+ || (
+ dev-java/openjdk-bin:${SLOT}
+ dev-java/openjdk:${SLOT}
+ )
+ )
+"
+
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ app-arch/zip
+ dev-java/ant:0
+ dev-java/antlr:0
+ dev-java/antlr:3.5
+ dev-java/hamcrest-core:0
+ dev-java/stringtemplate:0
+ virtual/ttf-fonts
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/11/disable-buildSrc-tests.patch
+ "${FILESDIR}"/11/glibc-compatibility.patch
+ "${FILESDIR}"/11/respect-user-cflags-11.0.11.patch
+ "${FILESDIR}"/11/use-system-swt-jar.patch
+ "${FILESDIR}"/11/wno-error-11.0.11.patch
+ "${FILESDIR}"/11/don-t-force-msse-11.0.11.patch
+ "${FILESDIR}"/11/disable-architecture-verification.patch
+ "${FILESDIR}"/11/gstreamer-CVE-2021-3522.patch
+ "${FILESDIR}"/11/ffmpeg5.patch
+ "${FILESDIR}"/11/respect-cc.patch
+ "${FILESDIR}"/11/strip-blank-elements-flags.patch
+)
+
+egradle() {
+ local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
+ local gradle="${GRADLE_HOME}/bin/gradle"
+ local gradle_args=(
+ --info
+ --stacktrace
+ --no-build-cache
+ --no-daemon
+ --offline
+ --gradle-user-home "${T}/gradle_user_home"
+ --project-cache-dir "${T}/gradle_project_cache"
+ #--debug
+ )
+
+ export GRADLE_HOME
+
+ # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
+ unset ANT_HOME
+
+ einfo "gradle "${gradle_args[@]}" ${@}"
+ # TERM needed, otherwise gradle may fail on terms it does not know about
+ TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
+}
+
+pkg_setup() {
+ JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
+ JAVA_PKG_WANT_SOURCE="${SLOT}"
+ JAVA_PKG_WANT_TARGET="${SLOT}"
+
+ # The nastiness below is necessary while the gentoo-vm USE flag is
+ # masked. First we call java-pkg-2_pkg_setup if it looks like the
+ # flag was unmasked against one of the possible build VMs. If not,
+ # we try finding one of them in their expected locations. This would
+ # have been slightly less messy if openjdk-bin had been installed to
+ # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
+ # file but disable it so that it would not normally be selectable.
+
+ local vm
+ for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
+ if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
+ java-pkg-2_pkg_setup
+ return
+ fi
+ done
+
+ if has_version -b dev-java/openjdk:${SLOT}; then
+ export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
+ export JDK_HOME="${JAVA_HOME}"
+ export ANT_RESPECT_JAVA_HOME=true
+ else
+ if [[ ${MERGE_TYPE} != "binary" ]]; then
+ JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
+ [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
+ JDK_HOME=${JDK_HOME#*/}
+ JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
+ export JDK_HOME
+ export JAVA_HOME="${JDK_HOME}"
+ export ANT_RESPECT_JAVA_HOME=true
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack "${P}.tar.bz2"
+ unpack "gradle-${EGRADLE_VER}-bin.zip"
+
+ mkdir "${T}/jars" || die
+
+ local line jar
+ for line in ${SRC_URI}; do
+ if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then
+ jar=$(basename "${BASH_REMATCH[-1]}")
+ cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die
+ fi
+ done
+}
+
+src_prepare() {
+ default
+
+ local d="${T}/jars"
+
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate
+ java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core
+
+ sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die
+}
+
+src_configure() {
+ append-flags -Wno-error -fcommon
+ # This package is ridiculously brittle and fails when building e.g.
+ # bundled gstreamer with LTO.
+ filter-lto
+ tc-export AR CC CXX
+
+ # FIXME: still calls pkg-config etc by name without chost prefix
+ # FIXME: should we enable webkit? doubt so
+
+ # build is very sensitive to doc presence, take extra steps
+ if use doc; then
+ local jdk_doc
+ if has_version -b dev-java/openjdk:${SLOT}[doc]; then
+ jdk_doc="${EPREFIX}/usr/share/doc/openjdk-${SLOT}/html/api"
+ fi
+ [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early"
+ fi
+
+ cat <<- _EOF_ > "${S}"/gradle.properties
+ COMPILE_TARGETS = linux
+ COMPILE_WEBKIT = false
+ COMPILE_MEDIA = $(usex media true false)
+ JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api
+ JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "")
+ BUILD_LIBAV_STUBS = false
+ GRADLE_VERSION_CHECK = false
+ LINT = none
+ CONF = $(usex debug DebugNative Release)
+ NUM_COMPILE_THREADS = $(makeopts_jobs)
+ JFX_DEPS_URL = ${T}/jars
+ COMPANY_NAME = "Gentoo"
+ _EOF_
+}
+
+src_compile() {
+ egradle zips $(usex doc "" "--exclude-task javadoc")
+}
+
+src_install() {
+ if ! use source ; then
+ rm -v build/sdk/lib/src.zip || die
+ fi
+
+ insinto "/usr/$(get_libdir)/${PN}-${SLOT}"
+ doins -r build/sdk/.
+ doins build/javafx-exports.zip
+
+ if use doc; then
+ docinto html
+ dodoc -r build/javadoc/.
+ dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
+ fi
+}
diff --git a/dev-java/openjfx/openjfx-11.0.9_p0.ebuild b/dev-java/openjfx/openjfx-11.0.9_p0.ebuild
deleted file mode 100644
index 489a905614c1..000000000000
--- a/dev-java/openjfx/openjfx-11.0.9_p0.ebuild
+++ /dev/null
@@ -1,226 +0,0 @@
-# Copyright 2019-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PV="${PV/_p/+}"
-SLOT="${MY_PV%%[.+]*}"
-EGRADLE_VER="4.10.3"
-
-inherit flag-o-matic java-pkg-2 multiprocessing
-
-DESCRIPTION="Java OpenJFX client application platform"
-HOMEPAGE="https://openjfx.io"
-
-SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
- https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
- https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar
- https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar
- https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar
- https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar
- https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar
- https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar
- https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar
- https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar
-"
-
-LICENSE="GPL-2-with-classpath-exception"
-KEYWORDS="-* ~amd64 ~ppc64"
-
-IUSE="cpu_flags_x86_sse2 debug doc source +media"
-
-RDEPEND="
- dev-java/swt:4.10[cairo,opengl]
- dev-libs/atk
- dev-libs/glib:2
- dev-libs/libxml2:2
- dev-libs/libxslt
- media-libs/freetype:2
- media-libs/fontconfig:1.0
- media-video/ffmpeg:0=
- x11-libs/gdk-pixbuf
- x11-libs/gtk+:2
- x11-libs/gtk+:3
- x11-libs/cairo[glib]
- x11-libs/libX11
- x11-libs/libXtst
- x11-libs/libXxf86vm
- x11-libs/pango
- virtual/jpeg
- virtual/opengl
- doc? ( dev-java/openjdk:${SLOT}[doc] )
- !doc? (
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- )
- )
-"
-
-DEPEND="${RDEPEND}
- app-arch/unzip
- app-arch/zip
- >=dev-java/ant-core-1.10.7-r1:0
- dev-java/antlr:0
- dev-java/antlr:3.5
- dev-java/hamcrest-core:0
- dev-java/stringtemplate:0
- virtual/ttf-fonts
- virtual/pkgconfig
-"
-
-REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )"
-
-PATCHES=(
- "${FILESDIR}"/11/disable-buildSrc-tests.patch
- "${FILESDIR}"/11/glibc-compatibility.patch
- "${FILESDIR}"/11/respect-user-cflags.patch
- "${FILESDIR}"/11/use-system-swt-jar.patch
- "${FILESDIR}"/11/wno-error.patch
- "${FILESDIR}"/11/don-t-force-msse.patch
- "${FILESDIR}"/11/disable-architecture-verification.patch
- "${FILESDIR}/11/${PV}-version.patch"
-)
-
-S="${WORKDIR}/rt-${MY_PV}"
-
-egradle() {
- local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
- local gradle="${GRADLE_HOME}/bin/gradle"
- local gradle_args=(
- --info
- --stacktrace
- --no-build-cache
- --no-daemon
- --offline
- --gradle-user-home "${T}/gradle_user_home"
- --project-cache-dir "${T}/gradle_project_cache"
- )
-
- export GRADLE_HOME
-
- # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
- unset ANT_HOME
-
- einfo "gradle "${gradle_args[@]}" ${@}"
- # TERM needed, otherwise gradle may fail on terms it does not know about
- TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
-}
-
-pkg_setup() {
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- # The nastiness below is necessary while the gentoo-vm USE flag is
- # masked. First we call java-pkg-2_pkg_setup if it looks like the
- # flag was unmasked against one of the possible build VMs. If not,
- # we try finding one of them in their expected locations. This would
- # have been slightly less messy if openjdk-bin had been installed to
- # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
- # file but disable it so that it would not normally be selectable.
-
- local vm
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
-
- if has_version --host-root dev-java/openjdk:${SLOT}; then
- export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
- export JDK_HOME="${JAVA_HOME}"
- export ANT_RESPECT_JAVA_HOME=true
-
- else
- if [[ ${MERGE_TYPE} != "binary" ]]; then
- JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
- export JDK_HOME
- export JAVA_HOME="${JDK_HOME}"
- export ANT_RESPECT_JAVA_HOME=true
- fi
- fi
-}
-
-src_unpack() {
- unpack "${P}.tar.bz2"
- unpack "gradle-${EGRADLE_VER}-bin.zip"
-
- mkdir "${T}/jars" || die
-
- local line jar
- for line in ${SRC_URI}; do
- if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then
- jar=$(basename "${BASH_REMATCH[-1]}")
- cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die
- fi
- done
-}
-
-src_prepare() {
- default
-
- local d="${T}/jars"
-
- java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr
- java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5
- java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate
- java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core
-
- sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die
-}
-
-src_configure() {
- append-flags -Wno-error -fcommon
-
- #FIXME: still calls gcc, pkg-config etc by name without chost prefix
- #FIXME: should we enable webkit? doubt so
-
- # build is very sensetive to doc presense, take extra steps
- if use doc; then
- local jdk_doc
- if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then
- jdk_doc="${EPREFIX}/usr/share/doc/openjdk-${SLOT}/html/api"
- fi
- [[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early"
- fi
-
- cat <<- _EOF_ > "${S}"/gradle.properties
- COMPILE_TARGETS = linux
- COMPILE_WEBKIT = false
- COMPILE_MEDIA = $(usex media true false)
- JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api
- JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "")
- BUILD_LIBAV_STUBS = false
- GRADLE_VERSION_CHECK = false
- LINT = none
- CONF = $(usex debug DebugNative Release)
- NUM_COMPILE_THREADS = $(makeopts_jobs)
- JFX_DEPS_URL = ${T}/jars
- COMPANY_NAME = "Gentoo"
- _EOF_
-}
-
-src_compile() {
- egradle zips $(usex doc "" "--exclude-task javadoc")
-}
-
-src_install() {
- if ! use source ; then
- rm -v build/sdk/lib/src.zip || die
- fi
-
- insinto "/usr/$(get_libdir)/${PN}-${SLOT}"
- doins -r build/sdk/.
- doins build/javafx-exports.zip
-
- if use doc; then
- docinto html
- dodoc -r build/javadoc/.
- dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
diff --git a/dev-java/openjfx/openjfx-8.1000-r2.ebuild b/dev-java/openjfx/openjfx-8.1000-r2.ebuild
new file mode 100644
index 000000000000..ef27aefdb985
--- /dev/null
+++ b/dev-java/openjfx/openjfx-8.1000-r2.ebuild
@@ -0,0 +1,195 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic java-pkg-2 java-pkg-simple multiprocessing toolchain-funcs
+
+EGRADLE_VER="4.10.3"
+EHG_COMMIT="9f49e3b6147f"
+
+DESCRIPTION="Java OpenJFX 8 client application platform"
+HOMEPAGE="https://openjfx.io"
+SRC_URI="
+ https://hg.openjdk.java.net/${PN}/8u-dev/rt/archive/${EHG_COMMIT}.tar.bz2 -> ${P}.tar.bz2
+ https://dev.gentoo.org/~gyakovlev/distfiles/${P}-backports.tar.bz2
+ https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
+"
+# eclass overrides it, set back to normal
+S="${WORKDIR}/${P}"
+
+LICENSE="GPL-2-with-classpath-exception"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="debug doc media cpu_flags_x86_sse2"
+REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )"
+RESTRICT="test" # needs junit version we don't have, fragile
+
+DEPEND="
+ app-arch/unzip
+ >=dev-java/ant-1.10.14:0
+ >=dev-java/antlr-2.7.7-r7:0
+ dev-java/antlr:3
+ dev-java/openjdk:8
+ dev-java/stringtemplate:0
+ dev-java/swt:4.10[cairo,opengl]
+ app-alternatives/yacc
+ app-alternatives/lex
+ virtual/jdk:1.8
+ virtual/pkgconfig
+"
+
+RDEPEND="
+ dev-java/swt:4.10[cairo,opengl]
+ virtual/jre:1.8
+"
+
+# FIXME: majority of flags are honored, needs a bit more patching
+QA_FLAGS_IGNORED=".*"
+
+JAVA_PKG_WANT_BUILD_VM="openjdk-8"
+JAVA_PKG_WANT_SOURCE="1.8"
+JAVA_PKG_WANT_TARGET="1.8"
+
+PATCHES=(
+ "${FILESDIR}"/8/99-sysdeps.patch
+ "${FILESDIR}"/8/disable-online-repos.patch
+ "${FILESDIR}"/8/respect_flags.patch
+ "${FILESDIR}"/8/0000-Fix-wait-call-in-PosixPlatform.patch
+ "${FILESDIR}"/8/0001-Change-Lucene.patch
+ "${FILESDIR}"/8/0003-fix-cast-between-incompatible-function-types.patch
+ "${FILESDIR}"/8/0004-Fix-Compilation-Flags.patch
+ "${FILESDIR}"/8/0005-don-t-include-xlocale.h.patch
+ "${FILESDIR}"/8/06-disable-architecture-verification.patch
+ "${FILESDIR}"/8/10-javadoc-locale.patch
+ "${FILESDIR}"/8/Wno-error.patch
+ "${FILESDIR}"/8/don-t-force-msse.patch
+ "${FILESDIR}"/8/fxpackager-don-t-include-obsolete-sys-sysctl.h.patch
+)
+
+egradle() {
+ local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
+ local gradle="${GRADLE_HOME}/bin/gradle"
+ local gradle_args=(
+ --info
+ --stacktrace
+ --no-build-cache
+ --no-daemon
+ --offline
+ --gradle-user-home "${T}/gradle_user_home"
+ --project-cache-dir "${T}/gradle_project_cache"
+ )
+
+ export GRADLE_HOME
+
+ # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
+ unset ANT_HOME
+
+ einfo "gradle "${gradle_args[@]}" ${@}"
+ # TERM needed, otherwise gradle may fail on terms it does not know about
+ TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
+}
+
+src_unpack() {
+ default
+ mv -v "rt-${EHG_COMMIT}" "${P}" || die
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/${P}-backports"
+ default
+
+ # this will create local jar storage to be used as ivy repo
+ local d="${T}/jars"
+ mkdir "${d}" || die
+
+ # we need jars subdir in every prokect so gradle can find them
+ # only system jars, no bundling
+ local target targets
+ targets=(
+ jars
+ buildSrc/jars
+ modules/{base,builders,controls,extensions,fxml}/jars
+ modules/{graphics,jmx,media,swing,swt,web,fxpackager}/jars
+ )
+ einfo "Copying system jars"
+ for target in ${targets[@]}; do
+ ln -vs "${T}/jars" "${target}" || die
+ done
+
+ local swt_file_name="$(java-pkg_getjars swt-4.10)"
+ java-pkg_jar-from --build-only --into "${d}" ant ant.jar ant-1.8.2.jar
+ java-pkg_jar-from --build-only --into "${d}" ant ant-launcher.jar ant-launcher-1.8.2.jar
+ java-pkg_jar-from --build-only --into "${d}" antlr antlr.jar antlr-2.7.7.jar
+ java-pkg_jar-from --build-only --into "${d}" antlr-3 antlr-tool.jar antlr-3.1.3.jar
+ java-pkg_jar-from --build-only --into "${d}" antlr-3 antlr-runtime.jar antlr-runtime-3.1.3.jar
+ java-pkg_jar-from --build-only --into "${d}" stringtemplate stringtemplate.jar stringtemplate-3.2.jar
+ sed -i "s#compile name: SWT_FILE_NAME#compile files(\"${swt_file_name}\")#" "${S}"/build.gradle || die
+
+ sed -i 's/-rpath/-rpath-link/g' modules/media/src/main/native/jfxmedia/projects/linux/Makefile || die
+}
+
+src_configure() {
+ # see gradle.properties.template in ${S}
+ cat <<- _EOF_ > "${S}"/gradle.properties
+ COMPILE_TARGETS = linux
+ GRADLE_VERSION_CHECK = false
+ COMPILE_AVPLUGIN = $(usex media true false)
+ COMPILE_MEDIA = $(usex media true false)
+ COMPILE_WEBKIT = false
+ BUILD_JAVADOC = $(usex doc true false)
+ BUILD_SRC_ZIP = $(usex source true false)
+ FULL_TEST = false
+ CONF = $(usex debug DebugNative Release)
+ NUM_COMPILE_THREADS = $(makeopts_jobs)
+ _EOF_
+
+ local repostring='
+ repositories {
+ ivy {
+ url file("${projectDir}/jars")
+ layout "pattern", {
+ artifact "[artifact]-[revision].[ext]"
+ artifact "[artifact].[ext]"
+ }
+ }
+ mavenLocal()
+ }'
+
+ cat <<- _EOF_ > "${S}"/buildSrc/gentoo.gradle
+ ${repostring}
+ _EOF_
+
+ cat <<- _EOF_ > "${S}"/gentoo.gradle
+ ${repostring}
+ allprojects {
+ ${repostring}
+ }
+ _EOF_
+
+ echo "apply from: 'gentoo.gradle'" >> build.gradle || die
+ echo "apply from: 'gentoo.gradle'" >> buildSrc/build.gradle || die
+ sed -i 's/mavenCentral/mavenLocal/g' build.gradle || die
+ sed -i 's/mavenCentral/mavenLocal/g' buildSrc/build.gradle || die
+ einfo "Configured with the following settings:"
+ cat gradle.properties || die
+
+}
+
+src_compile() {
+ append-cflags '-fcommon'
+ tc-export_build_env CC CXX PKG_CONFIG
+ rm -r tests buildSrc/src/test || die
+ egradle openExportLinux
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/openjdk-${SLOT}"
+ local ddest="${ED}${dest}"
+ dodir "${dest}"
+ pushd build/export/sdk > /dev/null || die
+ cp -pPRv * "${ddest}" || die
+ popd > /dev/null || die
+}
diff --git a/dev-java/openjfx/openjfx-8.1000.ebuild b/dev-java/openjfx/openjfx-8.1000.ebuild
deleted file mode 100644
index 4763fb1c16ee..000000000000
--- a/dev-java/openjfx/openjfx-8.1000.ebuild
+++ /dev/null
@@ -1,199 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit flag-o-matic java-pkg-2 java-pkg-simple multiprocessing toolchain-funcs
-
-EGRADLE_VER="4.10.3"
-EHG_COMMIT="9f49e3b6147f"
-
-DESCRIPTION="Java OpenJFX 8 client application platform"
-HOMEPAGE="https://openjfx.io"
-SRC_URI="
- https://hg.openjdk.java.net/${PN}/8u-dev/rt/archive/${EHG_COMMIT}.tar.bz2 -> ${P}.tar.bz2
- https://dev.gentoo.org/~gyakovlev/distfiles/${P}-backports.tar.bz2
- https://services.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
-"
-
-LICENSE="GPL-2-with-classpath-exception"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~ppc64"
-
-IUSE="debug doc media cpu_flags_x86_sse2"
-
-DEPEND="
- app-arch/unzip
- >=dev-java/ant-core-1.8.2:0
- >=dev-java/antlr-2.7.7-r7:0
- dev-java/antlr:3
- dev-java/openjdk:8
- dev-java/stringtemplate:0
- dev-java/swt:4.10[cairo,opengl]
- sys-devel/bison
- sys-devel/flex
- virtual/jdk:1.8
- virtual/pkgconfig
-"
-
-RDEPEND="
- dev-java/swt:4.10[cairo,opengl]
- virtual/jre:1.8
-"
-
-REQUIRED_USE="amd64? ( cpu_flags_x86_sse2 )"
-
-RESTRICT="test" # needs junit version we don't have, fragile
-
-# eclass overrides it, set back to normal
-S="${WORKDIR}/${P}"
-
-# FIXME: majority of flags are honored, needs a bit more patching
-QA_FLAGS_IGNORED=".*"
-
-JAVA_PKG_WANT_BUILD_VM="openjdk-8"
-JAVA_PKG_WANT_SOURCE="1.8"
-JAVA_PKG_WANT_TARGET="1.8"
-
-PATCHES=(
- "${FILESDIR}"/8/99-sysdeps.patch
- "${FILESDIR}"/8/disable-online-repos.patch
- "${FILESDIR}"/8/respect_flags.patch
- "${FILESDIR}"/8/0000-Fix-wait-call-in-PosixPlatform.patch
- "${FILESDIR}"/8/0001-Change-Lucene.patch
- "${FILESDIR}"/8/0003-fix-cast-between-incompatible-function-types.patch
- "${FILESDIR}"/8/0004-Fix-Compilation-Flags.patch
- "${FILESDIR}"/8/0005-don-t-include-xlocale.h.patch
- "${FILESDIR}"/8/06-disable-architecture-verification.patch
- "${FILESDIR}"/8/10-javadoc-locale.patch
- "${FILESDIR}"/8/Wno-error.patch
- "${FILESDIR}"/8/don-t-force-msse.patch
- "${FILESDIR}"/8/fxpackager-don-t-include-obsolete-sys-sysctl.h.patch
-)
-
-egradle() {
- local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
- local gradle="${GRADLE_HOME}/bin/gradle"
- local gradle_args=(
- --info
- --stacktrace
- --no-build-cache
- --no-daemon
- --offline
- --gradle-user-home "${T}/gradle_user_home"
- --project-cache-dir "${T}/gradle_project_cache"
- )
-
- export GRADLE_HOME
-
- # FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
- unset ANT_HOME
-
- einfo "gradle "${gradle_args[@]}" ${@}"
- # TERM needed, otherwise gradle may fail on terms it does not know about
- TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
-}
-
-src_unpack() {
- default
- mv -v "rt-${EHG_COMMIT}" "${P}" || die
-}
-
-src_prepare() {
- eapply "${WORKDIR}/${P}-backports"
- default
-
- # this will create local jar storage to be used as ivy repo
- local d="${T}/jars"
- mkdir "${d}" || die
-
- # we need jars subdir in every prokect so gradle can find them
- # only system jars, no bundling
- local target targets
- targets=(
- jars
- buildSrc/jars
- modules/{base,builders,controls,extensions,fxml}/jars
- modules/{graphics,jmx,media,swing,swt,web,fxpackager}/jars
- )
- einfo "Copying system jars"
- for target in ${targets[@]}; do
- ln -vs "${T}/jars" "${target}" || die
- done
-
- local swt_file_name="$(java-pkg_getjars swt-4.10)"
- java-pkg_jar-from --build-only --into "${d}" ant-core ant.jar ant-1.8.2.jar
- java-pkg_jar-from --build-only --into "${d}" ant-core ant-launcher.jar ant-launcher-1.8.2.jar
- java-pkg_jar-from --build-only --into "${d}" antlr antlr.jar antlr-2.7.7.jar
- java-pkg_jar-from --build-only --into "${d}" antlr-3 antlr-tool.jar antlr-3.1.3.jar
- java-pkg_jar-from --build-only --into "${d}" antlr-3 antlr-runtime.jar antlr-runtime-3.1.3.jar
- java-pkg_jar-from --build-only --into "${d}" stringtemplate stringtemplate.jar stringtemplate-3.2.jar
- sed -i "s#compile name: SWT_FILE_NAME#compile files(\"${swt_file_name#/}\")#" "${S}"/build.gradle || die
-
- sed -i 's/-rpath/-rpath-link/g' modules/media/src/main/native/jfxmedia/projects/linux/Makefile || die
-}
-
-src_configure() {
- # see gradle.properties.template in ${S}
- cat <<- _EOF_ > "${S}"/gradle.properties
- COMPILE_TARGETS = linux
- GRADLE_VERSION_CHECK = false
- COMPILE_AVPLUGIN = $(usex media true false)
- COMPILE_MEDIA = $(usex media true false)
- COMPILE_WEBKIT = false
- BUILD_JAVADOC = $(usex doc true false)
- BUILD_SRC_ZIP = $(usex source true false)
- FULL_TEST = false
- CONF = $(usex debug DebugNative Release)
- NUM_COMPILE_THREADS = $(makeopts_jobs)
- _EOF_
-
- local repostring='
- repositories {
- ivy {
- url file("${projectDir}/jars")
- layout "pattern", {
- artifact "[artifact]-[revision].[ext]"
- artifact "[artifact].[ext]"
- }
- }
- mavenLocal()
- }'
-
- cat <<- _EOF_ > "${S}"/buildSrc/gentoo.gradle
- ${repostring}
- _EOF_
-
- cat <<- _EOF_ > "${S}"/gentoo.gradle
- ${repostring}
- allprojects {
- ${repostring}
- }
- _EOF_
-
- echo "apply from: 'gentoo.gradle'" >> build.gradle || die
- echo "apply from: 'gentoo.gradle'" >> buildSrc/build.gradle || die
- sed -i 's/mavenCentral/mavenLocal/g' build.gradle || die
- sed -i 's/mavenCentral/mavenLocal/g' buildSrc/build.gradle || die
- einfo "Configured with the following settings:"
- cat gradle.properties || die
-
-}
-
-src_compile() {
- append-cflags '-fcommon'
- tc-export_build_env CC CXX PKG_CONFIG
- rm -r tests buildSrc/src/test || die
- egradle openExportLinux
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/openjdk-${SLOT}"
- local ddest="${ED%/}/${dest#/}"
- dodir "${dest}"
- pushd build/export/sdk > /dev/null || die
- cp -pPRv * "${ddest}" || die
- popd > /dev/null || die
-}
diff --git a/dev-java/opentest4j/Manifest b/dev-java/opentest4j/Manifest
new file mode 100644
index 000000000000..dd48bd1c2464
--- /dev/null
+++ b/dev-java/opentest4j/Manifest
@@ -0,0 +1 @@
+DIST opentest4j-1.2.0.tar.gz 77616 BLAKE2B a331cc5e97d1e50b3b57e6aac926278d16f4d75067b4e4b25acb5ee25d4d4cd9d1f75c115155303ec63f5cb22b09ad1cbaa01d62620b350dd2c1d61541657b78 SHA512 cd98d976935de97d259ec4c04510334f2b56f8a32db2c97e0f20a2e3b99f119ffeb390589eb42d4594808d96194067871d5eaad6a40dd58af30b9f995b13ef08
diff --git a/dev-java/opentest4j/metadata.xml b/dev-java/opentest4j/metadata.xml
new file mode 100644
index 000000000000..04e41c0ed0f7
--- /dev/null
+++ b/dev-java/opentest4j/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">ota4j-team/opentest4j</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/opentest4j/opentest4j-1.2.0-r1.ebuild b/dev-java/opentest4j/opentest4j-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..ab1e5d83d4c9
--- /dev/null
+++ b/dev-java/opentest4j/opentest4j-1.2.0-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.opentest4j:opentest4j:1.2.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Open Test Alliance for the JVM"
+HOMEPAGE="https://github.com/ota4j-team/opentest4j"
+SRC_URI="https://github.com/ota4j-team/opentest4j/archive/r${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-11:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/${PN}-r${PV}"
+
+JAVA_SRC_DIR=( src/{main,module}/java )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR=( src/test/java )
+JAVA_TEST_RESOURCE_DIRS=( src/test/resources )
diff --git a/dev-java/oracle-javamail/Manifest b/dev-java/oracle-javamail/Manifest
deleted file mode 100644
index 4c774e17c68f..000000000000
--- a/dev-java/oracle-javamail/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oracle-javamail-1.5.6.zip 1812631 BLAKE2B 9fd43058b10726db9359c4b59fd42226da329268ec4974a510940a4e7d6bd16afc3a3a73b6ee17914cd5d3577c42ddf22f29bc93e2ca185660ea03196ed2bd28 SHA512 3fde7901f5975f4a58d675d94e397bf1a169db227b138bfd684c0e2d0f6522ea1c8e2a5425b23fc08775a6824a9e9e68b2d6e6312f20c53af127f00a897363e2
diff --git a/dev-java/oracle-javamail/metadata.xml b/dev-java/oracle-javamail/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/oracle-javamail/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/oracle-javamail/oracle-javamail-1.5.6-r1.ebuild b/dev-java/oracle-javamail/oracle-javamail-1.5.6-r1.ebuild
deleted file mode 100644
index f56700c34bec..000000000000
--- a/dev-java/oracle-javamail/oracle-javamail-1.5.6-r1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A Java-based framework to build multiplatform mail and messaging applications"
-HOMEPAGE="https://java.net/projects/javamail/pages/Home"
-SRC_URI="https://java.net/projects/javamail/downloads/download/source/javamail-${PV}-src.zip -> ${P}.zip"
-
-# either of these
-LICENSE="CDDL GPL-2 BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND="
- app-arch/unzip
- virtual/jdk:1.8
-"
-
-RDEPEND="virtual/jre:1.8"
-
-S="${WORKDIR}"
-
-src_unpack() {
- default
-
- # build.xml expects it here
- mkdir -p legal/src/main/resources/META-INF || die
- cp mail/src/main/resources/META-INF/LICENSE.txt \
- legal/src/main/resources/META-INF || die
-}
-
-EANT_DOC_TARGET="docs"
-EANT_EXTRA_ARGS="-Dspec.dir=doc/spec"
-JAVA_PKG_BSFIX="off" #https://bugs.gentoo.org/698954
-
-src_install() {
- java-pkg_dojar target/release/mail.jar
-
- dodoc doc/release/{CHANGES,COMPAT,NOTES,NTLMNOTES,README,SSLNOTES}.txt
- dohtml -r doc/release/{*.html,images}
-
- use doc && java-pkg_dojavadoc target/release/docs/javadocs
- use source && java-pkg_dosrc mail/src/main/java
-}
diff --git a/dev-java/osgi-annotation/Manifest b/dev-java/osgi-annotation/Manifest
new file mode 100644
index 000000000000..19b5e3b7afc0
--- /dev/null
+++ b/dev-java/osgi-annotation/Manifest
@@ -0,0 +1 @@
+DIST osgi-annotation-8.1.0.jar 35775 BLAKE2B 404b78ead0693c2c5ade4dc9415f6b3f80d8a58933a466845bfbb6b2fb0dd4a479ad1cf392a12a18dc951755089e60dbc5f3a20a60ecbbeb23a7224b1c1ae9d2 SHA512 cfddedf01b873f51b8b0b129dfbfae547645eed3d8c2b59b6d940f9163c0809876fc0043f7b66e764215aab8136737e3c969d0d495e33330e8ae82b4c35c3132
diff --git a/dev-java/osgi-annotation/metadata.xml b/dev-java/osgi-annotation/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/osgi-annotation/metadata.xml
@@ -0,0 +1,7 @@
+<?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/osgi-annotation/osgi-annotation-8.1.0.ebuild b/dev-java/osgi-annotation/osgi-annotation-8.1.0.ebuild
new file mode 100644
index 000000000000..a09fb76fcfdc
--- /dev/null
+++ b/dev-java/osgi-annotation/osgi-annotation-8.1.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.osgi:osgi.annotation:8.1.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OSGi Annotation Release 8, Annotations for use in compiling bundles"
+HOMEPAGE="https://www.osgi.org"
+SRC_URI="https://docs.osgi.org/download/r$(ver_cut 1)/${PN/-/.}-${PV}.jar -> ${P}.jar"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+BDEPEND="app-arch/unzip"
+
+JAVA_SRC_DIR="OSGI-OPT/src"
+
+src_prepare() {
+ default
+ java-pkg_clean org
+}
diff --git a/dev-java/osgi-cmpn/Manifest b/dev-java/osgi-cmpn/Manifest
new file mode 100644
index 000000000000..fdab030c1b9f
--- /dev/null
+++ b/dev-java/osgi-cmpn/Manifest
@@ -0,0 +1 @@
+DIST osgi-cmpn-8.0.0.jar 1897102 BLAKE2B efc22960e4f56e85c2ab5dd392c3793c69055e4c1fe19522f00863c59ebc27be817fffe678ebff876be114ae38cd09c561eb6efba3c25a5ebda96732330eec3b SHA512 194ce255a42c04f6515bfe982ea4685dbcfa6227a07572d17ead7fd0e5b07ca4c29a1cec7edf61a5d4e99fbd1bfadecdbf5a2128f73ace3812092ef9e310b727
diff --git a/dev-java/osgi-cmpn/metadata.xml b/dev-java/osgi-cmpn/metadata.xml
new file mode 100644
index 000000000000..4221e170cbc0
--- /dev/null
+++ b/dev-java/osgi-cmpn/metadata.xml
@@ -0,0 +1,8 @@
+<?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/osgi-cmpn/osgi-cmpn-8.0.0-r1.ebuild b/dev-java/osgi-cmpn/osgi-cmpn-8.0.0-r1.ebuild
new file mode 100644
index 000000000000..e697776b3d95
--- /dev/null
+++ b/dev-java/osgi-cmpn/osgi-cmpn-8.0.0-r1.ebuild
@@ -0,0 +1,45 @@
+# 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.osgi:osgi.cmpn:8.0.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OSGi Service Platform Compendium API (Companion Code)"
+HOMEPAGE="https://docs.osgi.org"
+SRC_URI="https://docs.osgi.org/download/r$(ver_cut 1)/${PN/-/.}-${PV}.jar -> ${P}.jar"
+
+LICENSE="Apache-2.0 OSGi-Specification-2.0"
+SLOT="8"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/cdi-api:0
+ dev-java/javax-persistence-api:0
+ dev-java/jakarta-servlet-api:4
+ dev-java/javax-inject:0
+ dev-java/jaxrs-api:0
+ dev-java/osgi-annotation:0
+ dev-java/osgi-core:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+JAVA_SRC_DIR="OSGI-OPT/src"
+
+src_prepare() {
+ default
+ java-pkg_clean org
+ sed \
+ -e 's/javax\(.enterprise\)/jakarta\1/' \
+ -i OSGI-OPT/src/org/osgi/service/cdi/*/*.java || die
+}
diff --git a/dev-java/osgi-compendium/Manifest b/dev-java/osgi-compendium/Manifest
deleted file mode 100644
index d6df9666bf82..000000000000
--- a/dev-java/osgi-compendium/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST osgi.cmpn-4.3.1.jar 741615 BLAKE2B 6f6058c07fd7744f0369d05cdf607b4d4fe51bbdf567c6a6c951413b0627eb1dbb6e56f65641a8472198d0aedca378da4715c26ebe05aa4e7ef80adb1020175f SHA512 803e929b4b7cfee13a3ffa2c60ad03775afd8409c972bf26e3f79abc590466c2d885bdc339d9af2a3e8fda9cdf082d23a298362ac37935b0ede0719dee27e9f9
diff --git a/dev-java/osgi-compendium/metadata.xml b/dev-java/osgi-compendium/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/osgi-compendium/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/osgi-compendium/osgi-compendium-4.3.1-r2.ebuild b/dev-java/osgi-compendium/osgi-compendium-4.3.1-r2.ebuild
deleted file mode 100644
index f2cd70ced9b0..000000000000
--- a/dev-java/osgi-compendium/osgi-compendium-4.3.1-r2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="OSGi Service Platform Compendium API (Companion Code)"
-HOMEPAGE="http://wiki.osgi.org/wiki/Release_4.3"
-SRC_URI="https://osgi.org/download/r4v43/osgi.cmpn-${PV}.jar"
-
-LICENSE="Apache-2.0 OSGi-Specification-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-CDEPEND="dev-java/glassfish-persistence:0
- dev-java/osgi-core-api:0
- dev-java/osgi-foundation:0
- dev-java/tomcat-servlet-api:4.0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-BDEPEND="app-arch/unzip"
-
-JAVA_SRC_DIR="OSGI-OPT/src"
-
-JAVA_GENTOO_CLASSPATH="
- osgi-core-api
- osgi-foundation
- glassfish-persistence
- tomcat-servlet-api-4.0
-"
-
-src_prepare() {
- default
- rm -r org || die
-}
diff --git a/dev-java/osgi-core-api/Manifest b/dev-java/osgi-core-api/Manifest
deleted file mode 100644
index 2560625ee59f..000000000000
--- a/dev-java/osgi-core-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST osgi.core-5.0.0.jar 418232 BLAKE2B d7cfb8b2c6ff955ffc8252f248eb7bec562d16598e1a56fb50f12c099adae8b5268bc26003e166794eaee8fa6cb116ce388eb1981ef5a09394c05b7ea8655f0d SHA512 de7c5aa327a4361b81d953951488b84071e525cfd3e50f0334450b8c1b25733248de9459239ee7091f8961ac8b047a0492d692fb7cd408a0ec07df090ea9e2c3
diff --git a/dev-java/osgi-core-api/metadata.xml b/dev-java/osgi-core-api/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/osgi-core-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/osgi-core-api/osgi-core-api-5.0.0-r1.ebuild b/dev-java/osgi-core-api/osgi-core-api-5.0.0-r1.ebuild
deleted file mode 100644
index 9ef2442e4438..000000000000
--- a/dev-java/osgi-core-api/osgi-core-api-5.0.0-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="OSGi Service Platform Core API (Companion Code)"
-HOMEPAGE="http://www.osgi.org/Specifications/HomePage"
-SRC_URI="http://www.osgi.org/download/r5/osgi.core-${PV}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x64-macos"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-JAVA_SRC_DIR="OSGI-OPT/src"
-
-java_prepare() {
- rm -r org || die
-}
diff --git a/dev-java/osgi-core/Manifest b/dev-java/osgi-core/Manifest
new file mode 100644
index 000000000000..fefbfdfc2580
--- /dev/null
+++ b/dev-java/osgi-core/Manifest
@@ -0,0 +1 @@
+DIST osgi-core-8.0.0.jar 556893 BLAKE2B 36c923ed2a0c590690d1fae112b56984ac16aab7ab0ce46b715aad8fc7b75f0846d640121ced62c626adb1b442c0cb524df37cb82339e9405db6abc7b67c64d9 SHA512 0161f91ecb8ad102731c71ce73f96b99174b5bce2f216770226860cff8a3fcd12abec828399077a835b6765ed9bf9ec29be618de8d2a85b40d6250c00bab4404
diff --git a/dev-java/osgi-core/metadata.xml b/dev-java/osgi-core/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/osgi-core/metadata.xml
@@ -0,0 +1,7 @@
+<?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/osgi-core/osgi-core-8.0.0.ebuild b/dev-java/osgi-core/osgi-core-8.0.0.ebuild
new file mode 100644
index 000000000000..0c56fc093963
--- /dev/null
+++ b/dev-java/osgi-core/osgi-core-8.0.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.osgi:osgi.core:8.0.0"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OSGi Service Platform Core API (Companion Code)"
+HOMEPAGE="https://www.osgi.org"
+SRC_URI="https://docs.osgi.org/download/r$(ver_cut 1)/${PN/-/.}-${PV}.jar -> ${P}.jar"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+DEPEND="
+ dev-java/osgi-annotation:0
+ >=virtual/jdk-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+JAVA_CLASSPATH_EXTRA="osgi-annotation"
+JAVA_SRC_DIR="OSGI-OPT/src"
+
+src_prepare() {
+ default
+ java-pkg_clean org
+}
diff --git a/dev-java/osgi-enterprise-api/Manifest b/dev-java/osgi-enterprise-api/Manifest
deleted file mode 100644
index 02c8f1895e3e..000000000000
--- a/dev-java/osgi-enterprise-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST osgi.enterprise-5.0.0.jar 479506 BLAKE2B 2bd53b50e469388d132a6d3ebd78d4040093f8c1d79299fd87412853d959f7559f04287567eeea47635fe287a3e9d3812ac9303a5d39ec35135ab3c58bd0b010 SHA512 0404c05afd8cb3ef8b826b0f08deeb03b0027ca99e091953d39ef69674809c5b899e0f2c8efb685df5fce070c2aafcf813e470fbb538d4ec3b480a8060351144
diff --git a/dev-java/osgi-enterprise-api/metadata.xml b/dev-java/osgi-enterprise-api/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/osgi-enterprise-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/osgi-enterprise-api/osgi-enterprise-api-5.0.0-r1.ebuild b/dev-java/osgi-enterprise-api/osgi-enterprise-api-5.0.0-r1.ebuild
deleted file mode 100644
index 6150e0d2c5f0..000000000000
--- a/dev-java/osgi-enterprise-api/osgi-enterprise-api-5.0.0-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="OSGi Enterprise Release 5 Companion Code"
-HOMEPAGE="http://www.osgi.org/Main/HomePage"
-SRC_URI="https://docs.osgi.org/download/r5/osgi.enterprise-${PV}.jar"
-
-LICENSE="Apache-2.0 OSGi-Specification-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-RESTRICT="bindist"
-
-CDEPEND="dev-java/glassfish-persistence:0
- dev-java/osgi-core-api:0
- java-virtuals/servlet-api:2.5"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.8:*
- app-arch/unzip"
-
-JAVA_SRC_DIR="OSGI-OPT/src"
-
-JAVA_GENTOO_CLASSPATH="glassfish-persistence,osgi-core-api,servlet-api-2.5"
-
-src_prepare() {
- default
- rm -r org || die
-}
diff --git a/dev-java/osgi-foundation/Manifest b/dev-java/osgi-foundation/Manifest
deleted file mode 100644
index cfeb1169a491..000000000000
--- a/dev-java/osgi-foundation/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST osgi-foundation-1.2.0.tar.xz 45176 BLAKE2B 4b5432dfaad9134f402b5f448a8d7ba5f626a7b160bbc953914352a28f745725da851b6c5f2122f820b52f2fd8ad463c2df5c8ae3e2b46ef8bb9d56d89d90f1b SHA512 6523dd6b4cd8205aa3359fae4640ff6b17a1944aec6bf23acf0d6e4eb33839a9b9049e8df0c55a4f35013b40b1df2391a53ed68df682a317c35dca504e9b996b
diff --git a/dev-java/osgi-foundation/files/osgi-foundation-1.2.0-build.xml b/dev-java/osgi-foundation/files/osgi-foundation-1.2.0-build.xml
deleted file mode 100644
index a33f09709ada..000000000000
--- a/dev-java/osgi-foundation/files/osgi-foundation-1.2.0-build.xml
+++ /dev/null
@@ -1,218 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/11/13 9:36 AM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="org.osgi.foundation-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="org.osgi.foundation-1.2.0"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"/>
- <pathelement location="${maven.repo.local}/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="LICENSE*"/>
- <include name="NOTICE*"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/junit/junit/3.8.1"/>
- <get src="http://people.apache.org/repo/m2-snapshot-repository/junit/junit/3.8.1/junit-3.8.1.jar"
- dest="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar"
- dest="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/easymock/easymock/1.2_Java1.3"/>
- <get src="http://people.apache.org/repo/m2-snapshot-repository/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- dest="${maven.repo.local}/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- dest="${maven.repo.local}/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/osgi-foundation/metadata.xml b/dev-java/osgi-foundation/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/osgi-foundation/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/osgi-foundation/osgi-foundation-1.2.0-r2.ebuild b/dev-java/osgi-foundation/osgi-foundation-1.2.0-r2.ebuild
deleted file mode 100644
index 3e37ca69434e..000000000000
--- a/dev-java/osgi-foundation/osgi-foundation-1.2.0-r2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 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-ant-2
-
-DESCRIPTION="OSGi R4 Foundation EE by Apache Felix"
-HOMEPAGE="http://felix.apache.org/"
-SRC_URI="https://dev.gentoo.org/~tomwij/files/dist/${P}.tar.xz"
-
-LICENSE="Apache-2.0 OSGi-Specification-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-src_prepare() {
- default
- cp "${FILESDIR}"/${P}-build.xml "${S}"/build.xml || die
-}
-
-src_install() {
- java-pkg_newjar target/org.osgi.foundation-${PV}.jar org.osgi.foundation.jar
-}
diff --git a/dev-java/osgi-obr/Manifest b/dev-java/osgi-obr/Manifest
deleted file mode 100644
index d3c3e967645a..000000000000
--- a/dev-java/osgi-obr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST org.osgi.service.obr-1.0.2-project.tar.gz 7939 BLAKE2B 6499f12ab5a63bd8f178d4a6be0d9ca8a75ef0a843b73962b3e71bdfaed77edef2f307ce80fba418580ae0a6c507f97103cf8acb292e79c301422cd7134b8fec SHA512 2af278c6309f8e2fd64c86c5e28a32935ee88e43489b2ca89be94bd2b996acbfcbf93a439f4e3c5f61d5d98df8d0897485982cd749f57d80574a3eb1fbb8ad21
diff --git a/dev-java/osgi-obr/files/osgi-obr-1.0.2-build.xml b/dev-java/osgi-obr/files/osgi-obr-1.0.2-build.xml
deleted file mode 100644
index 4b933209494d..000000000000
--- a/dev-java/osgi-obr/files/osgi-obr-1.0.2-build.xml
+++ /dev/null
@@ -1,233 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/13/13 7:05 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="org.osgi.service.obr-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="org.osgi.service.obr-1.0.2"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.resourceDir.1" value="."/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- <pathelement location="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"/>
- </path>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"/>
- <pathelement location="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"/>
- <pathelement location="${maven.repo.local}/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" depends="get-deps" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.3"
- verbose="false"
- fork="false"
- source="1.3">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF"/>
- <copy todir="${maven.build.outputDir}/META-INF">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="LICENSE*"/>
- <include name="NOTICE*"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
- <target name="get-deps"
- depends="test-offline"
- description="Download all dependencies"
- unless="maven.mode.offline">
- <mkdir dir="${maven.repo.local}"/>
- <mkdir dir="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1"/>
- <get src="http://people.apache.org/repo/m2-snapshot-repository/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"
- dest="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"
- dest="${maven.repo.local}/org/apache/felix/org.osgi.core/1.0.1/org.osgi.core-1.0.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/junit/junit/3.8.1"/>
- <get src="http://people.apache.org/repo/m2-snapshot-repository/junit/junit/3.8.1/junit-3.8.1.jar"
- dest="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar"
- dest="${maven.repo.local}/junit/junit/3.8.1/junit-3.8.1.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <mkdir dir="${maven.repo.local}/easymock/easymock/1.2_Java1.3"/>
- <get src="http://people.apache.org/repo/m2-snapshot-repository/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- dest="${maven.repo.local}/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- <get src="http://repo.maven.apache.org/maven2/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- dest="${maven.repo.local}/easymock/easymock/1.2_Java1.3/easymock-1.2_Java1.3.jar"
- usetimestamp="false"
- ignoreerrors="true"/>
- </target>
-
-</project>
diff --git a/dev-java/osgi-obr/metadata.xml b/dev-java/osgi-obr/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/osgi-obr/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/osgi-obr/osgi-obr-1.0.2.ebuild b/dev-java/osgi-obr/osgi-obr-1.0.2.ebuild
deleted file mode 100644
index 4397353a0207..000000000000
--- a/dev-java/osgi-obr/osgi-obr-1.0.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="org.osgi.service.obr"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="OSGi Service OBR by Apache"
-HOMEPAGE="http://felix.apache.org"
-SRC_URI="mirror://apache/dist/felix/${MY_P}-project.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64"
-
-CDEPEND="dev-java/osgi-core-api:0"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- app-arch/unzip"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml build.xml || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="osgi-core-api"
-
-src_install() {
- java-pkg_newjar target/${MY_P}.jar
-}
diff --git a/dev-java/osgi-service-log/Manifest b/dev-java/osgi-service-log/Manifest
new file mode 100644
index 000000000000..cd0e597315ba
--- /dev/null
+++ b/dev-java/osgi-service-log/Manifest
@@ -0,0 +1 @@
+DIST org.osgi.service.log-1.3.0-sources.jar 12012 BLAKE2B 005f7e71b2a16bee5b097ffd207667d59a0743bb278669c59e6cf56c183a8dd063190ddff2071c2945c41410fbb86c4534ad7116fb56d4d621bbbbc0659b54ef SHA512 06757188027245690b0655105acd94534844d2e118b9ec4ab7ac0c910fcebb22dcf0fd53e20ad053b4c6e97461bfe4ffddf1b2b11045f2659518afec0baef105
diff --git a/dev-java/osgi-service-log/metadata.xml b/dev-java/osgi-service-log/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/osgi-service-log/metadata.xml
@@ -0,0 +1,7 @@
+<?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/osgi-service-log/osgi-service-log-1.3.0.ebuild b/dev-java/osgi-service-log/osgi-service-log-1.3.0.ebuild
new file mode 100644
index 000000000000..ed34ecd1a58d
--- /dev/null
+++ b/dev-java/osgi-service-log/osgi-service-log-1.3.0.ebuild
@@ -0,0 +1,31 @@
+# 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="org.osgi:org.osgi.service.log:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OSGi Companion Code for org.osgi.service.log"
+HOMEPAGE="https://www.osgi.org/"
+SRC_URI="https://repo1.maven.org/maven2/org/osgi/org.osgi.service.log/${PV}/org.osgi.service.log-${PV}-sources.jar"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="dev-java/osgi-core:0"
+
+DEPEND="${CP_DEPEND}
+ dev-java/osgi-annotation:0
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.osgi.service.log"
+JAVA_CLASSPATH_EXTRA="osgi-annotation"
diff --git a/dev-java/osgi-service-subsystem/Manifest b/dev-java/osgi-service-subsystem/Manifest
new file mode 100644
index 000000000000..0b9e27d8c3c1
--- /dev/null
+++ b/dev-java/osgi-service-subsystem/Manifest
@@ -0,0 +1 @@
+DIST osgi-service-subsystem-1.1.0-sources.jar 24552 BLAKE2B a69fc49b88aa43baa5f56a94a4d8dc55f7ef596a4a39b86f68c652bf02f878c51a25a15cc0bad5f38b23f644137c2082011f8fd3658185ab068ea8bdd551a3d3 SHA512 d0ed0c99525d0860c24b3783902230fc05ccd830a22c16a355d7d6e851919caa64bd23082fcd5f9ebf939b4e1b86e8e52225343401552a89f1e6c1d5892fd162
diff --git a/dev-java/osgi-service-subsystem/metadata.xml b/dev-java/osgi-service-subsystem/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/osgi-service-subsystem/metadata.xml
@@ -0,0 +1,7 @@
+<?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/osgi-service-subsystem/osgi-service-subsystem-1.1.0.ebuild b/dev-java/osgi-service-subsystem/osgi-service-subsystem-1.1.0.ebuild
new file mode 100644
index 000000000000..d0c03f8e0c0a
--- /dev/null
+++ b/dev-java/osgi-service-subsystem/osgi-service-subsystem-1.1.0.ebuild
@@ -0,0 +1,32 @@
+# 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="org.osgi:org.osgi.service.subsystem:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OSGi Companion Code for org.osgi.service.subsystem"
+HOMEPAGE="https://www.osgi.org/"
+SRC_URI="https://repo1.maven.org/maven2/org/osgi/org.${PN//-/.}/${PV}/org.${PN//-/.}-${PV}-sources.jar -> ${P}-sources.jar"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+BDEPEND="app-arch/unzip"
+
+CP_DEPEND="
+ dev-java/osgi-annotation:0
+ dev-java/osgi-core:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
diff --git a/dev-java/owasp-java-encoder/Manifest b/dev-java/owasp-java-encoder/Manifest
new file mode 100644
index 000000000000..9b143f96e63b
--- /dev/null
+++ b/dev-java/owasp-java-encoder/Manifest
@@ -0,0 +1 @@
+DIST owasp-java-encoder-1.2.3.tar.gz 134303 BLAKE2B 76b9652863fcdfdce82bd26062fa500bb92b21ba6edff7b3f409a1375e135176f826dca4bb02b4dd48905112ae20a0af0a1f09cb4e21ea41c672a44c52fea209 SHA512 19c13894ce68325553bdbee41190cb113d698c79ec74885604fd9db4f083efe0fcdc4313b7191014bfd972d0ee52f0fbe0621d7bb407745bd1feeb2ac9e49783
diff --git a/dev-java/owasp-java-encoder/files/owasp-java-encoder-1.2.3-BenchmarkTest.patch b/dev-java/owasp-java-encoder/files/owasp-java-encoder-1.2.3-BenchmarkTest.patch
new file mode 100644
index 000000000000..de988462ede7
--- /dev/null
+++ b/dev-java/owasp-java-encoder/files/owasp-java-encoder-1.2.3-BenchmarkTest.patch
@@ -0,0 +1,46 @@
+There were 2 failures:
+1) Encode.forHtmlUnquotedAttribute(org.owasp.encoder.BenchmarkTest$1$3)
+junit.framework.AssertionFailedError
+ at junit.framework.Assert.fail(Assert.java:55)
+ at junit.framework.Assert.assertTrue(Assert.java:22)
+ at junit.framework.Assert.assertTrue(Assert.java:31)
+ at junit.framework.TestCase.assertTrue(TestCase.java:200)
+ at org.owasp.encoder.BenchmarkTest$1$3.runTest(BenchmarkTest.java:115)
+2) Encode.forUriComponent(org.owasp.encoder.BenchmarkTest$1$3)
+junit.framework.AssertionFailedError
+ at junit.framework.Assert.fail(Assert.java:55)
+ at junit.framework.Assert.assertTrue(Assert.java:22)
+ at junit.framework.Assert.assertTrue(Assert.java:31)
+ at junit.framework.TestCase.assertTrue(TestCase.java:200)
+ at org.owasp.encoder.BenchmarkTest$1$3.runTest(BenchmarkTest.java:115)
+
+FAILURES!!!
+Tests run: 962, Failures: 2
+--- a/src/test/java/org/owasp/encoder/BenchmarkTest.java
++++ b/src/test/java/org/owasp/encoder/BenchmarkTest.java
+@@ -209,12 +209,6 @@ public class BenchmarkTest extends TestCase {
+ return Encode.forXml(input);
+ }
+ },
+- new Bench("Encode.forHtmlUnquotedAttribute") {
+- @Override
+- public String encode(String input) {
+- return Encode.forHtmlUnquotedAttribute(input);
+- }
+- },
+ new Bench("Encode.forJavaScript") {
+ @Override
+ public String encode(String input) {
+@@ -227,12 +221,6 @@ public class BenchmarkTest extends TestCase {
+ return Encode.forCssString(input);
+ }
+ },
+- new Bench("Encode.forUriComponent") {
+- @Override
+- public String encode(String input) {
+- return Encode.forUriComponent(input);
+- }
+- },
+ new Bench("Encode.forCDATA") {
+ @Override
+ public String encode(String input) {
diff --git a/dev-java/owasp-java-encoder/metadata.xml b/dev-java/owasp-java-encoder/metadata.xml
new file mode 100644
index 000000000000..caf58d352146
--- /dev/null
+++ b/dev-java/owasp-java-encoder/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">OWASP/owasp-java-encoder</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/owasp-java-encoder/owasp-java-encoder-1.2.3.ebuild b/dev-java/owasp-java-encoder/owasp-java-encoder-1.2.3.ebuild
new file mode 100644
index 000000000000..482d2d258e37
--- /dev/null
+++ b/dev-java/owasp-java-encoder/owasp-java-encoder-1.2.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.owasp.encoder:encoder:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OWASP Java Encoder"
+HOMEPAGE="https://owasp.org/www-project-java-encoder/"
+SRC_URI="https://github.com/OWASP/owasp-java-encoder/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}/core"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+PATCHES=( "${FILESDIR}/owasp-java-encoder-1.2.3-BenchmarkTest.patch" )
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
diff --git a/dev-java/parboiled/Manifest b/dev-java/parboiled/Manifest
new file mode 100644
index 000000000000..ef31eb68bb3d
--- /dev/null
+++ b/dev-java/parboiled/Manifest
@@ -0,0 +1 @@
+DIST parboiled-1.4.1.tar.gz 230536 BLAKE2B 99e8e99d9b1b5de7420491967213be94c5895ba6abfd797f4f681834b3773784fc94c5a7d000574cd65dd0dff46857cc19c9430691899f82edf324c764c193dd SHA512 3c502013168f76178398861e2b23089a5c3df0ec36f44830300dc935844026df9f6d5dd7c40babcd4c6a58bff84c0f2134930a19ef49bcd61efbdab3c093ef9c
diff --git a/dev-java/parboiled/metadata.xml b/dev-java/parboiled/metadata.xml
new file mode 100644
index 000000000000..c48f3cb552ec
--- /dev/null
+++ b/dev-java/parboiled/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <doc>https://github.com/sirthias/parboiled/wiki/</doc>
+ <remote-id type="github">sirthias/parboiled</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/parboiled/parboiled-1.4.1.ebuild b/dev-java/parboiled/parboiled-1.4.1.ebuild
new file mode 100644
index 000000000000..483a65d41c3c
--- /dev/null
+++ b/dev-java/parboiled/parboiled-1.4.1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_PROVIDES="
+ org.parboiled:parboiled-core:${PV}
+ org.parboiled:parboiled-java:${PV}
+"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Elegant parsing in Java and Scala - lightweight, easy-to-use, powerful"
+HOMEPAGE="https://github.com/sirthias/parboiled"
+SRC_URI="https://github.com/sirthias/parboiled/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="dev-java/asm:9"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+src_compile() {
+ einfo "Compiling parboiled-core"
+ JAVA_JAR_FILENAME="parboiled-core.jar"
+ JAVA_SRC_DIR="parboiled-core/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":parboiled-core.jar"
+ rm -r target || die
+
+ einfo "Compiling parboiled-java"
+ JAVA_JAR_FILENAME="parboiled-java.jar"
+ JAVA_SRC_DIR="parboiled-java/src/main/java"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":parboiled-java.jar"
+ rm -r target || die
+
+ if use doc; then
+ JAVA_SRC_DIR=(
+ "parboiled-core/src/main/java"
+ "parboiled-java/src/main/java"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_install() {
+ default
+
+ java-pkg_dojar "parboiled-core.jar"
+ java-pkg_dojar "parboiled-java.jar"
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "parboiled-core/src/main/java/*"
+ java-pkg_dosrc "parboiled-java/src/main/java/*"
+ fi
+}
diff --git a/dev-java/pat/Manifest b/dev-java/pat/Manifest
deleted file mode 100644
index d91605437fd5..000000000000
--- a/dev-java/pat/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pat-1.5.3.jar 135452 BLAKE2B a70e015f8510a9077922423e3623c64fa4f84fd7aba53c7b64e4ce367f400b237ddf42d09745c0954c186e782ffeb53075b6ec2cc0730c6e3f5440180e9836ba SHA512 4c62906a9f236351f8de457198e746229c48dc983275a95546815fe5af0083a54e204226abaf71ef01cf407c8be34f8e5594f65b126d45ff3e4ba75630ccdabe
diff --git a/dev-java/pat/metadata.xml b/dev-java/pat/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/pat/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/pat/pat-1.5.3-r1.ebuild b/dev-java/pat/pat-1.5.3-r1.ebuild
deleted file mode 100644
index a980ddd0eca1..000000000000
--- a/dev-java/pat/pat-1.5.3-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit versionator java-pkg-2 java-pkg-simple
-
-MY_PV=$(delete_all_version_separators)
-MAJORMINOR=$(get_version_component_range 1-2)
-DOC_VER=$(delete_all_version_separators ${MAJORMINOR})
-
-DESCRIPTION="Regular Expressions in Java"
-HOMEPAGE="http://www.javaregex.com"
-SRC_URI="http://www.javaregex.com/binaries/${PN}srcfree${MY_PV}.jar -> ${P}.jar"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6"
diff --git a/dev-java/pdf-renderer/Manifest b/dev-java/pdf-renderer/Manifest
deleted file mode 100644
index ba2341782374..000000000000
--- a/dev-java/pdf-renderer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pdf-renderer-1.0.5-sources.jar 1736806 BLAKE2B b897d4f30ae0143a6eb7c3499c5d7c165cd4e81c950fbe3185066d5ab6dbe68d874a5ff7561d35a65e014a6d8b82f92de73574018f58dd3817a32488c5b09ed7 SHA512 086355441df0d59306839de3097d1e557870435dcb4ee878d4e7f3f46352a103ecfc1da4055f107c2c53a61f815f985f3e1e176dc9f99634afd58cf1faca940b
diff --git a/dev-java/pdf-renderer/metadata.xml b/dev-java/pdf-renderer/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/pdf-renderer/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/pdf-renderer/pdf-renderer-1.0.5-r1.ebuild b/dev-java/pdf-renderer/pdf-renderer-1.0.5-r1.ebuild
deleted file mode 100644
index 0c7ca8c0ea49..000000000000
--- a/dev-java/pdf-renderer/pdf-renderer-1.0.5-r1.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
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="a 100% Java PDF renderer and viewer"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="https://repo1.maven.org/maven2/org/swinglabs/${PN}/${PV}/${P}-sources.jar"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}"
diff --git a/dev-java/pdfbox/Manifest b/dev-java/pdfbox/Manifest
index 2a8080fb1e78..5c0d6b59875a 100644
--- a/dev-java/pdfbox/Manifest
+++ b/dev-java/pdfbox/Manifest
@@ -1,2 +1,41 @@
-DIST pcfi-2010.08.09.jar 6731455 BLAKE2B 438dda63e91494231fba890d995227e7c6428b25a698ad5905a7ca0f2a29f511ff4cc34136c96c878ca04ec7630a062bbff3bbf0400a332b4edb6a6972175920 SHA512 067394ddac4a48ba8ac94b03f907d0faf98a91be658689a34eb85fdce49515582426f6a1fa433bfa87ca417ce3a6fa3aa89d89126a36176d8e04f3359c36d10b
-DIST pdfbox-1.8.15-src.zip 11078696 BLAKE2B e468a1c263007484d47861945b50a8b0c9afed2d792619a49f41e57b313d86f4e04d317d1b75406876592d755958771c0468446eb23fe3b26ff529e07d467ffb SHA512 ac3f4b131f5cd2153ec2a744c486db921bc2165d596b243ad673cfc94be1bc4ae27bdf2981b63419fead18db569a2008264d6fdc7c89cf47f69f81c4a7d3a2a6
+DIST PDFBOX-1031-1.pdf 79480 BLAKE2B d0d43ddc3e66e59701634f85f6cca844d790a19f9dbdea93a2b1101d3228368ee02b31dc71520619429bd2dc559fd4e9c2447ef1a292a3ed7e01e74be1092a90 SHA512 f943df43cc2a6929caa484c79eafa44b06a5902e325139e19e1f1ebda7c5fd0c86cc221311659d68351c0ff56d921350ff61e97b9d2c425180d810842c963a5b
+DIST PDFBOX-1031-2.pdf 84803 BLAKE2B 4876cb705f855b2fb788ec7584f554bc40037ddae41d7966957d0ea70acf2b15b92b415b1aa325f6c8a8e17b6a2cd6aa4b9cd60fb036905ad4bb2b0f16921772 SHA512 8a9e836ad77c3e9e1e75476f4b46ff4b8958c099970bf57a0b4789fd37236b2bed7e1f14909fa0e3bbacf1a867c1a5c56cbe293383275c1b9c6c0396bec51085
+DIST PDFBOX-1065-1.pdf 30200 BLAKE2B 5d4da971a0b9608292c5bffe18eb18fbd46de66b0fd3cda16c438f4b24bf0f332cbb8e9b9f4c2ba308f908ae286fec748fa66f3d7ebb9552cce38049b9fddc71 SHA512 6b44f363653a9c0cba049495d0ed67659f98b2622b25d647ae556dc4a708847f6c3e4428aa5de2fa0d67f5e8ba08183abf9e8e640e474c6b00c544782e3bba3e
+DIST PDFBOX-1065-2.pdf 29650 BLAKE2B f85ccd6ff1cef2c3d354b971ee63bc2d572ce6f27dba12f53363265a78c7462e5059341f8efe43b6ed35f0b08422a8cb4ef718b68179df2c831615d2b2ba127f SHA512 3b19a2a4c35fbacb36774553bedc0b3f2caf60d96aa021a9151d1f18a248577f13229f101ed7ed4375f36b9f481c0488ceb5ac00e4669d6802cd7cee1b0b4ad7
+DIST PDFBOX-1100-1.pdf 32189 BLAKE2B 2b6c9b95b1f0a390e2eeeff4f80ffd2b452396c784581743abedcebedef203fb19488ad799c15050bb77c2f4dd359e594ee83a845b34d54dff044a8b7d81b631 SHA512 9e59c8eb5cde5823a78e8e773bab393ab52eb5ac3f3a576b5d665d0267dca9c677abe08bb3b503a8ebf43479b4e6f61725ad85affd95803e12009c0b1919111a
+DIST PDFBOX-1100-2.pdf 26168 BLAKE2B eef33b09ec3a16ef83243743260ae7fa0081a04eebb6139e4f08db3f3252f446fa73a62fa07968e6ab51501e5536dce6640c85e50048d8605680fe4e34261d11 SHA512 f55ec23a9b7350410eef95e6bd6de3c3605fa3dc2e9f9c28dfd2f6007bd693da252787350ad6d1d49570ee07fbbfcaba1f8638c1d7e63d4a8875f44c39867e6f
+DIST PDFBOX-3208-L33MUTT2SVCWGCS6UIYL5TH3PNPXHIS6.pdf 477059 BLAKE2B 842f9d3c7153240663f43cba1bd084b939ba424dfc4f5828f87b328c9e6cd3a8272253289459175a2f8a004b3ad87d5353e69dfd01e044a4ec476c7cd685894f SHA512 5aa19dff76b980ad43c873b7a47f089b3914468e0eaca320d67e18cbfa121c99b9e65bfb86d1b106b034bc6e6833f79c54b3d0c064695f5eac5a2797da687ef2
+DIST PDFBOX-3656.pdf 79004 BLAKE2B 4d17c55fce44ab66e2f9afa5369984ebbf00f4db2ea83d4ab67158d582312afe7785e9f0dc36c439fa8a0cab4d74dc0928e436fbad9df86b482be2985551605a SHA512 031d958a84cbd9eb520e5af308f635b37c48b77f7df4e43ecbcdabd04f4ba8574fac71b62548594b0f26e9e4e7fa3c1c7679d66c2a8e4bf141157fb6e50df97d
+DIST PDFBOX-3682.pdf 5919 BLAKE2B 63cb1df44181a79d614ac3c47f4e7c9c86132ccd2ebed8c97680d47c91481327ef5e3c022ad8b617d429fedbf6cd3327d66c2ca966750b0093ddfb980e234d34 SHA512 b57628fc15898c1fbd5947c93659aa40b34071a2e8cf04e46ff787cb01687668456e59a13c3fba8b56ab0ef76c933408b3b0f3a781990bfd475cd8fa4325d730
+DIST PDFBOX-3783-72GLBIGUC6LB46ELZFBARRJTLN4RBSQM.pdf 82301 BLAKE2B 38fa40b3cc2ca4c11b573160f4cb6327b9c6ae6a56593d63f25e332237c921fcae4927f6b32ad565f614b513afb178ae62c3ff8b9cb15a9629c9e661f57c3dfe SHA512 158ce94951c6166193065120023badf90e9d0f84a436583acabd59d9290a58eb1459c29dab2fd65f59368a9b39ee62b786771f92cc823df9b4f41d14448fcc81
+DIST PDFBOX-3785-202097.pdf 1314816 BLAKE2B 039858ff852dc394d482560cd9f5d87c1de7f860fd3749a224a29826f58656b062dbc9ceae9a7046c72633b6562bf521b8115efa70a5d3569dd51790711ddaf9 SHA512 5031db8cee73aa5199afb0c45dfec284fa6903a5ff31f27788893cfdf80474156f0d5d6feb7947323f874f37d15acfbccfecd4ca5a5cc9edc46d63c9e606a3eb
+DIST PDFBOX-3940-079977.pdf 11651 BLAKE2B 7cb459419ff3f91e4eeae4f406454a95575675806e32418d66ca8f83c9c93cd39a6fe537490ab2bb361d0c2051136d2d2a33fc3543e3831db6d194b4c34a605d SHA512 f4a8875b03422af85a03ece2d46edffbb72e98b58c87584a936c2e80b0ef4c87e069b6f8e9237a61187e640f6a1059c4516beedcea50cd323f6788dc1e9f6482
+DIST PDFBOX-3947-670064.pdf 2122217 BLAKE2B 0dfd7706d656834e31664f656900a5de2b563844f1125ba8bbbdf801b838fedd78fd6d481aa774f0d1f7f80fe9f62d66d4b9a267972533cbe30983fa8d94a6da SHA512 7005a6314ae625b7514f429d8ebe146c4d47f715cb8816403134ab047a1f78664c1e95c92413d52b87c4cfcfcb660265d6fe086e4bd3c44ee767151e3fee115e
+DIST PDFBOX-3948-EUWO6SQS5TM4VGOMRD3FLXZHU35V2CP2.pdf 1045409 BLAKE2B 5c4c2c5467b55dd46c7e32128973e697a027ceeaeba777b734a69f410de93a53ab228ca4dc0e00135a50616df942f7fedb83a23e095b7aa216ec5c2ae142df96 SHA512 f8a9b0b9ea6132f24e54136a40ad99d67df2402f3849a5cb0b7d80cd72298737fe4701e0e77ddd602a06e3ea0a7e107ca40d8d29389eea5834ff37245829c2d2
+DIST PDFBOX-3949-MKFYUGZWS3OPXLLVU2Z4LWCTVA5WNOGF.pdf 1048352 BLAKE2B e8ab8b4fccce2a03b054c1b47282e26098c20612bcde1cd77d356107462a911afdbed3dbdeb5f9e4681c369b8d9d304af845edfaa4f0c611a9a5dcdb91d5a93c SHA512 f450fb40ed5589ce0f390eb110d78bc721b766c34b753770b0cb00b2e40ffe15878f54df2423ab99d7df80dd91512858bf56a7cdc392d5c179b4440176fdd2fb
+DIST PDFBOX-3950-23EGDHXSBBYQLKYOKGZUOVYVNE675PRD.pdf 1048576 BLAKE2B 756b428464865a947ac27ebb8e241e81ac0c4b72fa0ec8daeef28da952909b19df22ded6696789ce47fa6bd26fbad111ff95142ecf25c6b4a3cbf4f3a0b2b5a7 SHA512 ee1d464c3ed2ad91a4cafbc474b38e5c961282f53ef599d6d10e02058da5a67064550ddc54774dfa843a8b45f34b7e6e8ab4f9a445ba459fdcd858e8dce65b25
+DIST PDFBOX-3951-FIHUZWDDL2VGPOE34N6YHWSIGSH5LVGZ.pdf 1044488 BLAKE2B 5036fe827eb4205fc03b52de4bb15aa814f18e8c23d646c896b10ad52704cd63cec786b936bf79627cba549f84c209fd9dfb466a4f6a6f6f31755ebe1ccf23d7 SHA512 2c0b91beb4a2b098738512fefdd40135bf66286cd350ac4e155a5a0150d649acb1da819c817ee9822e8686f526af6b7862fc63a0dae6dc7f1407c7f8b271c65e
+DIST PDFBOX-3964-c687766d68ac766be3f02aaec5e0d713_2.pdf 887881 BLAKE2B 5a853956e488c0f48f3386f1f98e56e5ace991a47d55dc2b92743248f9ff5afafa4f12a11f451493824ddea9c39b7f80a33e7306f315b34f722ad7b5fde04c12 SHA512 0457fd291a7f83f531fef205128929c8fa8147dd781ea7b7cd49d4d1287941989e72739329a7b172c6f53df0b54d991b514b9baa6145effa8ec7705ef273877b
+DIST PDFBOX-3977-63NGFQRI44HQNPIPEJH5W2TBM6DJZWMI.pdf 298904 BLAKE2B 1463288af51314afd301c021cf2ed79b82eccfc0fd6405be3311311715d8d6163bcd673c604494a652ac3ac05d3b4b7fd5d4d4b85e5f4761fc0ff060f17a8342 SHA512 42a47b7b800ec035895af73f6793b7155652ce7b06db28ff97939e52b4fbce321fc45064480359c3371e90a7a47f5e20843a9ba71d4597b9bc3516fa17cfbb32
+DIST PDFBOX-3999-GeneralForbearance.pdf 676210 BLAKE2B 82c8fc682edc08ce99e060b494d208192a7447b3b27227f40d5e3241a72f08674e604254ba59543d9708f61fe6d75c1347cf3cbd5c72f7bd0715d88a2412c358 SHA512 6ed5287342ec8a5459a86462d80917bb625d5973df96fdebd5e3c8bc2e9093e6c389f5c8151eb17472a24e1349386a3e7c1a0021e9a967761a554ac1ade557eb
+DIST PDFBOX-4153-WXMDXCYRWFDCMOSFQJ5OAJIAFXYRZ5OA.pdf 118706 BLAKE2B 2f4a1661b221e6e5e77882139744fe7e85ee2374ff124f622c958917e4d522d45b3036e9da5433956be315d9e0c0c785f8f0096d821abbc8b83d4f5f7527abba SHA512 e69a4ee7ba17c384770d8679586273a23fead36a5775669e5ed4d882d738e8d7c5b5cd48deff2ddeea7900efdb13dee8f4899f9db7945d040ddae8628faea465
+DIST PDFBOX-4184-032163.jpg 3414 BLAKE2B 13f4c1aaeb72eb1748d7dc005146af68edd8f8d24deb15c41b6b27dddecd7674a8d6fef9fc91535c8675d19ff70e3d640f5ddae4621374b3dda1295ef2a5fe54 SHA512 35241c979d3808ca9d2641b5ec5e40637132b313f75070faca8b8f6d00ddce394070414236db3993f1092fe3bc16995750d528b6d803a7851423c14c308ccdde
+DIST PDFBOX-4184-16bit.png 633 BLAKE2B 3e5fcb2778fce83bc0d2b899f189e3d3f5e6c29fa364c0fb6f6c36893dd699f21a62b31c1bf2992c5c070e0d9a169016b8c66d4bbb0eb36365d973b092e58dc2 SHA512 45f148913590ea1a94c3ac17080969b74e579fe51967a5bf535caa3f7104ea81ee222b99deb8ee528b0a53640f97d87cf668633a1bdd61a62092246df1807471
+DIST PDFBOX-4197.pdf 97529 BLAKE2B 1acd70f13983165c77a04845be178eb0110285669351be9ec65b97b4ffd6d67c5e86d315b4be75e536f03d4d2fab7a7535753cf9460764ff89bd4946df63e9b0 SHA512 6fefc869dff9db8cd539db177d35beeacc62304173245742eaee8882dab330860a31cbbd4c4ec6cc724603cc453afc07ec61361fbc1e80a47f44b04ccfbaf40d
+DIST PDFBOX-4308.pdf 655849 BLAKE2B 3e7084efe9b793d83593387d2e896b45f8c3cb0ecfc3d88ab4db67d703566aaa50680a12aaabb0052db4646ed361943c25d503ba258d9600419a6ec8d1262891 SHA512 566346239d51f10b2ccfc435620e8f3b0281e91286983cb86660060a8d48777998eab46dfda93d35024e7e4b50b7ab6654f9a1002524163d228a5e41a80a1221
+DIST PDFBOX-4338.pdf 176 BLAKE2B 20ff53c6db83a06af8d62377005780deced078fcb54019977fb30b80acaae26f921ba214b8bcc2a837e58c7ba657ae6a2c52107a0caaafc60a9acc2cd86ab30f SHA512 130fa4b49345410b203613f3e67263f483f9a9797bef22322647655bb55cc55bcb1d1e0eb03c27f6f2855b3823675b27e8899d8eeb880d27a74fad5f60f23b47
+DIST PDFBOX-4339.pdf 176 BLAKE2B ca616f26a8f1258d935d6556c91212d659281fda58a9213c6f235146be43e26f7aa49e729833c458fb17a84ca6be5c49ace426f4e7e9fd7c76944ecb3a38ceec SHA512 2e48aeae83ef6fc4c5f95aafdfe8c76dd8d2dcf3516701c70ffeb14f06ba246a17c21f2dadf8fa48bccef5b72daffdd30ed7c9aa7f5183ddf889968caa2ded6a
+DIST PDFBOX-4408.pdf 46909 BLAKE2B 021e1dc126e321b2463e69062323ef63f4098d70e0b7a8e9652da88139ee3efaf726fb5de51fc87d0e8ab313b72510621d6cbfc488932def6073769e82f54257 SHA512 eaabebdc39eb9df2f96de4d322ce02478c61193311fdbabf310995cbab55d72e80047bd562d506c391f53a15b1cac9a5d225245b1c5d8a0745acd1b506f571f8
+DIST PDFBOX-4418-000314.pdf 735686 BLAKE2B 8c7640e7ea521a715f2888fc572b0173ecafac6f7ee61211e0ced42bd9278324daf883873ee9d445629e38d4f99fc6ae77ebd9255f5db0c29013941480f3dd76 SHA512 1e16476ff9cdf11fdcb8bfd7d1e6e434d85bce187164936d352846e6804694cd89c9f789da1b9fcae13b51058c1bab0cc4f50dd63e3544ab02050b00044cc5df
+DIST PDFBOX-4418-000671.pdf 867979 BLAKE2B fa59d6fb618cda14557fd6c295a2fda66c1aa40b34ea2196dff0a49b34bc1bfcaf7222e2f56b1a8269484a594873b44ac18e19224e0200a1c8af7bc2b689aa43 SHA512 a0fc0cfd42cb7eb8d521db259f53723f1e8a1618e740e89c787157f85623ed3f8a85b1920933328dfef355c8a468f26c459f37eeeaf5cdafa86540b56fb46090
+DIST PDFBOX-4423-000746.pdf 574613 BLAKE2B 01f139d1c9b9e60d5e3be184b6289a4c50f0390bb61ce69120ca87699a14db4aff4b2d8effb159257f205fe898b8c4cbdfaf5ff56e3607316b847a93fa038b6b SHA512 42a61d0061b0b3b0bcc92c9f3ddc78daca79e9d5ea56c19796270316fb7cf3858db9f51efafa3776e1fef17f85202b35c8eed0e88ba6b7ebc7bb05c6014b9fc8
+DIST PDFBOX-4490.pdf 283351 BLAKE2B 4abac1974e9fc7ca0ede73d5c388125794760a32b24fbb245799f92bebf3cc37a6f0fb8e38fa282d39d0aa00093b829e924d90560b90562033958c270d07dec2 SHA512 5ae7f232c47c13ed31997eb2c368e7deb1013c1321d70bf79369f8d709b33406191d94c21a5d27b4c4bb48241bafd9328a0a6d2d093d4e540d5044e9503bd099
+DIST PDFBOX-4517-cryptfilter.pdf 2157 BLAKE2B 69fea4396c05d977dcb7bc5c29143ad3a64fc45331dd8ddd660e3d557d222d56a548b3b24bb0141e8c8e8b6a5dfee2a3f83fa48a2b39fd448b9209204b3e4d9f SHA512 ed55a65bad6f91104846d28e9e7dcb18b11efbf980a74781350551428bbaecba375d9e22af02edf0f91263c7f668e93ec7c52d397898b7640c2d60e7dd3ae940
+DIST PDFBOX-4750.pdf 333223 BLAKE2B 86e9191142b725a338c750d2f1cd25e3b65957160638e64ecdedc1a26f343709765b99fc15381e6a5045a60aa3d59cf6ff427599b89c03a6aface38e356a36da SHA512 add66ca86b5eb3bfd44fd8c273a81695586d76f6e630b714d4b8db6db5aee5b80e7a6d47b9863a42506773c2c0ee2181469d5cd717dba185b70ef5db7ffb80b9
+DIST PDFBOX-4831.pdf 708821 BLAKE2B b4b31a0c5685222b7dc4e9c3e1fbe5c72c6ee3b7ea4ac74727c10e04cc10a8c96ae82c7163d82a3003d69105d5990cefbb481d3c42be3bc69ca0a9c15db4d8b2 SHA512 cb13ce2ca64fa446b9d840444f6d363f0d826a55e4dae1c2de094aaee4dd92df192ec375ff6ca0ee50c5cdd52b634b9b838431d7aa6b852de02504c3fd95531a
+DIST PDFBOX-5196-lotus.jpg 48292 BLAKE2B 9f9a02acb481349acc65266ab6529d40e9493fa0c6f5181aa46757ca2a3d29d519e7de2ea95c8288cd3f25f362a3fe7695e81fe0b653984ee267d2b5cc112e51 SHA512 37c73b41d1e00d66717c3715e6c45724c3f163d3d5b045c67e90c3713746d39eef96b4f0e6f368d0679d4c73d02ca01cfe5141d8a526e46ea15a4579ea1e75a2
+DIST genko_oc_shiryo1.pdf 124896 BLAKE2B c3a9921afb052ee4fe5080a1f1e66d991e3041ff90bd26d42bf3a9116f05e81fb5bb51449411527c3c3193072854482cf4616bf57cad1ac7d774044fce26f13d SHA512 71888e06a0323ac6196c5942c5961f76f8a4d8c6913114aaa9e215f43112cfa5f1b741b7c801e794dc44e62c2d34bfaafe89267a4c7de753e4da1481b35820f3
+DIST ipag00303.zip 4295310 BLAKE2B b68dd7dd7a7320894d782350c4598572c31d6ef492f9572adc2aac20ca98b5c5027995c0169bf815bc1e3a64d635b0e2d4e378b749e034f2fe718bcb7901d40a SHA512 59535137c649a2f8bdbb463cd716426811a6003a65883ca6e45bb0af1d526b3889af0fba3a353e90bc8d373cd32b90a27ff9ff6916ecbccb42e922c09e9b046a
+DIST ipagp00303.zip 4295877 BLAKE2B e096303106029daaedae9befb003f70c2c7d00b858f89f5f8fffb9fc73679e63ec0dde8e0304cad2c611aa74d3cf1bfea56b9ac35e6838953d38b028654f5434 SHA512 26d0a9bfba7f5457a98b0bf45a4a6b081bca4140047a0886625691231459f8c81a6cdbe523e9abcbd45fd7caed21d78f1baf3a2cf9167320f6b79be3d697cb5b
+DIST n019003l.pfb 79155 BLAKE2B 2995cd6e35de2d49cc6d4a5f6c7461396b23e14c6403cd7aecedbd5cec904fd0c42a114c4c5f5079fd1fad306dd8ddba649a13424ec5183395fb0fc1cbe2abb9 SHA512 8eafe21ffa6f3d7d0a50e9f4e5bcdeb727e804b552d74e65b709e778c9ed4605e5aa63743be285f0bc17ad162768583fec4196e1d1146d98f8703359247f22d0
+DIST pdfbox-2.0.27-src.zip 15770627 BLAKE2B 9f93d597141ff3da39b69da3ce989a0cc7f4020071e5cb1609a8b86d0f12a3219037cb4c7b276acf58ee6b07d842b6d7c76e14fdf79e9efdeac401048e345f89 SHA512 59a5675f5d1d34f092adc019679f7d10e7e93c0f554a002ac29d48cbffcaa600d930309fa94a92191c01ead8da905cbb37ce5e233dcc9b8732a881d4abf75def
diff --git a/dev-java/pdfbox/metadata.xml b/dev-java/pdfbox/metadata.xml
index 0282d9706df5..09989cba9219 100644
--- a/dev-java/pdfbox/metadata.xml
+++ b/dev-java/pdfbox/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -8,7 +8,11 @@
<longdescription>
The Apache PDFBoxâ„¢ library is an open source Java tool for working with PDF documents. This project allows creation of new PDF documents, manipulation of existing documents and the ability to extract content from documents. Apache PDFBox also includes several command line utilities.
</longdescription>
+ <use>
+ <flag name="tools">Build and install pdfbox-tools</flag>
+ </use>
<upstream>
<remote-id type="github">apache/pdfbox</remote-id>
+ <bugs-to>https://issues.apache.org/jira/browse/PDFBOX</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/pdfbox/pdfbox-1.8.15.ebuild b/dev-java/pdfbox/pdfbox-1.8.15.ebuild
deleted file mode 100644
index 850c40532bd3..000000000000
--- a/dev-java/pdfbox/pdfbox-1.8.15.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-BC_SLOT="1.45"
-ADOBE_FILES="pcfi-2010.08.09.jar"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library and utilities for working with PDF documents"
-HOMEPAGE="https://pdfbox.apache.org/"
-SRC_URI="mirror://apache/${PN}/${PV}/${P}-src.zip
- http://repo2.maven.org/maven2/com/adobe/pdf/pcfi/2010.08.09/${ADOBE_FILES}"
-LICENSE="Apache-2.0"
-SLOT="1.8"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-IUSE="test"
-RESTRICT="test" # Explosive even when manually using unmodified build.xml.
-
-CDEPEND="dev-java/fontbox:${SLOT}
- dev-java/jempbox:${SLOT}
- dev-java/bcmail:${BC_SLOT}
- dev-java/bcprov:${BC_SLOT}
- >=dev-java/commons-logging-1.1.1:0
- dev-java/icu4j:55"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip
- test? ( dev-java/junit:4 )"
-
-S="${WORKDIR}/${P}/${PN}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_ENCODING="ISO-8859-1"
-JAVA_GENTOO_CLASSPATH="fontbox-${SLOT},jempbox-${SLOT},bcmail-${BC_SLOT},bcprov-${BC_SLOT},commons-logging,icu4j-55"
-
-src_unpack() {
- unpack ${P}-src.zip
-}
-
-src_prepare() {
- default
-
- local DIR=target/classes/org/apache/${PN}/resources
- mkdir -p "${DIR}/afm" || die
-
- unzip -j -d "${DIR}" "${DISTDIR}/${ADOBE_FILES}" com/adobe/pdf/pcfi/glyphlist.txt || die
- unzip -j -d "${DIR}/afm" "${DISTDIR}/${ADOBE_FILES}" com/adobe/pdf/pcfi/afm/*.afm || die
-
- echo "${PN}.version=${PV}" > ${DIR}/${PN}.version || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${PN} --main org.apache.${PN}.PDFBox
-}
-
-src_test() {
- local DIR=src/test/java
- local CP="${DIR}:${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
- local TESTS=$(find ${DIR} -name "*Test.java")
- TESTS="${TESTS//src\/test\/java\/}"
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -encoding ${JAVA_ENCODING} -cp "${CP}" -d ${DIR} $(find ${DIR} -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/pdfbox/pdfbox-2.0.27.ebuild b/dev-java/pdfbox/pdfbox-2.0.27.ebuild
new file mode 100644
index 000000000000..3bb1b8e0c5bd
--- /dev/null
+++ b/dev-java/pdfbox/pdfbox-2.0.27.ebuild
@@ -0,0 +1,259 @@
+# 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 mirror://apache/pdfbox/2.0.27/pdfbox-2.0.27-src.zip --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild pdfbox-2.0.27.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.pdfbox:pdfbox:2.0.27"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java library and utilities for working with PDF documents"
+HOMEPAGE="https://pdfbox.apache.org/"
+SRC_URI="mirror://apache/${PN}/${PV}/${P}-src.zip
+ test? (
+ https://issues.apache.org/jira/secure/attachment/12481683/1.pdf -> PDFBOX-1031-1.pdf
+ https://issues.apache.org/jira/secure/attachment/12481684/2.pdf -> PDFBOX-1031-2.pdf
+ https://issues.apache.org/jira/secure/attachment/12486525/1_testfile1.pdf -> PDFBOX-1065-1.pdf
+ https://issues.apache.org/jira/secure/attachment/12486526/2_testfile1.pdf -> PDFBOX-1065-2.pdf
+ https://issues.apache.org/jira/secure/attachment/12490774/a.pdf -> PDFBOX-1100-1.pdf
+ https://issues.apache.org/jira/secure/attachment/12490775/b.pdf -> PDFBOX-1100-2.pdf
+ https://issues.apache.org/jira/secure/attachment/12848122/SF1199AEG%20%28Complete%29.pdf -> PDFBOX-3656.pdf
+ https://issues.apache.org/jira/secure/attachment/12852207/test.pdf -> PDFBOX-3682.pdf
+ https://issues.apache.org/jira/secure/attachment/12888957/079977.pdf -> PDFBOX-3940-079977.pdf
+ https://issues.apache.org/jira/secure/attachment/12867113/202097.pdf -> PDFBOX-3785-202097.pdf
+ https://issues.apache.org/jira/secure/attachment/12890031/670064.pdf -> PDFBOX-3947-670064.pdf
+ https://issues.apache.org/jira/secure/attachment/12890034/EUWO6SQS5TM4VGOMRD3FLXZHU35V2CP2.pdf -> PDFBOX-3948-EUWO6SQS5TM4VGOMRD3FLXZHU35V2CP2.pdf
+ https://issues.apache.org/jira/secure/attachment/12890037/MKFYUGZWS3OPXLLVU2Z4LWCTVA5WNOGF.pdf -> PDFBOX-3949-MKFYUGZWS3OPXLLVU2Z4LWCTVA5WNOGF.pdf
+ https://issues.apache.org/jira/secure/attachment/12890042/23EGDHXSBBYQLKYOKGZUOVYVNE675PRD.pdf -> PDFBOX-3950-23EGDHXSBBYQLKYOKGZUOVYVNE675PRD.pdf
+ https://issues.apache.org/jira/secure/attachment/12890047/FIHUZWDDL2VGPOE34N6YHWSIGSH5LVGZ.pdf -> PDFBOX-3951-FIHUZWDDL2VGPOE34N6YHWSIGSH5LVGZ.pdf
+ https://issues.apache.org/jira/secure/attachment/12892097/c687766d68ac766be3f02aaec5e0d713_2.pdf -> PDFBOX-3964-c687766d68ac766be3f02aaec5e0d713_2.pdf
+ https://issues.apache.org/jira/secure/attachment/12893582/63NGFQRI44HQNPIPEJH5W2TBM6DJZWMI.pdf -> PDFBOX-3977-63NGFQRI44HQNPIPEJH5W2TBM6DJZWMI.pdf
+ https://issues.apache.org/jira/secure/attachment/12896905/GeneralForbearance.pdf -> PDFBOX-3999-GeneralForbearance.pdf
+ https://issues.apache.org/jira/secure/attachment/12919726/sample.pdf -> PDFBOX-4197.pdf
+ https://issues.apache.org/jira/secure/attachment/12938094/Quelldatei.pdf -> PDFBOX-4308.pdf
+ https://issues.apache.org/jira/secure/attachment/12952086/form.pdf -> PDFBOX-4408.pdf
+ https://issues.apache.org/jira/secure/attachment/12953423/000314.pdf -> PDFBOX-4418-000314.pdf
+ https://issues.apache.org/jira/secure/attachment/12953421/000671.pdf -> PDFBOX-4418-000671.pdf
+ https://issues.apache.org/jira/secure/attachment/12953866/000746.pdf -> PDFBOX-4423-000746.pdf
+ https://issues.apache.org/jira/secure/attachment/12966453/cryptfilter.pdf -> PDFBOX-4517-cryptfilter.pdf
+ https://issues.apache.org/jira/secure/attachment/12991833/PDFBOX-4750-test.pdf -> PDFBOX-4750.pdf
+ https://issues.apache.org/jira/secure/attachment/12914331/WXMDXCYRWFDCMOSFQJ5OAJIAFXYRZ5OA.pdf -> PDFBOX-4153-WXMDXCYRWFDCMOSFQJ5OAJIAFXYRZ5OA.pdf
+ https://issues.apache.org/jira/secure/attachment/12962991/NeS1078.pdf -> PDFBOX-4490.pdf
+ https://issues.apache.org/jira/secure/attachment/12784025/PDFBOX-3208-L33MUTT2SVCWGCS6UIYL5TH3PNPXHIS6.pdf
+ https://issues.apache.org/jira/secure/attachment/12867102/PDFBOX-3783-72GLBIGUC6LB46ELZFBARRJTLN4RBSQM.pdf
+ https://issues.apache.org/jira/secure/attachment/12929821/16bit.png -> PDFBOX-4184-16bit.png
+ https://issues.apache.org/jira/secure/attachment/12943502/ArrayIndexOutOfBoundsException%20COSParser -> PDFBOX-4338.pdf
+ https://issues.apache.org/jira/secure/attachment/12943503/NullPointerException%20COSParser -> PDFBOX-4339.pdf
+ https://issues.apache.org/jira/secure/attachment/12867433/genko_oc_shiryo1.pdf
+ https://moji.or.jp/wp-content/ipafont/IPAfont/ipag00303.zip
+ https://moji.or.jp/wp-content/ipafont/IPAfont/ipagp00303.zip
+ https://issues.apache.org/jira/secure/attachment/12911053/n019003l.pfb
+ https://issues.apache.org/jira/secure/attachment/12949710/032163.jpg -> PDFBOX-4184-032163.jpg
+ https://issues.apache.org/jira/secure/attachment/13025718/lotus.jpg -> PDFBOX-5196-lotus.jpg
+ https://issues.apache.org/jira/secure/attachment/13002695/13._Korona_szallo_vegzes_13.09.26.eredeti.pdf -> PDFBOX-4831.pdf
+ )"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+IUSE="+tools"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+# Common dependencies
+# POM: pom.xml
+# commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
+# org.apache.pdfbox:fontbox:2.0.27 -> >=dev-java/fontbox-2.0.27:0
+# org.bouncycastle:bcmail-jdk15on:1.70 -> !!!artifactId-not-found!!!
+# org.bouncycastle:bcprov-jdk15on:1.70 -> !!!artifactId-not-found!!!
+
+CP_DEPEND="
+ dev-java/bcmail:0
+ dev-java/bcprov:0
+ dev-java/commons-logging:0
+ ~dev-java/fontbox-${PV}:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.github.jai-imageio:jai-imageio-core:1.4.0 -> >=dev-java/jai-imageio-core-1.4.0:0
+# test? com.github.jai-imageio:jai-imageio-jpeg2000:1.4.0 -> >=dev-java/jai-imageio-jpeg2000-1.4.0:0
+# test? com.googlecode.java-diff-utils:diffutils:1.3.0 -> >=dev-java/java-diff-utils-1.3.0:0
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+# test? org.apache.pdfbox:jbig2-imageio:3.0.4 -> !!!suitable-mavenVersion-not-found!!!
+# test? org.mockito:mockito-core:4.8.0 -> >=dev-java/mockito-4.8.0:4
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/jai-imageio-core:0
+ dev-java/jai-imageio-jpeg2000:0
+ dev-java/java-diff-utils:0
+ dev-java/jbig2-imageio:0
+ dev-java/mockito:4
+ )"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+DOCS=( README.md {NOTICE,RELEASE-NOTES}.txt )
+
+S="${WORKDIR}/${P}"
+
+JAVA_GENTOO_CLASSPATH_EXTRA="pdfbox.jar:pdfbox-debugger.jar"
+JAVA_TEST_GENTOO_CLASSPATH="jai-imageio-core,jai-imageio-jpeg2000,java-diff-utils,jbig2-imageio,junit-4,mockito-4"
+
+JAVA_TEST_EXCLUDES=(
+ # excluded upstream according to
+ # https://github.com/apache/pdfbox/blob/2.0.27/pdfbox/pom.xml#L123
+ "org.apache.pdfbox.rendering.TestPDFToImage"
+
+ # Causing test failures. Upstream does not run these tests.
+ "org.apache.pdfbox.cos.TestCOSBase"
+ "org.apache.pdfbox.cos.TestCOSNumber"
+)
+
+src_compile() {
+ einfo "Compiling pdfbox"
+ JAVA_AUTOMATIC_MODULE_NAME="org.apache.pdfbox"
+ JAVA_JAR_FILENAME="pdfbox.jar"
+ JAVA_RESOURCE_DIRS="pdfbox/src/main/resources"
+ JAVA_SRC_DIR="pdfbox/src/main/java"
+ java-pkg-simple_src_compile
+
+ if use tools; then
+ einfo "Compiling debugger"
+ JAVA_AUTOMATIC_MODULE_NAME=""
+ JAVA_JAR_FILENAME="pdfbox-debugger.jar"
+ JAVA_RESOURCE_DIRS="debugger/src/main/resources"
+ JAVA_SRC_DIR="debugger/src/main/java"
+ java-pkg-simple_src_compile
+
+ einfo "Compiling pdfbox-tools"
+ JAVA_JAR_FILENAME="pdfbox-tools.jar"
+ JAVA_RESOURCE_DIRS=""
+ JAVA_SRC_DIR="tools/src/main/java"
+ java-pkg-simple_src_compile
+ fi
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_SRC_DIR=(
+ "${S}/pdfbox/src/main/java"
+ "${S}/debugger/src/main/java"
+ )
+ if use tools; then
+ JAVA_SRC_DIR+=( "${S}/tools/src/main/java" )
+ fi
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+}
+
+src_test() {
+ # @Ignore 2 tests which otherwise would fail
+ # 'mvn test' skips them
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/testPDFBox3826()/i @Ignore' \
+ -e '/testPDFBox5484()/i @Ignore' \
+ -i pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/PDFontTest.java || die
+
+ einfo "Testing pdfbox"
+ JAVA_TEST_SRC_DIR="pdfbox/src/test/java"
+ JAVA_TEST_RESOURCE_DIRS="pdfbox/src/test/resources"
+
+ # tests failed with S="${WORKDIR}/${P}"
+ find pdfbox/src/test/ -type f -exec sed -i 's:src/test/resources:pdfbox/src/test/resources:' {} + || die
+
+ mkdir --parents target/pdfs || die
+ cp \
+ "${DISTDIR}"/PDFBOX-1031-1.pdf \
+ "${DISTDIR}"/PDFBOX-1031-2.pdf \
+ "${DISTDIR}"/PDFBOX-1065-1.pdf \
+ "${DISTDIR}"/PDFBOX-1065-2.pdf \
+ "${DISTDIR}"/PDFBOX-1100-1.pdf \
+ "${DISTDIR}"/PDFBOX-1100-2.pdf \
+ "${DISTDIR}"/PDFBOX-3656.pdf \
+ "${DISTDIR}"/PDFBOX-3682.pdf \
+ "${DISTDIR}"/PDFBOX-3940-079977.pdf \
+ "${DISTDIR}"/PDFBOX-3785-202097.pdf \
+ "${DISTDIR}"/PDFBOX-3947-670064.pdf \
+ "${DISTDIR}"/PDFBOX-3948-EUWO6SQS5TM4VGOMRD3FLXZHU35V2CP2.pdf \
+ "${DISTDIR}"/PDFBOX-3949-MKFYUGZWS3OPXLLVU2Z4LWCTVA5WNOGF.pdf \
+ "${DISTDIR}"/PDFBOX-3950-23EGDHXSBBYQLKYOKGZUOVYVNE675PRD.pdf \
+ "${DISTDIR}"/PDFBOX-3951-FIHUZWDDL2VGPOE34N6YHWSIGSH5LVGZ.pdf \
+ "${DISTDIR}"/PDFBOX-3964-c687766d68ac766be3f02aaec5e0d713_2.pdf \
+ "${DISTDIR}"/PDFBOX-3977-63NGFQRI44HQNPIPEJH5W2TBM6DJZWMI.pdf \
+ "${DISTDIR}"/PDFBOX-3999-GeneralForbearance.pdf \
+ "${DISTDIR}"/PDFBOX-4197.pdf \
+ "${DISTDIR}"/PDFBOX-4308.pdf \
+ "${DISTDIR}"/PDFBOX-4408.pdf \
+ "${DISTDIR}"/PDFBOX-4418-000314.pdf \
+ "${DISTDIR}"/PDFBOX-4418-000671.pdf \
+ "${DISTDIR}"/PDFBOX-4423-000746.pdf \
+ "${DISTDIR}"/PDFBOX-4517-cryptfilter.pdf \
+ "${DISTDIR}"/PDFBOX-4750.pdf \
+ "${DISTDIR}"/PDFBOX-4153-WXMDXCYRWFDCMOSFQJ5OAJIAFXYRZ5OA.pdf \
+ "${DISTDIR}"/PDFBOX-4490.pdf \
+ "${DISTDIR}"/PDFBOX-3208-L33MUTT2SVCWGCS6UIYL5TH3PNPXHIS6.pdf \
+ "${DISTDIR}"/PDFBOX-3783-72GLBIGUC6LB46ELZFBARRJTLN4RBSQM.pdf \
+ "${DISTDIR}"/PDFBOX-4338.pdf \
+ "${DISTDIR}"/PDFBOX-4339.pdf \
+ "${DISTDIR}"/genko_oc_shiryo1.pdf \
+ "${DISTDIR}"/PDFBOX-4831.pdf \
+ "target/pdfs" || die
+
+ mkdir target/fonts || die
+ cp "${DISTDIR}"/n019003l.pfb "target/fonts" || die
+ unzip "${DISTDIR}"/ipag00303.zip -d "target/fonts" || die
+ unzip "${DISTDIR}"/ipagp00303.zip -d "target/fonts" || die
+
+ mkdir target/imgs || die
+ cp \
+ "${DISTDIR}"/PDFBOX-5196-lotus.jpg \
+ "${DISTDIR}"/PDFBOX-4184-032163.jpg \
+ "${DISTDIR}"/PDFBOX-4184-16bit.png \
+ "target/imgs" || die
+
+ java-pkg-simple_src_test
+ rm -r target/test-classes || die # avoid to run previous tests again
+
+ if use tools; then
+ einfo "Testing pdfbox-tools"
+ find tools/src/test/ -type f -exec sed -i 's:src/test/resources:tools/src/test/resources:' {} + || die
+ JAVA_TEST_SRC_DIR="tools/src/test/java"
+ JAVA_TEST_RESOURCE_DIRS="tools/src/test/resources"
+ java-pkg-simple_src_test
+ fi
+}
+
+src_install() {
+ default
+
+ java-pkg_dojar "pdfbox.jar"
+ if use tools; then
+ java-pkg_dojar "pdfbox-debugger.jar"
+ java-pkg_dojar "pdfbox-tools.jar"
+ java-pkg_dolauncher ${PN} --main org.apache.pdfbox.tools.PDFBox
+ fi
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc \
+ "${S}/pdfbox/src/main/java/*" \
+ "${S}/debugger/src/main/java/*" \
+ "${S}/tools/src/main/java/*"
+ fi
+}
diff --git a/dev-java/piccolo/Manifest b/dev-java/piccolo/Manifest
deleted file mode 100644
index 845dd5876b14..000000000000
--- a/dev-java/piccolo/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST piccolo-1.04-src.zip 252316 BLAKE2B 04e0ba00f0b79880a100a1b904d06715a793f891af9d59ffae15579c59fd5ec2ef313241cd9d28975244bb08f2ca00b586e3415d526d47444ab84e99078c0399 SHA512 fa0809e8d9eb43713144bdf193975c62344269bc1b24d12159c98c98776de4633c95234bbbb023d445e00786903fcd9b49d37053f03d8d6a1e2c84b93668f947
diff --git a/dev-java/piccolo/metadata.xml b/dev-java/piccolo/metadata.xml
deleted file mode 100644
index ba02a17f99dd..000000000000
--- a/dev-java/piccolo/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">piccolo</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/piccolo/piccolo-1.04.ebuild b/dev-java/piccolo/piccolo-1.04.ebuild
deleted file mode 100644
index c8224f463a1c..000000000000
--- a/dev-java/piccolo/piccolo-1.04.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A small, extremely fast XML parser for Java"
-HOMEPAGE="http://piccolo.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-EANT_BUILD_TARGET="build"
-
-src_install() {
- java-pkg_dojar lib/Piccolo.jar
-
- dodoc README.txt
- use doc && java-pkg_dojavadoc doc/javadoc
-
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/piccolo2d/Manifest b/dev-java/piccolo2d/Manifest
deleted file mode 100644
index a24cdbd7c25e..000000000000
--- a/dev-java/piccolo2d/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST piccolo2d-3.0.tar.gz 402866 BLAKE2B b78b93084e13c738126ab04babab4ee502deca869dc28a5bd066c13b46f455af55cf76531270d546d6cf56d56c0e48f2edbbda40944479cb9762db56421fb021 SHA512 609b38e27386ea0dac821f8d0a23bbf57afa056ed928944d63c2c8d1572c4f8b6541d27f5d26ab167948724c9f1198069fb6e0b76ce2770fe795662c76151100
-DIST piccolo2d-3.0.zip 786064 BLAKE2B f550bc7d39811998616000833543e048c879eeaf5006ba3d1cd19c7ac3c3c588fdf1c9b66986e5232dea49c1081082716e16542918319c18207cc2177d38ff10 SHA512 c57d0e86ea36e662027559c63c8e300629361849d4526d9271ea1ed3c8d55296ab1fab846c7a475c5d831fc6330052fa897ba8d3f89a196bca752a7ae802aa2a
diff --git a/dev-java/piccolo2d/metadata.xml b/dev-java/piccolo2d/metadata.xml
deleted file mode 100644
index 4f70e1c96374..000000000000
--- a/dev-java/piccolo2d/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="google-code">piccolo2d</remote-id>
- <remote-id type="github">piccolo2d/piccolo2d.java</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/piccolo2d/piccolo2d-3.0-r1.ebuild b/dev-java/piccolo2d/piccolo2d-3.0-r1.ebuild
deleted file mode 100644
index bd8cd931c7e7..000000000000
--- a/dev-java/piccolo2d/piccolo2d-3.0-r1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Structured 2D Graphics Framework"
-HOMEPAGE="https://github.com/piccolo2d/piccolo2d.java"
-SRC_URI="https://github.com/${PN}/${PN}.java/archive/${PN}-complete-${PV}.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-CDEPEND="dev-java/swt:3.8"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PN}.java-${PN}-complete-${PV}"
-JAVA_GENTOO_CLASSPATH="swt-3.8"
-JAVA_SRC_DIR=( "core" "extras" "swt" )
-
-java_prepare() {
- rm -rf core/src/test extras/src/test swt/src/test || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc Readme.txt ReleaseNotes.txt
-
- if use examples; then
- docinto examples
- dodoc -r examples/src/main/java/org/piccolo2d/examples/*
- dodoc -r examples/src/main/java/org/piccolo2d/tutorial
- dodoc -r swt-examples/src/main/java/org/piccolo2d/extras
- docompress -x /usr/share/doc/${PF}/examples
- fi
-}
diff --git a/dev-java/piccolo2d/piccolo2d-3.0-r2.ebuild b/dev-java/piccolo2d/piccolo2d-3.0-r2.ebuild
deleted file mode 100644
index bfe1cbbc3322..000000000000
--- a/dev-java/piccolo2d/piccolo2d-3.0-r2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Structured 2D Graphics Framework"
-HOMEPAGE="https://github.com/piccolo2d/piccolo2d.java"
-SRC_URI="https://github.com/${PN}/${PN}.java/archive/${PN}-complete-${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
-
-CDEPEND="dev-java/swt:4.10"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}/${PN}.java-${PN}-complete-${PV}"
-
-JAVA_GENTOO_CLASSPATH="swt-4.10"
-JAVA_SRC_DIR=( "core" "extras" "swt" )
-
-src_prepare() {
- default
- rm -rf core/src/test extras/src/test swt/src/test || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc Readme.txt ReleaseNotes.txt
-
- if use examples; then
- docinto examples
- dodoc -r examples/src/main/java/org/piccolo2d/examples/*
- dodoc -r examples/src/main/java/org/piccolo2d/tutorial
- dodoc -r swt-examples/src/main/java/org/piccolo2d/extras
- docompress -x /usr/share/doc/${PF}/examples
- fi
-}
diff --git a/dev-java/picocli/Manifest b/dev-java/picocli/Manifest
new file mode 100644
index 000000000000..9df597ba2d27
--- /dev/null
+++ b/dev-java/picocli/Manifest
@@ -0,0 +1 @@
+DIST picocli-4.6.3-sources.tar.gz 56087383 BLAKE2B ce9aaada241358fd570332696b1ac529a9a1e300911aaf2e1f927a94a44a3e38cae96df3d99a7a7e287fb48d429097624004b4ddd792ba564cc9c67ec975d9e0 SHA512 34b8388c6cf268799f06d465aa06e8d5c39c2673806cdfa1b346dac4aaf32ae5b033ae975333b7401bb79c77c4e34b9b932f8699344d6cc00f35a00c1b7bc504
diff --git a/dev-java/picocli/metadata.xml b/dev-java/picocli/metadata.xml
new file mode 100644
index 000000000000..cc0ad4843c3b
--- /dev/null
+++ b/dev-java/picocli/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <longdescription>Picocli is a modern framework for building powerful, user-friendly, GraalVM-enabled command line apps with ease. It supports colors, autocompletion, subcommands, and more. In 1 source file so apps can include as source and avoid adding a dependency. Written in Java, usable from Groovy, Kotlin, Scala, etc.</longdescription>
+ <upstream>
+ <remote-id type="github">remkop/picocli</remote-id>
+ <bugs-to>https://github.com/remkop/picocli/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/picocli/picocli-4.6.3-r1.ebuild b/dev-java/picocli/picocli-4.6.3-r1.ebuild
new file mode 100644
index 000000000000..e582311ee918
--- /dev/null
+++ b/dev-java/picocli/picocli-4.6.3-r1.ebuild
@@ -0,0 +1,46 @@
+# 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="info.picocli:picocli:4.6.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java command line parser with both an annotations API and a programmatic API"
+HOMEPAGE="https://picocli.info"
+SRC_URI="https://github.com/remkop/${PN}/archive/v${PV}.tar.gz -> ${P}-sources.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# package org.junit.contrib.java.lang.system does not exist
+# the project is here: https://github.com/stefanbirkner/system-rules
+RESTRICT="test"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( LICENSE README.md RELEASE-NOTES.md )
+
+S="${WORKDIR}/${P}"
+
+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"
+)
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/plexus-classworlds/Manifest b/dev-java/plexus-classworlds/Manifest
index ce840cb6f52b..444a9642dc6e 100644
--- a/dev-java/plexus-classworlds/Manifest
+++ b/dev-java/plexus-classworlds/Manifest
@@ -1 +1 @@
-DIST plexus-classworlds-2.2.3.tar.bz2 41744 BLAKE2B 41ddc64c066bdfb5f2398773790b9fec213070d3dad5e57f7b0643f4347386d5304c435cd60e5b1fad32f2d7fae7b48a2afd0189d115018ed5ee38901c80867a SHA512 d5f3d3dac4df569b91ddea9265b14a2459b0ecd4ac3e4547cbac341f50d18238071a7a560d9771a9f8724c59225ea7fa8645ed72c5a00a684519a46a024c3c61
+DIST plexus-classworlds-2.7.0.tar.gz 60221 BLAKE2B 8adbad24c057982dd3da6ce221175cf0b3e6585316de02434214d7d470b24220edaa94f4191cb2febfc4e3006a78cd3be5cc0f793438a5009ee20ef8c602768b SHA512 625d83c1a08a15e0d85984518eaec36bf001e562c49df4d5028e9fec1a9fdc69faa88066441da3cedd803fc20932fcaef9f2e924a485e0a0dcde60a600b32c7f
diff --git a/dev-java/plexus-classworlds/files/2.2.3-build.xml b/dev-java/plexus-classworlds/files/2.2.3-build.xml
deleted file mode 100644
index ed1e6fe4fb8f..000000000000
--- a/dev-java/plexus-classworlds/files/2.2.3-build.xml
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="plexus-classworlds-from-maven" default="package" basedir=".">
- <property file="${user.home}/.m2/maven.properties" />
- <property file="maven-build.properties" />
-
- <property name="maven.build.finalName" value="plexus-classworlds-2.2.3" />
- <property name="maven.build.dir" value="target" />
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes" />
- <property name="maven.build.srcDir.0" value="src/main/java" />
- <property name="maven.build.resourceDir.0" value="src/main/resources" />
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes" />
- <property name="maven.build.testDir.0" value="src/test/java" />
- <property name="maven.build.testResourceDir.0" value="src/test/resources" />
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports" />
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site" />
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository" />
- <property name="maven.settings.offline" value="false" />
- <property name="maven.settings.interactiveMode" value="true" />
-
- <path id="build.classpath" />
- <path id="build.test.classpath" />
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}" />
- </target>
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}" />
- <javac destdir="${maven.build.outputDir}" excludes="org/codehaus/plexus/classworlds/event/*" encoding="UTF-8" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.4" verbose="false" fork="false" source="1.4">
- <src>
- <pathelement location="${maven.build.srcDir.0}" />
- </src>
- <classpath refid="build.classpath" />
- </javac>
- </target>
-
- <target name="compile-tests" depends="compile" description="Compile the test code" unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}" />
- <javac destdir="${maven.build.testOutputDir}" excludes="org/codehaus/plexus/classworlds/event/*" encoding="UTF-8" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.4" verbose="false" fork="false" source="1.4">
- <src>
- <pathelement location="${maven.build.testDir.0}" />
- </src>
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- </classpath>
- </javac>
- </target>
-
- <target name="test" depends="compile-tests, junit-missing" unless="junit.skipped" description="Run the test cases">
- <mkdir dir="${maven.test.reports}" />
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="." />
- <formatter type="xml" />
- <formatter type="plain" usefile="false" />
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- <pathelement location="${maven.build.testOutputDir}" />
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java" />
- <include name="**/*Test.java" />
- <include name="**/*TestCase.java" />
- <exclude name="**/*Abstract*Test.java" />
- <exclude name="**/*Abstract*TestCase.java" />
- <exclude name="**/*TestUtil.java" />
- <exclude name="**/*ConfiguratorTest.java" />
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java" />
- <exclude name="**/*Abstract*Test.java" />
- <exclude name="**/*Abstract*TestCase.java" />
- <exclude name="**/*TestUtil.java" />
- <exclude name="**/*ConfiguratorTest.java" />
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" />
- </target>
-
- <target name="test-junit-status" depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}" />
- <isfalse value="${maven.test.skip}" />
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}" />
- <istrue value="${maven.test.skip}" />
- </or>
- </condition>
- </target>
-
- <target name="junit-missing" depends="test-junit-status" if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}" packagenames="*" destdir="${maven.reporting.outputDirectory}/apidocs" access="protected" old="false" verbose="false" version="true" use="true" author="true" splitindex="false" nodeprecated="false" nodeprecatedlist="false" notree="false" noindex="false" nohelp="false" nonavbar="false" serialwarn="false" charset="ISO-8859-1" linksource="false" breakiterator="false" />
- </target>
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar" compress="true" index="false" basedir="${maven.build.outputDir}" excludes="**/package.html" />
- </target>
-
- <target name="jar" depends="package" description="Builds the jar for the application" />
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true" />
- </condition>
- </target>
-</project>
diff --git a/dev-java/plexus-classworlds/metadata.xml b/dev-java/plexus-classworlds/metadata.xml
index 952a4b9b605c..183a9252fc9e 100644
--- a/dev-java/plexus-classworlds/metadata.xml
+++ b/dev-java/plexus-classworlds/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">codehaus-plexus/plexus-classworlds</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/plexus-classworlds/plexus-classworlds-2.2.3.ebuild b/dev-java/plexus-classworlds/plexus-classworlds-2.2.3.ebuild
deleted file mode 100644
index 49465eea7b4e..000000000000
--- a/dev-java/plexus-classworlds/plexus-classworlds-2.2.3.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-WANT_ANT_TASKS="ant-junit4"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="The class loader framework of the Plexus project"
-HOMEPAGE="https://github.com/codehaus"
-SRC_URI="https://dev.gentoo.org/~ercpe/distfiles/${CATEGORY}/${PN}/${P}.tar.bz2"
-
-LICENSE="codehaus-classworlds"
-
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8"
-RDEPEND=">=virtual/jre-1.8"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-src_prepare() {
- cp "${FILESDIR}"/${PV}-build.xml "${S}"/build.xml || die
-
- default
-}
-
-src_install() {
- java-pkg_newjar "${S}/target/${P}.jar" "${PN}.jar"
-
- use source && java-pkg_dosrc "${S}"/src/main/java/*
- use doc && java-pkg_dojavadoc "${S}"/target/site/apidocs
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/plexus-classworlds/plexus-classworlds-2.7.0-r1.ebuild b/dev-java/plexus-classworlds/plexus-classworlds-2.7.0-r1.ebuild
new file mode 100644
index 000000000000..b61697448e9a
--- /dev/null
+++ b/dev-java/plexus-classworlds/plexus-classworlds-2.7.0-r1.ebuild
@@ -0,0 +1,47 @@
+# 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.codehaus.plexus:plexus-classworlds:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The class loader framework of the Plexus project"
+HOMEPAGE="https://codehaus-plexus.github.io/plexus-classworlds/"
+SRC_URI="https://github.com/codehaus-plexus/plexus-classworlds/archive/plexus-classworlds-${PV}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/commons-logging:0
+ dev-java/xml-commons-external:1.4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_MAIN_CLASS="org.codehaus.plexus.classworlds.launcher.Launcher"
+JAVA_SRC_DIR="src/main/java/"
+
+# Invalid test class, No runnable methods
+JAVA_TEST_EXCLUDES="org.codehaus.plexus.classworlds.TestUtil"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/test-data"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test(){
+ # java.io.FileNotFoundException: target/test-lib/xml-apis-1.3.02.jar
+ mkdir -p target/test-lib || die
+ java-pkg_jar-from --into target/test-lib xml-commons-external-1.4 xml-commons-external.jar xml-apis-1.3.02.jar
+ java-pkg_jar-from --into target/test-lib ant ant.jar ant-1.9.0.jar
+ java-pkg_jar-from --into target/test-lib commons-logging commons-logging.jar commons-logging-1.0.3.jar
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/poi/Manifest b/dev-java/poi/Manifest
index 712b8ee1f6e0..9057f75a73c0 100644
--- a/dev-java/poi/Manifest
+++ b/dev-java/poi/Manifest
@@ -1 +1 @@
-DIST poi-5.0.0.tar.gz 111429369 BLAKE2B b29e754fb709d01ff4d68e9227f4c4739384bd02934b6860e8a0e96552d9e9ff1c5c665bc0b701f79226505fd98373fe6ad160c72735903eae388f0cd6618337 SHA512 e79d15b42d8ec389fd15b7714faf7b49b9fb4d57014cb341fff0f061393f4ea7dfcbd3810a6ec19539eabddbb1d0690aa56de4a1a412d05a527e11797047023a
+DIST poi-src-5.2.3-20220909.tgz 117839114 BLAKE2B 8b62f212dbbb6c7c20900dad97eaee20d416129d1529f42d3f3d15c42dd737af389f3d46c0891f733ba6ce143fa30c73aa921a2f007e68ecbfcd2a61da27baec SHA512 15d1d9387a3003fa30dc77cb42721daefb07a0f8ef1a69873107fd2266d66ae5c0138f47f2867d49154bbde4f28939ac1aa1b49e367230408e67c05099addc1c
diff --git a/dev-java/poi/metadata.xml b/dev-java/poi/metadata.xml
index 393300ad48a0..9dc891797117 100644
--- a/dev-java/poi/metadata.xml
+++ b/dev-java/poi/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/poi/poi-5.0.0.ebuild b/dev-java/poi/poi-5.0.0.ebuild
deleted file mode 100644
index 17710fa6007b..000000000000
--- a/dev-java/poi/poi-5.0.0.ebuild
+++ /dev/null
@@ -1,64 +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 poi-5.0.0/sonar/main/pom.xml --download-uri https://archive.apache.org/dist/poi/release/src/poi-src-5.0.0-20210120.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild poi-5.0.0.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="org.apache.poi:poi-main:5.0.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Maven build of Apache POI for Sonar checks"
-HOMEPAGE="https://poi.apache.org/"
-SRC_URI="https://archive.apache.org/dist/${PN}/release/src/${PN}-src-${PV}-20210120.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-
-# Common dependencies
-# POM: ${P}/sonar/main/pom.xml
-# com.zaxxer:SparseBitSet:1.2 -> >=dev-java/sparsebitset-1.2:0
-# commons-codec:commons-codec:1.15 -> >=dev-java/commons-codec-1.11:0
-# org.apache.commons:commons-collections4:4.4 -> >=dev-java/commons-collections-4.1:4
-# org.apache.commons:commons-math3:3.6.1 -> >=dev-java/commons-math-3.6.1:3
-# org.slf4j:jcl-over-slf4j:1.7.30 -> !!!artifactId-not-found!!!
-# org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
-
-# CDEPEND="
-# !!!artifactId-not-found!!!
-# >=dev-java/commons-codec-1.11:0
-# >=dev-java/commons-collections-4.1:4
-# >=dev-java/commons-math-3.6.1:3
-# >=dev-java/slf4j-api-1.7.30:0
-# >=dev-java/sparsebitset-1.2:0
-# "
-CDEPEND="
- >=dev-java/commons-codec-1.11:0
- >=dev-java/commons-collections-4.1:4
- >=dev-java/commons-math-3.6.1:3
- >=dev-java/slf4j-api-1.7.30:0
- >=dev-java/sparsebitset-1.2:0
- dev-java/commons-logging:0
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="sparsebitset,commons-codec,commons-collections-4,commons-logging,commons-math-3,slf4j-api"
-JAVA_SRC_DIR="src/java"
-
-src_prepare() {
- default
- java-pkg_clean
-}
diff --git a/dev-java/poi/poi-5.2.3.ebuild b/dev-java/poi/poi-5.2.3.ebuild
new file mode 100644
index 000000000000..4628e037f386
--- /dev/null
+++ b/dev-java/poi/poi-5.2.3.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# tests depend on junit-jupiter which is not packaged
+# https://github.com/apache/poi/blob/REL_5_2_2/poi/build.gradle#L51-L56
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.apache.poi:poi-main:5.2.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Maven build of Apache POI for Sonar checks"
+HOMEPAGE="https://poi.apache.org/"
+RELEASE_DATE="20220909"
+SRC_URI="mirror://apache/poi/release/src/poi-src-${PV}-${RELEASE_DATE}.tgz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=dev-java/commons-codec-1.15-r1:0
+ >=dev-java/commons-collections-4.4-r1:4
+ >=dev-java/commons-io-2.11.0-r1:1
+ >=dev-java/commons-math-3.6.1-r2:3
+ dev-java/log4j-api:2
+ dev-java/sparsebitset:0
+ >=virtual/jdk-11:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+S="${WORKDIR}/poi-src-${PV}-${RELEASE_DATE}-${PV}"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.apache.poi.poi"
+JAVA_CLASSPATH_EXTRA="
+ commons-codec
+ commons-collections-4
+ commons-io-1
+ commons-math-3
+ log4j-api-2
+ sparsebitset
+ "
+JAVA_RESOURCE_DIRS="poi/src/main/resources"
+JAVA_SRC_DIR=( poi/src/main/java{,9} )
+
+src_prepare() {
+ default
+ sed \
+ -e "s:@VERSION@:${PV}:g" \
+ -e "s:@DSTAMP@:${RELEASE_DATE}:g" \
+ poi/src/main/version/Version.java.template \
+ > poi/src/main/java/org/apache/poi/Version.java || die
+ # Neither log4j-api nor SparseBitSet provide Automatic-Module
+ sed \
+ -e '/SparseBitSet/d' \
+ -e '/org.apache.logging.log4j/d' \
+ -i poi/src/main/java9/module-info.java || die
+}
diff --git a/dev-java/portletapi/Manifest b/dev-java/portletapi/Manifest
deleted file mode 100644
index 78189fec6152..000000000000
--- a/dev-java/portletapi/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST portletapi-1.0.tar.gz 212229 BLAKE2B b1efcb7f78d056e6c4c9ed26bd6cbedd0ebcf0e6cc164f862bf3acd6e428feb8f373b3d313aa1cd934edbe9e5af98219bdcf4d173eafb6fc4b09bc5fdd1710bc SHA512 e47da8672be075036989774c90d7a512f7354e090eab3685af90295f07c2842d37a858665a5a2aa3b378e0172c65cbc520180f89e4f08673baeaf19105c0661b
-DIST portletapi-2.0.jar 124636 BLAKE2B f885bf1d042d0eb3230ab2588aa673dfc4fb4da7a8bca577abdac0eb31e9298c76b0600c1a7266d6ec8b072e4b89cafb08c60f4f1de0f5f878bef412a168ff0f SHA512 cf02030850d746b19b85bb3aa204fa7602af47fdda70d5be4c317dea01939abce96915d08186ac876b3081cd8023687e9c4bcef6f4f9a28e8a3456eaa56c8d8f
diff --git a/dev-java/portletapi/metadata.xml b/dev-java/portletapi/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/portletapi/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/portletapi/portletapi-1.0-r1.ebuild b/dev-java/portletapi/portletapi-1.0-r1.ebuild
deleted file mode 100644
index 6ddc04673e50..000000000000
--- a/dev-java/portletapi/portletapi-1.0-r1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Portlet API implementation of JSR 168"
-HOMEPAGE="http://portals.apache.org/jetspeed-2/"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6"
diff --git a/dev-java/portletapi/portletapi-2.0-r1.ebuild b/dev-java/portletapi/portletapi-2.0-r1.ebuild
deleted file mode 100644
index c4c81fe914f3..000000000000
--- a/dev-java/portletapi/portletapi-2.0-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="portlet-api"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Portlet API 2.0 developed by the Java Community Process JSR-286"
-HOMEPAGE="https://jcp.org/en/jsr/detail?id=286"
-SRC_URI="https://repo1.maven.org/maven2/javax/portlet/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="2.0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-CDEPEND="dev-java/tomcat-servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_ENCODING="ISO-8859-1"
-JAVA_SRC_DIR="javax"
-JAVA_GENTOO_CLASSPATH="tomcat-servlet-api-3.0"
diff --git a/dev-java/protobuf-java/Manifest b/dev-java/protobuf-java/Manifest
index 87ea4747892e..c07e7249e188 100644
--- a/dev-java/protobuf-java/Manifest
+++ b/dev-java/protobuf-java/Manifest
@@ -1,6 +1,7 @@
-DIST protobuf-3.15.8.tar.gz 5285277 BLAKE2B 798fc011ac03cdc2406acf5845c667d8482082044bdace06c2c1d02b5b1b69c1b1f30e29774180dc1801a1d21d62e2ce50325105859564a1e36d3fe478e64d8b SHA512 56fc6df2dae14eee0fb67dd4204fc1ec54a18d994a69c9e42c7888d0cd50d269d1c5e1445d74f0fa705850d4ac86a22d86781e09769a716e5c6f829b15b05592
-DIST protobuf-3.16.0.tar.gz 5299781 BLAKE2B 9ace02a6038c31b7393671fb2ccd6a4866a3f8b7d87d2bc8371f49d65b9180f10792ca2430a83449dfa7d785a1244dac23c20756414c9d1e7c7e871a8038b123 SHA512 0191e5a6a23d03f691e883e259f6d06a0ac8eef427455bc7d1cc70b6f0ed260e4ad8f360c836fd4bdc95ec0ca314c887cbf7acbcda60e03cdfe69e4cd275bff5
-DIST protobuf-3.17.0.tar.gz 5185780 BLAKE2B a168619df72cdf097c7ddfd50aca96a2101bf73e7c1c842c020e6ee08a853db8674a86ca999b7706da3dd21d4d3d2159241c93232efc693701962f3a54a382e9 SHA512 36ed2de641849ce01531ff1207f62a0748f811519c40622a119a17a1e709864382de81481fb58f374a025948971c48416e7e6de9c00512a78633c7a8a3aa3a36
-DIST protobuf-3.17.1.tar.gz 5192666 BLAKE2B 7f912db7e0835aaa42628fcf564a5666e2cbfa021bb35638a5eec53c3c457f1e747225dea54f732b7239a1520febca9bc20c824b1938f100796caa3ac2133bc1 SHA512 5a18aa3c1dab040dc6d22310a8503241081106acf7ca89079d7b416533d7c2cdd47719dc9023e6bc26969f0f1c796550260a04034a403c69752f6a3a7a651bb8
-DIST protobuf-3.17.2.tar.gz 5192779 BLAKE2B 97f9561848e70b8d26ebcc7fc4fa8da51c4b8267efbe1d2d386c2785308e7ba7edc05f1b3863c274dc8838866d58b58509606d72c51a22b956d1d528584c4c95 SHA512 b3e7ad50ed772668df70a3a20ad1af13a5e82f23b109e4fecd34e6a74947bed300963c9f084907fbfafe28fc18365cde7df1975e2ff9538d2f5a3d2b458bca98
-DIST protobuf-3.17.3.tar.gz 5235236 BLAKE2B 2495e678c8f9436d4e5a30ccee8b6226125d418ac7ecf7df20b078a1a16c221cbccab7d846dcd56a90220c106617fa75c410a21b62612fedec378cd7e8571350 SHA512 b4030b4474cc5fb5a62501200725dd488e6e66e3ced4ed12ab4ee029fcfed305e92ec966adafbdd343afffd186908163849422b95eaa500e7e741ac325d01d12
+DIST protobuf-23.0.tar.gz 5039837 BLAKE2B 63e02590b03fd9206cdfc4a26edeb2fa55dac902f5365c33c9e9340a722f552e4a5c82d1a0b25b84fcb675d5d06b768fd92cf472743d2361295129ae9faa02f3 SHA512 46c263fab189fdc310c7310d1a3d9e76472e5d96f16228bc4b946d4211afc64188d563ec70250c11a3dd05d18158b72ccf173567bd59aa45310eff62cd5f194d
+DIST protobuf-23.3.tar.gz 5043803 BLAKE2B ee2edee230969555c9ef95069c7b1d6c23c3d1f8ea1b2249fb3e9f6fcf63312c6e10e9da65b80629fb08d5fb08d05a19bb9c752c25b892c1e3fd6f18b9279eb3 SHA512 646af367dbc61b42e322cf0b335f360e428b272e2b1f5361b2f17c18d3dc9dddd615e1279436028b1a42275a0beadda37c2c934fc27d6c892131cc8d526d8b3b
+DIST protobuf-25.1.tar.gz 5878124 BLAKE2B a0b917e4518b07b221afd01e801e45b5b6fa35c7ccf8c21120d6a63f7174e53cc37d0516b1802d9243f8bb37b72b7f460a36dcbf0fffb09e011b05315c53efc3 SHA512 d2fad2188118ced2cd951bdb472d72cc9e9b2158c88eeca652c76332a884b5b5b4b58628f7777272fa693140753823584ea9c7924f1655b1d5a363f59bdf7a4c
+DIST protobuf-25.2.tar.gz 5878387 BLAKE2B 1ee7a48d3a481f523ff240c79e8cacb39b6a7e2c671279812cbffd5ce9be595034461fba41f03bed363133118c1b92bd14bcfd8c4e46ac6368e6407a23fb02ea SHA512 66f0b177eae0e2e40b8b17c8f411cd9dec5355dcfc145b8a79426e6367babcc28b9a8078bbe4ba2de47a82811a2e1a89d36955d6fa0c8d391cfeada4eb160fdb
+DIST protobuf-25.3.tar.gz 5878962 BLAKE2B 9268f9bd993a1cfd6d3937a2ad56ba4cfe3d84923756513841cbf13039d4a07acb260468745cb1294f30334cb34b45c6fde272f5c40d9de63ac6a4ce5c263077 SHA512 1f73e237c919082e5423ae9e2ea8813dccf672c059051d1531fe89ffaa45872d3cf3052b8c3af26f674296ec17d7dc861c67b8f0834ed80261ce4a6a14ed7115
+DIST protobuf-26.0.tar.gz 5957426 BLAKE2B 246b81a2c037047c10aeb004bbc4836d1d1cd73eadd0780060bf7fe60cee2cfa4e14afdb07c2a6fa2381e4656a47a148cf77315f1caa8c1bf6c137e06b0de168 SHA512 b350e0be51e4977865bfcc086506e1d85421da5d9386d2b10dada98a9a1a32a7b44e2ace866e605b42f1e2b6a702e6eca7fa9f5346819b55dd7d09f5ded3628c
+DIST truth-1.1.3.jar 243021 BLAKE2B a59149038c62ef5dd352b13d4b393e1b7715fbafe5ed86ec2d16d722c738a31dcdca10132fc73b17b367ac4309e5407ba2e489f8d4c8fbca60ce5f35ae75d1e3 SHA512 f29a9fb070aff8a32358a7b6c8998c0095de5d8d68afa7f7bac759c7050309deff929e767657ecbbefd96163460f10255ca01bc567ab30df4834b9d916a4fae8
diff --git a/dev-java/protobuf-java/files/protobuf-java-3.23.0-unittest_retention.proto.patch b/dev-java/protobuf-java/files/protobuf-java-3.23.0-unittest_retention.proto.patch
new file mode 100644
index 000000000000..c838bf3cede2
--- /dev/null
+++ b/dev-java/protobuf-java/files/protobuf-java-3.23.0-unittest_retention.proto.patch
@@ -0,0 +1,35 @@
+java/core/src/test/java/com/google/protobuf/DescriptorsTest.java:68: error: cannot find symbol
+import protobuf_unittest.UnittestRetention;
+ ^
+ symbol: class UnittestRetention
+ location: package protobuf_unittest
+java/core/src/test/java/com/google/protobuf/DescriptorsTest.java:402: error: cannot find symbol
+ FileOptions options = UnittestRetention.getDescriptor().getOptions();
+ ^
+ symbol: variable UnittestRetention
+ location: class DescriptorsTest
+java/core/src/test/java/com/google/protobuf/DescriptorsTest.java:403: error: cannot find symbol
+ assertThat(options.hasExtension(UnittestRetention.plainOption)).isTrue();
+ ^
+ symbol: variable UnittestRetention
+ location: class DescriptorsTest
+java/core/src/test/java/com/google/protobuf/DescriptorsTest.java:404: error: cannot find symbol
+ assertThat(options.hasExtension(UnittestRetention.runtimeRetentionOption)).isTrue();
+ ^
+ symbol: variable UnittestRetention
+ location: class DescriptorsTest
+java/core/src/test/java/com/google/protobuf/DescriptorsTest.java:405: error: cannot find symbol
+ assertThat(options.hasExtension(UnittestRetention.sourceRetentionOption)).isFalse();
+ ^
+ symbol: variable UnittestRetention
+ location: class DescriptorsTest
+--- a/java/core/generate-test-sources-build.xml
++++ b/java/core/generate-test-sources-build.xml
+@@ -19,6 +19,7 @@
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_optimize_for.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_proto3.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_proto3_optional.proto"/>
++ <arg value="${protobuf.source.dir}/google/protobuf/unittest_retention.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_well_known_types.proto"/>
+ <arg value="${test.proto.dir}/com/google/protobuf/any_test.proto"/>
+ <arg value="${test.proto.dir}/com/google/protobuf/cached_field_size_test.proto"/>
diff --git a/dev-java/protobuf-java/files/protobuf-java-3.26.0-unittest.protos.patch b/dev-java/protobuf-java/files/protobuf-java-3.26.0-unittest.protos.patch
new file mode 100644
index 000000000000..76b227a4e71a
--- /dev/null
+++ b/dev-java/protobuf-java/files/protobuf-java-3.26.0-unittest.protos.patch
@@ -0,0 +1,23 @@
+--- a/java/core/generate-test-sources-build.xml
++++ b/java/core/generate-test-sources-build.xml
+@@ -8,10 +8,12 @@
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_custom_options.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_enormous_descriptor.proto"/>
++ <arg value="${protobuf.source.dir}/google/protobuf/unittest_features.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_import.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_import_lite.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_import_public.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_import_public_lite.proto"/>
++ <arg value="${protobuf.source.dir}/google/protobuf/unittest_legacy_features.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_lite.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_mset.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_mset_wire_format.proto"/>
+@@ -19,6 +21,7 @@
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_optimize_for.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_proto3.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_proto3_optional.proto"/>
++ <arg value="${protobuf.source.dir}/google/protobuf/unittest_retention.proto"/>
+ <arg value="${protobuf.source.dir}/google/protobuf/unittest_well_known_types.proto"/>
+ <arg value="${test.proto.dir}/com/google/protobuf/any_test.proto"/>
+ <arg value="${test.proto.dir}/com/google/protobuf/cached_field_size_test.proto"/>
diff --git a/dev-java/protobuf-java/metadata.xml b/dev-java/protobuf-java/metadata.xml
index f618b52a34c1..20b09444fc60 100644
--- a/dev-java/protobuf-java/metadata.xml
+++ b/dev-java/protobuf-java/metadata.xml
@@ -1,18 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>arfrever.fta@gmail.com</email>
<name>Arfrever Frehtes Taifersar Arahesis</name>
</maintainer>
<maintainer type="project">
+ <email>cjk@gentoo.org</email>
+ <name>Cjk</name>
+ </maintainer>
+ <maintainer type="project">
<email>java@gentoo.org</email>
- <name>Java</name>
</maintainer>
- <slots>
- <subslots>Soname version number of Protobuf</subslots>
- </slots>
<upstream>
+ <bugs-to>https://github.com/protocolbuffers/protobuf/issues</bugs-to>
+ <doc>https://protobuf.dev/getting-started/javatutorial/</doc>
<remote-id type="github">protocolbuffers/protobuf</remote-id>
</upstream>
+ <use>
+ <flag name="system-protoc">Use protoc provided by dev-libs/protobuf</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-java/protobuf-java/protobuf-java-3.15.8.ebuild b/dev-java/protobuf-java/protobuf-java-3.15.8.ebuild
deleted file mode 100644
index 6c648819d2d6..000000000000
--- a/dev-java/protobuf-java/protobuf-java-3.15.8.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2008-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="com.google.protobuf:protobuf-java:3.15.8"
-
-inherit java-pkg-2 java-pkg-simple
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/26"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.7"
-DEPEND=">=virtual/jdk-1.7"
-RDEPEND=">=virtual/jre-1.7"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/protobuf-java/protobuf-java-3.16.0.ebuild b/dev-java/protobuf-java/protobuf-java-3.16.0.ebuild
deleted file mode 100644
index 96752936a170..000000000000
--- a/dev-java/protobuf-java/protobuf-java-3.16.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2008-2021 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
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/27"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/protobuf-java/protobuf-java-3.17.0.ebuild b/dev-java/protobuf-java/protobuf-java-3.17.0.ebuild
deleted file mode 100644
index d24b960991a9..000000000000
--- a/dev-java/protobuf-java/protobuf-java-3.17.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2008-2021 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
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/28"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/protobuf-java/protobuf-java-3.17.1.ebuild b/dev-java/protobuf-java/protobuf-java-3.17.1.ebuild
deleted file mode 100644
index d24b960991a9..000000000000
--- a/dev-java/protobuf-java/protobuf-java-3.17.1.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2008-2021 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
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/28"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/protobuf-java/protobuf-java-3.17.2.ebuild b/dev-java/protobuf-java/protobuf-java-3.17.2.ebuild
deleted file mode 100644
index d24b960991a9..000000000000
--- a/dev-java/protobuf-java/protobuf-java-3.17.2.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2008-2021 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
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/28"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/protobuf-java/protobuf-java-3.17.3.ebuild b/dev-java/protobuf-java/protobuf-java-3.17.3.ebuild
deleted file mode 100644
index d24b960991a9..000000000000
--- a/dev-java/protobuf-java/protobuf-java-3.17.3.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2008-2021 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
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/28"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/protobuf-java/protobuf-java-3.23.0.ebuild b/dev-java/protobuf-java/protobuf-java-3.23.0.ebuild
new file mode 100644
index 000000000000..abeb3464f5e4
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.23.0.ebuild
@@ -0,0 +1,165 @@
+# Copyright 2008-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.google.protobuf:protobuf-java:3.23.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.23.0 from the 23.0 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV#3.}.tar.gz -> protobuf-${PV#3.}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${PV#3.}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${PV#3.}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230125.2 )
+"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ :
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v23.0/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v23.0/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v23.0/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v23.0/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-3.23.3.ebuild b/dev-java/protobuf-java/protobuf-java-3.23.3.ebuild
new file mode 100644
index 000000000000..484bbc788521
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.23.3.ebuild
@@ -0,0 +1,164 @@
+# Copyright 2008-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.google.protobuf:protobuf-java:3.23.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.23.3 from the 23.3 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV#3.}.tar.gz -> protobuf-${PV#3.}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${PV#3.}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${PV#3.}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230125.3 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v23.3/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-3.25.1.ebuild b/dev-java/protobuf-java/protobuf-java-3.25.1.ebuild
new file mode 100644
index 000000000000..2c2fc51fb3b6
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.25.1.ebuild
@@ -0,0 +1,166 @@
+# Copyright 2008-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.google.protobuf:protobuf-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.25.1 from the 25.1 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+MY_PV3="${PV#3.}"
+MY_PV="${MY_PV3/_rc/-rc}"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${MY_PV}.tar.gz -> protobuf-${MY_PV}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${MY_PV3}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230802.0 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v25.1/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-3.25.2.ebuild b/dev-java/protobuf-java/protobuf-java-3.25.2.ebuild
new file mode 100644
index 000000000000..5276064d1543
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.25.2.ebuild
@@ -0,0 +1,166 @@
+# Copyright 2008-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.protobuf:protobuf-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.25.2 from the 25.2 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+MY_PV3="${PV#3.}"
+MY_PV="${MY_PV3/_rc/-rc}"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${MY_PV}.tar.gz -> protobuf-${MY_PV}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${MY_PV3}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230802.0 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v25.2/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.2/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.2/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v25.2/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-3.25.3.ebuild b/dev-java/protobuf-java/protobuf-java-3.25.3.ebuild
new file mode 100644
index 000000000000..5415eb83ec8c
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.25.3.ebuild
@@ -0,0 +1,166 @@
+# Copyright 2008-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.protobuf:protobuf-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.25.3 from the 25.3 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+MY_PV3="${PV#3.}"
+MY_PV="${MY_PV3/_rc/-rc}"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${MY_PV}.tar.gz -> protobuf-${MY_PV}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${MY_PV3}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230802.0 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.23.0-unittest_retention.proto.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v25.3/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.3/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v25.3/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v25.3/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-3.26.0.ebuild b/dev-java/protobuf-java/protobuf-java-3.26.0.ebuild
new file mode 100644
index 000000000000..5c59d510ec97
--- /dev/null
+++ b/dev-java/protobuf-java/protobuf-java-3.26.0.ebuild
@@ -0,0 +1,167 @@
+# Copyright 2008-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.protobuf:protobuf-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="Core Protocol Buffers library"
+HOMEPAGE="https://protobuf.dev"
+# Currently we bundle the binary version of truth.jar used only for tests, we don't install it.
+# And we build artifact 3.26.0 from the 26.0 tarball in order to allow sharing the tarball with
+# dev-libs/protobuf.
+MY_PV3="${PV#3.}"
+MY_PV="${MY_PV3/_rc/-rc}"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${MY_PV}.tar.gz -> protobuf-${MY_PV}.tar.gz
+ test? ( https://repo1.maven.org/maven2/com/google/truth/truth/1.1.3/truth-1.1.3.jar )"
+S="${WORKDIR}/protobuf-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="system-protoc"
+
+BDEPEND="
+ system-protoc? ( ~dev-libs/protobuf-${MY_PV3}:0 )
+ !system-protoc? ( >=dev-cpp/abseil-cpp-20230802.0 )
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/guava:0
+ dev-java/mockito:4
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+PATCHES=(
+ "${FILESDIR}/protobuf-java-3.26.0-unittest.protos.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.protobuf"
+JAVA_JAR_FILENAME="protobuf.jar"
+JAVA_RESOURCE_DIRS="java/core/src/main/resources"
+JAVA_SRC_DIR="java/core/src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="guava,junit-4,mockito-4"
+JAVA_TEST_SRC_DIR="java/core/src/test/java"
+
+run-protoc() {
+ if use system-protoc; then
+ protoc $1
+ else
+ "${BUILD_DIR}"/protoc $1
+ fi
+}
+
+src_prepare() {
+ # If the corrsponding version of system-protoc is not available we build protoc locally
+ if use system-protoc; then
+ default # apply patches
+ else
+ cmake_src_prepare
+ fi
+ java-pkg-2_src_prepare
+
+ mkdir "${JAVA_RESOURCE_DIRS}" || die
+ # https://github.com/protocolbuffers/protobuf/blob/v26.0/java/core/pom.xml#L43-L62
+ PROTOS=( $(sed \
+ -n '/>google\/protobuf.*\.proto/s:.*<include>\(.*\)</include>:\1:p' \
+ "${S}/java/core/pom.xml") ) || die
+ pushd src > /dev/null || die
+ cp --parents -v "${PROTOS[@]}" ../"${JAVA_RESOURCE_DIRS}" || die
+ popd > /dev/null || die
+
+ # https://github.com/protocolbuffers/protobuf/blob/v26.0/java/core/generate-sources-build.xml
+ einfo "Replace variables in generate-sources-build.xml"
+ sed \
+ -e 's:${generated.sources.dir}:java/core/src/main/java:' \
+ -e 's:${protobuf.java_source.dir}:java/core/src:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|echo\|mkdir\|exec/d' \
+ -i java/core/generate-sources-build.xml || die "sed to sources failed"
+
+ # https://github.com/protocolbuffers/protobuf/blob/v26.0/java/core/generate-test-sources-build.xml
+ einfo "Replace variables in generate-test-sources-build.xml"
+ sed \
+ -e 's:${generated.testsources.dir}:java/core/src/test/java:' \
+ -e 's:${protobuf.source.dir}:src:' \
+ -e 's:${test.proto.dir}:java/core/src/test/proto:' \
+ -e 's:^.*value="::' -e 's:\"/>::' \
+ -e '/project\|mkdir\|exec\|Also generate/d' \
+ -i java/core/generate-test-sources-build.xml || die "sed to test sources failed"
+
+ # Split the file in two parts, one for each run-protoc call
+ awk '/--java_out/{x="test-sources-build-"++i;}{print > x;}' \
+ java/core/generate-test-sources-build.xml || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dprotobuf_BUILD_TESTS=OFF
+ -Dprotobuf_ABSL_PROVIDER=package
+ )
+ if use system-protoc; then
+ :
+ else
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use system-protoc; then
+ :
+ else
+ cmake_src_compile
+ fi
+
+ einfo "Run protoc to generate sources"
+ run-protoc \
+ @java/core/generate-sources-build.xml \
+ || die "protoc sources failed"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # https://github.com/protocolbuffers/protobuf/blob/v26.0/java/core/pom.xml#L63-L71
+ jar cvf testdata.jar \
+ -C src google/protobuf/testdata/golden_message_oneof_implemented \
+ -C src google/protobuf/testdata/golden_packed_fields_message || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/truth-1.1.3.jar:testdata.jar"
+
+ einfo "Running protoc on first part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-1 \
+ || die "run-protoc test-sources-build-1 failed"
+
+ einfo "Running protoc on second part of generate-test-sources-build.xml"
+ run-protoc @test-sources-build-2 \
+ || die "run-protoc test-sources-build-2 failed"
+
+ einfo "Running tests"
+ # Invalid test class 'map_test.MapInitializationOrderTest':
+ # 1. Test class should have exactly one public constructor
+ # Invalid test class 'protobuf_unittest.CachedFieldSizeTest':
+ # 1. Test class should have exactly one public constructor
+ pushd "${JAVA_TEST_SRC_DIR}" || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -path "**/*Test.java" \
+ ! -path "**/Abstract*Test.java" \
+ ! -name "MapInitializationOrderTest.java" \
+ ! -path '*protobuf_unittest/CachedFieldSizeTest.java'
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/protobuf-java/protobuf-java-9999.ebuild b/dev-java/protobuf-java/protobuf-java-9999.ebuild
deleted file mode 100644
index 11d9796bf900..000000000000
--- a/dev-java/protobuf-java/protobuf-java-9999.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2008-2021 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
-
-if [[ "${PV}" == "9999" ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
- EGIT_SUBMODULES=()
-fi
-
-DESCRIPTION="Google's Protocol Buffers - Java bindings"
-HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
-if [[ "${PV}" == "9999" ]]; then
- SRC_URI=""
-else
- SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> protobuf-${PV}.tar.gz"
-fi
-
-LICENSE="BSD"
-SLOT="0/28"
-KEYWORDS=""
-IUSE=""
-
-BDEPEND="~dev-libs/protobuf-${PV}
- >=virtual/jdk-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/protobuf-${PV}/java"
-
-if [[ "${PV}" == "9999" ]]; then
- EGIT_CHECKOUT_DIR="${WORKDIR}/protobuf-${PV}"
-fi
-
-src_prepare() {
- pushd "${WORKDIR}/protobuf-${PV}" > /dev/null || die
- eapply_user
- popd > /dev/null || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- "${BROOT}/usr/bin/protoc" --java_out=core/src/main/java -I../src ../src/google/protobuf/descriptor.proto || die
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="core/src/main/java" JAVA_JAR_FILENAME="protobuf.jar" java-pkg-simple_src_install
-}
diff --git a/dev-java/qdox/Manifest b/dev-java/qdox/Manifest
index 51e3d527bae0..85413229dd93 100644
--- a/dev-java/qdox/Manifest
+++ b/dev-java/qdox/Manifest
@@ -1,2 +1,2 @@
DIST qdox-1.12.1.tar.gz 519833 BLAKE2B 83a732f1582b714cf943ede61bacc5216804c00cfbb642a479afb74739564f4fdbcd923dd7cb84a9626a97c5ad0a0f04895e0ae68252891cb25299e1fe1c9c72 SHA512 17ac933854ebd0560921805ea4339c151a7fd095bf8d50d5d71e656afda77ba30efac7926cfcc7543e4a8420b12d1eb75cdd305c50d1c28ad8cd6b0f4d95f5c5
-DIST qdox-1.6.3.jar 63731 BLAKE2B 77d117f0f76f531f9320b5eb3650db315aab838d5d79a9df8997649b498b375db3fb0c694ea8b5911512097dd2325554d7599bed51a978e38af6fa55600d7c24 SHA512 0b05620809e3830c7e12c289cd4765f96d845adabc1f09497993bd9f39852784f454eb4aff1deecb325608a5773e86fbb1f5863e0f25387805472b59b46cf965
+DIST qdox-2.0.1.tar.gz 528305 BLAKE2B ff2f4b59d650b93a466eae6cc69239b059f7786ea609c18c56414e7e849d711d5316664a376b2c2c6e0021a21e7577cc21c9f5cfd215c4af612100a4c81da758 SHA512 db9d9ed8e8cf38c74e35be493aebcca54ba9d2c43a92c066d1964777293ad3af8e3212fcb8c20e9453b93e9bbe868c988dab69f936e7df41450183ce385137fa
diff --git a/dev-java/qdox/metadata.xml b/dev-java/qdox/metadata.xml
index 5b3cc7523d73..f00a4317cac4 100644
--- a/dev-java/qdox/metadata.xml
+++ b/dev-java/qdox/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -10,6 +10,6 @@
definitions from source files complete with JavaDoc @tags.
</longdescription>
<upstream>
- <remote-id type="github">codehaus/qdox</remote-id>
+ <remote-id type="github">paul-hammant/qdox</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/qdox/qdox-1.12.1-r2.ebuild b/dev-java/qdox/qdox-1.12.1-r2.ebuild
deleted file mode 100644
index 39a712868027..000000000000
--- a/dev-java/qdox/qdox-1.12.1-r2.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Parser for extracting class/interface/method definitions"
-HOMEPAGE="https://github.com/codehaus/qdox"
-SRC_URI="https://github.com/codehaus/qdox/archive/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.12"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
-
-S="${WORKDIR}/${PN}-${PN}-${PV}"
-
-CDEPEND="dev-java/ant-core:0"
-
-DEPEND=">=virtual/jdk-1.8
- app-arch/unzip:0
- dev-java/byaccj:0
- >=dev-java/jflex-1.6.1:0
- dev-java/jmock:1.0
- test? ( dev-java/junit:0 )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.8
- ${CDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/jflex-1.6.1.patch"
-)
-
-src_prepare() {
- default
-
- if ! use test ; then
- rm src/java/com/thoughtworks/qdox/tools/QDoxTester.java
- rm -rf src/java/com/thoughtworks/qdox/junit
- rm -rf src/test
- fi
-}
-
-src_compile() {
- jflex src/grammar/lexer.flex --skel src/grammar/skeleton.inner -d src/java/com/thoughtworks/qdox/parser/impl/ || die
- byaccj -v -Jnorun -Jnoconstruct -Jclass=Parser -Jsemantic=Value -Jpackage=com.thoughtworks.qdox.parser.impl src/grammar/parser.y || die
- mv Parser.java src/java/com/thoughtworks/qdox/parser/impl/ || die
-
- # create jar
- mkdir -p build/classes || die
-
- local cp="$(java-pkg_getjars --build-only ant-core,jmock-1.0)"
-
- if use test ; then
- cp="${cp}:$(java-pkg_getjars --build-only junit)"
- fi
-
- ejavac -sourcepath . -d build/classes -classpath "${cp}" \
- $(find . -name "*.java") || die "Cannot compile sources"
-
- mkdir dist || die
- cd build/classes || die
- jar -cvf "${S}"/dist/${PN}.jar com || die "Cannot create JAR"
-
- # generate javadoc
- if use doc ; then
- cd "${S}"
- mkdir javadoc || die
- javadoc -d javadoc -sourcepath src/java -subpackages com -classpath "${cp}"
- fi
-}
-
-src_test() {
- java -cp "${S}"/dist/${PN}.jar:$(java-pkg_getjars --build-only ant-core,junit,jmock-1.0) \
- com.thoughtworks.qdox.tools.QDoxTester src || die "Tests failed!"
-}
-
-src_install() {
- java-pkg_dojar dist/${PN}.jar
- java-pkg_register-ant-task
-
- use source && java-pkg_dosrc src/java/com
- use doc && java-pkg_dojavadoc javadoc
-}
diff --git a/dev-java/qdox/qdox-1.12.1-r4.ebuild b/dev-java/qdox/qdox-1.12.1-r4.ebuild
new file mode 100644
index 000000000000..cf1dc1eeb7d5
--- /dev/null
+++ b/dev-java/qdox/qdox-1.12.1-r4.ebuild
@@ -0,0 +1,86 @@
+# 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.thoughtworks.qdox:qdox:1.12.1"
+
+inherit java-pkg-2
+
+DESCRIPTION="Parser for extracting class/interface/method definitions"
+HOMEPAGE="https://github.com/codehaus/qdox"
+SRC_URI="https://github.com/codehaus/qdox/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="1.12"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
+
+S="${WORKDIR}/${PN}-${PN}-${PV}"
+
+CDEPEND=">=dev-java/ant-1.10.14-r3:0"
+
+DEPEND=">=virtual/jdk-1.8:*
+ dev-java/byaccj:0
+ >=dev-java/jflex-1.6.1:0
+ dev-java/jmock:1.0
+ test? ( dev-java/junit:0 )
+ ${CDEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/jflex-1.6.1.patch"
+)
+
+src_prepare() {
+ default
+
+ if ! use test ; then
+ rm src/java/com/thoughtworks/qdox/tools/QDoxTester.java
+ rm -rf src/java/com/thoughtworks/qdox/junit
+ rm -rf src/test
+ fi
+}
+
+src_compile() {
+ jflex src/grammar/lexer.flex --skel src/grammar/skeleton.inner -d src/java/com/thoughtworks/qdox/parser/impl/ || die
+ byaccj -v -Jnorun -Jnoconstruct -Jclass=Parser -Jsemantic=Value -Jpackage=com.thoughtworks.qdox.parser.impl src/grammar/parser.y || die
+ mv Parser.java src/java/com/thoughtworks/qdox/parser/impl/ || die
+
+ # create jar
+ mkdir -p build/classes || die
+
+ local cp="$(java-pkg_getjars --build-only ant,jmock-1.0)"
+
+ if use test ; then
+ cp="${cp}:$(java-pkg_getjars --build-only junit)"
+ fi
+
+ ejavac -sourcepath . -d build/classes -classpath "${cp}" \
+ $(find . -name "*.java") || die "Cannot compile sources"
+
+ mkdir dist || die
+ cd build/classes || die
+ jar -cvf "${S}"/dist/${PN}.jar com || die "Cannot create JAR"
+
+ # generate javadoc
+ if use doc ; then
+ cd "${S}"
+ mkdir javadoc || die
+ javadoc -d javadoc -sourcepath src/java -subpackages com -classpath "${cp}"
+ fi
+}
+
+src_test() {
+ java -cp "${S}"/dist/${PN}.jar:$(java-pkg_getjars --build-only ant,junit,jmock-1.0) \
+ com.thoughtworks.qdox.tools.QDoxTester src || die "Tests failed!"
+}
+
+src_install() {
+ java-pkg_dojar dist/${PN}.jar
+
+ use source && java-pkg_dosrc src/java/com
+ use doc && java-pkg_dojavadoc javadoc
+}
diff --git a/dev-java/qdox/qdox-1.6.3-r2.ebuild b/dev-java/qdox/qdox-1.6.3-r2.ebuild
deleted file mode 100644
index 824060300ab3..000000000000
--- a/dev-java/qdox/qdox-1.6.3-r2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="Parser for extracting class/interface/method definitions"
-HOMEPAGE="https://github.com/codehaus/qdox"
-SRC_URI="mirror://gentoo/${P}.jar"
-
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-SLOT="1.6"
-LICENSE="Apache-2.0"
-
-DEPEND="
- >=virtual/jdk-1.8"
-
-RDEPEND="
- >=virtual/jre-1.8"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="com"
-
-src_prepare() {
- default
- rm -v com/thoughtworks/qdox/ant/AbstractQdoxTask.java \
- com/thoughtworks/qdox/junit/APITestCase.java || die
-}
diff --git a/dev-java/qdox/qdox-2.0.1.ebuild b/dev-java/qdox/qdox-2.0.1.ebuild
new file mode 100644
index 000000000000..0588a2ec7649
--- /dev/null
+++ b/dev-java/qdox/qdox-2.0.1.ebuild
@@ -0,0 +1,102 @@
+# 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="com.thoughtworks.qdox:qdox:2.0.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Parser for extracting class/interface/method definitions"
+HOMEPAGE="https://github.com/paul-hammant/qdox"
+SRC_URI="https://github.com/paul-hammant/qdox/archive/qdox-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~ppc-macos ~x64-macos"
+
+DEPEND="
+ dev-java/jflex:0
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/junit:4
+ dev-java/mockito:0
+ )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="dev-java/byaccj:0"
+
+S="${WORKDIR}/qdox-${P}"
+
+JAVA_AUTOMATIC_MODULE_NAME="com.thoughtworks.qdox"
+JAVA_SRC_DIR="src/main/java"
+JAVA_CLASSPATH_EXTRA="jflex"
+
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ mockito
+"
+
+src_compile() {
+ einfo "Running jflex"
+ jflex src/grammar/lexer.flex src/grammar/commentlexer.flex \
+ -d src/main/java/com/thoughtworks/qdox/parser/impl || die
+
+ einfo "Running byaccj for DefaultJavaCommentParser"
+ byaccj -v \
+ -Jnorun \
+ -Jnoconstruct \
+ -Jclass=DefaultJavaCommentParser \
+ -Jpackage=com.thoughtworks.qdox.parser.impl \
+ src/grammar/commentparser.y || die
+
+ einfo "Running byaccj for Parser"
+ byaccj -v \
+ -Jnorun \
+ -Jnoconstruct \
+ -Jclass=Parser \
+ -Jimplements=CommentHandler \
+ -Jsemantic=Value \
+ -Jpackage=com.thoughtworks.qdox.parser.impl \
+ src/grammar/parser.y || die
+
+ mv Parser.java src/main/java/com/thoughtworks/qdox/parser/impl/ || die
+ mv DefaultJavaCommentParser.java src/main/java/com/thoughtworks/qdox/parser/impl/ || die
+ mv DefaultJavaCommentParserVal.java src/main/java/com/thoughtworks/qdox/parser/impl/ || die
+
+ einfo "Running java-pkg-simple_src_compile"
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ # Too many tests fail with Java 17.
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 17 ; then
+ einfo "Tests only for Java < 17"
+ else
+ einfo "Running tests"
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -wholename "**/*Test.java" \
+ -o -name 'TestMultipleLevelGenericInheritance.java' \)\
+ ! -name "ClassLibraryBuilderTest.java" \
+ ! -name "JavaClassTest.java" \
+ ! -name "JavaConstructorTest.java" \
+ ! -name "JavaFieldTest.java" \
+ ! -name "JavaMethodTest.java" \
+ ! -name "JavaPackageTest.java" \
+ ! -name "JavaParameterTest.java" \
+ ! -name "JavaSourceTest.java" \
+ ! -name "JavaTypeTest.java" \
+ ! -name "AbstractDocletTagTest.java" \
+ )
+ popd
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ java-pkg-simple_src_test
+ fi
+}
diff --git a/dev-java/randomized-runner/Manifest b/dev-java/randomized-runner/Manifest
index 44d4d0ec7f58..9bcd3a6a7fd9 100644
--- a/dev-java/randomized-runner/Manifest
+++ b/dev-java/randomized-runner/Manifest
@@ -1 +1 @@
-DIST randomized-runner-2.7.8.tar.gz 1501825 BLAKE2B e375d4509d8be914829c4ebfad5584e16f8f03be480ed21b52a0ad3db363b7f2761ae6442bb9baa8c929bc182c422963a6e8480165f53b7b820f9f4e2954a243 SHA512 5627f14dc70a6341838ad1ade0fa0f152ec6a5a7f3da4bc31e0ff040ea2c62aeafd669460f61f37db31de379db857ce3d58f0deed22d1cf714f1461988a92cdc
+DIST randomized-runner-2.8.0.tar.gz 1506178 BLAKE2B 0f142b5f90ea0aaf0934415ad772bf1363c75d371fb964398259e46af1879f2cd3520c9d3eff60b1614bef7fd64003d3ff868302cdc5421197085133dd856ba4 SHA512 e7fba917bf30a7ae4ea68301ec26bfa1b5659ea6124417ef494cc915b26bb07343ce8784dfd718032410ae750601f73ad56cd0a1bab3b2013559fc020694fb7f
diff --git a/dev-java/randomized-runner/metadata.xml b/dev-java/randomized-runner/metadata.xml
index 0d49beafc75d..960cc7109212 100644
--- a/dev-java/randomized-runner/metadata.xml
+++ b/dev-java/randomized-runner/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">randomizedtesting/randomizedtesting</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/randomized-runner/randomized-runner-2.7.8.ebuild b/dev-java/randomized-runner/randomized-runner-2.7.8.ebuild
deleted file mode 100644
index 638cef4a653e..000000000000
--- a/dev-java/randomized-runner/randomized-runner-2.7.8.ebuild
+++ /dev/null
@@ -1,53 +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 pom.xml --download-uri https://github.com/randomizedtesting/randomizedtesting/archive/refs/tags/release/2.7.8.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild randomized-runner-2.7.8.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="com.carrotsearch.randomizedtesting:randomizedtesting-runner:2.7.8"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="JUnit test runner and plugins for running JUnit tests with pseudo-randomness."
-HOMEPAGE="https://github.com/randomizedtesting/randomizedtesting/randomizedtesting-runner"
-SRC_URI="https://github.com/randomizedtesting/randomizedtesting/archive/refs/tags/release/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# Common dependencies
-# POM: pom.xml
-# junit:junit:4.12 -> >=dev-java/junit-4.12:4
-
-CDEPEND="
- >=dev-java/junit-4.12:4
-"
-
-# Compile dependencies
-# POM: pom.xml
-# test? org.assertj:assertj-core:2.2.0 -> >=dev-java/assertj-core-2.3.0:2
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- >=dev-java/assertj-core-2.3.0:2
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}/randomizedtesting-release-${PV}/${PN}"
-
-JAVA_GENTOO_CLASSPATH="junit-4"
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="assertj-core-2"
-JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/randomized-runner/randomized-runner-2.8.0.ebuild b/dev-java/randomized-runner/randomized-runner-2.8.0.ebuild
new file mode 100644
index 000000000000..fa611efd4b83
--- /dev/null
+++ b/dev-java/randomized-runner/randomized-runner-2.8.0.ebuild
@@ -0,0 +1,57 @@
+# 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/randomizedtesting/randomizedtesting/archive/release/2.8.0.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild randomized-runner-2.8.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.carrotsearch.randomizedtesting:randomizedtesting-runner:2.8.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="JUnit test runner and plugins for running JUnit tests with pseudo-randomness"
+HOMEPAGE="https://labs.carrotsearch.com/randomizedtesting.html"
+SRC_URI="https://github.com/randomizedtesting/randomizedtesting/archive/release/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/junit:4
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/assertj-core:3
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( ../{CHANGES,CONTRIBUTING,README}.txt )
+
+S="${WORKDIR}/randomizedtesting-release-${PV}/${PN}"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3,junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if [[ "${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.util=ALL-UNNAMED )
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/sun.nio.fs=ALL-UNNAMED )
+ fi
+
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/rat/metadata.xml b/dev-java/rat/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/rat/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/rat/rat-0.13.ebuild b/dev-java/rat/rat-0.13.ebuild
deleted file mode 100644
index ad082bb240bc..000000000000
--- a/dev-java/rat/rat-0.13.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-DESCRIPTION="Apache Rat is a release audit tool, focused on licenses."
-HOMEPAGE="https://creadur.apache.org/rat/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- ~dev-java/apache-rat-core-${PV}:0
- ~dev-java/apache-rat-tasks-${PV}:0
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}"
-
-src_compile() { :; }
-
-src_install() {
- default
- java-pkg_register-dependency apache-rat-core,apache-rat-tasks
- java-pkg_dolauncher "apache-${PN}" --jar $(java-pkg_getjar apache-rat-core apache-rat-core.jar) --main org.apache.rat.Report
-}
diff --git a/dev-java/reflectasm/Manifest b/dev-java/reflectasm/Manifest
deleted file mode 100644
index b0850b4a0e3e..000000000000
--- a/dev-java/reflectasm/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST reflectasm-1.11.0.zip 273527 BLAKE2B 9b2785fc0d394387cc62c6bef3e2b04811d06fa6d6c6ecde01b8e7462ec2cbb7ca226352ecb1f0e574751c74946ff277a306d65fd156dd77200f1d6b6c17f3cf SHA512 c012c6c7e859a9056478b15ae679db0597605ef04f95dead8c8a9751c3626d305acbf6b92597945419ef7d43e7a92550030001de25c6f8992483468d8222831a
-DIST reflectasm-1.11.1.zip 273930 BLAKE2B b7102fa0ee836f6de1abf9a6fa9be3e8c82225fb784901c85e180cd426151c307e17b3721b161c4fc1a52288bdec8888c3a400df52648726b1060d646fdcad76 SHA512 6b50e7d9d908363c30b2ccecdc2912b04b1a659b258acba2c46be72d8a8c4c58ec37e907a16304a6a3e8539c1dd436b14c999bfc65834b5d5aaa767ef041987b
diff --git a/dev-java/reflectasm/metadata.xml b/dev-java/reflectasm/metadata.xml
deleted file mode 100644
index 14fb3725ae1c..000000000000
--- a/dev-java/reflectasm/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">EsotericSoftware/reflectasm</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/reflectasm/reflectasm-1.11.0.ebuild b/dev-java/reflectasm/reflectasm-1.11.0.ebuild
deleted file mode 100644
index 2e3db628eff6..000000000000
--- a/dev-java/reflectasm/reflectasm-1.11.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High performance Java reflection"
-HOMEPAGE="https://github.com/EsotericSoftware/reflectasm/"
-SRC_URI="https://github.com/EsotericSoftware/${PN}/archive/${P}.zip"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-CDEPEND="dev-java/asm:4"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PN}-${P}"
-
-JAVA_GENTOO_CLASSPATH="
- asm-4
-"
-
-java_prepare() {
- java-pkg_clean
- rm -rf test || die
-}
diff --git a/dev-java/reflectasm/reflectasm-1.11.1.ebuild b/dev-java/reflectasm/reflectasm-1.11.1.ebuild
deleted file mode 100644
index 4826d55119bf..000000000000
--- a/dev-java/reflectasm/reflectasm-1.11.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="High performance Java reflection"
-HOMEPAGE="https://github.com/EsotericSoftware/reflectasm/"
-SRC_URI="https://github.com/EsotericSoftware/${PN}/archive/${P}.zip"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
-
-CDEPEND="dev-java/asm:4"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PN}-${P}"
-
-JAVA_GENTOO_CLASSPATH="
- asm-4
-"
-
-java_prepare() {
- java-pkg_clean
- rm -rf test || die
-}
diff --git a/dev-java/reflections/Manifest b/dev-java/reflections/Manifest
index 370bec9b0906..1fdd79541793 100644
--- a/dev-java/reflections/Manifest
+++ b/dev-java/reflections/Manifest
@@ -1 +1 @@
-DIST reflections-0.9.10-sources.jar 53049 BLAKE2B 23491098dc648206161d983148bf11a1c4523df0593c903f9dbf03672b481d85aabaed7733a5d829b7f334e51d53dadde3fd439e62f9873ceb11f49f40a2cfef SHA512 940b80ed43aa900177e6c3551980eafe10f7ea16a1e5c0d24fc8c1e29f1e0155aae83e24f60af10f9743449ed38d2d3b211f3668fafbd95a6a2cb9c5581f56bf
+DIST reflections-0.9.12.tar.gz 48235 BLAKE2B c82bd69f4433d8db738fcd32dd7fbf643984917622853b1886e15b906a91579de0193daf0fc1a9642c12d13de8236acf3e1f1409a18713b37c6e705a3cae34bd SHA512 8f8c7603ab73b599c6e2160f42b61c4e0eedef9981c06124bba0437d6636e7bf8a916784e266754562dc17f4d3ccf8df6c9ba707d1a7c38d97dc5eea9138064f
diff --git a/dev-java/reflections/metadata.xml b/dev-java/reflections/metadata.xml
index 48adac86596f..7b4f13b0e238 100644
--- a/dev-java/reflections/metadata.xml
+++ b/dev-java/reflections/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/reflections/reflections-0.9.10-r1.ebuild b/dev-java/reflections/reflections-0.9.10-r1.ebuild
deleted file mode 100644
index 4750a28d85da..000000000000
--- a/dev-java/reflections/reflections-0.9.10-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java runtime metadata analysis"
-HOMEPAGE="https://github.com/ronmamo/reflections"
-SRC_URI="http://search.maven.org/remotecontent?filepath=org/${PN}/${PN}/${PV}/${P}-sources.jar"
-LICENSE="WTFPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CP_DEPEND="dev-java/commons-vfs:2
- dev-java/dom4j:1
- dev-java/gson:2.6
- dev-java/guava:20
- dev-java/javassist:3
- dev-java/jsr305:0
- dev-java/slf4j-api:0
- dev-java/tomcat-servlet-api:3.1"
-
-RDEPEND=">=virtual/jre-1.7
- ${CP_DEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CP_DEPEND}
- app-arch/unzip"
diff --git a/dev-java/reflections/reflections-0.9.12-r6.ebuild b/dev-java/reflections/reflections-0.9.12-r6.ebuild
new file mode 100644
index 000000000000..630e94c431ca
--- /dev/null
+++ b/dev-java/reflections/reflections-0.9.12-r6.ebuild
@@ -0,0 +1,94 @@
+# 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/ronmamo/reflections/archive/0.9.12.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild reflections-0.9.12.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.reflections:reflections:0.9.12"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Reflections - a Java runtime metadata analysis"
+HOMEPAGE="https://github.com/ronmamo/reflections"
+SRC_URI="https://github.com/ronmamo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="WTFPL-2 BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# com.google.code.gson:gson:2.8.6 -> >=dev-java/gson-2.8.8:0
+# org.dom4j:dom4j:2.1.1 -> >=dev-java/dom4j-2.1.3:1
+# org.javassist:javassist:3.26.0-GA -> !!!suitable-mavenVersion-not-found!!!
+# org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
+# org.slf4j:slf4j-simple:1.7.24 -> >=dev-java/slf4j-simple-1.7.30:0
+
+CP_DEPEND="
+ dev-java/dom4j:1
+ dev-java/gson:0
+ dev-java/javassist:3
+ dev-java/slf4j-api:0
+ dev-java/slf4j-simple:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# javax.servlet:servlet-api:2.5 -> java-virtuals/servlet-api:2.5
+# POM: pom.xml
+# test? junit:junit:4.13 -> >=dev-java/junit-4.13.2:4
+
+DEPEND="
+ dev-java/javax-servlet-api:2.5
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/${P}"
+
+JAVA_CLASSPATH_EXTRA="javax-servlet-api-2.5"
+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=(
+ # Upstream does not run this test
+ "org.reflections.TestModel"
+ # 1) testMethodParameterNames(org.reflections.ReflectionsCollectTest)
+ # org.reflections.ReflectionsException: Scanner MethodParameterNamesScanner was not configured
+ # at org.reflections.Store.get(Store.java:39)
+ # at org.reflections.Store.get(Store.java:61)
+ # at org.reflections.Store.get(Store.java:46)
+ # at org.reflections.Reflections.getMethodParamNames(Reflections.java:579)
+ # at org.reflections.ReflectionsTest.testMethodParameterNames(ReflectionsTest.java:239)
+ org.reflections.ReflectionsCollectTest
+ # 2) testMethodParameterNames(org.reflections.ReflectionsParallelTest)
+ # org.reflections.ReflectionsException: Scanner MethodParameterNamesScanner was not configured
+ # at org.reflections.Store.get(Store.java:39)
+ # at org.reflections.Store.get(Store.java:61)
+ # at org.reflections.Store.get(Store.java:46)
+ # at org.reflections.Reflections.getMethodParamNames(Reflections.java:579)
+ # at org.reflections.ReflectionsTest.testMethodParameterNames(ReflectionsTest.java:239)
+ org.reflections.ReflectionsParallelTest
+ # 3) testMethodParameterNames(org.reflections.ReflectionsTest)
+ # org.reflections.ReflectionsException: Scanner MethodParameterNamesScanner was not configured
+ # at org.reflections.Store.get(Store.java:39)
+ # at org.reflections.Store.get(Store.java:61)
+ # at org.reflections.Store.get(Store.java:46)
+ # at org.reflections.Reflections.getMethodParamNames(Reflections.java:579)
+ # at org.reflections.ReflectionsTest.testMethodParameterNames(ReflectionsTest.java:239)
+ org.reflections.ReflectionsTest
+ #
+ # https://github.com/ronmamo/reflections/issues/277#issuecomment-927152981
+ # scanner was not configured exception - this is a known issue in 0.9.12, a simple workaround is to
+ # check if the getStore() contains index for the scanner before querying. next version 0.10 fixes this.
+)
diff --git a/dev-java/relaxng-datatype/Manifest b/dev-java/relaxng-datatype/Manifest
index 47651ee29a27..826bed701f04 100644
--- a/dev-java/relaxng-datatype/Manifest
+++ b/dev-java/relaxng-datatype/Manifest
@@ -1 +1 @@
-DIST relaxng-datatype-1.0.zip 74033 BLAKE2B 15b488e914cab28fb9ade71b491d961ffa4f683f66759e96cd53dcf69edd39d423b5562831698bb3e03191396c86a2a93369f14d278f3c55a90728031d1921d3 SHA512 712b99209e927e8929c46797cf3733993cc2740bfbafb458c518e5e130a7860a19dee45acd360a9d7179137f9340c3edeb514cacf501233cca515b38e60d6b79
+DIST relaxngDatatype-20020414-sources.jar 11666 BLAKE2B b2505d61dc36a12d7b31ad84db6813dbfac04aedd6805568103a310ee88586995cc98dbeecc38744bd767f8dd2ced5257400365aaab859b05676949abd187316 SHA512 6d3335d08b620a1b5d401871b1e92dbbea6b9d954e5c7eba1a4f535afe8c6ddf51a5f07db69805409525f4dfdbe34d13cc3392acd8e7e16b100f7e708cee0380
diff --git a/dev-java/relaxng-datatype/metadata.xml b/dev-java/relaxng-datatype/metadata.xml
index cf10968b6f59..7524e8b7db40 100644
--- a/dev-java/relaxng-datatype/metadata.xml
+++ b/dev-java/relaxng-datatype/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/relaxng-datatype/relaxng-datatype-1.0-r2.ebuild b/dev-java/relaxng-datatype/relaxng-datatype-1.0-r2.ebuild
deleted file mode 100644
index c7357a9ad076..000000000000
--- a/dev-java/relaxng-datatype/relaxng-datatype-1.0-r2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-MY_PN="relaxngDatatype"
-MY_P="${MY_PN}-${PV}"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Interface between RELAX NG validators and datatype libraries"
-HOMEPAGE="https://relaxng.org/"
-SRC_URI="mirror://sourceforge/relaxng/${MY_P}.zip -> ${P}.zip"
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-LICENSE="BSD"
-SLOT="0"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.7
-"
-RDEPEND=">=virtual/jre-1.7"
-
-DOCS=( README.txt )
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- einstalldocs
-}
diff --git a/dev-java/relaxng-datatype/relaxng-datatype-20020414.ebuild b/dev-java/relaxng-datatype/relaxng-datatype-20020414.ebuild
new file mode 100644
index 000000000000..9107e77e12b6
--- /dev/null
+++ b/dev-java/relaxng-datatype/relaxng-datatype-20020414.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="relaxngDatatype:relaxngDatatype:20020414"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Interface between RELAX NG validators and datatype libraries"
+HOMEPAGE="https://relaxng.org/"
+SRC_URI="https://repo1.maven.org/maven2/relaxngDatatype/relaxngDatatype/${PV}/relaxngDatatype-${PV}-sources.jar"
+
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+LICENSE="BSD"
+SLOT="0"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
diff --git a/dev-java/reload4j/Manifest b/dev-java/reload4j/Manifest
new file mode 100644
index 000000000000..20e9649701b7
--- /dev/null
+++ b/dev-java/reload4j/Manifest
@@ -0,0 +1 @@
+DIST reload4j-1.2.22.tar.gz 574985 BLAKE2B f3dc5c360665de8eacf49ab34e684becbe80882db3675045a2bd971f03c32352a958e0ca4d5b5c92d18835320409832dcc14fc49c6f67eef487dfb9ee2ff4dfe SHA512 542e935cf55c0008a2d49c20e8a30f072090999168f5bcc056e67e306e2ddf87bf864fbb1fe9c3e03f436e8dcc6a0f22135f82d9a33706282bd9f3caace0f1f5
diff --git a/dev-java/reload4j/metadata.xml b/dev-java/reload4j/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/reload4j/metadata.xml
@@ -0,0 +1,7 @@
+<?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/reload4j/reload4j-1.2.22.ebuild b/dev-java/reload4j/reload4j-1.2.22.ebuild
new file mode 100644
index 000000000000..d4ca0f965bc3
--- /dev/null
+++ b/dev-java/reload4j/reload4j-1.2.22.ebuild
@@ -0,0 +1,113 @@
+# 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/qos-ch/reload4j/archive/v_1.2.22.tar.gz --slot 0 --keywords "~amd64" --ebuild reload4j-1.2.22..ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="ch.qos.reload4j:reload4j:1.2.22"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Reload4j revives EOLed log4j 1.x"
+HOMEPAGE="https://reload4j.qos.ch"
+SRC_URI="https://github.com/qos-ch/reload4j/archive/v_${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# There are unresolved test failures
+RESTRICT="test"
+
+# Common dependencies
+# POM: pom.xml
+# javax.mail:mail:1.4.7 -> !!!groupId-not-found!!!
+# org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.0 -> !!!groupId-not-found!!!
+
+CP_DEPEND="
+ dev-java/javax-mail:0
+ dev-java/jboss-jms-api:1.1
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.h2database:h2:2.1.210 -> !!!groupId-not-found!!!
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( NOTICE {README,SECURITY}.md )
+
+S="${WORKDIR}/reload4j-v_${PV}"
+
+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"
+
+JAVA_TEST_EXCLUDES=(
+ #java.sql.SQLException: No suitable driver found for jdbc:h2:mem:test_db
+ # com.h2database:h2 is not packaged
+ org.apache.log4j.jdbc.JdbcAppenderTest
+ # No runnable methods
+ org.apache.log4j.TestConstants
+
+ # following tests prefer to fail if not run separately:
+ org.apache.log4j.MinimumTestCase
+ org.apache.log4j.net.SMTPAppenderTest
+ org.apache.log4j.net.SocketAppenderTest
+ org.apache.log4j.net.SocketServerTestCase
+ org.apache.log4j.net.SyslogAppenderTest
+ org.apache.log4j.net.TelnetAppenderTest
+ org.apache.log4j.varia.ERFATestCase
+ org.apache.log4j.varia.ErrorHandlerTestCase
+ org.apache.log4j.xml.CustomLevelTestCase
+ org.apache.log4j.xml.DOMTestCase
+)
+
+src_test() {
+ einfo "Running tests"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.MinimumTestCase"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.net.SMTPAppenderTest"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.net.SocketAppenderTest"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.net.SocketServerTestCase"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.net.SyslogAppenderTest"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.net.TelnetAppenderTest"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.varia.ERFATestCase"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.varia.ErrorHandlerTestCase"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.xml.CustomLevelTestCase"
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY="org.apache.log4j.xml.DOMTestCase"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/resin-servlet-api/Manifest b/dev-java/resin-servlet-api/Manifest
deleted file mode 100644
index b62391d74006..000000000000
--- a/dev-java/resin-servlet-api/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST resin-3.0.25-src.zip 10690692 BLAKE2B dde17819f958053bfe2e1ac0068db0a56c068185d676dce047769ffcd219036318e0f1adc0fee1757136aa4d5f8c75e112e286cb66d445bd30a283afe2c6ebba SHA512 f80f109b120cfbb484614c733cd10e0e057b7a704a7a00d2a6b83d95876558e4800ecc6d9fe3a3b8ddc32f9d556a51145edc3d08a8625937b8c06f413a335057
-DIST resin-4.0.27-src.zip 17990178 BLAKE2B 2da8c4bae7328f0a39fc7cc84c2d7a25408a8242150a9b324cc34a15e0342ed709b9e1db8773873d804d59b47f0c62945433d211fe06ded03db1aad39c46a6d6 SHA512 ce1d7eb19ab722c2942d82b6ce80ddd193907d6062df361501d28adbbe57e6b7a2effc734e7820bc73d7743b2546799bc6badbcc2187c7da75cab0b9294b8a53
-DIST resin-4.0.46-src.zip 40400255 BLAKE2B e31505ba82a8e87ea0b28634b3055c3a01d6629483c2d5ab6af4b428c9cb5d7803b7ed7de58181222bae669412c239458c43be35f23922f3414ce7ac0173ee56 SHA512 49f468706a3269f851a6b359d6020b01dadb312890c97208b1a66353fb82b2d95625947a472d8d3e535d0c52ec6ad3e110eb4d227014fe7a89f313ae1df6970f
-DIST resin-gentoo-patches-3.0.25.tar.bz2 4781 BLAKE2B df087e05a80442c44969ccd20099ad5ff5d1e6ab92886255cfa262bcce73043f07b01109e84e224dd991c43730d6c0795bf63bde3b8aaa5fa6dbf749dfbb78f5 SHA512 23ce290e97f18248e08e0b3b7ccf37f60a4b0bf2c3aa28d856384295a286b3eeb9636e299e0620c2c858f8e523806707fe1d4531070ee7ffb4037ad483e6d035
diff --git a/dev-java/resin-servlet-api/metadata.xml b/dev-java/resin-servlet-api/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/resin-servlet-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/resin-servlet-api/resin-servlet-api-3.0.25-r1.ebuild b/dev-java/resin-servlet-api/resin-servlet-api-3.0.25-r1.ebuild
deleted file mode 100644
index aacd27267893..000000000000
--- a/dev-java/resin-servlet-api/resin-servlet-api-3.0.25-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Resin Servlet API 2.4/JSP API 2.0 implementation"
-HOMEPAGE="http://www.caucho.com/"
-SRC_URI="http://www.caucho.com/download/resin-${PV}-src.zip
- mirror://gentoo/resin-gentoo-patches-${PV}.tar.bz2"
-
-LICENSE="GPL-2+"
-SLOT="2.4"
-KEYWORDS="amd64 ppc64 x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
-
-S="${WORKDIR}/resin-${PV}"
-
-EANT_BUILD_TARGET="jsdk"
-EANT_DOC_TARGET=""
-
-PATCHES=(
- "${WORKDIR}/${PV}/resin-${PV}-build.xml.patch"
-)
-
-src_prepare() {
- default
- mkdir lib || die
-}
-
-src_install() {
- java-pkg_newjar "lib/jsdk-24.jar"
- use source && java-pkg_dosrc "${S}"/modules/jsdk/src/*
-}
diff --git a/dev-java/resin-servlet-api/resin-servlet-api-4.0.27.ebuild b/dev-java/resin-servlet-api/resin-servlet-api-4.0.27.ebuild
deleted file mode 100644
index 62503ad641b1..000000000000
--- a/dev-java/resin-servlet-api/resin-servlet-api-4.0.27.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Resin Servlet API 3.0/JSP API 2.1 implementation"
-HOMEPAGE="http://www.caucho.com/"
-SRC_URI="http://www.caucho.com/download/resin-${PV}-src.zip"
-
-LICENSE="GPL-2"
-SLOT="3.0"
-KEYWORDS="amd64 ppc64 x86"
-
-IUSE=""
-
-COMMON_DEP=""
-
-RDEPEND=">=virtual/jre-1.6
- ${COMMON_DEP}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${COMMON_DEP}"
-
-S="${WORKDIR}/resin-${PV}"
-
-java_prepare() {
- cd "${S}"
- rm -f modules/ext/*.jar project-jars/*.jar webapp-jars/*.jar
- java-ant_bsfix_files build-common.xml || die
-}
-
-EANT_BUILD_TARGET="servlet16"
-EANT_DOC_TARGET=""
-
-src_install() {
- java-pkg_newjar "modules/servlet16/dist/servlet-16.jar"
- use source && java-pkg_dosrc "${S}"/modules/servlet16/src/*
-
- dosym "${PN}.jar" "/usr/share/${PN}-${SLOT}/lib/servlet-api.jar"
- java-pkg_regjar "${D}/usr/share/${PN}-${SLOT}/lib/servlet-api.jar"
- dosym "${PN}.jar" "/usr/share/${PN}-${SLOT}/lib/jsp-api.jar"
- java-pkg_regjar "${D}/usr/share/${PN}-${SLOT}/lib/jsp-api.jar"
-}
diff --git a/dev-java/resin-servlet-api/resin-servlet-api-4.0.46.ebuild b/dev-java/resin-servlet-api/resin-servlet-api-4.0.46.ebuild
deleted file mode 100644
index 0263bbaf7018..000000000000
--- a/dev-java/resin-servlet-api/resin-servlet-api-4.0.46.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Resin Servlet API 3.0/JSP API 2.1 implementation"
-HOMEPAGE="http://www.caucho.com/"
-SRC_URI="http://www.caucho.com/download/resin-${PV}-src.zip"
-
-LICENSE="GPL-2"
-SLOT="3.1"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-IUSE=""
-
-COMMON_DEP=""
-
-RDEPEND=">=virtual/jre-1.6
- ${COMMON_DEP}"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${COMMON_DEP}"
-
-S="${WORKDIR}/resin-${PV}"
-
-java_prepare() {
- cd "${S}"
- rm -f modules/ext/*.jar project-jars/*.jar webapp-jars/*.jar
- java-ant_bsfix_files build-common.xml || die
-}
-
-EANT_BUILD_TARGET="servlet16"
-EANT_DOC_TARGET=""
-
-src_install() {
- java-pkg_newjar "modules/servlet16/dist/servlet-16.jar"
- use source && java-pkg_dosrc "${S}"/modules/servlet16/src/*
-
- dosym "${PN}.jar" "/usr/share/${PN}-${SLOT}/lib/servlet-api.jar"
- java-pkg_regjar "${D}/usr/share/${PN}-${SLOT}/lib/servlet-api.jar"
- dosym "${PN}.jar" "/usr/share/${PN}-${SLOT}/lib/jsp-api.jar"
- java-pkg_regjar "${D}/usr/share/${PN}-${SLOT}/lib/jsp-api.jar"
-}
diff --git a/dev-java/rhino/Manifest b/dev-java/rhino/Manifest
index c66f7621da10..df2bb4acf7d4 100644
--- a/dev-java/rhino/Manifest
+++ b/dev-java/rhino/Manifest
@@ -1 +1 @@
-DIST Rhino1_7_7_RELEASE.zip 6059127 BLAKE2B 431885bf287da524cfc82e6594802c93e75d48177b4056e9b893d7c852c3c3b30291d616a140981e520fdebacf5cbc8b802a6137f0e29a369f1d01cc771c6b77 SHA512 ce89b6a153d62dd459a86360c67d6db4b05922d8ab49a8d45ccb0deb0f639cd819f0ad75cb4929eda6b7f0fd6ddb5879a4035de6968283317bfd0e93d2bb744e
+DIST rhino-1.7.14.tar.gz 4694660 BLAKE2B d6ba958265c4ebf881161d0b61f598ac7e82d7be4e6b0fbd6416e7b0af7835058a2744ab5524b6ff698159898e962cc246ac559e9c5db1b4467b147700e894e0 SHA512 f20e8a8f7c78c88d815c53f89f3f18a53c2e86d92a284cd275aa5556c08962d2905f2d4fc829e5cb61d416cd55b13323d9a110f4f492f588a149b4d2105b21a1
diff --git a/dev-java/rhino/files/rhino-1.7.7-testsrc-build.xml.patch b/dev-java/rhino/files/rhino-1.7.7-testsrc-build.xml.patch
deleted file mode 100644
index 4760e980245d..000000000000
--- a/dev-java/rhino/files/rhino-1.7.7-testsrc-build.xml.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- testsrc/build.xml.orig 2015-08-05 23:41:56.815000000 +0000
-+++ testsrc/build.xml 2015-08-05 23:46:10.026000000 +0000
-@@ -46,15 +46,8 @@
- -->
- <property name="test.vm.mx" value="256m" />
-
-- <target name="get-junit" unless="offline">
-- <mkdir dir="lib"/>
-- <get src="${test.junit.url}" dest="lib/junit.jar" usetimestamp="true"/>
-- <get src="${test.hamcrest.url}" dest="lib/hamcrest.jar" usetimestamp="true"/>
-- </target>
--
- <target name="junit-compile">
- <mkdir dir="${test.classes}" />
-- <antcall target="get-junit"/>
- <javac
- destdir="${test.classes}" debug="true"
- encoding="UTF-8"
-@@ -75,7 +68,6 @@
-
- <target name="compile">
- <mkdir dir="${test.classes}" />
-- <antcall target="get-junit"/>
- <javac
- srcdir="testsrc"
- destdir="${test.classes}" debug="true"
-@@ -105,12 +97,7 @@
- <delete dir="${test.classes}" />
- </target>
-
-- <target name="get-emma" unless="offline">
-- <get src="${test.emma.url}" dest="lib/emma.jar" usetimestamp="true"/>
-- <get src="${test.emma_ant.url}" dest="lib/emma_ant.jar" usetimestamp="true"/>
-- </target>
--
-- <target name="coverage-instrument" depends="get-emma">
-+ <target name="coverage-instrument">
- <property name="coverage.dir" location="${build.dir}/coverage"/>
- <property name="coverage.classes.dir" location="${build.dir}/coverage/classes"/>
- <mkdir dir="${coverage.classes.dir}"/>
diff --git a/dev-java/rhino/metadata.xml b/dev-java/rhino/metadata.xml
index d039e67cf9e1..8ba5d74b80e6 100644
--- a/dev-java/rhino/metadata.xml
+++ b/dev-java/rhino/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -12,5 +12,7 @@
</longdescription>
<upstream>
<remote-id type="github">mozilla/rhino</remote-id>
+ <changelog>https://github.com/mozilla/rhino/blob/master/RELEASE-NOTES.md</changelog>
+ <bugs-to>https://github.com/mozilla/rhino/issues</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/rhino/rhino-1.7.14-r1.ebuild b/dev-java/rhino/rhino-1.7.14-r1.ebuild
new file mode 100644
index 000000000000..8676a8e192ab
--- /dev/null
+++ b/dev-java/rhino/rhino-1.7.14-r1.ebuild
@@ -0,0 +1,113 @@
+# 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.mozilla:rhino:1.7.14"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An open-source implementation of JavaScript written in Java"
+HOMEPAGE="https://github.com/mozilla/rhino"
+SRC_URI="https://github.com/mozilla/rhino/archive/Rhino${PV//./_}_Release.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MPL-1.1 GPL-2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+SLOT="1.6"
+
+# There are too many test failures:
+# FAILURES!!!
+# Tests run: 10504, Failures: 613
+# With openjdk-11 tests even fail to compile:
+# ./testsrc/tests/src/com/netscape/javascript/qa/liveconnect/LiveConnectTest.java:104: error: cannot find symbol
+# global = JSObject.getWindow( this );
+# ^
+# symbol: method getWindow(LiveConnectTest)
+# location: class JSObject
+RESTRICT="test"
+
+DEPEND=">=virtual/jdk-1.8:*
+ test? (
+ >=dev-java/ant-1.10.14-r3:0[junit]
+ dev-java/emma:0
+ dev-java/jakarta-xml-soap-api:1
+ dev-java/jmh-core:0
+ dev-java/hamcrest-core:1.3
+ dev-java/snakeyaml:0
+ )
+ ${CDEPEND}"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CDEPEND}"
+
+DOCS=( {CODE_OF_CONDUCT,README,RELEASE-NOTES,RELEASE-STEPS}.md {NOTICE-tools,NOTICE}.txt )
+
+S="${WORKDIR}/rhino-Rhino${PV//./_}_Release"
+
+JAVA_SRC_DIR=( "src" "toolsrc" "xmlimplsrc" )
+JAVA_RESOURCE_DIRS="res"
+JAVA_MAIN_CLASS="org.mozilla.javascript.tools.shell.Main"
+
+JAVA_TEST_GENTOO_CLASSPATH="ant,emma,hamcrest-core-1.3,jakarta-xml-soap-api-1,jmh-core,junit-4,snakeyaml"
+JAVA_TEST_SRC_DIRS="testsrc"
+JAVA_TEST_RESOURCE_DIRS="testres"
+
+# https://github.com/mozilla/rhino/blob/Rhino1_7_14_Release/build.gradle#L81-L87
+JAVA_TEST_EXTRA_ARGS=(
+ -Djava.awt.headless=true
+ -Dmozilla.js.tests=testsrc/tests
+ -Dmozilla.js.tests.timeout=60000
+ -Duser.language=en
+ -Duser.country=US
+ -Duser.timezone=America/Los_Angeles
+ -Dfile.encoding=UTF-8
+)
+
+src_prepare() {
+ default
+ java-pkg_clean
+
+ mkdir -p res/org/mozilla/javascript/tools/{resources,debugger} || die
+
+ cp -r "src/org" "res" || die
+ find "res" -type f -name '*.java' -exec rm -rf {} + || die
+
+ cp {toolsrc,res}/org/mozilla/javascript/tools/resources/Messages.properties || die
+ cp {toolsrc,res}/org/mozilla/javascript/tools/debugger/test.js || die
+
+ mv {src,testsrc}/org/mozilla/javascript/engine || die
+ cp -r "testsrc" "testres" || die
+ find "testres" -type f -name '*.java' -exec rm -rf {} + || die
+
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/LiveConnectDrv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/LiveConnectEnv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/LiveNavDrv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/LiveNavEnv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/MacRefEnv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/NavDrv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/NavEnv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/ObservedTask.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/RefDrv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/RefEnv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/RhinoDrv.java || die
+ rm testsrc/tests/src/com/netscape/javascript/qa/drivers/RhinoEnv.java || die
+}
+
+src_test() {
+ # https://github.com/mozilla/rhino/blob/Rhino1_7_14_Release/build.gradle#L71-L77
+ rm -r testsrc/benchmarks || die
+
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -gt "1.8" ; then
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.desktop/javax.swing.table=ALL-UNNAMED )
+ fi
+
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/rhino/rhino-1.7.7-r1.ebuild b/dev-java/rhino/rhino-1.7.7-r1.ebuild
deleted file mode 100644
index 0ed1121c184c..000000000000
--- a/dev-java/rhino/rhino-1.7.7-r1.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc examples source test"
-inherit java-pkg-2 java-ant-2 versionator
-
-# rhino -> Rhino
-MY_PN="${PN^}"
-
-# 1.7.7 -> 1_7_7
-MY_PV="$(replace_all_version_separators _ ${PV})"
-
-# rhino1.7.7
-MY_P="${PN}${PV}"
-
-# Rhino1_7_7_RELEASE
-MY_RELEASE="${MY_PN}${MY_PV}_RELEASE"
-
-DESCRIPTION="An open-source implementation of JavaScript written in Java"
-SRC_URI="https://github.com/mozilla/${PN}/archive/${MY_RELEASE}.zip"
-HOMEPAGE="http://www.mozilla.org/rhino/"
-
-LICENSE="MPL-1.1 GPL-2"
-SLOT="1.6"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-IUSE=""
-
-# ../rhino-Rhino1_7_7_RELEASE
-S="${WORKDIR}/${PN}-${MY_RELEASE}"
-
-CDEPEND=""
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/emma:0
- dev-java/junit:4
- dev-java/ant-junit:0
- dev-java/hamcrest-core:1.3
- )
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-PATCHES=(
- "${FILESDIR}"/${P}-testsrc-build.xml.patch
-)
-
-EANT_TEST_TARGET="junit"
-
-# StackOverFlow errors arise on some tests.
-# Further, the test suite takes way too much time (> 5 min).
-# Maybe reduce the numbers of tests?
-RESTRICT="test"
-
-java_prepare() {
- java-pkg_clean
-
- epatch "${PATCHES[@]}"
-
- if use test; then
- mkdir lib || die
- java-pkg_jar-from --build-only emma emma.jar lib/emma.jar
- java-pkg_jar-from --build-only emma emma_ant.jar lib/emma_ant.jar
- java-pkg_jar-from --build-only hamcrest-core-1.3 hamcrest-core.jar lib/hamcrest.jar
- java-pkg_jar-from --build-only junit-4 junit.jar lib/junit.jar
- fi
-}
-
-src_compile() {
- java-pkg-2_src_compile
-
- if use source; then
- EANT_BUILD_TARGET="source-zip" \
- java-pkg-2_src_compile
- fi
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar build/${MY_P}/js.jar
-
- java-pkg_dolauncher jsscript-${SLOT} \
- --main org.mozilla.javascript.tools.shell.Main
-
- use doc && java-pkg_dojavadoc "build/${MY_P}/javadoc"
- use examples && java-pkg_doexamples examples
- use source && java-pkg_dosrc {src,toolsrc,xmlimplsrc}/org
-}
diff --git a/dev-java/rngom/Manifest b/dev-java/rngom/Manifest
deleted file mode 100644
index 1ba0b4236c43..000000000000
--- a/dev-java/rngom/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rngom-20100718.jar 196334 BLAKE2B 4c5c8087f60fd6a2b264af1e4c153ec5f6aefdd7e75b44d8d02ca1f516691bcd4274044b73ce438cb1df63928d0951fb23752e9bb4af61cdb22845fa56329051 SHA512 af634a3b30b726c9567bb2108dc9c041a60e2de4b395bf1efcca43060d22927896d10bf69b852a3e70b331659803f4dba074392f4be7de6cbdbc210ce90e25cb
diff --git a/dev-java/rngom/metadata.xml b/dev-java/rngom/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/rngom/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/rngom/rngom-20100718-r1.ebuild b/dev-java/rngom/rngom-20100718-r1.ebuild
deleted file mode 100644
index 3906f553ff8a..000000000000
--- a/dev-java/rngom/rngom-20100718-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="RNGOM is an open-source Java library for parsing RELAX NG grammars"
-HOMEPAGE="https://rngom.dev.java.net/"
-SRC_URI="https://repo1.maven.org/maven2/org/kohsuke/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-CDEPEND="
- dev-java/xsdlib:0
- dev-java/relaxng-datatype:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="
- xsdlib
- relaxng-datatype
-"
-
-JAVA_RM_FILES=(
- Token.java
- TokenMgrError.java
- ParseException.java
- UCode_UCodeESC_CharStream.java
- org/kohsuke/rngom/parse/compact/CompactSyntax.java
- org/kohsuke/rngom/parse/compact/EOFException.java
- org/kohsuke/rngom/parse/compact/JavaCharStream.java
- org/kohsuke/rngom/parse/compact/CompactParseable.java
- org/kohsuke/rngom/parse/compact/EscapeSyntaxException.java
- org/kohsuke/rngom/parse/compact/CompactSyntaxConstants.java
- org/kohsuke/rngom/parse/compact/CompactSyntaxTokenManager.java
-)
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" . -name "*.properties"
-}
diff --git a/dev-java/rome/files/rome-0.9-build.xml-test-upstream.patch b/dev-java/rome/files/rome-0.9-build.xml-test-upstream.patch
deleted file mode 100644
index 95e53f4f7f73..000000000000
--- a/dev-java/rome/files/rome-0.9-build.xml-test-upstream.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-===================================================================
-RCS file: /opt/sourcecast/data/ccvs/repository/rome/build.xml,v
-retrieving revision 1.14
-retrieving revision 1.15
-diff -u -r1.14 -r1.15
---- rome/build.xml 2006/12/04 21:47:37 1.14
-+++ rome/build.xml 2006/12/26 14:35:46 1.15
-@@ -131,6 +131,9 @@
- <fileset dir="src/data">
- <include name="**/*.xml" />
- </fileset>
-+ <fileset dir="src/test">
-+ <include name="**/*.properties" />
-+ </fileset>
- </copy>
- </target>
-
diff --git a/dev-java/rome/metadata.xml b/dev-java/rome/metadata.xml
index 33a02ea0f34d..2b16361c3e20 100644
--- a/dev-java/rome/metadata.xml
+++ b/dev-java/rome/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
-</maintainer>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rometools/rome</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/rome/rome-0.9-r3.ebuild b/dev-java/rome/rome-0.9-r3.ebuild
deleted file mode 100644
index 15f76e221046..000000000000
--- a/dev-java/rome/rome-0.9-r3.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java framework for RSS and Atom feeds"
-HOMEPAGE="https://rometools.github.io/rome/"
-SRC_URI="mirror://gentoo/${P}.zip"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/jdom:0"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6
- test? ( dev-java/ant-junit:0 )"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-EANT_GENTOO_CLASSPATH="jdom"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-JAVA_ANT_ENCODING="ISO-8859-1"
-
-java_prepare() {
- # Patch build.xml so the tests pass
- epatch "${FILESDIR}/${P}-build.xml-test-upstream.patch"
-
- # Keep Ant happy.
- mkdir -p target/lib || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
- use doc && java-pkg_dojavadoc dist/docs/api
- use source && java-pkg_dosrc src/java/*
-}
diff --git a/dev-java/rome/rome-0.9-r4.ebuild b/dev-java/rome/rome-0.9-r4.ebuild
new file mode 100644
index 000000000000..58f961d200e5
--- /dev/null
+++ b/dev-java/rome/rome-0.9-r4.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2022 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="Java framework for RSS and Atom feeds"
+HOMEPAGE="https://rometools.github.io/rome/"
+SRC_URI="mirror://gentoo/${P}.zip"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+CP_DEPEND="dev-java/jdom:0"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+JAVA_ENCODING="ISO-8859-1"
+JAVA_SRC_DIR="src/java"
+JAVA_RESOURCE_DIRS="res/java"
+
+JAVA_TEST_SRC_DIRS="src/test"
+JAVA_TEST_RESOURCE_DIRS="src/data"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+
+JAVA_TEST_EXCLUDES=(
+ # 1) testParse(com.sun.syndication.unittest.TestDateParser)
+ # junit.framework.AssertionFailedError
+ com.sun.syndication.unittest.TestDateParser
+ # 2) warning(junit.framework.TestSuite$1)
+ # junit.framework.AssertionFailedError: Class com.sun.syndication.unittest.FeedOpsTest has no public constructor TestCase(String name) or TestCase()
+ # at junit.framework.Assert.fail(Assert.java:57)
+ com.sun.syndication.unittest.FeedOpsTest
+ # 3) warning(junit.framework.TestSuite$1)
+ # junit.framework.AssertionFailedError: Class com.sun.syndication.unittest.FeedTest has no public constructor TestCase(String name) or TestCase()
+ # at junit.framework.Assert.fail(Assert.java:57)
+ com.sun.syndication.unittest.FeedTest
+ # 4) warning(junit.framework.TestSuite$1)
+ # junit.framework.AssertionFailedError: Class com.sun.syndication.unittest.SyndFeedTest has no public constructor TestCase(String name) or TestCase()
+ # at junit.framework.Assert.fail(Assert.java:57)
+ com.sun.syndication.unittest.SyndFeedTest
+)
+
+S="${WORKDIR}/${P}"
+
+src_prepare() {
+ default
+ mkdir -p res/java/com/sun/syndication || die
+ cp {src,res}/java/com/sun/syndication/rome.properties || die
+
+ sed -e 's:\(public \)\(Module\):\1com.sun.syndication.feed.module.\2:' \
+ -e 's:\(,\)\(Module\):\1com.sun.syndication.feed.module.\2:' \
+ -i src/java/com/sun/syndication/feed/synd/Synd{Feed,Entry}Impl.java || die
+}
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/rundoc/Manifest b/dev-java/rundoc/Manifest
deleted file mode 100644
index eab3094a9653..000000000000
--- a/dev-java/rundoc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rundoc-0.11.zip 47013 BLAKE2B 1e4a9c90c71f2768c5f189bae947e5fa01cdb8141de94f529ef3837aad7642383603c015fcd54a0eff85e1509f8cdde3d1b0330993175f9834b6ff4341c2a758 SHA512 d16aef5455ac2c6bbae16e4a12df798eca88e9c15225af8dc28edfa0b88b73ca6119ca22c6c4319665fef1203b986f1401029318fb094fe30fe985497fb1c269
diff --git a/dev-java/rundoc/metadata.xml b/dev-java/rundoc/metadata.xml
deleted file mode 100644
index 91b30fd43cdf..000000000000
--- a/dev-java/rundoc/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-
- <longdescription lang="en">
- rundoc is an Ant task designed to help with the single-sourcing of
- program documentation. This task replaces special commands embedded
- within text files with their output in a specified format. Currently,
- only docbook format is supported.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/rundoc/rundoc-0.11-r1.ebuild b/dev-java/rundoc/rundoc-0.11-r1.ebuild
deleted file mode 100644
index 84d3a8aaabe3..000000000000
--- a/dev-java/rundoc/rundoc-0.11-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="an Apache ANT optional task that extracts snippets of code from text files"
-HOMEPAGE="http://www.martiansoftware.com/lab/snip.html"
-SRC_URI="http://www.martiansoftware.com/lab/${PN}/${P}-src.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/rxtx/files/rxtx-2.1-7r2-ppcioh.diff b/dev-java/rxtx/files/rxtx-2.1-7r2-ppcioh.diff
new file mode 100644
index 000000000000..2f3f5d623ca9
--- /dev/null
+++ b/dev-java/rxtx/files/rxtx-2.1-7r2-ppcioh.diff
@@ -0,0 +1,16 @@
+diff --git a/src/RawImp.c b/src/RawImp.c
+index 077f30e..813fcf9 100644
+--- a/src/RawImp.c
++++ b/src/RawImp.c
+@@ -99,10 +99,8 @@
+ # include <linux/serial.h>
+ # include <linux/version.h>
+ #endif
+-#ifndef __APPLE__ /* dima */
+-#ifndef PPC
++#if !defined(__APPLE__) && !defined(PPC) && !defined(__powerpc__) && !defined(__powerpc64__) /* dima */
+ #include <sys/io.h>
+-#endif /* PPC */
+ #endif /* dima */
+
+ extern int errno;
diff --git a/dev-java/rxtx/files/rxtx-2.1-7r2-ttyPZ.diff b/dev-java/rxtx/files/rxtx-2.1-7r2-ttyPZ.diff
new file mode 100644
index 000000000000..b8fa3edf5016
--- /dev/null
+++ b/dev-java/rxtx/files/rxtx-2.1-7r2-ttyPZ.diff
@@ -0,0 +1,20 @@
+diff --git a/src/gnu/io/RXTXCommDriver.java b/src/gnu/io/RXTXCommDriver.java
+index 3dce198..954b102 100644
+--- a/src/gnu/io/RXTXCommDriver.java
++++ b/src/gnu/io/RXTXCommDriver.java
+@@ -576,6 +576,7 @@ public class RXTXCommDriver implements CommDriver
+ String[] Temp = {
+ "ttyS", // linux Serial Ports
+ "ttySA", // for the IPAQs
++ "ttyPZ", // for G4/G5 RackMac
+ "ttyUSB", // for USB frobs
+ "rfcomm", // bluetooth serial device
+ "ttyircomm", // linux IrCommdevices (IrDA serial emu)
+@@ -608,6 +609,7 @@ public class RXTXCommDriver implements CommDriver
+ // linux ISI serial card
+ "ttyMX",// linux Moxa Smart IO cards
+ "ttyP", // linux Hayes ESP serial card
++ "ttyPZ", // linux PPC/PPC64 Zilog serial ports
+ "ttyR", // linux comtrol cards
+ // linux Specialix RIO serial card
+ "ttyS", // linux Serial Ports
diff --git a/dev-java/rxtx/files/rxtx-2.2_pre2-fix-for-java-10+.patch b/dev-java/rxtx/files/rxtx-2.2_pre2-fix-for-java-10+.patch
new file mode 100644
index 000000000000..366bb78c2cba
--- /dev/null
+++ b/dev-java/rxtx/files/rxtx-2.2_pre2-fix-for-java-10+.patch
@@ -0,0 +1,50 @@
+Debian patch for fixing build issues on JDK 10 and above.
+In particular, 'javah' needs to replaced by 'javac -h' since 'javah'
+has been removed due to JEP 313 (https://openjdk.java.net/jeps/313).
+
+To support Javadoc generation with JDK 17 and above, the '-source 1.8'
+option must be included in the arguments to 'javadoc'. Otherwise, the
+following error would be raised:
+
+ src/gnu/io/LPRPort.java:373: error: invalid use of a restricted identifier 'yield'
+ yield();
+ ^
+ (to invoke a method called yield, qualify the yield with a receiver or type name)
+
+The original patch can be found at:
+https://salsa.debian.org/java-team/rxtx/-/blob/6500bd55f265de7d2dfef68dc1df5d8b990f66c3/debian/patches/java10-compatibility.patch
+
+Bug: https://bugs.gentoo.org/831394
+
+---
+Description: Fixes the build failure with Java 10
+Author: Emmanuel Bourg <ebourg@apache.org>
+Forwarded: no
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -111,11 +111,6 @@
+ $(CLASSES): $(javafiles) $(TOP)/Makefile
+ $(JAVAH_FIX)
+ $(JAVAC) $(javafiles)
+- $(JAVAH) `(for i in $(javahfiles);do \
+- if grep > /dev/null native.*\( $(SPATH)/gnu/io/$$i.java; then \
+- echo $(CLASSDIR).$$i; \
+- fi; \
+- done)`
+ $(JAR) cf $(JARTARGET) $(CLASSTOP)/*
+
+ # install librxtxSerial.so into the proper directory and copy $(JARTARGET) to its
+--- a/configure.in
++++ b/configure.in
+@@ -485,9 +485,9 @@
+ *)
+ find_java_native_include jni_md.h
+ JAVAH="\$(JPATH)/bin/javah -classpath \$(CLASSPATH) -d \$(DEST) -jni"
+- JAVAC="\$(JPATH)/bin/javac -classpath \$(CLASSPATH) -d \$(TOP)/ -O -source 1.8 -target 1.8"
++ JAVAC="\$(JPATH)/bin/javac -classpath \$(CLASSPATH) -d \$(TOP)/ -O -source 1.8 -target 1.8 -h \$(DEST)"
+ JAR="\$(JPATH)/bin/jar"
+- JAVADOC="\$(JPATH)/bin/javadoc"
++ JAVADOC="\$(JPATH)/bin/javadoc -source 1.8"
+ CFLAGS=$CFLAGS" -D_BSD_SOURCE"
+ ;;
+ esac
diff --git a/dev-java/rxtx/files/rxtx-2.2_pre2-fix-invalid-javadoc.patch b/dev-java/rxtx/files/rxtx-2.2_pre2-fix-invalid-javadoc.patch
new file mode 100644
index 000000000000..a00ed96f7e5a
--- /dev/null
+++ b/dev-java/rxtx/files/rxtx-2.2_pre2-fix-invalid-javadoc.patch
@@ -0,0 +1,229 @@
+From 4c47d6d133f727a9615987d582fa143e4a17cd01 Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Sun, 20 Feb 2022 08:17:59 -0800
+Subject: [PATCH] Fix invalid Javadoc syntax that leads to errors
+
+Bug: https://bugs.gentoo.org/642030
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ src/gnu/io/RXTXPort.java | 50 ++++++++++++++++++++++------------------
+ 1 file changed, 27 insertions(+), 23 deletions(-)
+
+diff --git a/src/gnu/io/RXTXPort.java b/src/gnu/io/RXTXPort.java
+index 622a6a8..77a23ea 100644
+--- a/src/gnu/io/RXTXPort.java
++++ b/src/gnu/io/RXTXPort.java
+@@ -1732,7 +1732,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port the name of the port thats been preopened
+ * @return BaudRate on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ * This will not behave as expected with custom speeds
+ *
+ */
+@@ -1751,7 +1751,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port the name of the port thats been preopened
+ * @return DataBits on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+ public static int staticGetDataBits( String port )
+@@ -1770,7 +1770,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port the name of the port thats been preopened
+ * @return Parity on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+ public static int staticGetParity( String port )
+@@ -1789,7 +1789,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port the name of the port thats been preopened
+ * @return StopBits on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+ public static int staticGetStopBits( String port )
+@@ -1839,7 +1839,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * the port a second time later on.
+ *
+ * @return true on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1862,7 +1862,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * the port a second time later on.
+ *
+ * @return true on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1885,7 +1885,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * the port a second time later on.
+ *
+ * @return none
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1907,7 +1907,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port
+ * @return true if asserted
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1927,7 +1927,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port
+ * @return true if asserted
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1947,7 +1947,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port
+ * @return true if asserted
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1967,7 +1967,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port
+ * @return true if asserted
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -1987,7 +1987,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port
+ * @return true if asserted
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -2007,7 +2007,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ *
+ * @param port
+ * @return true if asserted
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ */
+
+@@ -2025,7 +2025,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * This is an extension to CommAPI. It may not be supported on
+ * all operating systems.
+ * @return int the Parity Error Character
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ * Anyone know how to do this in Unix?
+ */
+@@ -2049,7 +2049,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * all operating systems.
+ * @param b Parity Error Character
+ * @return boolean true on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ * Anyone know how to do this in Unix?
+ */
+@@ -2067,7 +2067,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * This is an extension to CommAPI. It may not be supported on
+ * all operating systems.
+ * @return int the End of Input Character
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ *
+ * Anyone know how to do this in Unix?
+ */
+@@ -2091,7 +2091,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * all operating systems.
+ * @param b End Of Input Character
+ * @return boolean true on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ */
+
+ public boolean setEndOfInputChar( byte b )
+@@ -2111,7 +2111,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * or "16750".
+ * @param test boolean flag to determin if the UART should be tested.
+ * @return boolean true on success
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ */
+ public boolean setUARTType(String type, boolean test)
+ throws UnsupportedCommOperationException
+@@ -2127,7 +2127,7 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * @return type String representation of the UART type which mayb
+ * be "none", "8250", "16450", "16550", "16550A", "16650", "16550V2"
+ * or "16750".
+- * @throws UnsupportedCommOperationException;
++ * @throws UnsupportedCommOperationException
+ */
+ public String getUARTType() throws UnsupportedCommOperationException
+ {
+@@ -2140,7 +2140,8 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * @param BaudBase The clock frequency divided by 16. Default
+ * BaudBase is 115200.
+ * @return true on success
+- * @throws UnsupportedCommOperationException, IOException
++ * @throws UnsupportedCommOperationException
++ * @throws IOException
+ */
+
+ public boolean setBaudBase(int BaudBase)
+@@ -2155,7 +2156,8 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ /**
+ * Extension to CommAPI
+ * @return BaudBase
+- * @throws UnsupportedCommOperationException, IOException
++ * @throws UnsupportedCommOperationException
++ * @throws IOException
+ */
+
+ public int getBaudBase() throws UnsupportedCommOperationException,
+@@ -2170,7 +2172,8 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ * Extension to CommAPI. Set Baud Base to 38600 on Linux and W32
+ * before using.
+ * @param Divisor
+- * @throws UnsupportedCommOperationException, IOException
++ * @throws UnsupportedCommOperationException
++ * @throws IOException
+ */
+
+ public boolean setDivisor(int Divisor)
+@@ -2184,7 +2187,8 @@ Documentation is at http://java.sun.com/products/jdk/1.2/docs/api/java/io/InputS
+ /**
+ * Extension to CommAPI
+ * @return Divisor;
+- * @throws UnsupportedCommOperationException, IOException
++ * @throws UnsupportedCommOperationException
++ * @throws IOException
+ */
+
+ public int getDivisor() throws UnsupportedCommOperationException,
+--
+2.34.1
+
diff --git a/dev-java/rxtx/files/rxtx-2.2_pre2-format-security.patch b/dev-java/rxtx/files/rxtx-2.2_pre2-format-security.patch
new file mode 100644
index 000000000000..1337cce3c546
--- /dev/null
+++ b/dev-java/rxtx/files/rxtx-2.2_pre2-format-security.patch
@@ -0,0 +1,118 @@
+Debian patch for fixing errors emitted due to -Werror=format-security.
+The patch can be found at:
+https://salsa.debian.org/java-team/rxtx/-/blob/6500bd55f265de7d2dfef68dc1df5d8b990f66c3/debian/patches/format_security.patch
+
+Bug: https://bugs.gentoo.org/550534
+
+---
+From: tony mancill <tmancill@debian.org>
+Forwarded: no
+Description: use format specifiers in fprintf statements for hardening flags
+
+--- a/src/SerialImp.c
++++ b/src/SerialImp.c
+@@ -5108,7 +5108,7 @@
+ void report_warning(const char *msg)
+ {
+ #ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #else
+ mexWarnMsgTxt( (const char *) msg );
+ #endif /* DEBUG_MW */
+@@ -5129,7 +5129,7 @@
+ #ifdef DEBUG_MW
+ mexErrMsgTxt( msg );
+ #else
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #endif /* DEBUG_MW */
+ #endif /* DEBUG_VERBOSE */
+ }
+@@ -5145,7 +5145,7 @@
+ void report_error(const char *msg)
+ {
+ #ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #else
+ mexWarnMsgTxt( msg );
+ #endif /* DEBUG_MW */
+@@ -5164,7 +5164,7 @@
+ {
+ #ifdef DEBUG
+ # ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ # else
+ mexPrintf( msg );
+ # endif /* DEBUG_MW */
+--- a/src/ParallelImp.c
++++ b/src/ParallelImp.c
+@@ -920,7 +920,7 @@
+ void report_error(char *msg)
+ {
+ #ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #else
+ mexWarnMsgTxt( msg );
+ #endif /* DEBUG_MW */
+@@ -938,7 +938,7 @@
+ void report(char *msg)
+ {
+ #ifdef DEBUG
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #endif /* DEBUG */
+ }
+
+--- a/src/SerialImp.cpp
++++ b/src/SerialImp.cpp
+@@ -1844,7 +1844,7 @@
+
+
+ #ifdef DEBUG
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #endif
+ }
+
+--- a/CNI/SerialImp.c
++++ b/CNI/SerialImp.c
+@@ -4549,7 +4549,7 @@
+ void report_warning(char *msg)
+ {
+ #ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #else
+ mexWarnMsgTxt( (const char *) msg );
+ #endif /* DEBUG_MW */
+@@ -4570,7 +4570,7 @@
+ #ifdef DEBUG_MW
+ mexErrMsgTxt( msg );
+ #else
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #endif /* DEBUG_MW */
+ #endif /* DEBUG_VERBOSE */
+ }
+@@ -4586,7 +4586,7 @@
+ void report_error(char *msg)
+ {
+ #ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ #else
+ mexWarnMsgTxt( msg );
+ #endif /* DEBUG_MW */
+@@ -4605,7 +4605,7 @@
+ {
+ #ifdef DEBUG
+ # ifndef DEBUG_MW
+- fprintf(stderr, msg);
++ fprintf(stderr, "%s", msg);
+ # else
+ mexPrintf( msg );
+ # endif /* DEBUG_MW */
diff --git a/dev-java/rxtx/metadata.xml b/dev-java/rxtx/metadata.xml
index fc99089425fa..eb11f49a2a1b 100644
--- a/dev-java/rxtx/metadata.xml
+++ b/dev-java/rxtx/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/rxtx/rxtx-2.2_pre2-r1.ebuild b/dev-java/rxtx/rxtx-2.2_pre2-r1.ebuild
deleted file mode 100644
index 250fe5e92412..000000000000
--- a/dev-java/rxtx/rxtx-2.2_pre2-r1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit toolchain-funcs versionator autotools java-pkg-2
-
-MY_PV="$(delete_version_separator 2)"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="Native lib providing serial and parallel communication for Java"
-HOMEPAGE="http://rxtx.qbang.org/"
-SRC_URI="ftp://ftp.qbang.org/pub/rxtx/${MY_P}.zip"
-LICENSE="LGPL-2.1+"
-SLOT="2"
-KEYWORDS="amd64 x86"
-IUSE="lfd"
-
-RDEPEND=">=virtual/jre-1.6
- lfd? ( sys-apps/xinetd )"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- sed -i -e "s:\(\$(JAVADOC)\):\1 -d api:g" Makefile.am || die
- sed -i \
- -e "s:UTS_RELEASE::g" \
- -e "s:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:g" \
- -e "s:-source ... -target ...:$(java-pkg_javac-args):g" \
- configure.in || die
-
- epatch \
- "${FILESDIR}/${PN}-2.1-7r2-lfd.diff" \
- "${FILESDIR}/${PN}-2.1-7r2-nouts.diff" \
- "${FILESDIR}/${P}-add-ttyACM.patch" \
- "${FILESDIR}/${P}-limits.patch"
-
- rm acinclude.m4 || die
- eautoreconf
-}
-
-src_configure() {
- econf \
- $(use_enable lfd lockfile_server)
-}
-
-src_compile() {
- emake
-
- if use lfd ; then
- # see INSTALL in src/ldf
- $(tc-getCC) ${LDFLAGS} ${CFLAGS} src/lfd/lockdaemon.c -o src/lfd/in.lfd || die
- fi
-
- if use doc ; then
- emake docs
- fi
-
- # Fix for src zip creation
- if use source ; then
- mkdir -p src_with_pkg/gnu || die
- ln -s ../../src src_with_pkg/gnu/io || die
- fi
-}
-
-src_install() {
- java-pkg_dojar RXTXcomm.jar
- java-pkg_doso ${CHOST}/.libs/*.so
-
- dodoc AUTHORS ChangeLog INSTALL PORTING TODO SerialPortInstructions.txt
- docinto html
- dodoc RMISecurityManager.html
-
- if use lfd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}/lockfiled.xinetd" lfd
- dosbin src/lfd/in.lfd
- dodoc src/lfd/LockFileServer.rfc
- fi
-
- use doc && java-pkg_dojavadoc api
- use source && java-pkg_dosrc src_with_pkg/gnu
-}
-
-pkg_postinst() {
- if use lfd ; then
- elog "Don't forget to enable the LockFileServer"
- elog "daemon (lfd) in /etc/xinetd.d/lfd"
- else
- elog "RXTX uses UUCP style device-locks. You should"
- elog "add every user who needs to access serial ports"
- elog "to the 'uucp' group:"
- elog
- elog " usermod -aG uucp <user>"
- fi
-}
diff --git a/dev-java/rxtx/rxtx-2.2_pre2-r2.ebuild b/dev-java/rxtx/rxtx-2.2_pre2-r2.ebuild
new file mode 100644
index 000000000000..2d39447cb63b
--- /dev/null
+++ b/dev-java/rxtx/rxtx-2.2_pre2-r2.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit toolchain-funcs autotools java-pkg-2
+
+MY_PV="$(ver_rs 2 '')"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Native library providing serial and parallel communication for Java"
+# SSL protocol versions supported by the HTTPS website are too old for
+# the latest web browsers, so please keep the HTTP URL for HOMEPAGE
+HOMEPAGE="http://rxtx.qbang.org/"
+SRC_URI="ftp://ftp.qbang.org/pub/rxtx/${MY_P}.zip"
+LICENSE="LGPL-2.1+"
+SLOT="2"
+KEYWORDS="amd64 ~ppc64 x86"
+IUSE="lfd"
+
+RDEPEND=">=virtual/jre-1.8:*
+ lfd? ( sys-apps/xinetd )"
+
+DEPEND=">=virtual/jdk-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ sed -i -e "s:\(\$(JAVADOC)\):\1 -d api:g" Makefile.am || die
+ sed -i \
+ -e "s:UTS_RELEASE::g" \
+ -e "s:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:g" \
+ -e "s:-source ... -target ...:$(java-pkg_javac-args):g" \
+ configure.in || die
+
+ eapply -p0 "${FILESDIR}/${PN}-2.1-7r2-lfd.diff"
+ eapply -p0 "${FILESDIR}/${PN}-2.1-7r2-nouts.diff"
+ eapply "${FILESDIR}/${PN}-2.1-7r2-ppcioh.diff"
+ eapply "${FILESDIR}/${PN}-2.1-7r2-ttyPZ.diff"
+ eapply -p0 "${FILESDIR}/${P}-limits.patch"
+ eapply "${FILESDIR}/${P}-add-ttyACM.patch"
+ eapply "${FILESDIR}/${P}-format-security.patch"
+ eapply "${FILESDIR}/${P}-fix-invalid-javadoc.patch"
+ eapply "${FILESDIR}/${P}-fix-for-java-10+.patch"
+ eapply_user
+
+ rm acinclude.m4 || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable lfd lockfile_server)
+}
+
+src_compile() {
+ # Parallel build on this package may cause random
+ # build-time errors sometimes due to race conditions
+ emake -j1
+
+ if use lfd ; then
+ # see INSTALL in src/ldf
+ $(tc-getCC) ${LDFLAGS} ${CFLAGS} src/lfd/lockdaemon.c -o src/lfd/in.lfd || die
+ fi
+
+ if use doc ; then
+ emake -j1 docs
+ fi
+
+ # Fix for src zip creation
+ if use source ; then
+ mkdir -p src_with_pkg/gnu || die
+ ln -s ../../src src_with_pkg/gnu/io || die
+ fi
+}
+
+src_install() {
+ java-pkg_dojar RXTXcomm.jar
+ java-pkg_doso ${CHOST}/.libs/*.so
+
+ dodoc AUTHORS ChangeLog INSTALL PORTING TODO SerialPortInstructions.txt
+ docinto html
+ dodoc RMISecurityManager.html
+
+ if use lfd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}/lockfiled.xinetd" lfd
+ dosbin src/lfd/in.lfd
+ dodoc src/lfd/LockFileServer.rfc
+ fi
+
+ use doc && java-pkg_dojavadoc api
+ use source && java-pkg_dosrc src_with_pkg/gnu
+}
+
+pkg_postinst() {
+ if use lfd ; then
+ elog "Don't forget to enable the LockFileServer"
+ elog "daemon (lfd) in /etc/xinetd.d/lfd"
+ else
+ elog "RXTX uses UUCP style device-locks. You should"
+ elog "add every user who needs to access serial ports"
+ elog "to the 'uucp' group:"
+ elog
+ elog " usermod -aG uucp <user>"
+ fi
+}
diff --git a/dev-java/sablecc-anttask/Manifest b/dev-java/sablecc-anttask/Manifest
deleted file mode 100644
index ad81e4097d10..000000000000
--- a/dev-java/sablecc-anttask/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sablecc-anttask-1.1.0.tar.gz 14045 BLAKE2B d69571be04ca6404f12f8d1a386386b5cf1f4742e35004c19801abfdf698f21d7b6650088ff5157e63e332b386bd329809949e091e608523dad08b70e7cea8e8 SHA512 23e8f3e911660549fd5bd6bcec4c97c58138fbc478bb958695b9b5327cf3da6985830d1c7a8db45516e2f708f7a9405921342b2a05bdce31c39c71569d62059d
diff --git a/dev-java/sablecc-anttask/metadata.xml b/dev-java/sablecc-anttask/metadata.xml
deleted file mode 100644
index 273d81b33501..000000000000
--- a/dev-java/sablecc-anttask/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">sablecc</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/sablecc-anttask/sablecc-anttask-1.1.0-r2.ebuild b/dev-java/sablecc-anttask/sablecc-anttask-1.1.0-r2.ebuild
deleted file mode 100644
index 03cd8bbc11cf..000000000000
--- a/dev-java/sablecc-anttask/sablecc-anttask-1.1.0-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Ant task for sablecc"
-HOMEPAGE="http://sablecc.org/"
-SRC_URI="mirror://sourceforge/sablecc/${P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_register-ant-task
-}
diff --git a/dev-java/sablecc/Manifest b/dev-java/sablecc/Manifest
deleted file mode 100644
index 50db16bcbd34..000000000000
--- a/dev-java/sablecc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sablecc-3.7.tar.gz 556985 BLAKE2B 8acc8f74f640d66b2e420562f3d93f91e78edf98d30d88c5189bf023099fc44e0dcd18bae2e0692d768ba5c9ceaddd4e8f8dd94cbbce86acc6554991549039a2 SHA512 c53212ae10afc546796a46b8f1d731d3337c1fe184f12a285686b1f876b207a6cddcd789876d5c9d6b378583065bbb8ca7b5c3797d88b4eea3609ffe9a9c8f71
diff --git a/dev-java/sablecc/metadata.xml b/dev-java/sablecc/metadata.xml
deleted file mode 100644
index 273d81b33501..000000000000
--- a/dev-java/sablecc/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">sablecc</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/sablecc/sablecc-3.7-r1.ebuild b/dev-java/sablecc/sablecc-3.7-r1.ebuild
deleted file mode 100644
index 861695b504eb..000000000000
--- a/dev-java/sablecc/sablecc-3.7-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java based compiler / parser generator"
-HOMEPAGE="http://www.sablecc.org/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher "${PN}" --main org.sablecc.sablecc.SableCC
- dodoc AUTHORS THANKS
- dohtml README.html
-}
diff --git a/dev-java/sac/Manifest b/dev-java/sac/Manifest
deleted file mode 100644
index 08360d0ff857..000000000000
--- a/dev-java/sac/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sac-1.3.zip 163617 BLAKE2B d52ae09cfa7a60afb66ebebb395a93f2e69fb0fc2cdec3153b34350339d179c1621f9cb613889664e008a1ed9d121520431df13938b5d8d9d722e40da01eeb12 SHA512 e179d2e672f1e9e134c4bec92742410bcf2c5d423e5d236856bb53e849d7fcdb2bb09518796d30862685a9ab2344bfeea9b4c7f3c3dd4a1007c8056e120c87b9
diff --git a/dev-java/sac/metadata.xml b/dev-java/sac/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/sac/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/sac/sac-1.3-r2.ebuild b/dev-java/sac/sac-1.3-r2.ebuild
deleted file mode 100644
index 395631671fe0..000000000000
--- a/dev-java/sac/sac-1.3-r2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SAC is a standard interface for CSS parser"
-HOMEPAGE="http://www.w3.org/Style/CSS/SAC/"
-SRC_URI="http://www.w3.org/2002/06/sacjava-${PV}.zip -> ${P}.zip"
-
-LICENSE="W3C"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND="
- app-arch/zip
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="org"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/sac/sac-1.3-r3.ebuild b/dev-java/sac/sac-1.3-r3.ebuild
deleted file mode 100644
index 8e4b59d4a0b9..000000000000
--- a/dev-java/sac/sac-1.3-r3.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SAC is a standard interface for CSS parser"
-HOMEPAGE="http://www.w3.org/Style/CSS/SAC/"
-SRC_URI="http://www.w3.org/2002/06/sacjava-${PV}.zip -> ${P}.zip"
-
-LICENSE="W3C"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- app-arch/zip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="org"
-
-src_prepare() {
- default
- java-pkg_clean
-}
diff --git a/dev-java/saslprep/Manifest b/dev-java/saslprep/Manifest
new file mode 100644
index 000000000000..10350c43db2b
--- /dev/null
+++ b/dev-java/saslprep/Manifest
@@ -0,0 +1 @@
+DIST saslprep-1.1-sources.jar 3735 BLAKE2B 4a2058856f0fa01a6f8ef05ca930d875825653f34c3d2b0bb81d658cb363fc5d4268a212d14e23ce60c666a1482de78e13483605c39783c81a971b148055464c SHA512 63badd75f5444af0077629dcf3f95a7c39d3e12f159a50748f54c36d2aa2cef90887c099d0c89007796174d48da0d25cc93db8ccf07660a8803e3edbbb92da05
diff --git a/dev-java/saslprep/metadata.xml b/dev-java/saslprep/metadata.xml
new file mode 100644
index 000000000000..e870bae78b8b
--- /dev/null
+++ b/dev-java/saslprep/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="gitlab">ongresinc/stringprep</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/saslprep/saslprep-1.1-r1.ebuild b/dev-java/saslprep/saslprep-1.1-r1.ebuild
new file mode 100644
index 000000000000..c36809a99c83
--- /dev/null
+++ b/dev-java/saslprep/saslprep-1.1-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.ongres.stringprep:saslprep:1.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SASLprep: Stringprep Profile for User Names and Passwords"
+HOMEPAGE="https://gitlab.com/ongresinc/stringprep"
+SRC_URI="https://repo1.maven.org/maven2/com/ongres/stringprep/saslprep/${PV}/saslprep-${PV}-sources.jar"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+CP_DEPEND="dev-java/stringprep:0"
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}"
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}"
diff --git a/dev-java/sax/metadata.xml b/dev-java/sax/metadata.xml
index 1837ffd81b78..e6b0cad728ed 100644
--- a/dev-java/sax/metadata.xml
+++ b/dev-java/sax/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/sax/sax-2.2.1-r3.ebuild b/dev-java/sax/sax-2.2.1-r3.ebuild
deleted file mode 100644
index 7e77a681194a..000000000000
--- a/dev-java/sax/sax-2.2.1-r3.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-MY_PN="sax2r3"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SAX: Simple API for XML in Java"
-HOMEPAGE="http://sax.sourceforge.net"
-SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip -> ${P}.zip"
-LICENSE="public-domain"
-
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/sax2r3"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc ChangeLog CHANGES README
-}
diff --git a/dev-java/sax/sax-2.2.1-r4.ebuild b/dev-java/sax/sax-2.2.1-r4.ebuild
deleted file mode 100644
index dd2aff2873e2..000000000000
--- a/dev-java/sax/sax-2.2.1-r4.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-MY_PN="sax2r3"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SAX: Simple API for XML in Java"
-HOMEPAGE="http://sax.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${MY_PN}.zip -> ${P}.zip"
-LICENSE="public-domain"
-
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/sax2r3"
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc ChangeLog CHANGES README
-}
diff --git a/dev-java/sax/sax-2.2.1-r5.ebuild b/dev-java/sax/sax-2.2.1-r5.ebuild
new file mode 100644
index 000000000000..5bda68b0b794
--- /dev/null
+++ b/dev-java/sax/sax-2.2.1-r5.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"
+
+MY_PN="sax2r3"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SAX: Simple API for XML in Java"
+HOMEPAGE="http://sax.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${MY_PN}.zip -> ${P}.zip"
+LICENSE="public-domain"
+
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+DEPEND="
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+BDEPEND="
+ app-arch/unzip
+ source? ( app-arch/zip )"
+
+JAVADOC_ARGS="-source 8"
+
+S="${WORKDIR}/sax2r3"
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ dodoc ChangeLog CHANGES README
+}
diff --git a/dev-java/saxon/metadata.xml b/dev-java/saxon/metadata.xml
index d11a296ea609..4a2440bdfc71 100644
--- a/dev-java/saxon/metadata.xml
+++ b/dev-java/saxon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/saxon/saxon-6.5.5-r2.ebuild b/dev-java/saxon/saxon-6.5.5-r2.ebuild
deleted file mode 100644
index e33a43038e65..000000000000
--- a/dev-java/saxon/saxon-6.5.5-r2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc examples source"
-
-inherit java-pkg-2 java-pkg-simple versionator
-
-MY_P="${PN}$(replace_all_version_separators -)"
-
-DESCRIPTION="Set of tools for processing XML documents"
-SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip"
-HOMEPAGE="http://saxon.sourceforge.net/"
-
-LICENSE="MPL-1.1"
-SLOT="6.5"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/jdom:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="jdom"
-JAVA_ENCODING="ISO-8859-1"
-JAVA_SRC_DIR="src"
-
-src_unpack() {
- unpack ${A}
- unzip -qq source.zip -d src || die "failed to unpack"
-}
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_install() {
- default
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples samples
-}
diff --git a/dev-java/saxon/saxon-6.5.5-r3.ebuild b/dev-java/saxon/saxon-6.5.5-r3.ebuild
new file mode 100644
index 000000000000..8dd6a5a954af
--- /dev/null
+++ b/dev-java/saxon/saxon-6.5.5-r3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 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-pkg-simple
+
+DESCRIPTION="Set of tools for processing XML documents"
+HOMEPAGE="https://www.saxonica.com/index.html https://saxon.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/project/saxon/saxon6/${PV}/saxon${PV//./-}.zip"
+
+LICENSE="MPL-1.1"
+SLOT="6.5"
+KEYWORDS="amd64 x86"
+
+CP_DEPEND="dev-java/jdom:0"
+
+# Restricting to jdk:1.8 for following reason:
+# src/org/w3c/dom/UserDataHandler.java:1: error: package exists in another module: java.xml
+# package org.w3c.dom;
+DEPEND="${CP_DEPEND}
+ virtual/jdk:1.8"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+JAVA_ENCODING="ISO-8859-1"
+JAVA_SRC_DIR="src"
+
+src_unpack() {
+ unpack ${A}
+ unzip -qq source.zip -d src || die "failed to unpack"
+}
+
+src_prepare() {
+ default
+ java-pkg_clean
+}
+
+src_install() {
+ default
+ java-pkg-simple_src_install
+ use examples && java-pkg_doexamples samples
+}
diff --git a/dev-java/saxon/saxon-9.2.0.6-r2.ebuild b/dev-java/saxon/saxon-9.2.0.6-r2.ebuild
deleted file mode 100644
index 4332edc035b1..000000000000
--- a/dev-java/saxon/saxon-9.2.0.6-r2.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit versionator java-pkg-2 java-ant-2
-
-MY_PV="$(replace_all_version_separators -)"
-
-DESCRIPTION="A XSLT and XQuery Processor"
-HOMEPAGE="http://saxon.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${PN}he${MY_PV}source.zip"
-
-LICENSE="MPL-1.0"
-SLOT="9"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-CDEPEND="
- dev-java/xom:0
- dev-java/jdom:0
- dev-java/dom4j:1
- dev-java/ant-core"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}"
-
-# prepare eclass variables
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-JAVA_ANT_CLASSPATH_TAGS="javac javadoc"
-
-src_prepare() {
- default
-
- # Fedora-inspired removal.
-
- # deadNET.
- rm -rv net/sf/saxon/dotnet || die
-
- # Depends on XQJ (javax.xml.xquery).
- rm -rv net/sf/saxon/xqj || die
-
- # This requires a EE edition feature (com.saxonica.xsltextn).
- rm -v net/sf/saxon/option/sql/SQLElementFactory.java || die
-
- # <major>.<minor> version
- local version="$(get_version_component_range 1-2)"
-
- # generate build.xml with external javadoc links
- sed -e "s:@JDK@:1.6:" \
- -e "s:@JDOM@:1:" \
- < "${FILESDIR}/${version}-build.xml" \
- > "${S}/build.xml" \
- || die "build.xml generation failed!"
-
- # prepare creates the dir for properties
- eant prepare
-
- # properties
- cp -v \
- "${FILESDIR}/${version}-edition.properties" \
- "${S}/build/classes/edition.properties" || die
-}
-
-src_compile() {
- local gcp="$(java-pkg_getjars dom4j-1,jdom,xom)"
- gcp="${gcp}:$(java-pkg_getjars --build-only ant-core)"
- eant -Dgentoo.classpath="${gcp}" jar $(use_doc)
-}
-
-src_install() {
- java-pkg_dojar build/lib/${PN}.jar
-
- java-pkg_dolauncher ${PN}${SLOT}-transform --main net.sf.saxon.Transform
- java-pkg_dolauncher ${PN}${SLOT}-query --main net.sf.saxon.Query
-
- java-pkg_register-ant-task
-
- use doc && java-pkg_dojavadoc build/api
-
- use source && java-pkg_dosrc src
-}
diff --git a/dev-java/saxon/saxon-9.2.0.6-r4.ebuild b/dev-java/saxon/saxon-9.2.0.6-r4.ebuild
new file mode 100644
index 000000000000..1513e7c8fedb
--- /dev/null
+++ b/dev-java/saxon/saxon-9.2.0.6-r4.ebuild
@@ -0,0 +1,90 @@
+# 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-ant-2
+
+DESCRIPTION="A XSLT and XQuery Processor"
+HOMEPAGE="https://www.saxonica.com/index.html https://saxon.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/project/saxon/Saxon-HE/$(ver_cut 1-2)/saxonhe${PV//./-}source.zip"
+S="${WORKDIR}"
+
+LICENSE="MPL-1.0"
+SLOT="9"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CDEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/dom4j:1
+ dev-java/jdom:0
+ dev-java/xom:0
+"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+# prepare eclass variables
+JAVA_ANT_REWRITE_CLASSPATH="yes"
+JAVA_ANT_CLASSPATH_TAGS="javac javadoc"
+
+src_prepare() {
+ default
+
+ # Fedora-inspired removal.
+
+ # deadNET.
+ rm -rv net/sf/saxon/dotnet || die
+
+ # Depends on XQJ (javax.xml.xquery).
+ rm -rv net/sf/saxon/xqj || die
+
+ # This requires a EE edition feature (com.saxonica.xsltextn).
+ rm -v net/sf/saxon/option/sql/SQLElementFactory.java || die
+
+ # <major>.<minor> version
+ local version="$(ver_cut 1-2)"
+
+ # generate build.xml with external javadoc links
+ sed -e "s:@JDK@:1.6:" \
+ -e "s:@JDOM@:1:" \
+ < "${FILESDIR}/${version}-build.xml" \
+ > "${S}/build.xml" \
+ || die "build.xml generation failed!"
+
+ # prepare creates the dir for properties
+ eant prepare
+
+ # properties
+ cp -v \
+ "${FILESDIR}/${version}-edition.properties" \
+ "${S}/build/classes/edition.properties" || die
+}
+
+src_compile() {
+ local gcp="$(java-pkg_getjars dom4j-1,jdom,xom)"
+ gcp="${gcp}:$(java-pkg_getjar --build-only ant ant.jar)"
+ eant -Dgentoo.classpath="${gcp}" jar $(use_doc)
+}
+
+src_install() {
+ java-pkg_dojar build/lib/${PN}.jar
+
+ java-pkg_dolauncher ${PN}${SLOT}-transform --main net.sf.saxon.Transform
+ java-pkg_dolauncher ${PN}${SLOT}-query --main net.sf.saxon.Query
+
+ java-pkg_register-ant-task
+
+ use doc && java-pkg_dojavadoc build/api
+
+ use source && java-pkg_dosrc src
+}
diff --git a/dev-java/saxpath/Manifest b/dev-java/saxpath/Manifest
deleted file mode 100644
index 7c73b09d6d16..000000000000
--- a/dev-java/saxpath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST saxpath-1.0.jar 36257 BLAKE2B 0b6b2c943b3b472a01109c6f6b25d8e54b5afff7c44f980f4741ccb3bb689520e5e6e49fb17e918f35212fceb69e5aa551469fb923675b9287733799134bb967 SHA512 53e7781ea3efc1e16a839c9137fe7ab683e7a9e40283f0f5aa7afc1de75c4dc366a91a93ae5f256fc24e78fd3a4dcdcde6631bfa0d926b7dd0ddacd5c240ca96
diff --git a/dev-java/saxpath/metadata.xml b/dev-java/saxpath/metadata.xml
deleted file mode 100644
index cfd90c9bf25d..000000000000
--- a/dev-java/saxpath/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">saxpath</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/saxpath/saxpath-1.0-r3.ebuild b/dev-java/saxpath/saxpath-1.0-r3.ebuild
deleted file mode 100644
index 6ce0da55b9e7..000000000000
--- a/dev-java/saxpath/saxpath-1.0-r3.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java XPath API"
-HOMEPAGE="https://saxpath.sourceforge.net"
-SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}-FCS/${P}-FCS-sources.jar -> ${P}.jar"
-
-LICENSE="JDOM"
-SLOT="0"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/sbt-bin/Manifest b/dev-java/sbt-bin/Manifest
index 6866d35d3195..dcd62703e35c 100644
--- a/dev-java/sbt-bin/Manifest
+++ b/dev-java/sbt-bin/Manifest
@@ -1,2 +1 @@
-DIST sbt-1.3.10.tgz 57609786 BLAKE2B 35285d141d8ad38a8e15cc3dd18947fa34dbe307ce1fbdd267a0902ff7f5757a0ab80d56eb241c8bea79c4a13c270efb65a552a039416a6f571b6cd214739819 SHA512 93832c0eec51422d6db63078c722578cbad21e4611ca868e835471fb988ad225e8abdea47c6dcf6e19117db9598bc75296100d9dc7ba0d605b70adc592efb925
-DIST sbt-1.3.2.tgz 51817549 BLAKE2B ccb362b8cec867c64a04eba48982a9d339250d3ab51afb72fbbb7fe29406c6565d386ab0e02887007922f4134481b4ee764b63eb69300d7aa06dffd43a91a225 SHA512 2402f781962b80a46c63ac3aba0b2bb2b55ae509bb6b591d840385765dbf73cb6e5b40c12e6b95db2d8f4e77caeda32aad5a701a6439bde41ca3166d50f4b9b2
+DIST sbt-1.8.0.tgz 29165245 BLAKE2B 7b2895e2f748cefd76bd4db12b9903448b77345bfa2c7be9fdf55e959a72828eb73d7b560885c8fb3c691571330fb6b94526820b611e3daf5a4e5f8f093656c9 SHA512 e53817cc7a15a37883ea3cef094e297a813388116e3f0c4bf29c70021c5df01f1e08bccfd20f20cfae007b88fd6c2915f82478ee44274bf5ddcea12df2de7f49
diff --git a/dev-java/sbt-bin/metadata.xml b/dev-java/sbt-bin/metadata.xml
index 952a4b9b605c..9506418c076b 100644
--- a/dev-java/sbt-bin/metadata.xml
+++ b/dev-java/sbt-bin/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">sbt/sbt</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/sbt-bin/sbt-bin-1.3.10.ebuild b/dev-java/sbt-bin/sbt-bin-1.3.10.ebuild
deleted file mode 100644
index 493d2abf7d76..000000000000
--- a/dev-java/sbt-bin/sbt-bin-1.3.10.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-DESCRIPTION="sbt, a build tool for Scala"
-HOMEPAGE="https://scala-sbt.org"
-SRC_URI="https://github.com/sbt/sbt/releases/download/v${PV}/${PN/-bin}-${PV}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=virtual/jre-1.7
- !dev-java/sbt"
-
-src_unpack() {
- default
- mv "${WORKDIR}/sbt" "${S}" || die
-}
-
-src_prepare() {
- default
- java-pkg_init_paths_
-}
-
-src_compile() {
- :;
-}
-
-src_install() {
- local dest="${JAVA_PKG_SHAREPATH}"
-
- rm -v bin/sbt.bat || die
- sed -i -e 's#bin/sbt-launch.jar#lib/sbt-launch.jar#g;' \
- bin/sbt || die
-
- insinto "${dest}/lib"
- doins bin/*
-
- insinto "${dest}"
- doins -r conf
-
- fperms 0755 "${dest}/lib/sbt"
- dosym "${dest}/lib/sbt" /usr/bin/sbt
-}
diff --git a/dev-java/sbt-bin/sbt-bin-1.3.2.ebuild b/dev-java/sbt-bin/sbt-bin-1.3.2.ebuild
deleted file mode 100644
index 21e538c44abb..000000000000
--- a/dev-java/sbt-bin/sbt-bin-1.3.2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-DESCRIPTION="sbt, a build tool for Scala"
-HOMEPAGE="https://scala-sbt.org"
-SRC_URI="https://github.com/sbt/sbt/releases/download/v${PV}/${PN/-bin}-${PV}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64"
-
-RDEPEND="
- >=virtual/jre-1.7
- !dev-java/sbt"
-
-src_unpack() {
- default
- mv "${WORKDIR}/sbt" "${S}" || die
-}
-
-src_prepare() {
- default
- java-pkg_init_paths_
-}
-
-src_compile() {
- :;
-}
-
-src_install() {
- local dest="${JAVA_PKG_SHAREPATH}"
-
- rm -v bin/sbt.bat || die
- sed -i -e 's#bin/sbt-launch.jar#lib/sbt-launch.jar#g;' \
- bin/sbt || die
-
- insinto "${dest}/lib"
- doins bin/*
-
- insinto "${dest}"
- doins -r conf
-
- fperms 0755 "${dest}/lib/sbt"
- dosym "${dest}/lib/sbt" /usr/bin/sbt
-}
diff --git a/dev-java/sbt-bin/sbt-bin-1.8.0.ebuild b/dev-java/sbt-bin/sbt-bin-1.8.0.ebuild
new file mode 100644
index 000000000000..aa7d16b69b39
--- /dev/null
+++ b/dev-java/sbt-bin/sbt-bin-1.8.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+DESCRIPTION="sbt, a build tool for Scala"
+HOMEPAGE="https://www.scala-sbt.org/"
+SRC_URI="https://github.com/sbt/sbt/releases/download/v${PV}/${PN/-bin}-${PV}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64"
+
+RDEPEND="
+ >=virtual/jre-1.8
+ !dev-java/sbt"
+
+QA_TEXTRELS="usr/share/sbt-bin/lib/sbtn-x86_64-pc-linux"
+QA_FLAGS_IGNORED="usr/share/sbt-bin/lib/sbtn-x86_64-pc-linux"
+
+S="${WORKDIR}/sbt"
+
+src_prepare() {
+ default
+ java-pkg_init_paths_
+}
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ local dest="${JAVA_PKG_SHAREPATH}"
+
+ rm -v bin/sbt.bat || die
+ sed -i -e 's#bin/sbt-launch.jar#lib/sbt-launch.jar#g;' \
+ bin/sbt || die
+
+ insinto "${dest}/lib"
+ doins bin/*
+
+ insinto "${dest}"
+ doins -r conf
+
+ fperms 0755 "${dest}/lib/sbt"
+ dosym "${dest}/lib/sbt" /usr/bin/sbt
+}
diff --git a/dev-java/sbt/Manifest b/dev-java/sbt/Manifest
index 31129ee59c98..0ac8b9dc2cb9 100644
--- a/dev-java/sbt/Manifest
+++ b/dev-java/sbt/Manifest
@@ -1,10 +1,5 @@
-DIST sbt-0.13.13-gentoo-binary.tar.xz 58011476 BLAKE2B 87f829a5a6c4047b5120b9685c1caa1477d6ab5789835bf890d241ae512bae65cc3b0b2b60c15c18e15891210b6687ad2c8cd7dcc581f5224fc8788a576ff754 SHA512 9763b67ac4838e6ccac1848c17a03608bed61669671a10c93afc4c81d6dad06a3463ac4e4a9b7b3fb91325df5df6e0148847669d482e3cacf4fde957c110ccc1
-DIST sbt-0.13.13-ivy2-deps.tar.xz 121677604 BLAKE2B 7f6e508104a99c36f8f928550f7c0e41b742cefef3f3fccf2999fe7a5873cf690d693c0ded1df481535b59a7340a997cc21ef3ffd403b147fd8a323d1ee28620 SHA512 3301447a563e9a83431bb67a6281a6045630669012f1cc5cdde7a2cbae3f7db75f87abed003ecf8243fd230e2adea2ba3666468358ae29c51e346940235f5ed5
-DIST sbt-0.13.13-sbt-deps.tar.xz 34750700 BLAKE2B 5856f19d19255a6c4a373086962f3bff195d03193bb74d8d3aee1cfb2749ef3638f5c26dff7cb7c455c5b4ce67e8cf4fa46bbf9a8363f80dc26092e6df768d81 SHA512 0bfd35a6926545da7340f7ee72e420121f2bb2f83d98d420b7f65b465d207b1b30a48788914e7b1fdf575a4fee870f2632b0717f1a7a2c19e2f2d5794d08b4da
-DIST sbt-0.13.13-src.tar.xz 35911028 BLAKE2B 42157af03ae3567a2acc67cc0c96a9ffe19b69d60fddfde1cd65bbc410c14b09e5da0febb8225e49693c380a444b752296c29a21cc7f2239ee49ccef5128a3ff SHA512 351f18108a23014ee7ffd5c4713f390728fb98b742efdc139e094e64df7800f399d088600d245631635b0f6f4cb69c6cd327aafa3b0bf8a233fcbf0cb4ac5702
DIST sbt-0.13.18-gentoo-binary.tar.xz 24312512 BLAKE2B 8601ff9d8783156f98df7e855563ebd1a1e51b4588f7fb5701b2fbd86771b7a280518272fc24f469f8810893f2762afb33f1c590764f980d9571555b3f84e4c6 SHA512 ca4b3b50d04f33c55e4bef468623a245e6001f922c8ad404e60a4369bcd6e683a97dab169b03cbc12d9e530aff194fdf1571aceca32c5dbb37b4c3d7a49a09f9
DIST sbt-0.13.18-ivy2-deps.tar.xz 97612984 BLAKE2B d712b80cde43c46bc714d30f3009b9e46c5f50f78fbc46f8bc106f522308faa9a8d0bdbf4ad9634730f759bb3c484380d33e585771b33633aab6b8ee7dda5ba4 SHA512 c6affd495f9882b71d3a811638c803a646f71e926cc7efb2e84950d85a4fb6dcb65674ff5444d9ffc8858726342b6d3733880d1611157004b891689e67f24028
DIST sbt-0.13.18-sbt-deps.tar.xz 34787436 BLAKE2B aba63ee1f7ec3f105bae0fa882dc193360c29f772a50ee84b9770f79491d55fcff509d70b813b62ad0bdd618729293b030b29209236ad5d9af1bfc11b7a0fdf0 SHA512 aab302c83303baa89bf6a2ed8d3af76e4d92b9c4339d0e30767fcfcf61131c29a534ba43fb73467f673dec0b3f61d2e740a19b3790fcc4f76b413d04115dfbb8
DIST sbt-0.13.18.tar.gz 952783 BLAKE2B 31648c2cbbeb5d57db03c10bd4ac25344ae2d0351fc592e85e053e9ac0deb063e1b1e700a8dfa4a242243dd06fa491f721852ddbc2ea1d7fd4174e01febad25e SHA512 0eeb6fddc2454c2fff2eee06a80179495c0210d97fd3677bfe0f8833524ac707515b9e8f3c19e0d0372f503ef9b9f19dbe4cf15b6f8b48181ad730685004267c
-DIST sbt-launch-0.13.13.jar 1210231 BLAKE2B 754abad78cec4f6b040fb63dcb62e549768174b22cf3f9ab7d2419736d4f09b53863cf645b38d7d534deb1c6e897f55d8b1b5fa82462ca9d906c410d22c0c198 SHA512 78e7ce21c610e83a532b04491e13d53b4193205328adce473252d523fe0ca0f3892dba900f01ff6e28d94a17c3ba1ebbe7d85fd6ce9900c48263bc4816da37ef
DIST sbt-launch-0.13.18.jar 1210278 BLAKE2B b3c03f0c823576db51eda51a494edeb771f7ab762afe74fa95f19a4581d80cfdf3c6d6bfacd76e195de34f420912d18b505b74414fbc02550c9331fe4b3e07e3 SHA512 2b1e27f8d873ee45cc168ab19f6e82421d6896116c7b7af60974b97f41edd034fa008e668c83f83d2ce3a501986674821d8a427ccbcda291c8c33b576d64921b
diff --git a/dev-java/sbt/metadata.xml b/dev-java/sbt/metadata.xml
index 6ccffa7db3e9..9844fcc90ace 100644
--- a/dev-java/sbt/metadata.xml
+++ b/dev-java/sbt/metadata.xml
@@ -1,12 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
- <email>gienah@gentoo.org</email>
-</maintainer>
+<!-- maintainer-needed -->
<longdescription lang="en">
The interactive build tool.
Use Scala to define your tasks. Then run them in parallel from the shell.
</longdescription>
<use><flag name="binary">Install from (Gentoo-compiled) binary instead of building from sources. Set this when you run out of memory during build.</flag></use>
+<upstream>
+<remote-id type="github">sbt/sbt</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-java/sbt/sbt-0.13.13.ebuild b/dev-java/sbt/sbt-0.13.13.ebuild
deleted file mode 100644
index 65292f4be54a..000000000000
--- a/dev-java/sbt/sbt-0.13.13.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-# repoman gives LIVEVCS.unmasked even with EGIT_COMMIT, so create snapshot
-inherit java-pkg-2 # git-r3
-
-L_PN="sbt-launch"
-L_P="${L_PN}-${PV}"
-
-DESCRIPTION="sbt is a build tool for Scala and Java projects that aims to do the basics well"
-HOMEPAGE="https://www.scala-sbt.org/"
-EGIT_COMMIT="v${PV}"
-EGIT_REPO_URI="https://github.com/sbt/sbt.git"
-SRC_URI="
- !binary? (
- https://dev.gentoo.org/~gienah/snapshots/${P}-src.tar.xz
- https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz
- https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz
- http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/${L_PN}/${PV}/${L_PN}.jar -> ${L_P}.jar
- )
- binary? (
- https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.xz
- )"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="binary"
-
-DEPEND="
- >=virtual/jdk-1.8
- dev-lang/scala"
-
-RDEPEND="
- >=virtual/jre-1.8
- dev-lang/scala"
-
-# test hangs or fails
-RESTRICT="test"
-
-JAVA_GENTOO_CLASSPATH="scala-${SV}"
-
-# Note: to bump sbt, some things to try are:
-# 1. Create the sbt src snapshot:
-# git clone https://github.com/sbt/sbt.git ${P}
-# cd ${P}
-# git checkout v${PV}
-# cd ..
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-src.tar.xz ${P}
-# 2. remove the https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz
-# https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz and
-# binary? ( https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.xz )
-# from SRC_URI
-# 3. Comment the sbt publishLocal line in src_compile.
-# 4. try:
-# FEATURES='noclean -test' emerge -v -1 dev-java/sbt
-# It should fail in src_install since the sbt publishLocal is not done.
-# Check if it downloads more stuff in
-# src_compile to ${WORKDIR}/.ivy2 and ${WORKDIR}/.sbt.
-# 5. If some of the downloads fail, it might be necessary to run the sbt compile
-# again manually to obtain all the dependencies, if so:
-# cd to ${S}
-# export EROOT=/
-# export WORKDIR='/var/tmp/portage/dev-java/${P}/work'
-# export SV="2.11"
-# export L_P=${P}
-# export PATH="/usr/share/scala-${SV}/bin:${WORKDIR}/${L_P}:${PATH}"
-# sbt compile
-# cd ${WORKDIR}
-# find .ivy2 .sbt -uid 0 -exec chown portage:portage {} \;
-# 6. cd ${WORKDIR}
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-ivy2-deps.tar.xz .ivy2/cache
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-sbt-deps.tar.xz .sbt
-# Uncomment the sbt publishLocal line in src_compile.
-# 7. It *might* download more dependencies for src_test, however the presence
-# of some of these may cause the src_compile to fail. So download them
-# seperately as root so we can identify the
-# additional files. As root:
-# cd ${S}
-# ${S}/${P} test
-# cd ${WORKDIR}
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-test-deps.tar.xz \
-# $(find .ivy2/cache .sbt -uid 0 -type f -print)
-# Note: It might not download anything in src_test, in which case
-# ${P}-test-deps.tar.xz is not required.
-# 8. Create the binary
-# cd $WORDKIR
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-gentoo-binary.tar.xz ${P} .ivy2/local
-# 9. Undo the earlier temporary edits to the ebuild.
-
-src_unpack() {
- # if ! use binary; then
- # git-r3_src_unpack
- # fi
- # Unpack tar files only.
- for f in ${A} ; do
- [[ ${f} == *".tar."* ]] && unpack ${f}
- done
-}
-
-src_prepare() {
- default
- if ! use binary; then
- mkdir "${WORKDIR}/${L_P}" || die
- cp -p "${DISTDIR}/${L_P}.jar" "${WORKDIR}/${L_P}/${L_PN}.jar" || die
- cat <<- EOF > "${WORKDIR}/${L_P}/sbt"
- #!/bin/sh
- SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
- java -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${WORKDIR}/${L_P}/sbt-launch.jar" "\$@"
- EOF
- cat <<- EOF > "${S}/${P}"
- #!/bin/sh
- SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
- java -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${S}/launch/target/sbt-launch.jar" "\$@"
- EOF
- chmod u+x "${WORKDIR}/${L_P}/sbt" "${S}/${P}" || die
- sed -e "s@scalaVersion := scala210,@scalaVersion := scala${SV/./},\n scalaHome := Some(file(\"${EROOT}usr/share/scala-${SV}\")),@" \
- -i "${S}/build.sbt" || die
-
- # suppress this warning in build.log:
- # [warn] Credentials file /var/tmp/portage/dev-java/${P}/work/.bintray/.credentials does not exist
- mkdir -p "${WORKDIR}/.bintray" || die
- cat <<- EOF > "${WORKDIR}/.bintray/.credentials"
- realm = Bintray API Realm
- host = api.bintray.com
- user =
- password =
- EOF
- fi
-}
-
-src_compile() {
- if ! use binary; then
- export PATH="${EROOT}usr/share/scala-${SV}/bin:${WORKDIR}/${L_P}:${PATH}"
- einfo "=== sbt compile ..."
- "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true compile || die
- einfo "=== sbt publishLocal with jdk $(java-pkg_get-vm-version) ..."
- cat <<- EOF | "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true || die
- set every javaVersionPrefix in javaVersionCheck := Some("$(java-pkg_get-vm-version)")
- publishLocal
- EOF
- fi
-}
-
-src_test() {
- export PATH="${EROOT}usr/share/scala-${SV}/bin:${S}:${PATH}"
- "${S}/${P}" -Dsbt.log.noformat=true test || die
-}
-
-src_install() {
- # Place sbt-launch.jar at the end of the CLASSPATH
- java-pkg_dojar $(find "${WORKDIR}"/.ivy2/local -name \*.jar -print | grep -v sbt-launch.jar) \
- $(find "${WORKDIR}"/.ivy2/local -name sbt-launch.jar -print)
- local ja="-Dsbt.version=${PV} -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
- java-pkg_dolauncher sbt --jar sbt-launch.jar --java_args "${ja}"
-}
diff --git a/dev-java/sbt/sbt-0.13.18-r1.ebuild b/dev-java/sbt/sbt-0.13.18-r1.ebuild
new file mode 100644
index 000000000000..eb340eb54926
--- /dev/null
+++ b/dev-java/sbt/sbt-0.13.18-r1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit java-pkg-2
+
+L_PN="sbt-launch"
+L_P="${L_PN}-${PV}"
+
+DESCRIPTION="sbt is a build tool for Scala and Java projects that aims to do the basics well"
+HOMEPAGE="https://www.scala-sbt.org/"
+EGIT_COMMIT="v${PV}"
+EGIT_REPO_URI="https://github.com/sbt/sbt.git"
+SRC_URI="
+ !binary? (
+ https://github.com/sbt/sbt/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz
+ https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz
+ https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/${L_PN}/${PV}/${L_PN}.jar -> ${L_P}.jar
+ )
+ binary? (
+ https://dev.gentoo.org/~gienah/distfiles/${P}-gentoo-binary.tar.xz
+ )"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~x86"
+IUSE="binary"
+
+# Restrict to jdk:1.8
+# Missing dependency 'object java.lang.Object in compiler mirror', bug #831297
+DEPEND="
+ virtual/jdk:1.8
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+# test hangs or fails
+RESTRICT="test"
+
+# Note: to bump sbt, some things to try are:
+# 1. remove the https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz
+# https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz and
+# binary? ( https://dev.gentoo.org/~gienah/distfiles/${P}-gentoo-binary.tar.xz )
+# from SRC_URI
+# 2. Comment the sbt publishLocal line in src_compile.
+# 3. try:
+# FEATURES='noclean -test' emerge -v -1 dev-java/sbt
+# It should fail in src_install since the sbt publishLocal is not done.
+# Check if it downloads more stuff in
+# src_compile to ${WORKDIR}/.ivy2 and ${WORKDIR}/.sbt.
+# 4. If some of the downloads fail, it might be necessary to run the sbt compile
+# again manually to obtain all the dependencies, if so:
+# cd to ${S}
+# export EROOT=/
+# export WORKDIR='/var/tmp/portage/dev-java/${P}/work'
+# export L_P=${P}
+# export PATH="${WORKDIR}/${L_P}:${PATH}"
+# sbt compile
+# cd ${WORKDIR}
+# find .ivy2 .sbt -uid 0 -exec chown portage:portage {} \;
+# 5. cd ${WORKDIR}
+# XZ_OPT=-9 tar --owner=portage --group=portage \
+# -cJf /usr/portage/distfiles/${P}-ivy2-deps.tar.xz .ivy2/cache
+# XZ_OPT=-9 tar --owner=portage --group=portage \
+# -cJf /usr/portage/distfiles/${P}-sbt-deps.tar.xz .sbt
+# Uncomment the sbt publishLocal line in src_compile.
+# 6. It *might* download more dependencies for src_test, however the presence
+# of some of these may cause the src_compile to fail. So download them
+# seperately as root so we can identify the
+# additional files. As root:
+# cd ${S}
+# ${S}/${P} test
+# cd ${WORKDIR}
+# XZ_OPT=-9 tar --owner=portage --group=portage \
+# -cJf /usr/portage/distfiles/${P}-test-deps.tar.xz \
+# $(find .ivy2/cache .sbt -uid 0 -type f -print)
+# Note: It might not download anything in src_test, in which case
+# ${P}-test-deps.tar.xz is not required.
+# 7. Create the binary
+# cd $WORDKIR
+# XZ_OPT=-9 tar --owner=portage --group=portage \
+# -cJf /usr/portage/distfiles/${P}-gentoo-binary.tar.xz ${P} .ivy2/local
+# 9. Undo the earlier temporary edits to the ebuild.
+
+src_unpack() {
+ # Unpack tar files only.
+ for f in ${A} ; do
+ [[ ${f} == *".tar."* ]] && unpack ${f}
+ done
+}
+
+src_prepare() {
+ default
+ if ! use binary; then
+ mkdir "${WORKDIR}/${L_P}" || die
+ cp -p "${DISTDIR}/${L_P}.jar" "${WORKDIR}/${L_P}/${L_PN}.jar" || die
+ cat <<- EOF > "${WORKDIR}/${L_P}/sbt"
+ #!/bin/sh
+ SBT_OPTS="-Xms512M -Xmx3072M -Xss1M -XX:+CMSClassUnloadingEnabled"
+ java -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${WORKDIR}/${L_P}/sbt-launch.jar" "\$@"
+ EOF
+ cat <<- EOF > "${S}/${P}"
+ #!/bin/sh
+ SBT_OPTS="-Xms512M -Xmx3072M -Xss1M -XX:+CMSClassUnloadingEnabled"
+ java -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${S}/launch/target/sbt-launch.jar" "\$@"
+ EOF
+ chmod u+x "${WORKDIR}/${L_P}/sbt" "${S}/${P}" || die
+
+ # suppress this warning in build.log:
+ # [warn] Credentials file /var/tmp/portage/dev-java/${P}/work/.bintray/.credentials does not exist
+ mkdir -p "${WORKDIR}/.bintray" || die
+ cat <<- EOF > "${WORKDIR}/.bintray/.credentials"
+ realm = Bintray API Realm
+ host = api.bintray.com
+ user =
+ password =
+ EOF
+ fi
+}
+
+src_compile() {
+ if ! use binary; then
+ einfo "=== sbt compile ..."
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true compile || die
+ einfo "=== sbt publishLocal with jdk ${vm_version} ..."
+ cat <<- EOF | "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true || die
+ set every javaVersionPrefix in javaVersionCheck := Some("${vm_version}")
+ publishLocal
+ EOF
+ fi
+}
+
+src_test() {
+ "${S}/${P}" -Dsbt.log.noformat=true test || die
+}
+
+src_install() {
+ # Place sbt-launch.jar at the end of the CLASSPATH
+ java-pkg_dojar $(find "${WORKDIR}"/.ivy2/local -name \*.jar -print | grep -v sbt-launch.jar) \
+ $(find "${WORKDIR}"/.ivy2/local -name sbt-launch.jar -print)
+ local ja="-Dsbt.version=${PV} -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
+ java-pkg_dolauncher sbt --jar sbt-launch.jar --java_args "${ja}"
+}
diff --git a/dev-java/sbt/sbt-0.13.18.ebuild b/dev-java/sbt/sbt-0.13.18.ebuild
deleted file mode 100644
index c4f3a8c3e8bc..000000000000
--- a/dev-java/sbt/sbt-0.13.18.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit java-pkg-2
-
-L_PN="sbt-launch"
-L_P="${L_PN}-${PV}"
-
-DESCRIPTION="sbt is a build tool for Scala and Java projects that aims to do the basics well"
-HOMEPAGE="https://www.scala-sbt.org/"
-EGIT_COMMIT="v${PV}"
-EGIT_REPO_URI="https://github.com/sbt/sbt.git"
-SRC_URI="
- !binary? (
- https://github.com/sbt/sbt/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz
- https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz
- http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/${L_PN}/${PV}/${L_PN}.jar -> ${L_P}.jar
- )
- binary? (
- https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.xz
- )"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="binary"
-
-DEPEND="
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-# test hangs or fails
-RESTRICT="test"
-
-# Note: to bump sbt, some things to try are:
-# 1. remove the https://dev.gentoo.org/~gienah/snapshots/${P}-ivy2-deps.tar.xz
-# https://dev.gentoo.org/~gienah/snapshots/${P}-sbt-deps.tar.xz and
-# binary? ( https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.xz )
-# from SRC_URI
-# 2. Comment the sbt publishLocal line in src_compile.
-# 3. try:
-# FEATURES='noclean -test' emerge -v -1 dev-java/sbt
-# It should fail in src_install since the sbt publishLocal is not done.
-# Check if it downloads more stuff in
-# src_compile to ${WORKDIR}/.ivy2 and ${WORKDIR}/.sbt.
-# 4. If some of the downloads fail, it might be necessary to run the sbt compile
-# again manually to obtain all the dependencies, if so:
-# cd to ${S}
-# export EROOT=/
-# export WORKDIR='/var/tmp/portage/dev-java/${P}/work'
-# export L_P=${P}
-# export PATH="${WORKDIR}/${L_P}:${PATH}"
-# sbt compile
-# cd ${WORKDIR}
-# find .ivy2 .sbt -uid 0 -exec chown portage:portage {} \;
-# 5. cd ${WORKDIR}
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-ivy2-deps.tar.xz .ivy2/cache
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-sbt-deps.tar.xz .sbt
-# Uncomment the sbt publishLocal line in src_compile.
-# 6. It *might* download more dependencies for src_test, however the presence
-# of some of these may cause the src_compile to fail. So download them
-# seperately as root so we can identify the
-# additional files. As root:
-# cd ${S}
-# ${S}/${P} test
-# cd ${WORKDIR}
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-test-deps.tar.xz \
-# $(find .ivy2/cache .sbt -uid 0 -type f -print)
-# Note: It might not download anything in src_test, in which case
-# ${P}-test-deps.tar.xz is not required.
-# 7. Create the binary
-# cd $WORDKIR
-# XZ_OPT=-9 tar --owner=portage --group=portage \
-# -cJf /usr/portage/distfiles/${P}-gentoo-binary.tar.xz ${P} .ivy2/local
-# 9. Undo the earlier temporary edits to the ebuild.
-
-src_unpack() {
- # Unpack tar files only.
- for f in ${A} ; do
- [[ ${f} == *".tar."* ]] && unpack ${f}
- done
-}
-
-src_prepare() {
- default
- if ! use binary; then
- mkdir "${WORKDIR}/${L_P}" || die
- cp -p "${DISTDIR}/${L_P}.jar" "${WORKDIR}/${L_P}/${L_PN}.jar" || die
- cat <<- EOF > "${WORKDIR}/${L_P}/sbt"
- #!/bin/sh
- SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
- java -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${WORKDIR}/${L_P}/sbt-launch.jar" "\$@"
- EOF
- cat <<- EOF > "${S}/${P}"
- #!/bin/sh
- SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
- java -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \${SBT_OPTS} -jar "${S}/launch/target/sbt-launch.jar" "\$@"
- EOF
- chmod u+x "${WORKDIR}/${L_P}/sbt" "${S}/${P}" || die
-
- # suppress this warning in build.log:
- # [warn] Credentials file /var/tmp/portage/dev-java/${P}/work/.bintray/.credentials does not exist
- mkdir -p "${WORKDIR}/.bintray" || die
- cat <<- EOF > "${WORKDIR}/.bintray/.credentials"
- realm = Bintray API Realm
- host = api.bintray.com
- user =
- password =
- EOF
- fi
-}
-
-src_compile() {
- if ! use binary; then
- einfo "=== sbt compile ..."
- "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true compile || die
- einfo "=== sbt publishLocal with jdk $(java-pkg_get-vm-version) ..."
- cat <<- EOF | "${WORKDIR}/${L_P}/sbt" -Dsbt.log.noformat=true || die
- set every javaVersionPrefix in javaVersionCheck := Some("$(java-pkg_get-vm-version)")
- publishLocal
- EOF
- fi
-}
-
-src_test() {
- "${S}/${P}" -Dsbt.log.noformat=true test || die
-}
-
-src_install() {
- # Place sbt-launch.jar at the end of the CLASSPATH
- java-pkg_dojar $(find "${WORKDIR}"/.ivy2/local -name \*.jar -print | grep -v sbt-launch.jar) \
- $(find "${WORKDIR}"/.ivy2/local -name sbt-launch.jar -print)
- local ja="-Dsbt.version=${PV} -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled"
- java-pkg_dolauncher sbt --jar sbt-launch.jar --java_args "${ja}"
-}
diff --git a/dev-java/scala-cli-bin/Manifest b/dev-java/scala-cli-bin/Manifest
new file mode 100644
index 000000000000..97b63d254284
--- /dev/null
+++ b/dev-java/scala-cli-bin/Manifest
@@ -0,0 +1,15 @@
+DIST scala-cli-amd64-1.0.4.gz 33291617 BLAKE2B bd97626e7e95fb6b2a82fd424673078b89f5f4270087c667193e4de1ceff614076e73b728ba1f0334d5f9d7aa6f52c660487d52bf8fb49a786f7fe4ce18a0428 SHA512 447acafd47041cd173a06b5d113cd30adee76a2c161b2efc98b8ece60082d5b98189fd9b3da1f048061d306343cacb9b67566daa78ce8fe54dc82dd90a1e34bc
+DIST scala-cli-amd64-1.1.0.gz 33673708 BLAKE2B 332f5a974949af49914de8fdb3129b0937fbce842616d6fefe16f7aff89baf6be1ba536d0ee6ff9bc1dd2b5ebfa51943bd0c6279ef83b95bd25a337530fa1295 SHA512 ba7ebb321a27e95f786027257c3f50dac1d12e0cc33abde24dc7c5dffb2f57a11c3ea67d92ed487968c49ff9ec3eaf5d1d62065beda5b6fa373d09b9126f4529
+DIST scala-cli-amd64-1.1.1.gz 33754319 BLAKE2B 91fb5e9b828a2c6c6dd984b421bb101ea1ae03c85d94eda14ba79433d29a88cb2850cb376c212f677c1b8167a0a21b320aeb0e4e63a29e6c8502d76babc1543d SHA512 1e0cd5eee280e208090961e4b6d216d472fef360f13e0f4e28412b9a52883d65c97e3fe70c8ce5cf96e6cd866f14b175454175be9df3bdc5c229fb2f121c925a
+DIST scala-cli-amd64-1.2.1.gz 33851353 BLAKE2B 31c92901f970ec2c0a74cb45d94b98e6d8f282c175cf8deb1a806db4b6d2e9a8b2150bca9fc9e373948e5092bf4bb7d5d1145a133d3b1c234d3cbe383ff9a270 SHA512 169c81bee582c6144501e8bd5436bae0bd3447ed89856a4d4763d13d3083ad26d948729b71bea864986f2c676e50855b8fb036d3a69ed0a316e2c6af0f98ef5f
+DIST scala-cli-amd64-1.2.2.gz 33871512 BLAKE2B ef9328b26afb52ada07739539d560239d6ce2ffd72d1e353ce94d45c7358b6789aa0019804e249584ca497d5d15c96caab12eb31fab5b84a14162c00ca30c181 SHA512 02da0915ee140a129f622f973291c98c7dd7b7f16f5a2a5250ac825e09876b616a315fe5e6af43691f43870fa68234efeff73eadd4f6060d2d90fe937302eae7
+DIST scala-cli-arm64-1.0.4.gz 33185346 BLAKE2B 2b0131a56ed3f67fb5d5f25db6c511dc7d9e9128089e6826fa7d859b1457f03a99e290cc63f185820ea849a857f40d667d5db7a378dabcf545cdcdefded6a577 SHA512 3ff1c025a1035aa6a8550de17e85bc5c483007d5f07f03e0d792d6dc9ed1b18eb26909b3c7195fde12056a3b84ffa69dc53c01ec21b34187c1d7188a0a023aaa
+DIST scala-cli-arm64-1.1.0.gz 33575885 BLAKE2B ebccbe86044b4708a356060a16f06bb94df01d261ab7dabe8eba8e644c121864cdee99debf95468d936cbff670413ec47e1ef903a9071b267a61c5fe46738c1a SHA512 6a85529be06a8d43d729c5a795bb0dcdb2680bd7ef3de471fee908e91249401262e8322019c640d4eb45d0a15ed0073ff51b24d61846228f46c36bfb48731408
+DIST scala-cli-arm64-1.1.1.gz 33656505 BLAKE2B b943f370c9375fec5cec3c63628ecd9e416b569ec2d692422f217b2506c104a1c3bb415569581d68c9476bf892b4a087e7b95b2310955dd0f9af52edc90af2e9 SHA512 79836261613bafe4710c1d904ec39e88c1862b3021f7b37ac5004c6079c762e68550522fbb7240e48e7408f844f648ab92c12cb568ebc63bb3e01f1992a7eaf3
+DIST scala-cli-arm64-1.2.1.gz 33769006 BLAKE2B 4bc2c830d17e235a3eba7029bfd018ee4cd12f8ee27a3574b1c2195ab8ad22b79c452a0660fb55f1be99a610be1f4ea38f8e2de622f10277be7f5403b540778a SHA512 90a8f6b4ae2fa90dcdd3c88fdbbd1079db1cbbde80f496da8663223ad79dc4b499b6ae43835067d8fde945d4fb5ed079dec850f688b9d1b62602d186d426f7cb
+DIST scala-cli-arm64-1.2.2.gz 33766128 BLAKE2B d5b2d7ab8157f3874b1cfe0b0647ab30f5dd191337e575056eb758d52eda30871c54b20a08a1cda3e28c51afd744b4b8320aee6aef056b39b98f2534184739ba SHA512 004ca188e4ddd01c0e46277fa514b1c9bd061ea26d4318b8daff3ffaae5bb7cc9f4746509401da19774537c7e56f8a5a7da846cd4b5f90c61a3ab1f8d3ed0493
+DIST scala-cli-non-native-1.0.4 7553232 BLAKE2B 9299b20dddec80d12e738af4b283e816de5bae23262510146cd33a9b175f2a343f52932fbd3254974bd4219d2903f32772409f234423d3a027b6b0f02268e584 SHA512 4e5281ef7f8a886ad79746477d852f485ccad317568a64ee513e691dcd9a9121c2aed51f6170b959f0226fb81efe9aa1f8ecf1d94a84a0b387c349adfb756762
+DIST scala-cli-non-native-1.1.0 7728727 BLAKE2B 05deb93b91029721a21bac729aa9b370e05909e67bbade921e00d09c3a37e851e519188bff73dc614c3f5768834ae56f94623347735e756a6bcb0c4c81c8713c SHA512 13e426915794df757b6eb029d2545316bd9f4b9ba6f58cf59a546227d6997741cf681ce0c5e721e8e95cb9e420702f2d28f004df1780637dc9b39fd3bc4c884a
+DIST scala-cli-non-native-1.1.1 7779964 BLAKE2B 08849ce4a6fbf1e6eb2e4fafd2e29522e535c0795d6f1acbcd25ec4523d14dcae4a746f3729786db8f62a3770e6fdbd78a76477b182b32945454ac19a2f8217c SHA512 61c2a1a325f83e19102cd2f5d6b89d37b9914d64f86da6218258f064a6a8e5ab927d28b278363316446611e2cbdc8e4687616ea2b001da00ecbafb4207eabeb2
+DIST scala-cli-non-native-1.2.1 7836408 BLAKE2B a7c191020a65a4420ef7cc9d8fe5f9c6d1548c1cfb14dea94c0d9a798f608c038083bb678bd1a4fbdc9bd3de58f02a11e970cfebec4ac755f7f12af21eeb4dbc SHA512 d889ad3fa96953423fc1d948b6e260f55ffc4234d6e9da05299afe0a6cbc2b66c42a7a65113f887d1bf41a699679d09e02aed6686150551d1e1171d7c1c7331b
+DIST scala-cli-non-native-1.2.2 7837019 BLAKE2B 799ed83805ba767b687cf9a041a3e23f008e20e3ca55b8c52a9361c0b2465141abb7c17ca7dca59c9307af5a5a07a0cfe0d8035eea14a2adf2580913d67d6a10 SHA512 40aa43ee601c52238989a81884b6acc7a023599abb561bed1c9d31dff6053eff0f3477097a228bc30aab4df22d81b10fbbb64b5557d3067b4715c821c4eacb3e
diff --git a/dev-java/scala-cli-bin/metadata.xml b/dev-java/scala-cli-bin/metadata.xml
new file mode 100644
index 000000000000..27dc5e6617c8
--- /dev/null
+++ b/dev-java/scala-cli-bin/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type='person'>
+ <email>flow@gentoo.org</email>
+ <name>Florian Schmaus</name>
+ </maintainer>
+ <upstream>
+ <changelog>https://github.com/VirtusLab/scala-cli/releases</changelog>
+ <remote-id type="github">VirtusLab/scala-cli</remote-id>
+ <bugs-to>https://github.com/VirtusLab/scala-cli/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/scala-cli-bin/scala-cli-bin-1.0.4.ebuild b/dev-java/scala-cli-bin/scala-cli-bin-1.0.4.ebuild
new file mode 100644
index 000000000000..67f4eefef2f4
--- /dev/null
+++ b/dev-java/scala-cli-bin/scala-cli-bin-1.0.4.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+UPSTREAM_PV=${PV/_/-}
+UPSTREAM_PV=${UPSTREAM_PV/rc/RC}
+
+DESCRIPTION="CLI to interact with Scala and Java"
+HOMEPAGE="https://scala-cli.virtuslab.org/"
+SRC_URI="
+ !amd64? ( !arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli
+ -> scala-cli-non-native-${UPSTREAM_PV}
+ ) )
+ amd64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-x86_64-pc-linux.gz
+ -> scala-cli-amd64-${UPSTREAM_PV}.gz
+ )
+ arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-aarch64-pc-linux.gz
+ -> scala-cli-arm64-${UPSTREAM_PV}.gz
+ )
+"
+
+KEYWORDS="amd64 ~arm64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+S="${WORKDIR}"
+
+# A JRE is not strictly required if native images of scala-cli are used
+# (amd64, arm64). However we may want a system JRE anyway, and having JRE
+# in RDEPEND reduces the chances that scala-cli needs to install one
+# for the user.
+RDEPEND="
+ >=virtual/jre-11
+ sys-libs/zlib
+"
+BDEPEND="!amd64? ( !arm64? ( >=virtual/jre-11 ) )"
+
+QA_TEXTRELS="*"
+QA_FLAGS_IGNORED="/usr/bin/scala-cli"
+
+src_prepare() {
+ default
+
+ if use amd64; then
+ mv scala-cli-amd64-${UPSTREAM_PV} scala-cli || die
+ elif use arm64; then
+ mv scala-cli-arm64-${UPSTREAM_PV} scala-cli || die
+ else
+ mv scala-cli-non-native-${UPSTREAM_PV} scala-cli || die
+ fi
+
+ chmod +x scala-cli || die
+}
+
+src_compile() {
+ for shell in bash zsh; do
+ ./scala-cli install-completions \
+ --shell ${shell} \
+ --env \
+ --output "${S}" \
+ > ${shell}-completion || die
+ done
+}
+
+src_install() {
+ dobin scala-cli
+
+ newbashcomp bash-completion scala-cli
+
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_scala-cli
+}
diff --git a/dev-java/scala-cli-bin/scala-cli-bin-1.1.0.ebuild b/dev-java/scala-cli-bin/scala-cli-bin-1.1.0.ebuild
new file mode 100644
index 000000000000..d73c7e68ad79
--- /dev/null
+++ b/dev-java/scala-cli-bin/scala-cli-bin-1.1.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+UPSTREAM_PV=${PV/_/-}
+UPSTREAM_PV=${UPSTREAM_PV/rc/RC}
+
+DESCRIPTION="CLI to interact with Scala and Java"
+HOMEPAGE="https://scala-cli.virtuslab.org/"
+SRC_URI="
+ !amd64? ( !arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli
+ -> scala-cli-non-native-${UPSTREAM_PV}
+ ) )
+ amd64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-x86_64-pc-linux.gz
+ -> scala-cli-amd64-${UPSTREAM_PV}.gz
+ )
+ arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-aarch64-pc-linux.gz
+ -> scala-cli-arm64-${UPSTREAM_PV}.gz
+ )
+"
+
+KEYWORDS="amd64 ~arm64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+S="${WORKDIR}"
+
+# A JRE is not strictly required if native images of scala-cli are used
+# (amd64, arm64). However we may want a system JRE anyway, and having JRE
+# in RDEPEND reduces the chances that scala-cli needs to install one
+# for the user.
+RDEPEND="
+ >=virtual/jre-11
+ sys-libs/zlib
+"
+BDEPEND="!amd64? ( !arm64? ( >=virtual/jre-11 ) )"
+
+QA_TEXTRELS="*"
+QA_FLAGS_IGNORED="/usr/bin/scala-cli"
+
+src_prepare() {
+ default
+
+ if use amd64; then
+ mv scala-cli-amd64-${UPSTREAM_PV} scala-cli || die
+ elif use arm64; then
+ mv scala-cli-arm64-${UPSTREAM_PV} scala-cli || die
+ else
+ mv scala-cli-non-native-${UPSTREAM_PV} scala-cli || die
+ fi
+
+ chmod +x scala-cli || die
+}
+
+src_compile() {
+ for shell in bash zsh; do
+ ./scala-cli install-completions \
+ --shell ${shell} \
+ --env \
+ --output "${S}" \
+ > ${shell}-completion || die
+ done
+}
+
+src_install() {
+ dobin scala-cli
+
+ newbashcomp bash-completion scala-cli
+
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_scala-cli
+}
diff --git a/dev-java/scala-cli-bin/scala-cli-bin-1.1.1.ebuild b/dev-java/scala-cli-bin/scala-cli-bin-1.1.1.ebuild
new file mode 100644
index 000000000000..dc0659cfd5ec
--- /dev/null
+++ b/dev-java/scala-cli-bin/scala-cli-bin-1.1.1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+UPSTREAM_PV=${PV/_/-}
+UPSTREAM_PV=${UPSTREAM_PV/rc/RC}
+
+DESCRIPTION="CLI to interact with Scala and Java"
+HOMEPAGE="https://scala-cli.virtuslab.org/"
+SRC_URI="
+ !amd64? ( !arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli
+ -> scala-cli-non-native-${UPSTREAM_PV}
+ ) )
+ amd64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-x86_64-pc-linux.gz
+ -> scala-cli-amd64-${UPSTREAM_PV}.gz
+ )
+ arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-aarch64-pc-linux.gz
+ -> scala-cli-arm64-${UPSTREAM_PV}.gz
+ )
+"
+
+KEYWORDS="~amd64 ~arm64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+S="${WORKDIR}"
+
+# A JRE is not strictly required if native images of scala-cli are used
+# (amd64, arm64). However we may want a system JRE anyway, and having JRE
+# in RDEPEND reduces the chances that scala-cli needs to install one
+# for the user.
+RDEPEND="
+ >=virtual/jre-11
+ sys-libs/zlib
+"
+BDEPEND="!amd64? ( !arm64? ( >=virtual/jre-11 ) )"
+
+QA_TEXTRELS="*"
+QA_FLAGS_IGNORED="/usr/bin/scala-cli"
+
+src_prepare() {
+ default
+
+ if use amd64; then
+ mv scala-cli-amd64-${UPSTREAM_PV} scala-cli || die
+ elif use arm64; then
+ mv scala-cli-arm64-${UPSTREAM_PV} scala-cli || die
+ else
+ mv scala-cli-non-native-${UPSTREAM_PV} scala-cli || die
+ fi
+
+ chmod +x scala-cli || die
+}
+
+src_compile() {
+ for shell in bash zsh; do
+ ./scala-cli install-completions \
+ --shell ${shell} \
+ --env \
+ --output "${S}" \
+ > ${shell}-completion || die
+ done
+}
+
+src_install() {
+ dobin scala-cli
+
+ newbashcomp bash-completion scala-cli
+
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_scala-cli
+}
diff --git a/dev-java/scala-cli-bin/scala-cli-bin-1.2.1.ebuild b/dev-java/scala-cli-bin/scala-cli-bin-1.2.1.ebuild
new file mode 100644
index 000000000000..dc0659cfd5ec
--- /dev/null
+++ b/dev-java/scala-cli-bin/scala-cli-bin-1.2.1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+UPSTREAM_PV=${PV/_/-}
+UPSTREAM_PV=${UPSTREAM_PV/rc/RC}
+
+DESCRIPTION="CLI to interact with Scala and Java"
+HOMEPAGE="https://scala-cli.virtuslab.org/"
+SRC_URI="
+ !amd64? ( !arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli
+ -> scala-cli-non-native-${UPSTREAM_PV}
+ ) )
+ amd64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-x86_64-pc-linux.gz
+ -> scala-cli-amd64-${UPSTREAM_PV}.gz
+ )
+ arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-aarch64-pc-linux.gz
+ -> scala-cli-arm64-${UPSTREAM_PV}.gz
+ )
+"
+
+KEYWORDS="~amd64 ~arm64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+S="${WORKDIR}"
+
+# A JRE is not strictly required if native images of scala-cli are used
+# (amd64, arm64). However we may want a system JRE anyway, and having JRE
+# in RDEPEND reduces the chances that scala-cli needs to install one
+# for the user.
+RDEPEND="
+ >=virtual/jre-11
+ sys-libs/zlib
+"
+BDEPEND="!amd64? ( !arm64? ( >=virtual/jre-11 ) )"
+
+QA_TEXTRELS="*"
+QA_FLAGS_IGNORED="/usr/bin/scala-cli"
+
+src_prepare() {
+ default
+
+ if use amd64; then
+ mv scala-cli-amd64-${UPSTREAM_PV} scala-cli || die
+ elif use arm64; then
+ mv scala-cli-arm64-${UPSTREAM_PV} scala-cli || die
+ else
+ mv scala-cli-non-native-${UPSTREAM_PV} scala-cli || die
+ fi
+
+ chmod +x scala-cli || die
+}
+
+src_compile() {
+ for shell in bash zsh; do
+ ./scala-cli install-completions \
+ --shell ${shell} \
+ --env \
+ --output "${S}" \
+ > ${shell}-completion || die
+ done
+}
+
+src_install() {
+ dobin scala-cli
+
+ newbashcomp bash-completion scala-cli
+
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_scala-cli
+}
diff --git a/dev-java/scala-cli-bin/scala-cli-bin-1.2.2.ebuild b/dev-java/scala-cli-bin/scala-cli-bin-1.2.2.ebuild
new file mode 100644
index 000000000000..dc0659cfd5ec
--- /dev/null
+++ b/dev-java/scala-cli-bin/scala-cli-bin-1.2.2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+UPSTREAM_PV=${PV/_/-}
+UPSTREAM_PV=${UPSTREAM_PV/rc/RC}
+
+DESCRIPTION="CLI to interact with Scala and Java"
+HOMEPAGE="https://scala-cli.virtuslab.org/"
+SRC_URI="
+ !amd64? ( !arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli
+ -> scala-cli-non-native-${UPSTREAM_PV}
+ ) )
+ amd64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-x86_64-pc-linux.gz
+ -> scala-cli-amd64-${UPSTREAM_PV}.gz
+ )
+ arm64? (
+ https://github.com/VirtusLab/scala-cli/releases/download/v${UPSTREAM_PV}/scala-cli-aarch64-pc-linux.gz
+ -> scala-cli-arm64-${UPSTREAM_PV}.gz
+ )
+"
+
+KEYWORDS="~amd64 ~arm64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+S="${WORKDIR}"
+
+# A JRE is not strictly required if native images of scala-cli are used
+# (amd64, arm64). However we may want a system JRE anyway, and having JRE
+# in RDEPEND reduces the chances that scala-cli needs to install one
+# for the user.
+RDEPEND="
+ >=virtual/jre-11
+ sys-libs/zlib
+"
+BDEPEND="!amd64? ( !arm64? ( >=virtual/jre-11 ) )"
+
+QA_TEXTRELS="*"
+QA_FLAGS_IGNORED="/usr/bin/scala-cli"
+
+src_prepare() {
+ default
+
+ if use amd64; then
+ mv scala-cli-amd64-${UPSTREAM_PV} scala-cli || die
+ elif use arm64; then
+ mv scala-cli-arm64-${UPSTREAM_PV} scala-cli || die
+ else
+ mv scala-cli-non-native-${UPSTREAM_PV} scala-cli || die
+ fi
+
+ chmod +x scala-cli || die
+}
+
+src_compile() {
+ for shell in bash zsh; do
+ ./scala-cli install-completions \
+ --shell ${shell} \
+ --env \
+ --output "${S}" \
+ > ${shell}-completion || die
+ done
+}
+
+src_install() {
+ dobin scala-cli
+
+ newbashcomp bash-completion scala-cli
+
+ insinto /usr/share/zsh/site-functions
+ doins zsh/_scala-cli
+}
diff --git a/dev-java/scram/Manifest b/dev-java/scram/Manifest
new file mode 100644
index 000000000000..5ba3c94824d5
--- /dev/null
+++ b/dev-java/scram/Manifest
@@ -0,0 +1 @@
+DIST scram-2.1.tar.bz2 52442 BLAKE2B e9ec2367251770c4adb3d4bf62702c8ca13264fd12270dfb4f138c740536eb508a383486a81e1ab2bb0f8d4792642d033180c0e43ac287917543249fd16c8a76 SHA512 e2807d2c4b7984b5d9f53cb5ea6f9b2c2d5b48b5e695f25fb775cb3f22672851a9299cfe95912f109205c74817cf9f2fd706f8d49e473257e2571f409ec34044
diff --git a/dev-java/scram/metadata.xml b/dev-java/scram/metadata.xml
new file mode 100644
index 000000000000..0feb6155dbc1
--- /dev/null
+++ b/dev-java/scram/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="gitlab">ongresinc/scram</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/scram/scram-2.1.ebuild b/dev-java/scram/scram-2.1.ebuild
new file mode 100644
index 000000000000..6e7eeccf9430
--- /dev/null
+++ b/dev-java/scram/scram-2.1.ebuild
@@ -0,0 +1,81 @@
+# 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.ongres.scram:client:2.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Java Implementation of the Salted Challenge Response Authentication Mechanism"
+HOMEPAGE="https://gitlab.com/ongresinc/scram"
+SRC_URI="https://gitlab.com/ongresinc/${PN}/-/archive/${PV}/${P}.tar.bz2"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+CP_DEPEND="dev-java/saslprep:0"
+
+DEPEND="${CP_DEPEND}
+ dev-java/findbugs-annotations:0
+ dev-java/jsr305:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/stringprep:0 )
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( CHANGELOG NOTICE README.md )
+
+JAVADOC_CLASSPATH="
+ findbugs-annotations
+ saslprep
+"
+JAVADOC_SRC_DIRS=(
+ "common/src/main/java"
+ "client/src/main/java"
+)
+JAVA_CLASSPATH_EXTRA="findbugs-annotations,jsr305"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,stringprep"
+
+src_compile() {
+ einfo "Compiling module common"
+ JAVA_SRC_DIR="common/src/main/java"
+ JAVA_JAR_FILENAME="common.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":common.jar"
+ rm -r target || die
+
+ einfo "Compiling module client"
+ JAVA_SRC_DIR="client/src/main/java"
+ JAVA_JAR_FILENAME="client.jar"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":client.jar"
+ rm -r target || die
+
+ use doc && ejavadoc
+}
+
+src_test() {
+ cp -r {common,client}/src/test/java || die
+
+ einfo "Testing module cwclientcommon"
+ JAVA_TEST_SRC_DIR="client/src/test/java"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ JAVA_JAR_FILENAME="client.jar"
+ java-pkg-simple_src_install
+ java-pkg_dojar "common.jar"
+ if use source; then
+ java-pkg_dosrc "common/src/main/java/*"
+ java-pkg_dosrc "client/src/main/java/*"
+ fi
+}
diff --git a/dev-java/shared-objects/Manifest b/dev-java/shared-objects/Manifest
deleted file mode 100644
index 4aa783d96732..000000000000
--- a/dev-java/shared-objects/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST shared-objects-1.4.tar.gz 45304 BLAKE2B da6e3a117e4fd8c626d22860a341eef3d48171d6259c4c22d3a386b2a1177af70218eaad928c10d479bc31d4226f9521fd07c8ac3e530f9f28e45a92a7f93b6c SHA512 f051458244a88e44c249167bfad0f88f0efa971fdadc578efcb83ff5ea805356fc68250bb4511ec181b5a062b4aba69463f212e913cf96ba98bdd3966e219f39
diff --git a/dev-java/shared-objects/metadata.xml b/dev-java/shared-objects/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/shared-objects/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/shared-objects/shared-objects-1.4-r4.ebuild b/dev-java/shared-objects/shared-objects-1.4-r4.ebuild
deleted file mode 100644
index f68f79559231..000000000000
--- a/dev-java/shared-objects/shared-objects-1.4-r4.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Core factory for maximal sharing of arbitrary objects"
-HOMEPAGE="http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ATermLibrary"
-SRC_URI="http://www.cwi.nl/projects/MetaEnv/shared-objects/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="shared"
-
-src_configure() { :; }
diff --git a/dev-java/shrinkwrap-api/Manifest b/dev-java/shrinkwrap-api/Manifest
new file mode 100644
index 000000000000..34653394c3c9
--- /dev/null
+++ b/dev-java/shrinkwrap-api/Manifest
@@ -0,0 +1 @@
+DIST shrinkwrap-1.2.6.tar.gz 987090 BLAKE2B 0c837b6fae6c3e9c7155b6ddf1923b14320d39ee3fd45af5436f967535e8c3ab290b62b6ca67aafc146558466e8c161fa6527055e48a55b5456fce728c5618f9 SHA512 8d91e265f60f1ead931166da836106412ecb861112a65e4976f63df0e351d7cb2d1f64bc2633c5df1052eb39541906ac17d6c886d7d25cb1600799d17637a58c
diff --git a/dev-java/shrinkwrap-api/metadata.xml b/dev-java/shrinkwrap-api/metadata.xml
new file mode 100644
index 000000000000..ea5416922116
--- /dev/null
+++ b/dev-java/shrinkwrap-api/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">shrinkwrap/shrinkwrap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/shrinkwrap-api/shrinkwrap-api-1.2.6.ebuild b/dev-java/shrinkwrap-api/shrinkwrap-api-1.2.6.ebuild
new file mode 100644
index 000000000000..ce072404e4f2
--- /dev/null
+++ b/dev-java/shrinkwrap-api/shrinkwrap-api-1.2.6.ebuild
@@ -0,0 +1,33 @@
+# 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.jboss.shrinkwrap:shrinkwrap-api:1.2.6"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Client View of the ShrinkWrap Project"
+HOMEPAGE="https://arquillian.org/modules/shrinkwrap-shrinkwrap/"
+SRC_URI="https://github.com/shrinkwrap/shrinkwrap/archive/${PV}.tar.gz -> shrinkwrap-${PV}.tar.gz"
+S="${WORKDIR}/shrinkwrap-${PV}/api"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Restrict to jdk:1.8 - otherwhise one test would fail:
+# 1) shouldCreateDefensiveCopyOfURLOnConstruction(org.jboss.shrinkwrap.api.asset.UrlAssetTestCase)
+# java.lang.NoSuchMethodException: java.net.URL.set(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String)
+# at java.base/java.lang.Class.getDeclaredMethod(Class.java:2675)
+# at org.jboss.shrinkwrap.api.asset.UrlAssetTestCase.mutateURL(UrlAssetTestCase.java:90)
+# at org.jboss.shrinkwrap.api.asset.UrlAssetTestCase.shouldCreateDefensiveCopyOfURLOnConstruction(UrlAssetTestCase.java:68)
+DEPEND="virtual/jdk:1.8"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/shrinkwrap-impl-base/Manifest b/dev-java/shrinkwrap-impl-base/Manifest
new file mode 100644
index 000000000000..34653394c3c9
--- /dev/null
+++ b/dev-java/shrinkwrap-impl-base/Manifest
@@ -0,0 +1 @@
+DIST shrinkwrap-1.2.6.tar.gz 987090 BLAKE2B 0c837b6fae6c3e9c7155b6ddf1923b14320d39ee3fd45af5436f967535e8c3ab290b62b6ca67aafc146558466e8c161fa6527055e48a55b5456fce728c5618f9 SHA512 8d91e265f60f1ead931166da836106412ecb861112a65e4976f63df0e351d7cb2d1f64bc2633c5df1052eb39541906ac17d6c886d7d25cb1600799d17637a58c
diff --git a/dev-java/shrinkwrap-impl-base/metadata.xml b/dev-java/shrinkwrap-impl-base/metadata.xml
new file mode 100644
index 000000000000..ea5416922116
--- /dev/null
+++ b/dev-java/shrinkwrap-impl-base/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">shrinkwrap/shrinkwrap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/shrinkwrap-impl-base/shrinkwrap-impl-base-1.2.6.ebuild b/dev-java/shrinkwrap-impl-base/shrinkwrap-impl-base-1.2.6.ebuild
new file mode 100644
index 000000000000..c06f03d3e0e7
--- /dev/null
+++ b/dev-java/shrinkwrap-impl-base/shrinkwrap-impl-base-1.2.6.ebuild
@@ -0,0 +1,68 @@
+# 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.jboss.shrinkwrap:shrinkwrap-impl-base:1.2.6"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Common Base for Implementations of the ShrinkWrap Project"
+HOMEPAGE="https://arquillian.org/modules/shrinkwrap-shrinkwrap/"
+SRC_URI="https://github.com/shrinkwrap/shrinkwrap/archive/${PV}.tar.gz -> shrinkwrap-${PV}.tar.gz"
+S="${WORKDIR}/shrinkwrap-${PV}/impl-base"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/jakarta-activation:1
+ ~dev-java/shrinkwrap-api-${PV}:0
+ ~dev-java/shrinkwrap-spi-${PV}:0
+"
+
+# Restrict to jdk:1.8 - otherwise there are 8 test failures:
+# java.lang.IllegalArgumentException:
+# /java.base/java/lang/String.class was not found in any available ClassLoaders
+# testAddResourceStringTargetResourceFromJar(DynamicContainerTestBase.java:599)
+# testAddManifestStringTargetResourceFromJar(DynamicContainerTestBase.java:586)
+DEPEND="
+ ${CP_DEPEND}
+ virtual/jdk:1.8
+"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXCLUDES=(
+ org.jboss.shrinkwrap.impl.base.test.dummy.DummyInterfaceForTest
+ org.jboss.shrinkwrap.impl.base.test.dummy.DummyClassForTest
+ org.jboss.shrinkwrap.impl.base.TestSecurityActions
+ org.jboss.shrinkwrap.impl.base.TestIOUtil
+ org.jboss.shrinkwrap.impl.base.asset.DirectoryAssetTestCase
+)
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,shrinkwrap-api,shrinkwrap-spi"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # 1) importFromNonZipFileThrowsException(org.jboss.shrinkwrap.impl.base.ShrinkWrapTestCase)
+ # java.lang.Exception: Unexpected exception, expected<java.lang.IllegalArgumentException>
+ # but was<java.lang.NullPointerException>
+ # Caused by: java.lang.NullPointerException
+ # at org.jboss.shrinkwrap.impl.base.ShrinkWrapTestCase.importFromNonZipFileThrowsException(ShrinkWrapTestCase.java:373)
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/importFromNonZipFileThrowsException()/i @Ignore' \
+ -i src/test/java/org/jboss/shrinkwrap/impl/base/ShrinkWrapTestCase.java || die
+
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/shrinkwrap-spi/Manifest b/dev-java/shrinkwrap-spi/Manifest
new file mode 100644
index 000000000000..34653394c3c9
--- /dev/null
+++ b/dev-java/shrinkwrap-spi/Manifest
@@ -0,0 +1 @@
+DIST shrinkwrap-1.2.6.tar.gz 987090 BLAKE2B 0c837b6fae6c3e9c7155b6ddf1923b14320d39ee3fd45af5436f967535e8c3ab290b62b6ca67aafc146558466e8c161fa6527055e48a55b5456fce728c5618f9 SHA512 8d91e265f60f1ead931166da836106412ecb861112a65e4976f63df0e351d7cb2d1f64bc2633c5df1052eb39541906ac17d6c886d7d25cb1600799d17637a58c
diff --git a/dev-java/shrinkwrap-spi/metadata.xml b/dev-java/shrinkwrap-spi/metadata.xml
new file mode 100644
index 000000000000..ea5416922116
--- /dev/null
+++ b/dev-java/shrinkwrap-spi/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">shrinkwrap/shrinkwrap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/shrinkwrap-spi/shrinkwrap-spi-1.2.6.ebuild b/dev-java/shrinkwrap-spi/shrinkwrap-spi-1.2.6.ebuild
new file mode 100644
index 000000000000..309ee2cc69c9
--- /dev/null
+++ b/dev-java/shrinkwrap-spi/shrinkwrap-spi-1.2.6.ebuild
@@ -0,0 +1,32 @@
+# 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.jboss.shrinkwrap:shrinkwrap-spi:1.2.6"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Generic Service Provider Contract of the ShrinkWrap Project"
+HOMEPAGE="https://arquillian.org/modules/shrinkwrap-shrinkwrap/"
+SRC_URI="https://github.com/shrinkwrap/shrinkwrap/archive/${PV}.tar.gz -> shrinkwrap-${PV}.tar.gz"
+S="${WORKDIR}/shrinkwrap-${PV}/spi"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="~dev-java/shrinkwrap-api-${PV}:0"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ ${CDP_EPEND}
+ >=virtual/jre-1.8:*
+"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/simplyhtml/Manifest b/dev-java/simplyhtml/Manifest
deleted file mode 100644
index 7709e76fd136..000000000000
--- a/dev-java/simplyhtml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST SimplyHTML_src_0_13_1.tar.gz 473258 BLAKE2B b3d517d3f9388e9674ace860038e7ac001aabe3b8b1d1af4b8a0a0e883216bc5de3d1269f13f275dc4b4cb65b0742fc6ae2284f3ceaafd9067c2cb0582e5e959 SHA512 e37140ef7461f2c741f43ce14518e224cb41ddb42c4d396f8f934476a5fbbe4d121950dc3186ba1ae603068e81832a92240e99cd25d3778574c0d3f370d501ac
diff --git a/dev-java/simplyhtml/metadata.xml b/dev-java/simplyhtml/metadata.xml
deleted file mode 100644
index 03b71de3b0e9..000000000000
--- a/dev-java/simplyhtml/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">simplyhtml</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/simplyhtml/simplyhtml-0.13.1-r1.ebuild b/dev-java/simplyhtml/simplyhtml-0.13.1-r1.ebuild
deleted file mode 100644
index 23e4f7f92a6d..000000000000
--- a/dev-java/simplyhtml/simplyhtml-0.13.1-r1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-inherit versionator java-pkg-2 java-ant-2
-
-MY_PN="SimplyHTML"
-MY_PV="$(replace_all_version_separators _)"
-
-DESCRIPTION="Text processing application based on HTML and CSS files"
-HOMEPAGE="http://simplyhtml.sourceforge.net"
-SRC_URI="mirror://sourceforge/${PN}/${MY_PN}_src_${MY_PV}.tar.gz"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE=""
-
-CDEPEND="
- dev-java/javahelp:0
- dev-java/gnu-regexp:1"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-JAVA_PKG_FILTER_COMPILER="jikes"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-EANT_GENTOO_CLASSPATH="
- javahelp
- gnu-regexp-1
-"
-EANT_BUILD_TARGET="jar"
-EANT_BUILD_XML="src/build.xml"
-
-java_prepare() {
- # Avoid copying lib jars.
- sed -i '/copy file/d' src/build.xml || die
-}
-
-src_install() {
- local my_jars=(
- "${MY_PN}.jar"
- "${MY_PN}Help.jar"
- )
-
- for my_jar in "${my_jars[@]}"; do
- java-pkg_dojar "dist/lib/${my_jar}"
- done
-
- dodoc readme.txt
- use doc && java-pkg_dojavadoc dist/api
- use source && java-pkg_dosrc src/com src/de
-}
diff --git a/dev-java/sjsxp/Manifest b/dev-java/sjsxp/Manifest
index 5d17a4835cfc..57ebf6627671 100644
--- a/dev-java/sjsxp/Manifest
+++ b/dev-java/sjsxp/Manifest
@@ -1 +1 @@
-DIST sjsxp-1.0.1.tar.bz2 414706 BLAKE2B 622cfe0e0c0084afd048dff6bf3fc0ffe086f41036fee549059d7fa6602c682fec5815960791d726079b1f0701502a60eed8701125da44a1d0ed4a923c819d62 SHA512 0e8e8841d87400f9978b8e053f3658f14f2c1b85007bc431681c6489ae78972cd892021821b00a37ba06098ba1bdf6954a3c294cddbb69e5cdb7936f4736daa5
+DIST sjsxp-1.0.2-sources.jar 531127 BLAKE2B d3088b89537027d8b6b5dd2a07af7713ada83fad36ffa0dee5a882db67ff20389d72185376a3da491258e5d76743ff2efcfa7f76a032b849f7f74e31ecdc4ac6 SHA512 bc6f051e72b9785d7f1352464ed620282c8e4e190f66c9825e92b9409f21f5dc046a6fa678808dbffa2f8dfdb47d622dce7699c811a2afd60e57007a7b43f17a
diff --git a/dev-java/sjsxp/metadata.xml b/dev-java/sjsxp/metadata.xml
index 952a4b9b605c..75321cfb5598 100644
--- a/dev-java/sjsxp/metadata.xml
+++ b/dev-java/sjsxp/metadata.xml
@@ -1,8 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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/sjsxp/sjsxp-1.0.1-r3.ebuild b/dev-java/sjsxp/sjsxp-1.0.1-r3.ebuild
deleted file mode 100644
index b95fc5c021f3..000000000000
--- a/dev-java/sjsxp/sjsxp-1.0.1-r3.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Sun Java Streaming XML Parser"
-HOMEPAGE="http://sjsxp.dev.java.net/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-LICENSE="bea.ri.jsr173"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="dev-java/xpp3:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/zephyr"
-
-JAVA_GENTOO_CLASSPATH="xpp3"
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
- rm -rv tests || die
-}
diff --git a/dev-java/sjsxp/sjsxp-1.0.2.ebuild b/dev-java/sjsxp/sjsxp-1.0.2.ebuild
new file mode 100644
index 000000000000..c1ac1a596f49
--- /dev/null
+++ b/dev-java/sjsxp/sjsxp-1.0.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom sjsxp-1.0.2.pom --download-uri https://repo1.maven.org/maven2/com/sun/xml/stream/sjsxp/1.0.2/sjsxp-1.0.2.jar --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild sjsxp-1.0.2.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.sun.xml.stream:sjsxp:1.0.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Sun Java Streaming XML Parser (SJSXP) is the implementation of JSR 173"
+HOMEPAGE="https://sjsxp.java.net/"
+SRC_URI="https://repo1.maven.org/maven2/com/sun/xml/stream/${PN}/${PV}/${P}-sources.jar"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: ${P}.pom
+# javax.xml.stream:stax-api:1.0 -> !!!groupId-not-found!!!
+
+CP_DEPEND="dev-java/xpp3:0"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
+
+# JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/slf4j-api/Manifest b/dev-java/slf4j-api/Manifest
index 483c3d5a5aac..502a0b5b52a6 100644
--- a/dev-java/slf4j-api/Manifest
+++ b/dev-java/slf4j-api/Manifest
@@ -1 +1 @@
-DIST slf4j-1.7.30-sources.tar.gz 2272772 BLAKE2B c6692a20406983fa333bdb27bf8da599140d7d37fe55da6dfa2c2aff1825ee57c9d6b7bf0015e4b41b3c15ac0971559b3dd4bb5244e5393cd209ee26fac5e93d SHA512 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/slf4j-api/metadata.xml b/dev-java/slf4j-api/metadata.xml
index 801406cdb66a..c3b9d69d36cd 100644
--- a/dev-java/slf4j-api/metadata.xml
+++ b/dev-java/slf4j-api/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<upstream>
- <doc>http://www.slf4j.org/docs.html</doc>
- <bugs-to>http://www.slf4j.org/bug-reporting.html</bugs-to>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/slf4j-api/slf4j-api-1.7.30-r1.ebuild b/dev-java/slf4j-api/slf4j-api-1.7.30-r1.ebuild
deleted file mode 100644
index ef4a91e9b8c8..000000000000
--- a/dev-java/slf4j-api/slf4j-api-1.7.30-r1.ebuild
+++ /dev/null
@@ -1,55 +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 slf4j-v_1.7.30/slf4j-api/pom.xml --download-uri https://github.com/qos-ch/slf4j/archive/refs/tags/v_1.7.30.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild slf4j-api-1.7.30.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.slf4j:slf4j-api:1.7.30"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="The slf4j API"
-HOMEPAGE="https://www.slf4j.org"
-SRC_URI="https://github.com/qos-ch/slf4j/archive/refs/tags/v_${PV}.tar.gz -> slf4j-${PV}-sources.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
-
-DEPEND="
- >=virtual/jdk-1.8:*
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-BDEPEND="app-arch/zip"
-
-S="${WORKDIR}/slf4j-v_${PV}/${PN}"
-
-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_EXCLUDES=(
- # java.lang.InstantiationException - not run by upstream anyway
- "org.slf4j.helpers.MultithreadedInitializationTest"
-)
-
-src_prepare() {
- default
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-
- # remove org/slf4j/impl/ from the jar file
- zip -d ${PN}.jar org/slf4j/impl/\* || die "Failed to remove impl files"
-}
diff --git a/dev-java/slf4j-api/slf4j-api-2.0.3.ebuild b/dev-java/slf4j-api/slf4j-api-2.0.3.ebuild
new file mode 100644
index 000000000000..db91290c8a95
--- /dev/null
+++ b/dev-java/slf4j-api/slf4j-api-2.0.3.ebuild
@@ -0,0 +1,40 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild slf4j-api-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:slf4j-api:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="The slf4j API"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/zip"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_SRC_DIR=( src/main/java{,9} )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+JAVA_TEST_EXCLUDES=(
+ # java.lang.InstantiationException - not run by upstream anyway
+ org.slf4j.testHarness.MultithreadedInitializationTest
+)
diff --git a/dev-java/slf4j-ext/Manifest b/dev-java/slf4j-ext/Manifest
new file mode 100644
index 000000000000..502a0b5b52a6
--- /dev/null
+++ b/dev-java/slf4j-ext/Manifest
@@ -0,0 +1 @@
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/slf4j-ext/metadata.xml b/dev-java/slf4j-ext/metadata.xml
new file mode 100644
index 000000000000..c3b9d69d36cd
--- /dev/null
+++ b/dev-java/slf4j-ext/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/slf4j-ext/slf4j-ext-2.0.3.ebuild b/dev-java/slf4j-ext/slf4j-ext-2.0.3.ebuild
new file mode 100644
index 000000000000..103d621e2584
--- /dev/null
+++ b/dev-java/slf4j-ext/slf4j-ext-2.0.3.ebuild
@@ -0,0 +1,61 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild slf4j-ext-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:slf4j-ext:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Extensions to the SLF4J API"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# ch.qos.cal10n:cal10n-api:0.8.1 -> >=dev-java/cal10n-0.8.1:0
+# org.javassist:javassist:3.4.GA -> >=dev-java/javassist-3.29.2:3
+# org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+CP_DEPEND="
+ dev-java/cal10n:0
+ dev-java/javassist:3
+ ~dev-java/slf4j-api-${PV}:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.slf4j:slf4j-reload4j:2.0.3 -> >=dev-java/slf4j-reload4j-2.0.3:0
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ test? (
+ ~dev-java/slf4j-reload4j-${PV}:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR=( src/main/java{,9} )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-reload4j"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/slf4j-log4j12/Manifest b/dev-java/slf4j-log4j12/Manifest
deleted file mode 100644
index 483c3d5a5aac..000000000000
--- a/dev-java/slf4j-log4j12/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST slf4j-1.7.30-sources.tar.gz 2272772 BLAKE2B c6692a20406983fa333bdb27bf8da599140d7d37fe55da6dfa2c2aff1825ee57c9d6b7bf0015e4b41b3c15ac0971559b3dd4bb5244e5393cd209ee26fac5e93d SHA512 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f
diff --git a/dev-java/slf4j-log4j12/metadata.xml b/dev-java/slf4j-log4j12/metadata.xml
deleted file mode 100644
index 2444066aa02b..000000000000
--- a/dev-java/slf4j-log4j12/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/slf4j-log4j12/slf4j-log4j12-1.7.30.ebuild b/dev-java/slf4j-log4j12/slf4j-log4j12-1.7.30.ebuild
deleted file mode 100644
index cd3336b11a69..000000000000
--- a/dev-java/slf4j-log4j12/slf4j-log4j12-1.7.30.ebuild
+++ /dev/null
@@ -1,73 +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 slf4j-v_1.7.30/slf4j-log4j12/pom.xml --download-uri https://github.com/qos-ch/slf4j/archive/refs/tags/v_1.7.30.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild slf4j-log4j12-1.7.30.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.slf4j:slf4j-log4j12:1.7.30"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SLF4J LOG4J-12 Binding"
-HOMEPAGE="https://www.slf4j.org"
-SRC_URI="https://github.com/qos-ch/slf4j/archive/refs/tags/v_${PV}.tar.gz -> slf4j-${PV}-sources.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-
-# slf4j-v_1.7.30/slf4j-log4j12/src/test/java/org/slf4j/impl/Log4j12MultithreadedInitializationTest.java:35: error: cannot find symbol
-# import org.slf4j.helpers.MultithreadedInitializationTest;
-# ^
-# symbol: class MultithreadedInitializationTest
-RESTRICT="test"
-
-# Common dependencies
-# POM: slf4j-v_${PV}/${PN}/pom.xml
-# log4j:log4j:1.2.17 -> >=dev-java/log4j-1.2.17:0
-# org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
-
-CDEPEND="
- >=dev-java/log4j-1.2.17:0
- >=dev-java/slf4j-api-1.7.30:0
-"
-
-# Compile dependencies
-# POM: slf4j-v_${PV}/${PN}/pom.xml
-# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
-# test? org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- >=dev-java/slf4j-api-1.7.30:0
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}"
-
-JAVA_GENTOO_CLASSPATH="log4j,slf4j-api"
-JAVA_SRC_DIR="slf4j-v_${PV}/${PN}/src/main/java"
-JAVA_RESOURCE_DIRS=(
- "slf4j-v_${PV}/${PN}/src/main/resources"
-)
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-api"
-JAVA_TEST_SRC_DIR="slf4j-v_${PV}/${PN}/src/test/java"
-JAVA_TEST_RESOURCE_DIRS=(
- "slf4j-v_${PV}/${PN}/src/test/resources"
-)
-
-src_prepare() {
- default
- java-pkg_clean
-}
diff --git a/dev-java/slf4j-nop/Manifest b/dev-java/slf4j-nop/Manifest
index 483c3d5a5aac..502a0b5b52a6 100644
--- a/dev-java/slf4j-nop/Manifest
+++ b/dev-java/slf4j-nop/Manifest
@@ -1 +1 @@
-DIST slf4j-1.7.30-sources.tar.gz 2272772 BLAKE2B c6692a20406983fa333bdb27bf8da599140d7d37fe55da6dfa2c2aff1825ee57c9d6b7bf0015e4b41b3c15ac0971559b3dd4bb5244e5393cd209ee26fac5e93d SHA512 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/slf4j-nop/metadata.xml b/dev-java/slf4j-nop/metadata.xml
index 37998bf40746..c3b9d69d36cd 100644
--- a/dev-java/slf4j-nop/metadata.xml
+++ b/dev-java/slf4j-nop/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/slf4j-nop/slf4j-nop-1.7.30.ebuild b/dev-java/slf4j-nop/slf4j-nop-1.7.30.ebuild
deleted file mode 100644
index 97c5dc067abb..000000000000
--- a/dev-java/slf4j-nop/slf4j-nop-1.7.30.ebuild
+++ /dev/null
@@ -1,58 +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 slf4j-v_1.7.30/slf4j-nop/pom.xml --download-uri https://github.com/qos-ch/slf4j/archive/refs/tags/v_1.7.30.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild slf4j-nop-1.7.30.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.slf4j:slf4j-nop:1.7.30"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SLF4J NOP Binding"
-HOMEPAGE="https://www.slf4j.org"
-SRC_URI="https://github.com/qos-ch/slf4j/archive/refs/tags/v_${PV}.tar.gz -> slf4j-${PV}-sources.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-# Common dependencies
-# POM: slf4j-v_${PV}/${PN}/pom.xml
-# org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
-
-CDEPEND="
- >=dev-java/slf4j-api-1.7.30:0
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}"
-
-S="${WORKDIR}"
-
-JAVA_GENTOO_CLASSPATH="slf4j-api"
-JAVA_SRC_DIR="slf4j-v_${PV}/${PN}/src/main/java"
-JAVA_RESOURCE_DIRS=(
- "slf4j-v_${PV}/${PN}/src/main/resources"
-)
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="slf4j-v_${PV}/${PN}/src/test/java"
-JAVA_TEST_EXCLUDES=(
- # java.lang.AssertionError: expected:<0> but was:<5>
- "org.slf4j.impl.MultithreadedInitializationTest"
-)
-
-src_prepare() {
- default
- java-pkg_clean
-}
diff --git a/dev-java/slf4j-nop/slf4j-nop-2.0.3.ebuild b/dev-java/slf4j-nop/slf4j-nop-2.0.3.ebuild
new file mode 100644
index 000000000000..26720b1c7adf
--- /dev/null
+++ b/dev-java/slf4j-nop/slf4j-nop-2.0.3.ebuild
@@ -0,0 +1,47 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild slf4j-nop-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:slf4j-nop:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SLF4J NOP Binding"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+CP_DEPEND="~dev-java/slf4j-api-${PV}:0"
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_SRC_DIR=( src/main/java{,9} )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/slf4j-reload4j/Manifest b/dev-java/slf4j-reload4j/Manifest
new file mode 100644
index 000000000000..502a0b5b52a6
--- /dev/null
+++ b/dev-java/slf4j-reload4j/Manifest
@@ -0,0 +1 @@
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/slf4j-reload4j/metadata.xml b/dev-java/slf4j-reload4j/metadata.xml
new file mode 100644
index 000000000000..c3b9d69d36cd
--- /dev/null
+++ b/dev-java/slf4j-reload4j/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/slf4j-reload4j/slf4j-reload4j-2.0.3.ebuild b/dev-java/slf4j-reload4j/slf4j-reload4j-2.0.3.ebuild
new file mode 100644
index 000000000000..088248c1ea08
--- /dev/null
+++ b/dev-java/slf4j-reload4j/slf4j-reload4j-2.0.3.ebuild
@@ -0,0 +1,82 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64" --ebuild slf4j-reload4j-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:slf4j-reload4j:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SLF4J Reload4j Binding"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# ch.qos.reload4j:reload4j:1.2.19 -> >=dev-java/reload4j-1.2.22:0
+# org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+CP_DEPEND="
+ dev-java/reload4j:0
+ ~dev-java/slf4j-api-${PV}:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_GENTOO_CLASSPATH_EXTRA=":../slf4j-api/src/test/java/"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR=( src/main/java{,9} )
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+JAVA_TEST_EXCLUDES=(
+ # Upstream does not run this test:
+ org.slf4j.testHarness.MultithreadedInitializationTest
+)
+
+src_prepare() {
+ default
+ # There was 1 failure:
+ # 1) testWhetherEventsFieldsAreSet(org.slf4j.reload4j.EventFieldsTest)
+ # java.lang.AssertionError
+ # at org.junit.Assert.fail(Assert.java:87)
+ # at org.junit.Assert.assertTrue(Assert.java:42)
+ # at org.junit.Assert.assertNotNull(Assert.java:713)
+ # at org.junit.Assert.assertNotNull(Assert.java:723)
+ # at org.slf4j.reload4j.EventFieldsTest.testWhetherEventsFieldsAreSet(EventFieldsTest.java:35)
+ rm src/test/java/org/slf4j/reload4j/EventFieldsTest.java || die "cannot remove test"
+}
+
+src_test() {
+ if use ppc64; then #877903
+ JAVA_TEST_EXCLUDES+=( org.slf4j.reload4j.Reload4jMultithreadedInitializationTest )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/slf4j-simple/Manifest b/dev-java/slf4j-simple/Manifest
index 483c3d5a5aac..502a0b5b52a6 100644
--- a/dev-java/slf4j-simple/Manifest
+++ b/dev-java/slf4j-simple/Manifest
@@ -1 +1 @@
-DIST slf4j-1.7.30-sources.tar.gz 2272772 BLAKE2B c6692a20406983fa333bdb27bf8da599140d7d37fe55da6dfa2c2aff1825ee57c9d6b7bf0015e4b41b3c15ac0971559b3dd4bb5244e5393cd209ee26fac5e93d SHA512 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f
+DIST slf4j-2.0.3.tar.gz 1435478 BLAKE2B fec1a47882d3bbf508f4faed9cbf9448a23e9749c6c41f241c7e80654e0ce55211cec9228fcf0e666c997a4f24c5b96ad57dc076910e7f05704b02d0cf7db709 SHA512 0fb295f7942c2af8aebe2ecf544ef8326b8cc88de397ee6b37a10249b38150a506f62dcec614eee13519a299b30c6d2481dec3ea235d4b3e6a5241d12639bca6
diff --git a/dev-java/slf4j-simple/metadata.xml b/dev-java/slf4j-simple/metadata.xml
index 801406cdb66a..c3b9d69d36cd 100644
--- a/dev-java/slf4j-simple/metadata.xml
+++ b/dev-java/slf4j-simple/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<upstream>
- <doc>http://www.slf4j.org/docs.html</doc>
- <bugs-to>http://www.slf4j.org/bug-reporting.html</bugs-to>
+ <doc>https://www.slf4j.org/docs.html</doc>
+ <bugs-to>https://www.slf4j.org/bug-reporting.html</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-java/slf4j-simple/slf4j-simple-1.7.30-r1.ebuild b/dev-java/slf4j-simple/slf4j-simple-1.7.30-r1.ebuild
deleted file mode 100644
index 2bbc08d8cc79..000000000000
--- a/dev-java/slf4j-simple/slf4j-simple-1.7.30-r1.ebuild
+++ /dev/null
@@ -1,74 +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 slf4j-v_1.7.30/slf4j-simple/pom.xml --download-uri https://github.com/qos-ch/slf4j/archive/refs/tags/v_1.7.30.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild slf4j-simple-1.7.30.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.slf4j:slf4j-simple:1.7.30"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SLF4J Simple binding"
-HOMEPAGE="https://www.slf4j.org"
-SRC_URI="https://github.com/qos-ch/slf4j/archive/refs/tags/v_${PV}.tar.gz -> slf4j-${PV}-sources.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-# Common dependencies
-# POM: slf4j-v_${PV}/${PN}/pom.xml
-# org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
-
-CDEPEND="
- >=dev-java/slf4j-api-1.7.30:0
-"
-
-# Compile dependencies
-# POM: slf4j-v_${PV}/${PN}/pom.xml
-# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
-# test? org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
- test? (
- >=dev-java/slf4j-api-1.7.30:0
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}
-"
-
-S="${WORKDIR}/slf4j-v_${PV}/${PN}"
-
-JAVA_GENTOO_CLASSPATH="slf4j-api"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-api"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-
-JAVA_TEST_EXCLUDES=(
- # java.lang.InstantiationException
- "org.slf4j.helpers.MultithreadedInitializationTest"
-
- # java.lang.AssertionError: 1284 < 1263+16
- "org.slf4j.helpers.SimpleLoggerMultithreadedInitializationTest"
-)
-
-src_prepare() {
- default
- java-pkg_clean
- cp "../slf4j-api/src/test/java/org/slf4j/helpers/MultithreadedInitializationTest.java" \
- "${JAVA_TEST_SRC_DIR}/org/slf4j/helpers/" || die
- cp "../slf4j-api/src/test/java/org/slf4j/LoggerAccessingThread.java" \
- "${JAVA_TEST_SRC_DIR}/org/slf4j/" || die
-}
diff --git a/dev-java/slf4j-simple/slf4j-simple-2.0.3.ebuild b/dev-java/slf4j-simple/slf4j-simple-2.0.3.ebuild
new file mode 100644
index 000000000000..09826fff2c44
--- /dev/null
+++ b/dev-java/slf4j-simple/slf4j-simple-2.0.3.ebuild
@@ -0,0 +1,72 @@
+# 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/qos-ch/slf4j/archive/v_2.0.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild slf4j-simple-2.0.3.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.slf4j:slf4j-simple:2.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SLF4J Simple binding"
+HOMEPAGE="https://www.slf4j.org"
+SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+CP_DEPEND="~dev-java/slf4j-api-${PV}:0"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.2:4
+# test? org.slf4j:slf4j-api:2.0.3 -> >=dev-java/slf4j-api-2.0.3:0
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ test? (
+ ~dev-java/slf4j-api-${PV}:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+DOCS=( ../{README,SECURITY}.md )
+
+S="${WORKDIR}/slf4j-v_${PV}/${PN}"
+
+JAVA_SRC_DIR=( src/main/java{,9} )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-api"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+
+JAVA_TEST_EXCLUDES=(
+ # This test is not run by "mvn test":
+ org.slf4j.testHarness.MultithreadedInitializationTest
+ # 2) multiThreadedInitialization(org.slf4j.simple.SimpleLoggerMultithreadedInitializationTest)
+ # java.lang.AssertionError: 644 < 623+21
+ # at org.junit.Assert.fail(Assert.java:89)
+ # at org.junit.Assert.assertTrue(Assert.java:42)
+ # at org.slf4j.testHarness.MultithreadedInitializationTest.multiThreadedInitialization(MultithreadedInitializationTest.java:44)
+ org.slf4j.simple.SimpleLoggerMultithreadedInitializationTest
+)
+
+src_test() {
+ JAVA_GENTOO_CLASSPATH_EXTRA=":../slf4j-api/src/test/java/"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/snakeyaml/Manifest b/dev-java/snakeyaml/Manifest
index 6fb3ce63e073..97b875b06b47 100644
--- a/dev-java/snakeyaml/Manifest
+++ b/dev-java/snakeyaml/Manifest
@@ -1 +1,2 @@
-DIST asomov-snakeyaml-b28f0b4d87c6.tar.gz 397832 BLAKE2B 054c228cd739e0d7ae89227cba7ae1aba76e5b6a7aae4915a765816d916ab3a47e80d6c2795a5e9bcaee96a70c1751fb9e67523e7faed2db5a6d2123d773d04a SHA512 2d19aee8c3aef2c4c300382451c1241dd2452180fe28c39eb9fe1bbc9d6c615bb8504535d3cf1cf5fe2ad55def8c43b709e8ecd97f760403cfaee7db977f074c
+DIST snakeyaml-1.33.tar.gz 406196 BLAKE2B 9b7e7d7a5d35d433445737f4b5cc07744e3686a71cc4b9e44ce46153831b76f01da7ef6bc60ea82a7173283a77d0da500bea2bc7ee76bdde4ebda00aa6054aa8 SHA512 ad367d7e7bcb2225094d132df77d91e7401026af02f4ede14a2a4fc5cf78f0cfa1e4400f16f43a669faa2f0e444d36c3745e3c9df3d9114d62fee070c4c99414
+DIST snakeyaml-2.0.tar.gz 405458 BLAKE2B 69d81e0b23080ff86c1f6fe8a924a504d627c353bf9c026703ef54f14e572458e77c501415260667bcb18008ee96ca99cab7ed43c004d36fed781500f09054cf SHA512 ef4da2ae5f5e6cd7b68aabb0d37a4fdbd33be899cd1d4dad3210cc791ca85af57661f623898449841b930eaffc9e61cef337efa4e6371710307ef3758f0af329
diff --git a/dev-java/snakeyaml/files/snakeyaml-1.28-fix-test-check.patch b/dev-java/snakeyaml/files/snakeyaml-1.28-fix-test-check.patch
deleted file mode 100644
index fe903380fd61..000000000000
--- a/dev-java/snakeyaml/files/snakeyaml-1.28-fix-test-check.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue377/BillionLaughsAttackTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue377/BillionLaughsAttackTest.java
-index e87f330..28c836b 100644
---- a/src/test/java/org/yaml/snakeyaml/issues/issue377/BillionLaughsAttackTest.java
-+++ b/src/test/java/org/yaml/snakeyaml/issues/issue377/BillionLaughsAttackTest.java
-@@ -69,7 +69,8 @@ public class BillionLaughsAttackTest {
- map.toString();
- fail("Expected overflow");
- } catch (Throwable e) {
-- assertTrue(e.getMessage().contains("heap"));
-+ final String message = e.getMessage();
-+ assertTrue(message == null || message.contains("heap"));
- }
- }
-
diff --git a/dev-java/snakeyaml/metadata.xml b/dev-java/snakeyaml/metadata.xml
index 8d37abe52245..6bb50777c8e8 100644
--- a/dev-java/snakeyaml/metadata.xml
+++ b/dev-java/snakeyaml/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="bitbucket">asomov/snakeyaml</remote-id>
+ <remote-id type="bitbucket">snakeyaml/snakeyaml</remote-id>
+ <changelog>https://bitbucket.org/snakeyaml/snakeyaml/wiki/Changes</changelog>
+ <bugs-to>https://bitbucket.org/snakeyaml/snakeyaml/issues</bugs-to>
+ <doc>https://bitbucket.org/snakeyaml/snakeyaml/wiki/Documentation</doc>
</upstream>
</pkgmetadata>
diff --git a/dev-java/snakeyaml/snakeyaml-1.28-r1.ebuild b/dev-java/snakeyaml/snakeyaml-1.28-r1.ebuild
deleted file mode 100644
index 74a3ef6af086..000000000000
--- a/dev-java/snakeyaml/snakeyaml-1.28-r1.ebuild
+++ /dev/null
@@ -1,95 +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 pom.xml --download-uri https://bitbucket.org/asomov/snakeyaml/get/snakeyaml-1.28.tar.gz --slot 0 --keywords "~amd64 ~x86" --ebuild snakeyaml-1.28-r1.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.yaml:snakeyaml:1.28"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_COMMIT="b28f0b4d87c6"
-MY_P="asomov-snakeyaml-${MY_COMMIT}"
-
-DESCRIPTION="YAML 1.1 parser and emitter for Java"
-HOMEPAGE="https://bitbucket.org/asomov/snakeyaml"
-SRC_URI="https://bitbucket.org/asomov/${PN}/get/${P}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-# Compile dependencies
-# POM: pom.xml
-# test? commons-io:commons-io:2.5 -> >=dev-java/commons-io-2.4:1
-# test? joda-time:joda-time:2.10.1 -> >=dev-java/joda-time-2.10.10:0
-# test? junit:junit:4.13.1 -> >=dev-java/junit-4.13.1:4
-# test? org.apache.commons:commons-lang3:3.4 -> >=dev-java/commons-lang-3.4:3.4
-# test? org.apache.velocity:velocity:1.6.2 -> >=dev-java/velocity-1.7:0
-
-DEPEND="
- >=virtual/jdk-1.8:*
- test? (
- >=dev-java/commons-io-2.4:1
- dev-java/commons-lang:3.6
- >=dev-java/joda-time-2.10.10:0
- >=dev-java/velocity-1.7:0
- )
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
-"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-test-check.patch"
-)
-
-JAVA_SRC_DIR="src/main/java"
-
-JAVA_TEST_GENTOO_CLASSPATH="commons-io-1,joda-time,junit-4,commons-lang-3.6,velocity"
-JAVA_TEST_SRC_DIR="src/test/java"
-JAVA_TEST_RESOURCE_DIRS="src/test/resources"
-
-JAVA_TEST_EXCLUDES=(
- "examples.spring.TestEntityDescription" # Invalid test class
- "org.yaml.snakeyaml.constructor.TestBean1" # Invalid test class
- "org.yaml.snakeyaml.introspector.TestAnnotation" # Invalid test class
- "org.yaml.snakeyaml.introspector.TestBean" # Invalid test class
- "org.yaml.snakeyaml.ruby.TestObject" # Invalid test class
- "org.yaml.snakeyaml.issues.issue154.TestBean" # Invalid test class
- "org.yaml.snakeyaml.issues.issue193.TestYaml" # Invalid test class
-
- # initializationError(org.yaml.snakeyaml.constructor.TestBean)
- # java.lang.IllegalArgumentException: Test class can only have one constructor
- "org.yaml.snakeyaml.constructor.TestBean"
-
- # testTemplate1(org.yaml.snakeyaml.emitter.template.VelocityTest)
- # java.lang.NullPointerException
- "org.yaml.snakeyaml.emitter.template.VelocityTest"
-
- # yamlClassInYAMLCL(org.yaml.snakeyaml.issues.issue318.ContextClassLoaderTest)
- # java.lang.ClassNotFoundException: org.yaml.snakeyaml.Yaml
- "org.yaml.snakeyaml.issues.issue318.ContextClassLoaderTest"
-
- "examples.spring.TestEntity" # Invalid test class
-
- "org.pyyaml.PyImportTest" # No tests found in org.pyyaml.PyImportTest
-)
-
-src_prepare() {
- default
- java-utils-2_src_prepare
-}
-
-src_test() {
- export EnvironmentKey1="EnvironmentValue1"
- export EnvironmentEmpty=""
- java-pkg-simple_src_test
-}
diff --git a/dev-java/snakeyaml/snakeyaml-1.33.ebuild b/dev-java/snakeyaml/snakeyaml-1.33.ebuild
new file mode 100644
index 000000000000..b2ec55291db0
--- /dev/null
+++ b/dev-java/snakeyaml/snakeyaml-1.33.ebuild
@@ -0,0 +1,74 @@
+# 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://bitbucket.org/snakeyaml/snakeyaml/get/snakeyaml-1.33.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild snakeyaml-1.33.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.yaml:snakeyaml:1.33"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="YAML 1.1 parser and emitter for Java"
+HOMEPAGE="https://bitbucket.org/snakeyaml/snakeyaml"
+SRC_URI="https://bitbucket.org/${PN}/${PN}/get/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? joda-time:joda-time:2.11.2 -> >=dev-java/joda-time-2.11.2:0
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+# test? org.apache.velocity:velocity-engine-core:2.3 -> >=dev-java/velocity-2.3:0
+# test? org.projectlombok:lombok:1.18.24 -> !!!groupId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/velocity:0
+ dev-java/joda-time:0
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/snakeyaml-snakeyaml-7f5106920d77"
+
+JAVA_AUTOMATIC_MODULE_NAME="org.yaml.snakeyaml"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="joda-time,junit-4,velocity"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ export EnvironmentKey1="EnvironmentValue1"
+ export EnvironmentEmpty=""
+
+ # Not packaged org.projectlombok:lombok - https://bugs.gentoo.org/868684
+ rm src/test/java/org/yaml/snakeyaml/env/EnvLombokTest.java || die # Tests run: 1
+ rm src/test/java/org/yaml/snakeyaml/issues/issue387/YamlExecuteProcessContextTest.java || die # Tests run: 1
+ rm src/test/java/org/yaml/snakeyaml/env/ApplicationProperties.java || die # No tests
+
+ # https://bugs.gentoo.org/871744
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * -name "*Test.java" \
+ ! -name "StressTest.java" \
+ ! -name "ParallelTest.java" \
+ ! -name "AbstractTest.java" \
+ ! -name "PyImportTest.java" \
+ ! -name "Fuzzer50355Test.java" \
+ ! -name "ContextClassLoaderTest.java" \
+ )
+ popd
+
+ 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/snakeyaml/snakeyaml-2.0.ebuild b/dev-java/snakeyaml/snakeyaml-2.0.ebuild
new file mode 100644
index 000000000000..573e42c2c1d6
--- /dev/null
+++ b/dev-java/snakeyaml/snakeyaml-2.0.ebuild
@@ -0,0 +1,76 @@
+# 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.yaml:snakeyaml:2.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="YAML 1.1 parser and emitter for Java"
+HOMEPAGE="https://bitbucket.org/snakeyaml/snakeyaml"
+SRC_URI="https://bitbucket.org/${PN}/${PN}/get/${P}.tar.gz"
+S="${WORKDIR}/snakeyaml-snakeyaml-59ddbb3304bb"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Compile dependencies
+# POM: pom.xml
+# test? joda-time:joda-time:2.11.2 -> >=dev-java/joda-time-2.11.2:0
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+# test? org.apache.velocity:velocity-engine-core:2.3 -> >=dev-java/velocity-2.3:0
+# test? org.projectlombok:lombok:1.18.24 -> !!!groupId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-11:*
+ test? (
+ dev-java/velocity:0
+ dev-java/joda-time:0
+ )
+"
+
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="joda-time,junit-4,velocity"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+# Workaround for https://bugs.gentoo.org/900433
+# src/main/java9/org/yaml/snakeyaml/internal/Logger.java:16:
+# error: duplicate class: org.yaml.snakeyaml.internal.Logger
+src_prepare() {
+ java-pkg-2_src_prepare
+ mv src/main/java{9,}/module-info.java || die
+}
+
+src_test() {
+ export EnvironmentKey1="EnvironmentValue1"
+ export EnvironmentEmpty=""
+
+ # Not packaged org.projectlombok:lombok - https://bugs.gentoo.org/868684
+ rm src/test/java/org/yaml/snakeyaml/env/EnvLombokTest.java || die # Tests run: 1
+ rm src/test/java/org/yaml/snakeyaml/issues/issue387/YamlExecuteProcessContextTest.java || die # Tests run: 1
+ rm src/test/java/org/yaml/snakeyaml/env/ApplicationProperties.java || die # No tests # import lombok.
+
+ # https://bugs.gentoo.org/871744
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * -name "*Test.java" \
+ ! -name "StressTest.java" \
+ ! -name "ParallelTest.java" \
+ ! -name "AbstractTest.java" \
+ ! -name "PyImportTest.java" \
+ ! -name "Fuzzer50355Test.java" \
+ ! -name "ContextClassLoaderTest.java" \
+ )
+ popd
+
+ 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/snappy/Manifest b/dev-java/snappy/Manifest
index f27830f5a911..7f89f0c9d934 100644
--- a/dev-java/snappy/Manifest
+++ b/dev-java/snappy/Manifest
@@ -1,2 +1,2 @@
-DIST snappy-java-1.0.3_rc3.tar.gz 5466748 BLAKE2B a58847aa56d05659bcf53f0f7a6ba9c52611784bc6a8cc40d5838309e94c72bba8c8a1a27ca5249a223823a8cc1267dabeb12f369dae71999f55d5a64a111948 SHA512 eae4551d929f951be204218926cdea773a337ad584bd6fe49083526430a4e1ea80b395a627ecebc861232d36d2ec9034f2ebccac885da13e93fb74846298ba64
-DIST snappy-java-1.1.0.1.tar.gz 4909520 BLAKE2B 65daf3d01f1cb46dd0d51609e2d95fc954d56e41fbb2d22e9eca24fad16a6d4ba16083e633fb13e68dacf6c2fb0d10ec6fb1e6dcdda6dc611b58b172710fcd62 SHA512 32d0afce880ecccd814f7738eb375a13bd533998c73d79908964061337730ad76fb4794f78fd1fcdc4a4562db57cbc4c6f912d9f3351b1d75b12ce3224ec387e
+DIST hadoop-common-3.3.5.jar 4535144 BLAKE2B 66582661a1832cc54493fc9dcea9076eb0e3f4e974a7d24d593e8fff2b9e2a3a82ed6eb4587f23523473aecc35d2a15de2ad81b2617c1bdac50847149cdeb6a8 SHA512 f1fb439a5853b04e9e771ec4e80e1ed078494ecfaa741abe065936fc1c26b5369fdd4e8082f4da59c1a3a7a5c025beaa14a68c38dc772e81499f83a3cb91717b
+DIST snappy-1.1.10.5.tar.gz 3917442 BLAKE2B 0632fa7ba4d0a863801e88ced22098c3bc228c1f3e188c67cb9ff62807f9454b580b49fff15c7deee1e790db51f4664c50a6546259439eda18597097a5128329 SHA512 f84778f59635eb97c0072489766904a16208be4f41b28151b14eecd0fe84f3f04a44c18d452b9d79e752b22d5e5b9ab5b36064cc8aeec8de655d7635132093ea
diff --git a/dev-java/snappy/files/1.0.3_rc3-gentoo.patch b/dev-java/snappy/files/1.0.3_rc3-gentoo.patch
deleted file mode 100644
index 58a17b0dbd04..000000000000
--- a/dev-java/snappy/files/1.0.3_rc3-gentoo.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/Makefile b/Makefile
-index a9d5cdc..8026741 100644
---- a/Makefile
-+++ b/Makefile
-@@ -44,8 +44,7 @@ $(SNAPPY_OUT)/SnappyNative.o : $(SRC)/org/xerial/snappy/SnappyNative.cpp $(SRC)/
-
-
- $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
-- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy
-- $(STRIP) $@
-+ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy $(LDFLAGS)
-
- clean-native:
- rm -rf $(SNAPPY_OUT)
diff --git a/dev-java/snappy/files/1.0.3_rc3-unbundle-snappy.patch b/dev-java/snappy/files/1.0.3_rc3-unbundle-snappy.patch
deleted file mode 100644
index 4885e7b5df80..000000000000
--- a/dev-java/snappy/files/1.0.3_rc3-unbundle-snappy.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-diff --git a/Makefile b/Makefile
-index b67855a..a9d5cdc 100644
---- a/Makefile
-+++ b/Makefile
-@@ -7,7 +7,8 @@ all: snappy
-
- SNAPPY_OUT:=$(TARGET)/$(snappy)-$(os_arch)
- SNAPPY_ARCHIVE:=$(TARGET)/snappy-$(VERSION).tar.gz
--SNAPPY_CC:=snappy-sinksource.cc snappy-stubs-internal.cc snappy.cc
-+#SNAPPY_CC:=snappy-sinksource.cc snappy-stubs-internal.cc snappy.cc
-+SNAPPY_CC:=
- SNAPPY_SRC_DIR:=$(TARGET)/snappy-$(VERSION)
- SNAPPY_SRC:=$(addprefix $(SNAPPY_SRC_DIR)/,$(SNAPPY_CC))
- SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/,$(patsubst %.cc,%.o,$(SNAPPY_CC)) SnappyNative.o)
-@@ -30,7 +31,8 @@ jni-header: $(SRC)/org/xerial/snappy/SnappyNative.h
- $(SRC)/org/xerial/snappy/SnappyNative.h: $(SRC)/org/xerial/snappy/SnappyNative.java
- $(JAVAH) -classpath $(TARGET)/classes -o $@ org.xerial.snappy.SnappyNative
-
--$(SNAPPY_SRC): $(SNAPPY_UNPACKED)
-+$(SNAPPY_SRC):
-+# $(SNAPPY_UNPACKED)
-
- $(SNAPPY_OUT)/%.o : $(SNAPPY_SRC_DIR)/%.cc
- @mkdir -p $(@D)
-@@ -42,7 +44,7 @@ $(SNAPPY_OUT)/SnappyNative.o : $(SRC)/org/xerial/snappy/SnappyNative.cpp $(SRC)/
-
-
- $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
-- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS)
-+ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy
- $(STRIP) $@
-
- clean-native:
-@@ -57,15 +59,15 @@ NATIVE_DLL:=$(NATIVE_DIR)/$(LIBNAME)
-
- snappy-jar-version:=snappy-java-$(shell $(JAVA) -jar lib/silk-weaver.jar find 'project(artifactId, version)' pom.xml | grep snappy-java | awk '{ print $$2; }')
-
--native: $(SNAPPY_UNPACKED) $(NATIVE_DLL)
--snappy: $(TARGET)/$(snappy-jar-version).jar
-+native: $(NATIVE_DLL)
-+snappy: native
-
- $(NATIVE_DLL): $(SNAPPY_OUT)/$(LIBNAME)
- @mkdir -p $(@D)
- cp $< $@
- @mkdir -p $(NATIVE_TARGET_DIR)
- cp $< $(NATIVE_TARGET_DIR)/$(LIBNAME)
--
-+ cp $< $(TARGET)
-
- $(TARGET)/$(snappy-jar-version).jar: native $(NATIVE_DLL)
- $(MVN) package -Dmaven.test.skip=true
diff --git a/dev-java/snappy/files/1.1.0.1-gentoo.patch b/dev-java/snappy/files/1.1.0.1-gentoo.patch
deleted file mode 100644
index 61403dd9167f..000000000000
--- a/dev-java/snappy/files/1.1.0.1-gentoo.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 04f0435..0249d09 100644
---- a/Makefile
-+++ b/Makefile
-@@ -60,8 +60,7 @@ $(SNAPPY_OUT)/SnappyNative.o : $(SRC)/org/xerial/snappy/SnappyNative.cpp $(SRC)/
-
-
- $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
-- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy
-- $(STRIP) $@
-+ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy $(LDFLAGS)
-
- clean-native:
- rm -rf $(SNAPPY_OUT)
diff --git a/dev-java/snappy/files/1.1.0.1-unbundle-snappy.patch b/dev-java/snappy/files/1.1.0.1-unbundle-snappy.patch
deleted file mode 100644
index 17fb2e1583ed..000000000000
--- a/dev-java/snappy/files/1.1.0.1-unbundle-snappy.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 0821c87..04f0435 100644
---- a/Makefile
-+++ b/Makefile
-@@ -7,7 +7,8 @@ all: snappy
-
- SNAPPY_OUT:=$(TARGET)/$(snappy)-$(os_arch)
- SNAPPY_ARCHIVE:=$(TARGET)/snappy-$(VERSION).tar.gz
--SNAPPY_CC:=snappy-sinksource.cc snappy-stubs-internal.cc snappy.cc
-+#SNAPPY_CC:=snappy-sinksource.cc snappy-stubs-internal.cc snappy.cc
-+SNAPPY_CC:=
- SNAPPY_SRC_DIR:=$(TARGET)/snappy-$(VERSION)
- SNAPPY_SRC:=$(addprefix $(SNAPPY_SRC_DIR)/,$(SNAPPY_CC))
- SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/,$(patsubst %.cc,%.o,$(SNAPPY_CC)) SnappyNative.o)
-@@ -46,7 +47,8 @@ src/main/resources/org/xerial/snappy/SnappyNativeLoader.bytecode: src/main/resou
- $(JAVAC) -source 1.5 -target 1.5 -d $(TARGET)/temp $<
- cp $(TARGET)/temp/org/xerial/snappy/SnappyNativeLoader.class $@
-
--$(SNAPPY_SRC): $(SNAPPY_UNPACKED)
-+$(SNAPPY_SRC):
-+# $(SNAPPY_UNPACKED)
-
- $(SNAPPY_OUT)/%.o : $(SNAPPY_SRC_DIR)/%.cc
- @mkdir -p $(@D)
-@@ -58,7 +60,7 @@ $(SNAPPY_OUT)/SnappyNative.o : $(SRC)/org/xerial/snappy/SnappyNative.cpp $(SRC)/
-
-
- $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
-- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS)
-+ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy
- $(STRIP) $@
-
- clean-native:
-@@ -73,14 +75,15 @@ NATIVE_DLL:=$(NATIVE_DIR)/$(LIBNAME)
-
- snappy-jar-version:=snappy-java-$(shell $(JAVA) -jar lib/silk-weaver.jar find 'project(artifactId, version)' pom.xml | grep snappy-java | awk '{ print $$2; }')
-
--native: $(SNAPPY_UNPACKED) $(NATIVE_DLL)
--snappy: native $(TARGET)/$(snappy-jar-version).jar
-+native: $(NATIVE_DLL)
-+snappy: native
-
- $(NATIVE_DLL): $(SNAPPY_OUT)/$(LIBNAME)
- @mkdir -p $(@D)
- cp $< $@
- @mkdir -p $(NATIVE_TARGET_DIR)
- cp $< $(NATIVE_TARGET_DIR)/$(LIBNAME)
-+ cp $< $(TARGET)/
-
-
- $(TARGET)/$(snappy-jar-version).jar: native $(NATIVE_DLL)
diff --git a/dev-java/snappy/files/1.1.7.8-gentoo.patch b/dev-java/snappy/files/1.1.7.8-gentoo.patch
new file mode 100644
index 000000000000..b4a58e6482be
--- /dev/null
+++ b/dev-java/snappy/files/1.1.7.8-gentoo.patch
@@ -0,0 +1,28 @@
+--- a/Makefile
++++ b/Makefile
+@@ -124,11 +124,7 @@
+ $(CXX) $(CXXFLAGS) -c $< -o $@
+
+ $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
+- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy -lbitshuffle
+- # Workaround for strip Protocol error when using VirtualBox on Mac
+- cp $@ /tmp/$(@F)
+- $(STRIP) /tmp/$(@F)
+- cp /tmp/$(@F) $@
++ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy -lbitshuffle $(LDFLAGS)
+
+ clean-native:
+ rm -rf $(SNAPPY_OUT)
+--- a/Makefile.common
++++ b/Makefile.common
+@@ -274,8 +274,8 @@
+
+ CXX := $($(os_arch)_CXX)
+ STRIP := $($(os_arch)_STRIP)
+-CXXFLAGS := $($(os_arch)_CXXFLAGS)
+-LINKFLAGS := $($(os_arch)_LINKFLAGS)
++CXXFLAGS := $($(os_arch)_CXXFLAGS) $(CXXFLAGS)
++LINKFLAGS := $($(os_arch)_LINKFLAGS) $(LDFLAGS)
+ LIBNAME := $($(os_arch)_LIBNAME)
+ SNAPPY_FLAGS := $($(os_arch)_SNAPPY_FLAGS)
+
diff --git a/dev-java/snappy/files/1.1.7.8-java-version-target.patch b/dev-java/snappy/files/1.1.7.8-java-version-target.patch
new file mode 100644
index 000000000000..a852d0bdb807
--- /dev/null
+++ b/dev-java/snappy/files/1.1.7.8-java-version-target.patch
@@ -0,0 +1,47 @@
+From e7d1d0167426790ba9b1d28ffa11e0d0c523f3b5 Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Sun, 6 Feb 2022 08:29:20 -0800
+Subject: [PATCH] Allow Java version target to be specified using variable
+
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ Makefile | 4 ++--
+ Makefile.common | 2 ++
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 1d82a8a..8eaa319 100644
+--- a/Makefile
++++ b/Makefile
+@@ -92,13 +92,13 @@ snappy-header: $(SNAPPY_CMAKE_CACHE)
+
+ $(TARGET)/jni-classes/org/xerial/snappy/SnappyNative.class: $(SRC)/org/xerial/snappy/SnappyNative.java
+ @mkdir -p $(TARGET)/jni-classes
+- $(JAVAC) -source 1.7 -target 1.7 -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $<
++ $(JAVAC) -source $(JAVA_SOURCE) -target $(JAVA_TARGET) -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $<
+
+ $(SRC)/org/xerial/snappy/SnappyNative.h: $(TARGET)/jni-classes/org/xerial/snappy/SnappyNative.class
+
+ $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class: $(SRC)/org/xerial/snappy/BitShuffleNative.java
+ @mkdir -p $(TARGET)/jni-classes
+- $(JAVAC) -source 1.7 -target 1.7 -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $<
++ $(JAVAC) -source $(JAVA_SOURCE) -target $(JAVA_TARGET) -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $<
+
+ $(SRC)/org/xerial/snappy/BitShuffleNative.h: $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class
+
+diff --git a/Makefile.common b/Makefile.common
+index 534bc4f..86d839b 100755
+--- a/Makefile.common
++++ b/Makefile.common
+@@ -10,6 +10,8 @@ endif
+ JAVA := "$$JAVA_HOME/bin/java"
+ JAVAC := "$$JAVA_HOME/bin/javac"
+ JAVAH := "$$JAVA_HOME/bin/javah"
++JAVA_SOURCE := 1.8
++JAVA_TARGET := 1.8
+
+ LITTLE_ENDIAN := "Little Endian"
+ BIG_ENDIAN := "Big Endian"
+--
+2.34.1
+
diff --git a/dev-java/snappy/files/1.1.7.8-unbundle-bitshuffle.patch b/dev-java/snappy/files/1.1.7.8-unbundle-bitshuffle.patch
new file mode 100644
index 000000000000..e4f699ad123e
--- /dev/null
+++ b/dev-java/snappy/files/1.1.7.8-unbundle-bitshuffle.patch
@@ -0,0 +1,26 @@
+--- a/Makefile
++++ b/Makefile
+@@ -36,11 +36,11 @@
+
+ $(SNAPPY_OUT)/%.o: $(BITSHUFFLE_SRC_DIR)/%.c
+ @mkdir -p $(@D)
+- $(CXX) $(CXXFLAGS) $(CXXFLAGS_BITSHUFFLE) -c $< -o $@
++ $(CXX) $(CXXFLAGS) -c $< -o $@
+
+-SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/,$(patsubst %.cc,%.o,$(SNAPPY_CC)) $(patsubst %.c,%.o,$(BITSHUFFLE_C)) SnappyNative.o BitShuffleNative.o)
++SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/,$(patsubst %.cc,%.o,$(SNAPPY_CC)) SnappyNative.o BitShuffleNative.o)
+
+-CXXFLAGS:=$(CXXFLAGS) -I$(SNAPPY_SRC_DIR) -I$(SNAPPY_OUT) -I$(BITSHUFFLE_SRC_DIR)
++CXXFLAGS:=$(CXXFLAGS) -I$(SNAPPY_SRC_DIR) -I$(SNAPPY_OUT)
+
+ ifndef CXXFLAGS_BITSHUFFLE
+ ifeq ($(OS_NAME)-$(OS_ARCH),Linux-x86_64)
+@@ -124,7 +124,7 @@
+ $(CXX) $(CXXFLAGS) -c $< -o $@
+
+ $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
+- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy
++ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy -lbitshuffle
+ # Workaround for strip Protocol error when using VirtualBox on Mac
+ cp $@ /tmp/$(@F)
+ $(STRIP) /tmp/$(@F)
diff --git a/dev-java/snappy/files/1.x-build.xml b/dev-java/snappy/files/1.x-build.xml
deleted file mode 100644
index 21d93bfcc1c6..000000000000
--- a/dev-java/snappy/files/1.x-build.xml
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="snappy-java-from-maven" default="package" basedir=".">
-
- <property file="${user.home}/.m2/maven.properties" />
- <property file="maven-build.properties" />
-
- <property name="maven.build.finalName" value="snappy" />
- <property name="maven.build.dir" value="target" />
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes" />
- <property name="maven.build.srcDir.0" value="src/main/java" />
- <property name="maven.build.resourceDir.0" value="src/main/java" />
- <property name="maven.build.resourceDir.1" value="src/main/resources" />
- <property name="maven.build.resourceDir.2" value="." />
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes" />
- <property name="maven.build.testDir.0" value="src/test/java" />
- <property name="maven.build.testResourceDir.0" value="src/test/java" />
- <property name="maven.build.testResourceDir.1" value="src/test/resources" />
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports" />
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site" />
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository" />
- <property name="maven.settings.offline" value="false" />
- <property name="maven.settings.interactiveMode" value="true" />
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}" />
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}" />
- <javac destdir="${maven.build.outputDir}" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.6" verbose="false" fork="false" source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}" />
- </src>
- <classpath refid="build.classpath" />
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}">
- <include name="org/xerial/snappy/VERSION" />
- </fileset>
- </copy>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.1}">
- <include name="org/xerial/snappy/*.bytecode" />
- <include name="org/xerial/snappy/native/**" />
- </fileset>
- </copy>
- <mkdir dir="${maven.build.outputDir}/META-INF/maven/org.xerial.snappy/snappy-java" />
- <copy todir="${maven.build.outputDir}/META-INF/maven/org.xerial.snappy/snappy-java">
- <fileset dir="${maven.build.resourceDir.2}">
- <include name="LICENSE*" />
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests" depends="compile" description="Compile the test code" unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}" />
- <javac destdir="${maven.build.testOutputDir}" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.6" verbose="false" fork="false" source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}" />
- </src>
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}">
- <exclude name="**/*.java" />
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test" depends="compile-tests, junit-missing" unless="junit.skipped" description="Run the test cases">
- <mkdir dir="${maven.test.reports}" />
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="." />
- <formatter type="xml" />
- <formatter type="plain" usefile="false" />
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- <pathelement location="${maven.build.testOutputDir}" />
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java" />
- <include name="**/*Test.java" />
- <include name="**/*TestCase.java" />
- <exclude name="**/*Abstract*Test.java" />
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java" />
- <exclude name="**/*Abstract*Test.java" />
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" />
- </target>
-
- <target name="test-junit-status" depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}" />
- <isfalse value="${maven.test.skip}" />
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}" />
- <istrue value="${maven.test.skip}" />
- </or>
- </condition>
- </target>
-
- <target name="junit-missing" depends="test-junit-status" if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}" packagenames="*" destdir="${maven.reporting.outputDirectory}/apidocs" access="public" old="false" verbose="false" locale="en_US" version="true" use="true" author="true" splitindex="false" nodeprecated="false" nodeprecatedlist="false" notree="false" noindex="false" nohelp="false" nonavbar="false" serialwarn="false" charset="UTF-8" linksource="false" breakiterator="false" />
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar" compress="true" index="true" basedir="${maven.build.outputDir}" excludes="**/package.html" />
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application" />
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true" />
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/snappy/files/snappy-1.1.10.1-commons-lang3.patch b/dev-java/snappy/files/snappy-1.1.10.1-commons-lang3.patch
new file mode 100644
index 000000000000..064482eabb7f
--- /dev/null
+++ b/dev-java/snappy/files/snappy-1.1.10.1-commons-lang3.patch
@@ -0,0 +1,11 @@
+--- a/src/test/java/org/xerial/snappy/SnappyHadoopCompatibleOutputStreamTest.java
++++ b/src/test/java/org/xerial/snappy/SnappyHadoopCompatibleOutputStreamTest.java
+@@ -2,7 +2,7 @@ package org.xerial.snappy;
+
+ import org.apache.commons.io.FileUtils;
+ import org.apache.commons.io.IOUtils;
+-import org.apache.commons.lang.SystemUtils;
++import org.apache.commons.lang3.SystemUtils;
+ import org.apache.hadoop.conf.Configuration;
+ import org.apache.hadoop.io.compress.SnappyCodec;
+ import org.junit.AfterClass;
diff --git a/dev-java/snappy/files/snappy-1.1.10.1-unbundle-snappy.patch b/dev-java/snappy/files/snappy-1.1.10.1-unbundle-snappy.patch
new file mode 100644
index 000000000000..d516495bb6a7
--- /dev/null
+++ b/dev-java/snappy/files/snappy-1.1.10.1-unbundle-snappy.patch
@@ -0,0 +1,51 @@
+--- a/Makefile
++++ b/Makefile
+@@ -10,7 +10,7 @@ all: snappy
+
+ SNAPPY_OUT:=$(TARGET)/snappy-$(SNAPPY_VERSION)-$(os_arch)
+ SNAPPY_ARCHIVE:=$(TARGET)/snappy-$(SNAPPY_VERSION).tar.gz
+-SNAPPY_CC:=snappy-sinksource.cc snappy-stubs-internal.cc snappy-c.cc snappy.cc
++SNAPPY_CC:=
+ SNAPPY_SRC_DIR:=$(TARGET)/snappy-$(SNAPPY_VERSION)
+ SNAPPY_SRC:=$(addprefix $(SNAPPY_SRC_DIR)/,$(SNAPPY_CC))
+ SNAPPY_GIT_REPO_URL:=https://github.com/google/snappy
+@@ -102,7 +102,8 @@ $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class: $(SRC)/org/xeria
+
+ $(SRC)/org/xerial/snappy/BitShuffleNative.h: $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class
+
+-$(SNAPPY_SRC): $(SNAPPY_GIT_UNPACKED)
++$(SNAPPY_SRC):
++# $(SNAPPY_GIT_UNPACKED)
+
+ # aarch64 can use big-endian optimzied code
+ ifeq ($(OS_ARCH),aarch64)
+@@ -124,7 +125,7 @@ $(SNAPPY_OUT)/BitShuffleNative.o: $(SRC)/org/xerial/snappy/BitShuffleNative.cpp
+ $(CXX) $(CXXFLAGS) -c $< -o $@
+
+ $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ)
+- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS)
++ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy
+ # Workaround for strip Protocol error when using VirtualBox on Mac
+ cp $@ /tmp/$(@F)
+ $(STRIP) /tmp/$(@F)
+@@ -145,9 +146,9 @@ snappy-jar-version:=snappy-java-$(shell ./script/dynver.sh | cut -d'=' -f2 | sed
+ jar-version:
+ echo $(snappy-jar-version)
+
+-native: jni-header snappy-header $(NATIVE_DLL)
+-native-nocmake: jni-header $(NATIVE_DLL)
+-snappy: native $(TARGET)/$(snappy-jar-version).jar
++native: $(NATIVE_DLL)
++native-nocmake: $(NATIVE_DLL)
++snappy: native
+
+ native-all: native native-arm clean-docker mac64 win32 win64 linux32 linux64 linux-ppc64le linux-riscv64 linux-s390x
+
+@@ -166,6 +167,7 @@ $(NATIVE_DLL): $(SNAPPY_OUT)/$(LIBNAME)
+ cp $(SNAPPY_OUT)/$(LIBNAME) $@
+ @mkdir -p $(NATIVE_TARGET_DIR)
+ cp $(SNAPPY_OUT)/$(LIBNAME) $(NATIVE_TARGET_DIR)/$(LIBNAME)
++ cp $< $(TARGET)/
+
+ package: $(TARGET)/$(snappy-jar-version).jar
+
diff --git a/dev-java/snappy/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch b/dev-java/snappy/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch
new file mode 100644
index 000000000000..43272e9d4a7f
--- /dev/null
+++ b/dev-java/snappy/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch
@@ -0,0 +1,30 @@
+There was 1 failure:
+1) batchingOfWritesShouldNotAffectCompressedDataSize(org.xerial.snappy.SnappyOutputStreamTest)
+java.lang.AssertionError: expected:<91080> but was:<91051>
+ 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.xerial.snappy.SnappyOutputStreamTest.batchingOfWritesShouldNotAffectCompressedDataSize(SnappyOutputStreamTest.java:183)
+
+FAILURES!!!
+Tests run: 104, Failures: 1
+--- a/src/test/java/org/xerial/snappy/SnappyOutputStreamTest.java
++++ b/src/test/java/org/xerial/snappy/SnappyOutputStreamTest.java
+@@ -34,6 +34,7 @@ import java.lang.ref.WeakReference;
+ import java.nio.ByteOrder;
+
+ import org.junit.Test;
++import org.junit.Ignore;
+ import org.junit.Assert;
+ import org.xerial.snappy.buffer.BufferAllocatorFactory;
+ import org.xerial.snappy.buffer.CachedBufferAllocator;
+@@ -165,7 +166,7 @@ public class SnappyOutputStreamTest
+ return b.toByteArray();
+ }
+
+- @Test
++ @Test @Ignore
+ public void batchingOfWritesShouldNotAffectCompressedDataSize()
+ throws Exception
+ {
diff --git a/dev-java/snappy/metadata.xml b/dev-java/snappy/metadata.xml
index d57d516f6433..db7de7da5a64 100644
--- a/dev-java/snappy/metadata.xml
+++ b/dev-java/snappy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/snappy/snappy-1.0.3_rc3.ebuild b/dev-java/snappy/snappy-1.0.3_rc3.ebuild
deleted file mode 100644
index 3d2afabf6e0d..000000000000
--- a/dev-java/snappy/snappy-1.0.3_rc3.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN}-java"
-MY_PV="${PV/_rc/-rc}"
-MY_P="${MY_PN}-${MY_PV}"
-
-DESCRIPTION="Snappy compressor/decompressor for Java"
-HOMEPAGE="https://github.com/xerial/snappy-java/"
-SRC_URI="https://github.com/xerial/${MY_PN}/archive/${MY_P}.tar.gz -> ${PN}-java-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-CDEPEND="dev-java/osgi-core-api:0
- app-arch/snappy"
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/junit:4
- dev-java/xerial-core:0
- )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="osgi-core-api"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4,xerial-core"
-EANT_TEST_ANT_TASKS="ant-junit"
-
-java_prepare() {
- cp "${FILESDIR}"/1.x-build.xml "${S}"/build.xml || die
- rm -r "${S}"/src/main/resources/org/xerial/snappy/native/ || die
- epatch "${FILESDIR}"/${PV}-unbundle-snappy.patch
- epatch "${FILESDIR}"/${PV}-gentoo.patch
-}
-
-src_compile() {
- emake
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-pkg_doso "${S}"/target/libsnappyjava.so
- java-pkg_dojar "${S}/target/${PN}.jar"
-
- use source && java-pkg_dosrc "${S}"/src/main/java/*
- use doc && java-pkg_dojavadoc "${S}"/target/site/apidocs
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/snappy/snappy-1.1.0.1.ebuild b/dev-java/snappy/snappy-1.1.0.1.ebuild
deleted file mode 100644
index 443002b9ab82..000000000000
--- a/dev-java/snappy/snappy-1.1.0.1.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN}-java"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Snappy compressor/decompressor for Java"
-HOMEPAGE="https://github.com/xerial/snappy-java/"
-SRC_URI="https://github.com/xerial/${MY_PN}/archive/${PV}.tar.gz -> ${PN}-java-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1.1"
-KEYWORDS="~amd64 ~x86 ~x64-macos"
-IUSE=""
-
-CDEPEND="dev-java/osgi-core-api:0
- app-arch/snappy"
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/junit:4
- dev-java/xerial-core:0
- dev-java/plexus-classworlds:0
- )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="osgi-core-api"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4,xerial-core,plexus-classworlds"
-EANT_TEST_ANT_TASKS="ant-junit"
-
-java_prepare() {
- cp "${FILESDIR}"/1.x-build.xml "${S}"/build.xml || die
- rm -r "${S}"/src/main/resources/org/xerial/snappy/native/ || die
- epatch "${FILESDIR}"/${PV}-unbundle-snappy.patch
- epatch "${FILESDIR}"/${PV}-gentoo.patch
-}
-
-src_compile() {
- emake
- java-pkg-2_src_compile
-}
-
-src_install() {
- local jniext=.so
- if [[ ${CHOST} == *-darwin* ]] ; then
- jniext=.jnilib
- # avoid install_name check failure
- install_name_tool -id @loader_path/libsnappyjava${jniext} \
- "${S}"/target/libsnappyjava${jniext}
- fi
- java-pkg_doso "${S}"/target/libsnappyjava${jniext}
- java-pkg_dojar "${S}/target/${PN}.jar"
-
- use source && java-pkg_dosrc "${S}"/src/main/java/*
- use doc && java-pkg_dojavadoc "${S}"/target/site/apidocs
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/snappy/snappy-1.1.10.5-r1.ebuild b/dev-java/snappy/snappy-1.1.10.5-r1.ebuild
new file mode 100644
index 000000000000..6e719db54841
--- /dev/null
+++ b/dev-java/snappy/snappy-1.1.10.5-r1.ebuild
@@ -0,0 +1,125 @@
+# 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.xerial.snappy:snappy-java:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs check-reqs
+
+DESCRIPTION="Snappy compressor/decompressor for Java"
+HOMEPAGE="https://github.com/xerial/snappy-java/"
+# ::gentoo does not have hadoop-common packaged. Currently we bundle the binary version.
+# It's used for testing only and does not get installed.
+HCV="3.3.5"
+SRC_URI="https://github.com/xerial/snappy-java/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-common/${HCV}/hadoop-common-${HCV}.jar )"
+S="${WORKDIR}/snappy-java-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="1.1"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="dev-java/osgi-core:0"
+
+CDEPEND="
+ app-arch/snappy
+ dev-libs/bitshuffle
+"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ ${CDEPEND}
+ test? (
+ >=dev-java/ant-1.10.14:0[junit4]
+ dev-java/commons-io:1
+ dev-java/commons-lang:3.6
+ dev-java/plexus-classworlds:0
+ dev-java/xerial-core:0
+ )"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CP_DEPEND}
+ ${CDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/1.1.7.8-java-version-target.patch"
+ "${FILESDIR}/snappy-1.1.10.1-unbundle-snappy.patch"
+ "${FILESDIR}/1.1.7.8-unbundle-bitshuffle.patch"
+ "${FILESDIR}/1.1.7.8-gentoo.patch"
+ "${FILESDIR}/snappy-1.1.10.5-SnappyOutputStreamTest.patch"
+ "${FILESDIR}/snappy-1.1.10.1-commons-lang3.patch"
+)
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="
+ commons-io-1
+ commons-lang-3.6
+ junit-4
+ plexus-classworlds
+ xerial-core
+"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+check_env() {
+ if use test; then
+ # this is needed only for tests
+ CHECKREQS_MEMORY="2560M"
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_pretend() {
+ check_env
+}
+
+pkg_setup() {
+ check_env
+ java-pkg-2_pkg_setup
+}
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+ # remove pre-compiled sofiles
+ rm -r src/main/resources/org/xerial/snappy/native || die
+ rm -r src/test/resources/lib || die
+}
+
+src_compile() {
+ emake \
+ CXX="$(tc-getCXX)" \
+ JAVA_SOURCE="$(java-pkg_get-source)" \
+ JAVA_TARGET="$(java-pkg_get-target)"
+
+ java-pkg-simple_src_compile
+}
+
+src_test() {
+ JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/hadoop-common-${HCV}.jar"
+ JAVA_TEST_EXTRA_ARGS=( -Xmx${CHECKREQS_MEMORY} )
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 17; then
+ java-pkg-simple_src_test
+ else
+ einfo "Tests need jdk-17 to pass."
+ fi
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ local jniext=.so
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ jniext=.jnilib
+ # avoid install_name check failure
+ install_name_tool -id "@loader_path/libsnappyjava${jniext}" \
+ "target/libsnappyjava${jniext}"
+ fi
+ java-pkg_doso "target/libsnappyjava${jniext}"
+}
diff --git a/dev-java/snip/Manifest b/dev-java/snip/Manifest
deleted file mode 100644
index f81eebade324..000000000000
--- a/dev-java/snip/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST snip-0.11.zip 56801 BLAKE2B cf8c94fe9269faaf34f8377a626786a96387c5a253c98ce1591de80a22337ff0f9d75da6d9e264b2222d4e1c1a749cfd907f5239d6608b9541a2a61c6c4decc4 SHA512 43ded00e411247c69882494cec1ee5322a0be273982ee37b2501d143259686f6d5f52c99b430ebad96d799aa42bb240b4a5130cba0b3fc47d21c70513e97ba93
diff --git a/dev-java/snip/metadata.xml b/dev-java/snip/metadata.xml
deleted file mode 100644
index 989601c681b1..000000000000
--- a/dev-java/snip/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- &gt;snip&lt; is an Ant task designed to help with the single-sourcing
- of program documentation. This task extracts snippets of text from files,
- placing them into properties in the Ant project. These properties can
- then be used by any other Ant task, and are particularly useful when
- referenced by &gt;filter&lt;s within the &gt;copy&lt; task.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/snip/snip-0.11-r1.ebuild b/dev-java/snip/snip-0.11-r1.ebuild
deleted file mode 100644
index 84d3a8aaabe3..000000000000
--- a/dev-java/snip/snip-0.11-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="an Apache ANT optional task that extracts snippets of code from text files"
-HOMEPAGE="http://www.martiansoftware.com/lab/snip.html"
-SRC_URI="http://www.martiansoftware.com/lab/${PN}/${P}-src.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/sparsebitset/metadata.xml b/dev-java/sparsebitset/metadata.xml
index aaa5eb8a4b75..12a7c61465c8 100644
--- a/dev-java/sparsebitset/metadata.xml
+++ b/dev-java/sparsebitset/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/sparsebitset/sparsebitset-1.2.ebuild b/dev-java/sparsebitset/sparsebitset-1.2.ebuild
index 05457982154c..76a2d8a55d7a 100644
--- a/dev-java/sparsebitset/sparsebitset-1.2.ebuild
+++ b/dev-java/sparsebitset/sparsebitset-1.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
@@ -18,7 +18,7 @@ SRC_URI="https://github.com/brettwooldridge/SparseBitSet/archive/refs/tags/Spars
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm64 ppc64 x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND="
>=virtual/jdk-1.8:*
diff --git a/dev-java/spec-alpha/Manifest b/dev-java/spec-alpha/Manifest
deleted file mode 100644
index 4eba39512c02..000000000000
--- a/dev-java/spec-alpha/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST spec-alpha-0.1.143.tar.gz 35568 BLAKE2B f63fdd2b3c83dbd3936e36ff57b6ea399b7173fe805c60a6ecbd8e4aef5942f051a8551c259d89885a202c20045f67921b66c4dc9e361aacc8903c6542d7c7b5 SHA512 87887d72bc7343f96fad937b90feb4cc1be1eeaad8b7c01ae090ebe5cb17c30612e63797ea9eb39e6fe4c07870dcba9e153a98777d372923e95163f3219a976c
-DIST spec-alpha-0.2.176.tar.gz 37055 BLAKE2B 0588772e4a47a5b122984abefaf5ef2d0fffbacaf277b22737c94889e646c16a029017d405b72b829e88bcf03b12f689cb2053884b24b47193a26978ab54a318 SHA512 decf0dbff09bf8ee12503e6117ab635b98cd8dd2c389acf7aeebf00f32b5fd8250d66c2ec54cfe5da45e727e39480ae738a3ee7fcad71684d8c3acf464fe21e7
-DIST spec-alpha-0.2.194.tar.gz 39101 BLAKE2B 86de07fd83495b72d3b7d85b803ee9ecafba9a72d8541b5c62f22ad32d4e16b0c7be758ea8d30b743eba6fe994e09898e2f59b2b720913e7e1ab3732b496423f SHA512 3170883c1d62acf9af1435a5ca1ced34a318c53d1cd443d58a74afdcae4888553b9dba91fb81ccea8824c3a0c2396a0efbfaeb8ab408d8bbcf1aea0d3da9c82e
diff --git a/dev-java/spec-alpha/files/build.xml b/dev-java/spec-alpha/files/build.xml
deleted file mode 100644
index ea47d06b77d2..000000000000
--- a/dev-java/spec-alpha/files/build.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<project name="spec.alpha" default="package" basedir=".">
- <property name="maven.build.finalName" value="spec.alpha-SNAPSHOT"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/clojure"/>
-
- <!-- clean -->
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- build -->
- <target name="build" description="Copy the files">
- <mkdir dir="${maven.build.outputDir}"/>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.srcDir.0}"/>
- </copy>
- </target>
-
- <!-- package -->
- <target name="package" depends="build" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- jar -->
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-</project>
diff --git a/dev-java/spec-alpha/metadata.xml b/dev-java/spec-alpha/metadata.xml
deleted file mode 100644
index be4b4200cdb4..000000000000
--- a/dev-java/spec-alpha/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>tgbugs@gmail.com</email>
- <name>Tom Gillespie</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <upstream>
- <remote-id type="github">clojure/spec.alpha</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/spec-alpha/spec-alpha-0.1.143.ebuild b/dev-java/spec-alpha/spec-alpha-0.1.143.ebuild
deleted file mode 100644
index d4a4e473b091..000000000000
--- a/dev-java/spec-alpha/spec-alpha-0.1.143.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-EGIT_REF="51b64c0"
-
-MY_PN=${PN//-/.}
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="A Clojure library to describe the structure of data and functions."
-HOMEPAGE="https://clojure.org/ https://github.com/clojure/spec.alpha"
-SRC_URI="https://github.com/clojure/${MY_PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0.1"
-KEYWORDS="~amd64 ~x86 ~x86-linux"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-EANT_TASKS="jar"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${MY_P}"
-
-src_prepare() {
- default
- cp "${FILESDIR}/build.xml" . || die
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- dodoc CONTRIBUTING.md README.md
-}
diff --git a/dev-java/spec-alpha/spec-alpha-0.2.176.ebuild b/dev-java/spec-alpha/spec-alpha-0.2.176.ebuild
deleted file mode 100644
index 5558df7e2a14..000000000000
--- a/dev-java/spec-alpha/spec-alpha-0.2.176.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-EGIT_REF="59af4cf"
-
-MY_PN=${PN//-/.}
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="A Clojure library to describe the structure of data and functions."
-HOMEPAGE="https://clojure.org/ https://github.com/clojure/spec.alpha"
-SRC_URI="https://github.com/clojure/${MY_PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0.2"
-KEYWORDS="~amd64 ~x86 ~x86-linux"
-IUSE=""
-
-CDEPEND="dev-java/ant-core:0"
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${MY_PN}-${MY_P}"
-
-EANT_TASKS="jar"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${MY_P}"
-
-src_prepare() {
- default
- cp "${FILESDIR}/build.xml" . || die
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- dodoc CONTRIBUTING.md README.md
-}
diff --git a/dev-java/spec-alpha/spec-alpha-0.2.194.ebuild b/dev-java/spec-alpha/spec-alpha-0.2.194.ebuild
deleted file mode 100644
index cab6d8cad0c7..000000000000
--- a/dev-java/spec-alpha/spec-alpha-0.2.194.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-EGIT_REF="fb55378"
-
-MY_P=spec.alpha-${PV}
-
-DESCRIPTION="A Clojure library to describe the structure of data and functions"
-HOMEPAGE="https://clojure.org/ https://github.com/clojure/spec.alpha"
-SRC_URI="https://github.com/clojure/spec.alpha/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="EPL-1.0"
-SLOT="0.2"
-KEYWORDS="~amd64 ~x86 ~x86-linux"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND="
- dev-java/ant-core:0
- >=virtual/jdk-1.8:*
-"
-
-S="${WORKDIR}/spec.alpha-${MY_P}"
-
-EANT_TASKS="jar"
-EANT_EXTRA_ARGS="-Dmaven.build.finalName=${MY_P}"
-
-src_prepare() {
- default
- cp "${FILESDIR}/build.xml" . || die
-}
-
-src_install() {
- java-pkg_newjar "target/${MY_P}.jar"
- einstalldocs
-}
diff --git a/dev-java/spice-jndikit/Manifest b/dev-java/spice-jndikit/Manifest
deleted file mode 100644
index 32619405542c..000000000000
--- a/dev-java/spice-jndikit/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST spice-jndikit-1.4.zip 55185 BLAKE2B 4d5068a3f2e12d287ecd657e2092a2e73e6637f2285dcea58b6d8c820508f21f1ceb508514813b34cf9c1a7536cbc530aba1edf0ca80603b3008e3afa240582a SHA512 798a1671cf79a9ecf7777a2b5b6caa0074dcca97cecb445c8dad9a44144cc71fed312f7a13d4b7e12f09eb23b0525b38bca62d67866db76f03ceb5a7a0501501
diff --git a/dev-java/spice-jndikit/metadata.xml b/dev-java/spice-jndikit/metadata.xml
deleted file mode 100644
index 18fdb353db5d..000000000000
--- a/dev-java/spice-jndikit/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription lang="en">
- Spice JNDIKit: JNDI Kit is a toolkit designed to help with the
- construction of JNDI providers. The toolkit also provides users
- with ready made memory-based and RMI-based contexts.
- </longdescription>
- <upstream>
- <remote-id type="github">realityforge/jndikit</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/spice-jndikit/spice-jndikit-1.4.ebuild b/dev-java/spice-jndikit/spice-jndikit-1.4.ebuild
deleted file mode 100644
index b2557cff7bdc..000000000000
--- a/dev-java/spice-jndikit/spice-jndikit-1.4.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN##*-}"
-
-DESCRIPTION="JNDI Kit is a toolkit designed to help with the construction of JNDI providers"
-HOMEPAGE="https://github.com/realityforge/jndikit"
-SRC_URI="https://github.com/realityforge/${MY_PN}/archive/${PV}.zip -> ${P}.zip"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- rm -rf src/test || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- pushd target/classes > /dev/null || die
- rmic org.realityforge.spice.jndikit.rmi.server.RMINamingProviderImpl \
- || die "rmic failed"
- popd > /dev/null || die
-}
diff --git a/dev-java/spin/Manifest b/dev-java/spin/Manifest
deleted file mode 100644
index f3e36dcc5688..000000000000
--- a/dev-java/spin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST spin-1.5-all.zip 482286 BLAKE2B d1b1de891290ed465f2886bea046d9aa106626be91e5ac37dcd795bb0ef5e558b3d81b1e86cfb168d660f4c2884d321d560bece50645822a0334848225c6638b SHA512 ce1fad3b138781359d472727b186722d6f1f23b7002dd1ada294efd80b3a9caf5de15207cdd682fcbfcafa85c63895c7dd9683fefb5ce5b09cc4115ae3733466
diff --git a/dev-java/spin/files/1.5-build.xml b/dev-java/spin/files/1.5-build.xml
deleted file mode 100644
index ac58aec49131..000000000000
--- a/dev-java/spin/files/1.5-build.xml
+++ /dev/null
@@ -1,197 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 4/20/07 5:09 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="spin-from-maven" default="dist" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environnement properties -->
- <!-- ====================================================================== -->
-
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="spin-1.5"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/java"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/main/java"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.settings.offline" value="true"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.4"
- verbose="false"
- fork="false"
- source="1.4">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}">
- <include name="**/*"/>
- <exclude name="**/*.java"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="junit-present, compile"
- description="Compile the test code"
- if="junit.present">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}" classpath="${gentoo.classpath}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.4"
- verbose="false"
- fork="false"
- source="1.4">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}">
- <include name="**/*"/>
- <exclude name="**/*.java"/>
- </fileset>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="junit-present, compile-tests"
- if="junit.present"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <pathelement path="${gentoo.classpath}"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/*Test.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present"/>
- </target>
-
- <target name="junit-present"
- depends="test-junit-present"
- unless="junit.present">
- <echo>=================================== WARNING ===================================</echo>
- <echo> Junit isn&apos;t present in your $ANT_HOME/lib directory. Tests not executed. </echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Dist target -->
- <!-- ====================================================================== -->
-
- <target name="dist" depends="package,test" description="Package the application and run tests"/>
-</project> \ No newline at end of file
diff --git a/dev-java/spin/files/1.5-maven-build.properties b/dev-java/spin/files/1.5-maven-build.properties
deleted file mode 100644
index 1d9c9b68034b..000000000000
--- a/dev-java/spin/files/1.5-maven-build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-#Generated by Maven Ant Plugin - DO NOT EDIT THIS FILE!
-#Fri Apr 20 17:09:04 EEST 2007
-project.build.outputDirectory=${maven.build.outputDir}
-project.build.directory=${maven.build.dir}
-maven.test.reports=${maven.build.dir}/test-reports
-maven.build.finalName=spin-1.5
-maven.reporting.outputDirectory=${maven.build.dir}/site
-maven.build.testResourceDir.0=src/test/java
-maven.build.outputDir=${maven.build.dir}/classes
-maven.build.resourceDir.0=src/main/java
-maven.build.testOutputDir=${maven.build.dir}/test-classes
-maven.settings.offline=false
-maven.build.dir=target
-maven.settings.interactiveMode=true
-maven.build.testDir.0=src/test/java
-maven.build.srcDir.0=src/main/java
diff --git a/dev-java/spin/metadata.xml b/dev-java/spin/metadata.xml
deleted file mode 100644
index 28ae24c42657..000000000000
--- a/dev-java/spin/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">spin</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/spin/spin-1.5-r1.ebuild b/dev-java/spin/spin-1.5-r1.ebuild
deleted file mode 100644
index ba1292591bb0..000000000000
--- a/dev-java/spin/spin-1.5-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Transparent threading solution for non-freezing Swing applications"
-HOMEPAGE="http://spin.sourceforge.net"
-SRC_URI="mirror://sourceforge/${PN}/${P}-all.zip"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-COMMON_DEP="dev-java/cglib:3"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${COMMON_DEP}"
-RDEPEND=">=virtual/jre-1.6
- ${COMMON_DEP}"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
- cp "${FILESDIR}/${PV}-build.xml" build.xml || die
- cp "${FILESDIR}/${PV}-maven-build.properties" maven-build.properties || die
- rm -v lib/*.jar || die
- java-pkg_filter-compiler jikes
-}
-
-EANT_GENTOO_CLASSPATH="cglib-3"
-
-# Needs X
-RESTRICT="test"
-
-src_test() {
- ANT_TASKS="ant-junit" eant test
-}
-
-src_install() {
- java-pkg_newjar target/${P}.jar
-
- use doc && java-pkg_dojavadoc target/site/apidocs
- use source && java-pkg_dosrc src/main/java/*
-}
diff --git a/dev-java/squareness-jlf/Manifest b/dev-java/squareness-jlf/Manifest
deleted file mode 100644
index 16c24b77ef73..000000000000
--- a/dev-java/squareness-jlf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST squareness_jlf_src-2.3.0.zip 67307 BLAKE2B c7719eae69fd710e0f30fc2f4cee025a56c846bbc78631a390292730bb82d2b753bc24a367e5568e5ddec0f7444a3903fda9e4d09a5e0d57a46561ed713bdf74 SHA512 9c3d1de6f682968b2e2db37afdaa571f53857897415df04489ecac1c545ddc0a8342df94c658797979a6024e6e69bbc9a8828029ec428248848c933c9f901a71
diff --git a/dev-java/squareness-jlf/files/build.xml b/dev-java/squareness-jlf/files/build.xml
deleted file mode 100644
index d4d7fdc7cf1a..000000000000
--- a/dev-java/squareness-jlf/files/build.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<project name="squareness-jlf" default="jar">
- <target name="compile">
- <mkdir dir="build"/>
- <javac srcdir="." destdir="build" classpath="${gentoo.classpath}">
- </javac>
- </target>
-
- <target name="jar" depends="compile">
- <jar destfile="squareness-jlf.jar" basedir="build"/>
- </target>
-
- <target name="javadoc" depends="compile">
- <mkdir dir="docs"/>
- <javadoc sourcepath="." destdir="docs" classpath="${gentoo.classpath}"/>
- </target>
-
-</project>
diff --git a/dev-java/squareness-jlf/metadata.xml b/dev-java/squareness-jlf/metadata.xml
deleted file mode 100644
index f535386f372f..000000000000
--- a/dev-java/squareness-jlf/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">squareness</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/squareness-jlf/squareness-jlf-2.3.0-r1.ebuild b/dev-java/squareness-jlf/squareness-jlf-2.3.0-r1.ebuild
deleted file mode 100644
index de776af3a056..000000000000
--- a/dev-java/squareness-jlf/squareness-jlf-2.3.0-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Squareness Java Look and Feel"
-HOMEPAGE="http://squareness.beeger.net/"
-SRC_URI="mirror://sourceforge/squareness/${PN/-/_}_src-${PV}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="${JAVA_PKG_IUSE}"
-
-S="${WORKDIR}"
-
-RDEPEND=">=virtual/jre-1.4
- dev-java/laf-plugin:0"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.4
- dev-java/laf-plugin:0"
-
-EANT_GENTOO_CLASSPATH="laf-plugin"
-
-java_prepare() {
- cp "${FILESDIR}"/build.xml build.xml || die
-}
-
-src_install() {
- java-pkg_dojar ${PN}.jar
-
- use doc && java-pkg_dojavadoc docs
- use source && java-pkg_dosrc net
-}
diff --git a/dev-java/stax2-api/Manifest b/dev-java/stax2-api/Manifest
new file mode 100644
index 000000000000..487d6cb5f013
--- /dev/null
+++ b/dev-java/stax2-api/Manifest
@@ -0,0 +1 @@
+DIST stax2-api-4.2.1.tar.gz 128806 BLAKE2B 64254b0bbd269e5d62931280773e0e7e7915204ce41a86eb10a08e3d8d27691d48094e17a8deb0ca3fa916b413800d75969af05db1ba897277c0dae13771e3b4 SHA512 f6fada289e75db0c4c911d3f70e8b8167c96342390168c87563ab4e3e1498360d47c393407cd8ae670716fcb7e1c83d6a8d38364d00648ed380844cf08bdc063
diff --git a/dev-java/stax2-api/metadata.xml b/dev-java/stax2-api/metadata.xml
new file mode 100644
index 000000000000..fc17369a40da
--- /dev/null
+++ b/dev-java/stax2-api/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+ <longdescription>
+ stax2 API is an extension to basic Stax 1.0 API that adds significant new functionality, such as full-featured bi-direction validation interface and high-performance Typed Access API.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/FasterXML/stax2-api/issues</bugs-to>
+ <remote-id type="github">FasterXML/stax2-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/stax2-api/stax2-api-4.2.1-r1.ebuild b/dev-java/stax2-api/stax2-api-4.2.1-r1.ebuild
new file mode 100644
index 000000000000..7f8730949f16
--- /dev/null
+++ b/dev-java/stax2-api/stax2-api-4.2.1-r1.ebuild
@@ -0,0 +1,35 @@
+# 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/FasterXML/stax2-api/archive/refs/tags/stax2-api-4.2.1.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild stax2-api-4.2.1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.codehaus.woodstox:stax2-api:4.2.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="stax2 API is an extension to basic Stax 1.0 API"
+HOMEPAGE="https://github.com/FasterXML/stax2-api"
+SRC_URI="https://github.com/FasterXML/${PN}/archive/refs/tags/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.9:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( README.md release-notes/VERSION )
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/stringprep/Manifest b/dev-java/stringprep/Manifest
new file mode 100644
index 000000000000..9cc1fa7dd95e
--- /dev/null
+++ b/dev-java/stringprep/Manifest
@@ -0,0 +1 @@
+DIST stringprep-1.1-sources.jar 23229 BLAKE2B f347262c7b3a7632c94111226333e964b51a3bb8af357b79a62e1f457c5fccd845cb2d232f8d3cca4fc149c2341b962724397eff53224ade10f492a17298a00c SHA512 88cec43ad19a7a2a6194a62999fecb35e17ff04127d72fb0990f4003e41af1d3a5aeb8b2cc3c0c87165cdcb005963faf244f05d78c6f00aac0ab1835d336e565
diff --git a/dev-java/stringprep/metadata.xml b/dev-java/stringprep/metadata.xml
new file mode 100644
index 000000000000..e870bae78b8b
--- /dev/null
+++ b/dev-java/stringprep/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="gitlab">ongresinc/stringprep</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/stringprep/stringprep-1.1.ebuild b/dev-java/stringprep/stringprep-1.1.ebuild
new file mode 100644
index 000000000000..4265e6c33f7a
--- /dev/null
+++ b/dev-java/stringprep/stringprep-1.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.ongres.stringprep:stringprep:1.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="SASLprep: Stringprep Profile for User Names and Passwords"
+HOMEPAGE="https://gitlab.com/ongresinc/stringprep"
+SRC_URI="https://repo1.maven.org/maven2/com/ongres/stringprep/stringprep/${PV}/stringprep-${PV}-sources.jar"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
diff --git a/dev-java/stringtemplate/Manifest b/dev-java/stringtemplate/Manifest
index 7b192ce400f9..99391fd2990b 100644
--- a/dev-java/stringtemplate/Manifest
+++ b/dev-java/stringtemplate/Manifest
@@ -1,3 +1,4 @@
-DIST antlr-3.5.2-complete.jar 2456317 BLAKE2B d9afa08ad98dbff16d30425b97a0ddac7402055916e6a7dd290c3b9a2b26a4751c02f405d8d13c186333430c370c94bd73419b14c8e46df2971f68536cc484a0 SHA512 560f208e38759b5e626de56816e1fce9c191c526c04ca782513859d468ac444d1e8e62c03870a68f8f9d8daee0f45fca465150e2bbfc71b46e46b952519044b1
+DIST ST4-4.3.4-sources.jar 198780 BLAKE2B 25f9b4baf43075ddbc946933a517e8361f88d152c4caba29a88770ab229c1b40636ebc4ccdf52a2132d94974e0d81dd114e4018658d178a2c44228007450ab7d SHA512 83ff2e17659c37407b91c83e7fcd3b5d44b206f6fdaaf8034122a3c9490778aeb24ecf90778b9dc9d6836bc59a01d75bacce71e27aadb8a5fa22b9373f7f7878
+DIST ST4-4.3.4.tar.gz 436814 BLAKE2B 40aba1cb009b669ad00285b4cdffa66632c38267f42b6b973bdb0a2f57f3c46fc13d1a929ac4745c104d658f127a63081ed5dde4c813c10e60ce7df3490d3517 SHA512 5061663c3130a50b03aaf1800a04103afae7db59758bc7957914b07718e50a139c5d486f90098368500c46d3d751ea1659c63531126fb146fb77eaeb6e244ea2
+DIST stringtemplate-3.2.1-4-java21-compatibility.patch 1973 BLAKE2B b48891549f1d9a3386b0a44a78f453a7938122e5b0b5eeba98888bfa843aea4e5732b4dbcf6aac66272c9fe5aeb9ed98aabcf3edcd155f43d5ad0c1d4d4cdd57 SHA512 8dcf841affc0e7da006b13bf4c5d44fc5315aa4790926e8598650b519fd57a4c322e4292ba58561c921308697a4be1b8b6528931eb79e6a9f2e9f7d1370599cc
DIST stringtemplate-3.2.1.tar.gz 107877 BLAKE2B e099aaef047de12706ca4c771f28742dc48ec14a577b2384b32850e304b29284436b3c850846136cbd37481ff48cfb2fd5935d2de3aafa5c817ae24f62579435 SHA512 76203182302d42a0f79de7e8a22f44c59ddc5604761034e420b6973894e0ca1e6154cbcb322ec6f9a064ee89cc5f6478b775a716692c80c7f0c77566aa8a0e25
-DIST stringtemplate-4.0.8.tar.gz 147305 BLAKE2B 0c09326f4eecfc86db8588a9b8db801bac8d8e128f8ef004a3691813d1dfcbd1e397acd5cad47e4c9d44d7ee8c17b8f6b66386fb897e4137df43dc46f46dc3f3 SHA512 21e4936356a6d374bf92645f09351a495a5900a408ead8dce1903ed81d7fc70eb4b44b206b587b05ed87edb2d4792c1cf72907a9cb527e18373ba2e5f31b5724
diff --git a/dev-java/stringtemplate/files/3.2.1-test-fixes.patch b/dev-java/stringtemplate/files/3.2.1-test-fixes.patch
deleted file mode 100644
index fd625abd0668..000000000000
--- a/dev-java/stringtemplate/files/3.2.1-test-fixes.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-https://github.com/antlr/stringtemplate3/pull/3
-
---- test/org/antlr/stringtemplate/test/TestStringTemplate.java.orig 2015-09-18 22:04:18.131902875 +0100
-+++ test/org/antlr/stringtemplate/test/TestStringTemplate.java 2015-09-18 22:04:21.651848456 +0100
-@@ -36,6 +36,10 @@
- import java.text.SimpleDateFormat;
- import java.util.*;
-
-+import org.junit.FixMethodOrder;
-+import org.junit.runners.MethodSorters;
-+
-+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
- public class TestStringTemplate extends TestCase {
- static final String newline = System.getProperty("line.separator");
-
-@@ -87,7 +91,7 @@
- assertEquals(expecting,I.toString());
- }
-
-- public void testNoGroupLoader() throws Exception {
-+ public void testAaaNoGroupLoader() throws Exception {
- // this also tests the group loader
- StringTemplateErrorListener errors = new ErrorBuffer();
- String tmpdir = System.getProperty("java.io.tmpdir");
-@@ -2214,8 +2218,12 @@
- s.add("2");
- s.add("3");
- st.setAttribute("items", s);
-- expecting = "<li>3</li><li>2</li><li>1</li>";
-- assertEquals(expecting, st.toString());
-+ String[] split = st.toString().split("(</?li>){1,2}");
-+ Arrays.sort(split);
-+ assertEquals("", split[0]);
-+ assertEquals("1", split[1]);
-+ assertEquals("2", split[2]);
-+ assertEquals("3", split[3]);
- }
-
- public void testDumpMapAndSet() throws Exception {
-@@ -2235,8 +2243,11 @@
- s.add("2");
- s.add("3");
- st.setAttribute("items", s);
-- expecting = "3,2,1";
-- assertEquals(expecting, st.toString());
-+ String[] split = st.toString().split(",");
-+ Arrays.sort(split);
-+ assertEquals("1", split[0]);
-+ assertEquals("2", split[1]);
-+ assertEquals("3", split[2]);
- }
-
- public class Connector3 {
diff --git a/dev-java/stringtemplate/files/4.0.8-r1-test-fixes.patch b/dev-java/stringtemplate/files/4.0.8-r1-test-fixes.patch
deleted file mode 100644
index 0834ccf9bcce..000000000000
--- a/dev-java/stringtemplate/files/4.0.8-r1-test-fixes.patch
+++ /dev/null
@@ -1,73 +0,0 @@
---- a/test/org/stringtemplate/v4/test/TestGroups.java 2014-03-25 11:55:55.000000000 +0000
-+++ b/test/org/stringtemplate/v4/test/TestGroups.java 2015-09-13 11:01:07.999800299 +0100
-@@ -29,6 +29,7 @@
-
- import org.junit.Assert;
- import org.junit.Test;
-+import org.junit.Ignore;
- import org.stringtemplate.v4.ST;
- import org.stringtemplate.v4.STErrorListener;
- import org.stringtemplate.v4.STGroup;
-@@ -527,6 +528,7 @@
- assertEquals(expected, result);
- }
-
-+ @Ignore
- @Test public void testUnknownNamedArg() throws Exception {
- String dir = getRandomDir();
- String groupFile =
---- a/test/org/stringtemplate/v4/test/TestGroupSyntaxErrors.java 2014-03-25 11:55:55.000000000 +0000
-+++ b/test/org/stringtemplate/v4/test/TestGroupSyntaxErrors.java 2015-09-13 11:01:05.011850826 +0100
-@@ -28,6 +28,7 @@
- package org.stringtemplate.v4.test;
-
- import org.junit.Test;
-+import org.junit.Ignore;
- import org.stringtemplate.v4.STErrorListener;
- import org.stringtemplate.v4.STGroup;
- import org.stringtemplate.v4.STGroupFile;
-@@ -36,6 +37,7 @@
- import static org.junit.Assert.assertEquals;
-
- public class TestGroupSyntaxErrors extends BaseTest {
-+ @Ignore
- @Test public void testMissingImportString() throws Exception {
- String templates =
- "import\n" +
---- a/test/org/stringtemplate/v4/test/TestRenderers.java
-+++ b/test/org/stringtemplate/v4/test/TestRenderers.java
-@@ -59,7 +59,7 @@ public class TestRenderers extends BaseTest {
- group.registerRenderer(GregorianCalendar.class, new DateRenderer());
- ST st = group.getInstanceOf("dateThing");
- st.add("created", new GregorianCalendar(2005, 07-1, 05));
-- String expecting = "datetime: 7/5/05 12:00 AM";
-+ String expecting = "datetime: 7/5/05, 12:00 AM";
- String result = st.render();
- assertEquals(expecting, result);
- }
-@@ -85,7 +85,7 @@ public class TestRenderers extends BaseTest {
- group.registerRenderer(GregorianCalendar.class, new DateRenderer());
- ST st = group.getInstanceOf("dateThing");
- st.add("created", new GregorianCalendar(2005, 07-1, 05));
-- String expecting = " datetime: 7/5/05 12:00 AM ";
-+ String expecting = " datetime: 7/5/05, 12:00 AM ";
- String result = st.render();
- assertEquals(expecting, result);
- }
-@@ -102,7 +102,7 @@ public class TestRenderers extends BaseTest {
- // set Timezone to "PDT"
- TimeZone.setDefault(TimeZone.getTimeZone("America/Los_Angeles"));
- st.add("created", new GregorianCalendar(2005, 07-1, 05));
-- String expecting = " datetime: Tuesday, July 5, 2005 12:00:00 AM PDT ";
-+ String expecting = " datetime: Tuesday, July 5, 2005 at 12:00:00 AM Pacific Daylight Time ";
- String result = st.render();
- assertEquals(expecting, result);
- } finally {
-@@ -358,6 +358,6 @@ public class TestRenderers extends BaseTest {
- cal.set(2012, Calendar.JUNE, 12);
- st.add("date", cal);
-
-- assertEquals("12 de Junho de 2012", st.render(new Locale("pt")));
-+ assertEquals("12 de junho de 2012", st.render(new Locale("pt")));
- }
- }
diff --git a/dev-java/stringtemplate/files/stringtemplate-3.2.1-TestStringTemplate.patch b/dev-java/stringtemplate/files/stringtemplate-3.2.1-TestStringTemplate.patch
new file mode 100644
index 000000000000..e12b3c63b26a
--- /dev/null
+++ b/dev-java/stringtemplate/files/stringtemplate-3.2.1-TestStringTemplate.patch
@@ -0,0 +1,11 @@
+https://bugs.gentoo.org/916571
+--- a/test/org/antlr/stringtemplate/test/TestStringTemplate.java
++++ b/test/org/antlr/stringtemplate/test/TestStringTemplate.java
+@@ -28,6 +28,7 @@
+ package org.antlr.stringtemplate.test;
+
+ import org.antlr.stringtemplate.*;
++import org.antlr.stringtemplate.StringTemplate;
+ import org.antlr.stringtemplate.language.AngleBracketTemplateLexer;
+ import org.antlr.stringtemplate.language.DefaultTemplateLexer;
+ import org.junit.Test;
diff --git a/dev-java/stringtemplate/files/stringtemplate-4.0.8-fix-tests.patch b/dev-java/stringtemplate/files/stringtemplate-4.0.8-fix-tests.patch
deleted file mode 100644
index 994fd42ad5e6..000000000000
--- a/dev-java/stringtemplate/files/stringtemplate-4.0.8-fix-tests.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 3ea94a870b6e139399abbf932da1dfa2f9bd37e3 Mon Sep 17 00:00:00 2001
-From: parrt <parrt@cs.usfca.edu>
-Date: Thu, 8 Nov 2018 11:40:24 -0800
-Subject: [PATCH] make tests work with java 10 and 6, 7, 8
-
----
- .../stringtemplate/v4/test/TestRenderers.java | 24 +++++++++++++++----
- 1 file changed, 20 insertions(+), 4 deletions(-)
-
-diff --git a/test/org/stringtemplate/v4/test/TestRenderers.java b/test/org/stringtemplate/v4/test/TestRenderers.java
-index bc5406f7..7b7536e0 100644
---- a/test/org/stringtemplate/v4/test/TestRenderers.java
-+++ b/test/org/stringtemplate/v4/test/TestRenderers.java
-@@ -48,6 +48,8 @@
-
- public class TestRenderers extends BaseTest {
-
-+ String javaVersion = System.getProperty("java.version");
-+
- // Make sure to use the US Locale during the tests
- private Locale origLocale;
-
-@@ -73,6 +75,9 @@ public void tearDown() {
- ST st = group.getInstanceOf("dateThing");
- st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
- String expecting = "datetime: 7/5/05, 12:00 AM";
-+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
-+ expecting = "datetime: 7/5/05 12:00 AM";
-+ }
- String result = st.render();
- assertEquals(expecting, result);
- }
-@@ -99,7 +104,10 @@ public void tearDown() {
- ST st = group.getInstanceOf("dateThing");
- st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
- String expecting = " datetime: 7/5/05, 12:00 AM ";
-- String result = st.render();
-+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
-+ expecting = " datetime: 7/5/05 12:00 AM ";
-+ }
-+ String result = st.render();
- assertEquals(expecting, result);
- }
-
-@@ -116,9 +124,13 @@ public void tearDown() {
- TimeZone.setDefault(TimeZone.getTimeZone("America/Los_Angeles"));
- st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
- String expecting = " datetime: Tuesday, July 5, 2005 at 12:00:00 AM Pacific Daylight Time ";
-- String result = st.render();
-+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
-+ expecting = " datetime: Tuesday, July 5, 2005 12:00:00 AM PDT ";
-+ }
-+ String result = st.render();
- assertEquals(expecting, result);
-- } finally {
-+ }
-+ finally {
- // Restore original Timezone
- TimeZone.setDefault(origTimeZone);
- }
-@@ -371,6 +383,10 @@ public void tearDown() {
- cal.set(2012, Calendar.JUNE, 12);
- st.add("date", cal);
-
-- assertEquals("12 de junho de 2012", st.render(new Locale("pt")));
-+ String expected = "12 de junho de 2012";
-+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
-+ expected = "12 de Junho de 2012";
-+ }
-+ assertEquals(expected, st.render(new Locale("pt")));
- }
- }
diff --git a/dev-java/stringtemplate/files/stringtemplate-4.3.4-BaseTest-javac-source-target.patch b/dev-java/stringtemplate/files/stringtemplate-4.3.4-BaseTest-javac-source-target.patch
new file mode 100644
index 000000000000..7c31d6b5a893
--- /dev/null
+++ b/dev-java/stringtemplate/files/stringtemplate-4.3.4-BaseTest-javac-source-target.patch
@@ -0,0 +1,26 @@
+From 4e12a210f2b933c92ded6ee141f6399144a866f5 Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Mon, 24 Jan 2022 06:17:03 -0800
+Subject: [PATCH] BaseTest.java: Change javac source/target to 1.8 for JDK 17
+
+JDK 17 no longer supports 1.6 as the source or target version.
+
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ test/org/stringtemplate/v4/test/BaseTest.java | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/stringtemplate4-ST4-4.3.4/test/org/stringtemplate/v4/test/BaseTest.java
++++ b/stringtemplate4-ST4-4.3.4/test/org/stringtemplate/v4/test/BaseTest.java
+@@ -258,7 +258,7 @@ public abstract class BaseTest {
+ fileManager.getJavaFileObjectsFromFiles(files);
+
+ Iterable<String> compileOptions =
+- Arrays.asList("-g", "-source", "1.6", "-target", "1.6", "-implicit:class", "-Xlint:-options", "-d", workingDirName, "-cp", workingDirName+pathSep+CLASSPATH);
++ Arrays.asList("-g", "-source", "1.8", "-target", "1.8", "-implicit:class", "-Xlint:-options", "-d", workingDirName, "-cp", workingDirName+pathSep+CLASSPATH);
+
+ JavaCompiler.CompilationTask task =
+ compiler.getTask(null, fileManager, null, compileOptions, null,
+--
+2.34.1
+
diff --git a/dev-java/stringtemplate/files/stringtemplate-4.3.4-Java21-TestRenderers.patch b/dev-java/stringtemplate/files/stringtemplate-4.3.4-Java21-TestRenderers.patch
new file mode 100644
index 000000000000..127f5e0a4b61
--- /dev/null
+++ b/dev-java/stringtemplate/files/stringtemplate-4.3.4-Java21-TestRenderers.patch
@@ -0,0 +1,41 @@
+there are different space characters used in java 21 (narrow space)
+
+--- a/stringtemplate4-ST4-4.3.4/test/org/stringtemplate/v4/test/TestRenderers.java
++++ b/stringtemplate4-ST4-4.3.4/test/org/stringtemplate/v4/test/TestRenderers.java
+@@ -77,6 +77,8 @@ public class TestRenderers extends BaseTest {
+ String expecting = "datetime: 7/5/05, 12:00 AM";
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expecting = "datetime: 7/5/05 12:00 AM";
++ } else if ( javaVersion.startsWith("21") ) {
++ expecting = "datetime: 7/5/05, 12:00 AM";
+ }
+ String result = st.render();
+ assertEquals(expecting, result);
+@@ -106,6 +108,8 @@ public class TestRenderers extends BaseTest {
+ String expecting = " datetime: 7/5/05, 12:00 AM ";
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expecting = " datetime: 7/5/05 12:00 AM ";
++ } else if ( javaVersion.startsWith("21") ) {
++ expecting = " datetime: 7/5/05, 12:00 AM ";
+ }
+ String result = st.render();
+ assertEquals(expecting, result);
+@@ -126,6 +130,8 @@ public class TestRenderers extends BaseTest {
+ String expecting = " datetime: Tuesday, July 5, 2005 at 12:00:00 AM Pacific Daylight Time ";
+ if ( javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7") || javaVersion.startsWith("1.8") ) {
+ expecting = " datetime: Tuesday, July 5, 2005 12:00:00 AM PDT ";
++ } else if ( javaVersion.startsWith("21") ) {
++ expecting = " datetime: Tuesday, July 5, 2005, 12:00:00 AM Pacific Daylight Time ";
+ }
+ String result = st.render();
+ assertEquals(expecting, result);
+@@ -160,6 +166,9 @@ public class TestRenderers extends BaseTest {
+ ST st = group.getInstanceOf("dateThing");
+ st.add("created", new GregorianCalendar(2005, 7 - 1, 5));
+ String expecting = " time: 12:00:00 AM ";
++ if ( javaVersion.startsWith("21") ) {
++ expecting = " time: 12:00:00 AM ";
++ }
+ String result = st.render();
+ assertEquals(expecting, result);
+ }
diff --git a/dev-java/stringtemplate/metadata.xml b/dev-java/stringtemplate/metadata.xml
index 5757a6a3f8e7..b4aba6185def 100644
--- a/dev-java/stringtemplate/metadata.xml
+++ b/dev-java/stringtemplate/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">antlr/stringtemplate3</remote-id>
<remote-id type="github">antlr/stringtemplate4</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/stringtemplate/stringtemplate-3.2.1-r1.ebuild b/dev-java/stringtemplate/stringtemplate-3.2.1-r1.ebuild
deleted file mode 100644
index 9b357c47389c..000000000000
--- a/dev-java/stringtemplate/stringtemplate-3.2.1-r1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit epatch java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Java template engine"
-HOMEPAGE="https://www.stringtemplate.org/"
-SRC_URI="https://github.com/antlr/${PN}3/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND=">=dev-java/antlr-2.7.7-r7:0"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.6
- test? ( >=dev-java/junit-4.11:4 )"
-
-S="${WORKDIR}/${P}"
-JAVA_GENTOO_CLASSPATH="antlr"
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- # https://github.com/antlr/stringtemplate3/pull/3
- epatch "${FILESDIR}/${PV}-test-fixes.patch"
-
- java-pkg_clean
-}
-
-src_compile() {
- local G; for G in action template angle.bracket.template eval group interface; do # from build.xml
- antlr -o src/org/antlr/stringtemplate/language/{,${G}.g} || die
- done
-
- java-pkg-simple_src_compile
-}
-
-src_install() {
- java-pkg-simple_src_install
- dodoc {CHANGES,README}.txt
-}
-
-src_test() {
- cd test || die
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4,${JAVA_GENTOO_CLASSPATH})"
-
- local TESTS=$(find * -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
diff --git a/dev-java/stringtemplate/stringtemplate-3.2.1-r2.ebuild b/dev-java/stringtemplate/stringtemplate-3.2.1-r2.ebuild
deleted file mode 100644
index e3e792562312..000000000000
--- a/dev-java/stringtemplate/stringtemplate-3.2.1-r2.ebuild
+++ /dev/null
@@ -1,59 +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 pom.xml --download-uri https://github.com/antlr/stringtemplate3/archive/68f2a42e8038f8e716e9666909ea485ee8aff45a.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild stringtemplate-3.2.1-r2.ebuild
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-MAVEN_ID="org.antlr:stringtemplate:3.2.2"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_COMMIT="68f2a42e8038f8e716e9666909ea485ee8aff45a"
-DESCRIPTION="A Java template engine"
-HOMEPAGE="https://www.stringtemplate.org/"
-SRC_URI="https://github.com/antlr/stringtemplate3/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-1"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-# Common dependencies
-# POM: pom.xml
-# antlr:antlr:2.7.7 -> >=dev-java/antlr-2.7.7:0
-
-CDEPEND="
- dev-java/antlr:0
-"
-
-DEPEND="
- >=virtual/jdk-1.8:*
- ${CDEPEND}
-"
-
-RDEPEND="
- >=virtual/jre-1.8:*
- ${CDEPEND}
-"
-
-DOCS=( {CHANGES,README}.txt )
-
-S="${WORKDIR}/${PN}3-${MY_COMMIT}"
-
-JAVA_GENTOO_CLASSPATH="antlr"
-JAVA_SRC_DIR="src"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit-4"
-JAVA_TEST_SRC_DIR="test"
-JAVA_TEST_RESOURCE_DIRS="test"
-
-src_compile() {
- local G; for G in action template angle.bracket.template eval group interface; do # from build.xml
- antlr -o src/org/antlr/stringtemplate/language/{,${G}.g} || die
- done
-
- java-pkg-simple_src_compile
-}
diff --git a/dev-java/stringtemplate/stringtemplate-3.2.1-r3.ebuild b/dev-java/stringtemplate/stringtemplate-3.2.1-r3.ebuild
new file mode 100644
index 000000000000..544099d09244
--- /dev/null
+++ b/dev-java/stringtemplate/stringtemplate-3.2.1-r3.ebuild
@@ -0,0 +1,52 @@
+# 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.antlr:stringtemplate:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A Java template engine"
+HOMEPAGE="https://www.stringtemplate.org/"
+MY_COMMIT="68f2a42e8038f8e716e9666909ea485ee8aff45a"
+DEB="3.2.1-4"
+SRC_URI="https://github.com/antlr/stringtemplate3/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz
+ https://sources.debian.org/data/main/s/${PN}/${DEB}/debian/patches/java21-compatibility.patch \
+ -> ${PN}-${DEB}-java21-compatibility.patch"
+S="${WORKDIR}/${PN}3-${MY_COMMIT}"
+
+LICENSE="BSD-1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris"
+
+CP_DEPEND="dev-java/antlr:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( {CHANGES,README}.txt )
+PATCHES=(
+ "${DISTDIR}/stringtemplate-${DEB}-java21-compatibility.patch"
+ "${FILESDIR}/stringtemplate-3.2.1-TestStringTemplate.patch"
+)
+
+JAVA_SRC_DIR="src"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="test"
+JAVA_TEST_RESOURCE_DIRS="test"
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+}
+
+src_compile() {
+ local G; for G in action template angle.bracket.template eval group interface; do # from build.xml
+ antlr -o src/org/antlr/stringtemplate/language/{,${G}.g} || die
+ done
+ java-pkg-simple_src_compile
+}
diff --git a/dev-java/stringtemplate/stringtemplate-4.0.8-r1.ebuild b/dev-java/stringtemplate/stringtemplate-4.0.8-r1.ebuild
deleted file mode 100644
index 72831a73fdbb..000000000000
--- a/dev-java/stringtemplate/stringtemplate-4.0.8-r1.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ANTLR3="3.5.2"
-JAVA_PKG_IUSE="doc source test"
-JAVA_TESTING_FRAMEWORKS="junit-4"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A Java template engine"
-HOMEPAGE="https://www.stringtemplate.org/"
-SRC_URI="https://github.com/antlr/${PN}4/archive/${PV}.tar.gz -> ${P}.tar.gz
- https://www.antlr3.org/download/antlr-${ANTLR3}-complete.jar"
-
-LICENSE="BSD"
-SLOT="4"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-RESTRICT="!test? ( test )"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-# StringTemplate has a cyclic dependency on ANTLR 3. The runtime classes
-# are needed at build time and runtime and the tool is also needed at
-# build time. To break out of this, we use a prebuilt copy of ANTLR 3 at
-# build time and manually register a dependency on the package, which
-# will be present at runtime thanks to this PDEPEND. No prebuilt
-# software is actually installed onto the system.
-PDEPEND=">=dev-java/antlr-${ANTLR3}:3.5"
-
-S="${WORKDIR}/${PN}4-${PV}"
-JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/antlr-${ANTLR3}-complete.jar"
-JAVA_SRC_DIR="src"
-
-PATCHES=(
- # These tests are broken but are probably fixed in current master.
- "${FILESDIR}/4.0.8-r1-test-fixes.patch"
- "${FILESDIR}/${P}-fix-tests.patch"
-)
-
-src_unpack() {
- unpack ${P}.tar.gz
-}
-
-src_prepare() {
- default
-
- # Some of these tests requires a graphical display.
- rm -v test/org/stringtemplate/v4/test/TestEarlyEvaluation.java || die
-}
-
-src_compile() {
- java -jar "${JAVA_GENTOO_CLASSPATH_EXTRA}" -lib ${JAVA_SRC_DIR}/org/stringtemplate/v4/compiler $(find ${JAVA_SRC_DIR} -name "*.g") || die
- java-pkg-simple_src_compile
-}
-
-src_test() {
- cd test || die
- local CP=".:${S}/${PN}.jar:$(java-pkg_getjars junit-4):${JAVA_GENTOO_CLASSPATH_EXTRA}"
-
- local TESTS=$(find * -name "Test*.java")
- TESTS="${TESTS//.java}"
- TESTS="${TESTS//\//.}"
-
- ejavac -classpath "${CP}" $(find -name "*.java")
- ejunit4 -classpath "${CP}" ${TESTS}
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_register-dependency antlr-3.5 antlr-runtime.jar
- dodoc {CHANGES,contributors,README}.txt
-}
diff --git a/dev-java/stringtemplate/stringtemplate-4.3.4.ebuild b/dev-java/stringtemplate/stringtemplate-4.3.4.ebuild
new file mode 100644
index 000000000000..dd01fef37fd3
--- /dev/null
+++ b/dev-java/stringtemplate/stringtemplate-4.3.4.ebuild
@@ -0,0 +1,96 @@
+# 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.antlr:ST4:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A Java template engine"
+HOMEPAGE="https://www.stringtemplate.org/"
+# Maven Central sources JAR for *.java sources pre-generated from *.g files;
+# the source generation requires antlr-tool-3.5, which depends on this package.
+# Tarball for the test suite and DOCS files
+SRC_URI="
+ https://repo1.maven.org/maven2/org/antlr/ST4/${PV}/ST4-${PV}-sources.jar
+ https://github.com/antlr/stringtemplate4/archive/ST4-${PV}.tar.gz
+"
+S="${WORKDIR}"
+TARBALL_S="${S}/${PN}4-ST4-${PV}"
+
+LICENSE="BSD"
+SLOT="4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris"
+
+CP_DEPEND="
+ dev-java/antlr-runtime:3.5
+"
+
+BDEPEND="
+ app-arch/unzip
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/antlr-tool:3.5
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+JAVA_SRC_DIR="org"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,antlr-tool-3.5"
+JAVA_TEST_SRC_DIR="${TARBALL_S}/test"
+JAVA_TEST_RESOURCE_DIRS=( "${TARBALL_S}/test/resources" )
+
+DOCS=( "${TARBALL_S}/"{CHANGES.txt,README.md} )
+PATCHES=( "${FILESDIR}/stringtemplate-4.3.4-BaseTest-javac-source-target.patch" )
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ # keep test.jar - it is required to pass the tests as of version 4.3.2
+ java-pkg_clean ! -path */test.jar
+ # Some of these tests requires a graphical display.
+ rm -v "${JAVA_TEST_SRC_DIR}/org/stringtemplate/v4/test/TestEarlyEvaluation.java" || die
+}
+
+src_test() {
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 21; then
+ eapply "${FILESDIR}/stringtemplate-4.3.4-Java21-TestRenderers.patch"
+ fi
+ # Make sure no older versions of this slot are present in the classpath
+ # https://bugs.gentoo.org/834138#c4
+ local old_ver_cp="$(nonfatal java-pkg_getjars "${PN}-${SLOT}")"
+ local new_test_cp="$(\
+ java-pkg_getjars --with-dependencies "${JAVA_TEST_GENTOO_CLASSPATH}")"
+ new_test_cp="${new_test_cp//"${old_ver_cp}"/}"
+
+ # Some of the test cases require an absolute path to the JAR being tested
+ # against to be in the classpath, due to the fact that they call the 'java'
+ # command outside ${S} and reuse the classpath for the tests:
+ # https://github.com/antlr/stringtemplate4/blob/4.3.1/test/org/stringtemplate/v4/test/TestImports.java#L103
+ # https://github.com/antlr/stringtemplate4/blob/4.3.1/test/org/stringtemplate/v4/test/BaseTest.java#L174
+ new_test_cp="${S}/${JAVA_JAR_FILENAME}:${new_test_cp}"
+
+ # The JAR used as a test resource file needs to be in the classpath
+ # https://github.com/antlr/stringtemplate4/blob/4.3.2/pom.xml#L53-L58
+ new_test_cp+=":${JAVA_TEST_SRC_DIR}/test.jar"
+
+ # Use JAVA_GENTOO_CLASSPATH_EXTRA to set test classpath
+ local JAVA_TEST_GENTOO_CLASSPATH=""
+ [[ -n "${JAVA_GENTOO_CLASSPATH_EXTRA}" ]] &&
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":"
+ JAVA_GENTOO_CLASSPATH_EXTRA+="${new_test_cp}"
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/sun-jaf/Manifest b/dev-java/sun-jaf/Manifest
deleted file mode 100644
index 2b0b3b9b77cc..000000000000
--- a/dev-java/sun-jaf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sun-jaf-1.1.1.tar.bz2 125305 BLAKE2B bf7676f3b47e9cf4c169a7625160604c7973d2bb8f6a087f7a7759c924efc0c24fbc6d59f03fb89dc874b2ad03e311b5029fc066fe5083c1accdc73fa9666ea6 SHA512 c7287056514324aa5feeed3d4afaf861869974dd565f7810e0161fe590f070ec894e7005ffac4dd42cf075313237027d7d7c88cbf583e28e05df361536d73001
diff --git a/dev-java/sun-jaf/metadata.xml b/dev-java/sun-jaf/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/sun-jaf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/sun-jaf/sun-jaf-1.1.1-r1.ebuild b/dev-java/sun-jaf/sun-jaf-1.1.1-r1.ebuild
deleted file mode 100644
index d979f1b67800..000000000000
--- a/dev-java/sun-jaf/sun-jaf-1.1.1-r1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Sun's JavaBeans Activation Framework (JAF)"
-HOMEPAGE="http://java.sun.com/products/javabeans/glasgow/jaf.html"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-LICENSE="CDDL"
-SLOT="0"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/glassfish/activation"
diff --git a/dev-java/sun-jai-bin/metadata.xml b/dev-java/sun-jai-bin/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/sun-jai-bin/metadata.xml
+++ b/dev-java/sun-jai-bin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r1.ebuild b/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r1.ebuild
deleted file mode 100644
index b611b620af97..000000000000
--- a/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-MY_PV=${PV//./_}
-DESCRIPTION="JAI is a class library for managing images"
-HOMEPAGE="https://jai.dev.java.net/"
-
-BASE=http://download.java.net/media/jai/builds/release/${MY_PV}
-MY_P="jai-${MY_PV}"
-SRC_URI="
- !amd64? ( ${BASE}/${MY_P}-lib-linux-i586.tar.gz )
- amd64? ( ${BASE}/${MY_P}-lib-linux-amd64.tar.gz )"
-
-LICENSE="sun-bcla-jai"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE=""
-
-DEPEND=""
-RDEPEND=">=virtual/jre-1.3"
-
-RESTRICT="bindist mirror"
-QA_PREBUILT="*"
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
- default
- rm LICENSE-jai.txt || die
-}
-
-src_compile() { :; }
-
-src_install() {
- dodoc *.txt
-
- java-pkg_dojar lib/*.jar
- use x86 && java-pkg_doso lib/*.so
- use amd64 && java-pkg_doso lib/*.so
-}
-
-pkg_postinst() {
- elog "This ebuild now installs into /opt/${PN} and /usr/share/${PN}"
- elog 'To use you need to pass the following to java'
- if use x86 || use amd64; then
- elog '-Djava.library.path=$(java-config -i sun-jai-bin)'
- fi
- elog '-classpath $(java-config -p sun-jai-bin)'
-}
diff --git a/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r2.ebuild b/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r2.ebuild
index dda39756714c..8f2bf9a016a3 100644
--- a/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r2.ebuild
+++ b/dev-java/sun-jai-bin/sun-jai-bin-1.1.3-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -17,7 +17,7 @@ SRC_URI="
LICENSE="sun-bcla-jai"
SLOT="0"
-KEYWORDS="~amd64 ~ppc64"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
DEPEND=""
RDEPEND="virtual/jre:1.8"
diff --git a/dev-java/sun-jai-bin/sun-jai-bin-1.1.3.ebuild b/dev-java/sun-jai-bin/sun-jai-bin-1.1.3.ebuild
deleted file mode 100644
index 1e21ce70574f..000000000000
--- a/dev-java/sun-jai-bin/sun-jai-bin-1.1.3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-MY_PV=${PV//./_}
-DESCRIPTION="JAI is a class library for managing images"
-HOMEPAGE="https://jai.dev.java.net/"
-SRC_URI="http://download.java.net/media/jai/builds/release/${MY_PV}/jai-${MY_PV}-lib-linux-i586.tar.gz"
-
-LICENSE="sun-bcla-jai"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-BDEPEND="app-arch/unzip"
-RDEPEND=">=virtual/jre-1.3"
-
-RESTRICT="bindist mirror"
-QA_PREBUILT="*"
-
-S=${WORKDIR}/jai-${MY_PV}
-
-src_prepare() {
- default
- rm LICENSE-jai.txt || die
-}
-
-src_compile() { :; }
-
-src_install() {
- dodoc *.txt
-
- java-pkg_dojar lib/*.jar
- use x86 && java-pkg_doso lib/*.so
-}
-
-pkg_postinst() {
- elog "This ebuild now installs into /opt/${PN} and /usr/share/${PN}"
- elog 'To use you need to pass the following to java'
- use x86 && elog '-Djava.library.path=$(java-config -i sun-jai-bin)'
- elog '-classpath $(java-config -p sun-jai-bin)'
-}
diff --git a/dev-java/sun-jimi/Manifest b/dev-java/sun-jimi/Manifest
deleted file mode 100644
index e3e08403373f..000000000000
--- a/dev-java/sun-jimi/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jimi1_0.zip 3880977 BLAKE2B b286cdc725cad2037d19bb188145ca0cd0799993011a8f22aa671e8807afd96dd3a9f3035a82dff9823ccba503e711db6b2ef377fc039c7050fc105655114ce6 SHA512 28ae3b3044910fca80dbdf23fee5f0d050df64ef48a09c41a836f3ff78365258c747f69a958579abda68d6d6f1c6b6a3ea5e960d36f2199afdb06258a25173d5
diff --git a/dev-java/sun-jimi/metadata.xml b/dev-java/sun-jimi/metadata.xml
deleted file mode 100644
index 74ea6711cb29..000000000000
--- a/dev-java/sun-jimi/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-
-Jimi is a class library for managing images. Its primary function is image I/O.
-Jimi was formerly a product of Activated Intelligence. Sun is making it
-available for developers who have code with dependencies on Jimi or for those
-who need image I/O functionality in applications running under 1.1.x versions of
-the Java Platform.
-
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/sun-jimi/sun-jimi-1.0-r3.ebuild b/dev-java/sun-jimi/sun-jimi-1.0-r3.ebuild
deleted file mode 100644
index 23519e269b4d..000000000000
--- a/dev-java/sun-jimi/sun-jimi-1.0-r3.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc"
-
-inherit java-pkg-2
-
-DESCRIPTION="Jimi is a class library for managing images"
-HOMEPAGE="http://www.oracle.com/technetwork/java/index.html"
-SRC_URI="jimi1_0.zip"
-
-LICENSE="Oracle-BCLA-JavaSE"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.3"
-DEPEND=">=virtual/jdk-1.3
- app-arch/unzip"
-
-RESTRICT="bindist fetch"
-
-S=${WORKDIR}/Jimi
-
-pkg_nofetch() {
- local download_url="http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-client-419417.html#7259-jimi_sdk-1.0-oth-JPR"
- einfo "Please download ${A} from the following url and place it into your"
- einfo "DISTDIR directory:"
- einfo "${download_url} "
-}
-
-java_prepare() {
- rm -r src/classes/* || die
-}
-
-src_compile() {
- cd "${S}/src"
- ejavac -classpath . -d classes $(cat main_classes.txt) || die "failes to compile"
- jar -cf ${PN}.jar -C classes . || die "failed to create jar"
-}
-
-src_install() {
- java-pkg_dojar src/${PN}.jar
-
- dodoc Readme
- use doc && java-pkg_dohtml -r docs/*
-}
diff --git a/dev-java/sun-jms/Manifest b/dev-java/sun-jms/Manifest
deleted file mode 100644
index 9e8f8d20964c..000000000000
--- a/dev-java/sun-jms/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jms-1_1-fr-apidocs.zip 361922 BLAKE2B 75342eaeb56ba329948a226f48304e0a520e83f7284d5d8b46b981531b7f8c78283e38b2a488177349aaabb70276fd4ca09bc86993800906aea1469a6549f318 SHA512 ac2c7925b7f5bd3918f0c69a7b18dfa2a15f58243aef7cb429c0571ea218860fc146fd355c905e17310072263f64385b9010eafb1050158f42f498d7f21dfe1d
diff --git a/dev-java/sun-jms/metadata.xml b/dev-java/sun-jms/metadata.xml
deleted file mode 100644
index 00af286f523b..000000000000
--- a/dev-java/sun-jms/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- The Java Message Service (JMS) API is a messaging standard that
- allows application components to create, send, receive, and read
- messages.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/sun-jms/sun-jms-1.1-r3.ebuild b/dev-java/sun-jms/sun-jms-1.1-r3.ebuild
deleted file mode 100644
index 3772dd7778f5..000000000000
--- a/dev-java/sun-jms/sun-jms-1.1-r3.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
-
-inherit java-pkg-2
-
-DOWNLOAD_PAGE="http://download.oracle.com/otndocs/jcp/7542-jms-1.1-fr-doc-oth-JSpec/"
-At="jms-${PV/./_}-fr-apidocs.zip"
-
-DESCRIPTION="The Java Message Service (JMS) API"
-HOMEPAGE="https://www.oracle.com/java/technologies/java-message-service.html"
-SRC_URI="${At}"
-
-LICENSE="sun-bcla-jms"
-SLOT=0
-KEYWORDS="amd64 arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
-IUSE="doc"
-
-DEPEND=" >=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
-
-RESTRICT="bindist fetch"
-
-S="${WORKDIR}/${PN//sun-/}${PV}"
-
-pkg_nofetch() {
- einfo
- einfo " Due to license restrictions, we cannot fetch the"
- einfo " distributables automagically."
- einfo
- einfo " 1. Visit ${DOWNLOAD_PAGE}"
- einfo " 2. Accept the License Agreement"
- einfo " 3. Download ${At}"
- einfo " 4. Move the file to your DISTDIR directory"
- einfo
-}
-
-src_prepare() {
- default
- rm -v lib/*.jar || die
-}
-
-src_compile() {
- mkdir build || die
- cd src/share || die
- ejavac -nowarn -d "${S}"/build $(find . -name "*.java") || die
- if use doc ; then
- mkdir "${S}"/api || die
- javadoc -d "${S}"/api -quiet javax.jms || die
- fi
-
- cd "${S}" || die
- jar cf jms.jar -C build . || die
-}
-
-src_install() {
- java-pkg_dojar jms.jar
- use doc && java-pkg_dohtml -r api
-}
diff --git a/dev-java/super-csv/Manifest b/dev-java/super-csv/Manifest
deleted file mode 100644
index e62d5cebeb76..000000000000
--- a/dev-java/super-csv/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST super-csv-2.3.1.zip 16624601 BLAKE2B 0d8b6f21f8f8b50dfb981bbce0e7012e85ea0b4512777da36094943ee6ce303c12c05e1c55d0e5c22cfd9b7c651723617dd83e58b301f3f041128f24e16faa3e SHA512 6b418e4875e5c553572fc8fbb8fac47f5bd9647aa6261bcb5115234b0d23ed606e88b862fe3203837ed389cb2216ab707909bb6ed1cd18297b8d481973170515
diff --git a/dev-java/super-csv/files/super-csv-2.3.1-build.xml b/dev-java/super-csv/files/super-csv-2.3.1-build.xml
deleted file mode 100644
index 94a8f2125a29..000000000000
--- a/dev-java/super-csv/files/super-csv-2.3.1-build.xml
+++ /dev/null
@@ -1,235 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 10/14/15 7:02 AM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="super-csv" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="super-csv-2.3.1"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath"/>
- <path id="build.test.classpath">
- <pathelement location="${maven.repo.local}/junit/junit/4.11/junit-4.11.jar"/>
- <pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"/>
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false">
- <link href="http://java.sun.com/j2se/1.5.0/docs/api"/>
- <link href="http://dozer.sourceforge.net/apidocs"/>
- <link href="http://www.joda.org/joda-time/apidocs"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/super-csv/metadata.xml b/dev-java/super-csv/metadata.xml
deleted file mode 100644
index 4437de6dfc91..000000000000
--- a/dev-java/super-csv/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <upstream>
- <remote-id type="github">super-csv/super-csv</remote-id>
- </upstream>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- <name>Patrice Clement</name>
- </maintainer>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/super-csv/super-csv-2.3.1.ebuild b/dev-java/super-csv/super-csv-2.3.1.ebuild
deleted file mode 100644
index 3b686ea92fca..000000000000
--- a/dev-java/super-csv/super-csv-2.3.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="source doc test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A fast, programmer-friendly, free CSV library for Java"
-HOMEPAGE="http://super-csv.github.io/"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.zip -> ${P}.zip"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- )"
-
-IUSE=""
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_BUILD_TARGET="package"
-EANT_BUILD_XML="${PN}/build.xml"
-
-java_prepare() {
- cp -v "${FILESDIR}/${P}-build.xml" "${S}/${PN}/build.xml" || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "${PN}/target/${P}.jar" "${PN}.jar"
- dodoc README.md
- use doc && java-pkg_dojavadoc "${PN}/target/site/apidocs"
- use source && java-pkg_dosrc "${PN}/src/main/java"
-}
diff --git a/dev-java/swing-layout/metadata.xml b/dev-java/swing-layout/metadata.xml
index 6d837ec7a8a7..3ef56a78f408 100644
--- a/dev-java/swing-layout/metadata.xml
+++ b/dev-java/swing-layout/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/swing-layout/swing-layout-1.0.4-r1.ebuild b/dev-java/swing-layout/swing-layout-1.0.4-r1.ebuild
deleted file mode 100644
index 13cbbd704cfb..000000000000
--- a/dev-java/swing-layout/swing-layout-1.0.4-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Professional cross platform layouts with Swing"
-HOMEPAGE="https://swing-layout.dev.java.net/"
-SRC_URI="mirror://gentoo/${P}-src.zip"
-
-LICENSE="LGPL-2.1"
-SLOT="1"
-KEYWORDS="amd64 x86"
-
-DEPEND="
- >=virtual/jdk-1.6"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-src_prepare() {
- default
-}
diff --git a/dev-java/swing-layout/swing-layout-1.0.4-r2.ebuild b/dev-java/swing-layout/swing-layout-1.0.4-r2.ebuild
new file mode 100644
index 000000000000..e7338fbad6a8
--- /dev/null
+++ b/dev-java/swing-layout/swing-layout-1.0.4-r2.ebuild
@@ -0,0 +1,29 @@
+# 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-pkg-simple
+
+DESCRIPTION="Professional cross platform layouts with Swing"
+HOMEPAGE="https://swing-layout.dev.java.net/"
+SRC_URI="mirror://gentoo/${P}-src.zip"
+
+LICENSE="LGPL-2.1"
+SLOT="1"
+KEYWORDS="amd64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="
+ >=virtual/jre-1.8:*"
+
+BDEPEND="
+ app-arch/unzip"
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src"
diff --git a/dev-java/swingx-beaninfo/metadata.xml b/dev-java/swingx-beaninfo/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/swingx-beaninfo/metadata.xml
+++ b/dev-java/swingx-beaninfo/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4-r1.ebuild b/dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4-r1.ebuild
new file mode 100644
index 000000000000..ce085b076923
--- /dev/null
+++ b/dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4-r1.ebuild
@@ -0,0 +1,33 @@
+# 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-pkg-simple
+
+DESCRIPTION="SwingX Beaninfo"
+HOMEPAGE="https://java.net/projects/swingx/"
+SRC_URI="https://java.net/downloads/swingx/releases/${P}-sources.jar"
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+CDEPEND="dev-java/swingx:1.6"
+
+RDEPEND=">=virtual/jre-1.8:*
+ ${CDEPEND}"
+
+DEPEND=">=virtual/jdk-1.8:*
+ ${CDEPEND}"
+
+BDEPEND="
+ app-arch/unzip"
+
+JAVA_GENTOO_CLASSPATH="swingx-1.6"
+
+src_compile() {
+ java-pkg-simple_src_compile
+ java-pkg_addres ${PN}.jar .
+}
diff --git a/dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4.ebuild b/dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4.ebuild
deleted file mode 100644
index d16f79a73d8a..000000000000
--- a/dev-java/swingx-beaninfo/swingx-beaninfo-1.6.4.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="SwingX Beaninfo"
-HOMEPAGE="https://java.net/projects/swingx/"
-SRC_URI="https://java.net/downloads/swingx/releases/${P}-sources.jar"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/swingx:1.6"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.6
- ${CDEPEND}
- app-arch/unzip"
-
-JAVA_GENTOO_CLASSPATH="swingx-1.6"
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar .
-}
diff --git a/dev-java/swingx-ws/Manifest b/dev-java/swingx-ws/Manifest
index 581fb7142f3c..8a9741d2abe4 100644
--- a/dev-java/swingx-ws/Manifest
+++ b/dev-java/swingx-ws/Manifest
@@ -1,2 +1 @@
-DIST swingx-ws-1.0-sources.jar 281598 BLAKE2B bf978c90d302183818a9da0bc2151b03bc4284d83bac9064a9dfc4db1a1bc95f28e835c45e6aa57a6b47a407926d01273c8ec0ea3bfa22052608c0106ca52a53 SHA512 722f8642e3a7c7825dd44cf01eca624b1d8a6bbfa829dbd7be326b53bf9d5467f48293489bbac6466ba9e74d991caaa6c9d56f0b7a08d205133926413517ca28
DIST swingx-ws-2011_05_15-src.zip 7010679 BLAKE2B 529507f3a7f48d38eb755001b2d442d040adf884a31a49c00f57fc638855e96b195a50813196fdb7318860b0a547eb8220fdd2d05ed613c2cd7d83cb8b7dd7fd SHA512 1929bcd5d615e336fbf77f5c0406a15f0b8aae1ea2167106b8efe2708bf365b39a2313d2a22b5f77ca9559b161db5c50dc18d0cc4cebfcf7a0e4e0c978d4d5da
diff --git a/dev-java/swingx-ws/files/swingx-ws-1.0_p20110515-replace-sun.misc-classes-for-java-9+.patch b/dev-java/swingx-ws/files/swingx-ws-1.0_p20110515-replace-sun.misc-classes-for-java-9+.patch
new file mode 100644
index 000000000000..f254274c62cc
--- /dev/null
+++ b/dev-java/swingx-ws/files/swingx-ws-1.0_p20110515-replace-sun.misc-classes-for-java-9+.patch
@@ -0,0 +1,40 @@
+From 803016b9b4bd6cc96efb6cba8c37befaf410be61 Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Sun, 20 Feb 2022 11:07:41 -0800
+Subject: [PATCH] Replace use of sun.misc.BASE64{En,De}coder for Java 9+
+
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ java/org/jdesktop/http/Request.java | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/java/org/jdesktop/http/Request.java b/java/org/jdesktop/http/Request.java
+index ff72322..57c4bf8 100644
+--- a/java/org/jdesktop/http/Request.java
++++ b/java/org/jdesktop/http/Request.java
+@@ -30,8 +30,7 @@ import org.jdesktop.beans.AbstractBean;
+ import org.jdesktop.http.Header.Element;
+ import org.jdesktop.xpath.XPathUtils;
+ import org.w3c.dom.Document;
+-import sun.misc.BASE64Decoder;
+-import sun.misc.BASE64Encoder;
++import java.util.Base64;
+
+ /**
+ * <p>Represents an http request. A <code>Request</code> is constructed and then
+@@ -613,10 +612,10 @@ public class Request extends AbstractBean {
+ }
+
+ private static String base64Encode(String s) throws Exception {
+- return new String(new BASE64Encoder().encode(s.getBytes()));
++ return Base64.getEncoder().encodeToString(s.getBytes());
+ }
+
+ private static String base64Decode(String s) throws Exception {
+- return new String(new BASE64Decoder().decodeBuffer(s));
++ return new String(Base64.getDecoder().decode(s));
+ }
+ }
+--
+2.34.1
+
diff --git a/dev-java/swingx-ws/metadata.xml b/dev-java/swingx-ws/metadata.xml
index 4a2709478a9d..a70d6fb2e1b6 100644
--- a/dev-java/swingx-ws/metadata.xml
+++ b/dev-java/swingx-ws/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/swingx-ws/swingx-ws-1.0-r1.ebuild b/dev-java/swingx-ws/swingx-ws-1.0-r1.ebuild
deleted file mode 100644
index bb050ca9a791..000000000000
--- a/dev-java/swingx-ws/swingx-ws-1.0-r1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Utilities and widgets to integrate Swing GUIs with web applications"
-HOMEPAGE="https://java.net/projects/swingx-ws/"
-SRC_URI="http://central.maven.org/maven2/org/swinglabs/${PN}/${PV}/${P}-sources.jar"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CP_DEPEND="
- dev-java/commons-httpclient:3
- dev-java/jdom:0
- dev-java/json:0
- dev-java/jtidy:0
- dev-java/rome:0
- dev-java/swingx:1.6
- dev-java/swingx-beaninfo:0
- dev-java/xerces:2
- dev-java/xml-commons-external:1.4"
-
-RDEPEND="
- ${CP_DEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CP_DEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-src_prepare() {
- default
-
- # Fixes for newer swingx-beaninfo.
- sed -i "s:BeanInfoSupport:org.jdesktop.beans.\0:g" org/jdesktop/swingx/*.java || die
- find -name "*.java" -exec sed -i -r "s:org\.jdesktop\.swingx\.(editors|BeanInfoSupport|EnumerationValue):org.jdesktop.beans.\1:g" {} + || die
-
- # GraphicsUtilities moved in later SwingX versions.
- sed -i "s:org\.jdesktop\.swingx\.graphics\.GraphicsUtilities:org.jdesktop.swingx.util.GraphicsUtilities:g" \
- org/jdesktop/swingx/mapviewer/AbstractTileFactory.java || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar .
-}
diff --git a/dev-java/swingx-ws/swingx-ws-1.0_p20110515-r1.ebuild b/dev-java/swingx-ws/swingx-ws-1.0_p20110515-r1.ebuild
deleted file mode 100644
index 2f0f79d05170..000000000000
--- a/dev-java/swingx-ws/swingx-ws-1.0_p20110515-r1.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_P="${PN}-2011_05_15-src"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Utilities and widgets to integrate Swing GUIs with web applications"
-HOMEPAGE="https://java.net/projects/swingx-ws/"
-SRC_URI="mirror://sourceforge/bt747/Development/${MY_P}.zip"
-LICENSE="LGPL-2.1"
-SLOT="bt747"
-KEYWORDS="~amd64 ~x86"
-
-CP_DEPEND="
- dev-java/jdom:0
- dev-java/json:0
- dev-java/rome:0
- dev-java/jtidy:0
- dev-java/xerces:2
- dev-java/swingx:1.6
- dev-java/swing-layout:1
- dev-java/swingx-beaninfo:0
- dev-java/commons-httpclient:3
- dev-java/xml-commons-external:1.4"
-
-RDEPEND="
- ${CP_DEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CP_DEPEND}
- >=virtual/jdk-1.6
- app-arch/unzip"
-
-S="${WORKDIR}/${MY_P}/src"
-JAVA_SRC_DIR=( "beaninfo" "java" )
-
-src_prepare() {
- default
- java-pkg_clean "${WORKDIR}"
-
- # SwingWorker has been built-in since Java 6.
- find java -name "*.java" -exec sed -i -r "s:org\.jdesktop\.swingworker\.:javax.swing.:g" {} + || die
-
- # Fixes for newer swingx-beaninfo.
- sed -i "s:BeanInfoSupport:org.jdesktop.beans.\0:g" beaninfo/org/jdesktop/swingx/*.java || die
- find beaninfo -name "*.java" -exec sed -i -r "s:org\.jdesktop\.swingx\.(editors|BeanInfoSupport|EnumerationValue):org.jdesktop.beans.\1:g" {} + || die
-
- # GraphicsUtilities moved in later SwingX versions.
- sed -i "s:org\.jdesktop\.swingx\.graphics\.GraphicsUtilities:org.jdesktop.swingx.util.GraphicsUtilities:g" \
- java/org/jdesktop/swingx/mapviewer/AbstractTileFactory.java || die
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-
- local DIR
- for DIR in "${JAVA_SRC_DIR[@]}"; do
- java-pkg_addres ${PN}.jar ${DIR}
- done
-}
diff --git a/dev-java/swingx-ws/swingx-ws-1.0_p20110515-r2.ebuild b/dev-java/swingx-ws/swingx-ws-1.0_p20110515-r2.ebuild
new file mode 100644
index 000000000000..3900e1d0a5c4
--- /dev/null
+++ b/dev-java/swingx-ws/swingx-ws-1.0_p20110515-r2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}-2011_05_15-src"
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Utilities and widgets to integrate Swing GUIs with web applications"
+HOMEPAGE="https://java.net/projects/swingx-ws/"
+SRC_URI="https://downloads.sourceforge.net/bt747/Development/${MY_P}.zip"
+LICENSE="LGPL-2.1"
+SLOT="bt747"
+KEYWORDS="~amd64 ~x86"
+
+CP_DEPEND="
+ dev-java/jakarta-xml-soap-api:1
+ dev-java/jdom:0
+ dev-java/json:0
+ dev-java/rome:0
+ dev-java/jtidy:0
+ dev-java/xerces:2
+ dev-java/swingx:1.6
+ dev-java/swing-layout:1
+ dev-java/swingx-beaninfo:0
+ dev-java/commons-httpclient:3
+ dev-java/xml-commons-external:1.4"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+BDEPEND="
+ app-arch/unzip"
+
+S="${WORKDIR}/${MY_P}/src"
+JAVA_SRC_DIR=( "beaninfo" "java" )
+
+PATCHES=(
+ "${FILESDIR}/${P}-replace-sun.misc-classes-for-java-9+.patch"
+)
+
+src_prepare() {
+ default
+ java-pkg_clean "${WORKDIR}"
+
+ # SwingWorker has been built-in since Java 6.
+ find java -name "*.java" -exec sed -i -r "s:org\.jdesktop\.swingworker\.:javax.swing.:g" {} + || die
+
+ # Fixes for newer swingx-beaninfo.
+ sed -i "s:BeanInfoSupport:org.jdesktop.beans.\0:g" beaninfo/org/jdesktop/swingx/*.java || die
+ find beaninfo -name "*.java" -exec sed -i -r "s:org\.jdesktop\.swingx\.(editors|BeanInfoSupport|EnumerationValue):org.jdesktop.beans.\1:g" {} + || die
+
+ # GraphicsUtilities moved in later SwingX versions.
+ sed -i "s:org\.jdesktop\.swingx\.graphics\.GraphicsUtilities:org.jdesktop.swingx.util.GraphicsUtilities:g" \
+ java/org/jdesktop/swingx/mapviewer/AbstractTileFactory.java || die
+
+ java-pkg-2_src_prepare
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ local DIR
+ for DIR in "${JAVA_SRC_DIR[@]}"; do
+ java-pkg_addres ${PN}.jar ${DIR}
+ done
+}
diff --git a/dev-java/swingx/metadata.xml b/dev-java/swingx/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/swingx/metadata.xml
+++ b/dev-java/swingx/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/swt/Manifest b/dev-java/swt/Manifest
index 882aec4b4fd1..bdc642795cb1 100644
--- a/dev-java/swt/Manifest
+++ b/dev-java/swt/Manifest
@@ -1,8 +1,14 @@
DIST swt-3.7.2-gtk-linux-ppc64.zip 5688113 BLAKE2B bb102da40a3f63d63ca6a56d4c57ade55d7fe8d6206acf9e60caa0a8600b5c2cec6c0304cd2ab532948f03ff0706e8b2928ae9e93ef0019051044dad3fe7b1c0 SHA512 750aaa43560bbf6f82f7f8cd9338abc88578f4f0b9aadaec9bc8a5c3d1ad593619cdf01d202cbf06766090ee977989ea7904643669c61971973951d8428b57d0
DIST swt-3.7.2-gtk-linux-x86.zip 5374609 BLAKE2B 04d44b9fffcedc6ce255e2651377ac6968bb41c44cee403f063c159962d9d43a5c9529026819ddb1c8eea98cd11ed818075c37f4e9851d2e95532dc166e570ce SHA512 9f58864d05eba2648e4b5d5c958172f5c0c7c730209525b3d6f607586daaefea4d5ba1013e80c0c11948f01c553044b0a98c81688b33c14114ba79c7ce620426
DIST swt-3.7.2-gtk-linux-x86_64.zip 5671443 BLAKE2B 953fc9eab6d1f2750b1a1345cddf4aa6969567cb75977f87ee50668d367e55dda8be2ff836d87b780005c22132fa783b475f422c093617fd02f478eadd96076d SHA512 d60ae1d3f3b0577f7e3018139f93069c89d021064fec2f3f4074f95cfae56abdc0c7d531cb904ad3911482543cddcc3f6646ff47192073f4bde97c79e13612b7
-DIST swt-3.8.2-gtk-linux-ppc64.zip 5933708 BLAKE2B d49633d9d5049d1a6f9bbdcf5a364b73802194fbaf02aa5064c7a1c917e0aad80c829b026a1a41b7903ed0d8066af89ff24683897ced8cbe8c41406a7696c408 SHA512 cb9f2c7aed0b18bae6546272076c23c91d9e1a38404f0a70ddc6408047d961befe2839db177066312b82d8365bee6bcffb6e92aaa7a869ad37d9f49ab780e337
-DIST swt-3.8.2-gtk-linux-x86.zip 5558694 BLAKE2B 8dd0ce9f2c6b8dc448c85a6c509f39ef2da000e0589da52330b83dec87601d100320af778983b2083ca8f9e2890a2d4c731cb2810d9054a9e50e7940ad14bea2 SHA512 afe1563e92fe9af0a58e7dbae731976991a6afacf6415ab88ebf557f99a5154169ad7103519524f71142c4160d55a9b0a9f7379b21486430318e4160e6f01c00
-DIST swt-3.8.2-gtk-linux-x86_64.zip 5865160 BLAKE2B 45d60d334eb99f407cf9101a06f65e48543538a386103767700fb0af5ea0cf3da73eefe57b8cc6b3d78cb8f29345869f5474513648560395a69cbd4c9b8ee8a4 SHA512 43a27cb6fc891d7da35f5fcfc6ccb689d2b2c58de70b628b1e7cf07131f0641598b627eeedafb6a8dca715a336a7fb4fb6a03bb29fea3e115a4af571b1574cf8
DIST swt-4.10-gtk-linux-ppc64le.zip 3848264 BLAKE2B 214861fde6987906fb24f3187936f3bcb49aebed54fe242427c3737bf6761e8f77d049c376f30ca0fc33e74a1e8a48b6aff6d9863775ee9c33fea7cb2edd1309 SHA512 1b3ede58c2b41abae76f58a303bd3fbf1849ba8be3fd6518325bc22400e960c3ab542e7351b1bc08053e2746ea3e28812e04c2d1789cb1e19ea28745c8a5f39a
DIST swt-4.10-gtk-linux-x86_64.zip 3844306 BLAKE2B 0e0ed21708acce347fd025920ee635f586c460f8a9c05a7067fd70eed9da999b4a62a5febd17f0c5546ab15198336038e4ab49a1bd588d49ffb39450353a1911 SHA512 9dd946cb7c11446f553f06b8af516167519bab00d4a89f626cd612be6d18e50023fc537aa3d844a8f7a56a767df00410efe4dd20e2bfd930639330a1e279a7a0
+DIST swt-4.29-gtk-linux-aarch64.zip 3836724 BLAKE2B 8c905df298688686ee22c9f2021560856f7ac7b6a92dad744b27cd30530c6ff76470fdcbb79b91ada01f28c43b8f694c334ff1337d692366ae9dc0319f7e46e2 SHA512 44ff572b57631b1b6a98192f60624758d90f54a2b2272c6bbb140ece39e65bb4086cf08fbc50c5f2e388e7b410b28fc014b87a8560062053b4c131970fa38b17
+DIST swt-4.29-gtk-linux-ppc64le.zip 3860955 BLAKE2B f24f8224581425dc86926a147f2f4c644f086cb7907e03bfca64df93ef5ce8341f519acc91e90c0af4eede65797ac019c17a410ff0312306714fa26ddb4234b4 SHA512 09326b5204970d9db2cede4aebf11c7f24a47c30b6bc49764dda1d0a33fa83c7c4755797cac387d1814a29ad2574e45244b994e5df0c7ef2fd1375fc7877814b
+DIST swt-4.29-gtk-linux-x86_64.zip 3857122 BLAKE2B ac4416044f93eaed396ac10edb74eb5ebcbb967797109f57580bd0ac7c1e3752e8895c5ff1b315aa32b5d5b5ce8e1440badb8b9c3138a0eaeb4df63098919a8c SHA512 c92381e4d1479c219e174c027e54af781e674b266334a5e087f5821935e0a87696f40afbc9fe6f9ffaa00b5204165d9ff6476031b5e4e2df8aea1a54aeb2e65e
+DIST swt-4.30-gtk-linux-aarch64.zip 3836637 BLAKE2B 4cedb6eae73e03c32f6c226560f8e7bcbde5b6fc57579255e793fd5d01a5ff80f8b673dd7035eb7f2693abadd98bd0cfdb2eec632c05995552a9a1f1b673b8cc SHA512 dfdddd12ba30373d3ee7f0337b42d3a4f55a55dc898be9c97fbcc3d841c082d00190a75513272076c5709ee626e8af3f77c7c2dc518aa9289e80e33f4b134907
+DIST swt-4.30-gtk-linux-ppc64le.zip 3860636 BLAKE2B a535c1bcc6c668905f4d4aaa8c5ae7f3b8f48fc95004522d09924ae54d5172b18f80169d78633e960ce0c5141e5b34492d1dd05188a0b1f48d9f79d286bd2982 SHA512 5a17bd7752343da638466ac28de460d9fa9f0e777d1e48625ddb6c5538704e36cd97439d1bf8f07ad34a32b7d5f27f19d8877e8a9bb9094b4a74bdbb1dc126f7
+DIST swt-4.30-gtk-linux-x86_64.zip 3856990 BLAKE2B 0ea29a5f286fb4bb362758629226bcd6f27716afae7abb80cb37e7d4b72f0c835d63a196384465d3bc74135c42454a74c75455c094204e6329229ad8ca1fda78 SHA512 3802bd1dc84c7d684dac6b0b21de6b4958dd0c736a6b42176cf734806f04ae9dfdb18515ec5249eeff5f6bb716bf327a7a10e79d68cc487a1ad02267394507a1
+DIST swt-4.31-gtk-linux-aarch64.zip 4019864 BLAKE2B 597f9c2ce1382aacd4667c7d1fc350b2318d8b1577dfc32a0139efb9d26e7c32703a0fb2507876ef441c47901d46ba522ea40714f9b88f1d517e3d9d24c2416a SHA512 636e3a4e7adc21ab8ee3ecdc3f85bbd0ad5786836492cf0096f99177716043150b41807cc456f4813ebb1797092761bb227809e8594bf64155b438973cc84bfc
+DIST swt-4.31-gtk-linux-ppc64le.zip 4036590 BLAKE2B da9ad8a7e0bf168b024c4e1fbdbcc01154ec0d7e8b38b2912ba7edf1bf8239f05a9ce1f08790174158ebb788c9cc3adf754d13942fc8aa0fe9d4a53177a814ff SHA512 bf8f3f45b4229db383839a64b7d08294340ab2f0c623be8e382609b5ff9a59683229bb308d49480ffb01596ab050d45f97894fec99c0d4eb710e60c40b864531
+DIST swt-4.31-gtk-linux-x86_64.zip 4039479 BLAKE2B 6f7e434acf57cd03dd5e938b1b1c578339b3d7817202681a15420ebdec3be10b95b1bf5eca6f1cf71de9a5a0c390d2d6ee903c2a71e8974e03987cc52322e44d SHA512 da61610ce00fc46893ec3ee6d5d7ed5cc59312002c6946a3748cff1a776af75bad0026512b412ef1622ca0bee124764ed8ee7f5f87364cff945b296feb86e74b
diff --git a/dev-java/swt/files/as-needed-and-flag-fixes-3.6.patch b/dev-java/swt/files/as-needed-and-flag-fixes-3.6.patch
index fba4a36aaf1c..d6cc763ea968 100644
--- a/dev-java/swt/files/as-needed-and-flag-fixes-3.6.patch
+++ b/dev-java/swt/files/as-needed-and-flag-fixes-3.6.patch
@@ -1,5 +1,5 @@
---- a/make_linux.mak 2010-06-08 17:30:58.000000000 +0000
-+++ b/make_linux.mak 2010-08-09 22:48:01.515433721 +0000
+--- a/make_linux.mak
++++ b/make_linux.mak
@@ -66,7 +66,7 @@
# Uncomment for Native Stats tool
#NATIVE_STATS = -DNATIVE_STATS
@@ -124,8 +124,8 @@
glx.o: glx.c
$(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
---- a/make_freebsd.mak 2010-06-08 17:30:58.000000000 +0000
-+++ b/make_freebsd.mak 2010-08-09 22:50:26.173246263 +0000
+--- a/make_freebsd.mak
++++ b/make_freebsd.mak
@@ -64,7 +64,7 @@
# Uncomment for Native Stats tool
#NATIVE_STATS = -DNATIVE_STATS
diff --git a/dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch b/dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch
deleted file mode 100644
index ce5c54e408e2..000000000000
--- a/dev-java/swt/files/swt-3.8-as-needed-and-flag-fixes.patch
+++ /dev/null
@@ -1,243 +0,0 @@
---- a/make_freebsd.mak
-+++ b/make_freebsd.mak
-@@ -64,7 +64,7 @@ GLXLIBS = -L/usr/X11R6/lib -lGL -lGLU -lm
- # Uncomment for Native Stats tool
- #NATIVE_STATS = -DNATIVE_STATS
-
--MOZILLACFLAGS = -O \
-+MOZILLACFLAGS += \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DMOZILLA_STRICT_API=1 \
-@@ -91,7 +91,7 @@ XULRUNNER_OBJECTS = swt.o xpcomxul.o xpcomxul_custom.o xpcomxul_structs.o xpcomx
- XPCOMINIT_OBJECTS = swt.o xpcominit.o xpcominit_structs.o xpcominit_stats.o
- GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
-
--CFLAGS = -O -Wall \
-+CFLAGS += \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DFREEBSD -DGTK \
-@@ -115,13 +115,13 @@ all: make_swt make_atk make_gnome make_glx
- make_swt: $(SWT_LIB) $(SWTPI_LIB)
-
- $(SWT_LIB): $(SWT_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-
- callback.o: callback.c callback.h
- $(CC) $(CFLAGS) -DUSE_ASSEMBLER -c callback.c
-
- $(SWTPI_LIB): $(SWTPI_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-
- swt.o: swt.c swt.h
- $(CC) $(CFLAGS) -c swt.c
-@@ -140,7 +140,7 @@ os_stats.o: os_stats.c os_structs.h os.h os_stats.h swt.h
- make_cairo: $(CAIRO_LIB)
-
- $(CAIRO_LIB): $(CAIRO_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-
- cairo.o: cairo.c cairo.h swt.h
- $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c
-@@ -156,7 +156,7 @@ cairo_stats.o: cairo_stats.c cairo_structs.h cairo.h cairo_stats.h swt.h
- make_cde: $(CDE_LIB)
-
- $(CDE_LIB): $(CDE_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-
- #
- # AWT lib
-@@ -164,7 +164,7 @@ $(CDE_LIB): $(CDE_OBJECTS)
- make_awt:$(AWT_LIB)
-
- $(AWT_LIB): $(AWT_OBJECTS)
-- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-+ $(CC) $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-
- #
- # Atk lib
-@@ -172,7 +172,7 @@ $(AWT_LIB): $(AWT_OBJECTS)
- make_atk: $(ATK_LIB)
-
- $(ATK_LIB): $(ATK_OBJECTS)
-- $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-
- atk.o: atk.c atk.h
- $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c
-@@ -189,7 +189,7 @@ atk_stats.o: atk_stats.c atk_structs.h atk_stats.h atk.h
- make_gnome: $(GNOME_LIB)
-
- $(GNOME_LIB): $(GNOME_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-
- gnome.o: gnome.c
- $(CC) $(CFLAGS) $(GNOMECFLAGS) -c gnome.c
-@@ -206,7 +206,7 @@ gnome_stats.o: gnome_stats.c gnome_stats.h
- make_mozilla:$(MOZILLA_LIB)
-
- $(MOZILLA_LIB): $(MOZILLA_OBJECTS)
-- $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-
- xpcom.o: xpcom.cpp
- $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom.cpp
-@@ -226,7 +226,7 @@ xpcom_stats.o: xpcom_stats.cpp
- make_xulrunner:$(XULRUNNER_LIB)
-
- $(XULRUNNER_LIB): $(XULRUNNER_OBJECTS)
-- $(CXX) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcomxul.o: xpcom.cpp
- $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcom.cpp
-@@ -252,7 +252,7 @@ xpcomxulglue_stats.o: xpcomglue_stats.cpp
- make_xpcominit:$(XPCOMINIT_LIB)
-
- $(XPCOMINIT_LIB): $(XPCOMINIT_OBJECTS)
-- $(CXX) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcominit.o: xpcominit.cpp
- $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit.cpp
-@@ -269,7 +269,7 @@ xpcominit_stats.o: xpcominit_stats.cpp
- make_glx: $(GLX_LIB)
-
- $(GLX_LIB): $(GLX_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-
- glx.o: glx.c
- $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
---- a/make_linux.mak
-+++ b/make_linux.mak
-@@ -66,7 +66,7 @@ GLXLIBS = -lGL -lGLU -lm
- # Uncomment for Native Stats tool
- #NATIVE_STATS = -DNATIVE_STATS
-
--MOZILLACFLAGS = -O \
-+MOZILLACFLAGS = $(CXXFLAGS) \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DMOZILLA_STRICT_API=1 \
-@@ -106,7 +106,7 @@ XPCOMINIT_OBJECTS = swt.o xpcominit.o xpcominit_structs.o xpcominit_stats.o
- WEBKIT_OBJECTS = swt.o webkit.o webkit_structs.o webkit_stats.o
- GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
-
--CFLAGS = -O -Wall \
-+CFLAGS += \
- -DSWT_VERSION=$(SWT_VERSION) \
- $(NATIVE_STATS) \
- -DLINUX -DGTK \
-@@ -130,13 +130,13 @@ all: make_swt make_atk make_glx make_webkit
- make_swt: $(SWT_LIB) $(SWTPI_LIB)
-
- $(SWT_LIB): $(SWT_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
-
- callback.o: callback.c callback.h
- $(CC) $(CFLAGS) -DUSE_ASSEMBLER -c callback.c
-
- $(SWTPI_LIB): $(SWTPI_OBJECTS)
-- $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
-
- swt.o: swt.c swt.h
- $(CC) $(CFLAGS) -c swt.c
-@@ -155,7 +155,7 @@ os_stats.o: os_stats.c os_structs.h os.h os_stats.h swt.h
- make_cairo: $(CAIRO_LIB)
-
- $(CAIRO_LIB): $(CAIRO_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
-
- cairo.o: cairo.c cairo.h swt.h
- $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c
-@@ -171,7 +171,7 @@ cairo_stats.o: cairo_stats.c cairo_structs.h cairo.h cairo_stats.h swt.h
- make_cde: $(CDE_LIB)
-
- $(CDE_LIB): $(CDE_OBJECTS)
-- $(CC) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CDE_LIB) $(CDE_OBJECTS) $(CDE_LIBS)
-
- #
- # AWT lib
-@@ -179,7 +179,7 @@ $(CDE_LIB): $(CDE_OBJECTS)
- make_awt:$(AWT_LIB)
-
- $(AWT_LIB): $(AWT_OBJECTS)
-- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-+ $(CC) $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
-
- #
- # Atk lib
-@@ -187,7 +187,7 @@ $(AWT_LIB): $(AWT_OBJECTS)
- make_atk: $(ATK_LIB)
-
- $(ATK_LIB): $(ATK_OBJECTS)
-- $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
-
- atk.o: atk.c atk.h
- $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c
-@@ -204,7 +204,7 @@ atk_stats.o: atk_stats.c atk_structs.h atk_stats.h atk.h
- make_gnome: $(GNOME_LIB)
-
- $(GNOME_LIB): $(GNOME_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GNOME_LIB) $(GNOME_OBJECTS) $(GNOMELIBS)
-
- gnome.o: gnome.c
- $(CC) $(CFLAGS) $(GNOMECFLAGS) -c gnome.c
-@@ -221,7 +221,7 @@ gnome_stats.o: gnome_stats.c gnome_stats.h
- make_mozilla:$(MOZILLA_LIB)
-
- $(MOZILLA_LIB): $(MOZILLA_OBJECTS)
-- $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-
- xpcom.o: xpcom.cpp
- $(CXX) $(MOZILLACFLAGS) $(MOZILLAEXCLUDES) ${MOZILLA_INCLUDES} -c xpcom.cpp
-@@ -242,7 +242,7 @@ make_xulrunner:$(XULRUNNER_LIB)
-
- $(XULRUNNER_LIB): $(XULRUNNER_OBJECTS)
- echo -e "#include<stdlib.h>\nsize_t je_malloc_usable_size_in_advance(size_t n) {\nreturn n;\n}" | gcc --shared -xc - -o libswt-xulrunner-fix.so
-- $(CXX) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcomxul.o: xpcom.cpp
- $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) $(XULRUNNEREXCLUDES) ${XULRUNNER_INCLUDES} -c xpcom.cpp
-@@ -262,7 +262,7 @@ xpcomxul_stats.o: xpcom_stats.cpp
- make_xpcominit:$(XPCOMINIT_LIB)
-
- $(XPCOMINIT_LIB): $(XPCOMINIT_OBJECTS)
-- $(CXX) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-+ $(CXX) $(LDFLAGS) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
-
- xpcominit.o: xpcominit.cpp
- $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit.cpp
-@@ -279,7 +279,7 @@ xpcominit_stats.o: xpcominit_stats.cpp
- make_webkit: $(WEBKIT_LIB)
-
- $(WEBKIT_LIB): $(WEBKIT_OBJECTS)
-- $(CC) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS)
-
- webkit.o: webkitgtk.c
- $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk.c -o webkit.o
-@@ -296,7 +296,7 @@ webkit_stats.o: webkitgtk_stats.c webkitgtk_stats.h
- make_glx: $(GLX_LIB)
-
- $(GLX_LIB): $(GLX_OBJECTS)
-- $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-+ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
-
- glx.o: glx.c
- $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
diff --git a/dev-java/swt/files/swt-3.8-manifest b/dev-java/swt/files/swt-3.8-manifest
deleted file mode 100644
index ee9e31c373d6..000000000000
--- a/dev-java/swt/files/swt-3.8-manifest
+++ /dev/null
@@ -1,17 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Fragment-Host: org.eclipse.swt; bundle-version="[3.0.0,4.0.0)"
-Bundle-SymbolicName: org.eclipse.swt.gtk.linux.SWT_ARCH; singleton:=true
-Bundle-Version: 3.8
-Eclipse-PlatformFilter: (& (osgi.ws=gtk) (osgi.os=linux) (osgi.arch=SWT_ARCH))
-Export-Package: org.eclipse.swt.internal.accessibility.gtk; x-internal:=true,
- org.eclipse.swt.internal.cairo; x-internal:=true,
- org.eclipse.swt.internal.cde; x-internal:=true,
- org.eclipse.swt.internal.gnome; x-internal:=true,
- org.eclipse.swt.internal.gtk; x-internal:=true,
- org.eclipse.swt.internal.opengl.glx; x-internal:=true
- org.eclipse.swt.internal.webkit; x-internal:=true
-
diff --git a/dev-java/swt/files/swt-3.8.2-gthread.patch b/dev-java/swt/files/swt-3.8.2-gthread.patch
deleted file mode 100644
index 6f99a59382ba..000000000000
--- a/dev-java/swt/files/swt-3.8.2-gthread.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From c973b9b9be568ebbce618985bc5ee440babf8ab1 Mon Sep 17 00:00:00 2001
-From: Jakub Adam <jakub.adam@ktknet.cz>
-Date: Thu, 27 Jun 2013 10:16:49 +0200
-Subject: [PATCH 1/2] fix-glib-2.35-compatibility
-
-g_thread_init() and g_thread_supported() are deprecated and don't
-have to be used anymore.
-
----
- os.c | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
---- a/os.c
-+++ b/os.c
-@@ -4444,9 +4444,9 @@ fail:
- JNIEXPORT void JNICALL OS_NATIVE(_1g_1thread_1init)
- (JNIEnv *env, jclass that, jintLong arg0)
- {
-- OS_NATIVE_ENTER(env, that, _1g_1thread_1init_FUNC);
-+ /*OS_NATIVE_ENTER(env, that, _1g_1thread_1init_FUNC);
- g_thread_init((GThreadFunctions *)arg0);
-- OS_NATIVE_EXIT(env, that, _1g_1thread_1init_FUNC);
-+ OS_NATIVE_EXIT(env, that, _1g_1thread_1init_FUNC);*/
- }
- #endif
-
-@@ -4454,11 +4454,12 @@ JNIEXPORT void JNICALL OS_NATIVE(_1g_1thread_1init)
- JNIEXPORT jboolean JNICALL OS_NATIVE(_1g_1thread_1supported)
- (JNIEnv *env, jclass that)
- {
-- jboolean rc = 0;
-+ /*jboolean rc = 0;
- OS_NATIVE_ENTER(env, that, _1g_1thread_1supported_FUNC);
- rc = (jboolean)g_thread_supported();
- OS_NATIVE_EXIT(env, that, _1g_1thread_1supported_FUNC);
-- return rc;
-+ return rc;*/
-+ return 1;
- }
- #endif
-
---
-1.7.10.4
-
diff --git a/dev-java/swt/files/swt-4.10-as-needed-and-flag-fixes.patch b/dev-java/swt/files/swt-4.10-as-needed-and-flag-fixes.patch
index 09bed21d58f8..cb70122aa411 100644
--- a/dev-java/swt/files/swt-4.10-as-needed-and-flag-fixes.patch
+++ b/dev-java/swt/files/swt-4.10-as-needed-and-flag-fixes.patch
@@ -1,6 +1,5 @@
-diff -Naur a/make_linux.mak b/make_linux.mak
---- a/make_linux.mak 2019-01-07 14:08:00.269147198 +0100
-+++ b/make_linux.mak 2019-01-07 14:10:28.645155241 +0100
+--- a/make_linux.mak
++++ b/make_linux.mak
@@ -101,7 +101,7 @@
WEBKIT_OBJECTS = swt.o webkitgtk.o webkitgtk_structs.o webkitgtk_stats.o webkitgtk_custom.o
GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
diff --git a/dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch b/dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch
new file mode 100644
index 000000000000..c8ea6322f8a1
--- /dev/null
+++ b/dev-java/swt/files/swt-4.27-as-needed-and-flag-fixes.patch
@@ -0,0 +1,81 @@
+--- a/make_linux.mak
++++ b/make_linux.mak
+@@ -98,7 +98,7 @@ ATK_OBJECTS = swt.o atk.o atk_structs.o atk_custom.o atk_stats.o
+ WEBKIT_OBJECTS = swt.o webkitgtk.o webkitgtk_structs.o webkitgtk_stats.o webkitgtk_custom.o
+ GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
+
+-CFLAGS := $(CFLAGS) \
++CFLAGS += -fPIC \
+ -DSWT_VERSION=$(SWT_VERSION) \
+ $(NATIVE_STATS) \
+ $(SWT_DEBUG) \
+@@ -111,7 +111,7 @@ LFLAGS = -shared -fPIC ${SWT_LFLAGS}
+
+ # Treat all warnings as errors. If your new code produces a warning, please
+ # take time to properly understand and fix/silence it as necessary.
+-CFLAGS += -Werror
++# CFLAGS += -Werror
+
+ ifndef NO_STRIP
+ # -s = Remove all symbol table and relocation information from the executable.
+@@ -130,13 +130,13 @@ all: make_swt make_atk make_glx make_webkit
+ make_swt: $(SWT_LIB) $(SWTPI_LIB)
+
+ $(SWT_LIB): $(SWT_OBJECTS)
+- $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS)
+
+ callback.o: callback.c callback.h
+ $(CC) $(CFLAGS) $(GTKCFLAGS) -DUSE_ASSEMBLER -c callback.c
+
+ $(SWTPI_LIB): $(SWTPI_OBJECTS)
+- $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS)
+
+ swt.o: swt.c swt.h
+ $(CC) $(CFLAGS) -c swt.c
+@@ -169,7 +169,7 @@ gtk4_stats.o: gtk4_stats.c gtk4_structs.h gtk4.h gtk4_stats.h swt.h
+ make_cairo: $(CAIRO_LIB)
+
+ $(CAIRO_LIB): $(CAIRO_OBJECTS)
+- $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS)
+
+ cairo.o: cairo.c cairo.h swt.h
+ $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c
+@@ -184,7 +184,7 @@ cairo_stats.o: cairo_stats.c cairo_structs.h cairo.h cairo_stats.h swt.h
+ make_awt:$(AWT_LIB)
+
+ $(AWT_LIB): $(AWT_OBJECTS)
+- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
++ $(CC) -fPIC $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
+
+ #
+ # Atk lib
+@@ -192,7 +192,7 @@ $(AWT_LIB): $(AWT_OBJECTS)
+ make_atk: $(ATK_LIB)
+
+ $(ATK_LIB): $(ATK_OBJECTS)
+- $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS)
+
+ atk.o: atk.c atk.h
+ $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c
+@@ -209,7 +209,7 @@ atk_stats.o: atk_stats.c atk_structs.h atk_stats.h atk.h
+ make_webkit: $(WEBKIT_LIB)
+
+ $(WEBKIT_LIB): $(WEBKIT_OBJECTS)
+- $(CC) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS) $(WEBKITLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS) $(WEBKITLIBS)
+
+ webkitgtk.o: webkitgtk.c webkitgtk_custom.h
+ $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk.c
+@@ -229,7 +229,7 @@ webkitgtk_custom.o: webkitgtk_custom.c
+ make_glx: $(GLX_LIB)
+
+ $(GLX_LIB): $(GLX_OBJECTS)
+- $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
++ $(CC) $(LDFLAGS) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS)
+
+ glx.o: glx.c
+ $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c
diff --git a/dev-java/swt/metadata.xml b/dev-java/swt/metadata.xml
index 40abe82a75f0..c06386289922 100644
--- a/dev-java/swt/metadata.xml
+++ b/dev-java/swt/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -10,4 +10,9 @@
Eclipse platform in an operating system independent manner. It is analogous to
AWT/Swing in Java with a difference - SWT uses a rich set of native widgets.
</longdescription>
+ <upstream>
+ <bugs-to>https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform%38component=SWT</bugs-to>
+ <doc>https://wiki.eclipse.org/SWT</doc>
+ <remote-id type="github">eclipse-platform/eclipse.platform.swt</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/swt/swt-3.7.2-r3.ebuild b/dev-java/swt/swt-3.7.2-r3.ebuild
index 24e69a974015..eb993b82f314 100644
--- a/dev-java/swt/swt-3.7.2-r3.ebuild
+++ b/dev-java/swt/swt-3.7.2-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,17 +6,16 @@ EAPI=7
inherit java-pkg-2 java-ant-2 java-osgi toolchain-funcs
MY_PV="${PV/_rc/RC}"
-MY_DMF="http://archive.eclipse.org/eclipse/downloads/drops/R-${MY_PV}-201202080800"
+MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops/R-${MY_PV}-201202080800"
MY_P="${PN}-${MY_PV}"
DESCRIPTION="GTK based SWT Library"
-HOMEPAGE="http://www.eclipse.org/"
+HOMEPAGE="https://www.eclipse.org/"
SRC_URI="
amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
ppc? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )
ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64.zip )
- x86? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )
- x86-fbsd? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )"
+ x86? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )"
LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
SLOT="3.7"
@@ -108,11 +107,7 @@ src_compile() {
# Fix the pointer size for AMD64
[[ ${ARCH} == "amd64" || ${ARCH} == "ppc64" ]] && export SWT_PTR_CFLAGS=-DJNI64
- local platform="linux"
-
- use elibc_FreeBSD && platform="freebsd"
-
- local make="emake -f make_${platform}.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
einfo "Building AWT library"
${make} make_awt
@@ -148,7 +143,6 @@ src_compile() {
src_install() {
swtArch=${ARCH}
use amd64 && swtArch=x86_64
- use x86-fbsd && swtArch=x86
sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
use cairo || sed -i -e "/ org.eclipse.swt.internal.cairo; x-internal:=true,/d" "MANIFEST_TMP.MF"
diff --git a/dev-java/swt/swt-3.7.2-r4.ebuild b/dev-java/swt/swt-3.7.2-r4.ebuild
new file mode 100644
index 000000000000..dc1cb9be2255
--- /dev/null
+++ b/dev-java/swt/swt-3.7.2-r4.ebuild
@@ -0,0 +1,169 @@
+# 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 java-osgi toolchain-funcs
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops/R-${MY_PV}-201202080800"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/swt/"
+SRC_URI="
+ amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+ ppc? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )
+ ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64.zip )
+ x86? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="3.7"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="cairo opengl"
+
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+COMMON_DEPEND="
+ app-accessibility/at-spi2-core:2
+ dev-libs/glib
+ >=x11-libs/gtk+-2.6.8:2
+ x11-libs/libXtst
+ cairo? ( x11-libs/cairo )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )"
+DEPEND="${COMMON_DEPEND}
+ >=virtual/jdk-1.8:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst"
+RDEPEND="${COMMON_DEPEND}
+ >=virtual/jre-1.8:*"
+
+# JNI libraries don't need SONAME, bug #253756
+QA_SONAME="usr/lib.*/libswt-.*.so"
+
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src"
+
+PATCHES=(
+ # Fix Makefiles to respect flags and work with --as-needed
+ "${FILESDIR}"/as-needed-and-flag-fixes-3.6.patch
+)
+
+src_unpack() {
+ default
+ unpack "./src.zip"
+}
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ java-pkg_clean
+
+ mkdir resources src || die "mkdir failed"
+ mv org src || die "moving java sources failed"
+
+ case ${ARCH} in
+ ppc|x86) eapply "${FILESDIR}"/${P}-gio_launch-URI-x86.patch ;;
+ *) eapply "${FILESDIR}"/${P}-gio_launch-URI.patch ;;
+ esac
+
+ pushd src > /dev/null || die
+ find -type f ! -name '*.java' \
+ | xargs \
+ cp --parent -t ../resources -v \
+ || die "copying resources failed"
+ popd > /dev/null || die
+ cp version.txt resources || die "adding version.txt failed"
+}
+
+src_compile() {
+ local AWT_ARCH
+ local JAWTSO="libjawt.so"
+# if [[ $(tc-arch) == 'x86' ]] ; then
+# AWT_ARCH="i386"
+# elif [[ $(tc-arch) == 'ppc' ]] ; then
+# AWT_ARCH="ppc"
+# elif [[ $(tc-arch) == 'ppc64' ]] ; then
+# AWT_ARCH="ppc64"
+# else
+# AWT_ARCH="amd64"
+# fi
+# if [[ -f "${JAVA_HOME}/jre/lib/${AWT_ARCH}/${JAWTSO}" ]]; then
+# export AWT_LIB_PATH="${JAVA_HOME}/jre/lib/${AWT_ARCH}"
+# elif [[ -f "${JAVA_HOME}/jre/bin/${JAWTSO}" ]]; then
+# export AWT_LIB_PATH="${JAVA_HOME}/jre/bin"
+# elif [[ -f "${JAVA_HOME}/$(get_libdir)/${JAWTSO}" ]] ; then
+# export AWT_LIB_PATH="${JAVA_HOME}/$(get_libdir)"
+# else
+ IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+ for libpath in "${ldpaths[@]}"; do
+ if [[ -f "${libpath}/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}"
+ break
+ # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+ elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+ break
+ fi
+ done
+
+ if [[ -z "${AWT_LIB_PATH}" ]]; then
+ eerror "${JAWTSO} not found in the JDK being used for compilation!"
+ die "cannot build AWT library"
+ fi
+
+ # Fix the pointer size for AMD64
+ [[ ${ARCH} == "amd64" || ${ARCH} == "ppc64" ]] && export SWT_PTR_CFLAGS=-DJNI64
+
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+ einfo "Building AWT library"
+ ${make} make_awt
+
+ einfo "Building SWT library"
+ ${make} make_swt
+
+ einfo "Building JAVA-AT-SPI bridge"
+ ${make} make_atk
+
+ if use cairo ; then
+ einfo "Building CAIRO support"
+ ${make} make_cairo
+ fi
+
+ if use opengl ; then
+ einfo "Building OpenGL component"
+ ${make} make_glx
+ fi
+
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ swtArch=${ARCH}
+ use amd64 && swtArch=x86_64
+
+ sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
+ use cairo || sed -i -e "/ org.eclipse.swt.internal.cairo; x-internal:=true,/d" "MANIFEST_TMP.MF"
+ sed -i -e "/ org.eclipse.swt.internal.gnome; x-internal:=true,/d" "MANIFEST_TMP.MF" || die
+ use opengl || sed -i -e "/ org.eclipse.swt.internal.opengl.glx; x-internal:=true,/d" "MANIFEST_TMP.MF"
+ sed -i -e "/ org.eclipse.swt.internal.webkit; x-internal:=true,/d" "MANIFEST_TMP.MF" || die
+ java-osgi_newjar-fromfile "swt.jar" "MANIFEST_TMP.MF" "Standard Widget Toolkit for GTK 2.0"
+
+ java-pkg_sointo /usr/$(get_libdir)
+ java-pkg_doso *.so
+
+ docinto html
+ dodoc about.html
+}
diff --git a/dev-java/swt/swt-3.8.2-r3.ebuild b/dev-java/swt/swt-3.8.2-r3.ebuild
deleted file mode 100644
index d65297c3817c..000000000000
--- a/dev-java/swt/swt-3.8.2-r3.ebuild
+++ /dev/null
@@ -1,155 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit epatch java-pkg-2 java-ant-2 toolchain-funcs java-osgi
-
-MY_PV="${PV/_rc/RC}"
-MY_DMF="http://archive.eclipse.org/eclipse/downloads/drops/R-${MY_PV}-201301310800"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="GTK based SWT Library"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="
- amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
- ppc? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )
- ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64.zip )
- x86? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )
- x86-fbsd? ( ${MY_DMF}/${MY_P}-gtk-linux-x86.zip )"
-
-LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
-SLOT="3.8"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="cairo opengl"
-
-COMMON_DEPEND="
- >=dev-libs/atk-1.10.2
- >=dev-libs/glib-2.6
- >=x11-libs/gtk+-2.6.8:2
- x11-libs/libXtst
- cairo? ( >=x11-libs/cairo-1.4.14 )
- opengl? (
- virtual/glu
- virtual/opengl
- )"
-DEPEND="${COMMON_DEPEND}
- app-arch/unzip
- virtual/jdk:1.8
- virtual/pkgconfig
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXrender
- x11-libs/libXt
- >=x11-libs/libXtst-1.1.0"
-RDEPEND="${COMMON_DEPEND}
- >=virtual/jre-1.4"
-
-S="${WORKDIR}"
-
-# JNI libraries don't need SONAME, bug #253756
-QA_SONAME="usr/$(get_libdir)/libswt-.*.so"
-
-src_unpack() {
- local DISTFILE=${A}
- unzip -jq "${DISTDIR}"/${DISTFILE} "*src.zip" || die "Unable to extract distfile"
- unpack "./src.zip"
-
- # Cleanup the redirtied directory structure
- rm -rf about_files/ || die
-}
-
-java_prepare() {
- # Replace the build.xml to allow compilation without Eclipse tasks
- cp "${FILESDIR}/build.xml" "${S}/build.xml" || die "Unable to update build.xml"
-
- mkdir -p "${S}/src"
- mv "${S}/org" "${S}/src" || die "Unable to restructure SWT sources"
-
- epatch "${FILESDIR}"/${PN}-3.8-as-needed-and-flag-fixes.patch
- epatch "${FILESDIR}"/${P}-gthread.patch
-}
-
-src_compile() {
- # Drop jikes support as it seems to be unfriendly with SWT
- java-pkg_filter-compiler jikes
-
- local AWT_ARCH
- local JAWTSO="libjawt.so"
- if [[ $(tc-arch) == 'x86' ]] ; then
- AWT_ARCH="i386"
- elif [[ $(tc-arch) == 'ppc' ]] ; then
- AWT_ARCH="ppc"
- elif [[ $(tc-arch) == 'ppc64' ]] ; then
- AWT_ARCH="ppc64"
- else
- AWT_ARCH="amd64"
- fi
- if [[ -f "${JAVA_HOME}/jre/lib/${AWT_ARCH}/${JAWTSO}" ]]; then
- export AWT_LIB_PATH="${JAVA_HOME}/jre/lib/${AWT_ARCH}"
- elif [[ -f "${JAVA_HOME}/jre/bin/${JAWTSO}" ]]; then
- export AWT_LIB_PATH="${JAVA_HOME}/jre/bin"
- elif [[ -f "${JAVA_HOME}/$(get_libdir)/${JAWTSO}" ]] ; then
- export AWT_LIB_PATH="${JAVA_HOME}/$(get_libdir)"
- else
- eerror "${JAWTSO} not found in the JDK being used for compilation!"
- die "cannot build AWT library"
- fi
-
- # Fix the pointer size for AMD64
- [[ ${ARCH} == "amd64" || ${ARCH} == "ppc64" ]] && export SWT_PTR_CFLAGS=-DJNI64
-
- local platform="linux"
-
- use elibc_FreeBSD && platform="freebsd"
-
- local make="emake -f make_${platform}.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
-
- einfo "Building AWT library"
- ${make} make_awt
-
- einfo "Building SWT library"
- ${make} make_swt
-
- einfo "Building JAVA-AT-SPI bridge"
- ${make} make_atk
-
- if use cairo ; then
- einfo "Building CAIRO support"
- ${make} make_cairo
- fi
-
- if use opengl ; then
- einfo "Building OpenGL component"
- ${make} make_glx
- fi
-
- einfo "Building JNI libraries"
- eant compile
-
- einfo "Copying missing files"
- cp -i "${S}/version.txt" "${S}/build/version.txt" || die
- cp -i "${S}/src/org/eclipse/swt/internal/SWTMessages.properties" \
- "${S}/build/org/eclipse/swt/internal/" || die
-
- einfo "Packing JNI libraries"
- eant jar
-}
-
-src_install() {
- swtArch=${ARCH}
- use amd64 && swtArch=x86_64
- use x86-fbsd && swtArch=x86
-
- sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
- use cairo || sed -i -e "/ org.eclipse.swt.internal.cairo; x-internal:=true,/d" "MANIFEST_TMP.MF"
- sed -i -e "/ org.eclipse.swt.internal.gnome; x-internal:=true,/d" "MANIFEST_TMP.MF"
- use opengl || sed -i -e "/ org.eclipse.swt.internal.opengl.glx; x-internal:=true,/d" "MANIFEST_TMP.MF"
- sed -i -e "/ org.eclipse.swt.internal.webkit; x-internal:=true,/d" "MANIFEST_TMP.MF"
- java-osgi_newjar-fromfile "swt.jar" "MANIFEST_TMP.MF" "Standard Widget Toolkit for GTK 2.0"
-
- java-pkg_sointo /usr/$(get_libdir)
- java-pkg_doso *.so
-
- dohtml about.html
-}
diff --git a/dev-java/swt/swt-4.10-r1.ebuild b/dev-java/swt/swt-4.10-r1.ebuild
deleted file mode 100644
index 527f20631194..000000000000
--- a/dev-java/swt/swt-4.10-r1.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic java-pkg-2 java-ant-2 toolchain-funcs java-osgi
-
-MY_PV="${PV/_rc/RC}"
-MY_DMF="http://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-201812060815"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="GTK based SWT Library"
-HOMEPAGE="http://www.eclipse.org/"
-SRC_URI="
- amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
- ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
-
-LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
-SLOT="4.10"
-KEYWORDS="~amd64 ~ppc64"
-IUSE="cairo opengl webkit"
-
-COMMON_DEP="
- >=dev-libs/atk-1.10.2
- >=dev-libs/glib-2.32
- >=x11-libs/gtk+-2.6.8:2
- x11-libs/libXtst
- cairo? ( >=x11-libs/cairo-1.4.14 )
- opengl? (
- virtual/glu
- virtual/opengl
- )
- webkit? (
- net-libs/webkit-gtk:4
- )"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.8:*
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXrender
- x11-libs/libXt
- >=x11-libs/libXtst-1.1.0"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.8:*"
-BDEPEND="
- app-arch/unzip
- virtual/pkgconfig
-"
-
-S="${WORKDIR}"
-
-# JNI libraries don't need SONAME, bug #253756
-QA_SONAME='usr/lib[^/]*/libswt-[^/]+.so'
-
-PATCHES=(
- "${FILESDIR}"/${P}-as-needed-and-flag-fixes.patch
-)
-
-src_unpack() {
- local DISTFILE=${A}
- unzip -jq "${DISTDIR}"/${DISTFILE} swt.jar src.zip || die "Unable to extract distfile"
- unpack "./src.zip"
-
- # Cleanup the redirtied directory structure
- rm -rf about_files/ || die
-}
-
-src_prepare() {
- # Replace the build.xml to allow compilation without Eclipse tasks
- cp "${FILESDIR}/build.xml" "${S}/build.xml" || die "Unable to update build.xml"
- mkdir "${S}/src" && mv "${S}/org" "${S}/src" || die "Unable to restructure SWT sources"
-
- # Apply patches
- default
-
- # Define missing g_thread_supported() to be already started.
- sed -i '1s/^/#define g_thread_supported() 1\n\n/' "${S}"/os_custom.h || die
-
- # Webext is also in the library directory
- sed -i 's|findResource([^,]\+|findResource("swt"|' \
- "${S}"/src/org/eclipse/swt/browser/WebKit.java || die
-}
-
-src_compile() {
- append-cflags -fcommon # https://bugs.gentoo.org/707838
-
- # Drop jikes support as it seems to be unfriendly with SWT
- java-pkg_filter-compiler jikes
-
- local AWT_ARCH
- local JAWTSO="libjawt.so"
- if [[ $(tc-arch) == 'ppc64' ]] ; then
- # no big-endian support
- AWT_ARCH="ppc64le"
- else
- AWT_ARCH="amd64"
- fi
- if [[ -f "${JAVA_HOME}/jre/lib/${AWT_ARCH}/${JAWTSO}" ]]; then
- export AWT_LIB_PATH="${JAVA_HOME}/jre/lib/${AWT_ARCH}"
- elif [[ -f "${JAVA_HOME}/jre/bin/${JAWTSO}" ]]; then
- export AWT_LIB_PATH="${JAVA_HOME}/jre/bin"
- elif [[ -f "${JAVA_HOME}/$(get_libdir)/${JAWTSO}" ]] ; then
- export AWT_LIB_PATH="${JAVA_HOME}/$(get_libdir)"
- elif [[ -f "${JAVA_HOME}/lib/${JAWTSO}" ]] ; then
- export AWT_LIB_PATH="${JAVA_HOME}/lib"
- else
- eerror "${JAWTSO} not found in the JDK being used for compilation!"
- die "cannot build AWT library"
- fi
-
- # Fix the pointer size for AMD64
- export SWT_PTR_CFLAGS=-DJNI64
-
- # Bug #461784, g_thread_init is deprecated since glib-2.32.
- append-cflags -DNO__1g_1thread_1init
-
- local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
-
- einfo "Building AWT library"
- ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
-
- einfo "Building SWT library"
- ${make} make_swt
-
- einfo "Building JAVA-AT-SPI bridge"
- ${make} make_atk
-
- if use cairo ; then
- einfo "Building CAIRO support"
- ${make} make_cairo
- fi
-
- if use opengl ; then
- einfo "Building OpenGL component"
- ${make} make_glx
- fi
-
- if use webkit ; then
- einfo "Building WebKit component"
- ${make} make_webkit make_webkit2extension
- fi
-
- einfo "Building JNI libraries"
- eant compile
-
- einfo "Copying missing files"
- cp -i "${S}/version.txt" "${S}/build/version.txt" || die
- cp -i "${S}/src/org/eclipse/swt/internal/SWTMessages.properties" \
- "${S}/build/org/eclipse/swt/internal/" || die
- unzip swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d build || die
-
- einfo "Packing JNI libraries"
- eant jar
-}
-
-src_install() {
- local swtArch=${ARCH}
- use amd64 && swtArch=x86_64
-
- sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
- remove_from_manifest() {
- local subpkg=$1
- sed -i -e "/ org.eclipse.swt.internal.$subpkg; x-internal:=true,/d" "MANIFEST_TMP.MF" || die
- }
- use cairo || remove_from_manifest cairo
- use opengl || remove_from_manifest opengl.glx
- use webkit || remove_from_manifest webkit
- java-osgi_newjar-fromfile "swt.jar" "MANIFEST_TMP.MF" "Standard Widget Toolkit for GTK 2.0"
-
- java-pkg_sointo "/usr/$(get_libdir)/swt"
- java-pkg_doso *.so
-
- dodoc about.html
-}
diff --git a/dev-java/swt/swt-4.10-r2.ebuild b/dev-java/swt/swt-4.10-r2.ebuild
new file mode 100644
index 000000000000..4e117a49acf6
--- /dev/null
+++ b/dev-java/swt/swt-4.10-r2.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic java-pkg-2 java-ant-2 toolchain-funcs java-osgi
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-201812060815"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/"
+SRC_URI="
+ amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+ ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.10"
+KEYWORDS="amd64 ppc64"
+IUSE="cairo opengl webkit"
+
+COMMON_DEP="
+ >=dev-libs/atk-1.10.2
+ >=dev-libs/glib-2.32
+ >=x11-libs/gtk+-2.6.8:2
+ x11-libs/libXtst
+ cairo? ( >=x11-libs/cairo-1.4.14 )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )
+ webkit? (
+ net-libs/webkit-gtk:4
+ )"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-1.8:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ >=x11-libs/libXtst-1.1.0"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-1.8:*"
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+
+S="${WORKDIR}"
+
+# JNI libraries don't need SONAME, bug #253756
+QA_SONAME='usr/lib[^/]*/libswt-[^/]+.so'
+
+PATCHES=(
+ "${FILESDIR}"/${P}-as-needed-and-flag-fixes.patch
+)
+
+src_unpack() {
+ local DISTFILE=${A}
+ unzip -jq "${DISTDIR}"/${DISTFILE} swt.jar src.zip || die "Unable to extract distfile"
+ unpack "./src.zip"
+
+ # Cleanup the redirtied directory structure
+ rm -rf about_files/ || die
+}
+
+src_prepare() {
+ # Replace the build.xml to allow compilation without Eclipse tasks
+ cp "${FILESDIR}/build.xml" "${S}/build.xml" || die "Unable to update build.xml"
+ mkdir "${S}/src" && mv "${S}/org" "${S}/src" || die "Unable to restructure SWT sources"
+
+ # Apply patches
+ default
+
+ # Define missing g_thread_supported() to be already started.
+ sed -i '1s/^/#define g_thread_supported() 1\n\n/' "${S}"/os_custom.h || die
+
+ # Webext is also in the library directory
+ sed -i 's|findResource([^,]\+|findResource("swt"|' \
+ "${S}"/src/org/eclipse/swt/browser/WebKit.java || die
+}
+
+src_compile() {
+ append-cflags -fcommon # https://bugs.gentoo.org/707838
+
+ # Drop jikes support as it seems to be unfriendly with SWT
+ java-pkg_filter-compiler jikes
+
+ local JAWTSO="libjawt.so"
+ IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+ for libpath in "${ldpaths[@]}"; do
+ if [[ -f "${libpath}/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}"
+ break
+ # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+ elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+ break
+ fi
+ done
+
+ if [[ -z "${AWT_LIB_PATH}" ]]; then
+ eerror "${JAWTSO} not found in the JDK being used for compilation!"
+ die "cannot build AWT library"
+ fi
+
+ # Fix the pointer size for AMD64
+ export SWT_PTR_CFLAGS=-DJNI64
+
+ # Bug #461784, g_thread_init is deprecated since glib-2.32.
+ append-cflags -DNO__1g_1thread_1init
+
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+ einfo "Building AWT library"
+ ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
+
+ einfo "Building SWT library"
+ ${make} make_swt
+
+ einfo "Building JAVA-AT-SPI bridge"
+ ${make} make_atk
+
+ if use cairo ; then
+ einfo "Building CAIRO support"
+ ${make} make_cairo
+ fi
+
+ if use opengl ; then
+ einfo "Building OpenGL component"
+ ${make} make_glx
+ fi
+
+ if use webkit ; then
+ einfo "Building WebKit component"
+ ${make} make_webkit make_webkit2extension
+ fi
+
+ einfo "Building JNI libraries"
+ eant compile
+
+ einfo "Copying missing files"
+ cp -i "${S}/version.txt" "${S}/build/version.txt" || die
+ cp -i "${S}/src/org/eclipse/swt/internal/SWTMessages.properties" \
+ "${S}/build/org/eclipse/swt/internal/" || die
+ unzip swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d build || die
+
+ einfo "Packing JNI libraries"
+ eant jar
+}
+
+src_install() {
+ local swtArch=${ARCH}
+ use amd64 && swtArch=x86_64
+
+ sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
+ remove_from_manifest() {
+ local subpkg=$1
+ sed -i -e "/ org.eclipse.swt.internal.$subpkg; x-internal:=true,/d" "MANIFEST_TMP.MF" || die
+ }
+ use cairo || remove_from_manifest cairo
+ use opengl || remove_from_manifest opengl.glx
+ use webkit || remove_from_manifest webkit
+ java-osgi_newjar-fromfile "swt.jar" "MANIFEST_TMP.MF" "Standard Widget Toolkit for GTK 2.0"
+
+ java-pkg_sointo "/usr/$(get_libdir)/swt"
+ java-pkg_doso *.so
+
+ dodoc about.html
+}
diff --git a/dev-java/swt/swt-4.10-r3.ebuild b/dev-java/swt/swt-4.10-r3.ebuild
new file mode 100644
index 000000000000..da97a0a165ab
--- /dev/null
+++ b/dev-java/swt/swt-4.10-r3.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs java-osgi
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://archive.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-201812060815"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/swt/"
+SRC_URI="
+ amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+ ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.10"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="cairo opengl webkit"
+
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+COMMON_DEP="
+ app-accessibility/at-spi2-core:2
+ dev-libs/glib
+ >=x11-libs/gtk+-2.6.8:2
+ x11-libs/libXtst
+ cairo? ( x11-libs/cairo )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )
+ webkit? (
+ net-libs/webkit-gtk:4
+ )"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-1.8:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-1.8:*"
+
+# JNI libraries don't need SONAME, bug #253756
+QA_SONAME='usr/lib[^/]*/libswt-[^/]+.so'
+
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-as-needed-and-flag-fixes.patch
+)
+
+src_unpack() {
+ default
+ unpack "./src.zip"
+}
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ # .css stuff is essential at least for running net-p2p/biglybt
+ unzip swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d resources || die
+ java-pkg_clean
+
+ # Define missing g_thread_supported() to be already started.
+ sed -i '1s/^/#define g_thread_supported() 1\n\n/' "${S}"/os_custom.h || die
+
+ # Webext is also in the library directory
+ sed -i 's|findResource([^,]\+|findResource("swt"|' \
+ org/eclipse/swt/browser/WebKit.java || die
+
+ mkdir src || die "mkdir failed"
+ mv org src || die "moving java sources failed"
+ pushd src > /dev/null || die
+ find -type f ! -name '*.java' \
+ | xargs \
+ cp --parent -t ../resources -v \
+ || die "copying resources failed"
+ popd > /dev/null || die
+ cp version.txt resources || die "adding version.txt failed"
+}
+
+src_compile() {
+ append-cflags -fcommon # https://bugs.gentoo.org/707838
+
+ local JAWTSO="libjawt.so"
+ IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+ for libpath in "${ldpaths[@]}"; do
+ if [[ -f "${libpath}/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}"
+ break
+ # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+ elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+ break
+ fi
+ done
+
+ if [[ -z "${AWT_LIB_PATH}" ]]; then
+ eerror "${JAWTSO} not found in the JDK being used for compilation!"
+ die "cannot build AWT library"
+ fi
+
+ # Fix the pointer size for AMD64
+ export SWT_PTR_CFLAGS=-DJNI64
+
+ # Bug #461784, g_thread_init is deprecated since glib-2.32.
+ append-cflags -DNO__1g_1thread_1init
+
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+ einfo "Building AWT library"
+ export SWT_JAVA_HOME="$(java-config -g JAVA_HOME)"
+ ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
+
+ einfo "Building SWT library"
+ ${make} make_swt
+
+ einfo "Building JAVA-AT-SPI bridge"
+ ${make} make_atk
+
+ if use cairo ; then
+ einfo "Building CAIRO support"
+ ${make} make_cairo
+ fi
+
+ if use opengl ; then
+ einfo "Building OpenGL component"
+ ${make} make_glx
+ fi
+
+ if use webkit ; then
+ einfo "Building WebKit component"
+ ${make} make_webkit
+ fi
+
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ local swtArch=${ARCH}
+ use amd64 && swtArch=x86_64
+
+ sed "s/SWT_ARCH/${swtArch}/" "${FILESDIR}/${PN}-${SLOT}-manifest" > "MANIFEST_TMP.MF" || die
+ remove_from_manifest() {
+ local subpkg=$1
+ sed -i -e "/ org.eclipse.swt.internal.$subpkg; x-internal:=true,/d" "MANIFEST_TMP.MF" || die
+ }
+ use cairo || remove_from_manifest cairo
+ use opengl || remove_from_manifest opengl.glx
+ use webkit || remove_from_manifest webkit
+ java-osgi_newjar-fromfile "swt.jar" "MANIFEST_TMP.MF" "Standard Widget Toolkit for GTK 2.0"
+
+ java-pkg_sointo "/usr/$(get_libdir)/swt"
+ java-pkg_doso *.so
+
+ dodoc about.html
+}
diff --git a/dev-java/swt/swt-4.29.ebuild b/dev-java/swt/swt-4.29.ebuild
new file mode 100644
index 000000000000..08361076b0b5
--- /dev/null
+++ b/dev-java/swt/swt-4.29.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202309031000"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/swt/"
+SRC_URI="
+ amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+ arm64? ( ${MY_DMF}/${MY_P}-gtk-linux-aarch64.zip )
+ ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.27"
+KEYWORDS="amd64 arm64 ppc64"
+IUSE="cairo opengl webkit"
+
+COMMON_DEP="
+ app-accessibility/at-spi2-core:2
+ dev-libs/glib
+ x11-libs/gtk+:3
+ x11-libs/libXtst
+ cairo? ( x11-libs/cairo )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )
+ webkit? (
+ net-libs/webkit-gtk:4.1
+ )"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-11:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst"
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-1.8:*"
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+
+HTML_DOCS=( about.html )
+
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src"
+
+PATCHES=(
+ "${FILESDIR}/swt-4.27-as-needed-and-flag-fixes.patch"
+)
+
+src_unpack() {
+ default
+ unpack "./src.zip"
+}
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+ # .css stuff is essential at least for running net-p2p/biglybt
+ unzip swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d resources || die
+ java-pkg_clean
+ mkdir src || die "mkdir failed"
+ mv org src || die "moving java sources failed"
+ pushd src > /dev/null || die
+ find -type f ! -name '*.java' \
+ | xargs \
+ cp --parent -t ../resources -v \
+ || die "copying resources failed"
+ popd > /dev/null || die
+ cp version.txt resources || die "adding version.txt failed"
+}
+
+src_compile() {
+ append-cflags -fcommon # https://bugs.gentoo.org/707838
+
+ local JAWTSO="libjawt.so"
+ IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+ for libpath in "${ldpaths[@]}"; do
+ if [[ -f "${libpath}/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}"
+ break
+ # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+ elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+ break
+ fi
+ done
+
+ if [[ -z "${AWT_LIB_PATH}" ]]; then
+ eerror "${JAWTSO} not found in the JDK being used for compilation!"
+ die "cannot build AWT library"
+ fi
+
+ # Fix the pointer size for AMD64
+ export SWT_PTR_CFLAGS=-DJNI64
+
+ # Bug #461784, g_thread_init is deprecated since glib-2.32.
+ append-cflags -DNO__1g_1thread_1init
+
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+ einfo "Building AWT library"
+ export SWT_JAVA_HOME="$(java-config -g JAVA_HOME)"
+ ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
+
+ einfo "Building SWT library"
+ ${make} make_swt
+
+ einfo "Building JAVA-AT-SPI bridge"
+ ${make} make_atk
+
+ if use cairo ; then
+ einfo "Building CAIRO support"
+ ${make} make_cairo
+ fi
+
+ if use opengl ; then
+ einfo "Building OpenGL component"
+ ${make} make_glx
+ fi
+
+ if use webkit ; then
+ einfo "Building WebKit component"
+ ${make} make_webkit
+ fi
+
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ java-pkg_sointo "/usr/$(get_libdir)/swt"
+ java-pkg_doso *.so
+}
diff --git a/dev-java/swt/swt-4.30-r1.ebuild b/dev-java/swt/swt-4.30-r1.ebuild
new file mode 100644
index 000000000000..f0ea9b557f4b
--- /dev/null
+++ b/dev-java/swt/swt-4.30-r1.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202312010110"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/swt/"
+SRC_URI="
+ amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+ arm64? ( ${MY_DMF}/${MY_P}-gtk-linux-aarch64.zip )
+ ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.30"
+KEYWORDS="amd64 arm64 ppc64"
+IUSE="cairo opengl webkit"
+
+COMMON_DEP="
+ app-accessibility/at-spi2-core:2
+ dev-libs/glib
+ x11-libs/gtk+:3
+ x11-libs/libXtst
+ cairo? ( x11-libs/cairo )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )
+ webkit? (
+ net-libs/webkit-gtk:4.1
+ )"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-17:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst"
+# error: pattern matching in instanceof is not supported in -source 11
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-17:*"
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+
+HTML_DOCS=( about.html )
+
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src"
+
+PATCHES=(
+ "${FILESDIR}/swt-4.27-as-needed-and-flag-fixes.patch"
+)
+
+src_unpack() {
+ default
+ unpack "./src.zip"
+}
+
+src_prepare() {
+ default
+ java-pkg-2_src_prepare
+ # .css stuff is essential at least for running net-p2p/biglybt
+ unzip swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d resources || die
+ java-pkg_clean
+ mkdir src || die "mkdir failed"
+ mv org src || die "moving java sources failed"
+ pushd src > /dev/null || die
+ find -type f ! -name '*.java' \
+ | xargs \
+ cp --parent -t ../resources -v \
+ || die "copying resources failed"
+ popd > /dev/null || die
+ cp version.txt resources || die "adding version.txt failed"
+}
+
+src_compile() {
+ append-cflags -fcommon # https://bugs.gentoo.org/707838
+
+ local JAWTSO="libjawt.so"
+ IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+ for libpath in "${ldpaths[@]}"; do
+ if [[ -f "${libpath}/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}"
+ break
+ # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+ elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+ break
+ fi
+ done
+
+ if [[ -z "${AWT_LIB_PATH}" ]]; then
+ eerror "${JAWTSO} not found in the JDK being used for compilation!"
+ die "cannot build AWT library"
+ fi
+
+ # Fix the pointer size for AMD64
+ export SWT_PTR_CFLAGS=-DJNI64
+
+ # Bug #461784, g_thread_init is deprecated since glib-2.32.
+ append-cflags -DNO__1g_1thread_1init
+
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+ einfo "Building AWT library"
+ export SWT_JAVA_HOME="$(java-config -g JAVA_HOME)"
+ ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
+
+ einfo "Building SWT library"
+ ${make} make_swt
+
+ einfo "Building JAVA-AT-SPI bridge"
+ ${make} make_atk
+
+ if use cairo ; then
+ einfo "Building CAIRO support"
+ ${make} make_cairo
+ fi
+
+ if use opengl ; then
+ einfo "Building OpenGL component"
+ ${make} make_glx
+ fi
+
+ if use webkit ; then
+ einfo "Building WebKit component"
+ ${make} make_webkit
+ fi
+
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ java-pkg_sointo "/usr/$(get_libdir)/swt"
+ java-pkg_doso *.so
+}
diff --git a/dev-java/swt/swt-4.31.ebuild b/dev-java/swt/swt-4.31.ebuild
new file mode 100644
index 000000000000..5d3dfd9effdc
--- /dev/null
+++ b/dev-java/swt/swt-4.31.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs
+
+MY_PV="${PV/_rc/RC}"
+MY_DMF="https://download.eclipse.org/eclipse/downloads/drops4/R-${MY_PV}-202402290520"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="GTK based SWT Library"
+HOMEPAGE="https://www.eclipse.org/swt/"
+SRC_URI="
+ amd64? ( ${MY_DMF}/${MY_P}-gtk-linux-x86_64.zip )
+ arm64? ( ${MY_DMF}/${MY_P}-gtk-linux-aarch64.zip )
+ ppc64? ( ${MY_DMF}/${MY_P}-gtk-linux-ppc64le.zip )"
+S="${WORKDIR}/library"
+
+LICENSE="CPL-1.0 LGPL-2.1 MPL-1.1"
+SLOT="4.31"
+KEYWORDS="amd64 arm64 ppc64"
+IUSE="cairo opengl webkit"
+
+BDEPEND="
+ app-arch/unzip
+ virtual/pkgconfig
+"
+COMMON_DEP="
+ app-accessibility/at-spi2-core:2
+ dev-libs/glib
+ x11-libs/gtk+:3
+ x11-libs/libXtst
+ cairo? ( x11-libs/cairo )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ )
+ webkit? (
+ net-libs/webkit-gtk:4.1
+ )"
+DEPEND="${COMMON_DEP}
+ >=virtual/jdk-17:*[-headless-awt]
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXtst"
+# error: pattern matching in instanceof is not supported in -source 11
+RDEPEND="${COMMON_DEP}
+ >=virtual/jre-17:*"
+
+HTML_DOCS=( ../about.html )
+
+JAVA_RESOURCE_DIRS="../resources"
+JAVA_SRC_DIR="../src"
+
+PATCHES=(
+ "${FILESDIR}/swt-4.27-as-needed-and-flag-fixes.patch"
+)
+
+src_unpack() {
+ default
+ unpack "./src.zip"
+}
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ # .css stuff is essential at least for running net-p2p/biglybt
+ unzip ../swt.jar 'org/eclipse/swt/internal/gtk/*.css' -d resources || die
+ java-pkg_clean
+ cd .. || die
+ mkdir resources src || die "mkdir failed"
+ find org -type f -name '*.java' \
+ | xargs \
+ cp --parent -t src -v \
+ || die "copying resources failed"
+ find org -type f ! -name '*.java' \
+ | xargs \
+ cp --parent -t resources -v \
+ || die "copying resources failed"
+ cp version.txt resources || die "adding version.txt failed"
+}
+
+src_compile() {
+ append-cflags -fcommon # https://bugs.gentoo.org/707838
+
+ local JAWTSO="libjawt.so"
+ IFS=":" read -r -a ldpaths <<< $(java-config -g LDPATH)
+
+ for libpath in "${ldpaths[@]}"; do
+ if [[ -f "${libpath}/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}"
+ break
+ # this is a workaround for broken LDPATH in <=openjdk-8.292_p10 and <=dev-java/openjdk-bin-8.292_p10
+ elif [[ -f "${libpath}/$(tc-arch)/${JAWTSO}" ]]; then
+ export AWT_LIB_PATH="${libpath}/$(tc-arch)"
+ break
+ fi
+ done
+
+ if [[ -z "${AWT_LIB_PATH}" ]]; then
+ eerror "${JAWTSO} not found in the JDK being used for compilation!"
+ die "cannot build AWT library"
+ fi
+
+ # Fix the pointer size for AMD64
+ export SWT_PTR_CFLAGS=-DJNI64
+
+ # Bug #461784, g_thread_init is deprecated since glib-2.32.
+ append-cflags -DNO__1g_1thread_1init
+
+ local make="emake -f make_linux.mak NO_STRIP=y CC=$(tc-getCC) CXX=$(tc-getCXX)"
+
+ einfo "Building AWT library"
+ export SWT_JAVA_HOME="$(java-config -g JAVA_HOME)"
+ ${make} make_awt AWT_LIBS="-L\$(AWT_LIB_PATH) -Wl,-rpath,\$(AWT_LIB_PATH) -ljawt \`pkg-config --libs x11\`"
+
+ einfo "Building SWT library"
+ ${make} make_swt
+
+ einfo "Building JAVA-AT-SPI bridge"
+ ${make} make_atk
+
+ if use cairo ; then
+ einfo "Building CAIRO support"
+ ${make} make_cairo
+ fi
+
+ if use opengl ; then
+ einfo "Building OpenGL component"
+ ${make} make_glx
+ fi
+
+ if use webkit ; then
+ einfo "Building WebKit component"
+ ${make} make_webkit
+ fi
+
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ java-pkg-simple_src_install
+
+ java-pkg_sointo "/usr/$(get_libdir)/swt"
+ java-pkg_doso *.so
+}
diff --git a/dev-java/system-rules/Manifest b/dev-java/system-rules/Manifest
new file mode 100644
index 000000000000..bed7ffa0b465
--- /dev/null
+++ b/dev-java/system-rules/Manifest
@@ -0,0 +1 @@
+DIST system-rules-1.19.0.tar.gz 76900 BLAKE2B a9f9be08b930632a72af0ee851f17da875d42a08c3187b435c06dd5553afb629e41d06d87c423fecd7ea665197be19a53955e9880617aff7175310bcc2b2735d SHA512 6238a9673456977f6a2bc129f30849460954816bb4e1927f37b9c5b01f322d966c77d5a4eda9e1f0f24e51879d1946d0e121e5432b809793a9b95cb49ee35bdb
diff --git a/dev-java/system-rules/metadata.xml b/dev-java/system-rules/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/system-rules/metadata.xml
@@ -0,0 +1,7 @@
+<?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/system-rules/system-rules-1.19.0.ebuild b/dev-java/system-rules/system-rules-1.19.0.ebuild
new file mode 100644
index 000000000000..c87c5005b7ab
--- /dev/null
+++ b/dev-java/system-rules/system-rules-1.19.0.ebuild
@@ -0,0 +1,58 @@
+# 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/stefanbirkner/system-rules/archive/system-rules-1.19.0.tar.gz --slot 0 --keywords "~amd64" --ebuild system-rules-1.19.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.github.stefanbirkner:system-rules:1.19.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A collection of JUnit rules for testing code which uses java.lang.System."
+HOMEPAGE="https://stefanbirkner.github.io/system-rules/"
+SRC_URI="https://github.com/stefanbirkner/${PN}/archive/${P}.tar.gz"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# junit:junit-dep:[4.9,) -> !!!artifactId-not-found!!!
+
+CP_DEPEND="dev-java/junit:4"
+
+# Compile dependencies
+# POM: pom.xml
+# test? com.github.stefanbirkner:fishbowl:1.4.0 -> >=dev-java/fishbowl-1.4.1:0
+# test? commons-io:commons-io:2.4 -> >=dev-java/commons-io-2.11.0:1
+# test? org.assertj:assertj-core:1.7.1 -> >=dev-java/assertj-core-2.3.0:2
+# test? org.mockito:mockito-core:1.10.19 -> >=dev-java/mockito-4.4.0:4
+
+# Restricting to jdk:1.8 since it doesn't work with java 11 or higher.
+DEPEND="
+ virtual/jdk:1.8
+ ${CP_DEPEND}
+ test? (
+ dev-java/assertj-core:3
+ dev-java/commons-io:1
+ dev-java/fishbowl:0
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/${PN}-${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="fishbowl,commons-io-1,assertj-core-3,mockito-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
diff --git a/dev-java/tablelayout/Manifest b/dev-java/tablelayout/Manifest
deleted file mode 100644
index 0ee9bdf58b91..000000000000
--- a/dev-java/tablelayout/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tablelayout-1.0.jar 112151 BLAKE2B cf084118517271987fd92027ee88914bdfe0199b79502d77dfd194fa4f19d2a5ffe7a208206443c1819ed10b7465ded1493e4cdbf33000bacd7e2885ec0c1877 SHA512 b6e9ef07b50165679df8338123cc636b8165ab989e71afc9d1279e257bb171675aa46cc304e65d7e301c66117149675bd987c07d6cf5b03cd1c7768144e22902
diff --git a/dev-java/tablelayout/metadata.xml b/dev-java/tablelayout/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/tablelayout/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/tablelayout/tablelayout-1.0.ebuild b/dev-java/tablelayout/tablelayout-1.0.ebuild
deleted file mode 100644
index afc16b2f180b..000000000000
--- a/dev-java/tablelayout/tablelayout-1.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Layout manager that makes creating user interfaces fast and easy"
-HOMEPAGE="https://www.oracle.com/technetwork/java/tablelayout-141489.html"
-SRC_URI="https://www.oracle.com/technetwork/java/${PN}.jar -> ${P}.jar"
-
-LICENSE="LGPL-2.1"
-KEYWORDS="amd64 ~ppc64 x86"
-SLOT="0"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-java_prepare() {
- find . -type f -name \*.class -exec rm -v {} \; || die
-
- # two commmas cause a compiling error :/
- sed -i -e 's#Dimension(40, 20);;#Dimension(40, 20);#g;' \
- example/TypicalGui.java || die
-}
diff --git a/dev-java/telnetd/Manifest b/dev-java/telnetd/Manifest
deleted file mode 100644
index cddfb2fa8745..000000000000
--- a/dev-java/telnetd/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST telnetd-2.0.tar.gz 421949 BLAKE2B 915e8843336e9df87ef9aa2b906c505523a10f8895a02092228df15ea239c3aa5a300f1933d78023d6d39b0d33e8690a9056b6737460edf61f5dfa57a44acb14 SHA512 1d25d624b2f8308bee0b3fa9f2aefb1cbbf5abfa415e857ac1ed5d958c218592dc63b322afe76c50afa4b361f85903c1c469a145503bff2bde51783a45f3664f
diff --git a/dev-java/telnetd/metadata.xml b/dev-java/telnetd/metadata.xml
deleted file mode 100644
index 7b49ae9cf1e5..000000000000
--- a/dev-java/telnetd/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">telnetd</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/telnetd/telnetd-2.0-r1.ebuild b/dev-java/telnetd/telnetd-2.0-r1.ebuild
deleted file mode 100644
index 65c5919afd5e..000000000000
--- a/dev-java/telnetd/telnetd-2.0-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A telnet daemon for use in Java applications"
-HOMEPAGE="http://telnetd.sourceforge.net/"
-SRC_URI="mirror://sourceforge/telnetd/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="dev-java/commons-logging:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_GENTOO_CLASSPATH="commons-logging"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres "${PN}.jar" src -name "*.properties"
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher "j${PN}" --main net.wimpi.telnetd.TelnetD
-}
diff --git a/dev-java/testng/Manifest b/dev-java/testng/Manifest
index 310f28a1c68c..0c4ed92063e4 100644
--- a/dev-java/testng/Manifest
+++ b/dev-java/testng/Manifest
@@ -1 +1,5 @@
-DIST testng-6.9.10.tar.gz 6271781 BLAKE2B 5b77f4b1d9bfdca6749a1d33f465a30bcd9ab9dd9fc37abf8148301c24d6bf287224d9886c0f681deac54e12f9460139ce2a2058b3d160c05cf8fcb9f7808373 SHA512 ed9ad1ced20904ab261d2a233f3fa43ee1ea31778e992cdd27459811b256a6998d8385dd01ff72821133208a1fbd72aa3599a4b8bc0eb4d7b696d34593f9567e
+DIST apache-groovy-binary-2.4.21.zip 37467992 BLAKE2B e0f925bad53f0f8a7012f0bea420ec3e5986118cc23cd677a11f619284754eacc15c3012cf780063fef574053781bba924a86e5fa2ac284d86f349ad18173704 SHA512 e2f73405d7521b99e3ce5622cffcc505bbc039ccb1c35696fc895d648a9325937a136cf97a229f7ac1b90b63ad8603881350c4d41e514ad45233fb333d76d510
+DIST groovy-all-2.4.7.jar 7015434 BLAKE2B 23d22ddd78229c485ed9384169acee154258644249b856661e17d1d0efb5518e32473a26962b5d657a09b41d490813ed76254820ffdf39e83869209617b66c2d SHA512 4c26ff9f7137c0506c95f7ba1d4228ce57e16d87b77dd1d114390224207d71d3958460c7b5a239d5f41596ab87e7f4aa7aaea1dfce19a50badf8f9b818329c54
+DIST jquery-3.5.1.jar 313070 BLAKE2B 76abfbd21d83f72a3cfcb666f3a2fcfcf5975e723a462996bac9701caf6b59cb9998746af713ebb1f6bfe49cce91544216cc65dc6819e95e8a15930744685415 SHA512 9f560415b36875958ff1d3c6d37fa79d6d134c5f5fc7719dd21db36d1f24dec39787834b2a9ffb104ec6b56e725ccc524a8ff9b189ced3d68e24296b2daae720
+DIST spock-core-1.0-groovy-2.4.jar 588030 BLAKE2B 68d8fad8b6ffb45a18778797ea23d4f3b09256bf4e9f207ee666d07572399cd13522e6f1590219a80e23f6906a2e9eaf1f22c6a3c01717e8c1e99b5d37b89210 SHA512 078c0b16688eaa3134043e58ed4273981797ea92f08723b5508c7d7e4f635278dd5ca731fb294da2a1f35674623d969ee423d4344c2c822e1d4cb8d4f3383790
+DIST testng-6.11.tar.gz 677522 BLAKE2B 2e7bf30fcf805cce5a7ec42f22c39e9f4678642fcde9752c51d118e655189805661edeeff1a3db0e960c79e7542fe25ab8fa6995f142da12b3adc8753fd8a361 SHA512 996d7a18399e16626756b7a790182c7b6bf3453280209d0a09d4a509d698fcad1a80e58ec36702de95bd59c90c237463719ad44934c14390620fc9655d871252
diff --git a/dev-java/testng/metadata.xml b/dev-java/testng/metadata.xml
index 40124b35b074..f79c946be086 100644
--- a/dev-java/testng/metadata.xml
+++ b/dev-java/testng/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">cbeust/testng</remote-id>
+ <remote-id type="github">testng-team/testng</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/testng/testng-6.11-r1.ebuild b/dev-java/testng/testng-6.11-r1.ebuild
new file mode 100644
index 000000000000..78aaa96fb37f
--- /dev/null
+++ b/dev-java/testng/testng-6.11-r1.ebuild
@@ -0,0 +1,101 @@
+# 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.testng:testng:6.11"
+JAVA_TESTING_FRAMEWORKS="testng"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Testing framework inspired by JUnit and NUnit with new features"
+HOMEPAGE="https://testng.org/"
+# Presently we install the binary version of jquery since it is not packaged in ::gentoo.
+JQV="3.5.1"
+# Currently we bundle the binary versions of spock-core, groovy-all and apache-groovy-binary.
+# These are used only for tests, we don't install them.
+SCV="1.0-groovy-2.4"
+GAV="2.4.7"
+AGV="2.4.21"
+SRC_URI="https://github.com/testng-team/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://repo1.maven.org/maven2/org/webjars/jquery/${JQV}/jquery-${JQV}.jar
+ test? (
+ https://repo1.maven.org/maven2/org/spockframework/spock-core/${SCV}/spock-core-${SCV}.jar
+ https://repo1.maven.org/maven2/org/codehaus/groovy/groovy-all/${GAV}/groovy-all-${GAV}.jar
+ https://downloads.apache.org/groovy/${AGV}/distribution/apache-groovy-binary-${AGV}.zip
+ )"
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+SLOT="0"
+
+CP_DEPEND="
+ >=dev-java/ant-1.10.14-r3:0
+ dev-java/bsh:0
+ dev-java/guice:4
+ dev-java/jcommander:1.64
+ dev-java/junit:4
+ dev-java/snakeyaml:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/assertj-core:3
+ dev-java/guava:0
+ )"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+DOCS=( README {ANNOUNCEMENT,CHANGES}.txt )
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3"
+JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+JAVA_TEST_RUN_ONLY="src/test/resources/testng.xml"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean ! -path "./src/*"
+
+ rm src/main/resources/META-INF/MANIFEST.MF || die
+}
+
+src_test() {
+ # This contains the compiler groovyc
+ unzip "${DISTDIR}/apache-groovy-binary-${AGV}.zip"
+
+ JAVA_GENTOO_CLASSPATH_EXTRA=":${DISTDIR}/spock-core-${SCV}.jar"
+
+ ejavac -cp "${JAVA_TEST_SRC_DIR}:${PN}.jar:$(java-pkg_getjars guava)" \
+ src/test/java/test/SimpleBaseTest.java || die
+
+ # java-pkg-simple.eclass expects generated test classes in this
+ # directory and will copy them to target/test-classes
+ mkdir generated-test || die "cannot create generated-test directory"
+ "groovy-${AGV}/bin/groovyc" \
+ -cp "${JAVA_TEST_SRC_DIR}:${DISTDIR}/spock-core-${SCV}.jar" \
+ -d generated-test \
+ src/test/groovy/test/groovy/* || die
+
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":${DISTDIR}/groovy-all-${GAV}.jar"
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_dolauncher ${PN} --main org.testng.TestNG
+
+ java-pkg_newjar "${DISTDIR}/jquery-${JQV}.jar" jquery.jar
+ java-pkg_regjar "${ED}/usr/share/${PN}/lib/jquery.jar"
+
+ java-pkg_register-ant-task
+}
diff --git a/dev-java/testng/testng-6.9.10.ebuild b/dev-java/testng/testng-6.9.10.ebuild
deleted file mode 100644
index 6be65aaa0a31..000000000000
--- a/dev-java/testng/testng-6.9.10.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Testing framework inspired by JUnit and NUnit with new features"
-HOMEPAGE="https://testng.org/"
-SRC_URI="https://github.com/cbeust/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-KEYWORDS="amd64 x86"
-SLOT="0"
-IUSE="test"
-RESTRICT="test" # Occasionally fail or run *REALLY* slowly.
-
-CDEPEND="dev-java/bsh:0
- dev-java/guice:4
- dev-java/junit:4
- dev-java/ant-core:0
- dev-java/snakeyaml:0
- dev-java/jcommander:0"
-
-DEPEND="${CDEPEND}
- >=virtual/jdk-1.7
- test? ( dev-java/assertj-core:2 )"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.7"
-
-S="${WORKDIR}/${P}"
-JAVA_SRC_DIR="src/main/java"
-JAVA_GENTOO_CLASSPATH="ant-core,bsh,guice-4,jcommander,junit-4,snakeyaml"
-
-java_prepare() {
- java-pkg_clean ! -path "./src/*"
-
- cp -v src/generated/java/org/testng/internal/VersionTemplateJava \
- src/main/java/org/testng/internal/Version.java || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
- java-pkg_addres ${PN}.jar src/main/resources
-}
-
-src_test() {
- local DIR=src/test/java
- local RES=src/test/resources
- local CP=${PN}.jar:$(java-pkg_getjars --with-dependencies "${JAVA_GENTOO_CLASSPATH},assertj-core-2")
-
- ejavac -cp "${CP}" -d ${DIR} $(find ${DIR} -name "*.java")
- java -cp "${RES}:${DIR}:${CP}" -Dtest.resources.dir=${RES} org.testng.TestNG -listener test.invokedmethodlistener.MyListener src/test/resources/testng.xml || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- java-pkg_dolauncher ${PN} --main org.testng.TestNG
- java-pkg_register-ant-task
-
- dodoc {ANNOUNCEMENT,CHANGES,TODO}.txt
-
- if use doc; then
- docinto html
- dodoc -r doc
- fi
-}
diff --git a/dev-java/texhyphj/Manifest b/dev-java/texhyphj/Manifest
deleted file mode 100644
index 5a3195a4d68d..000000000000
--- a/dev-java/texhyphj/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST texhyphj-1.1.tar.gz 118115 BLAKE2B 39a4d4b94e74d6814fbc98dcb24e2a88f9c76c845534598ef1a65171de22bb33117267a8b9246b1aff93ccdbd9a6255f34a97457b85fe41ae05153b197155c61 SHA512 fe410695be95ab6359e396c0694cad35baad6c8dd27ce4947ba22acaa19ed954596d40131fe1131d12ddd0ecf5f45287952221a6b9019cf25594dbb314b15beb
diff --git a/dev-java/texhyphj/metadata.xml b/dev-java/texhyphj/metadata.xml
deleted file mode 100644
index d931fe8f7d2b..000000000000
--- a/dev-java/texhyphj/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">texhyphj</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/texhyphj/texhyphj-1.1.ebuild b/dev-java/texhyphj/texhyphj-1.1.ebuild
deleted file mode 100644
index c3adbe617a2d..000000000000
--- a/dev-java/texhyphj/texhyphj-1.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Re-implementation of Franklin Mark Liang's hyphenation algorithm in Java"
-HOMEPAGE="http://www.davidashen.net/texhyphj.html https://sourceforge.net/projects/texhyphj/"
-SRC_URI="http://ftp.davidashen.net/TeXHyphenator-J/${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-RESTRICT="test"
-
-DEPEND="app-arch/unzip
- >=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}"
diff --git a/dev-java/tijmp/Manifest b/dev-java/tijmp/Manifest
deleted file mode 100644
index 111556b129d2..000000000000
--- a/dev-java/tijmp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tijmp-0.8.tar.gz 347809 BLAKE2B d18fd0ba9145fb9277404a24fa26a65e4cbba34e62dfa0b080bc380d61a3dd11aab23e2c7fb982a97cb40fa216b1b3347c949cee52f7462f0113c3adef993c8d SHA512 911efd93c1548db45fcf8fd924675329aa82c6853ffe93074768646d08f80f4b076f336dba0da293d1acb084a12eb62c68803fa9408e2b64b2b82ab62db1de25
diff --git a/dev-java/tijmp/files/tijmp-0.8-respect-javacflags.patch b/dev-java/tijmp/files/tijmp-0.8-respect-javacflags.patch
deleted file mode 100644
index 96902aedf4ec..000000000000
--- a/dev-java/tijmp/files/tijmp-0.8-respect-javacflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -18,7 +18,7 @@
- java_files := $(foreach dir,$(dirs),$(find_files))
- class_files := $(patsubst $(jdir)/%.java,%.class,$(java_files))
-
--JCFLAGS := -source 1.6 -encoding ISO-8859-1 -Xlint:unchecked -deprecation
-+JCFLAGS := $(JAVACFLAGS) -encoding ISO-8859-1 -Xlint:unchecked -deprecation
-
- # standard java compilation..
- JAVACOMPILE := $(JAVAC) $(JCFLAGS) -sourcepath $(jdir) -d $(top_builddir)
diff --git a/dev-java/tijmp/files/tijmp-jni.h.patch b/dev-java/tijmp/files/tijmp-jni.h.patch
deleted file mode 100644
index 02a9b43670b0..000000000000
--- a/dev-java/tijmp/files/tijmp-jni.h.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-# Patch by Vlastimil Babka <caster@gentoo.org>
-# Some JDK's such as ibm-jdk-bin don't have jni_md.h, so make the test more robust
---- a/configure.ac 2009-01-10 00:29:01.000000000 +0100
-+++ b/configure.ac 2010-04-05 12:17:35.000000000 +0200
-@@ -24,22 +24,16 @@
- JAVA_HOME=/usr/local/jdk
- fi
-
--jni_md=no
--AC_CHECK_HEADERS($JAVA_HOME/include/$java_os/jni_md.h,
-- jni_md=found)
-+dnl ok, maybe we dont always need include/$java_os but we use an -I for it anyway...
-+CPPFLAGS="$CPPFLAGS -I$JAVA_HOME/include -I$JAVA_HOME/include/$java_os"
-
--if test $jni_md = no
--then
--AC_CHECK_HEADERS($JAVA_HOME/include/jni_md.h,
-- jni_md=found)
--fi
-+jni_h=no
-+AC_CHECK_HEADERS($JAVA_HOME/include/jni.h,
-+ jni_h=found)
-
--if test $jni_md = no
-+if test $jni_h = no
- then
-- AC_MSG_ERROR(Does JAVA_HOME point to the java SDK directory?)
--else
--dnl ok, maybe we dont need include/$java_os but we use an -I for it anyway...
-- CPPFLAGS="$CPPFLAGS -I$JAVA_HOME/include -I$JAVA_HOME/include/$java_os"
-+ AC_MSG_ERROR(Could not find jni.h. Does JAVA_HOME point to the java SDK directory?)
- fi
-
- AC_CHECK_HEADER($JAVA_HOME/include/jvmti.h,
diff --git a/dev-java/tijmp/metadata.xml b/dev-java/tijmp/metadata.xml
deleted file mode 100644
index 517a7a99e840..000000000000
--- a/dev-java/tijmp/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-JMP is a profiler for java that can be used to trace objects usage and
-method timings. JMP uses the JVMPI interface to gather statistics
-and interact with the JVM. JMP uses a GTK+ interface to show the status.
-</longdescription>
-
-</pkgmetadata>
diff --git a/dev-java/tijmp/tijmp-0.8-r1.ebuild b/dev-java/tijmp/tijmp-0.8-r1.ebuild
deleted file mode 100644
index dfe78930f1a1..000000000000
--- a/dev-java/tijmp/tijmp-0.8-r1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools java-pkg-2
-
-DESCRIPTION="Java Memory Profiler"
-HOMEPAGE="http://www.khelekore.org/jmp/tijmp/"
-SRC_URI="http://www.khelekore.org/jmp/tijmp/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6"
-
-PATCHES=(
- "${FILESDIR}/${PN}-jni.h.patch"
- "${FILESDIR}/${P}-respect-javacflags.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_install() {
- emake DESTDIR="${D}" jardir="/usr/share/${PN}/lib/" install
- java-pkg_regjar "${D}/usr/share/${PN}/lib/${PN}.jar"
- java-pkg_regso "${D}/usr/$(get_libdir)/lib${PN}.so"
-
- cat > "${T}/${PN}" <<- "EOF" || die
-#!/usr/bin/env bash
-java -Dtijmp.jar="$(java-config -p tijmp)" -agentlib:tijmp "${@}"
-EOF
- dobin "${T}/${PN}"
-}
-
-pkg_postinst() {
- einfo "For your convenience, ${PN} wrapper can be used to run java"
- einfo "with profiling. Just use it in place of the 'java' command."
-}
diff --git a/dev-java/tomcat-jstl-compat/Manifest b/dev-java/tomcat-jstl-compat/Manifest
deleted file mode 100644
index 56b340aacb83..000000000000
--- a/dev-java/tomcat-jstl-compat/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tomcat-jstl-compat-1.2.5.zip 615779 BLAKE2B f5c307625a84a7170659683913282df1cf7e8b6a021ffed9895aa0e770a35d8db5351660c96668091ed59e5be35d2e8ad9359f524cbfe5a380e89ebe4fe08b43 SHA512 ad4122cd75c66df901034e333c2b38ac3d2d8f5b0299abd36d0fd1c8f5975eacc71d66a475fc05638dd562ab0670ea532fe6a3ccb5497dfbeb9d859b03b659d0
diff --git a/dev-java/tomcat-jstl-compat/files/tomcat-jstl-compat-1.2.5-build.xml b/dev-java/tomcat-jstl-compat/files/tomcat-jstl-compat-1.2.5-build.xml
deleted file mode 100644
index db0c23f69b09..000000000000
--- a/dev-java/tomcat-jstl-compat/files/tomcat-jstl-compat-1.2.5-build.xml
+++ /dev/null
@@ -1,194 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 6/2/15 10:03 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="taglibs-standard-compat-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="taglibs-standard-compat-1.2.5"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases"/>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/1.5.0/docs/api"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/tomcat-jstl-compat/metadata.xml b/dev-java/tomcat-jstl-compat/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/tomcat-jstl-compat/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/tomcat-jstl-compat/tomcat-jstl-compat-1.2.5-r1.ebuild b/dev-java/tomcat-jstl-compat/tomcat-jstl-compat-1.2.5-r1.ebuild
deleted file mode 100644
index 993a59235a07..000000000000
--- a/dev-java/tomcat-jstl-compat/tomcat-jstl-compat-1.2.5-r1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2 eutils
-
-MY_PN="taglibs-standard"
-MY_P="${MY_PN}-${PV}"
-MY_COMPAT="${MY_PN}-compat"
-
-DESCRIPTION="JSP Standard Tag Library (JSTL) - Compat jar"
-HOMEPAGE="https://tomcat.apache.org/taglibs/standard/"
-SRC_URI="http://apache.mirrors.ovh.net/ftp.apache.org/dist/tomcat/taglibs/${MY_P}/${MY_P}-source-release.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
- dev-java/tomcat-jstl-spec:0
- dev-java/tomcat-jstl-impl:0
- java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- test? (
- dev-java/ant-junit:0
- dev-java/easymock:3.2
- )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="servlet-api-3.0,tomcat-jstl-spec,tomcat-jstl-impl"
-EANT_BUILD_TARGET="package"
-EANT_BUILD_XML="compat/build.xml"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml "${S}"/compat/build.xml || die
-}
-
-EANT_TEST_TARGET="test"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},easymock-3.2"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "${S}"/compat/target/${MY_COMPAT}-${PV}.jar ${MY_COMPAT}.jar
-
- if use doc; then
- java-pkg_dohtml -r "${S}"/compat/target/site/apidocs/
- fi
-
- if use source; then
- java-pkg_dosrc "${S}"/compat/src/*
- fi
-}
diff --git a/dev-java/tomcat-jstl-el/Manifest b/dev-java/tomcat-jstl-el/Manifest
deleted file mode 100644
index 9b7b5e26997a..000000000000
--- a/dev-java/tomcat-jstl-el/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tomcat-jstl-el-1.2.5.zip 615779 BLAKE2B f5c307625a84a7170659683913282df1cf7e8b6a021ffed9895aa0e770a35d8db5351660c96668091ed59e5be35d2e8ad9359f524cbfe5a380e89ebe4fe08b43 SHA512 ad4122cd75c66df901034e333c2b38ac3d2d8f5b0299abd36d0fd1c8f5975eacc71d66a475fc05638dd562ab0670ea532fe6a3ccb5497dfbeb9d859b03b659d0
diff --git a/dev-java/tomcat-jstl-el/files/tomcat-jstl-el-1.2.5-build.xml b/dev-java/tomcat-jstl-el/files/tomcat-jstl-el-1.2.5-build.xml
deleted file mode 100644
index 8b1c1c8e5a2c..000000000000
--- a/dev-java/tomcat-jstl-el/files/tomcat-jstl-el-1.2.5-build.xml
+++ /dev/null
@@ -1,241 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 6/2/15 9:43 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="taglibs-standard-jstlel-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="taglibs-standard-jstlel-1.2.5"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/1.5.0/docs/api"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/tomcat-jstl-el/metadata.xml b/dev-java/tomcat-jstl-el/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/tomcat-jstl-el/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/tomcat-jstl-el/tomcat-jstl-el-1.2.5-r1.ebuild b/dev-java/tomcat-jstl-el/tomcat-jstl-el-1.2.5-r1.ebuild
deleted file mode 100644
index 819873d5ddc8..000000000000
--- a/dev-java/tomcat-jstl-el/tomcat-jstl-el-1.2.5-r1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="taglibs-standard"
-MY_P="${MY_PN}-${PV}"
-MY_EL="${MY_PN}-jstlel"
-
-DESCRIPTION="JSP Standard Tag Library (JSTL) - EL jar"
-HOMEPAGE="https://tomcat.apache.org/taglibs/standard/"
-SRC_URI="http://apache.mirrors.ovh.net/ftp.apache.org/dist/tomcat/taglibs/${MY_P}/${MY_P}-source-release.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
- dev-java/tomcat-jstl-impl:0
- dev-java/tomcat-jstl-spec:0
- java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- dev-java/easymock:3.2
- )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="servlet-api-3.0,tomcat-jstl-spec,tomcat-jstl-impl"
-EANT_BUILD_TARGET="package"
-EANT_BUILD_XML="jstlel/build.xml"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml "${S}"/jstlel/build.xml || die
-}
-
-EANT_TEST_TARGET="test"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},easymock-3.2"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "${S}"/jstlel/target/${MY_EL}-${PV}.jar ${MY_EL}.jar
-
- if use doc; then
- java-pkg_dohtml -r "${S}"/jstlel/target/site/apidocs/
- fi
-
- if use source; then
- java-pkg_dosrc "${S}"/jstlel/src/*
- fi
-}
diff --git a/dev-java/tomcat-jstl-impl/Manifest b/dev-java/tomcat-jstl-impl/Manifest
deleted file mode 100644
index 2a12b9cd6b78..000000000000
--- a/dev-java/tomcat-jstl-impl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tomcat-jstl-impl-1.2.5.zip 615779 BLAKE2B f5c307625a84a7170659683913282df1cf7e8b6a021ffed9895aa0e770a35d8db5351660c96668091ed59e5be35d2e8ad9359f524cbfe5a380e89ebe4fe08b43 SHA512 ad4122cd75c66df901034e333c2b38ac3d2d8f5b0299abd36d0fd1c8f5975eacc71d66a475fc05638dd562ab0670ea532fe6a3ccb5497dfbeb9d859b03b659d0
diff --git a/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-ImportSupport.patch b/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-ImportSupport.patch
deleted file mode 100644
index f43dfc1f903b..000000000000
--- a/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-ImportSupport.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ImportSupport.java.orig 2015-06-01 22:34:34.882000000 +0000
-+++ impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ImportSupport.java 2015-06-01 22:35:29.078000000 +0000
-@@ -36,6 +36,7 @@
- import javax.servlet.ServletContext;
- import javax.servlet.ServletException;
- import javax.servlet.ServletOutputStream;
-+import javax.servlet.WriteListener;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.servlet.http.HttpServletResponseWrapper;
-@@ -430,6 +431,24 @@
- public void write(int b) throws IOException {
- bos.write(b);
- }
-+
-+ @Override
-+ public boolean isReady() {
-+ return true;
-+ }
-+
-+ @Override
-+ public void setWriteListener(WriteListener writeListener) {
-+ }
-+
-+ @Override
-+ public void close() throws IOException {
-+ }
-+
-+ @Override
-+ public void flush() throws IOException {
-+ }
-+
- };
-
- /**
diff --git a/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-SetSupport.patch b/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-SetSupport.patch
deleted file mode 100644
index 9ed4ed84a38d..000000000000
--- a/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-SetSupport.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- impl/src/test/java/org/apache/taglibs/standard/tag/common/core/SetSupportTest.java.orig 2015-06-01 22:59:35.208000000 +0000
-+++ impl/src/test/java/org/apache/taglibs/standard/tag/common/core/SetSupportTest.java 2015-06-01 22:59:54.191000000 +0000
-@@ -334,30 +334,12 @@
- }
-
- @Test
-- public void testResultFromBodyContent() throws JspException {
-- tag = new MockSetSupport();
-- BodyContent bodyContent = createMock(BodyContent.class);
-- expect(bodyContent.getString()).andStubReturn(" Hello ");
-- replay(bodyContent);
-- tag.setBodyContent(bodyContent);
-- Assert.assertEquals(VALUE, tag.getResult());
-- }
--
-- @Test
- public void testResultFromNullBodyContent() throws JspException {
- tag = new MockSetSupport();
- tag.setBodyContent(null);
- Assert.assertEquals(tag.getResult(), "");
- }
-
-- @Test
-- public void testResultFromEmptyBodyContent() throws JspException {
-- tag = new MockSetSupport();
-- BodyContent bodyContent = createMock(BodyContent.class);
-- expect(bodyContent.getString()).andStubReturn(null);
-- Assert.assertEquals("", tag.getResult());
-- }
--
- public static class MockSetSupport extends SetSupport {
- private final boolean valueSpecified;
- private final Object value;
diff --git a/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-build.xml b/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-build.xml
deleted file mode 100644
index fce6b8d72338..000000000000
--- a/dev-java/tomcat-jstl-impl/files/tomcat-jstl-impl-1.2.5-build.xml
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 6/1/15 9:48 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="taglibs-standard-impl-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="taglibs-standard-impl-1.2.5"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}"/>
- </copy>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- <exclude name="**/ExprSupportTest.java"/>
- <exclude name="**/EscapeXMLTest.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- <exclude name="**/ExprSupportTest.java"/>
- <exclude name="**/EscapeXMLTest.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/1.5.0/docs/api"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
- <!-- ====================================================================== -->
- <!-- Download dependencies target -->
- <!-- ====================================================================== -->
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true"/>
- </condition>
- </target>
-</project>
diff --git a/dev-java/tomcat-jstl-impl/metadata.xml b/dev-java/tomcat-jstl-impl/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/tomcat-jstl-impl/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/tomcat-jstl-impl/tomcat-jstl-impl-1.2.5-r1.ebuild b/dev-java/tomcat-jstl-impl/tomcat-jstl-impl-1.2.5-r1.ebuild
deleted file mode 100644
index 80abba919d84..000000000000
--- a/dev-java/tomcat-jstl-impl/tomcat-jstl-impl-1.2.5-r1.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="taglibs-standard"
-MY_P="${MY_PN}-${PV}"
-MY_IMPL="${MY_PN}-impl"
-
-DESCRIPTION="JSP Standard Tag Library (JSTL) - Implementation jar"
-HOMEPAGE="https://tomcat.apache.org/taglibs/standard/"
-SRC_URI="http://apache.mirrors.ovh.net/ftp.apache.org/dist/tomcat/taglibs/${MY_P}/${MY_P}-source-release.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
- dev-java/xalan:0
- dev-java/tomcat-jstl-spec:0
- dev-java/tomcat-servlet-api:3.1"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- dev-java/easymock:3.2
- )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="tomcat-servlet-api-3.1,tomcat-jstl-spec,xalan"
-EANT_BUILD_TARGET="package"
-EANT_BUILD_XML="impl/build.xml"
-
-JAVA_RM_FILES=(
- impl/src/test/java/org/apache/taglibs/standard/tag/common/fmt/BundleSupportTest.java
-)
-
-PATCHES=(
- # This patch overrides a couple of methods.
- "${FILESDIR}"/${P}-ImportSupport.patch
- # This one disables one test case which doesn't work.
- "${FILESDIR}"/${P}-SetSupport.patch
-)
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml "${S}"/impl/build.xml || die
-
- epatch "${PATCHES[@]}"
-}
-
-EANT_TEST_TARGET="test"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},easymock-3.2"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "${S}"/impl/target/${MY_IMPL}-${PV}.jar ${MY_IMPL}.jar
-
- if use doc; then
- java-pkg_dohtml -r "${S}"/impl/target/site/apidocs/
- fi
-
- if use source; then
- java-pkg_dosrc "${S}"/impl/src/*
- fi
-}
diff --git a/dev-java/tomcat-jstl-spec/Manifest b/dev-java/tomcat-jstl-spec/Manifest
deleted file mode 100644
index 801b1f5ed155..000000000000
--- a/dev-java/tomcat-jstl-spec/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tomcat-jstl-spec-1.2.5.zip 615779 BLAKE2B f5c307625a84a7170659683913282df1cf7e8b6a021ffed9895aa0e770a35d8db5351660c96668091ed59e5be35d2e8ad9359f524cbfe5a380e89ebe4fe08b43 SHA512 ad4122cd75c66df901034e333c2b38ac3d2d8f5b0299abd36d0fd1c8f5975eacc71d66a475fc05638dd562ab0670ea532fe6a3ccb5497dfbeb9d859b03b659d0
diff --git a/dev-java/tomcat-jstl-spec/files/tomcat-jstl-spec-1.2.5-build.xml b/dev-java/tomcat-jstl-spec/files/tomcat-jstl-spec-1.2.5-build.xml
deleted file mode 100644
index 27ba9e5bcb07..000000000000
--- a/dev-java/tomcat-jstl-spec/files/tomcat-jstl-spec-1.2.5-build.xml
+++ /dev/null
@@ -1,225 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ====================================================================== -->
-<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
-<!-- ====================================================================== -->
-
-<!-- ====================================================================== -->
-<!-- ===================== - DO NOT EDIT THIS FILE! - ===================== -->
-<!-- ====================================================================== -->
-<!-- -->
-<!-- Any modifications will be overwritten. -->
-<!-- -->
-<!-- Generated by Maven Ant Plugin on 5/25/15 5:16 PM -->
-<!-- See: http://maven.apache.org/plugins/maven-ant-plugin/ -->
-<!-- -->
-<!-- ====================================================================== -->
-
-<project name="taglibs-standard-spec-from-maven" default="package" basedir=".">
-
- <!-- ====================================================================== -->
- <!-- Build environment properties -->
- <!-- ====================================================================== -->
-
- <property file="${user.home}/.m2/maven.properties"/>
- <property file="maven-build.properties"/>
-
- <property name="maven.build.finalName" value="taglibs-standard-spec-1.2.5"/>
- <property name="maven.build.dir" value="target"/>
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
- <property name="maven.build.srcDir.0" value="src/main/java"/>
- <property name="maven.build.resourceDir.0" value="src/main/resources"/>
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
- <property name="maven.build.testDir.0" value="src/test/java"/>
- <property name="maven.build.testResourceDir.0" value="src/test/resources"/>
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository"/>
- <property name="maven.settings.offline" value="false"/>
- <property name="maven.settings.interactiveMode" value="true"/>
-
- <!-- ====================================================================== -->
- <!-- Defining classpaths -->
- <!-- ====================================================================== -->
-
- <path id="build.classpath">
- </path>
- <path id="build.test.classpath">
- </path>
-
- <!-- ====================================================================== -->
- <!-- Cleaning up target -->
- <!-- ====================================================================== -->
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}"/>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}"/>
- <javac destdir="${maven.build.outputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.srcDir.0}"/>
- </src>
- <classpath refid="build.classpath"/>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Test-compilation target -->
- <!-- ====================================================================== -->
-
- <target name="compile-tests"
- depends="compile"
- description="Compile the test code"
- unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}"/>
- <javac destdir="${maven.build.testOutputDir}"
- encoding="UTF-8"
- nowarn="false"
- debug="true"
- optimize="false"
- deprecation="true"
- target="1.5"
- verbose="false"
- fork="false"
- source="1.5">
- <src>
- <pathelement location="${maven.build.testDir.0}"/>
- </src>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- </classpath>
- </javac>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Run all tests -->
- <!-- ====================================================================== -->
-
- <target name="test"
- depends="compile-tests, junit-missing"
- unless="junit.skipped"
- description="Run the test cases">
- <mkdir dir="${maven.test.reports}"/>
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="."/>
- <formatter type="xml"/>
- <formatter type="plain" usefile="false"/>
- <classpath>
- <path refid="build.test.classpath"/>
- <pathelement location="${maven.build.outputDir}"/>
- <pathelement location="${maven.build.testOutputDir}"/>
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java"/>
- <include name="**/*Test.java"/>
- <include name="**/*TestCase.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java"/>
- <exclude name="**/*Abstract*Test.java"/>
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
- </target>
-
- <target name="test-junit-status"
- depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}"/>
- <isfalse value="${maven.test.skip}"/>
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}"/>
- <istrue value="${maven.test.skip}"/>
- </or>
- </condition>
- </target>
-
- <target name="junit-missing"
- depends="test-junit-status"
- if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Javadoc target -->
- <!-- ====================================================================== -->
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}"
- packagenames="*"
- destdir="${maven.reporting.outputDirectory}/apidocs"
- access="protected"
- old="false"
- verbose="false"
- version="true"
- use="true"
- author="true"
- splitindex="false"
- nodeprecated="false"
- nodeprecatedlist="false"
- notree="false"
- noindex="false"
- nohelp="false"
- nonavbar="false"
- serialwarn="false"
- charset="ISO-8859-1"
- linksource="false"
- breakiterator="false">
- <link href="http://download.oracle.com/javase/1.5.0/docs/api"/>
- </javadoc>
- </target>
-
- <!-- ====================================================================== -->
- <!-- Package target -->
- <!-- ====================================================================== -->
-
- <target name="package" depends="compile" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
- compress="true"
- index="false"
- basedir="${maven.build.outputDir}"
- excludes="**/package.html">
- <manifest>
- <attribute name="Main-Class" value="Main"/>
- </manifest>
- </jar>
- </target>
-
- <!-- ====================================================================== -->
- <!-- A dummy target for the package named after the type it creates -->
- <!-- ====================================================================== -->
-
- <target name="jar" depends="package" description="Builds the jar for the application"/>
-
-</project>
diff --git a/dev-java/tomcat-jstl-spec/metadata.xml b/dev-java/tomcat-jstl-spec/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/tomcat-jstl-spec/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/tomcat-jstl-spec/tomcat-jstl-spec-1.2.5-r1.ebuild b/dev-java/tomcat-jstl-spec/tomcat-jstl-spec-1.2.5-r1.ebuild
deleted file mode 100644
index f765fd0acbcd..000000000000
--- a/dev-java/tomcat-jstl-spec/tomcat-jstl-spec-1.2.5-r1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="taglibs-standard"
-MY_P="${MY_PN}-${PV}"
-MY_SPEC="${MY_PN}-spec"
-
-DESCRIPTION="JSP Standard Tag Library (JSTL) - Specification jar"
-HOMEPAGE="https://tomcat.apache.org/taglibs/standard/"
-SRC_URI="http://apache.mirrors.ovh.net/ftp.apache.org/dist/tomcat/taglibs/${MY_P}/${MY_P}-source-release.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="java-virtuals/servlet-api:3.0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- test? (
- dev-java/ant-junit:0
- dev-java/easymock:3.2
- )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="servlet-api-3.0"
-EANT_BUILD_TARGET="package"
-EANT_BUILD_XML="spec/build.xml"
-
-java_prepare() {
- cp "${FILESDIR}"/${P}-build.xml "${S}"/spec/build.xml || die
-}
-
-EANT_TEST_TARGET="test"
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},easymock-3.2"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar "${S}"/spec/target/${MY_SPEC}-${PV}.jar ${MY_SPEC}.jar
-
- if use doc; then
- java-pkg_dohtml -r "${S}"/spec/target/site/apidocs/
- fi
-
- if use source; then
- java-pkg_dosrc "${S}"/spec/src/*
- fi
-}
diff --git a/dev-java/tomcat-native/Manifest b/dev-java/tomcat-native/Manifest
index 8bd79bcf4355..7aace8ac6336 100644
--- a/dev-java/tomcat-native/Manifest
+++ b/dev-java/tomcat-native/Manifest
@@ -1,2 +1,4 @@
-DIST tomcat-native-1.2.28-src.tar.gz 423848 BLAKE2B f0528817e1ea7e90ce67d8e181c0f620211d36529809a4c89ae687f4cefe4b0f977eb53b87e70bd0132ef1a5a000df82fc8c70e08f9bb568644b47cbf8817470 SHA512 16b8659dcd228ea153d05c9ae19e3d97add944315f3b8b42905162d0e4e8a28fd51a172d59d7da8508271ecad0b8ac025a386895565acaf8e2ba11fba77492bb
-DIST tomcat-native-1.2.30-src.tar.gz 425741 BLAKE2B d39c7762db0f8c6b3422d1a4811d65793e2315e0d34fae8a37f250ff41a2c11a0c89ccaf8a361cda7cb16434dcd9678289ecec60cc5322a5fae2d6963c76f36c SHA512 51a8c55214de166cace193c3330abe77cabea56c2d05efc8c3408bc06369c328899376c94c572725ebe2887f2faf99fea05d1819fa84c712d57fd309d0476953
+DIST tomcat-native-1.3.0-src.tar.gz 345276 BLAKE2B 73e8433e12bdd88036509f4ffbd2c0ed25b367567728829a56918d082627d43643865c492f4bc8eac4551e2ed82648ada71e6decfb45c173a856ab2fda6e01a5 SHA512 5a6c7337280774525c97e36e24d7d278ba15edd63c66cec1b3e5ecdc472f8d0535e31eac83cf0bdc68810eb779e2a118d6b4f6238b509f69a71d037c905fa433
+DIST tomcat-native-1.3.0-src.tar.gz.asc 833 BLAKE2B b7e05447643000ffda0d66143c199192b41843f10ae89874c353d613f612a6d481be3081aa971b640a3bedc6c903be7d052c418e2abc2d7d6db42924c7b3cf91 SHA512 9cfc137cd13086ccf421376a006164e6e6e14844636457db0cf7c0f699a1b1ceab28a52bd80da71dc9e190bdf84676abfdbe07a0cabecfc59b7845ac82a171e5
+DIST tomcat-native-2.0.7-src.tar.gz 538131 BLAKE2B ef973c830e3e3e04f4bf7bd711915b1ac5f28e34832edd0750117a5d6b00f9a7fa9e390858d23bfaeeb08ad825d7dcc1e95967c00d4ada96cac83377fca7bea6 SHA512 625b334271494f7c86c06d6a8c6d13c06d9d6094f65cccbdc8d3df13ee2aae4cb42ad326e20bcbf8a8f141240111778991882f9bf87793b09a2920433d6c8c85
+DIST tomcat-native-2.0.7-src.tar.gz.asc 833 BLAKE2B 081f40de6fdc5ad819a167e0150a2e03ab8d4fd679be0dbabac9a9f2aabffd2fa36fd6a9c764deefd419576dcda07bc1b22ea2f14c04eddbfa7f94e4834bec7e SHA512 16a96a3c3b55d258ad0820c30392f37643f433c563b74a983109492569d06a399471acc42c7f07b87b50bff8711bc10ed278bfa183807bcdde1355e6b8058605
diff --git a/dev-java/tomcat-native/files/tomcat-native-1.2.39-slibtool.patch b/dev-java/tomcat-native/files/tomcat-native-1.2.39-slibtool.patch
new file mode 100644
index 000000000000..e193a0ffd905
--- /dev/null
+++ b/dev-java/tomcat-native/files/tomcat-native-1.2.39-slibtool.patch
@@ -0,0 +1,26 @@
+From 54dccd3a4dc01801d9311b3160808305ec9fc2cf Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Thu, 21 Jul 2022 17:59:14 -0700
+Subject: [PATCH] native: Fix the build with rlibtool
+
+When building tomcat-native with slibtool using the rlibtool symlink the
+build will fail. This is because rlibtool requires the generated libtool
+script to determine if the build is shared, static or both.
+
+Gentoo bug: https://bugs.gentoo.org/778914
+---
+ native/configure.in | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/configure.in
++++ b/configure.in
+@@ -50,6 +50,9 @@ AC_SUBST(TCN_CONFIG_LOCATION)
+ AC_CANONICAL_TARGET
+ AC_PROG_INSTALL
+
++dnl Generate the libtool script which is needed for rlibtool
++LT_INIT
++
+ dnl
+ dnl compute the top directory of the build
+ dnl note: this is needed for LIBTOOL and exporting the bundled Expat
diff --git a/dev-java/tomcat-native/metadata.xml b/dev-java/tomcat-native/metadata.xml
index 2228187b5ce8..1989b45b9137 100644
--- a/dev-java/tomcat-native/metadata.xml
+++ b/dev-java/tomcat-native/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -15,4 +15,10 @@
generation, system status, etc), and native process handling (shared
memory, NT pipes and Unix sockets).
</longdescription>
+ <upstream>
+ <bugs-to>https://tomcat.apache.org/bugreport.html</bugs-to>
+ <doc>https://tomcat.apache.org/native-doc/</doc>
+ <changelog>https://tomcat.apache.org/native-doc/miscellaneous/changelog.html</changelog>
+ <remote-id type="github">apache/tomcat-native</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/tomcat-native/tomcat-native-1.2.28.ebuild b/dev-java/tomcat-native/tomcat-native-1.2.28.ebuild
deleted file mode 100644
index fd32b6403ca4..000000000000
--- a/dev-java/tomcat-native/tomcat-native-1.2.28.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Allows Tomcat to use certain native resources for better performance"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-connectors/native/${PV}/source/${P}-src.tar.gz"
-
-KEYWORDS="amd64 ~x86"
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="static-libs test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-libs/apr:1=
- dev-libs/openssl:0=
- >=virtual/jre-1.8:*"
-
-DEPEND=">=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )"
-
-S=${WORKDIR}/${P}-src
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-src_configure() {
- local myeconfargs=(
- --with-apr="${EPREFIX}"/usr/bin/apr-1-config
- --with-ssl="${EPREFIX}"/usr
- )
-
- cd native || die
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- eant jar
-
- cd native || die
- default
-}
-
-src_install() {
- java-pkg_newjar "dist/${P}.jar" "${PN}.jar"
-
- cd native || die
- default
-
- ! use static-libs && find "${D}" -name '*.la' -delete || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-pkg_postinst() {
- elog "For more information, please visit"
- elog "https://tomcat.apache.org/tomcat-9.0-doc/apr.html"
-}
diff --git a/dev-java/tomcat-native/tomcat-native-1.2.30.ebuild b/dev-java/tomcat-native/tomcat-native-1.2.30.ebuild
deleted file mode 100644
index 76a4520b2d1f..000000000000
--- a/dev-java/tomcat-native/tomcat-native-1.2.30.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Allows Tomcat to use certain native resources for better performance"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-connectors/native/${PV}/source/${P}-src.tar.gz"
-
-KEYWORDS="~amd64 ~x86"
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="static-libs test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="dev-libs/apr:1=
- dev-libs/openssl:0=
- >=virtual/jre-1.8:*"
-
-DEPEND=">=virtual/jdk-1.8:*
- test? ( dev-java/ant-junit:0 )"
-
-S=${WORKDIR}/${P}-src
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-
-src_configure() {
- local myeconfargs=(
- --with-apr="${EPREFIX}"/usr/bin/apr-1-config
- --with-ssl="${EPREFIX}"/usr
- )
-
- cd native || die
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- eant jar
-
- cd native || die
- default
-}
-
-src_install() {
- java-pkg_newjar "dist/${P}.jar" "${PN}.jar"
-
- cd native || die
- default
-
- ! use static-libs && find "${D}" -name '*.la' -delete || die
-}
-
-src_test() {
- java-pkg-2_src_test
-}
-
-pkg_postinst() {
- elog "For more information, please visit"
- elog "https://tomcat.apache.org/tomcat-9.0-doc/apr.html"
-}
diff --git a/dev-java/tomcat-native/tomcat-native-1.3.0.ebuild b/dev-java/tomcat-native/tomcat-native-1.3.0.ebuild
new file mode 100644
index 000000000000..d560c27c933d
--- /dev/null
+++ b/dev-java/tomcat-native/tomcat-native-1.3.0.ebuild
@@ -0,0 +1,86 @@
+# 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 verify-sig
+
+DESCRIPTION="Allows Tomcat to use certain native resources for better performance"
+HOMEPAGE="https://tomcat.apache.org/native-doc/"
+SRC_URI="mirror://apache/tomcat/tomcat-connectors/native/${PV}/source/${P}-src.tar.gz
+ verify-sig? (
+ https://downloads.apache.org/tomcat/tomcat-connectors/native/${PV}/source/${P}-src.tar.gz.asc
+ )"
+S=${WORKDIR}/${P}-src/native
+
+KEYWORDS="amd64 ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="static-libs"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+RDEPEND="
+ dev-libs/apr:1=
+ dev-libs/openssl:0/3
+ >=virtual/jre-1.8:*
+"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-tomcat-connectors )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/tomcat-connectors.apache.org.asc"
+
+JAVA_RESOURCE_DIRS="../resources"
+JAVA_SRC_DIR="../java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="../test"
+
+DOCS=( ../{CHANGELOG.txt,NOTICE,README.txt} )
+PATCHES=( "${FILESDIR}/tomcat-native-1.2.39-slibtool.patch" )
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/META-INF" || die
+ sed -ne '/attribute name/s:^.*name="\(.*\)" value="\(.*\)".*$:\1\: \2:p' \
+ ../build.xml \
+ | sed "s:\${version}:${PV}:" \
+ > "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF" || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-apr="${EPREFIX}"/usr/bin/apr-1-config
+ --with-ssl="${EPREFIX}"/usr
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ default
+}
+
+src_test() {
+ # Adjusting "String testFile =" path in TestFile.java:29 to match ${S}
+ sed \
+ -e '/String testFile =/s&test/&../test/&' \
+ -i ../test/org/apache/tomcat/jni/TestFile.java || die
+
+ JAVA_TEST_EXTRA_ARGS=( -Djava.library.path=".libs" )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_doso .libs/*.so*
+ dodoc -r ../docs
+ ! use static-libs && find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "For more information, please visit"
+ elog "https://tomcat.apache.org/tomcat-9.0-doc/apr.html"
+}
diff --git a/dev-java/tomcat-native/tomcat-native-2.0.7.ebuild b/dev-java/tomcat-native/tomcat-native-2.0.7.ebuild
new file mode 100644
index 000000000000..9507ee4750e0
--- /dev/null
+++ b/dev-java/tomcat-native/tomcat-native-2.0.7.ebuild
@@ -0,0 +1,79 @@
+# 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 verify-sig
+
+DESCRIPTION="Allows Tomcat to use certain native resources for better performance"
+HOMEPAGE="https://tomcat.apache.org/native-doc/"
+SRC_URI="mirror://apache/tomcat/tomcat-connectors/native/${PV}/source/${P}-src.tar.gz
+ verify-sig? (
+ https://downloads.apache.org/tomcat/tomcat-connectors/native/${PV}/source/tomcat-native-${PV}-src.tar.gz.asc
+ )"
+S=${WORKDIR}/${P}-src/native
+
+KEYWORDS="amd64 ~x86"
+LICENSE="Apache-2.0"
+SLOT="2"
+IUSE="static-libs"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+RDEPEND="
+ dev-libs/apr:1=
+ dev-libs/openssl:0/3
+ >=virtual/jre-1.8:*
+"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-tomcat-connectors )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/tomcat-connectors.apache.org.asc"
+
+JAVA_RESOURCE_DIRS="../resources"
+JAVA_SRC_DIR="../java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="../test"
+
+DOCS=( ../{CHANGELOG.txt,NOTICE,README.txt} )
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ mkdir -p "${JAVA_RESOURCE_DIRS}/META-INF" || die
+ sed -ne '/attribute name/s:^.*name="\(.*\)" value="\(.*\)".*$:\1\: \2:p' \
+ ../build.xml \
+ | sed "s:\${version}:${PV}:" \
+ > "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF" || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ --with-apr="${EPREFIX}"/usr/bin/apr-1-config
+ --with-ssl="${EPREFIX}"/usr
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+ default
+}
+
+src_test() {
+ JAVA_TEST_EXTRA_ARGS=( -Djava.library.path=".libs" )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_doso .libs/*.so*
+ dodoc -r ../docs
+ ! use static-libs && find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ elog "For more information, please visit"
+ elog "https://tomcat.apache.org/tomcat-9.0-doc/apr.html"
+}
diff --git a/dev-java/tomcat-servlet-api/Manifest b/dev-java/tomcat-servlet-api/Manifest
index 9f74ceb0aed0..7c6f93cc9a8d 100644
--- a/dev-java/tomcat-servlet-api/Manifest
+++ b/dev-java/tomcat-servlet-api/Manifest
@@ -1,10 +1 @@
-DIST apache-tomcat-10.0.5-src.tar.gz 5976090 BLAKE2B 5441bec39ddaa74a7a4b39e48ecb524f6edb230760272678e6bf8d0a26b4a39e9a6c276b591d5d7962d8cae7d211486d65a334f363931d7cd8750a902c8aaf98 SHA512 177e497b2355b260fc59cfcfb8b1fc2fabf5fe5a0f5705b5feee2c330881545aad359a746074c9fb180acb54035d0c2f25b23daac84202788178a256e48f0c9f
-DIST apache-tomcat-10.0.6-src.tar.gz 5987333 BLAKE2B b955d3708555c5530ebccaf9c6e8c344a679666bdd45361980d722d2cb48b618a03dc2514f973c182c2c1eaf96852e5a5eadad89575ee1bf524213211191a6a4 SHA512 229e8767b8f53f6b5c0e28f13a1daffd6fb8307a5239ae28ee1522087d881e4c9e3f1a0d39bfc852d5e54166dbb8a0a1577210a325845815c7281c4babc0b100
DIST apache-tomcat-4.1.40-src.tar.gz 3709719 BLAKE2B f7ca82052c1148a5c384fcbc3871beeddccdb4cfed05ba176581ebb50f52ba867bed8dbc500e97b7348a3a87b9693fb73eb81209df4f31e8c1ced7e30a6af30b SHA512 c455fa3da9da8fcbf1d54ae5dce808f8a4520ccafd627a6b2d1b003c37e8395d8b2a55d5471bf6c196549d082715862b3b8958aef88613293a07fc0160aa5c6e
-DIST apache-tomcat-5.5.36-src.tar.gz 3743113 BLAKE2B dbfcfd123a23b0ceb9f1fdd936e42324ea8b10cf327a1d0abf1703006535859c7122690a08b5ec27b86b526cc7709a7199b4f35f123538ff11f23f3b489358f3 SHA512 845636b5b992fbbb7d657d192afbab1e6a924bfd0c71b025cf22776eb4527d92d63f9b3f33475d4349a0df4cebd984ba3776eedd7482b820abdea909e90a97b7
-DIST apache-tomcat-6.0.53-src.tar.gz 3522914 BLAKE2B 054b097c16861abaa8bdbeba713b49bc1dfcff573bb3f4bd0ff5807c33a2a0fb991af618f6e11e5b3ce3fa55c589fc6569342cab5d5a00349c79bc7061d81e40 SHA512 915a0a18f5c2883625c9441eed6465973eff4f6bf41e08e925c7edaea89ef8f6ee9476d3e06fa38228d4bcb4decaf53e3a7bdb7ec7e899e6250db3e12a9f5f2c
-DIST apache-tomcat-7.0.109-src.tar.gz 5314401 BLAKE2B 56583caea6879bf8ca5cc02a886de3d7af413032f88d367653e709dc1c8f590e78620c788317bbff4b6e65dd3e242cc26863164ac8e7c87334a22636f3ed0703 SHA512 ecf9c0bee0e3e1aa24f299fe633705c5a2f6aa264d9e4968cfc96aa5d0a425c2b0ff07765a8b6c67221766733bdfaed6e6c6377a8d0870d889e7063ce90a46ce
-DIST apache-tomcat-8.5.65-src.tar.gz 5874743 BLAKE2B 8a605b0fe5026315aa0a5463d42c01eac164c91737cc81f8df4e174075783a829ddd30a8fc9f5129cf1f83a98d85fa33cb7ec9223f365de0ad91ecffb319d187 SHA512 df6ea4e8e04fe1f787ef105cb3e453516ad25d32ad3d559c86997b44492c9a1e93e8c22c88ba2203dcfefc14404f7d1bb28a9e2e20d44ba85adf8c374a4456fa
-DIST apache-tomcat-8.5.66-src.tar.gz 5879748 BLAKE2B bfef20872bd19ffa2bb34b98a1da875fdd5f232e681458f0aef093b7eecd63a95c1cd26130f54251f149249e639d0da2577770e43314d2a86b8ee9b48b675f0d SHA512 322fda683197898f873feb375791092d33c90aac08a54889fabab0f59ecbc7b27784f027b37008c6893fdbf8ca7973b73268f42673d7e8df762419b5a536593b
-DIST apache-tomcat-9.0.45-src.tar.gz 6055044 BLAKE2B 66ca4ee2c0a3bbd1f73d7257c55105e28d1619c8e533f945438cdb283cb8ccdceada163698641b034b5e43b513fcdd16e331c4c11ea300501276a5247f8ef682 SHA512 e3edfd6ab9e3ddf6a15f63a4e11f5237e03d7cacdec11805f4a901bd325c0edeca1ee0b62bee92d53e521af0a9d5a7b10ce12a8262a57fd7faa69d93ca1c066e
-DIST apache-tomcat-9.0.46-src.tar.gz 6068533 BLAKE2B 400814281aedd588c008a1363199f8602e856870d4c39d536b13f8a357c2390d2db689940f4a6971ec74a84e8e400174e72610e0d64a220de41f2dff419dda3c SHA512 dc380e23aa87273c6ba32e79659e768c551b07812635c2f1c62d2c34b493b1d3d51b4548fec5014fdb36f8461fc90942aa7917874ddf3d6f5c5345d8ca02dfc1
diff --git a/dev-java/tomcat-servlet-api/files/2.5-build-r1.xml b/dev-java/tomcat-servlet-api/files/2.5-build-r1.xml
deleted file mode 100644
index 585ed9f07843..000000000000
--- a/dev-java/tomcat-servlet-api/files/2.5-build-r1.xml
+++ /dev/null
@@ -1,90 +0,0 @@
-<project name="Tomcat Serlvet API 2.5/JSP API 2.1" default="deploy" basedir=".">
-
- <property name="compile.source" value="1.5"/>
-
- <property name="tomcat.build" value="${basedir}/output/build"/>
- <property name="tomcat.classes" value="${basedir}/output/classes"/>
- <property name="servlet-api.jar" value="${tomcat.build}/lib/servlet-api.jar"/>
- <property name="jsp-api.jar" value="${tomcat.build}/lib/jsp-api.jar"/>
- <property name="el-api.jar" value="${tomcat.build}/lib/el-api.jar"/>
-
- <!-- Just build Tomcat -->
- <target name="build-prepare">
-
- <available classname="junit.framework.TestCase" property="junit.present" />
-
- <mkdir dir="${tomcat.build}"/>
- <mkdir dir="${tomcat.build}/lib"/>
- <mkdir dir="${tomcat.classes}"/>
-
- </target>
-
- <target name="compile">
-
- <!-- Compile internal server components -->
- <javac srcdir="java" destdir="${tomcat.classes}"
- debug="${compile.debug}"
- deprecation="${compile.deprecation}"
- source="${compile.source}"
- optimize="${compile.optimize}"
- excludes="**/CVS/**,**/.svn/**">
- <exclude name="java/javax/annotation/**" />
- <exclude name="java/javax/ejb/**" />
- <exclude name="java/javax/mail/**" />
- <exclude name="java/javax/persistence/**" />
- <exclude name="java/javax/xml/**" />
- <exclude name="org/**" />
- </javac>
- <tstamp>
- <format property="TODAY" pattern="MMM d yyyy" locale="en"/>
- <format property="TSTAMP" pattern="hh:mm:ss"/>
- </tstamp>
- <!-- Copy static resource files -->
- <filter token="VERSION" value="${version}"/>
- <filter token="VERSION_NUMBER" value="${version.number}"/>
- <filter token="VERSION_BUILT" value="${TODAY} ${TSTAMP}"/>
- <copy todir="${tomcat.classes}" filtering="true">
- <fileset dir="java">
- <include name="**/*.properties"/>
- <include name="**/*.dtd"/>
- <include name="**/*.tasks"/>
- <include name="**/*.xsd"/>
- <include name="**/*.xml"/>
- </fileset>
- </copy>
-
- </target>
-
- <target name="jar" depends="build-prepare,compile">
- <!-- Servlet 2.5 Implementation JAR File -->
- <jar jarfile="${servlet-api.jar}">
- <fileset dir="${tomcat.classes}">
- <include name="javax/servlet/*" />
- <include name="javax/servlet/http/*" />
- <include name="javax/servlet/resources/*" />
- <!-- Javadoc and i18n exclusions -->
- <exclude name="**/package.html" />
- <exclude name="**/LocalStrings_*" />
- </fileset>
- </jar>
-
- <!-- JSP 2.1 Implementation JAR File -->
- <jar jarfile="${jsp-api.jar}">
- <fileset dir="${tomcat.classes}">
- <include name="javax/servlet/jsp/**" />
- <!-- Javadoc and i18n exclusions -->
- <exclude name="**/package.html" />
- <exclude name="**/LocalStrings_*" />
- </fileset>
- </jar>
-
- <!-- JSP 2.1 EL Implementation JAR File -->
- <jar jarfile="${el-api.jar}">
- <fileset dir="${tomcat.classes}">
- <include name="javax/el/**" />
- </fileset>
- </jar>
-
- </target>
-
-</project>
diff --git a/dev-java/tomcat-servlet-api/files/jsp-api-2.0-manifest b/dev-java/tomcat-servlet-api/files/jsp-api-2.0-manifest
deleted file mode 100644
index dfaa006ea009..000000000000
--- a/dev-java/tomcat-servlet-api/files/jsp-api-2.0-manifest
+++ /dev/null
@@ -1,11 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %bundleName
-Bundle-Vendor: %vendorName
-Bundle-Localization: plugin
-Import-Package: javax.servlet; version=2.4,javax.servlet.http; version=2.4,javax.servlet.resources; version=2.4
-Export-Package: javax.servlet.jsp; version=2.0,javax.servlet.jsp.el; version=2.0, javax.servlet.jsp.resources; version=2.0,
- javax.servlet.jsp.tagext; version=2.0
-Bundle-Version: 2.0
-Bundle-SymbolicName: javax.servlet.jsp
-
diff --git a/dev-java/tomcat-servlet-api/files/servlet-api-2.4-manifest b/dev-java/tomcat-servlet-api/files/servlet-api-2.4-manifest
deleted file mode 100644
index 77e19f1d9ae8..000000000000
--- a/dev-java/tomcat-servlet-api/files/servlet-api-2.4-manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %bundleName
-Bundle-Vendor: %vendorName
-Bundle-Localization: plugin
-Export-Package: javax.servlet;version="2.4",javax.servlet.http;version="2.4",javax.servlet.resources;version="2.4"
-Bundle-Version: 2.4.0
-Bundle-SymbolicName: javax.servlet
-
diff --git a/dev-java/tomcat-servlet-api/files/tomcat-servlet-api-10.0.2-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch b/dev-java/tomcat-servlet-api/files/tomcat-servlet-api-10.0.2-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch
deleted file mode 100644
index 7dffca69ce67..000000000000
--- a/dev-java/tomcat-servlet-api/files/tomcat-servlet-api-10.0.2-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/java/jakarta/el/ExpressionFactory.java b/java/jakarta/el/ExpressionFactory.java
-index 2f42de7..5d52580 100644
---- a/java/jakarta/el/ExpressionFactory.java
-+++ b/java/jakarta/el/ExpressionFactory.java
-@@ -36,13 +36,13 @@ import java.util.concurrent.locks.Lock;
- import java.util.concurrent.locks.ReadWriteLock;
- import java.util.concurrent.locks.ReentrantReadWriteLock;
-
--import aQute.bnd.annotation.spi.ServiceConsumer;
-+//import aQute.bnd.annotation.spi.ServiceConsumer;
-
- /**
- *
- * @since 2.1
- */
--@ServiceConsumer(value=ExpressionFactory.class)
-+//@ServiceConsumer(value=ExpressionFactory.class)
- public abstract class ExpressionFactory {
-
- private static final boolean IS_SECURITY_ENABLED =
diff --git a/dev-java/tomcat-servlet-api/files/tomcat-servlet-api-9.0.40-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch b/dev-java/tomcat-servlet-api/files/tomcat-servlet-api-9.0.40-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch
deleted file mode 100644
index 86e9eeb8f19f..000000000000
--- a/dev-java/tomcat-servlet-api/files/tomcat-servlet-api-9.0.40-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/java/javax/el/ExpressionFactory.java b/java/javax/el/ExpressionFactory.java
-index 2f42de7..5d52580 100644
---- a/java/javax/el/ExpressionFactory.java
-+++ b/java/javax/el/ExpressionFactory.java
-@@ -36,13 +36,13 @@ import java.util.concurrent.locks.Lock;
- import java.util.concurrent.locks.ReadWriteLock;
- import java.util.concurrent.locks.ReentrantReadWriteLock;
-
--import aQute.bnd.annotation.spi.ServiceConsumer;
-+//import aQute.bnd.annotation.spi.ServiceConsumer;
-
- /**
- *
- * @since 2.1
- */
--@ServiceConsumer(value=ExpressionFactory.class)
-+//@ServiceConsumer(value=ExpressionFactory.class)
- public abstract class ExpressionFactory {
-
- private static final boolean IS_SECURITY_ENABLED =
diff --git a/dev-java/tomcat-servlet-api/metadata.xml b/dev-java/tomcat-servlet-api/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/tomcat-servlet-api/metadata.xml
+++ b/dev-java/tomcat-servlet-api/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.5.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.5.ebuild
deleted file mode 100644
index 3bb2fe1d1a9b..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.5.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${PN}-${PV}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 5.0/JSP API 3.0/EL API 4.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-10/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="5.0"
-KEYWORDS="amd64 ~arm ~arm64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}/"
-
-# we don't have the aQute.bnd.annotation.spi packaged
-PATCHES=(
- "${FILESDIR}/${PN}-10.0.2-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch"
-)
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compile and package
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/jakarta/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R jakarta/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/jakarta/servlet/jsp" "${S}/${JSP_API_SRC}/jakarta/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R jakarta/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/jakarta ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.6.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.6.ebuild
deleted file mode 100644
index e360880764ab..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-10.0.6.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${PN}-${PV}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 5.0/JSP API 3.0/EL API 4.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-10/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="5.0"
-KEYWORDS="amd64 ~arm arm64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}/"
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compile and package
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/jakarta/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R jakarta/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/jakarta/servlet/jsp" "${S}/${JSP_API_SRC}/jakarta/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R jakarta/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/jakarta ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-4.1.40.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-4.1.40.ebuild
index bd2584d3f9a2..4cddc788557a 100644
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-4.1.40.ebuild
+++ b/dev-java/tomcat-servlet-api/tomcat-servlet-api-4.1.40.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,7 +15,7 @@ DEPEND=">=virtual/jdk-1.8"
RDEPEND=">=virtual/jre-1.8"
LICENSE="Apache-2.0"
SLOT="2.3"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE=""
S="${WORKDIR}/${MY_P}/servletapi"
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-5.5.36.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-5.5.36.ebuild
deleted file mode 100644
index d30225f7f48a..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-5.5.36.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2 java-ant-2 java-osgi
-
-MY_P="apache-${P/-servlet-api/}-src"
-DESCRIPTION="Tomcat's Servlet API 2.4/JSP API 2.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="https://archive.apache.org/dist/tomcat/tomcat-5/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2.4"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="doc source"
-
-DEPEND=">=virtual/jdk-1.8
- source? ( app-arch/zip )"
-RDEPEND=">=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${MY_P}/servletapi"
-
-src_compile() {
- local antflags="jar $(use_doc javadoc examples)"
- eant ${antflags} -f jsr154/build.xml
- eant ${antflags} -f jsr152/build.xml
-}
-
-src_install() {
- mv jsr{154,152}/dist/lib/*.jar "${S}"
-
- if use doc ; then
- mkdir docs
- cd "${S}/jsr154/build"
- mv docs "${S}/docs/servlet"
- mv examples "${S}/docs/servlet/examples"
-
- cd "${S}/jsr152/build"
- mv docs "${S}/docs/jsp"
- mv examples "${S}/docs/jsp/examples"
- fi
-
- cd "${S}"
- java-osgi_dojar-fromfile --no-auto-version "jsp-api.jar" "${FILESDIR}/jsp-api-2.0-manifest" "Java Server Pages API Bundle"
- java-osgi_dojar-fromfile --no-auto-version "servlet-api.jar" "${FILESDIR}/servlet-api-2.4-manifest" "Servlet API Bundle"
- use doc && java-pkg_dohtml -r docs/*
- use source && java-pkg_dosrc jsr{152,154}/src/share/javax
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-6.0.53-r1.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-6.0.53-r1.ebuild
deleted file mode 100644
index 3a00b7cfd701..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-6.0.53-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_A="apache-${P}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 2.5/JSP API 2.1 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="https://archive.apache.org/dist/tomcat/tomcat-6/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2.5"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8"
-RDEPEND=">=virtual/jre-1.8"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
-
- cp "${FILESDIR}/${SLOT}-build-r1.xml" build.xml || die "Could not replace build.xml"
- rm -r */*/build.xml java/javax/{annotation,ejb,mail,persistence,xml}/ || die
- find -name '*.jar' -delete || die
-}
-
-src_install() {
- java-pkg_dojar "${S}"/output/build/lib/*.jar
- use source && java-pkg_dosrc java/javax
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-7.0.109.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-7.0.109.ebuild
deleted file mode 100644
index 0a4f99352d99..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-7.0.109.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${P}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 3.0/JSP API 2.2 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-7/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3.0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8"
-RDEPEND=">=virtual/jre-1.8"
-
-S="${WORKDIR}/${MY_P}/"
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
-
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.65.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.65.ebuild
deleted file mode 100644
index 8846bfbc900c..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.65.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${P}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 3.1/JSP API 2.3/EL API 3.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-8/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3.1"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}/"
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
-
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.66.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.66.ebuild
deleted file mode 100644
index bc802223a5b6..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-8.5.66.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${P}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 3.1/JSP API 2.3/EL API 3.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-8/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3.1"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}/"
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
-
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.45.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.45.ebuild
deleted file mode 100644
index 6a6fd33a63f6..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.45.ebuild
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${PN}-${PV}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 4.0/JSP API 2.3/EL API 3.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-9/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="4.0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}/"
-
-# we don't have the aQute.bnd.annotation.spi packaged
-PATCHES=(
- "${FILESDIR}/tomcat-servlet-api-9.0.40-patch-out-aQute.bnd.annotation.spi.ServiceConsumer.patch"
-)
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
-
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.46.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.46.ebuild
deleted file mode 100644
index 2ef1eafac6cf..000000000000
--- a/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.46.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_A="apache-${PN}-${PV}-src"
-MY_P="${MY_A/-servlet-api/}"
-DESCRIPTION="Tomcat's Servlet API 4.0/JSP API 2.3/EL API 3.0 implementation"
-HOMEPAGE="https://tomcat.apache.org/"
-SRC_URI="mirror://apache/tomcat/tomcat-9/v${PV}/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="4.0"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${MY_P}/"
-
-JAVA_TEST_SRC_DIR="src/test"
-
-SERVLET_API_JAR="servlet-api.jar"
-SERVLET_API_SRC="src/main/servlet-api"
-SERVLET_API_RESOURCES="src/resources/servlet-api"
-EL_API_JAR="el-api.jar"
-EL_API_SRC="src/main/el-api"
-EL_API_RESOURCES="src/resources/el-api"
-JSP_API_JAR="jsp-api.jar"
-JSP_API_SRC="src/main/jsp-api"
-JSP_API_RESOURCES="src/resources/jsp-api"
-
-src_prepare() {
- default
-
- # The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
-
- mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
- ${EL_API_SRC} ${EL_API_RESOURCES} \
- ${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
- ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
-
- pushd java || die "Failed to cd to java dir"
-
- cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
- mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
- cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
-
- popd
-
- for file in $(find src -type f | grep -vE "\.java$"); do
- target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
- mkdir -p ${target_dir} || die "Failed to create resource directory"
- mv $file ${target_dir} || die "Failed to move resource file"
- done
-
- mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
-
- java-pkg-2_src_prepare
-}
-
-src_compile() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_compile
- rm -fr target || die "Failed to remove compiled files"
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
- java-pkg-simple_src_compile
-}
-
-src_install() {
- JAVA_SRC_DIR="${SERVLET_API_SRC}"
- JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${EL_API_SRC}"
- JAVA_JAR_FILENAME="${EL_API_JAR}"
- java-pkg-simple_src_install
-
- JAVA_SRC_DIR="${JSP_API_SRC}"
- JAVA_JAR_FILENAME="${JSP_API_JAR}"
- java-pkg-simple_src_install
-}
diff --git a/dev-java/toolbar/Manifest b/dev-java/toolbar/Manifest
deleted file mode 100644
index 0da7be2d69fc..000000000000
--- a/dev-java/toolbar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST toolbar-1.1.0.zip 72829 BLAKE2B 8ea170b5c1643dc2e9bd914c3267f964640ab75fd5d179e7fb751b1b85985533fd2425b20df777c8c1e087cf223af46b9e5ddc02f2123948a5cfd27067fc6a30 SHA512 57f4b7970beb78f979bd3970dfc528e0a26e38828dcb8a2cc81c8f886e900f81fe53ca6cae7b5cfa3ce93cc273fa2f440cb0bd720ba6052e84e9f2df1e77099e
diff --git a/dev-java/toolbar/metadata.xml b/dev-java/toolbar/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/toolbar/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/toolbar/toolbar-1.1.0-r2.ebuild b/dev-java/toolbar/toolbar-1.1.0-r2.ebuild
deleted file mode 100644
index ea0e1cf62628..000000000000
--- a/dev-java/toolbar/toolbar-1.1.0-r2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An improved version of JToolBar"
-HOMEPAGE="http://toolbar.tigris.org"
-SRC_URI="http://toolbar.tigris.org/files/documents/869/25285/toolbar-${PV}-src.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- rm -rv test || die
-}
diff --git a/dev-java/touchgraph-graphlayout/Manifest b/dev-java/touchgraph-graphlayout/Manifest
deleted file mode 100644
index e199ac0639fb..000000000000
--- a/dev-java/touchgraph-graphlayout/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST TGGL_122_jre11.zip 202777 BLAKE2B 108b09934a5463460147f82409b09d5d2e755ac30996c6bffbfe07b89abea11d2c609e2d9f6d79ed4f425961898cdf3a8b46a8b7ee2191782d96f5cb5496cf42 SHA512 5c638972264ada2cb91ea1667c0b770629120a01496f7834ef3e4999ad5867ff911e772ea1361e33c168d8681c6f19f46ada33ea637daf4474f66a5cc97610a5
diff --git a/dev-java/touchgraph-graphlayout/metadata.xml b/dev-java/touchgraph-graphlayout/metadata.xml
deleted file mode 100644
index 52b243489488..000000000000
--- a/dev-java/touchgraph-graphlayout/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">touchgraph</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/touchgraph-graphlayout/touchgraph-graphlayout-1.22-r1.ebuild b/dev-java/touchgraph-graphlayout/touchgraph-graphlayout-1.22-r1.ebuild
deleted file mode 100644
index 2119402430f9..000000000000
--- a/dev-java/touchgraph-graphlayout/touchgraph-graphlayout-1.22-r1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="TGGraphLayout"
-
-DESCRIPTION="TouchGraph provides a set of interfaces for graph visualization"
-HOMEPAGE="http://touchgraph.sourceforge.net"
-SRC_URI="mirror://sourceforge/touchgraph/TGGL_${PV//./}_jre11.zip"
-LICENSE="Apache-1.1"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6
-"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${MY_PN}"
-
-JAVA_SRC_DIR="com"
-
-src_install() {
- java-pkg-simple_src_install
- dodoc "TGGL ReleaseNotes.txt"
-}
diff --git a/dev-java/treelayout/Manifest b/dev-java/treelayout/Manifest
index a5149631fce6..9176fd3dcfb2 100644
--- a/dev-java/treelayout/Manifest
+++ b/dev-java/treelayout/Manifest
@@ -1 +1 @@
-DIST treelayout-1.0.2.tar.gz 1007086 BLAKE2B c5ef3f0bc2a7c99a983f648efcca65a4a4fd9d72710b7a1a8263629435da6a79a328778983475565dfc23738978bf658067e3e63e7c36db84a54189821c0da07 SHA512 89a627d8ab2f248bb9b22139de0a28f310deb555f78825f29f4acfd0df7b4c212c8df241b004f8452a4be8a0f7717ee996df3eef4dd88ca905f4ad211df92655
+DIST treelayout-1.0.3.tar.gz 965389 BLAKE2B 5fb893ca0176e245778cf115a3c537d7a0ae4bcaf8119be41aa214dcf3887f5c286445d3d289134193a1b28269a2ba4952c6b9e81e3e462163bead188768f919 SHA512 5fb6a70206978c6bf8ea3c70603f38049cad21038bcedfd5a7f4dde1e4f8b080bfa78ca6dc2e43a7d0771ded39d5793f0c5340cf60ce63348d28a9be6abc3be4
diff --git a/dev-java/treelayout/metadata.xml b/dev-java/treelayout/metadata.xml
index 9012e398b6b9..b157a881ee5a 100644
--- a/dev-java/treelayout/metadata.xml
+++ b/dev-java/treelayout/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/treelayout/treelayout-1.0.2.ebuild b/dev-java/treelayout/treelayout-1.0.2.ebuild
deleted file mode 100644
index a055bd951140..000000000000
--- a/dev-java/treelayout/treelayout-1.0.2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Efficiently create compact tree layouts in Java"
-SRC_URI="https://github.com/abego/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-HOMEPAGE="https://github.com/abego/treelayout"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6
- test? ( dev-java/ant-junit:0 )"
-
-S="${WORKDIR}/${P}/org.abego.${PN}"
-JAVA_ANT_REWRITE_CLASSPATH="true"
-JAVA_PKG_BSFIX_NAME="build-impl.xml"
-EANT_BUILD_XML="nbproject/build-impl.xml"
-
-src_configure() {
- EANT_EXTRA_ARGS="-Dplatform.home=${JAVA_HOME}"
-}
-
-src_install() {
- java-pkg_newjar dist/org.abego.${PN}.core.jar
- dodoc CHANGES.txt doc/abegoTreeLayout.pdf
- use doc && java-pkg_dojavadoc dist/javadoc
- use source && java-pkg_dosrc src/main/java/*
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/treelayout/treelayout-1.0.3-r1.ebuild b/dev-java/treelayout/treelayout-1.0.3-r1.ebuild
new file mode 100644
index 000000000000..010b4519046e
--- /dev/null
+++ b/dev-java/treelayout/treelayout-1.0.3-r1.ebuild
@@ -0,0 +1,44 @@
+# 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/abego/treelayout/archive/v1.0.3.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild treelayout-1.0.3-r1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.abego.treelayout:org.abego.treelayout.core:1.0.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Efficient and customizable TreeLayout Algorithm in Java."
+HOMEPAGE="https://github.com/abego/treelayout"
+SRC_URI="https://github.com/abego/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+# LICENSE="!!!equivalentPortageLicenseName-not-found!!!"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( ../README.md )
+
+S="${WORKDIR}/${P}/org.abego.treelayout"
+
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_install() {
+ default # https://bugs.gentoo.org/789582
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/trident/Manifest b/dev-java/trident/Manifest
deleted file mode 100644
index 20ceaf2ad3e0..000000000000
--- a/dev-java/trident/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST trident-1.3.zip 112050 BLAKE2B 62f5ae9266714524c50e92c00d3d13810d47727596b0247786c056490b5366015fd35b2e859925734eae26c01b8070474d24e0770ac2eb644024f32754a6c5b7 SHA512 2ecccf80c654ad8cff6a2907d4f81409034bd5cc07542e87db7b53a646fb63ee38a472eb778f6f77f6cf1885f8dc5b85d50a6a033ab430e7e03a07000463f68b
diff --git a/dev-java/trident/files/1.3-build.xml.patch b/dev-java/trident/files/1.3-build.xml.patch
deleted file mode 100644
index c82c3a18df3f..000000000000
--- a/dev-java/trident/files/1.3-build.xml.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/build.xml b/build.xml
-index 808ea3c..36e5859 100644
---- a/build.xml
-+++ b/build.xml
-@@ -84,7 +84,7 @@
-
- <target name="compile.module.trident.production" description="compile module trident production classes">
- <mkdir dir="${trident.output.dir}" />
-- <javac source="${javac.source}" target="${javac.target}" encoding="${javac.encoding}" destdir="${trident.output.dir}" debug="${javac.debug}" nowarn="${javac.generate.no.warnings}" memoryMaximumSize="${javac.max.memory}" fork="true" executable="${module.jdk.home.trident}/bin/javac">
-+ <javac source="${javac.source}" target="${javac.target}" encoding="${javac.encoding}" destdir="${trident.output.dir}" debug="${javac.debug}" nowarn="${javac.generate.no.warnings}" memoryMaximumSize="${javac.max.memory}" fork="true">
- <compilerarg line="${javac.args.trident}" />
- <bootclasspath refid="trident.module.bootclasspath" />
- <classpath refid="trident.module.classpath" />
-@@ -102,7 +102,7 @@
-
- <target name="compile.module.trident.test" description="compile module trident test classes">
- <mkdir dir="${trident.output.dir}" />
-- <javac source="${javac.source}" target="${javac.target}" encoding="${javac.encoding}" destdir="${trident.output.dir}" debug="${javac.debug}" nowarn="${javac.generate.no.warnings}" memoryMaximumSize="${javac.max.memory}" fork="true" executable="${module.jdk.home.trident}/bin/javac">
-+ <javac source="${javac.source}" target="${javac.target}" encoding="${javac.encoding}" destdir="${trident.output.dir}" debug="${javac.debug}" nowarn="${javac.generate.no.warnings}" memoryMaximumSize="${javac.max.memory}" fork="true">
- <compilerarg line="${javac.args.trident}" />
- <bootclasspath refid="trident.module.bootclasspath" />
- <classpath refid="trident.module.classpath" />
-@@ -189,4 +189,4 @@
- <target name="clean" depends="clean.module.trident" description="cleanup all" />
-
- <target name="all" depends="timestamp, init, clean, compile.module.trident, jar, compile.module.trident.test, jar-tst" description="build all" />
--</project>
-\ No newline at end of file
-+</project>
diff --git a/dev-java/trident/metadata.xml b/dev-java/trident/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/trident/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/trident/trident-1.3-r1.ebuild b/dev-java/trident/trident-1.3-r1.ebuild
deleted file mode 100644
index 8a029be2e54a..000000000000
--- a/dev-java/trident/trident-1.3-r1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java animation library"
-HOMEPAGE="https://kenai.com/projects/trident/pages/Home"
-SRC_URI="https://kenai.com/projects/trident/downloads/download/version%20${PV}%20-%20stable/${PN}-all.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RESTRICT="test"
-
-CDEPEND="dev-java/swt:4.10"
-
-DEPEND=">=virtual/jdk-1.8:*
- ${CDEPEND}"
-RDEPEND=">=virtual/jre-1.8:*
- ${CDEPEND}"
-BDEPEND="app-arch/unzip"
-
-PATCHES=(
- "${FILESDIR}"/1.3-build.xml.patch
-)
-
-S="${WORKDIR}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="timestamp init clean compile.module.trident jar"
-EANT_GENTOO_CLASSPATH="swt-4.10"
-
-src_prepare() {
- default
- mkdir build/classes -p || die
- rm -r src/org/pushingpixels/trident/android/ || die
-}
-
-src_compile() {
- EANT_EXTRA_ARGS="-Djdk.home=$(java-config -O)"
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-pkg_dojar drop/${PN}.jar
-
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/trident/trident-1.3.ebuild b/dev-java/trident/trident-1.3.ebuild
deleted file mode 100644
index 4310cd5b1f56..000000000000
--- a/dev-java/trident/trident-1.3.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Java animation library"
-HOMEPAGE="https://kenai.com/projects/trident/pages/Home"
-SRC_URI="https://kenai.com/projects/trident/downloads/download/version%20${PV}%20-%20stable/${PN}-all.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RESTRICT="test"
-
-CDEPEND="dev-java/swt:3.7"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip
- ${CDEPEND}"
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-S="${WORKDIR}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="timestamp init clean compile.module.trident jar"
-EANT_GENTOO_CLASSPATH="swt-3.7"
-EANT_EXTRA_ARGS="-Djdk.home=${JAVA_HOME}"
-
-java_prepare() {
- mkdir build/classes -p || die
- rm -r src/org/pushingpixels/trident/android/ || die
- epatch "${FILESDIR}"/${PV}-*.patch
-}
-
-src_install() {
- java-pkg_dojar drop/${PN}.jar
-
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/trove/Manifest b/dev-java/trove/Manifest
deleted file mode 100644
index 134446b4e278..000000000000
--- a/dev-java/trove/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST trove-3.0.2.tar.gz 5880161 BLAKE2B a3dbb6a967ad9a519bd04abbbbf9e6af483360991956ff79532462a9ad471d409744017a3b24e4a09d2377243406e5d7cd542b452da8f59a1a97b454a2f60a8c SHA512 27460a66bad6f206eaeae02453c94333456db5a9c566246d495fb4184d42de6033b66d1bf74060f799cf4298d531afeb9597b92da4e2963b43dd4ef072ee750b
-DIST trove-3.0.3.jar 1793123 BLAKE2B efc6ff678d2f5cef8c68403faafce3dfb66ba7b3c1ffa42ad6727cd71c6dbd77fa06b4a6eb23c44a794982a8f2933afa10d4a5555a8749f49cf5e0ae227afb5a SHA512 03e0a376258730cb79fd0dd0a68bfacba6ca4baf3a352cce621d64e091ccd3f24c143b592f3bbd5bbac26529bc425b814dff45680ac46fd323eca95b36d2b640
diff --git a/dev-java/trove/metadata.xml b/dev-java/trove/metadata.xml
deleted file mode 100644
index 9aad7e757182..000000000000
--- a/dev-java/trove/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">trove4j</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/trove/trove-3.0.2-r3.ebuild b/dev-java/trove/trove-3.0.2-r3.ebuild
deleted file mode 100644
index ba6c309b4abe..000000000000
--- a/dev-java/trove/trove-3.0.2-r3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="GNU Trove: High performance collections for Java"
-SRC_URI="mirror://sourceforge/trove4j/${P}.tar.gz"
-HOMEPAGE="http://trove4j.sourceforge.net"
-KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-SLOT="0"
-LICENSE="LGPL-2.1"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PV}"
-
-RESTRICT="test"
-
-src_unpack() {
- unpack ${A}
- mv "${PV}/${P}-src.jar" . || die
- rm -rf "${PV}" || die
- mkdir "${P}" || die
- unzip -d "${P}" -qq "${P}-src.jar" || die
- export S="${WORKDIR}/${P}"
-}
-
-src_prepare() {
- default
- find . -type f ! -name "*.java" -exec rm -v {} \; || die
-}
diff --git a/dev-java/trove/trove-3.0.3.ebuild b/dev-java/trove/trove-3.0.3.ebuild
deleted file mode 100644
index 731fa2823334..000000000000
--- a/dev-java/trove/trove-3.0.3.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}4j"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="GNU Trove: High performance collections for Java"
-SRC_URI="https://repo1.maven.org/maven2/net/sf/${MY_PN}/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-HOMEPAGE="http://trove4j.sourceforge.net"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
-
-SLOT="0"
-LICENSE="LGPL-2.1"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6"
-
-src_prepare() {
- default
- rm -v gnu/trove/impl/package.html || die
-}
diff --git a/dev-java/txw2-runtime/Manifest b/dev-java/txw2-runtime/Manifest
deleted file mode 100644
index 65dfe2f7582d..000000000000
--- a/dev-java/txw2-runtime/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST txw2-20110809-sources.jar 96939 BLAKE2B 1f132eff17058b833d4b1e55930c2aa0bc5bc6a744dfa68daf83e07c9babc6a0298deff57c19e178fda6e618e0adbbd3dda98246af3cf55829348cbc239917d5 SHA512 1f0779b0c0f38a0a71f495a6167876fa7df1de7a38343717edcc50d54df45c98c47eeed30c692de68e9c9a7f217cde463288e73a6d274f732578550220c27fc8
diff --git a/dev-java/txw2-runtime/metadata.xml b/dev-java/txw2-runtime/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/txw2-runtime/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/txw2-runtime/txw2-runtime-20110809.ebuild b/dev-java/txw2-runtime/txw2-runtime-20110809.ebuild
deleted file mode 100644
index b3e9baf6d521..000000000000
--- a/dev-java/txw2-runtime/txw2-runtime-20110809.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN%%-*}"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="TXW is a library that allows you to write XML documents"
-HOMEPAGE="https://txw.dev.java.net/"
-SRC_URI="http://central.maven.org/maven2/com/sun/xml/${MY_PN}/${MY_PN}/${PV}/${MY_P}-sources.jar"
-
-LICENSE="CDDL"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip"
-
-JAVA_SRC_DIR="com"
diff --git a/dev-java/txw2/Manifest b/dev-java/txw2/Manifest
new file mode 100644
index 000000000000..b92f103a1e52
--- /dev/null
+++ b/dev-java/txw2/Manifest
@@ -0,0 +1 @@
+DIST jaxb-ri-2.3.8.tar.gz 1734411 BLAKE2B e60a7f78f2bfaf23cc0ce6727ee1b1611facdeebd5b456c207260447a508674dcbf934d2c6343cfbb58b93adf3352c8145caa2a8c77e264ae2403351527ff96d SHA512 73fda68e8d936b681d53ec72153cec0f7608517d0f037b4f140e4fd48e26f3e03a88f5b34bb635d0e6c7701121befd7d18a98aebd019a663e08ed9667a39c535
diff --git a/dev-java/txw2/metadata.xml b/dev-java/txw2/metadata.xml
new file mode 100644
index 000000000000..75321cfb5598
--- /dev/null
+++ b/dev-java/txw2/metadata.xml
@@ -0,0 +1,7 @@
+<?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/txw2/txw2-2.3.8-r1.ebuild b/dev-java/txw2/txw2-2.3.8-r1.ebuild
new file mode 100644
index 000000000000..eafda8755fa8
--- /dev/null
+++ b/dev-java/txw2/txw2-2.3.8-r1.ebuild
@@ -0,0 +1,23 @@
+# 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.glassfish.jaxb:txw2:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="TXW is a library that allows you to write XML documents"
+HOMEPAGE="https://eclipse-ee4j.github.io/jaxb-ri/"
+SRC_URI="https://github.com/eclipse-ee4j/jaxb-ri/archive/${PV}-RI.tar.gz -> jaxb-ri-${PV}.tar.gz"
+S="${WORKDIR}/jaxb-ri-${PV}-RI/jaxb-ri/txw/runtime"
+
+LICENSE="EPL-1.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src/main/java"
diff --git a/dev-java/typesafe-config/Manifest b/dev-java/typesafe-config/Manifest
index 28b28e579daa..0d612a396e83 100644
--- a/dev-java/typesafe-config/Manifest
+++ b/dev-java/typesafe-config/Manifest
@@ -1,2 +1 @@
-DIST typesafe-config-1.2.1.zip 287878 BLAKE2B bf4d1001bb84d0102b91b7ff383d9313302d95fd854928a40ecfbaae7a18309cf3f8509af0968fa21cedc485a1691c135395ccea5f9e6ba1c94856f2bb7ce81c SHA512 178f0df81f081b9355951debd3a5435c7d6aae25893f049917a25861015eba18a305d5370d914b89a7c46e55b5d9f3939ddd0656cfa9a4691bd16cf32c796502
-DIST typesafe-config-1.3.0.zip 363061 BLAKE2B 94c3f1f4eaaa831a15ef10619b672fb1882cfc472ab4d4ebb3494805f281152f7d01c56cee5f06a70319822d3e4254d540d4a5dde0f1c321b79fc4fbc18da6b8 SHA512 8b9821de442dc24b8b7be4c5ebc91d57214a32dceda8dc160cfaf801f70b34d2a2df6f8b2cbb744d18be3fbc887f1666f431b52882edcbde408d8adf3681fec4
+DIST typesafe-config-1.4.2.tar.gz 278098 BLAKE2B 65e3ffb4e9a4a7c33344c7f26ac28f6321c83621865db7812c09e7908e10f110bcfab4eca66577d6495f94da6a11b8877920e87afa6976c25852c5ec08aa1148 SHA512 85bc28987a6998a5ce6e0bb0996d853b534fc870e44abaeb3df31e53a2da39a350aecbd8f8849f4d4340a7e5da1c44882eb8c8ba58233c9af2a0e575f2c2c6db
diff --git a/dev-java/typesafe-config/metadata.xml b/dev-java/typesafe-config/metadata.xml
index c3532e38e4f6..2fb4b8cef368 100644
--- a/dev-java/typesafe-config/metadata.xml
+++ b/dev-java/typesafe-config/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/typesafe-config/typesafe-config-1.2.1.ebuild b/dev-java/typesafe-config/typesafe-config-1.2.1.ebuild
deleted file mode 100644
index e845f4083571..000000000000
--- a/dev-java/typesafe-config/typesafe-config-1.2.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A library of arguably useful Java utilities"
-HOMEPAGE="https://github.com/typesafehub/config"
-SRC_URI="https://github.com/typesafehub/config/archive/v${PV}.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE="doc source"
-
-RDEPEND=">=virtual/jre-1.6"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/zip"
diff --git a/dev-java/typesafe-config/typesafe-config-1.3.0-r2.ebuild b/dev-java/typesafe-config/typesafe-config-1.3.0-r2.ebuild
deleted file mode 100644
index a8d9faf9ac95..000000000000
--- a/dev-java/typesafe-config/typesafe-config-1.3.0-r2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A library of arguably useful Java utilities"
-HOMEPAGE="https://github.com/typesafehub/config"
-SRC_URI="https://github.com/typesafehub/config/archive/v${PV}.zip -> ${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE="doc source"
-
-RDEPEND=">=virtual/jre-1.8"
-
-DEPEND=">=virtual/jdk-1.8
- app-arch/zip"
diff --git a/dev-java/typesafe-config/typesafe-config-1.4.2.ebuild b/dev-java/typesafe-config/typesafe-config-1.4.2.ebuild
new file mode 100644
index 000000000000..a1bf736882f7
--- /dev/null
+++ b/dev-java/typesafe-config/typesafe-config-1.4.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.typesafe:config:1.4.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A library of arguably useful Java utilities"
+HOMEPAGE="https://lightbend.github.io/config/"
+SRC_URI="https://github.com/lightbend/config/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+IUSE="doc source"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+DOCS=( {CONTRIBUTING,HOCON,NEWS,README}.md )
+
+S="${WORKDIR}/config-${PV}"
+
+JAVA_SRC_DIR="config/src/main/java"
+# https://github.com/lightbend/config/blob/v1.4.2/build.sbt#L104
+JAVA_AUTOMATIC_MODULE_NAME="typesafe.config"
+
+# Need to anylyze what to do with this stuff
+JAVA_TEST_SRC_DIR="config/src/test/java"
+JAVA_TEST_RESOURCE_DIRS="config/src/test/resources"
diff --git a/dev-java/unbescape/Manifest b/dev-java/unbescape/Manifest
new file mode 100644
index 000000000000..a123408ae8c5
--- /dev/null
+++ b/dev-java/unbescape/Manifest
@@ -0,0 +1 @@
+DIST unbescape-1.1.6.RELEASE.tar.gz 423423 BLAKE2B ff4f0b3bd582e4f6f13ec950eafaf336c4303d7d8c94ffa76438a9041555d17210ddcf1a36ae534511d1769723ffd6749632c702ba57d57c32abf965502e372c SHA512 0feab8deadba3e785c62400494938a532879c99bb55c91112fcb14521b7298bff482ed1f06a301835d0ed86dccaa4519c16af67884f5c02dc5be46255769b113
diff --git a/dev-java/unbescape/metadata.xml b/dev-java/unbescape/metadata.xml
new file mode 100644
index 000000000000..519fa387d24f
--- /dev/null
+++ b/dev-java/unbescape/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">unbescape/unbescape</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/unbescape/unbescape-1.1.6.ebuild b/dev-java/unbescape/unbescape-1.1.6.ebuild
new file mode 100644
index 000000000000..80b7048bcbd3
--- /dev/null
+++ b/dev-java/unbescape/unbescape-1.1.6.ebuild
@@ -0,0 +1,36 @@
+# 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/unbescape/unbescape/archive/unbescape-1.1.6.RELEASE.tar.gz --slot 0 --keywords "~amd64" --ebuild unbescape-1.1.6.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="org.unbescape:unbescape:1.1.6.RELEASE"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Advanced yet easy-to-use escape/unescape library for Java"
+HOMEPAGE="https://www.unbescape.org"
+SRC_URI="https://github.com/unbescape/unbescape/archive/unbescape-${PV}.RELEASE.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/unbescape-unbescape-${PV}.RELEASE"
+
+JAVA_AUTOMATIC_MODULE_NAME="unbescape"
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ default
+ sed \
+ -e "s/\${pom.version}/${PV}.RELEASE/" \
+ -i src/main/resources/org/unbescape/unbescape.properties || die
+}
diff --git a/dev-java/univocity-parsers/Manifest b/dev-java/univocity-parsers/Manifest
new file mode 100644
index 000000000000..df94d9fa5eb2
--- /dev/null
+++ b/dev-java/univocity-parsers/Manifest
@@ -0,0 +1 @@
+DIST univocity-parsers-2.9.1.tar.gz 486417 BLAKE2B 4da3d31a1e57613731a0e112dfedcb084e57a2d0b6568e14f49986c447a080cb2cf8c530a6bb0ed30026a3afe5c5c648de2b4559eeca9432c5e13b5eb9b92b67 SHA512 f22062a277015c5f7fdc10b192ff07576baa6a8b67116bdc8e9aed37a70b6f3268a8faf0e422620be63deff13e3d74d4606f7c972cd9b4afda553f88feb75887
diff --git a/dev-java/univocity-parsers/files/univocity-parsers-2.9.1-explicitly-import-Record.patch b/dev-java/univocity-parsers/files/univocity-parsers-2.9.1-explicitly-import-Record.patch
new file mode 100644
index 000000000000..ca18412aeac4
--- /dev/null
+++ b/dev-java/univocity-parsers/files/univocity-parsers-2.9.1-explicitly-import-Record.patch
@@ -0,0 +1,159 @@
+From 6dffca791430639ca06dc6f2d9c309e085d8ba32 Mon Sep 17 00:00:00 2001
+From: Yuan Liao <liaoyuan@gmail.com>
+Date: Mon, 4 Apr 2022 09:36:20 -0700
+Subject: [PATCH] Fix "reference to Record is ambiguous" for JDK 16+
+
+Since Java 16, a new java.lang.Record class has been added to the Java
+SE API. Classes under the java.lang package, including this Record
+class, are automatically imported in any Java source file. Because this
+project also has a com.univocity.parsers.common.record.Record interface,
+when it is being compiled on JDK 16 and above, there would be an
+ambiguity as to which class/interface to use for the 'Record' type:
+
+src/main/java/com/univocity/parsers/common/Context.java:136: error: reference to Record is ambiguous
+ Record toRecord(String[] row);
+ ^
+ both interface com.univocity.parsers.common.record.Record in com.univocity.parsers.common.record and class java.lang.Record in java.lang match
+
+The resolution to this issue is simply to import the Record interface
+under this project explicitly in every source file using it.
+
+Bug: https://github.com/Leo3418/junit-5-ebuild-repo/issues/4
+Reported-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
+Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
+---
+ src/main/java/com/univocity/parsers/common/AbstractParser.java | 1 +
+ src/main/java/com/univocity/parsers/common/AbstractWriter.java | 1 +
+ src/main/java/com/univocity/parsers/common/Context.java | 1 +
+ src/main/java/com/univocity/parsers/common/ContextWrapper.java | 1 +
+ src/main/java/com/univocity/parsers/common/DefaultContext.java | 1 +
+ .../java/com/univocity/parsers/common/NoopParsingContext.java | 1 +
+ .../java/com/univocity/parsers/common/ParsingContextWrapper.java | 1 +
+ .../com/univocity/parsers/common/iterators/RecordIterator.java | 1 +
+ src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java | 1 +
+ src/main/java/com/univocity/parsers/fixed/Lookup.java | 1 +
+ 10 files changed, 10 insertions(+)
+
+diff --git a/src/main/java/com/univocity/parsers/common/AbstractParser.java b/src/main/java/com/univocity/parsers/common/AbstractParser.java
+index 42191ad..6dd4dac 100644
+--- a/src/main/java/com/univocity/parsers/common/AbstractParser.java
++++ b/src/main/java/com/univocity/parsers/common/AbstractParser.java
+@@ -20,6 +20,7 @@ import com.univocity.parsers.common.input.*;
+ import com.univocity.parsers.common.iterators.*;
+ import com.univocity.parsers.common.processor.*;
+ import com.univocity.parsers.common.processor.core.*;
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ import java.io.*;
+diff --git a/src/main/java/com/univocity/parsers/common/AbstractWriter.java b/src/main/java/com/univocity/parsers/common/AbstractWriter.java
+index 6a19562..d7a5207 100644
+--- a/src/main/java/com/univocity/parsers/common/AbstractWriter.java
++++ b/src/main/java/com/univocity/parsers/common/AbstractWriter.java
+@@ -18,6 +18,7 @@ package com.univocity.parsers.common;
+ import com.univocity.parsers.common.fields.*;
+ import com.univocity.parsers.common.input.*;
+ import com.univocity.parsers.common.processor.*;
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+ import com.univocity.parsers.fixed.*;
+
+diff --git a/src/main/java/com/univocity/parsers/common/Context.java b/src/main/java/com/univocity/parsers/common/Context.java
+index d0adf5f..f3b28c9 100644
+--- a/src/main/java/com/univocity/parsers/common/Context.java
++++ b/src/main/java/com/univocity/parsers/common/Context.java
+@@ -15,6 +15,7 @@
+ ******************************************************************************/
+ package com.univocity.parsers.common;
+
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ /**
+diff --git a/src/main/java/com/univocity/parsers/common/ContextWrapper.java b/src/main/java/com/univocity/parsers/common/ContextWrapper.java
+index bee87e8..c338895 100644
+--- a/src/main/java/com/univocity/parsers/common/ContextWrapper.java
++++ b/src/main/java/com/univocity/parsers/common/ContextWrapper.java
+@@ -15,6 +15,7 @@
+ ******************************************************************************/
+ package com.univocity.parsers.common;
+
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ /**
+diff --git a/src/main/java/com/univocity/parsers/common/DefaultContext.java b/src/main/java/com/univocity/parsers/common/DefaultContext.java
+index 11ea961..7346e64 100644
+--- a/src/main/java/com/univocity/parsers/common/DefaultContext.java
++++ b/src/main/java/com/univocity/parsers/common/DefaultContext.java
+@@ -15,6 +15,7 @@
+ */
+ package com.univocity.parsers.common;
+
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ /**
+diff --git a/src/main/java/com/univocity/parsers/common/NoopParsingContext.java b/src/main/java/com/univocity/parsers/common/NoopParsingContext.java
+index fe1f07d..79d8787 100644
+--- a/src/main/java/com/univocity/parsers/common/NoopParsingContext.java
++++ b/src/main/java/com/univocity/parsers/common/NoopParsingContext.java
+@@ -15,6 +15,7 @@
+ ******************************************************************************/
+ package com.univocity.parsers.common;
+
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ import java.util.*;
+diff --git a/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java b/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java
+index 20a59d8..e8b4f9d 100644
+--- a/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java
++++ b/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java
+@@ -15,6 +15,7 @@
+ */
+ package com.univocity.parsers.common;
+
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ import java.util.*;
+diff --git a/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java b/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java
+index 01b22cb..1620205 100644
+--- a/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java
++++ b/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java
+@@ -16,6 +16,7 @@
+ package com.univocity.parsers.common.iterators;
+
+ import com.univocity.parsers.common.*;
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ import java.io.*;
+diff --git a/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java b/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java
+index b38bc99..25285eb 100644
+--- a/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java
++++ b/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java
+@@ -17,6 +17,7 @@ package com.univocity.parsers.fixed;
+
+ import com.univocity.parsers.common.*;
+ import com.univocity.parsers.common.input.*;
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ /**
+diff --git a/src/main/java/com/univocity/parsers/fixed/Lookup.java b/src/main/java/com/univocity/parsers/fixed/Lookup.java
+index 1aeff0d..bcf0f98 100644
+--- a/src/main/java/com/univocity/parsers/fixed/Lookup.java
++++ b/src/main/java/com/univocity/parsers/fixed/Lookup.java
+@@ -16,6 +16,7 @@
+ package com.univocity.parsers.fixed;
+
+ import com.univocity.parsers.common.*;
++import com.univocity.parsers.common.record.Record;
+ import com.univocity.parsers.common.record.*;
+
+ import java.util.*;
+--
+2.35.1
+
diff --git a/dev-java/univocity-parsers/metadata.xml b/dev-java/univocity-parsers/metadata.xml
new file mode 100644
index 000000000000..04372c0a4571
--- /dev/null
+++ b/dev-java/univocity-parsers/metadata.xml
@@ -0,0 +1,13 @@
+<?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">uniVocity/univocity-parsers</remote-id>
+ </upstream>
+ <longdescription>
+ univocity-parsers is a collection of extremely fast and reliable parsers for Java. It provides a consistent interface for handling different file formats, and a solid framework for the development of new parsers.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/univocity-parsers/univocity-parsers-2.9.1.ebuild b/dev-java/univocity-parsers/univocity-parsers-2.9.1.ebuild
new file mode 100644
index 000000000000..58e46ec195a5
--- /dev/null
+++ b/dev-java/univocity-parsers/univocity-parsers-2.9.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Some test dependencies have not been packaged yet
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="com.univocity:univocity-parsers:2.9.1"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="A collection of extremely fast and reliable parsers for Java"
+HOMEPAGE="https://www.univocity.com/"
+SRC_URI="https://github.com/uniVocity/univocity-parsers/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+"
+
+# Restore value of S overridden by java-pkg-simple.eclass to default
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ # https://github.com/uniVocity/univocity-parsers/pull/502
+ eapply "${FILESDIR}/${P}-explicitly-import-Record.patch"
+ java-pkg-2_src_prepare
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ einstalldocs # https://bugs.gentoo.org/789582
+}
diff --git a/dev-java/unkrig-nullanalysis/Manifest b/dev-java/unkrig-nullanalysis/Manifest
deleted file mode 100644
index bbc4b6c1ceeb..000000000000
--- a/dev-java/unkrig-nullanalysis/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST unkrig-nullanalysis-0_pre1644.tar.bz2 2322 BLAKE2B 49873e7c5eaa6b367350f3569d4d36945222b8048ed67fa7c77337133d67b68dda5344057fe80caaf34e54378da579e0525179e72ac8ef88865571c0381a2d14 SHA512 6e4f069023043ac24f7e68f748ad4c6cfaf16312310abfd9c6d395b34491b68a7c3cca6b3a36b18c4dd656cc15f17755dbd4ce3e6379da06f82a2691453c3c03
diff --git a/dev-java/unkrig-nullanalysis/metadata.xml b/dev-java/unkrig-nullanalysis/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/unkrig-nullanalysis/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/unkrig-nullanalysis/unkrig-nullanalysis-0_pre1644.ebuild b/dev-java/unkrig-nullanalysis/unkrig-nullanalysis-0_pre1644.ebuild
deleted file mode 100644
index a47290e3483e..000000000000
--- a/dev-java/unkrig-nullanalysis/unkrig-nullanalysis-0_pre1644.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Some classes to test for various null conditions"
-HOMEPAGE="http://commons.unkrig.de"
-SRC_URI="https://dev.gentoo.org/~ercpe/distfiles/${CATEGORY}/${PN}/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-JAVA_SRC_DIR="src"
diff --git a/dev-java/upnplib/Manifest b/dev-java/upnplib/Manifest
deleted file mode 100644
index 72b6f6aeff61..000000000000
--- a/dev-java/upnplib/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST upnplib-1.0.7.tar.gz 349943 BLAKE2B 509474e1478a791ef01d70380976e17628a8c68115b068602875091d3b10c1c2ecfcd4be6b7917d9605da8c4c7ef6da8437c3dd905811513c42f132789071a31 SHA512 b44d1f539ebf2ff3860f3d3fd664343148c81437a6e3fb69f2941c6dafcdf9a48a1f682d8ed250848edc656dc38858cf3a630dc026e9e3be340ef5b39fd7b8cd
diff --git a/dev-java/upnplib/metadata.xml b/dev-java/upnplib/metadata.xml
deleted file mode 100644
index 1dd6ecadb95d..000000000000
--- a/dev-java/upnplib/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">RPTools/upnplib</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/upnplib/upnplib-1.0.7.ebuild b/dev-java/upnplib/upnplib-1.0.7.ebuild
deleted file mode 100644
index b9406fece2ba..000000000000
--- a/dev-java/upnplib/upnplib-1.0.7.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-COMMIT="33d17845e34c7c8b897224d0d1c243951398f853"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="UPnP port mapping library for Java based on sbbi-upnplib"
-HOMEPAGE="https://github.com/RPTools/upnplib"
-SRC_URI="https://github.com/RPTools/upnplib/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-LICENSE="LGPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-CDEPEND="dev-java/commons-jxpath:0
- dev-java/log4j:0"
-
-RDEPEND=">=virtual/jre-1.7
- ${CDEPEND}"
-
-DEPEND=">=virtual/jdk-1.7
- ${CDEPEND}"
-
-JAVA_GENTOO_CLASSPATH="commons-jxpath,log4j"
-JAVA_SRC_DIR="src"
-
-S="${WORKDIR}/${PN}-${COMMIT}"
-
-java_prepare() {
- # mx4j has been last-rited.
- rm -rv src/net/sbbi/upnp/jmx/ || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- use doc && dodoc README.md docs/html/*.pdf
-}
diff --git a/dev-java/validation-api/Manifest b/dev-java/validation-api/Manifest
deleted file mode 100644
index 30458ba26cd4..000000000000
--- a/dev-java/validation-api/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST validation-api-1.0.0.GA-sources.jar 65220 BLAKE2B cee01d9979671bc2d64a22f21d608d50ddf6eca730a7c0d1fee3c4c05fab0af200153a48491b8d54a5a29b84a220f841c85264446117e25e89bd306bdd764843 SHA512 88bcde2fc9446b09cb24e73137cd16ed54953a6d93f33e8500ca196e4cec07ac03ebc446f4629291e6437d2f3757802236e56974cd3023bb25886e69e2330fc0
-DIST validation-api-1.1.0.jar 94671 BLAKE2B c28f6b2ca52094f33e82d2e7c71e52ef57c503c5d50f34646ee28a9f61ea7e4da7f494f41b5f8a34ce6108ca1b75fa2d0f08eb9aab15cf033e825afc2eefdf19 SHA512 aa15184ff004357f1cdee693008587a3aa180a8f24392847258672c4a2e5a537cf189049ef95febb1a87968a42223f7736e22e00fe9307678c117f7ab6b944a8
diff --git a/dev-java/validation-api/metadata.xml b/dev-java/validation-api/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/validation-api/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/validation-api/validation-api-1.0.0-r1.ebuild b/dev-java/validation-api/validation-api-1.0.0-r1.ebuild
deleted file mode 100644
index d7887694dca4..000000000000
--- a/dev-java/validation-api/validation-api-1.0.0-r1.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
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Bean Validation (JSR-303) API"
-HOMEPAGE="http://fisheye.jboss.org/browse/Hibernate/beanvalidation/api/tags/v1_0_0_GA"
-SRC_URI="https://repository.jboss.org/nexus/service/local/repo_groups/public/content/javax/validation/${PN}/${PV}.GA/${P}.GA-sources.jar"
-
-LICENSE="Apache-2.0"
-SLOT="1.0"
-KEYWORDS="~amd64 ~x86"
-
-DEPEND=">=virtual/jdk-1.8:*"
-RDEPEND=">=virtual/jre-1.8:*"
-BDEPEND="app-arch/unzip"
diff --git a/dev-java/validation-api/validation-api-1.1.0-r1.ebuild b/dev-java/validation-api/validation-api-1.1.0-r1.ebuild
deleted file mode 100644
index 25f7a00c3bf0..000000000000
--- a/dev-java/validation-api/validation-api-1.1.0-r1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2020 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
-
-DESCRIPTION="Bean Validation (JSR-303) API"
-HOMEPAGE="http://fisheye.jboss.org/browse/Hibernate/beanvalidation/api/tags/v1_0_0_GA"
-SRC_URI="https://repo1.maven.org/maven2/javax/validation/${PN}/${PV}.Final/${P}.Final-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="1.0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-BDEPEND="app-arch/unzip"
-RDEPEND=">=virtual/jre-1.8"
-DEPEND=">=virtual/jdk-1.8"
diff --git a/dev-java/vecmath/Manifest b/dev-java/vecmath/Manifest
deleted file mode 100644
index 4ae59e82ea78..000000000000
--- a/dev-java/vecmath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST vecmath-1.6.0_pre12.tar.gz 121968 BLAKE2B d93e159a5d235ebf3724880ba19195466955844272e6ebcd4f59061967305e2bc63bef21d651aab3f8998358816602ea529b7d25f71a9b030e74594ee3a983b5 SHA512 b885a83b91af7c3560e7f8e94d7a8da3b00ad7db4a0f2edef19c1525fe7ae48e897d865ef2bb64800bde197bc9c969517c9c526d6ed27d25cfe87815a64bc5d7
diff --git a/dev-java/vecmath/metadata.xml b/dev-java/vecmath/metadata.xml
deleted file mode 100644
index 278351f839e2..000000000000
--- a/dev-java/vecmath/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="github">hharrison/vecmath</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/vecmath/vecmath-1.6.0_pre12.ebuild b/dev-java/vecmath/vecmath-1.6.0_pre12.ebuild
deleted file mode 100644
index a6cfc8778ec7..000000000000
--- a/dev-java/vecmath/vecmath-1.6.0_pre12.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Sun J3D: 3D vector math package"
-HOMEPAGE="https://vecmath.dev.java.net/"
-
-MY_PV=$(replace_version_separator 3 '-')
-SRC_URI="https://github.com/hharrison/vecmath/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6
- dev-java/ant-core"
-RDEPEND=">=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-EANT_DOC_TARGET="docs"
-EANT_BUILD_TARGET="jar"
-
-src_install() {
- java-pkg_dojar "build/jars/${PN}.jar"
-
- use source && java-pkg_dosrc "${S}/src/*"
-
- dodoc *.txt docs/*.txt
- if use doc; then
- java-pkg_dojavadoc "build/javadoc/"
- dohtml -r *.html
- fi
-}
diff --git a/dev-java/velocity/Manifest b/dev-java/velocity/Manifest
index 7b243dc27a93..bafc24692cd9 100644
--- a/dev-java/velocity/Manifest
+++ b/dev-java/velocity/Manifest
@@ -1 +1,2 @@
DIST velocity-2.3.tar.gz 443754 BLAKE2B 16b7aaa87eb6be899f40d09ee8aa50b2ac24dd59c33f29b944d46ea84a77de07cd69f344632b4b829b92a92fe6ccd75cf79e021787b2ca59a79040aa08a53eed SHA512 987f2991a96fa8fae43ff2f72d6a57b25b1cb7d98b7def7a1a6e9a308c8b5b86e394444c47ee0eca8b70d41b341759c7309404dc4b952dbc65fc3a5b92d46cdb
+DIST velocity-2.3_p20240314.tar.gz 440967 BLAKE2B c5fcea7af49d6c46d5c0943efe82f3c04d921afc2c53201b97842ae71714e7035d075c147b3bea71e959db12dd970b7879ade73bbc23bab09a1fd262e21f2fc6 SHA512 9055e780d2a3c798bfe30e5c7859a7311c4984b551d7b2ffa68c57c076549326d0ddae31eabff8009ea021c749331d34c71eee8cab55599dea5f3c8dba841a02
diff --git a/dev-java/velocity/files/velocity-2.3-skipSecurityManager.patch b/dev-java/velocity/files/velocity-2.3-skipSecurityManager.patch
new file mode 100644
index 000000000000..3375bce00eac
--- /dev/null
+++ b/dev-java/velocity/files/velocity-2.3-skipSecurityManager.patch
@@ -0,0 +1,11 @@
+bug #923612
+--- a/src/test/java/org/apache/velocity/test/issues/VelTools66TestCase.java
++++ b/src/test/java/org/apache/velocity/test/issues/VelTools66TestCase.java
+@@ -58,7 +58,6 @@ public class VelTools66TestCase
+ Velocity.RUNTIME_LOG_INSTANCE, new TestLogger());
+
+ Velocity.init();
+- System.setSecurityManager(new TestSecurityManager());
+
+ }
+
diff --git a/dev-java/velocity/metadata.xml b/dev-java/velocity/metadata.xml
index 2444066aa02b..8e49c08df5a1 100644
--- a/dev-java/velocity/metadata.xml
+++ b/dev-java/velocity/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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/velocity-engine</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/velocity/velocity-2.3.ebuild b/dev-java/velocity/velocity-2.3.ebuild
index d26c79aa3f66..fd0fb1074e25 100644
--- a/dev-java/velocity/velocity-2.3.ebuild
+++ b/dev-java/velocity/velocity-2.3.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
# Skeleton command:
@@ -12,13 +12,13 @@ JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
-DESCRIPTION="Apache Velocity is a general purpose template engine."
+DESCRIPTION="Apache Velocity is a general purpose template engine"
HOMEPAGE="https://velocity.apache.org"
SRC_URI="https://github.com/apache/${PN}-engine/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
# Common dependencies
# POM: pom.xml
@@ -57,6 +57,7 @@ BDEPEND="
"
S="${WORKDIR}/${PN}-engine-${PV}/${PN}-engine-core"
+PATCHES=( "${FILESDIR}/velocity-2.3-skipSecurityManager.patch" )
JAVA_GENTOO_CLASSPATH="commons-io-1,commons-lang-3.6,slf4j-api"
JAVA_SRC_DIR="src/main/java"
@@ -89,7 +90,8 @@ JAVA_TEST_EXCLUDES=(
)
src_prepare() {
- default
+ default #780585
+ java-pkg-2_src_prepare
cp -v "${JAVA_SRC_DIR}-templates/org/apache/velocity/runtime/VelocityEngineVersion.java" \
"${JAVA_SRC_DIR}/org/apache/velocity/runtime/VelocityEngineVersion.java" || die
diff --git a/dev-java/velocity/velocity-2.3_p20240314.ebuild b/dev-java/velocity/velocity-2.3_p20240314.ebuild
new file mode 100644
index 000000000000..9587957bd84b
--- /dev/null
+++ b/dev-java/velocity/velocity-2.3_p20240314.ebuild
@@ -0,0 +1,108 @@
+# 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.velocity:velocity-engine-core:2.3"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Apache Velocity is a general purpose template engine"
+HOMEPAGE="https://velocity.apache.org"
+MY_COMMIT="86cfcf41105f8a25db11ca6483e33c20fc0804d9"
+SRC_URI="https://github.com/apache/${PN}-engine/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-engine-${MY_COMMIT}/${PN}-engine-core"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64"
+
+CP_DEPEND="
+ >=dev-java/commons-io-2.8.0:1
+ >=dev-java/commons-lang-3.11:3.6
+ >=dev-java/slf4j-api-1.7.30:0
+"
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-db/hsqldb:0
+ >=dev-java/slf4j-simple-1.7.30:0
+ )
+"
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+JAVACC_SLOT="7.0.13"
+BDEPEND="dev-java/javacc:${JAVACC_SLOT}"
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_EXTRA_ARGS="-Dtest.compare.dir=target/test-classes -Dtest.result.dir=results"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,hsqldb,slf4j-simple"
+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}/" \
+ src/main/java-templates/org/apache/velocity/runtime/VelocityEngineVersion.java > \
+ src/main/java/org/apache/velocity/runtime/VelocityEngineVersion.java || die
+
+ sed -i \
+ -e 's/\${parser.basename}/Standard/g' \
+ -e 's/\${parser.package}/org.apache.velocity.runtime.parser/g' \
+ -e 's/\${parser.char.asterisk}/\*/g' \
+ -e 's/\${parser.char.at}/\@/g' \
+ -e 's/\${parser.char.dollar}/\$/g' \
+ -e 's/\${parser.char.hash}/\#/g' \
+ "${S}/src/main/parser/Parser.jjt" || die
+
+ # File "StandardParserTreeConstants.java" does not exist. Will create one.
+ # File "StandardParserVisitor.java" does not exist. Will create one.
+ # File "JJTStandardParserState.java" does not exist. Will create one.
+ "jjtree-${JAVACC_SLOT}" -GRAMMAR_ENCODING=UTF-8 \
+ -JDK_VERSION=1.8 \
+ -BUILD_NODE_FILES=false \
+ -MULTI=true \
+ -NODE_PACKAGE=org.apache.velocity.runtime.parser.node \
+ -NODE_USES_PARSER=true \
+ -STATIC=false \
+ -OUTPUT_DIRECTORY="${JAVA_SRC_DIR}/org/apache/velocity/runtime/parser/node" \
+ "${S}/src/main/parser/Parser.jjt" \
+ || die "Code generation via jjtree failed"
+
+ "javacc-${JAVACC_SLOT}" -GRAMMAR_ENCODING=UTF-8 \
+ -JDK_VERSION=1.8 \
+ -STATIC=false \
+ -DEBUG_PARSER=false \
+ -DEBUG_LOOKAHEAD=false \
+ -DEBUG_TOKEN_MANAGER=false \
+ -BUILD_PARSER=true \
+ -TOKEN_MANAGER_USES_PARSER=true \
+ -OUTPUT_DIRECTORY="${JAVA_SRC_DIR}" \
+ "${JAVA_SRC_DIR}/org/apache/velocity/runtime/parser/node/Parser.jj" \
+ || die "Parser.java code generation via javacc failed"
+
+ # Avoid "error: duplicate class: org.apache.velocity.runtime.parser...."
+ rm -v "${JAVA_SRC_DIR}/CharStream.java" || die "cannot remove 'CharStream.java'"
+ rm -v "${JAVA_SRC_DIR}/ParseException.java" || die "cannot remove 'ParseException.java'"
+}
+
+src_test() {
+ pushd src/test/java || die
+ # DataSourceResourceLoaderTestCase.java requires configured jdbc
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -name "*TestCase.java" \
+ ! -name "BaseTestCase.java" \
+ ! -name "DataSourceResourceLoaderTestCase.java" \
+ )
+ 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/vldocking/Manifest b/dev-java/vldocking/Manifest
deleted file mode 100644
index 08ae384e2342..000000000000
--- a/dev-java/vldocking/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST vldocking-3.0.5.zip 1734159 BLAKE2B 98ff048558b2c520192b83e56c4900072761c8e0f80d594b2166b10249cf6ba572102070914ca417879609f9b9ebb75a5fbd6d460859f131c2f4a403058d8f5d SHA512 a9943a767baa68b8cd8a75fad1e6e05e6f0083551c32c9af2b20258e2fe1fcc181a7700cc668b862e0cc2b04392a987ecfb92bf5203f273c72a8e2a2f4a72cd8
diff --git a/dev-java/vldocking/metadata.xml b/dev-java/vldocking/metadata.xml
deleted file mode 100644
index 2324a7c65c62..000000000000
--- a/dev-java/vldocking/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <upstream>
- <remote-id type="github">cmadsen/vldocking</remote-id>
- </upstream>
- <maintainer type="person">
- <email>monsieurp@gentoo.org</email>
- <name>Patrice Clement</name>
- </maintainer>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-java/vldocking/vldocking-3.0.5.ebuild b/dev-java/vldocking/vldocking-3.0.5.ebuild
deleted file mode 100644
index 75e885bd5de0..000000000000
--- a/dev-java/vldocking/vldocking-3.0.5.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Docking solution for Java Swing"
-HOMEPAGE="https://github.com/cmadsen/vldocking"
-SRC_URI="https://github.com/cmadsen/${PN}/archive/${P}.zip"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-CDEPEND="
- dev-java/slf4j-log4j12:0
- dev-java/slf4j-api:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="
- slf4j-log4j12
- slf4j-api
-"
-
-java_prepare() {
- java-pkg_clean
-}
diff --git a/dev-java/waffle-jna/Manifest b/dev-java/waffle-jna/Manifest
new file mode 100644
index 000000000000..de2a4d7a3e97
--- /dev/null
+++ b/dev-java/waffle-jna/Manifest
@@ -0,0 +1 @@
+DIST waffle-parent-3.3.0.tar.gz 2147273 BLAKE2B a4f9c06898c50616013870bb383632d0b97e4f527da9b7b1acad9945f275181844d94b6533891a371f588115f60efdf791d5f64e03f938950a8dd48415f1f56f SHA512 e09154761dc5902e97b9dc57c9523bffe401fce33797346bbd5595390db3adaf5eed27d2ac7f98b7504aeb471c5f1a0c0a5104bd819a937e15c67123ecdd5891
diff --git a/dev-java/waffle-jna/metadata.xml b/dev-java/waffle-jna/metadata.xml
new file mode 100644
index 000000000000..a9d1f1367512
--- /dev/null
+++ b/dev-java/waffle-jna/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">Waffle/waffle</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/waffle-jna/waffle-jna-3.3.0.ebuild b/dev-java/waffle-jna/waffle-jna-3.3.0.ebuild
new file mode 100644
index 000000000000..7d9114ca8512
--- /dev/null
+++ b/dev-java/waffle-jna/waffle-jna-3.3.0.ebuild
@@ -0,0 +1,47 @@
+# 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="com.github.waffle:waffle-jna:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Enable drop-in Windows Single Sign On for popular Java web servers"
+HOMEPAGE="https://waffle.github.io/waffle/"
+SRC_URI="https://github.com/Waffle/waffle/archive/waffle-parent-${PV}.tar.gz"
+S="${WORKDIR}/waffle-waffle-parent-${PV}/Source/JNA/waffle-jna"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86"
+RESTRICT="test" #839681
+
+DEPEND="
+ dev-java/caffeine:0
+ dev-java/checker-framework-qual:0
+ dev-java/jakarta-servlet-api:4
+ dev-java/jna:4
+ dev-java/slf4j-api:0
+ >=virtual/jdk-1.8:*
+ test? ( dev-java/junit:5 )
+"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_AUTOMATIC_MODULE_NAME="waffle.jna"
+JAVA_CLASSPATH_EXTRA="
+ caffeine
+ checker-framework-qual
+ jakarta-servlet-api-4
+ jna-4
+ slf4j-api
+"
+JAVA_RESOURCE_DIR="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="
+ assertj-core-3
+ junit-5
+"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/werken-xpath/Manifest b/dev-java/werken-xpath/Manifest
deleted file mode 100644
index 523701f12852..000000000000
--- a/dev-java/werken-xpath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST werken.xpath-0.9.4-beta-src.tar.gz 1652916 BLAKE2B 4dde7f4be8c4cf401d1edb69b96d6ffffd4c3d53c75194db04a7351ee0ffd90d94bc59855d14dd45162cd2f4b29b02b373ecb4f7a00bf267ed58e2c1e7aece33 SHA512 c58878ee0b6e88651335e2be60d0afcd65fc164864e826bb209ec660e97315233b25341733a4118ed3ee003f61998d84e480706bda5be4630c599efb616b845d
diff --git a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-gentoo.patch b/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-gentoo.patch
deleted file mode 100644
index 1cd61fc818ad..000000000000
--- a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-gentoo.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-diff -ru werken.xpath/build.xml werken.xpath-patched/build.xml
---- werken.xpath/build.xml 2000-11-19 21:45:16.000000000 -0500
-+++ werken.xpath-patched/build.xml 2005-07-14 21:14:01.000000000 -0400
-@@ -49,6 +49,9 @@
- <!-- JDK1.1 collections -->
- <property name="coll.import" value="com.sun.java.util.collections"/>
- <available classname="${coll.import}.Collection" property="coll.present"/>
-+ <path id="lib.classpath">
-+ <fileset dir="${lib.dir}" includes="**/*.jar"/>
-+ </path>
- </target>
-
- <!-- =================================================================== -->
-@@ -174,7 +177,8 @@
- <javac srcdir="${build.src}"
- destdir="${build.dest}"
- debug="${debug}"
-- optimize="${optimize}">
-+ optimize="${optimize}"
-+ classpathref="lib.classpath">
- </javac>
- </target>
-
-diff -ru werken.xpath/src/com/werken/xpath/Test.java werken.xpath-patched/src/com/werken/xpath/Test.java
---- werken.xpath/src/com/werken/xpath/Test.java 2000-10-23 23:45:32.000000000 -0400
-+++ werken.xpath-patched/src/com/werken/xpath/Test.java 2005-07-14 21:22:42.000000000 -0400
-@@ -57,7 +57,7 @@
- System.err.println("Results :: " + results);
-
- }
-- catch (JDOMException jde)
-+ catch (Exception jde)
- {
- jde.printStackTrace(System.err);
- }
diff --git a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jdom-1.0.patch b/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jdom-1.0.patch
deleted file mode 100644
index 099f7110a5da..000000000000
--- a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jdom-1.0.patch
+++ /dev/null
@@ -1,86 +0,0 @@
---- werken.xpath/src/com/werken/xpath/ElementNamespaceContext.java
-+++ werken.xpath/src/com/werken/xpath/ElementNamespaceContext.java
-@@ -62,12 +62,12 @@
-
- lineage.push(_element);
-
-- Element elem = _element.getParent();
-+ Element elem = _element.getParentElement();
-
- while (elem != null)
- {
- lineage.push(elem);
-- elem = elem.getParent();
-+ elem = elem.getParentElement();
- }
-
- List nsList = null;
---- werken.xpath/src/com/werken/xpath/impl/ParentStep.java
-+++ werken.xpath/src/com/werken/xpath/impl/ParentStep.java
-@@ -28,7 +28,7 @@
- {
- if ( node instanceof Element )
- {
-- return ((Element)node).getParent();
-+ return ((Element)node).getParentElement();
- }
-
- return null;
-@@ -50,7 +50,7 @@
-
- if ( each instanceof Element )
- {
-- parent = ((Element)each).getParent();
-+ parent = ((Element)each).getParentElement();
-
- if (parent != null)
- {
---- werken.xpath/src/com/werken/xpath/util/Partition.java
-+++ werken.xpath/src/com/werken/xpath/util/Partition.java
-@@ -67,7 +67,7 @@
-
- public static List followingSiblings(Element node)
- {
-- Element parent = node.getParent();
-+ Element parent = node.getParentElement();
-
- if (parent == null)
- {
-@@ -95,7 +95,7 @@
-
- public static List preceedingSiblings(Element node)
- {
-- Element parent = node.getParent();
-+ Element parent = node.getParentElement();
-
- if (parent == null)
- {
-@@ -137,7 +137,7 @@
- results.addAll( Partition.descendants( each ) );
- }
-
-- Element parent = node.getParent();
-+ Element parent = node.getParentElement();
-
- if (parent != null)
- {
-@@ -170,7 +170,7 @@
- results.addAll( Partition.descendants( each ) );
- }
-
-- Element parent = node.getParent();
-+ Element parent = node.getParentElement();
-
- if (parent != null)
- {
---- werken.xpath/test/src/com/werken/xpath/test/Driver.java
-+++ werken.xpath/test/src/com/werken/xpath/test/Driver.java
-@@ -47,7 +47,7 @@
-
- System.out.println("Using test-cases in [" + args[0] + "]");
-
-- File dataDir = driverXML.getParentFile();
-+ File dataDir = driverXML.getParentElementFile();
-
- Driver driver = Driver(dataDir,
- driverXML);
diff --git a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-compile.patch b/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-compile.patch
deleted file mode 100644
index 516158f63083..000000000000
--- a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-compile.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Nru werken.xpath.orig/src/com/werken/xpath/impl/Op.java werken.xpath/src/com/werken/xpath/impl/Op.java
---- werken.xpath.orig/src/com/werken/xpath/impl/Op.java 2000-08-27 03:16:03.000000000 +0300
-+++ werken.xpath/src/com/werken/xpath/impl/Op.java 2003-03-02 01:44:52.000000000 +0200
-@@ -19,7 +19,7 @@
- public final static Op GT = new Op(">");
- public final static Op LT_EQUAL = new Op("<=");
- public final static Op GT_EQUAL = new Op(">=");
-- public final static Op MOD = new Op("%");;
-+ public final static Op MOD = new Op("%");
- public final static Op DIV = new Op("/");
- public final static Op PLUS = new Op("+");
- public final static Op MINUS = new Op("-");
-diff -Nru werken.xpath.orig/src/com/werken/xpath/impl/UnAbbrStep.java werken.xpath/src/com/werken/xpath/impl/UnAbbrStep.java
---- werken.xpath.orig/src/com/werken/xpath/impl/UnAbbrStep.java 2000-10-31 22:20:56.000000000 +0200
-+++ werken.xpath/src/com/werken/xpath/impl/UnAbbrStep.java 2003-03-02 01:45:04.000000000 +0200
-@@ -175,7 +175,7 @@
- }
- }
-
-- return aggregateResults;;
-+ return aggregateResults;
- }
-
- private List applyPredicates(List nodeSet,
diff --git a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-jdom.patch b/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-jdom.patch
deleted file mode 100644
index ba2b268f1c89..000000000000
--- a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-jdom.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-diff -Nru werken.xpath.orig/src/com/werken/xpath/function/StringFunction.java werken.xpath/src/com/werken/xpath/function/StringFunction.java
---- werken.xpath.orig/src/com/werken/xpath/function/StringFunction.java 2000-10-24 06:30:00.000000000 +0300
-+++ werken.xpath/src/com/werken/xpath/function/StringFunction.java 2003-03-02 01:56:03.000000000 +0200
-@@ -71,7 +71,7 @@
-
- public static String evaluate(Element elem)
- {
-- List content = elem.getMixedContent();
-+ List content = elem.getContent();
-
- Iterator contentIter = content.iterator();
- Object each = null;
-diff -Nru werken.xpath.orig/src/com/werken/xpath/impl/NodeTypeStep.java werken.xpath/src/com/werken/xpath/impl/NodeTypeStep.java
---- werken.xpath.orig/src/com/werken/xpath/impl/NodeTypeStep.java 2000-10-26 04:09:41.000000000 +0300
-+++ werken.xpath/src/com/werken/xpath/impl/NodeTypeStep.java 2003-03-02 01:56:03.000000000 +0200
-@@ -84,16 +84,16 @@
- {
- if ( isAbsolute() )
- {
-- results.addAll( applyToNodes( ((Element)node).getDocument().getMixedContent() ) );
-+ results.addAll( applyToNodes( ((Element)node).getDocument().getContent() ) );
- }
- else
- {
-- results.addAll( applyToNodes( ((Element)node).getMixedContent() ) );
-+ results.addAll( applyToNodes( ((Element)node).getContent() ) );
- }
- }
- else if ( node instanceof Document )
- {
-- results.addAll( applyToNodes( ((Document)node).getMixedContent() ) );
-+ results.addAll( applyToNodes( ((Document)node).getContent() ) );
- }
-
- return results;
-diff -Nru werken.xpath.orig/src/com/werken/xpath/impl/UnAbbrStep.java werken.xpath/src/com/werken/xpath/impl/UnAbbrStep.java
---- werken.xpath.orig/src/com/werken/xpath/impl/UnAbbrStep.java 2000-10-31 22:20:56.000000000 +0200
-+++ werken.xpath/src/com/werken/xpath/impl/UnAbbrStep.java 2003-03-02 01:56:03.000000000 +0200
-@@ -227,7 +227,7 @@
-
- if ( node instanceof Element )
- {
-- List children = ((Element)node).getMixedContent();
-+ List children = ((Element)node).getContent();
-
- results.addAll( applyTo( children,
- support,
-@@ -235,7 +235,7 @@
- }
- else if ( node instanceof Document )
- {
-- List children = ((Document)node).getMixedContent();
-+ List children = ((Document)node).getContent();
-
- results.addAll( applyTo( children,
- support,
-@@ -256,7 +256,7 @@
-
- if ( node instanceof Element )
- {
-- List children = ((Element)node).getMixedContent();
-+ List children = ((Element)node).getContent();
-
- results.addAll( applyTo( children,
- support,
-@@ -264,7 +264,7 @@
- }
- else if ( node instanceof Document )
- {
-- List children = ((Document)node).getMixedContent();
-+ List children = ((Document)node).getContent();
-
- results.addAll( applyTo( children,
- support,
-diff -Nru werken.xpath.orig/test/src/com/werken/xpath/test/Driver.java werken.xpath/test/src/com/werken/xpath/test/Driver.java
---- werken.xpath.orig/test/src/com/werken/xpath/test/Driver.java 2000-11-09 19:43:30.000000000 +0200
-+++ werken.xpath/test/src/com/werken/xpath/test/Driver.java 2003-03-02 01:56:55.000000000 +0200
-@@ -412,7 +412,7 @@
- elemID = "";
- }
-
-- resultNode.addAttribute("id", elemID);
-+ resultNode.setAttribute("id", elemID);
- node.addContent( resultNode );
- results.addContent( node );
- }
diff --git a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-tests.patch b/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-tests.patch
deleted file mode 100644
index bcb84f1ee237..000000000000
--- a/dev-java/werken-xpath/files/werken-xpath-0.9.4_beta-jpp-tests.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./runtests.sh~ 2000-10-31 23:42:01.000000000 +0200
-+++ ./runtests.sh 2003-03-02 01:59:55.000000000 +0200
-@@ -9,6 +9,6 @@
- XPATH_CP=./build/werken.xpath.jar
- TEST_CP=./build/test/classes/
-
--CP=$ANTLR_CP:$JDOM_CP:$XPATH_CP:$TEST_CP:$XERCES_CP
-+CP=$ANTLR_CP:$JDOM_CP:$XPATH_CP:$TEST_CP:$XERCES_CP:$CLASSPATH
-
- java -classpath $CP $TEST_DRIVER $TESTS_XML
diff --git a/dev-java/werken-xpath/metadata.xml b/dev-java/werken-xpath/metadata.xml
deleted file mode 100644
index 93f0dea9b7f9..000000000000
--- a/dev-java/werken-xpath/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge">werken-xpath</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/werken-xpath/werken-xpath-0.9.4_beta-r5.ebuild b/dev-java/werken-xpath/werken-xpath-0.9.4_beta-r5.ebuild
deleted file mode 100644
index 97f1586aa696..000000000000
--- a/dev-java/werken-xpath/werken-xpath-0.9.4_beta-r5.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-WANT_ANT_TASKS="ant-antlr"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN=${PN/-/.}
-MY_PV=${PV//_/-}
-MY_P=${MY_PN}-${MY_PV}
-
-DESCRIPTION="W3C XPath-Rec implementation for DOM4J"
-HOMEPAGE="https://sourceforge.net/projects/werken-xpath/"
-SRC_URI="mirror://gentoo/${MY_P}-src.tar.gz"
-# This tarball was acquired from jpackage's src rpm of the package by the same name
-
-LICENSE="JDOM"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-COMMON_DEP="
- dev-java/jdom:0
- >=dev-java/antlr-2.7.7-r7:0"
-DEPEND=">=virtual/jdk-1.8:*
- ${COMMON_DEP}"
-RDEPEND=">=virtual/jre-1.8:*
- ${COMMON_DEP}"
-
-S=${WORKDIR}/${MY_PN}
-
-EANT_BUILD_TARGET="package"
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="antlr,jdom"
-
-src_prepare() {
- default
- # Courtesy of JPackages :)
- eapply "${FILESDIR}"/${P}-jpp-compile.patch
- eapply "${FILESDIR}"/${P}-jpp-jdom.patch
- eapply "${FILESDIR}"/${P}-jpp-tests.patch
- eapply "${FILESDIR}"/${P}-gentoo.patch
-
- # API updates to support jdom-1
- eapply "${FILESDIR}"/${P}-jdom-1.0.patch
-
- java-pkg_clean
- rm -rv lib/bin || die
-}
-
-src_install() {
- java-pkg_newjar build/${MY_PN}.jar
-
- dodoc README TODO LIMITATIONS
- use doc && java-pkg_dojavadoc build/apidocs
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/woodstox-core/Manifest b/dev-java/woodstox-core/Manifest
new file mode 100644
index 000000000000..be5e4bc9c5ff
--- /dev/null
+++ b/dev-java/woodstox-core/Manifest
@@ -0,0 +1 @@
+DIST woodstox-core-6.4.0.tar.gz 6030457 BLAKE2B 0506a4af84eff8ac11bc6363581f8de737116bd254d0c3b2f68a9ce062325934188c5a05eeff918ae012330d885ba7940f9dc1afb01ee951ff58cdcd1c86b2c7 SHA512 ca8033084c0355c5a321ab51ab6cfee62737b49ab98106fab0abb3ac8950ddd773dc91d864e4e62bdddaca1b7ba98f3639d1a61d8c436892b35193a8c838659f
diff --git a/dev-java/woodstox-core/metadata.xml b/dev-java/woodstox-core/metadata.xml
new file mode 100644
index 000000000000..2489030beec9
--- /dev/null
+++ b/dev-java/woodstox-core/metadata.xml
@@ -0,0 +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>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">FasterXML/woodstox</remote-id>
+ <bugs-to>https://github.com/FasterXML/woodstox/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/woodstox-core/woodstox-core-6.4.0-r1.ebuild b/dev-java/woodstox-core/woodstox-core-6.4.0-r1.ebuild
new file mode 100644
index 000000000000..f709dc1853a1
--- /dev/null
+++ b/dev-java/woodstox-core/woodstox-core-6.4.0-r1.ebuild
@@ -0,0 +1,89 @@
+# 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/FasterXML/woodstox/archive/woodstox-core-6.4.0.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild woodstox-core-6.4.0.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="com.fasterxml.woodstox:woodstox-core:6.4.0"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An XML processor that implements Stax (JSR-173), SAX2 and Stax2 APIs"
+HOMEPAGE="https://github.com/FasterXML/woodstox"
+SRC_URI="https://github.com/FasterXML/woodstox/archive/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# net.java.dev.msv:msv-core:2013.6.1 -> >=dev-java/msv-2022.7:0
+# net.java.dev.msv:xsdlib:2013.6.1 -> >=dev-java/xsdlib-2022.7:0
+# org.codehaus.woodstox:stax2-api:4.2.1 -> >=dev-java/stax2-api-4.2.1:0
+# relaxngDatatype:relaxngDatatype:20020414 -> >=dev-java/relaxng-datatype-20020414:0
+
+CP_DEPEND="
+ dev-java/msv:0
+ dev-java/relaxng-datatype:0
+ dev-java/stax2-api:0
+ dev-java/xsdlib:0
+"
+
+# Compile dependencies
+# POM: pom.xml
+# biz.aQute.bnd:biz.aQute.bnd.annotation:6.3.1 -> >=dev-java/aqute-bnd-annotation-6.3.1:0
+# org.osgi:osgi.core:5.0.0 -> >=dev-java/osgi-core-8.0.0:0
+# POM: pom.xml
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-11:*
+ dev-java/bnd-annotation:0
+ dev-java/osgi-core:0"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DOCS=( {README,SECURITY}.md release-notes/{CREDITS,VERSION} )
+
+S="${WORKDIR}/woodstox-${P}"
+
+JAVA_CLASSPATH_EXTRA="bnd-annotation,osgi-core"
+JAVA_SRC_DIR=( "src/main/java" "src/moditect" )
+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"
+
+# https://github.com/FasterXML/woodstox/blob/woodstox-core-6.3.0/pom.xml#L229-L243
+src_test() {
+ pushd src/test/java > /dev/null || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -wholename "**/Test*.java" \
+ -o -wholename "**/*Test.java" \) \
+ ! -wholename "failing/*.java" \
+ ! -wholename "**/Abstract*.jav" \
+ ! -wholename "**/Base*.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
+}
+
+src_prepare() {
+ default
+
+ # src/moditect/module-info.java:33: error: cannot find symbol
+ # provides org.codehaus.stax2.validation.XMLValidationSchemaFactory.dtd with com.ctc.wstx.dtd.DTDSchemaFactory;
+ # https://bugs.gentoo.org/858302
+ sed -e '/com.ctc.wstx.shaded.msv/d' \
+ -e '/org.codehaus.stax2.validation/d' \
+ -i "src/moditect/module-info.java" || die
+}
diff --git a/dev-java/ws-commons-util/Manifest b/dev-java/ws-commons-util/Manifest
deleted file mode 100644
index 99edcef18307..000000000000
--- a/dev-java/ws-commons-util/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ws-commons-util-1.0.1-src.tar.gz 24838 BLAKE2B ca39646a40513eaf1905cd910779a045b24f0b4901c1818a10367f7326a7a50122d031a9b91ab6884baae15388e1e91903f21b3bb23cabb09e3f0dfe4738ca0d SHA512 4eefe61daf462105ca8cfb8ec42ef42ef414d1426b201da044fe9a72e9ab7d3fd34bd80d19d8f6220f1f91d9de7cab3d8d2dec4c267784ba3d3bbd69a1c62c4c
diff --git a/dev-java/ws-commons-util/metadata.xml b/dev-java/ws-commons-util/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/ws-commons-util/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/ws-commons-util/ws-commons-util-1.0.1-r1.ebuild b/dev-java/ws-commons-util/ws-commons-util-1.0.1-r1.ebuild
deleted file mode 100644
index 3e6b2e2c676e..000000000000
--- a/dev-java/ws-commons-util/ws-commons-util-1.0.1-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="source doc"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Utility classes that allow high performance XML processing based on SAX"
-HOMEPAGE="http://ws.apache.org/commons/util/"
-SRC_URI="mirror://apache/ws/commons/util/sources/${P}-src.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- mv "${S}"/"${P}"/src . || die
- rm -rf "${S}"/"${P}" src/test || die
-}
diff --git a/dev-java/wsdl4j/Manifest b/dev-java/wsdl4j/Manifest
index 30f7f11c720b..9ad046dbab97 100644
--- a/dev-java/wsdl4j/Manifest
+++ b/dev-java/wsdl4j/Manifest
@@ -1,2 +1 @@
-DIST jwsdltck-bin-1.2.zip 599377 BLAKE2B 0f99dc93a1b22019c572fe55585ee285c72e1dabcecc5cf93fa635b12a39a43686f0ff704a0c9ea25c682a882c4580fd82cf2015a9d4417dd28bc87d0b32a670 SHA512 a8f86d9895c588d752d266413e77c2a8db241e9cf9c199909f2e9d1d1b3b1b03eaa6b5841c62b0e7a7c779089eb6721797fdb4f2db841789a6a19884bd48711b
-DIST wsdl4j-src-1.6.2.zip 172400 BLAKE2B 96fa6a9098993ba20a277004515a4cd29bae84450b86398ceb1dc7835f14f17b39e5daf87d557b4378860c9d24e5928a80bb30b2d953fdc8fcae7d97ae8454f5 SHA512 55d0b8eb6a08cecd4a48223a9f29fe6ed0e00ec4dca99f44a04882efdba448601bb7dadcaa347e32e3ff5bb9e3334503d6666ca2a6276c7bb48b80acea57b751
+DIST wsdl4j-src-1.6.3.zip 173137 BLAKE2B 85ffe7a53b281307cd2d7072f611aa7ecbc10a5e13125f44f0dc934218b8d31ad15438adfc46a89431a5fc1ac68d4896c2415a95ee87c227d74babe664202e4f SHA512 eb5e16b0b51530a27b12aae5d897384d2a03db2e4df70f23ab435af5e8444f828dacfdb0ab0807a9e0b3423eebb165eea8790c129a173d376fc929a1c222be6e
diff --git a/dev-java/wsdl4j/files/1.6.2-tests-sandbox.patch b/dev-java/wsdl4j/files/1.6.2-tests-sandbox.patch
deleted file mode 100644
index 7901a11a6fc0..000000000000
--- a/dev-java/wsdl4j/files/1.6.2-tests-sandbox.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ur wsdl4j-1_6_2.old/build.xml wsdl4j-1_6_2/build.xml
---- wsdl4j-1_6_2.old/build.xml 2007-06-09 01:12:11.000000000 +0300
-+++ wsdl4j-1_6_2/build.xml 2007-06-09 01:13:09.000000000 +0300
-@@ -279,6 +279,7 @@
- <target name="test" depends="compile" if="junit.present">
- <junit printsummary="on">
- <sysproperty key="jwsdltck_home" value="./test"/>
-+ <sysproperty key="java.home" value="${temp.dir}"/>
- <sysproperty key="javax.wsdl.factory.WSDLFactoryCandidate"
- value="com.ibm.wsdl.factory.WSDLFactoryImpl"/>
-
diff --git a/dev-java/wsdl4j/metadata.xml b/dev-java/wsdl4j/metadata.xml
index 524efd7086e7..85df5402cc46 100644
--- a/dev-java/wsdl4j/metadata.xml
+++ b/dev-java/wsdl4j/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="sourceforge">jwsdltck</remote-id>
+ <remote-id type="sourceforge">wsdl4j</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/wsdl4j/wsdl4j-1.6.2-r1.ebuild b/dev-java/wsdl4j/wsdl4j-1.6.2-r1.ebuild
deleted file mode 100644
index 2543074e32b0..000000000000
--- a/dev-java/wsdl4j/wsdl4j-1.6.2-r1.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
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Web Services Description Language for Java Toolkit (WSDL4J)"
-HOMEPAGE="http://wsdl4j.sourceforge.net"
-
-TCK="jwsdltck"
-TCK_V="1.2"
-
-SRC_URI="mirror://sourceforge/${PN}/${PN}-src-${PV}.zip
- test? ( mirror://sourceforge/${TCK}/${TCK}-bin-${TCK_V}.zip )"
-
-LICENSE="CPL-1.0"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-# tests fail with encoding errors
-RESTRICT="test"
-
-DEPEND=">=virtual/jdk-1.8:*
- test? ( dev-java/junit:0 )
- app-arch/unzip"
-RDEPEND=">=virtual/jre-1.8:*"
-
-S="${WORKDIR}/${P//./_}"
-TCK_S="${WORKDIR}/${TCK}-${TCK_V//./_}"
-
-EANT_BUILD_TARGET="compile"
-EANT_DOC_TARGET="javadocs"
-
-src_prepare() {
- default
- if use test; then
- rm -v "${TCK_S}"/lib/*.jar || die
- eapply "${FILESDIR}/1.6.2-tests-sandbox.patch"
- fi
-}
-
-src_test() {
- ln -s "${TCK_S}" test || die
- cd "${TCK_S}" || die
- java-ant_rewrite-classpath
- local junit="$(java-pkg_getjars junit)"
- eant -Dbuild.lib="${S}/test/lib" compile \
- -Dgentoo.classpath="${S}/build/lib/${PN}.jar:${junit}"
- cd "${S}" || die
- mkdir "${T}/lib" || die
- ANT_TASKS="ant-junit" eant test -Dtemp.dir="${T}"
-}
-
-src_install() {
- java-pkg_dojar build/lib/*.jar
-
- use doc && java-pkg_dojavadoc build/javadocs/
- use source && java-pkg_dosrc src/*
-}
diff --git a/dev-java/wsdl4j/wsdl4j-1.6.3.ebuild b/dev-java/wsdl4j/wsdl4j-1.6.3.ebuild
new file mode 100644
index 000000000000..d3a6b474d0af
--- /dev/null
+++ b/dev-java/wsdl4j/wsdl4j-1.6.3.ebuild
@@ -0,0 +1,26 @@
+# 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
+
+DESCRIPTION="Web Services Description Language for Java Toolkit (WSDL4J)"
+HOMEPAGE="https://wsdl4j.sourceforge.net"
+TCK_V="1.2"
+SRC_URI="https://downloads.sourceforge.net/project/wsdl4j/WSDL4J/${PV}/wsdl4j-src-${PV}.zip"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+JAVADOC_ARGS="-source 8"
+
+S="${WORKDIR}/${P//./_}"
+
+JAVA_SRC_DIR="src"
diff --git a/dev-java/xalan-serializer/Manifest b/dev-java/xalan-serializer/Manifest
index b226e35697c6..47e6dc2239af 100644
--- a/dev-java/xalan-serializer/Manifest
+++ b/dev-java/xalan-serializer/Manifest
@@ -1 +1,2 @@
-DIST xalan-j_2_7_2-src.tar.gz 8416261 BLAKE2B be67c9f2f7ec1140965dc148aea94347e60a2969deb1fac5834c1458d10b3dca91b448a44ed6ebbbb227e4f04780ce0142e812cd99d8862a4cbbf5e8e2af4cb3 SHA512 2f1fa105b3cb8082594e3121a245464e1b7c15464b1ead2d10e306e51ef61ded5d7fcd70c034fa46f41c4a8c14316e376cc14d8045c8aadfce80f2e4bd1b61d8
+DIST xalan-j_2_7_3-src.tar.gz 13686458 BLAKE2B e19373aa22dad13945917d8f041f56e6ff9cc434a70e88b96764e0547a0a122a9197eeb23bb7757a5483beead334f4af62e7e1b70531b23c31199ec4733756ef SHA512 fe4b2b9471f95a2cd3607550a6c97b46b7d2576d1e814305f4564df88aaf4fdc9f88ba43dad4a5741521b2c2f5137e3e70d2d4e31b232d403a66dc1e889c8b6b
+DIST xalan-j_2_7_3-src.tar.gz.asc 849 BLAKE2B 623fefefa3ab88bfdef5376101f26a9c6602c30a34c0db369159bdb7af34ccb2602011071dd3e79304e6dd4e8b8a198729347f5dbee9a06ae12af12d351de82a SHA512 5c7ed7e71f8a0c2739a64f9ba34edb28d749924d1a581b9963bed3376151a090c2c1af2b1111612822cf20d27a814e22917660f034912e8e5fa913b434e66bf2
diff --git a/dev-java/xalan-serializer/metadata.xml b/dev-java/xalan-serializer/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/xalan-serializer/metadata.xml
+++ b/dev-java/xalan-serializer/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xalan-serializer/xalan-serializer-2.7.2-r1.ebuild b/dev-java/xalan-serializer/xalan-serializer-2.7.2-r1.ebuild
deleted file mode 100644
index 616eb218adec..000000000000
--- a/dev-java/xalan-serializer/xalan-serializer-2.7.2-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2021 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_PV="$(ver_rs 1- '_')"
-MY_P="xalan-j_${MY_PV}"
-
-DESCRIPTION="DOM Level 3 serializer from Apache Xalan, shared by Xalan and Xerces"
-HOMEPAGE="https://xalan.apache.org/"
-SRC_URI="mirror://apache/xalan/xalan-j/source/${MY_P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND=">=virtual/jdk-1.8:*"
-
-JAVA_SRC_DIR="src"
-JAVA_RESOURCE_DIRS="resources"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
- # kill all non-serializer sources to ease javadocs and dosrc
- find src/org/ -type f ! -path "src/org/apache/xml/serializer/*" -delete || die
-
- # remove bundled jars
- find -name "*.jar" -delete || die
- rm src/*.tar.gz || die
-
- # move resources elsewhere
- mkdir -p resources/org/apache/xml/serializer || die
- mv src/org/apache/xml/serializer/*.properties resources/org/apache/xml/serializer/ || die
-}
diff --git a/dev-java/xalan-serializer/xalan-serializer-2.7.3-r1.ebuild b/dev-java/xalan-serializer/xalan-serializer-2.7.3-r1.ebuild
new file mode 100644
index 000000000000..d3a34a76b1ca
--- /dev/null
+++ b/dev-java/xalan-serializer/xalan-serializer-2.7.3-r1.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="xalan:serializer:2.7.3"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Transforming XML documents into HTML, text, or other XML document types"
+HOMEPAGE="https://xalan.apache.org/"
+SRC_URI="mirror://apache/xalan/xalan-j/source/xalan-j_${PV//./_}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/xalan/xalan-j/source/xalan-j_${PV//./_}-src.tar.gz.asc )"
+
+S="${WORKDIR}/xalan-j_${PV//./_}"
+
+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-xalan-j )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xalan-j.apache.org.asc"
+
+JAVA_MAIN_CLASS="org.apache.xml.serializer.Version"
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # kill all non-serializer sources to ease javadocs and dosrc
+ find src/org/ -type f ! -path "src/org/apache/xml/serializer/*" -delete || die
+
+ # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
+ mkdir -p resources || die
+ pushd src > /dev/null || die
+ find org -type f \
+ ! -name '*.java' \
+ ! -name 'Version.src' \
+ ! -name 'package.html' \
+ | xargs cp --parent -t ../resources || die
+ popd > /dev/null || die
+}
diff --git a/dev-java/xalan/Manifest b/dev-java/xalan/Manifest
index 927b4c4864aa..47e6dc2239af 100644
--- a/dev-java/xalan/Manifest
+++ b/dev-java/xalan/Manifest
@@ -1,2 +1,2 @@
-DIST xalan-j_2_7_2-bin.zip 17740075 BLAKE2B 244fd71011fa957ff1988dbbb58e40af4ad218aafbd92f2a6ec305d59ec0fb221a283442b24e4290f6d2e853cfad39d689c1397b4d18f34f4c94403610079328 SHA512 ae2be0bfc5e794b159c2d16718275a6ce6e8f63d681e2d13875f233d334a37aba872206c6c1f70565698ceaf4c66261c7df6db6c524e6e8da5dafe2f17cefddf
-DIST xalan-j_2_7_2-src.tar.gz 8416261 BLAKE2B be67c9f2f7ec1140965dc148aea94347e60a2969deb1fac5834c1458d10b3dca91b448a44ed6ebbbb227e4f04780ce0142e812cd99d8862a4cbbf5e8e2af4cb3 SHA512 2f1fa105b3cb8082594e3121a245464e1b7c15464b1ead2d10e306e51ef61ded5d7fcd70c034fa46f41c4a8c14316e376cc14d8045c8aadfce80f2e4bd1b61d8
+DIST xalan-j_2_7_3-src.tar.gz 13686458 BLAKE2B e19373aa22dad13945917d8f041f56e6ff9cc434a70e88b96764e0547a0a122a9197eeb23bb7757a5483beead334f4af62e7e1b70531b23c31199ec4733756ef SHA512 fe4b2b9471f95a2cd3607550a6c97b46b7d2576d1e814305f4564df88aaf4fdc9f88ba43dad4a5741521b2c2f5137e3e70d2d4e31b232d403a66dc1e889c8b6b
+DIST xalan-j_2_7_3-src.tar.gz.asc 849 BLAKE2B 623fefefa3ab88bfdef5376101f26a9c6602c30a34c0db369159bdb7af34ccb2602011071dd3e79304e6dd4e8b8a198729347f5dbee9a06ae12af12d351de82a SHA512 5c7ed7e71f8a0c2739a64f9ba34edb28d749924d1a581b9963bed3376151a090c2c1af2b1111612822cf20d27a814e22917660f034912e8e5fa913b434e66bf2
diff --git a/dev-java/xalan/metadata.xml b/dev-java/xalan/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/xalan/metadata.xml
+++ b/dev-java/xalan/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xalan/xalan-2.7.2-r1.ebuild b/dev-java/xalan/xalan-2.7.2-r1.ebuild
deleted file mode 100644
index 332cb5588c95..000000000000
--- a/dev-java/xalan/xalan-2.7.2-r1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# NOTE: Building the docs is much more hassle than it's worth. It
-# requires com.sun.image.codec, which has long gone from JDKs, and
-# Apache StyleBook, which is long dead though it is bundled here.
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PN="${PN}-j"
-MY_PV="$(ver_rs 1- _)"
-MY_P="${MY_PN}_${MY_PV}"
-SRC_DIST="${MY_P}-src.tar.gz"
-BIN_DIST="${MY_P}-bin.zip"
-
-DESCRIPTION="Transforming XML documents into HTML, text, or other XML document types"
-HOMEPAGE="https://xalan.apache.org/"
-SRC_URI="mirror://apache/${PN}/${MY_PN}/source/${SRC_DIST}
- doc? ( mirror://apache/${PN}/${MY_PN}/binaries/${BIN_DIST} )"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-CDEPEND="dev-java/javacup:0
- dev-java/bcel:0"
-
-BDEPEND="doc? ( app-arch/unzip )"
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.8:*
- ~dev-java/xalan-serializer-${PV}:${SLOT}"
-
-DEPEND="${CDEPEND}
- virtual/jdk:1.8"
-
-EANT_GENTOO_CLASSPATH="bcel,javacup"
-EANT_BUILD_TARGET="unbundledjar"
-EANT_DOC_TARGET=""
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
- default
-
- # disable building of serializer.jar
- sed -i -e 's/depends="prepare,serializer.jar"/depends="prepare"/' \
- build.xml || die "sed build.xml failed"
-
- # remove bundled jars
- find -name "*.jar" -delete || die
- rm src/*.tar.gz || die
-}
-
-src_install() {
- java-pkg_newjar build/${PN}-unbundled.jar
- java-pkg_dolauncher ${PN} --main org.apache.xalan.xslt.Process
- java-pkg_register-dependency ${PN}-serializer
-
- dodoc NOTICE.txt readme.html
- use doc && java-pkg_dohtml -r docs/*
- use source && java-pkg_dosrc src/org
-}
diff --git a/dev-java/xalan/xalan-2.7.3-r1.ebuild b/dev-java/xalan/xalan-2.7.3-r1.ebuild
new file mode 100644
index 000000000000..c49a110bfdde
--- /dev/null
+++ b/dev-java/xalan/xalan-2.7.3-r1.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"
+MAVEN_ID="xalan:xalan:2.7.3"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Transforming XML documents into HTML, text, or other XML document types"
+HOMEPAGE="https://xalan.apache.org/"
+SRC_URI="mirror://apache/xalan/xalan-j/source/xalan-j_${PV//./_}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/xalan/xalan-j/source/xalan-j_${PV//./_}-src.tar.gz.asc )"
+
+S="${WORKDIR}/xalan-j_${PV//./_}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+CP_DEPEND="
+ dev-java/bcel:0
+ dev-java/javacup:0
+ ~dev-java/xalan-serializer-${PV}:${SLOT}
+ dev-java/xerces:2
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-xalan-j )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xalan-j.apache.org.asc"
+
+JAVA_MAIN_CLASS="org.apache.xalan.xslt.Process"
+JAVA_SRC_DIR="src"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # serializer is packaged separately
+ rm -r src/org/apache/xml/serializer || die "cannot remove serializer"
+}
diff --git a/dev-java/xerces/Manifest b/dev-java/xerces/Manifest
index e5aebc17815c..768ed441fa44 100644
--- a/dev-java/xerces/Manifest
+++ b/dev-java/xerces/Manifest
@@ -1,2 +1,2 @@
-DIST xerces-2.12.0.jar 2113705 BLAKE2B 4224b9c00b9c7f388fc40f3bebe6520a21011f36ee1ffcf62e864fe370bbcac8c45b3627d2aff20655f467661a252e1bfd5cb9613f9bbe5b08f1917d09493fa7 SHA512 21f5218f71b3423a883e2bf5c99f7badd5a004a09454d0b218f57f463daf8fe83e7a186b64dd4c19388795a6e6e995f6ed133bbe4c81aab07b0a0d33cf2f7dbb
-DIST xerces-2.12.1.jar 2149927 BLAKE2B b02c518754bcab1da9200122b398496c273a84c07a60945c0eea5524a230f5f4815b619685fc41bf48a124f9147803b9452d5d0105b57d535c9c666c52196571 SHA512 2c4ce274904eda6eb4b0b8800dc8383bc6504e215eb9603c45a25c32335651c8ea4d69539b984c048c1974d2aed3d852fff168eb44e2a9b1087ded578394b849
+DIST Xerces-J-src.2.12.2.tar.gz 1812583 BLAKE2B f1b5928abe2852acc4d554c47aa7cbd81a568e15c8a1fd5ea98dc526c52838b0a50920d2ed807e607b01c875676e54578f1493856b06de5a7ba8784591f7f06f SHA512 e71a692212a974ebfa39af5ffd023b433ece34425b12aceeffe89cebe04f28dd8fa46a131a56f30295dca36de115128a6d7e05172c82f5b85d914cd991f34056
+DIST Xerces-J-src.2.12.2.tar.gz.asc 849 BLAKE2B 58faca219413b5b13ded6bedb16acca5ffe53a6890c2ea6ec6f5b2b19b46b179bd74b225e608b936b0d6abad24b947930da24339256137a291e5bc863a11c416 SHA512 77cc480b9eff693ab7b5fe4c8a8963cbd53e895dd130bc0ef3fbaebce6d64e59c068806f10bbf650f51a4fb132a49d24c869c8a01e9922bf792bb479602b9846
diff --git a/dev-java/xerces/files/xerces-2.12.0-overrides.patch b/dev-java/xerces/files/xerces-2.12.0-overrides.patch
deleted file mode 100644
index 2e31002065e3..000000000000
--- a/dev-java/xerces/files/xerces-2.12.0-overrides.patch
+++ /dev/null
@@ -1,66 +0,0 @@
---- a/org/apache/html/dom/HTMLIFrameElementImpl.java 2019-04-17 18:08:03.187783332 +0000
-+++ b/org/apache/html/dom/HTMLIFrameElementImpl.java 2019-04-17 18:09:38.640274335 +0000
-@@ -17,6 +17,7 @@
- package org.apache.html.dom;
-
- import org.w3c.dom.html.HTMLIFrameElement;
-+import org.w3c.dom.Document;
-
- /**
- * @xerces.internal
-@@ -161,6 +162,11 @@
- super( owner, name );
- }
-
-+ @Override
-+ public Document getContentDocument()
-+ {
-+ return null;
-+ }
-
- }
-
---- a/org/apache/html/dom/HTMLFrameElementImpl.java 2019-04-17 19:14:06.833172177 +0000
-+++ b/org/apache/html/dom/HTMLFrameElementImpl.java 2019-04-17 19:14:56.755428976 +0000
-@@ -17,6 +17,7 @@
- package org.apache.html.dom;
-
- import org.w3c.dom.html.HTMLFrameElement;
-+import org.w3c.dom.Document;
-
- /**
- * @xerces.internal
-@@ -138,6 +139,11 @@
- super( owner, name );
- }
-
-+ @Override
-+ public Document getContentDocument()
-+ {
-+ return null;
-+ }
-
- }
-
---- a/org/apache/html/dom/HTMLObjectElementImpl.java 2019-04-17 19:17:26.624199895 +0000
-+++ b/org/apache/html/dom/HTMLObjectElementImpl.java 2019-04-17 19:19:23.691802087 +0000
-@@ -17,6 +17,7 @@
- package org.apache.html.dom;
-
- import org.w3c.dom.html.HTMLObjectElement;
-+import org.w3c.dom.Document;
-
- /**
- * @xerces.internal
-@@ -251,6 +252,11 @@
- super( owner, name );
- }
-
-+ @Override
-+ public Document getContentDocument()
-+ {
-+ return null;
-+ }
-
- }
-
diff --git a/dev-java/xerces/metadata.xml b/dev-java/xerces/metadata.xml
index 2444066aa02b..ad8d1c3e6d98 100644
--- a/dev-java/xerces/metadata.xml
+++ b/dev-java/xerces/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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>
+ <longdescription>
+ Xerces2 provides high performance, fully compliant XML parsers in the Apache Xerces family. This new version of Xerces continues to build upon the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy to program. The Apache Xerces2 parser is the reference implementation of XNI but other parser components, configurations, and parsers can be written using the Xerces Native Interface. For complete design and implementation documents, refer to the XNI Manual. Xerces2 provides fully conforming XML Schema 1.0 and 1.1 processors. An experimental implementation of the "XML Schema Definition Language (XSD): Component Designators (SCD) Candidate Recommendation (January 2010)" is also provided for evaluation. For more information, refer to the XML Schema page. Xerces2 also provides a complete implementation of the Document Object Model Level 3 Core and Load/Save W3C Recommendations and provides a complete implementation of the XML Inclusions (XInclude) W3C Recommendation. It also provides support for OASIS XML Catalogs v1.1. Xerces2 is able to parse documents written according to the XML 1.1 Recommendation, except that it does not yet provide an option to enable normalization checking as described in section 2.13 of this specification. It also handles namespaces according to the XML Namespaces 1.1 Recommendation, and will correctly serialize XML 1.1 documents if the DOM level 3 load/save APIs are in use.
+ </longdescription>
</pkgmetadata>
diff --git a/dev-java/xerces/xerces-2.12.0.ebuild b/dev-java/xerces/xerces-2.12.0.ebuild
deleted file mode 100644
index 638b1ea00e7f..000000000000
--- a/dev-java/xerces/xerces-2.12.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="xerces:xercesImpl:2.12.0"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="xercesImpl"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Xerces Java XML parser"
-HOMEPAGE="https://xml.apache.org/xerces2-j/index.html"
-SRC_URI="https://repo1.maven.org/maven2/xerces/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-CDEPEND="
- dev-java/xjavac:1
- dev-java/xml-commons-resolver:0
- dev-java/xml-commons-external:1.4"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_SRC_DIR="org"
-
-JAVA_GENTOO_CLASSPATH="
- xjavac-1
- xml-commons-resolver
- xml-commons-external-1.4"
-
-S="${WORKDIR}"
-
-PATCHES=(
- "${FILESDIR}/${P}-overrides.patch"
-)
-
-src_prepare() {
- default
-
- java-pkg-2_src_prepare
-}
diff --git a/dev-java/xerces/xerces-2.12.1.ebuild b/dev-java/xerces/xerces-2.12.1.ebuild
deleted file mode 100644
index 0d5e000fae02..000000000000
--- a/dev-java/xerces/xerces-2.12.1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source"
-MAVEN_ID="xerces:xercesImpl:2.12.1"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="xercesImpl"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Xerces Java XML parser"
-HOMEPAGE="https://xerces.apache.org/xerces2-j/index.html"
-SRC_URI="https://repo1.maven.org/maven2/xerces/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-CDEPEND="dev-java/xml-commons-resolver:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-11:*"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-11:*"
-
-JAVA_SRC_DIR="org"
-
-JAVA_GENTOO_CLASSPATH="xml-commons-resolver"
-
-S="${WORKDIR}"
-
-src_prepare() {
- default
-
- rm -rv "org/w3c" || die
-}
diff --git a/dev-java/xerces/xerces-2.12.2-r2.ebuild b/dev-java/xerces/xerces-2.12.2-r2.ebuild
new file mode 100644
index 000000000000..6aed07e1a9e0
--- /dev/null
+++ b/dev-java/xerces/xerces-2.12.2-r2.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"
+MAVEN_ID="xerces:xercesImpl:2.12.2"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Xerces Java XML parser"
+HOMEPAGE="https://xerces.apache.org/xerces2-j/index.html"
+SRC_URI="mirror://apache/xerces/j/source/Xerces-J-src.${PV}.tar.gz
+ verify-sig? ( https://downloads.apache.org/xerces/j/source/Xerces-J-src.${PV}.tar.gz.asc )"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/xml-commons-external:1.4
+ dev-java/xml-commons-resolver:0"
+
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-xerces-j )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xerces-j.apache.org.asc"
+
+DOCS=( LICENSE NOTICE README {LICENSE.resolver,LICENSE.serializer,NOTICE.resolver,NOTICE.serializer}.txt )
+HTML_DOCS=( {LICENSE.DOM-documentation,LICENSE.DOM-software,LICENSE-SAX,Readme}.html )
+
+S="${WORKDIR}/${P//./_}"
+
+JAVADOC_ARGS="-source 8" #922332
+JAVA_SRC_DIR="src"
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ # java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
+ mkdir -p "resources/META-INF/services"|| die
+ pushd "src" > /dev/null || die
+ find -type f \
+ \( -name 'javax.xml.*Factory' \
+ -or -name '*DOMImplementationSourceList' \
+ -or -name 'org.xml.sax.driver' \) \
+ | xargs mv -t ../resources/META-INF/services || die
+ find -type f \
+ ! -name '*.java' \
+ ! -name 'manifest.xerces' \
+ ! -name 'package.html' \
+ ! -name '*Configuration' \
+ ! -name '*DOMImplementationSourceImpl' \
+ | xargs cp --parent -t ../resources || die
+ popd > /dev/null || die
+}
diff --git a/dev-java/xerial-core/Manifest b/dev-java/xerial-core/Manifest
index 3c03563fd0be..871466add435 100644
--- a/dev-java/xerial-core/Manifest
+++ b/dev-java/xerial-core/Manifest
@@ -1 +1 @@
-DIST xerial-core-2.0.1.tar.bz2 519709 BLAKE2B 3d81bda265e3b3b37a50a62061298f23de7c2947a9d50ba6eac336c3ec09fcaaeea84d456e344b0d2ae16710870025a869c2359a17f0956c8dda557804e9d5ff SHA512 39236e8a653301a6899ce80d3240d505e91f0cfc8878fa1a698113d06f3af3fd7adef540d72da1c0e1fb7101542c43e92fb9388243d95c3185a561532c18c6fb
+DIST xerial-core-2.1.tar.gz 20598090 BLAKE2B d93021b1becb90a62aacc7337294fb71b0da769461947e935091c65e3e5fda2e454ebda295b7ad37d3b47993472b535588698a618d50243e00d58d1ea500284b SHA512 c762fda93e3da1efe110c667cf84cace7fd7c9b3ac35a764edd2b5e1996034a16a4a43ff5c3e298ff0b96cfc83d18994463c534301e0fab5a75c91cf03b6f89b
diff --git a/dev-java/xerial-core/files/2.0.1-build.xml b/dev-java/xerial-core/files/2.0.1-build.xml
deleted file mode 100644
index 76a6adfcb189..000000000000
--- a/dev-java/xerial-core/files/2.0.1-build.xml
+++ /dev/null
@@ -1,140 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<project name="xerial-core-from-maven" default="package" basedir=".">
- <property file="${user.home}/.m2/maven.properties" />
- <property file="maven-build.properties" />
-
- <property name="maven.build.finalName" value="xerial-core-2.0.1" />
- <property name="maven.build.dir" value="target" />
- <property name="maven.build.outputDir" value="${maven.build.dir}/classes" />
- <property name="maven.build.srcDir.0" value="src/main/java" />
- <property name="maven.build.resourceDir.0" value="src/main/java" />
- <property name="maven.build.resourceDir.1" value="src/main/resources" />
- <property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes" />
- <property name="maven.build.testDir.0" value="src/test/java" />
- <property name="maven.build.testResourceDir.0" value="src/test/java" />
- <property name="maven.build.testResourceDir.1" value="src/test/resources" />
- <property name="maven.test.reports" value="${maven.build.dir}/test-reports" />
- <property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site" />
-
- <property name="maven.repo.local" value="${user.home}/.m2/repository" />
- <property name="maven.settings.offline" value="false" />
- <property name="maven.settings.interactiveMode" value="true" />
-
- <path id="build.classpath" />
- <path id="build.test.classpath" />
-
- <target name="clean" description="Clean the output directory">
- <delete dir="${maven.build.dir}" />
- </target>
-
-
- <target name="compile" description="Compile the code">
- <mkdir dir="${maven.build.outputDir}" />
- <javac destdir="${maven.build.outputDir}" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.6" verbose="false" fork="false" source="1.6">
- <src>
- <pathelement location="${maven.build.srcDir.0}" />
- </src>
- <classpath refid="build.classpath" />
- </javac>
- <copy todir="${maven.build.outputDir}">
- <fileset dir="${maven.build.resourceDir.0}">
- <exclude name="**/*.java" />
- </fileset>
- </copy>
- </target>
-
-
- <target name="compile-tests" depends="compile" description="Compile the test code" unless="maven.test.skip">
- <mkdir dir="${maven.build.testOutputDir}" />
- <javac destdir="${maven.build.testOutputDir}" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.6" verbose="false" fork="false" source="1.6">
- <src>
- <pathelement location="${maven.build.testDir.0}" />
- </src>
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- </classpath>
- </javac>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.0}">
- <exclude name="**/*.java" />
- </fileset>
- </copy>
- <copy todir="${maven.build.testOutputDir}">
- <fileset dir="${maven.build.testResourceDir.1}" />
- </copy>
- </target>
-
- <target name="test" depends="compile-tests, junit-missing" unless="junit.skipped" description="Run the test cases">
- <mkdir dir="${maven.test.reports}" />
- <junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
- <sysproperty key="basedir" value="." />
- <formatter type="xml" />
- <formatter type="plain" usefile="false" />
- <classpath>
- <path refid="build.test.classpath" />
- <pathelement location="${maven.build.outputDir}" />
- <pathelement location="${maven.build.testOutputDir}" />
- </classpath>
- <batchtest todir="${maven.test.reports}" unless="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/Test*.java" />
- <include name="**/*Test.java" />
- <include name="**/*TestCase.java" />
- <exclude name="**/*Abstract*Test.java" />
- </fileset>
- </batchtest>
- <batchtest todir="${maven.test.reports}" if="test">
- <fileset dir="${maven.build.testDir.0}">
- <include name="**/${test}.java" />
- <exclude name="**/*Abstract*Test.java" />
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-junit-present">
- <available classname="junit.framework.Test" property="junit.present" />
- </target>
-
- <target name="test-junit-status" depends="test-junit-present">
- <condition property="junit.missing">
- <and>
- <isfalse value="${junit.present}" />
- <isfalse value="${maven.test.skip}" />
- </and>
- </condition>
- <condition property="junit.skipped">
- <or>
- <isfalse value="${junit.present}" />
- <istrue value="${maven.test.skip}" />
- </or>
- </condition>
- </target>
-
- <target name="junit-missing" depends="test-junit-status" if="junit.missing">
- <echo>=================================== WARNING ===================================</echo>
- <echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
- <echo>===============================================================================</echo>
- </target>
-
- <target name="javadoc" description="Generates the Javadoc of the application">
- <javadoc sourcepath="${maven.build.srcDir.0}" packagenames="*" destdir="${maven.reporting.outputDirectory}/apidocs" charset="ISO-8859-1" linksource="false" breakiterator="false">
- <doctitle>&lt;![CDATA[xerial-core-2.0.1 API]]&gt;</doctitle>
- </javadoc>
- </target>
-
- <target name="package" depends="compile,test" description="Package the application">
- <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar" compress="true" index="false" basedir="${maven.build.outputDir}" excludes="**/package.html" />
- </target>
-
- <target name="jar" depends="package" description="Builds the jar for the application" />
-
- <target name="test-offline">
- <condition property="maven.mode.offline">
- <equals arg1="${maven.settings.offline}" arg2="true" />
- </condition>
- </target>
-
-</project>
diff --git a/dev-java/xerial-core/metadata.xml b/dev-java/xerial-core/metadata.xml
index f32e99b53360..7661bbcec79a 100644
--- a/dev-java/xerial-core/metadata.xml
+++ b/dev-java/xerial-core/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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="google-code">xerial</remote-id>
+ <remote-id type="github">xerial/xerial-java</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-java/xerial-core/xerial-core-2.0.1.ebuild b/dev-java/xerial-core/xerial-core-2.0.1.ebuild
deleted file mode 100644
index edaab8c4a833..000000000000
--- a/dev-java/xerial-core/xerial-core-2.0.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="An open-source DBMS for XML/JSON/Relational data"
-HOMEPAGE="https://code.google.com/p/xerial/"
-SRC_URI="https://dev.gentoo.org/~ercpe/distfiles/${CATEGORY}/${PN}/${P}.tar.bz2"
-
-LICENSE="Apache-2.0"
-
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-DEPEND="
- >=virtual/jdk-1.6
- test? (
- dev-java/junit:4
- )"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_TEST_GENTOO_CLASSPATH="junit-4"
-EANT_TEST_ANT_TASKS="ant-junit"
-
-java_prepare() {
- cp "${FILESDIR}"/${PV}-build.xml "${S}"/build.xml || die
-}
-
-src_install() {
- java-pkg_newjar "${S}/target/${P}.jar" "${PN}.jar"
-
- use source && java-pkg_dosrc "${S}"/src/main/java/*
- use doc && java-pkg_dojavadoc "${S}"/target/site/apidocs
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/xerial-core/xerial-core-2.1.ebuild b/dev-java/xerial-core/xerial-core-2.1.ebuild
new file mode 100644
index 000000000000..48f4a0b0208e
--- /dev/null
+++ b/dev-java/xerial-core/xerial-core-2.1.ebuild
@@ -0,0 +1,53 @@
+# 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://gentoo/distfiles/4f/xerial-core-2.0.1.tar.bz2 --slot 0 --keywords "~amd64 ~x86" --ebuild xerial-core-2.0.1-r1.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.xerial:xerial-core:2.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core library of the Xerial project."
+HOMEPAGE="https://xerial.org"
+SRC_URI="https://github.com/xerial/xerial-java/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+DOCS=( NOTICE README )
+
+S="${WORKDIR}/xerial-java-${PV}/xerial-core"
+
+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_test() {
+ # 1) listResoucesInJAR(org.xerial.util.FileResourceTest)
+ # java.lang.AssertionError: at least one resource must be found in org.junit.runner
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 11; then
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/listResoucesInJAR/i @Ignore' \
+ -i src/test/java/org/xerial/util/FileResourceTest.java || die
+ sed \
+ -e '/import org.junit.Test/a import org.junit.Ignore;' \
+ -e '/addPackage/i @Ignore' \
+ -e '/recursive/i @Ignore' \
+ -i src/test/java/org/xerial/util/opt/CommandLauncherTest.java || die
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/xjavac/Manifest b/dev-java/xjavac/Manifest
deleted file mode 100644
index 5df3da88841d..000000000000
--- a/dev-java/xjavac/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xjavac-2.4.0.tar.gz 2472 BLAKE2B 4693c2fa74a2951909ff6dc55638e7f3de19fecf82bcfeba0abfeaff82f941ea9d02dde3de969e850da9c5bfc98684b0a34be391d6db6c3fe12de0a734137afd SHA512 6a12c605f6f455f20981214d1ce8ed752070ae2b268e9279692a3b05921c84857636055d9c4d7b1de92bafbaa4b528f36983dc2eca0ca883a7fa340320e503a0
diff --git a/dev-java/xjavac/metadata.xml b/dev-java/xjavac/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/xjavac/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/xjavac/xjavac-2.4.0.ebuild b/dev-java/xjavac/xjavac-2.4.0.ebuild
deleted file mode 100644
index 552ee4b12b4d..000000000000
--- a/dev-java/xjavac/xjavac-2.4.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Xerses Java Parser"
-HOMEPAGE="https://xerces.apache.org/xerces-j"
-SRC_URI="https://dev.gentoo.org/~monsieurp/packages/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-CDEPEND="dev-java/ant-core:0"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.7"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.7"
-
-JAVA_GENTOO_CLASSPATH="ant-core"
diff --git a/dev-java/xml-commons-external/Manifest b/dev-java/xml-commons-external/Manifest
index 40d92c28cc2f..9ccef1795836 100644
--- a/dev-java/xml-commons-external/Manifest
+++ b/dev-java/xml-commons-external/Manifest
@@ -1,2 +1 @@
-DIST xml-commons-external-1.3.04.tar.bz2 659665 BLAKE2B b7f51fab7162b905142c5256f1d03d519b4ab387edf8b4c3d738ac138cf6ad71f29fd568c99423f840be6eb02bb50e89cfab3c729d2d5071d8a66e30836d8f5e SHA512 8bc71a0850e751ae4a5057833d57b2235734facbae43c733b0a9d86e5be99af016b737f12f5566c736f71374a709dee9954089db8fbeff4fb4cbb236a9fd6abb
DIST xml-commons-external-1.4.01.jar 656529 BLAKE2B c51ca760c23759d4f4ad11fcb44caa1cb0bcb2785d9095ed56dba9b0d5fe57370a9d9aaeed5a8e0c1fa67918237ce693590bac791200add2e85155ab87ffe40b SHA512 f00773eec613453d0e1b7b0857b01c51d1926079f38e172953c4ef0350f063439acc8b5967f947c8d15a73e5d53e8887c3bf30122d5f7c553bcef349e5a8cb9a
diff --git a/dev-java/xml-commons-external/metadata.xml b/dev-java/xml-commons-external/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/xml-commons-external/metadata.xml
+++ b/dev-java/xml-commons-external/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xml-commons-external/xml-commons-external-1.3.04-r1.ebuild b/dev-java/xml-commons-external/xml-commons-external-1.3.04-r1.ebuild
deleted file mode 100644
index e4bb6a5f39e4..000000000000
--- a/dev-java/xml-commons-external/xml-commons-external-1.3.04-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Externally-defined set of standard interfaces, namely DOM, SAX, and JAXP"
-HOMEPAGE="https://xml.apache.org/commons/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
-# upstream source tar.gz is missing build.xml and other stuff, so we get it like this
-# svn export http://svn.apache.org/repos/asf/xml/commons/tags/xml-commons-external-1_3_04/java/external/ xml-commons-external-1.3.04
-# tar cjf xml-commons-external-1.3.04.tar.bz2 xml-commons-external-1.3.04
-
-LICENSE="Apache-2.0"
-SLOT="1.3"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc source"
-
-DEPEND="
- >=virtual/jdk-1.8"
-
-RDEPEND="
- >=virtual/jre-1.8"
-
-src_install() {
- java-pkg_dojar build/xml-apis.jar build/xml-apis-ext.jar
-
- dodoc NOTICE README.*
-
- if use doc; then
- java-pkg_dojavadoc build/docs/javadoc
- java-pkg_dohtml -r build/docs/dom
- fi
- use source && java-pkg_dosrc src/javax src/org
-}
diff --git a/dev-java/xml-commons-external/xml-commons-external-1.4.01-r1.ebuild b/dev-java/xml-commons-external/xml-commons-external-1.4.01-r1.ebuild
deleted file mode 100644
index 6be447012ce9..000000000000
--- a/dev-java/xml-commons-external/xml-commons-external-1.4.01-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="xml-apis"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="Externally-defined set of standard interfaces, namely DOM, SAX, and JAXP"
-HOMEPAGE="https://xerces.apache.org/xml-commons/components/external/"
-SRC_URI="https://repo1.maven.org/maven2/${MY_PN}/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-2.0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="1.4"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
diff --git a/dev-java/xml-commons-external/xml-commons-external-1.4.01-r2.ebuild b/dev-java/xml-commons-external/xml-commons-external-1.4.01-r2.ebuild
new file mode 100644
index 000000000000..12c8731a7615
--- /dev/null
+++ b/dev-java/xml-commons-external/xml-commons-external-1.4.01-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="xml-apis:xml-apis:1.4.01"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_PN="xml-apis"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Externally-defined set of standard interfaces, namely DOM, SAX, and JAXP"
+HOMEPAGE="https://xerces.apache.org/xml-commons/components/external/"
+SRC_URI="https://repo1.maven.org/maven2/${MY_PN}/${MY_PN}/${PV}/${MY_P}-sources.jar -> ${P}.jar"
+
+LICENSE="Apache-2.0"
+SLOT="1.4"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+BDEPEND="source? ( app-arch/zip )"
+
+JAVADOC_ARGS="-source 8"
diff --git a/dev-java/xml-commons-resolver/metadata.xml b/dev-java/xml-commons-resolver/metadata.xml
index 2444066aa02b..6021501589e0 100644
--- a/dev-java/xml-commons-resolver/metadata.xml
+++ b/dev-java/xml-commons-resolver/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r1.ebuild b/dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r1.ebuild
deleted file mode 100644
index 4ffb71840a9b..000000000000
--- a/dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An XML Entity and URI Resolver"
-HOMEPAGE="http://xml.apache.org/commons/"
-SRC_URI="mirror://apache/xml/commons/${P}.tar.gz"
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
-
-DOCS=( KEYS LICENSE.resolver.txt NOTICE-resolver.txt )
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-src_prepare() {
- default
- java-pkg_clean
- rm -rv src/org/apache/xml/resolver/tests || die
-}
-
-src_install() {
- java-pkg-simple_src_install
- einstalldocs
-}
diff --git a/dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r3.ebuild b/dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r3.ebuild
new file mode 100644
index 000000000000..e2e38c05f1e9
--- /dev/null
+++ b/dev-java/xml-commons-resolver/xml-commons-resolver-1.2-r3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="xml-resolver:xml-resolver:1.2"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An XML Entity and URI Resolver"
+HOMEPAGE="https://xerces.apache.org/xml-commons/components/resolver/"
+SRC_URI="mirror://apache/xerces/xml-commons/${P}.tar.gz"
+
+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:*"
+
+DOCS=( KEYS LICENSE.resolver.txt NOTICE-resolver.txt )
+HTML_DOCS=( docs/resolver{,-release-notes}.html )
+
+S="${WORKDIR}/${P}"
+
+JAVA_SRC_DIR="src"
+JAVA_RESOURCE_DIRS="resources"
+JAVA_MAIN_CLASS="org.apache.xml.resolver.apps.resolver"
+
+src_prepare() {
+ default
+ java-pkg_clean
+ rm -rv src/org/apache/xml/resolver/tests || die
+ mkdir -p resources/org/apache/xml/resolver || die
+ mv etc resources/org/apache/xml/resolver || die
+}
+
+src_install() {
+ default
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/xml-commons/Manifest b/dev-java/xml-commons/Manifest
deleted file mode 100644
index dfbeceaf8f6b..000000000000
--- a/dev-java/xml-commons/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xml-commons-1.4.01.tar.gz 358779 BLAKE2B 8e1f42b25279eb2ed8bc33be5ac421b91e256cc1ef170b91f38800417502cb546598fb4c3d4619ab7b3637a9b7173d2d5fefd39af12f75c7b10cfb219396cda7 SHA512 9e8f77f7dc65a492548fa2313b49855ad0880fe663acdac865a1b235ea3bc0ba347c4fad3ca16f0c92a60df42a0a802a74525b56ea58dc575cd2d94013561868
diff --git a/dev-java/xml-commons/metadata.xml b/dev-java/xml-commons/metadata.xml
deleted file mode 100644
index aa326dec0d1e..000000000000
--- a/dev-java/xml-commons/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- These are some of the components that are provided by the Apache XML Commons
- project.
-
- * Resolver - An XML Entity and URI Resolver donated by Norman Walsh.
- * Which - A simple environment checking utility for Apache projects by Shane Curcuru
- * External Interfaces (xml-apis) - An Apache-hosted set of externally-defined standards interfaces, namely DOM, SAX, and JAXP.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/xml-commons/xml-commons-1.4.01.ebuild b/dev-java/xml-commons/xml-commons-1.4.01.ebuild
deleted file mode 100644
index 028c71cf67d2..000000000000
--- a/dev-java/xml-commons/xml-commons-1.4.01.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-MY_PN="${PN}-external"
-MY_P="${MY_PN}-${PV}"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Apache XML Commons"
-HOMEPAGE="http://xml.apache.org/commons/"
-SRC_URI="mirror://apache/xerces/${PN}/source/${MY_P}-src.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-1.1 public-domain W3C-document W3C"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-JAVA_SRC_DIR=( "org" "javax" )
diff --git a/dev-java/xml-security/Manifest b/dev-java/xml-security/Manifest
deleted file mode 100644
index 3d13ae007c69..000000000000
--- a/dev-java/xml-security/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xml-security-bin-1_5_7.zip 9164667 BLAKE2B ea0756f745c27767634bafaae1b3584ba6843cd9d6fe4d9c7cb080058015a576dc8a3f117d32ed3b139a42373057d7dc4ad33f0e25db4abbbaf140a0cc115e01 SHA512 ae8e538fe7c90013a89d139358efc06d8921b1b0050a686dcacd123f5a8a8f100be163e88fef59998ea0ba27ebe9855f06d1f33b1ac92fa3f31acbce9934bd36
diff --git a/dev-java/xml-security/files/1.5.7-build.xml.patch b/dev-java/xml-security/files/1.5.7-build.xml.patch
deleted file mode 100644
index 294c059574d6..000000000000
--- a/dev-java/xml-security/files/1.5.7-build.xml.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/xml-security-1_5_5/build.xml b/xml-security-1_5_5/build.xml
-index d959d67..d91f98e 100644
---- a/xml-security-1_5_5/build.xml
-+++ b/xml-security-1_5_5/build.xml
-@@ -668,7 +668,7 @@
- </target>
-
- <target name="build.jar"
-- depends="manifest,build.src,build.test,build.samples">
-+ depends="manifest,build.src">
-
- <!-- Main Library -->
- <jar basedir="${dir.build.bin}"
-@@ -678,24 +678,6 @@
- manifest="${jar.manifest}">
- <metainf file="${dir.manifest}/*.txt"/>
- </jar>
--
-- <!-- Samples -->
-- <jar basedir="${dir.build.samples}"
-- excludes="org/apache/xml/security/temp/**"
-- includes="org/apache/**, javax/xml/crypto/**"
-- destfile="${jar.samples}"
-- manifest="${jar.manifest}">
-- <metainf file="${dir.manifest}/*.txt"/>
-- </jar>
--
-- <!-- Tests -->
-- <jar basedir="${dir.build.test}"
-- excludes="org/apache/xml/security/temp/**"
-- includes="org/apache/**, javax/xml/crypto/**"
-- destfile="${jar.tests}"
-- manifest="${jar.manifest}">
-- <metainf file="${dir.manifest}/*.txt"/>
-- </jar>
- </target>
-
- <target name="build.src.jar"
diff --git a/dev-java/xml-security/metadata.xml b/dev-java/xml-security/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/xml-security/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/xml-security/xml-security-1.5.7-r1.ebuild b/dev-java/xml-security/xml-security-1.5.7-r1.ebuild
deleted file mode 100644
index 0754ce115bfb..000000000000
--- a/dev-java/xml-security/xml-security-1.5.7-r1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-MY_PV=${PV//./_}
-DESCRIPTION="An implementation of the primary security standards for XML"
-HOMEPAGE="http://santuario.apache.org/"
-SRC_URI="mirror://apache/santuario/java-library/${MY_PV}/${PN}-bin-${MY_PV}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-IUSE=""
-
-CDEPEND="
- dev-java/commons-logging:0
- dev-java/xalan:0
-"
-
-RDEPEND="${CDEPEND}
- >=virtual/jre-1.6"
-DEPEND="${CDEPEND}
- app-arch/unzip
- test? (
- dev-java/ant-junit:0
- dev-java/junit:4
- )
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-JAVA_ANT_REWRITE_CLASSPATH="yes"
-EANT_GENTOO_CLASSPATH="commons-logging,xalan"
-EANT_GENTOO_CLASSPATH_EXTRA="${S}"/build/xmlsec-${PV}.jar
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4"
-EANT_TEST_TARGET="build.test test"
-WANT_ANT_TASKS="ant-junit"
-
-# Buggy tests.
-JAVA_RM_FILES=(
- src/test/java/org/apache/xml/security/test/encryption/BaltimoreEncTest.java
- src/test/java/org/apache/xml/security/test/encryption/XMLCipherTest.java
- src/test/java/org/apache/xml/security/test/utils/OldApiTest.java
-)
-
-java_prepare() {
- epatch "${FILESDIR}/${PV}-build.xml.patch"
- find "${S}" -name "*.jar" -delete || die
-}
-
-src_install() {
- java-pkg_newjar "${S}"/build/xmlsec-${PV}.jar ${PN}.jar
-
- use source && java-pkg_dosrc "${S}"/src/main/java/*
- use doc && java-pkg_dojavadoc "${S}"/build/docs/html/javadoc
-}
-
-src_test() {
- java-pkg-2_src_test
-}
diff --git a/dev-java/xml-writer/Manifest b/dev-java/xml-writer/Manifest
deleted file mode 100644
index f53218b1116c..000000000000
--- a/dev-java/xml-writer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xml-writer-0.2.zip 51666 BLAKE2B 7b2655f18878ab2c13e42538b07faf463c581dae10fda416bf0548d7baaa13ae457c2a7636b54297826b2c4622aa9d9770886ccf512f7b8e337b288a07cd1928 SHA512 6097d3515b0b6b06710c0913dbd378b2008a485d28000f7397151464747f0156f7e427efd33a8d0f43494b6c3d80470207fcbc742b338f3adec7d4d0f3a2b6d5
diff --git a/dev-java/xml-writer/metadata.xml b/dev-java/xml-writer/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/xml-writer/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/xml-writer/xml-writer-0.2-r1.ebuild b/dev-java/xml-writer/xml-writer-0.2-r1.ebuild
deleted file mode 100644
index 5d086d4ac2f1..000000000000
--- a/dev-java/xml-writer/xml-writer-0.2-r1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="A simple XML Writer"
-HOMEPAGE="http://www.megginson.com/downloads/"
-SRC_URI="http://www.megginson.com/downloads/${P}.zip"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR="src"
-
-java_prepare() {
- java-pkg_clean
-}
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples *.java sample.xml
-}
diff --git a/dev-java/xml-xmlbeans/Manifest b/dev-java/xml-xmlbeans/Manifest
deleted file mode 100644
index 27b8c478340e..000000000000
--- a/dev-java/xml-xmlbeans/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xmlbeans-2.6.0-src.zip 9005098 BLAKE2B e8fb7b22eab718245a24856893268dbc1a09b3228596f274e470ea55aca4c0d01c05ef8e3cbd2ddbdedfd16c66991ee5f8c4001cb68ff9876d5749f47d640006 SHA512 162dc3d283ebf9f7fae823a2ae8d835b708c2cbeed48349c85996e60b2b8dfe0e51b17bd37eb34327c6452b2c0fc7df8a4902816b145993e36ca614ceb43b2b7
diff --git a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-SchemaCompiler.java.patch b/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-SchemaCompiler.java.patch
deleted file mode 100644
index 9f2958bc243a..000000000000
--- a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-SchemaCompiler.java.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- src/xmlcomp/org/apache/xmlbeans/impl/tool/SchemaCompiler.java.orig 2015-11-11 15:58:46.578486000 +0000
-+++ src/xmlcomp/org/apache/xmlbeans/impl/tool/SchemaCompiler.java 2015-11-11 15:59:05.351486000 +0000
-@@ -217,8 +217,9 @@
- boolean debug = (cl.getOpt("debug") != null);
-
- String allowmdef = cl.getOpt("allowmdef");
-- Set mdefNamespaces = (allowmdef == null ? Collections.EMPTY_SET :
-- new HashSet(Arrays.asList(XmlListImpl.split_list(allowmdef))));
-+ Set mdefNamespaces = Collections.EMPTY_SET;
-+ // Set mdefNamespaces = (allowmdef == null ? Collections.EMPTY_SET :
-+ // new HashSet(Arrays.asList(XmlListImpl.split_list(allowmdef))));
-
- List extensions = new ArrayList();
- if (cl.getOpt("extension") != null) {
diff --git a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-jam.patch b/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-jam.patch
deleted file mode 100644
index 8081f71775f6..000000000000
--- a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-jam.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-diff -Nru /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/BindingConfigImpl.java src/xmlconfig/org/apache/xmlbeans/impl/config/BindingConfigImpl.java
---- /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/BindingConfigImpl.java 2010-04-14 08:30:34.000000000 +0300
-+++ src/xmlconfig/org/apache/xmlbeans/impl/config/BindingConfigImpl.java 2012-09-05 23:03:48.617016181 +0300
-@@ -27,10 +27,10 @@
- import org.apache.xmlbeans.XmlError;
- import org.apache.xmlbeans.InterfaceExtension;
- import org.apache.xmlbeans.PrePostExtension;
--import org.apache.xmlbeans.impl.jam.JamClassLoader;
--import org.apache.xmlbeans.impl.jam.JamService;
--import org.apache.xmlbeans.impl.jam.JamServiceFactory;
--import org.apache.xmlbeans.impl.jam.JamServiceParams;
-+import org.codehaus.jam.JamClassLoader;
-+import org.codehaus.jam.JamService;
-+import org.codehaus.jam.JamServiceFactory;
-+import org.codehaus.jam.JamServiceParams;
- import org.apache.xmlbeans.impl.schema.StscState;
-
- import javax.xml.namespace.QName;
-diff -Nru /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/InterfaceExtensionImpl.java src/xmlconfig/org/apache/xmlbeans/impl/config/InterfaceExtensionImpl.java
---- /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/InterfaceExtensionImpl.java 2010-04-14 08:30:34.000000000 +0300
-+++ src/xmlconfig/org/apache/xmlbeans/impl/config/InterfaceExtensionImpl.java 2012-09-05 23:09:00.320097542 +0300
-@@ -18,10 +18,10 @@
- import org.apache.xmlbeans.impl.xb.xmlconfig.Extensionconfig;
- import org.apache.xmlbeans.InterfaceExtension;
- import org.apache.xmlbeans.XmlObject;
--import org.apache.xmlbeans.impl.jam.JMethod;
--import org.apache.xmlbeans.impl.jam.JClass;
--import org.apache.xmlbeans.impl.jam.JParameter;
--import org.apache.xmlbeans.impl.jam.JamClassLoader;
-+import org.codehaus.jam.JMethod;
-+import org.codehaus.jam.JClass;
-+import org.codehaus.jam.JParameter;
-+import org.codehaus.jam.JamClassLoader;
-
- public class InterfaceExtensionImpl implements InterfaceExtension
- {
-diff -Nru /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/PrePostExtensionImpl.java src/xmlconfig/org/apache/xmlbeans/impl/config/PrePostExtensionImpl.java
---- /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/PrePostExtensionImpl.java 2010-04-14 08:30:34.000000000 +0300
-+++ src/xmlconfig/org/apache/xmlbeans/impl/config/PrePostExtensionImpl.java 2012-09-05 23:06:48.081760004 +0300
-@@ -17,9 +17,9 @@
-
- import org.apache.xmlbeans.XmlObject;
- import org.apache.xmlbeans.PrePostExtension;
--import org.apache.xmlbeans.impl.jam.JamClassLoader;
--import org.apache.xmlbeans.impl.jam.JClass;
--import org.apache.xmlbeans.impl.jam.JMethod;
-+import org.codehaus.jam.JamClassLoader;
-+import org.codehaus.jam.JClass;
-+import org.codehaus.jam.JMethod;
- import org.apache.xmlbeans.impl.xb.xmlconfig.Extensionconfig;
-
-
-diff -Nru /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/UserTypeImpl.java src/xmlconfig/org/apache/xmlbeans/impl/config/UserTypeImpl.java
---- /tmp/xmlbeans-2.6.0.orig/src/xmlconfig/org/apache/xmlbeans/impl/config/UserTypeImpl.java 2010-04-14 08:30:34.000000000 +0300
-+++ src/xmlconfig/org/apache/xmlbeans/impl/config/UserTypeImpl.java 2012-09-05 23:06:33.710940667 +0300
-@@ -3,7 +3,7 @@
- import javax.xml.namespace.QName;
-
- import org.apache.xmlbeans.UserType;
--import org.apache.xmlbeans.impl.jam.JamClassLoader;
-+import org.codehaus.jam.JamClassLoader;
- import org.apache.xmlbeans.impl.xb.xmlconfig.Usertypeconfig;
-
- public class UserTypeImpl implements UserType
diff --git a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-piccolo.patch b/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-piccolo.patch
deleted file mode 100644
index 866dc0f6ed53..000000000000
--- a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-piccolo.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -ur /tmp/xmlbeans-2.6.0.orig/src/store/org/apache/xmlbeans/impl/store/Locale.java src/store/org/apache/xmlbeans/impl/store/Locale.java
---- /tmp/xmlbeans-2.6.0.orig/src/store/org/apache/xmlbeans/impl/store/Locale.java 2012-09-05 14:31:47.743396340 +0300
-+++ src/store/org/apache/xmlbeans/impl/store/Locale.java 2012-09-05 14:35:31.527582989 +0300
-@@ -106,8 +106,8 @@
- import org.apache.xmlbeans.impl.values.TypeStoreUser;
- import org.apache.xmlbeans.impl.values.TypeStoreUserFactory;
-
--import org.apache.xmlbeans.impl.piccolo.xml.Piccolo;
--import org.apache.xmlbeans.impl.piccolo.io.FileFormatException;
-+import com.bluecast.xml.Piccolo;
-+import com.bluecast.io.FileFormatException;
-
- public final class Locale
- implements DOMImplementation, SaajCallback, XmlLocale
diff --git a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-remove-jamsupport.patch b/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-remove-jamsupport.patch
deleted file mode 100644
index 23467d2b24a6..000000000000
--- a/dev-java/xml-xmlbeans/files/xml-xmlbeans-2.6.0-remove-jamsupport.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/build.xml
-+++ b/build.xml
-@@ -433,7 +433,6 @@
- <jar jarfile="build/private/xmlbeans-${version.base}${version.rc}-sources.jar" index="false">
- <fileset dir="src/common" includes="**/*.java"/>
- <fileset dir="src/configschema" includes="**/*.java"/>
-- <fileset dir="src/jamsupport" includes="**/*.java"/>
- <fileset dir="src/marshal" includes="**/*.java"/>
- <fileset dir="src/repackage" includes="**/*.java"/>
- <fileset dir="src/saaj_api" includes="**/*.java"/>
-@@ -488,7 +487,7 @@
- store.classes, saaj_api.classes,
- marshal.classes, xpath.classes, oldxbean.jar, xsdschema.classes,
- xmlinputstream.classes, resolver.jar, xbean_xpath.jar,
-- piccolo.classes, tools.classes, jamsupport.classes">
-+ piccolo.classes, tools.classes">
- <jar jarfile="build/lib/xbean.jar" index="true">
- <fileset dir="build/classes/xmlpublic"
- excludes="javax/**"/>
-@@ -711,17 +710,6 @@
- </classpath>
- </javac>
- </target>
--
--
-- <!-- support for running JAM under JDK1.5 ========================= -->
--
-- <target name="jamsupport.classes" depends="dirs,jam.classes">
-- <javac srcdir="src/jamsupport" destdir="build/classes/jam" source="${javac.source}" target="${javac.target}" debug="on">
-- <classpath id="jamsupport.compile.path">
-- <pathelement location="build/classes/jam"/>
-- </classpath>
-- </javac>
-- </target>
-
- <!-- saaj_api target ============================================== -->
-
diff --git a/dev-java/xml-xmlbeans/metadata.xml b/dev-java/xml-xmlbeans/metadata.xml
deleted file mode 100644
index 16bd04df50d9..000000000000
--- a/dev-java/xml-xmlbeans/metadata.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
-</maintainer>
-
-<longdescription>
-
-XMLBeans is a tool that allows you to access the full power of XML in a Java
-friendly way. It is an XML-Java binding tool. The idea is that you can take
-advantage the richness and features of XML and XML Schema and have these
-features mapped as naturally as possible to the equivalent Java language and
-typing constructs. XMLBeans uses XML Schema to compile Java interfaces and
-classes that you can then use to access and modify XML instance data. Using
-XMLBeans is similar to using any other Java interface/class, you will see things
-like getFoo or setFoo just as you would expect when working with Java. While a
-major use of XMLBeans is to access your XML instance data with strongly typed
-Java classes there are also API's that allow you access to the full XML infoset
-(XMLBeans keeps full XML Infoset fidelity) as well as to allow you to reflect
-into the XML schema itself through an XML Schema Object model.
-
-</longdescription>
-</pkgmetadata>
diff --git a/dev-java/xml-xmlbeans/xml-xmlbeans-2.6.0.ebuild b/dev-java/xml-xmlbeans/xml-xmlbeans-2.6.0.ebuild
deleted file mode 100644
index 9c2f973e212d..000000000000
--- a/dev-java/xml-xmlbeans/xml-xmlbeans-2.6.0.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-ant-2
-
-MY_P="xmlbeans-${PV}"
-
-DESCRIPTION="An XML-Java binding tool"
-HOMEPAGE="https://xmlbeans.apache.org/"
-SRC_URI="https://archive.apache.org/dist/xmlbeans/source/${MY_P}-src.zip"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-CDEPEND="
- dev-java/saxon:9
- dev-java/jsr173:0
- dev-java/annogen:0
- dev-java/piccolo:0
- dev-java/ant-core:0
- dev-java/xml-commons-resolver:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- app-arch/unzip
- >=virtual/jdk-1.6"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${FILESDIR}"/${P}-remove-jamsupport.patch
- "${FILESDIR}"/${P}-piccolo.patch
- "${FILESDIR}"/${P}-jam.patch
- "${FILESDIR}"/${P}-SchemaCompiler.java.patch
-)
-
-java_prepare() {
- epatch "${PATCHES[@]}"
-
- # Preserve the old xbean jar, which is required for bootstrapping schemas.
- mv external/lib/oldxbean.jar "${T}"/ || die
-
- # Remove bundled binary files.
- find . -name '*.jar' -exec rm -v {} + || die
-
- pushd external/lib > /dev/null || die
-
- find . -iname '*.zip' -exec rm -v {} + || die
-
- # Symlink the dependencies.
- java-pkg_jar-from jsr173{,.jar,_1.0_api_bundle.jar}
- java-pkg_jar-from jsr173{,.jar,_1.0_api.jar}
-
- mkdir xml-commons-resolver-1.1 || die
- java-pkg_jar-from xml-commons-resolver{,.jar} xcresolver.zip
- java-pkg_jar-from xml-commons-resolver{,.jar,-1.1/resolver.jar}
-
- # Put back the preserved old xbean jar.
- mv "${T}"/oldxbean.jar . || die
-
- popd > /dev/null || die
-
- # Create empty directories to let the build pass.
- mkdir -p build/classes/{jam,piccolo} || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-
-EANT_GENTOO_CLASSPATH="
- annogen
- piccolo
- ant-core
- saxon-9
-"
-
-EANT_BUILD_TARGET="deploy"
-EANT_DOC_TARGET="docs"
-
-EANT_EXTRA_ARGS="-Dpiccolo.classes.notRequired=true"
-EANT_EXTRA_ARGS+=" -Djam.classes.notRequired=true"
-EANT_EXTRA_ARGS+=" -Dsaxon9.jar.exists=true"
-
-src_install() {
- java-pkg_dojar build/lib/xbean*.jar
-
- dodoc NOTICE.txt README.txt
- if use doc; then
- java-pkg_dojavadoc build/docs/reference
- java-pkg_dohtml -r docs
- fi
-
- use source && java-pkg_dosrc src/*
-}
-
-pkg_postinst() {
- ewarn "This package uses an old binary xbean to bootstrap its schemas."
- ewarn "If you do not trust the binary part of this build, please unmerge."
-}
diff --git a/dev-java/xmldb/Manifest b/dev-java/xmldb/Manifest
deleted file mode 100644
index 8a9b7d739a32..000000000000
--- a/dev-java/xmldb/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xmldb-api-11112001.tar.gz 36553 BLAKE2B 458c0d043e47580776dc9348fc650c135d14c316ca4f5722d30c753e222e5b29cc524d962daa4729bc9cfbbe0adbd5519735e6333811bf202575d375cd3971ec SHA512 20123801a57b5350ade4dc82aba5ba2492cfbbe2e0389aaba4b73cdd3a8d07981a895ec2318885358102e48644cdaa30a18996ab9315891e506506fbc25658a2
diff --git a/dev-java/xmldb/files/xmldb-20011111-enum.patch b/dev-java/xmldb/files/xmldb-20011111-enum.patch
deleted file mode 100644
index 33a4b22b179f..000000000000
--- a/dev-java/xmldb/files/xmldb-20011111-enum.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/org/xmldb/api/sdk/modules/SetContentHandler.java 2017-03-17 21:49:05.540172602 +0000
-+++ b/org/xmldb/api/sdk/modules/SetContentHandler.java 2017-03-17 21:49:22.860172942 +0000
-@@ -168,9 +168,9 @@
- }
- }
-
-- Enumeration enum = namespaces.keys();
-- while ( enum.hasMoreElements() ) {
-- String key = (String) enum.nextElement();
-+ Enumeration myEnum = namespaces.keys();
-+ while ( myEnum.hasMoreElements() ) {
-+ String key = (String) myEnum.nextElement();
- newContent.append(" xmlns");
- if (key.length() > 0) {
- newContent.append(":");
diff --git a/dev-java/xmldb/files/xmldb-20011111-unreachable.patch b/dev-java/xmldb/files/xmldb-20011111-unreachable.patch
deleted file mode 100644
index a0476158c550..000000000000
--- a/dev-java/xmldb/files/xmldb-20011111-unreachable.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/org/xmldb/api/reference/modules/XPathQueryServiceImpl.java 2002-01-30 04:46:43.000000000 -0500
-+++ b/org/xmldb/api/reference/modules/XPathQueryServiceImpl.java 2005-06-26 21:37:59.000000000 -0400
-@@ -133,7 +133,7 @@
- }
- }
-
-- return result;;
-+ return result;
- }
- }
-
diff --git a/dev-java/xmldb/metadata.xml b/dev-java/xmldb/metadata.xml
deleted file mode 100644
index eacb98ec28e9..000000000000
--- a/dev-java/xmldb/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
-XML:DB provides a community for collaborative development of specifications
-for XML databases and data manipulation technologies. Along with each
-specification an open source reference implementation will be developed to
-validate the ideas.
-</longdescription>
- <upstream>
- <remote-id type="sourceforge">xmldb-org</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-java/xmldb/xmldb-20011111-r2.ebuild b/dev-java/xmldb/xmldb-20011111-r2.ebuild
deleted file mode 100644
index f7d209a970b1..000000000000
--- a/dev-java/xmldb/xmldb-20011111-r2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-MY_PN="${PN}-api"
-MY_PV="11112001"
-MY_P="${MY_PN}-${MY_PV}"
-
-DESCRIPTION="XML:DB Java library"
-HOMEPAGE="https://sourceforge.net/projects/xmldb-org/"
-SRC_URI="mirror://sourceforge/xmldb-org/${MY_P}.tar.gz"
-
-LICENSE="Apache-1.1"
-SLOT="0"
-KEYWORDS="amd64 ~arm ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-
-CDEPEND="
- dev-java/xalan:0
- dev-java/xerces:2"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-S="${WORKDIR}/${PN}"
-
-JAVA_GENTOO_CLASSPATH="
- xalan
- xerces-2
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-enum.patch"
- "${FILESDIR}/${P}-unreachable.patch"
-)
-
-src_prepare() {
- default
- java-pkg_clean
-
- # Must hard-depend on dev-java/junit otherwise.
- rm -rv org/xmldb/api/tests || die
-}
diff --git a/dev-java/xmlgraphics-commons/Manifest b/dev-java/xmlgraphics-commons/Manifest
index 6deafdedb955..2abe373cdc3b 100644
--- a/dev-java/xmlgraphics-commons/Manifest
+++ b/dev-java/xmlgraphics-commons/Manifest
@@ -1 +1,2 @@
-DIST xmlgraphics-commons-2.0.1-src.tar.gz 2716982 BLAKE2B 52d878455886f85a04ec27d04568a6a0a955860978243d6840f61083fd13597a2f066cc9821f2fced27245c98c6cb6e09caa3ad200d45069f640166a7c772cbd SHA512 fca5c593ceec18b040a0a57b74ba5377d5e070030f48b7835285986382795b19072bdf6320fd7e37182e4127883b795249ee1cb4255bcdfb1b00da1cf6032018
+DIST xmlgraphics-commons-2.9-src.tar.gz 2236891 BLAKE2B 5071418eb2773ade7d48faa00a45834ee392603adb7844ce7b7ffc6ab41f0d655ce29265fc56326093b06b7e2cb1b1f4b95ab5e0f339c05cca4e0eb71d59f368 SHA512 896a5fe41277783021075df0de1aa109a7f05416af6b0141301a2452197d85df0daef28f5c2a71802644cbff3bfe79579a1544000a4c1b5cec4c211d8effd521
+DIST xmlgraphics-commons-2.9-src.tar.gz.asc 833 BLAKE2B e85533d2509dc49f42346e373a416c8215600ff84a393ca6de545fce6e73d704a8146a257522e66a254248ebdbc6770e0040658223582184e0d8fd71f95bd941 SHA512 e52f02efba535192455b47a4adbb903426e51163083297eb7be83146e2c7ead913f4c0a51345681123afa64fbb3bffcea982a81fd2b92be2aa4c135082ed8e17
diff --git a/dev-java/xmlgraphics-commons/metadata.xml b/dev-java/xmlgraphics-commons/metadata.xml
index 2444066aa02b..4dcc12913cbb 100644
--- a/dev-java/xmlgraphics-commons/metadata.xml
+++ b/dev-java/xmlgraphics-commons/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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/xmlgraphics-commons</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/xmlgraphics-commons/xmlgraphics-commons-2.0.1.ebuild b/dev-java/xmlgraphics-commons/xmlgraphics-commons-2.0.1.ebuild
deleted file mode 100644
index a7faa6d725e0..000000000000
--- a/dev-java/xmlgraphics-commons/xmlgraphics-commons-2.0.1.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc examples source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="A library of several reusable components used by Apache Batik and Apache FOP"
-HOMEPAGE="https://xmlgraphics.apache.org/commons/index.html"
-SRC_URI="mirror://apache/xmlgraphics/commons/source/${P}-src.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="amd64 ~arm64 ppc64 x86"
-
-CDEPEND="dev-java/commons-io:1
- >=dev-java/commons-logging-1:0"
-
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/mockito:0
- dev-java/ant-junit:0
- dev-java/xml-commons-resolver:0
- )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-java_prepare() {
- find "${S}" -name '*.jar' -print -delete || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_BUILD_TARGET="jar-main"
-EANT_DOC_TARGET="javadocs"
-
-EANT_GENTOO_CLASSPATH="
- commons-io-1
- commons-logging
-"
-
-EANT_TEST_GENTOO_CLASSPATH="
- ${EANT_GENTOO_CLASSPATH}
- xml-commons-resolver
- mockito
-"
-
-EANT_TEST_TARGET="junit-basic"
-
-src_test() {
- EANT_ANT_TASKS="ant-junit" \
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_newjar build/${P}.jar
-
- use source && java-pkg_dosrc src/java/org
- use doc && java-pkg_dojavadoc build/javadocs
-}
diff --git a/dev-java/xmlgraphics-commons/xmlgraphics-commons-2.9.ebuild b/dev-java/xmlgraphics-commons/xmlgraphics-commons-2.9.ebuild
new file mode 100644
index 000000000000..2c0a190b489a
--- /dev/null
+++ b/dev-java/xmlgraphics-commons/xmlgraphics-commons-2.9.ebuild
@@ -0,0 +1,50 @@
+# 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:xmlgraphics-commons:2.9"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="XML Graphics Commons"
+HOMEPAGE="https://xmlgraphics.apache.org/commons/"
+SRC_URI="mirror://apache/xmlgraphics/commons/source/${P}-src.tar.gz
+ verify-sig? ( https://downloads.apache.org/xmlgraphics/commons/source/xmlgraphics-commons-${PV}-src.tar.gz.asc )"
+
+S="${WORKDIR}/${P}"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/commons-io:1
+ dev-java/commons-logging:0
+"
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ test? (
+ dev-java/mockito:4
+ dev-java/xml-commons-resolver:0
+ )"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-xmlgraphics-commons )"
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/xmlgraphics-commons.apache.org.asc"
+
+DOCS=( NOTICE README )
+
+JAVA_RESOURCE_DIRS="src/main/resources"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXTRA_ARGS=( -ea )
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito-4,xml-commons-resolver"
+# Some *.{png,tiff,txt,xmp} are misplaced in "src/test/java".
+JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" "src/test/java" )
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/xmlrpc/Manifest b/dev-java/xmlrpc/Manifest
deleted file mode 100644
index d7e64d87b85e..000000000000
--- a/dev-java/xmlrpc/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST apache-xmlrpc-3.1.3-src.tar.bz2 134788 BLAKE2B e37c588ddd7017d5dda9fb8241baafbff0e93a567bb45b7f102e712149b5b8f0bf75385ae68f2318a3696e3da7239a466afbc979a8a9842a60a7050031c2dcbc SHA512 6ace33922604b9ee48ce578a5988252ae288fe37c303f98757ab283854f97a8c21b01103fe87ca5eb21ce8c04ffcc5bbf2b0328726348bfb2d43cb29d7b5c5af
-DIST xmlrpc-3.1.3-build.tar.gz 3133 BLAKE2B e1cc23334ea561be3900dd70df6157a9818d02dd0b1e93fb63bc033218d51ce080130c2820abbff53d3bd24120ba814c4c099a295f705c01d8256a1d10d1e7dd SHA512 e1613c21a8145994f88ab68c3e64503f6217bb962249a08055f5c24257c0aa3adeb868710c65842c64e2a3e9e1d52dd614a30454be027eb1a939b6f0fc966b57
diff --git a/dev-java/xmlrpc/metadata.xml b/dev-java/xmlrpc/metadata.xml
deleted file mode 100644
index 535c71949d07..000000000000
--- a/dev-java/xmlrpc/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>java@gentoo.org</email>
- <name>Java</name>
- </maintainer>
- <longdescription>
- Apache XML-RPC (previously known as Helma XML-RPC) is a Java
- implementation of XML-RPC, a popular protocol that uses XML over
- HTTP to implement remote procedure calls.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-java/xmlrpc/xmlrpc-3.1.3.ebuild b/dev-java/xmlrpc/xmlrpc-3.1.3.ebuild
deleted file mode 100644
index ef2e39853971..000000000000
--- a/dev-java/xmlrpc/xmlrpc-3.1.3.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Apache XML-RPC is a Java implementation of XML-RPC"
-HOMEPAGE="http://ws.apache.org/xmlrpc/"
-SRC_URI="https://archive.apache.org/dist/ws/${PN}/sources/apache-${P}-src.tar.bz2
- https://dev.gentoo.org/~ercpe/distfiles/${CATEGORY}/${PN}/${P}-build.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 x86"
-
-CDEPEND="dev-java/commons-httpclient:3
- dev-java/commons-codec:0
- dev-java/ws-commons-util:0
- dev-java/commons-logging:0
- java-virtuals/servlet-api:2.4
- "
-DEPEND=">=virtual/jdk-1.6
- test? (
- dev-java/ant-junit:0
- dev-java/junit:4
- )
- ${CDEPEND}"
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-IUSE=""
-
-S="${WORKDIR}/apache-${P}-src"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="commons-httpclient-3,commons-codec,ws-commons-util"
-EANT_GENTOO_CLASSPATH+=",commons-logging" # client
-EANT_GENTOO_CLASSPATH+=",servlet-api-2.4" # server
-EANT_GENTOO_CLASSPATH_EXTRA="${S}/common/target/${PN}-common.jar"
-
-java_prepare() {
- # Doesn't work.
- rm -v \
- server/src/test/java/org/apache/xmlrpc/test/SerializerTest.java
-}
-
-EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH},junit-4,ant-junit"
-
-src_test() {
- java-pkg-2_src_test
-}
-
-src_install() {
- java-pkg_dojar common/target/xmlrpc-common.jar server/target/xmlrpc-server.jar client/target/xmlrpc-client.jar
-
- use doc && java-pkg_dojavadoc {common,server,client}/target/site/apidocs
- use source && java-pkg_dosrc {common,server,client}/src/main/java/*
-}
diff --git a/dev-java/xmlunit-assertj/Manifest b/dev-java/xmlunit-assertj/Manifest
new file mode 100644
index 000000000000..db73d721a992
--- /dev/null
+++ b/dev-java/xmlunit-assertj/Manifest
@@ -0,0 +1 @@
+DIST xmlunit-2.9.1-src.tar.gz 681721 BLAKE2B 8e8d40e79890d9bec2a3a72a9931cba1c832438e713eb290867a2d95d3ca5a8092327611998075cf1e0117b747563f178b52f3c6435fc0f57c08a94d7240d104 SHA512 147c3868098b526895059b12a1cb692d774f4734fac94069e72a8c61109f8a3bfd7846d7f2596bf7c10dfb1a379185f73a4a0066076fc64a8577b90da8623acf
diff --git a/dev-java/xmlunit-assertj/metadata.xml b/dev-java/xmlunit-assertj/metadata.xml
new file mode 100644
index 000000000000..a707e0e60cc6
--- /dev/null
+++ b/dev-java/xmlunit-assertj/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">xmlunit/xmlunit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/xmlunit-assertj/xmlunit-assertj-2.9.1.ebuild b/dev-java/xmlunit-assertj/xmlunit-assertj-2.9.1.ebuild
new file mode 100644
index 000000000000..35439bd07215
--- /dev/null
+++ b/dev-java/xmlunit-assertj/xmlunit-assertj-2.9.1.ebuild
@@ -0,0 +1,63 @@
+# 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.xmlunit:xmlunit-assertj:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="XMLUnit with AssertJ fluent API"
+HOMEPAGE="https://www.xmlunit.org/"
+SRC_URI="https://github.com/xmlunit/xmlunit/releases/download/v${PV}/xmlunit-${PV}-src.tar.gz"
+S="${WORKDIR}/xmlunit-${PV}-src/xmlunit-assertj"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ dev-java/assertj-core:3
+ dev-java/byte-buddy:0
+ ~dev-java/xmlunit-core-${PV}:2
+ test? (
+ dev-java/hamcrest:0
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+DOCS=( ../{CONTRIBUTING,HELP_WANTED,README,RELEASE_NOTES}.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.xmlunit.assertj"
+JAVA_CLASSPATH_EXTRA="
+ assertj-core-3
+ byte-buddy
+ xmlunit-core-2
+"
+JAVA_SRC_DIR="src/main/java"
+
+# org.junit.runners.model.InvalidTestClassError: Invalid test class '
+JAVA_TEST_EXCLUDES="org.xmlunit.TestResources"
+JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ mockito-4
+ xmlunit-core-2
+"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ cp {../xmlunit-core/,}src/test/java/org/xmlunit/TestResources.java || die
+}
diff --git a/dev-java/xmlunit-core/Manifest b/dev-java/xmlunit-core/Manifest
new file mode 100644
index 000000000000..db73d721a992
--- /dev/null
+++ b/dev-java/xmlunit-core/Manifest
@@ -0,0 +1 @@
+DIST xmlunit-2.9.1-src.tar.gz 681721 BLAKE2B 8e8d40e79890d9bec2a3a72a9931cba1c832438e713eb290867a2d95d3ca5a8092327611998075cf1e0117b747563f178b52f3c6435fc0f57c08a94d7240d104 SHA512 147c3868098b526895059b12a1cb692d774f4734fac94069e72a8c61109f8a3bfd7846d7f2596bf7c10dfb1a379185f73a4a0066076fc64a8577b90da8623acf
diff --git a/dev-java/xmlunit-core/metadata.xml b/dev-java/xmlunit-core/metadata.xml
new file mode 100644
index 000000000000..a707e0e60cc6
--- /dev/null
+++ b/dev-java/xmlunit-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">xmlunit/xmlunit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/xmlunit-core/xmlunit-core-2.9.1.ebuild b/dev-java/xmlunit-core/xmlunit-core-2.9.1.ebuild
new file mode 100644
index 000000000000..7f143588947b
--- /dev/null
+++ b/dev-java/xmlunit-core/xmlunit-core-2.9.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.xmlunit:xmlunit-core:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="XMLUnit for Java"
+HOMEPAGE="https://www.xmlunit.org/"
+SRC_URI="https://github.com/xmlunit/xmlunit/releases/download/v${PV}/xmlunit-${PV}-src.tar.gz"
+S="${WORKDIR}/xmlunit-${PV}-src/xmlunit-core"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+CP_DEPEND="
+ dev-java/jaxb-api:2
+"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ dev-java/jaxb-runtime:2
+ ${CP_DEPEND}
+ test? (
+ dev-java/hamcrest:0
+ dev-java/istack-commons-runtime:3
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+DOCS=( ../{CONTRIBUTING,HELP_WANTED,README,RELEASE_NOTES}.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.xmlunit"
+JAVA_CLASSPATH_EXTRA="jaxb-runtime-2"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXCLUDES=(
+ # org.junit.runners.model.InvalidTestClassError: Invalid test class
+ org.xmlunit.TestResources
+)
+JAVA_TEST_GENTOO_CLASSPATH="
+ hamcrest
+ istack-commons-runtime-3
+ junit-4
+ mockito-4
+"
+JAVA_TEST_SRC_DIR="src/test/java"
diff --git a/dev-java/xmlunit-matchers/Manifest b/dev-java/xmlunit-matchers/Manifest
new file mode 100644
index 000000000000..db73d721a992
--- /dev/null
+++ b/dev-java/xmlunit-matchers/Manifest
@@ -0,0 +1 @@
+DIST xmlunit-2.9.1-src.tar.gz 681721 BLAKE2B 8e8d40e79890d9bec2a3a72a9931cba1c832438e713eb290867a2d95d3ca5a8092327611998075cf1e0117b747563f178b52f3c6435fc0f57c08a94d7240d104 SHA512 147c3868098b526895059b12a1cb692d774f4734fac94069e72a8c61109f8a3bfd7846d7f2596bf7c10dfb1a379185f73a4a0066076fc64a8577b90da8623acf
diff --git a/dev-java/xmlunit-matchers/metadata.xml b/dev-java/xmlunit-matchers/metadata.xml
new file mode 100644
index 000000000000..a707e0e60cc6
--- /dev/null
+++ b/dev-java/xmlunit-matchers/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">xmlunit/xmlunit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/xmlunit-matchers/xmlunit-matchers-2.9.1.ebuild b/dev-java/xmlunit-matchers/xmlunit-matchers-2.9.1.ebuild
new file mode 100644
index 000000000000..e73355114db2
--- /dev/null
+++ b/dev-java/xmlunit-matchers/xmlunit-matchers-2.9.1.ebuild
@@ -0,0 +1,61 @@
+# 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.xmlunit:xmlunit-matchers:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="XMLUnit for Java Hamcrest Matchers"
+HOMEPAGE="https://www.xmlunit.org/"
+SRC_URI="https://github.com/xmlunit/xmlunit/releases/download/v${PV}/xmlunit-${PV}-src.tar.gz"
+S="${WORKDIR}/xmlunit-${PV}-src/xmlunit-matchers"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ dev-java/hamcrest-core:1.3
+ ~dev-java/xmlunit-core-${PV}:2
+ test? (
+ dev-java/hamcrest-library:1.3
+ dev-java/mockito:4
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+DOCS=( ../{CONTRIBUTING,HELP_WANTED,README,RELEASE_NOTES}.md )
+
+JAVA_AUTOMATIC_MODULE_NAME="org.xmlunit.matchers"
+JAVA_CLASSPATH_EXTRA="
+ hamcrest-core-1.3
+ xmlunit-core-2
+"
+JAVA_SRC_DIR="src/main/java"
+
+JAVA_TEST_EXCLUDES="org.xmlunit.TestResources"
+JAVA_TEST_GENTOO_CLASSPATH="
+ hamcrest-library-1.3
+ junit-4
+ mockito-4
+ xmlunit-core-2
+"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ cp {../xmlunit-core/,}src/test/java/org/xmlunit/TestResources.java || die
+}
diff --git a/dev-java/xmlunit/metadata.xml b/dev-java/xmlunit/metadata.xml
index 28e3792f3d46..a5da74260d17 100644
--- a/dev-java/xmlunit/metadata.xml
+++ b/dev-java/xmlunit/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xmlunit/xmlunit-1.6-r2.ebuild b/dev-java/xmlunit/xmlunit-1.6-r2.ebuild
new file mode 100644
index 000000000000..d94ddaaab432
--- /dev/null
+++ b/dev-java/xmlunit/xmlunit-1.6-r2.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="xmlunit:xmlunit:1.6"
+JAVA_TESTING_FRAMEWORKS="junit"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="XMLUnit extends JUnit and NUnit to enable unit testing of XML"
+HOMEPAGE="https://sourceforge.net/projects/xmlunit/ https://www.xmlunit.org"
+SRC_URI="https://downloads.sourceforge.net/project/xmlunit/xmlunit%20for%20Java/XMLUnit%20for%20Java%20${PV}/${P}-src.zip"
+S="${WORKDIR}/${P}"
+
+LICENSE="BSD"
+SLOT="1"
+KEYWORDS="amd64 ~arm64 ppc64 x86"
+
+BDEPEND="app-arch/unzip"
+CP_DEPEND="dev-java/junit:0"
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+ doc? ( app-text/docbook-xsl-stylesheets:0 )
+ test? ( >=dev-java/ant-1.10.14:0[junit] )
+"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src/java"
+JAVA_TEST_EXTRA_ARGS=( -Dbasedir="." )
+JAVA_TEST_RESOURCE_DIRS="tests/etc"
+JAVA_TEST_SRC_DIR="tests/java"
+
+src_install() {
+ java-pkg-simple_src_install
+ if use doc; then
+ docinto html
+ dodoc -r userguide
+ fi
+}
diff --git a/dev-java/xmlunit/xmlunit-1.6.ebuild b/dev-java/xmlunit/xmlunit-1.6.ebuild
deleted file mode 100644
index b6e5dc47b97b..000000000000
--- a/dev-java/xmlunit/xmlunit-1.6.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source test"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="XMLUnit extends JUnit and NUnit to enable unit testing of XML"
-SRC_URI="mirror://sourceforge/${PN}/${P}-src.zip"
-HOMEPAGE="http://xmlunit.sourceforge.net/"
-
-LICENSE="BSD"
-SLOT="1"
-KEYWORDS="amd64 ppc64 x86"
-
-CDEPEND="dev-java/junit:0"
-
-DEPEND=">=virtual/jdk-1.6
- app-arch/unzip:0
- doc? ( app-text/docbook-xsl-stylesheets:0 )
- test? (
- dev-java/ant-junit:0
- dev-java/ant-core:0
- )
- ${CDEPEND}"
-
-RDEPEND=">=virtual/jre-1.6
- ${CDEPEND}"
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="junit"
-
-EANT_DOC_TARGET="users-guide-html javadocs"
-EANT_ANT_TASKS="ant-core"
-EANT_EXTRA_ARGS="-Ddb5.xsl=/usr/share/sgml/docbook/xsl-stylesheets"
-
-src_test() {
- ANT_TASKS="ant-junit ant-core" eant test
-}
-
-src_install() {
- java-pkg_newjar "build/lib/${P}.jar"
-
- dodoc README.txt
-
- if use doc; then
- java-pkg_dojavadoc build/doc/api
- dohtml build/doc/userguide/html/*
- fi
-
- use source && java-pkg_dosrc src/java/org
-}
diff --git a/dev-java/xmpbox/Manifest b/dev-java/xmpbox/Manifest
new file mode 100644
index 000000000000..f36aea95224a
--- /dev/null
+++ b/dev-java/xmpbox/Manifest
@@ -0,0 +1 @@
+DIST pdfbox-2.0.27-src.zip 15770627 BLAKE2B 9f93d597141ff3da39b69da3ce989a0cc7f4020071e5cb1609a8b86d0f12a3219037cb4c7b276acf58ee6b07d842b6d7c76e14fdf79e9efdeac401048e345f89 SHA512 59a5675f5d1d34f092adc019679f7d10e7e93c0f554a002ac29d48cbffcaa600d930309fa94a92191c01ead8da905cbb37ce5e233dcc9b8732a881d4abf75def
diff --git a/dev-java/xmpbox/metadata.xml b/dev-java/xmpbox/metadata.xml
new file mode 100644
index 000000000000..6c39d66c1f9a
--- /dev/null
+++ b/dev-java/xmpbox/metadata.xml
@@ -0,0 +1,13 @@
+<?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/pdfbox</remote-id>
+ </upstream>
+ <longdescription>
+ The Apache XmpBox library is an open source Java tool that implements Adobe's XMP(TM) specification. It can be used to parse, validate and create xmp contents. It is mainly used by subproject preflight of Apache PDFBox. XmpBox is a subproject of Apache PDFBox.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-java/xmpbox/xmpbox-2.0.27.ebuild b/dev-java/xmpbox/xmpbox-2.0.27.ebuild
new file mode 100644
index 000000000000..e76bea27a1e5
--- /dev/null
+++ b/dev-java/xmpbox/xmpbox-2.0.27.ebuild
@@ -0,0 +1,56 @@
+# 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 mirror://apache/pdfbox/2.0.27/pdfbox-2.0.27-src.zip --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild xmpbox-2.0.27.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.pdfbox:xmpbox:2.0.27"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An open source Java tool that implements Adobe's XMP(TM) specification"
+HOMEPAGE="https://pdfbox.apache.org"
+SRC_URI="mirror://apache/pdfbox/${PV}/pdfbox-${PV}-src.zip"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm64 ppc64 x86"
+
+# Common dependencies
+# POM: pom.xml
+# commons-logging:commons-logging:1.2 -> >=dev-java/commons-logging-1.2:0
+
+CP_DEPEND="dev-java/jaxb-api:2"
+
+# Compile dependencies
+# POM: pom.xml
+# javax.xml.bind:jaxb-api:2.3.1 -> !!!groupId-not-found!!!
+# POM: pom.xml
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+
+DEPEND="${CP_DEPEND}
+ >=virtual/jdk-1.8:*"
+
+RDEPEND="${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}/pdfbox-${PV}/${PN}"
+
+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=(
+ # 1) initializationError(org.apache.xmpbox.parser.PropMappingTest)
+ # org.junit.runners.model.InvalidTestClassError: Invalid test class 'org.apache.xmpbox.parser.PropMappingTest':
+ # 1. No runnable methods
+ org.apache.xmpbox.parser.PropMappingTest
+)
diff --git a/dev-java/xmpcore/Manifest b/dev-java/xmpcore/Manifest
deleted file mode 100644
index db28d6ff5619..000000000000
--- a/dev-java/xmpcore/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xmpcore-5.1.2-sources.jar 136918 BLAKE2B 521a2ae6093a51a0845ede16e56d4f9e2525ff7c7ad2c877ecd08a6673befd76002a1c35c635966d8664a2ef601f0d10a1e8a9562dc4c0564d4eaf48ea27cac0 SHA512 ad4c78a68f1d32a358b79bfb4acacbcc56eaa294af5afbb29eb916a1a488dba547e72c4d94809222fae63fd7c66940d9ce7cb6c06598f9c7b8691d0feaabdad8
diff --git a/dev-java/xmpcore/metadata.xml b/dev-java/xmpcore/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/xmpcore/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/xmpcore/xmpcore-5.1.2.ebuild b/dev-java/xmpcore/xmpcore-5.1.2.ebuild
deleted file mode 100644
index bc4a6b95771f..000000000000
--- a/dev-java/xmpcore/xmpcore-5.1.2.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Java library based on the Adobe C++ XMPCore library with a similar API"
-HOMEPAGE="https://www.adobe.com/devnet/xmp.html"
-SRC_URI="http://central.maven.org/maven2/com/adobe/xmp/${PN}/${PV}/${P}-sources.jar"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-DEPEND=">=virtual/jdk-1.6"
-RDEPEND=">=virtual/jre-1.6"
diff --git a/dev-java/xom/Manifest b/dev-java/xom/Manifest
index 8c6360068295..c1a869f6433b 100644
--- a/dev-java/xom/Manifest
+++ b/dev-java/xom/Manifest
@@ -1 +1 @@
-DIST xom-1.3.7-src.tar.gz 5898676 BLAKE2B 963190849bcdb1b4e786a099dd2abd2ed8f17e5b486bce9df48d9f6ddab4f381c3c5c7d70388f9d74710547ff7a62bbd6a2eb9c2a6d6ff8cd06156b83e98aba0 SHA512 9b574f23c9394f5b54dc9b33e41e89638d041337c08336f44f968a55a1633dcc90ff1b520f7ad57cdbe68a1f81e221ac7e83336eb472876ab43939d9ce940262
+DIST xom-1.3.8-src.tar.gz 5898196 BLAKE2B 59d2af50b1f662419cf9e860c9946b250b3a803b3e3190483bef5d9b77a51272f1f2b11b10da1d72daff5f9a38dfdd3c3c13d15de7b1d9e19372895316df0033 SHA512 4a9b328a51fc24a447271e52b2c084178e2a5091b6e37a6dcb05cfa7c1aeacc426bae896a84dd9a7adc425f77785c12f0ee23805863f096232ad6ca4a2335b44
diff --git a/dev-java/xom/files/xom-1.3.7-disable-invalid-test.patch b/dev-java/xom/files/xom-1.3.7-disable-invalid-test.patch
index ef897ae004c9..6ee097470edc 100644
--- a/dev-java/xom/files/xom-1.3.7-disable-invalid-test.patch
+++ b/dev-java/xom/files/xom-1.3.7-disable-invalid-test.patch
@@ -1,5 +1,14 @@
-diff --git a/XOM/src/nu/xom/tests/XSLTransformTest.java b/XOM/src/nu/xom/tests/XSLTransformTest.java
-index 443c058..56f7b6e 100644
+1) testIllegalTransform(nu.xom.tests.XSLTransformTest)
+nu.xom.xslt.XSLException: Syntax error in stylesheet
+ at nu.xom.xslt.XSLTransform.<init>(XSLTransform.java:181)
+ at nu.xom.xslt.XSLTransform.<init>(XSLTransform.java:226)
+ at nu.xom.xslt.XSLTransform.<init>(XSLTransform.java:201)
+ at nu.xom.tests.XSLTransformTest.testIllegalTransform(XSLTransformTest.java:775)
+ ... 25 trimmed
+Caused by: javax.xml.transform.TransformerConfigurationException: Cannot find external method 'www.example.com.fn' (must be public).
+ at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:990)
+ at nu.xom.xslt.XSLTransform.<init>(XSLTransform.java:173)
+ ... 29 more
--- a/XOM/src/nu/xom/tests/XSLTransformTest.java
+++ b/XOM/src/nu/xom/tests/XSLTransformTest.java
@@ -765,7 +765,7 @@ public class XSLTransformTest extends XOMTestCase {
diff --git a/dev-java/xom/metadata.xml b/dev-java/xom/metadata.xml
index 6d01ad88c62b..08ce1d1a6403 100644
--- a/dev-java/xom/metadata.xml
+++ b/dev-java/xom/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
@@ -9,4 +9,7 @@
XOM is a new XML object model. It is a tree-based API for processing
XML with Java that strives for correctness and simplicity.
</longdescription>
+ <upstream>
+ <remote-id type="github">elharo/xom</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/xom/xom-1.3.7.ebuild b/dev-java/xom/xom-1.3.7.ebuild
deleted file mode 100644
index 5289b1b22b80..000000000000
--- a/dev-java/xom/xom-1.3.7.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc source test"
-JAVA_TESTING_FRAMEWORKS="junit"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="XML Object Model"
-HOMEPAGE="https://xom.nu"
-SRC_URI="https://github.com/elharo/${PN}/releases/download/v${PV}/${P}-src.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
-
-CDEPEND="
- dev-java/jaxen:1.2
- dev-java/xerces:2"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.8:*"
-
-DEPEND="
- ${CDEPEND}
- dev-java/junit:0
- >=virtual/jdk-1.8:*"
-
-JAVA_GENTOO_CLASSPATH="jaxen-1.2,xerces-2"
-JAVA_SRC_DIR="src/main/java"
-JAVA_RESOURCE_DIRS="src/main/resources"
-
-JAVA_TEST_GENTOO_CLASSPATH="junit"
-JAVA_TEST_SRC_DIR="src/test/java"
-
-PATCHES=(
- "${FILESDIR}/${P}-disable-invalid-test.patch"
-)
-
-src_prepare() {
- default
-
- java-pkg_clean
-
- # removing directories based on build.xml
- rm -rv XOM/src/nu/xom/benchmarks/ || die
- rm -rv XOM/src/nu/xom/integrationtests/ || die
- rm -rv XOM/src/nu/xom/samples/ || die
- rm -rv XOM/src/nu/xom/tools/ || die
-
- # reorganize the code and resources so that it goes well with java-pkg-simple
- mkdir -pv ${JAVA_SRC_DIR} ${JAVA_RESOURCE_DIRS} ${JAVA_TEST_SRC_DIR}/nu/xom || die
- mv -v XOM/src/nu/xom/tests ${JAVA_TEST_SRC_DIR}/nu/xom/ || die
- mv -v XOM/data . || die
- pushd XOM/src || die
- for file in $(find -type f -name "*.java"); do
- cp --parents -R ${file} "${WORKDIR}/${JAVA_SRC_DIR}" || die
- done
- for file in $(find -type f ! -name "*.java"); do
- cp --parents -R ${file} "${WORKDIR}/${JAVA_RESOURCE_DIRS}" || die
- done
- popd
-}
diff --git a/dev-java/xom/xom-1.3.8-r1.ebuild b/dev-java/xom/xom-1.3.8-r1.ebuild
new file mode 100644
index 000000000000..f17d5cfacb87
--- /dev/null
+++ b/dev-java/xom/xom-1.3.8-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2023 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"
+MAVEN_ID="xom:xom:${PV}"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="XML Object Model"
+HOMEPAGE="https://xom.nu"
+SRC_URI="https://github.com/elharo/${PN}/releases/download/v${PV}/${P}-src.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+# Bug #905215
+PROPERTIES="test_network"
+RESTRICT="test"
+
+CP_DEPEND="
+ dev-java/jaxen:1.2
+ dev-java/xerces:2"
+
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*"
+
+DEPEND="
+ ${CP_DEPEND}
+ dev-java/junit:0
+ >=virtual/jdk-1.8:*"
+
+PATCHES=( "${FILESDIR}/xom-1.3.7-disable-invalid-test.patch" )
+
+JAVA_AUTOMATIC_MODULE_NAME="nu.xom"
+JAVA_MAIN_CLASS="nu.xom.Info"
+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"
+
+src_prepare() {
+ java-pkg-2_src_prepare
+ java-pkg_clean
+ default
+
+ # removing directories based on build.xml
+ rm -rv XOM/src/nu/xom/benchmarks/ || die
+ rm -rv XOM/src/nu/xom/integrationtests/ || die
+ rm -rv XOM/src/nu/xom/samples/ || die
+ rm -rv XOM/src/nu/xom/tools/ || die
+
+ # reorganize the code and resources so that it goes well with java-pkg-simple
+ mkdir -pv ${JAVA_SRC_DIR} ${JAVA_RESOURCE_DIRS} ${JAVA_TEST_SRC_DIR}/nu/xom || die
+ mv -v {XOM/src,${JAVA_TEST_SRC_DIR}}/nu/xom/tests || die
+ mv -v XOM/data . || die
+ pushd XOM/src || die
+ for file in $(find -type f -name "*.java"); do
+ cp --parents -R ${file} "${WORKDIR}/${JAVA_SRC_DIR}" || die
+ done
+ for file in $(find -type f ! -name "*.java"); do
+ cp --parents -R ${file} "${WORKDIR}/${JAVA_RESOURCE_DIRS}" || die
+ done
+ popd
+}
+
+src_test() {
+ # These tests need to run separately, otherwise fail
+ # Should pass with "OK (126 tests)"
+ JAVA_TEST_RUN_ONLY=(
+ nu.xom.tests.AttributesTest
+ nu.xom.tests.DocumentTest
+ nu.xom.tests.ElementTest
+ nu.xom.tests.NodesTest
+ nu.xom.tests.ParentNodeTest
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=()
+ pushd src/test/java > /dev/null || die
+ # Exclude EBCDICTest.java
+ # https://github.com/elharo/xom/blob/v1.3.8/src/nu/xom/tests/EBCDICTest.java#L71-L73
+ # And exclude those tests already run before
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ -type f \
+ -name "*Test.java" \
+ ! -name 'EBCDICTest.java' \
+ ! -name 'AttributesTest.java' \
+ ! -name 'DocumentTest.java' \
+ ! -name 'ElementTest.java' \
+ ! -name 'NodesTest.java' \
+ ! -name 'ParentNodeTest.java' \
+ )
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
+ JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
+ popd > /dev/null || die
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/xp/Manifest b/dev-java/xp/Manifest
deleted file mode 100644
index 43de144548a2..000000000000
--- a/dev-java/xp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xp-0.5.zip 281324 BLAKE2B c9bf54836b67773f2bcdf34cd0548acc9e2cad039aaae1ff397f63b9f3715742ad9e0494b696415f83ffc50d14e47462c0efcf52e9332f8cf469441094bceb74 SHA512 5bf354967a1135209d5c6b3be979a311aa5c909493dea16a0efd31a1838dda12be4005ac7e919620ed68266a333fdc93a07853ec1e0af0e83b329bd40bda74b6
diff --git a/dev-java/xp/files/xp-0.5-fix-jdk-1.7-enum.patch b/dev-java/xp/files/xp-0.5-fix-jdk-1.7-enum.patch
deleted file mode 100644
index d2c11ab3ed59..000000000000
--- a/dev-java/xp/files/xp-0.5-fix-jdk-1.7-enum.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff --git a/com/jclark/xml/sax/Driver.java b/com/jclark/xml/sax/Driver.java
-index 2b0d90a..d1efd3e 100644
---- a/com/jclark/xml/sax/Driver.java
-+++ b/com/jclark/xml/sax/Driver.java
-@@ -160,9 +160,9 @@ public class Driver extends ApplicationImpl
-
- DTD dtd = event.getDTD();
-
-- for (Enumeration enum = dtd.entityNames(DTD.NOTATION);
-- enum.hasMoreElements(); ) {
-- String name = (String)enum.nextElement();
-+ for (Enumeration enumx = dtd.entityNames(DTD.NOTATION);
-+ enumx.hasMoreElements(); ) {
-+ String name = (String)enumx.nextElement();
- Entity entity = dtd.getEntity(DTD.NOTATION, name);
- String systemId = entity.getSystemId();
- if (systemId != null) {
-@@ -173,9 +173,9 @@ public class Driver extends ApplicationImpl
- }
- dtdHandler.notationDecl(name, entity.getPublicId(), systemId);
- }
-- for (Enumeration enum = dtd.entityNames(DTD.GENERAL_ENTITY);
-- enum.hasMoreElements();) {
-- String name = (String)enum.nextElement();
-+ for (Enumeration enumx = dtd.entityNames(DTD.GENERAL_ENTITY);
-+ enumx.hasMoreElements();) {
-+ String name = (String)enumx.nextElement();
- Entity entity = dtd.getEntity(DTD.GENERAL_ENTITY, name);
- String notationName = entity.getNotationName();
- if (notationName != null) {
diff --git a/dev-java/xp/metadata.xml b/dev-java/xp/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/xp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/xp/xp-0.5-r4.ebuild b/dev-java/xp/xp-0.5-r4.ebuild
deleted file mode 100644
index ae0095ad000a..000000000000
--- a/dev-java/xp/xp-0.5-r4.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="XP is an XML 1.0 parser written in Java"
-HOMEPAGE="http://www.jclark.com/xml/xp"
-SRC_URI="ftp://ftp.jclark.com/pub/xml/${PN}.zip -> ${P}.zip"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.6
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-jdk-1.7-enum.patch"
-)
-
-src_prepare() {
- default
- java-pkg_clean
-}
diff --git a/dev-java/xpp2/metadata.xml b/dev-java/xpp2/metadata.xml
index a901ec9b3fac..f1933ceb1ff1 100644
--- a/dev-java/xpp2/metadata.xml
+++ b/dev-java/xpp2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xpp2/xpp2-2.1.10-r3.ebuild b/dev-java/xpp2/xpp2-2.1.10-r3.ebuild
index db77c7e64ae0..c4b5aaa7a88b 100644
--- a/dev-java/xpp2/xpp2-2.1.10-r3.ebuild
+++ b/dev-java/xpp2/xpp2-2.1.10-r3.ebuild
@@ -2,7 +2,9 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
JAVA_PKG_IUSE="doc source"
+MAVEN_ID="pull-parser:pull-parser:2"
inherit java-pkg-2 java-ant-2
@@ -10,12 +12,12 @@ MY_PN="PullParser"
MY_P="${MY_PN}${PV}"
DESCRIPTION="A streaming pull XML parser used to quickly process input elements"
-HOMEPAGE="http://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/index.html"
-SRC_URI="http://www.extreme.indiana.edu/xgws/xsoap/xpp/download/${MY_PN}2/${MY_P}.tgz"
+HOMEPAGE="https://web.archive.org/web/20130904163229/http://www.extreme.indiana.edu/xgws/xsoap/xpp/xpp2/"
+SRC_URI="https://web.archive.org/web/20130904173708/http://www.extreme.indiana.edu/xgws/xsoap/xpp/download/PullParser2/${MY_P}.tgz"
LICENSE="Apache-1.1 IBM"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test"
# Some failures, partly because we haven't patched Xerces but probably
diff --git a/dev-java/xpp3/metadata.xml b/dev-java/xpp3/metadata.xml
index 952a4b9b605c..4221e170cbc0 100644
--- a/dev-java/xpp3/metadata.xml
+++ b/dev-java/xpp3/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
diff --git a/dev-java/xpp3/xpp3-1.1.4c-r3.ebuild b/dev-java/xpp3/xpp3-1.1.4c-r3.ebuild
deleted file mode 100644
index a52b851aeb9e..000000000000
--- a/dev-java/xpp3/xpp3-1.1.4c-r3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An implementation of XMLPULL V1 API"
-HOMEPAGE="http://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/index.html"
-SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-1.1 IBM JDOM LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="
- >=virtual/jre-1.6"
-
-DEPEND="
- >=virtual/jdk-1.6
- source? ( app-arch/zip )"
diff --git a/dev-java/xpp3/xpp3-1.1.4c-r4.ebuild b/dev-java/xpp3/xpp3-1.1.4c-r4.ebuild
deleted file mode 100644
index 2e750699f44c..000000000000
--- a/dev-java/xpp3/xpp3-1.1.4c-r4.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="An implementation of XMLPULL V1 API"
-HOMEPAGE="http://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/index.html"
-SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-LICENSE="Apache-1.1 IBM JDOM LGPL-2.1+"
-SLOT="0"
-
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
diff --git a/dev-java/xpp3/xpp3-1.1.4c-r6.ebuild b/dev-java/xpp3/xpp3-1.1.4c-r6.ebuild
new file mode 100644
index 000000000000..fb7803894bc8
--- /dev/null
+++ b/dev-java/xpp3/xpp3-1.1.4c-r6.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+MAVEN_ID="xpp3:xpp3:1.1.4c"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="An implementation of XMLPULL V1 API"
+HOMEPAGE="https://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/index.html"
+SRC_URI="https://repo1.maven.org/maven2/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
+
+LICENSE="Apache-1.1 IBM JDOM LGPL-2.1+"
+SLOT="0"
+
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Restriction to java 1.8
+# Otherwise jdk 11+ would fail to build javadoc:
+# ./javax/xml/namespace/QName.java:55: error: package exists in another module: java.xml
+# package javax.xml.namespace;
+# ^
+# 1 error
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND="virtual/jdk:1.8"
+
+JAVA_RESOURCE_DIRS="resources"
+
+src_prepare() {
+ default
+ mkdir "resources" || die
+ cp -r "META-INF" "resources" || die
+}
diff --git a/dev-java/xsdlib/Manifest b/dev-java/xsdlib/Manifest
index bc1f66b764b9..9475f768708b 100644
--- a/dev-java/xsdlib/Manifest
+++ b/dev-java/xsdlib/Manifest
@@ -1 +1 @@
-DIST xsdlib.20090415.zip 914126 BLAKE2B 7f8dc45c590606ece1775d08634f87bb7cd392c69c66204073d4867f925cf7159fe14b43cde6d59a72da90ab284d9a3adc0c4d6aa117ea5143eff8efc5bf6534 SHA512 479b20bb24c32f7a8bf548689cb6d7efc99e36d7f887d9e33b34b2e4707d74149ae1e312f7166a90acbd44422248729d6158a55d710616b656eb628cafc1e3f2
+DIST msv-2022.7.tar.gz 2594951 BLAKE2B fce006f4b845efcd930b7999ac00eaab06c404888eb73a6eeab6cfad616b4922271d2d682abc82f3be4c4f6a791aa14681f6e6bfebd2118ac3aa2bcba41fd1f8 SHA512 315342628f79c561883be0d966211dd81daae66a414dcc9bb5a87d86f97121d38b5835e9a6d1ac7c21ccff46040e53d3cabd32e9ea677c9ca4335a86c5259949
diff --git a/dev-java/xsdlib/metadata.xml b/dev-java/xsdlib/metadata.xml
index 952a4b9b605c..a2eeb0a46ec6 100644
--- a/dev-java/xsdlib/metadata.xml
+++ b/dev-java/xsdlib/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">xmlark/msv</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-java/xsdlib/xsdlib-20090415-r1.ebuild b/dev-java/xsdlib/xsdlib-20090415-r1.ebuild
deleted file mode 100644
index 58537f49874b..000000000000
--- a/dev-java/xsdlib/xsdlib-20090415-r1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 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
-
-DESCRIPTION="Sun XML Datatypes Library"
-HOMEPAGE="http://msv.java.net/"
-SRC_URI="http://java.net/downloads/msv/releases/${PN}.${PV}.zip"
-
-LICENSE="BSD Apache-1.1"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-
-COMMON_DEP="
- dev-java/xerces:2
- dev-java/relaxng-datatype:0"
-BDEPEND="app-arch/unzip"
-RDEPEND="${COMMON_DEP}
- >=virtual/jre-1.8:*"
-DEPEND="${COMMON_DEP}
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}/${P}"
-
-JAVA_SRC_DIR=( "src" "src-apache" )
-JAVA_GENTOO_CLASSPATH="relaxng-datatype,xerces-2"
-
-src_prepare() {
- default
- find -name '*.jar' -delete || die
-}
-
-src_compile() {
- java-pkg-simple_src_compile
-
- local dir; for dir in "${JAVA_SRC_DIR[@]}"; do
- pushd ${dir} > /dev/null || die
- jar -uf "${S}"/${PN}.jar $(find -name '*.properties') || die
- popd > /dev/null || die
- done
-}
-
-src_install() {
- java-pkg-simple_src_install
-
- dodoc README.txt
- docinto html
- dodoc HowToUse.html
-}
diff --git a/dev-java/xsdlib/xsdlib-2022.7.ebuild b/dev-java/xsdlib/xsdlib-2022.7.ebuild
new file mode 100644
index 000000000000..638b474d3756
--- /dev/null
+++ b/dev-java/xsdlib/xsdlib-2022.7.ebuild
@@ -0,0 +1,73 @@
+# 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/xmlark/msv/archive/msv-2022.7.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild xsdlib-2022.7.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="net.java.dev.msv:xsdlib:2022.7"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="XML Schema datatypes library"
+HOMEPAGE="https://github.com/xmlark/msv/tree/main/xsdlib"
+SRC_URI="https://github.com/xmlark/msv/archive/msv-${PV}.tar.gz"
+
+LICENSE="BSD-1"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Common dependencies
+# POM: pom.xml
+# relaxngDatatype:relaxngDatatype:20020414 -> >=dev-java/relaxng-datatype-20020414:0
+# xerces:xercesImpl:2.12.2 -> >=dev-java/xerces-2.12.2:2
+
+CP_DEPEND="
+ dev-java/relaxng-datatype:0
+ dev-java/xerces:2
+"
+
+# Compile dependencies
+# POM: pom.xml
+# test? junit:junit:4.13.2 -> >=dev-java/junit-4.13.2:4
+# test? org.jdom:jdom2:2.0.6.1 -> >=dev-java/jdom-2.0.6.1:2
+
+DEPEND="
+ >=virtual/jdk-1.8:*
+ ${CP_DEPEND}
+ test? (
+ dev-java/jdom:2
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}
+"
+
+S="${WORKDIR}/msv-msv-${PV}/xsdlib"
+
+JAVA_MAIN_CLASS="com.sun.msv.datatype.xsd.CommandLineTester"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="junit-4,jdom-2"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_test() {
+ # Selection according to pom.xml#L156-L184
+ pushd src/test/java || die
+ local JAVA_TEST_RUN_ONLY=$(find * \
+ \( -wholename "**/*Test.java" \
+ -o -wholename "**/*TestCase.java" \
+ -o -wholename "**/*TestCases.java" \) \
+ ! -wholename "**/*\$*" \
+ )
+ popd
+ 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/xsom/Manifest b/dev-java/xsom/Manifest
deleted file mode 100644
index 5e8dafbf21cd..000000000000
--- a/dev-java/xsom/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST xsom-20140925.jar 371238 BLAKE2B 0757b585ba46d1b694ba077f8b35d9bd5c9991e388f233932d1214700eb89c454d93cea63806be988418499f5087d00d6258c8d907ceb53936fe05b39ebfbbcb SHA512 a1e2a9879deb3c92ed94fa0a9ac4f59debd8914cefe94149d74cde844c1f0519e35e00e87bf523b761fab50c8a69585b72d23fe28f30bdbf1f074de903438ee7
diff --git a/dev-java/xsom/metadata.xml b/dev-java/xsom/metadata.xml
deleted file mode 100644
index 37998bf40746..000000000000
--- a/dev-java/xsom/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/xsom/xsom-20140925.ebuild b/dev-java/xsom/xsom-20140925.ebuild
deleted file mode 100644
index 5f906491315f..000000000000
--- a/dev-java/xsom/xsom-20140925.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-JAVA_PKG_IUSE="doc source"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="XSOM is a Java library allows to easily parse and inspect XML schema docs"
-HOMEPAGE="https://xsom.dev.java.net/"
-SRC_URI="https://repo1.maven.org/maven2/com/sun/${PN}/${PN}/${PV}/${P}-sources.jar -> ${P}.jar"
-
-KEYWORDS="amd64 x86"
-SLOT="0"
-LICENSE="CDDL"
-IUSE=""
-
-CDEPEND="dev-java/relaxng-datatype:0"
-
-RDEPEND="
- ${CDEPEND}
- >=virtual/jre-1.6"
-
-DEPEND="
- ${CDEPEND}
- >=virtual/jdk-1.6"
-
-JAVA_GENTOO_CLASSPATH="relaxng-datatype"
diff --git a/dev-java/xz-java/Manifest b/dev-java/xz-java/Manifest
index afe4ef8de157..56fcf0e06d10 100644
--- a/dev-java/xz-java/Manifest
+++ b/dev-java/xz-java/Manifest
@@ -1 +1,2 @@
-DIST xz-java-1.8.zip 152470 BLAKE2B 601e3292936cb8b3a885551a275248628171f0fa15829785e2fb99d5dfefab59fd2283df4040f090a9d96d30bef5dacd5f4aed4f9d3163ee17dea4a72ad1b0f8 SHA512 3d30804baf9bf743347d87befdbf103107f413c4460639171257e87c4ac96c5e9bc6401a85c44939cd40a25b965162d916a552ae9967f1ff1c71ed389508f5b0
+DIST xz-java-1.9.zip 155868 BLAKE2B e1e355e75b3d14cae9a12dd00105ff38e25ab9c270cecafc83f27a7a03b36aa7a33647b40b7458b3592319a2b574e10cef9786413f0a12af585199a8f00731de SHA512 743f81ac715d7ac2760af8cee4c62d8fbeef156c0d3e0e85e4605ae08d6a71d1e6f6675e0558e7906a92d5fb3ca1feab9db015a1d42b5df73de2dec770a339cb
+DIST xz-java-1.9.zip.sig 566 BLAKE2B 9702fa3021c4274aacc74ef84903429ed5301eac11cae6bf79014a5bad590c51b169c35f64add85c964cb815129acf920a014e5601acfcd075147f5fb8e9df1e SHA512 5f511260da0f5a9338106ac56511b7a105996852103a3f40cc4a44a7e4e03dc39a645bb0a57ae99bcde8267d5a2d514a7c956a8bfe226c0472e1fa3c7d28e3d5
diff --git a/dev-java/xz-java/metadata.xml b/dev-java/xz-java/metadata.xml
index bc74090b9d62..4221e170cbc0 100644
--- a/dev-java/xz-java/metadata.xml
+++ b/dev-java/xz-java/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tommy@gentoo.org</email>
- <name>Thomas Sachau (Tommy[D])</name>
- </maintainer>
-<maintainer type="project">
+ <maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
diff --git a/dev-java/xz-java/xz-java-1.8-r1.ebuild b/dev-java/xz-java/xz-java-1.8-r1.ebuild
deleted file mode 100644
index 2e055ca8f737..000000000000
--- a/dev-java/xz-java/xz-java-1.8-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-JAVA_PKG_IUSE="doc examples source"
-MAVEN_ID="org.tukaani:xz:1.8"
-
-inherit java-pkg-2 java-pkg-simple
-
-DESCRIPTION="Implementation of xz data compression in pure java"
-HOMEPAGE="https://tukaani.org/xz/java.html"
-SRC_URI="https://tukaani.org/xz/${P}.zip"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc64 x86"
-
-RDEPEND="
- >=virtual/jre-1.8:*"
-
-DEPEND="
- app-arch/unzip
- >=virtual/jdk-1.8:*"
-
-S="${WORKDIR}"
-
-JAVA_SRC_DIR="src/org"
-
-DOCS=( README NEWS COPYING THANKS )
-
-src_install() {
- java-pkg-simple_src_install
- use examples && java-pkg_doexamples src/*Demo.java
- einstalldocs
-}
diff --git a/dev-java/xz-java/xz-java-1.9-r1.ebuild b/dev-java/xz-java/xz-java-1.9-r1.ebuild
new file mode 100644
index 000000000000..0b7ed480b07a
--- /dev/null
+++ b/dev-java/xz-java/xz-java-1.9-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc examples source"
+MAVEN_ID="org.tukaani:xz:1.9"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Implementation of xz data compression in pure java"
+HOMEPAGE="https://tukaani.org/xz/java.html"
+SRC_URI="https://tukaani.org/xz/${P}.zip
+ verify-sig? ( https://tukaani.org/xz/${P}.zip.sig )"
+S="${WORKDIR}"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+BDEPEND="
+ app-arch/unzip
+ verify-sig? ( sec-keys/openpgp-keys-lassecollin )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/lassecollin.asc"
+
+JAVA_SRC_DIR="src/org"
+
+DOCS=( README NEWS COPYING THANKS )
+
+src_install() {
+ java-pkg-simple_src_install
+ use examples && java-pkg_doexamples src/*Demo.java
+ einstalldocs
+}
diff --git a/dev-java/yanfs/Manifest b/dev-java/yanfs/Manifest
deleted file mode 100644
index fc44f712c780..000000000000
--- a/dev-java/yanfs/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST yanfs-1.0.tar.bz2 107232 BLAKE2B 4c344f03e52c4a5eb3cee87e05e4a5b33cdec78ef49427de5ac6a1a44b87444744b0e619963c67ca494092831474587e29dc506bc7261fa98dec05b6cd8c9ebd SHA512 e7031ba630360240de136f588c337a3a4b551320f5e121c1910fc58ba08c7b7c6fe95fb87b57263c19e00a3e44fe81c36d9e8e8971d4fdf910bb3797c0a1eeeb
diff --git a/dev-java/yanfs/files/1.0-make.patch b/dev-java/yanfs/files/1.0-make.patch
deleted file mode 100644
index 3cd23cc042be..000000000000
--- a/dev-java/yanfs/files/1.0-make.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-diff --git a/src/com/sun/Makefile.common b/src/com/sun/Makefile.common
-index a5e49e8..ceea3ca 100644
---- a/src/com/sun/Makefile.common
-+++ b/src/com/sun/Makefile.common
-@@ -35,7 +35,14 @@
- # nuclear facility.
- #
-
--include $(CODEMGR_WS)/src/com/sun/Makefile.defs
-+CDIR= $(CODEMGR_WS)/classes
-+JAVADIR= /usr/java
-+CLASSPATH= $(CDIR):$(JAVADIR)/lib/classes.zip
-+JCFLAGS= -classpath $(CLASSPATH)
-+JC= $(JAVADIR)/bin/javac
-+TFILE= $(CDIR)/$(PKGDIR)/.tfile
-+M4= /usr/bin/m4
-+
-
- # XXX
- #SWINGDIR, BEANCLASSPATH, JCBFLAGS need to be removed once JDK1.2 is FCS.
-diff --git a/src/com/sun/Makefile.defs b/src/com/sun/Makefile.defs
-index 2fa61c9..b4692cc 100644
---- a/src/com/sun/Makefile.defs
-+++ b/src/com/sun/Makefile.defs
-@@ -36,9 +36,9 @@
- #
-
- CDIR= $(CODEMGR_WS)/classes
--JAVADIR= /usr/java
-+JAVADIR= /usr
- CLASSPATH= $(CDIR):$(JAVADIR)/lib/classes.zip
- JCFLAGS= -classpath $(CLASSPATH)
- JC= $(JAVADIR)/bin/javac
- TFILE= $(CDIR)/$(PKGDIR)/.tfile
--M4= /usr/ccs/bin/m4
-+M4= /usr/bin/m4
-diff --git a/src/com/sun/gssapi/Makefile b/src/com/sun/gssapi/Makefile
-index 49d5933..fc16dfe 100644
---- a/src/com/sun/gssapi/Makefile
-+++ b/src/com/sun/gssapi/Makefile
-@@ -81,7 +81,7 @@ classes: $(CDIR)/$(PKGDIR) \
- $(SUBDIRS)
-
- $(PFILES):
-- $(RM) $@; install -s -m 644 -f $(@D) $(PROP_FILES)
-+ $(RM) $@; install -m 644 $(PROP_FILES) $(@D)
-
- clean:
- $(RM) $(CDIR)/$(PKGDIR)/*.class $(TFILE) $(PFILES)
-diff --git a/src/com/sun/gssapi/mechs/dummy/Makefile b/src/com/sun/gssapi/mechs/dummy/Makefile
-index 88fc12d..cd3e0a7 100644
---- a/src/com/sun/gssapi/mechs/dummy/Makefile
-+++ b/src/com/sun/gssapi/mechs/dummy/Makefile
-@@ -59,7 +59,7 @@ M4DEF_PROP += -D CONTEXT=_K1000A49
- M4DEF_PROP += -D CRED=_K2102CC5
-
- Dummy.java: Dummy.m4
-- /usr/ccs/bin/m4 $(M4DEF_PROP) Dummy.m4 > Dummy.java
-+ $(M4) $(M4DEF_PROP) Dummy.m4 > Dummy.java
-
- # Service Provider Interface Context Class and its methods/interface
- M4DEF_CTXTSPI = -D GSSCtxtSpi=C018FE95
-@@ -86,5 +86,5 @@ M4DEF_CTXTSPI += -D _importSecCtxt=_S0AC8F9E
- M4DEF_CTXTSPI += -D _dispose=_S020B957
-
- DummyCtxt.java: DummyCtxt.m4
-- /usr/ccs/bin/m4 $(M4DEF_CTXTSPI) DummyCtxt.m4 > DummyCtxt.java
-+ $(M4) $(M4DEF_CTXTSPI) DummyCtxt.m4 > DummyCtxt.java
-
-diff --git a/src/com/sun/nfs/XFileAccessor.java b/src/com/sun/nfs/XFileAccessor.java
-index 50281d1..348ee3a 100644
---- a/src/com/sun/nfs/XFileAccessor.java
-+++ b/src/com/sun/nfs/XFileAccessor.java
-@@ -71,7 +71,7 @@ class XFileAccessor implements com.sun.xfile.XFileAccessor {
- return true;
- } catch (IOException e) {
- return false;
-- };
-+ }
- }
-
- public XFile getXFile() {
diff --git a/dev-java/yanfs/metadata.xml b/dev-java/yanfs/metadata.xml
deleted file mode 100644
index 952a4b9b605c..000000000000
--- a/dev-java/yanfs/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://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/yanfs/yanfs-1.0.ebuild b/dev-java/yanfs/yanfs-1.0.ebuild
deleted file mode 100644
index 477c34c8a244..000000000000
--- a/dev-java/yanfs/yanfs-1.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-JAVA_PKG_IUSE="doc source examples"
-
-inherit java-pkg-2 java-ant-2
-
-DESCRIPTION="Yet Another NFS - a Java NFS library"
-HOMEPAGE="https://java.net/projects/yanfs"
-SRC_URI="https://dev.gentoo.org/~ercpe/distfiles/dev-java/yanfs/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=virtual/jre-1.6"
-DEPEND=">=virtual/jdk-1.6"
-
-S="${WORKDIR}/${P}"
-
-java_prepare() {
- epatch "${FILESDIR}/${PV}-make.patch"
- rm -r "${S}"/src/com/sun/gssapi/mechs/dummy || die
-
- mkdir examples && \
- mv "${S}"/src/com/sun/rpc/samples/ examples/rpc && \
- mv "${S}"/src/com/sun/gssapi/samples/ examples/gssapi || die
-}
-
-src_compile() {
- CODEMGR_WS="${S}" emake -C "${S}/src/com/sun/gssapi/"
-
- java-pkg-2_src_compile
-}
-
-src_install() {
- java-pkg_dojar "${S}/${PN}.jar"
-
- use source && java-pkg_dosrc "${S}"/src/*
- use doc && java-pkg_dojavadoc "${S}"/api/
- use examples && java-pkg_doexamples examples/*
-}
diff --git a/dev-java/zstd-jni/Manifest b/dev-java/zstd-jni/Manifest
index 29b899e69c49..058ed6af6eed 100644
--- a/dev-java/zstd-jni/Manifest
+++ b/dev-java/zstd-jni/Manifest
@@ -1 +1 @@
-DIST zstd-jni-1.4.9.1.tar.gz 9283717 BLAKE2B 1f5f397e6ee78d029110b98aadbf77e8acaf3b3721ff0729b1b382f193367c8ffb20e08c1f7f905c34a5128e6e061652792cdd4f83dd292e3a3b19906f3bf86b SHA512 2a3a2020e46fbf654796ca065ec84fdce05c308d7925a667b239aa0cc8607f78d8944230578e3c663cdd7932bce05e056895f8457af523d939afb24f68f8087b
+DIST zstd-jni-1.5.2.5.tar.gz 9342510 BLAKE2B 259f3087f06c567f2126dacfb90ecfcc1d20f389ff99ef48a6f8c558441b37b56f29b73ca55aad176116439c4ef47f9ad253116a968f74e527eb13a0fda98f7e SHA512 16f2aeee6005e2da366a849f0972b3ef9245d355ed875e633bf4013d340cc74445604710e7b628aefafa90f74dfaa82a93c741f06f633b8a6c2162e9da304850
diff --git a/dev-java/zstd-jni/metadata.xml b/dev-java/zstd-jni/metadata.xml
index 2444066aa02b..510496093d7f 100644
--- a/dev-java/zstd-jni/metadata.xml
+++ b/dev-java/zstd-jni/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!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">luben/zstd-jni</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-java/zstd-jni/zstd-jni-1.4.9.1.ebuild b/dev-java/zstd-jni/zstd-jni-1.4.9.1.ebuild
deleted file mode 100644
index 6428adfaaec3..000000000000
--- a/dev-java/zstd-jni/zstd-jni-1.4.9.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MAVEN_ID="com.github.luben:zstd-jni:1.4.9-1"
-MY_PV="$(ver_rs 3 -)"
-
-inherit java-pkg-2 java-pkg-simple cmake
-
-DESCRIPTION="JNI bindings for Zstd native library"
-
-HOMEPAGE="https://github.com/luben/zstd-jni"
-SRC_URI="https://github.com/luben/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-
-RDEPEND=">=virtual/jre-1.8:*"
-DEPEND="${RDEPEND}"
-
-JAVA_SRC_DIR="src/main/java"
-
-src_configure() {
- local mycmakeargs=(
- -DJAVA_HOME="$(java-config -g JAVA_HOME)"
- )
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
-
- mkdir -p "${S}/target/classes/META-INF" || die "Failed to create META-INF dir"
- echo "Manifest-Version: 1.0
-Implementation-Version: ${MY_PV}
-Bundle-NativeCode: libzstd-jni.so;osname=Linux" > "${S}/target/classes/META-INF/MANIFEST.MF" || die "Failed to create MANIFEST.MF"
- java-pkg-simple_src_compile
- java-pkg_addres ${JAVA_JAR_FILENAME} "${BUILD_DIR}" -name libzstd-jni.so || die "Failed to add library to jar"
-}
-
-src_install() {
- java-pkg-simple_src_install
-}
diff --git a/dev-java/zstd-jni/zstd-jni-1.5.2.5.ebuild b/dev-java/zstd-jni/zstd-jni-1.5.2.5.ebuild
new file mode 100644
index 000000000000..39ac7859fae4
--- /dev/null
+++ b/dev-java/zstd-jni/zstd-jni-1.5.2.5.ebuild
@@ -0,0 +1,63 @@
+# 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.github.luben:zstd-jni:1.5.2-5"
+
+inherit java-pkg-2 java-pkg-simple cmake
+
+DESCRIPTION="JNI bindings for Zstd native library"
+HOMEPAGE="https://github.com/luben/zstd-jni"
+SRC_URI="https://github.com/luben/zstd-jni/archive/c$(ver_rs 3 -).tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ppc64 x86"
+
+RDEPEND=">=virtual/jre-1.8:*"
+DEPEND=">=virtual/jdk-1.8:*"
+
+S="${WORKDIR}/zstd-jni-c$(ver_rs 3 -)"
+
+JAVA_AUTOMATIC_MODULE_NAME="com.github.luben.zstd_jni"
+JAVA_RESOURCE_DIRS="resources"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+ cmake_src_prepare
+ # https://github.com/luben/zstd-jni/blob/c1.5.2-5/build.gradle#L66
+ cat > src/main/java/com/github/luben/zstd/util/ZstdVersion.java <<-EOF || die
+ package com.github.luben.zstd.util;
+
+ public class ZstdVersion
+ {
+ public static final String VERSION = "$(ver_rs 3 -)";
+ }
+ EOF
+
+ mkdir -p resources/META-INF || die
+ echo "Implementation-Version: $(ver_rs 3 -)" \
+ > resources/META-INF/MANIFEST.MF || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DJAVA_HOME="$(java-config -g JAVA_HOME)"
+ # Resolve bug #776910
+ # Reference: https://stackoverflow.com/a/51764145
+ -DJAVA_AWT_LIBRARY="NotNeeded"
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ java-pkg_doso "${BUILD_DIR}/libzstd-jni-$(ver_rs 3 -).so"
+ java-pkg-simple_src_install
+}
diff --git a/dev-java/zxing-core/Manifest b/dev-java/zxing-core/Manifest
new file mode 100644
index 000000000000..e80a49af97f5
--- /dev/null
+++ b/dev-java/zxing-core/Manifest
@@ -0,0 +1 @@
+DIST zxing-3.5.1.tar.gz 132915650 BLAKE2B f749de7db35f3ce56d80fb1aa547e65d57425a1d1e20dfd9b40e02e24c52e6f488ca26bf8e0217b7d65677441578bf67439ad3a1fca3155ab35598b6d9833ece SHA512 8c093e5b8e4d2cd01e8979b5e9f788ac32a8d0bb49f3c7ad42044e95bb4a352e66e2802f11ad7429ed6ba140b360c596f389cd721521b84a5a93918df19285de
diff --git a/dev-java/zxing-core/metadata.xml b/dev-java/zxing-core/metadata.xml
new file mode 100644
index 000000000000..c77bb25a2b63
--- /dev/null
+++ b/dev-java/zxing-core/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">zxing/zxing</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/zxing-core/zxing-core-3.5.1.ebuild b/dev-java/zxing-core/zxing-core-3.5.1.ebuild
new file mode 100644
index 000000000000..b819019f170b
--- /dev/null
+++ b/dev-java/zxing-core/zxing-core-3.5.1.ebuild
@@ -0,0 +1,33 @@
+# 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.zxing:core:3.5.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core barcode encoding/decoding library"
+HOMEPAGE="https://github.com/zxing/zxing/core"
+SRC_URI="https://github.com/zxing/zxing/archive/zxing-${PV}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/zxing-zxing-${PV}/core"
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.zxing"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" )
+JAVA_TEST_SRC_DIR="src/test/java"
+JAVA_TEST_EXCLUDES=(
+ # not runnable
+ com.google.zxing.common.TestResult
+ com.google.zxing.oned.rss.expanded.TestCaseUtil
+)
diff --git a/dev-java/zxing-javase/Manifest b/dev-java/zxing-javase/Manifest
new file mode 100644
index 000000000000..e80a49af97f5
--- /dev/null
+++ b/dev-java/zxing-javase/Manifest
@@ -0,0 +1 @@
+DIST zxing-3.5.1.tar.gz 132915650 BLAKE2B f749de7db35f3ce56d80fb1aa547e65d57425a1d1e20dfd9b40e02e24c52e6f488ca26bf8e0217b7d65677441578bf67439ad3a1fca3155ab35598b6d9833ece SHA512 8c093e5b8e4d2cd01e8979b5e9f788ac32a8d0bb49f3c7ad42044e95bb4a352e66e2802f11ad7429ed6ba140b360c596f389cd721521b84a5a93918df19285de
diff --git a/dev-java/zxing-javase/files/3.5.1-test-available-formats.patch b/dev-java/zxing-javase/files/3.5.1-test-available-formats.patch
new file mode 100644
index 000000000000..62e154f0dad4
--- /dev/null
+++ b/dev-java/zxing-javase/files/3.5.1-test-available-formats.patch
@@ -0,0 +1,31 @@
+https://github.com/zxing/zxing/pull/1668
+https://bugs.gentoo.org/910497
+--- a/src/test/java/com/google/zxing/client/j2se/MatrixToImageWriterTestCase.java
++++ b/src/test/java/com/google/zxing/client/j2se/MatrixToImageWriterTestCase.java
+@@ -17,7 +17,9 @@
+ package com.google.zxing.client.j2se;
+
+ import com.google.zxing.common.BitMatrix;
++import static org.hamcrest.CoreMatchers.hasItem;
+ import org.junit.Assert;
++import static org.junit.Assume.assumeThat;
+ import org.junit.Test;
+
+ import javax.imageio.ImageIO;
+@@ -25,6 +27,7 @@
+ import java.io.IOException;
+ import java.nio.file.Files;
+ import java.nio.file.Path;
++import java.util.Arrays;
+
+ /**
+ * Tests {@link MatrixToImageWriter}.
+@@ -52,6 +55,8 @@ private static void doTest(MatrixToImageConfig config) throws IOException {
+ }
+
+ private static void doTestFormat(String format, MatrixToImageConfig config) throws IOException {
++ assumeThat(Arrays.asList(ImageIO.getWriterFormatNames()), hasItem(format));
++
+ int width = 2;
+ int height = 3;
+ BitMatrix matrix = new BitMatrix(width, height);
diff --git a/dev-java/zxing-javase/metadata.xml b/dev-java/zxing-javase/metadata.xml
new file mode 100644
index 000000000000..c77bb25a2b63
--- /dev/null
+++ b/dev-java/zxing-javase/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>tharvik@gmail.com</email>
+ <name>Valérian Rousset</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>
+ <upstream>
+ <remote-id type="github">zxing/zxing</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-java/zxing-javase/zxing-javase-3.5.1.ebuild b/dev-java/zxing-javase/zxing-javase-3.5.1.ebuild
new file mode 100644
index 000000000000..ef015da75c4b
--- /dev/null
+++ b/dev-java/zxing-javase/zxing-javase-3.5.1.ebuild
@@ -0,0 +1,46 @@
+# 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.zxing:javase:3.5.1"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Core barcode encoding/decoding library"
+HOMEPAGE="https://github.com/zxing/zxing"
+SRC_URI="https://github.com/zxing/zxing/archive/zxing-${PV}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="3"
+KEYWORDS="amd64 ~arm ~arm64 ~x86"
+
+CP_DEPEND="
+ dev-java/jcommander:0
+ dev-java/zxing-core:3
+"
+DEPEND="
+ ${CP_DEPEND}
+ >=virtual/jdk-1.8:*
+"
+RDEPEND="
+ ${CP_DEPEND}
+ >=virtual/jre-1.8:*
+"
+
+S="${WORKDIR}/zxing-zxing-${PV}/javase"
+
+PATCHES=(
+ "${FILESDIR}/${PV}-test-available-formats.patch"
+)
+
+JAVA_AUTOMATIC_MODULE_NAME="com.google.zxing.javase"
+JAVA_SRC_DIR="src/main/java"
+JAVA_TEST_GENTOO_CLASSPATH="junit-4"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default # apply PATCHES
+ java-pkg-2_src_prepare
+}