commit:     f5a04c59ecfaf93123975e0400f5f32aa4915cf0
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Sat Dec  6 19:51:10 2025 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sun Dec 14 20:27:09 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f5a04c59

dev-java/asm: add 9.9.1

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Part-of: https://github.com/gentoo/gentoo/pull/44443
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 dev-java/asm/Manifest         |   1 +
 dev-java/asm/asm-9.9.1.ebuild | 100 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 101 insertions(+)

diff --git a/dev-java/asm/Manifest b/dev-java/asm/Manifest
index 1568e483fe82..57b44cdc62c3 100644
--- a/dev-java/asm/Manifest
+++ b/dev-java/asm/Manifest
@@ -1,2 +1,3 @@
 DIST asm-ASM_9_7_1.tar.bz2 1378103 BLAKE2B 
f7da3a9c1bcf76398c9e9b9b86d60f8854e5248632a8b2d76605851e29ee1807713fb28c9e76012ec8f9444c44e3a151ed409cd120c34ab8d3495fdc9c84edcb
 SHA512 
77ae76464eec97dbc8129c4a746d13f0d286d2033f909b65e0e34858e1785616b7bee22faa92128b91eb39cbd849e262efe574b73ed2859920add457d6422dd0
 DIST asm-ASM_9_9.tar.bz2 1383623 BLAKE2B 
cd6c57307f0d518c418aec0b0c3cef3957d0f78344d49d25f53a2a4599a49b000821d4fa66002a9bd3011376d517079a860267904052333777acee661c507429
 SHA512 
bc45e9e211d14be858c3543ae603eb2053e55c9912fb445ca5860c372eb894c1bd2b16cdccfa907b7f7bdd82ede28307e0e7a122a5d619d46b4ff863e201a931
+DIST asm-ASM_9_9_1.tar.bz2 1387005 BLAKE2B 
535f8df7e8c8047e3c32983f685e4a13228b5e9dac91018ea209d44d05ec1d509a08fc89606d4a68069cb7e6ed5e70177a26d3ac3fcadb8fc8221a6e0dc052fe
 SHA512 
14b07af7e55035cdc2fa5b0808b6062c2e006b9fc389ef7765ca03353bb33b5cd73ab4c8ecfcf7a62b8e5475bdf13e09988bd156a586ac396b8419414f6f0553

diff --git a/dev-java/asm/asm-9.9.1.ebuild b/dev-java/asm/asm-9.9.1.ebuild
new file mode 100644
index 000000000000..13a7d438cf60
--- /dev/null
+++ b/dev-java/asm/asm-9.9.1.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2025 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}
+"
+
+# Avoid circular dependency
+JAVA_DISABLE_DEPEND_ON_JAVA_DEP_CHECK="true"
+
+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="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x64-macos"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+ASM_MODULES=( "asm" "asm-tree" "asm-analysis" "asm-commons" "asm-util" )
+JAVADOC_SRC_DIRS=(
+       asm/src/main/java
+       asm-tree/src/main/java
+       asm-analysis/src/main/java
+       asm-commons/src/main/java
+       asm-util/src/main/java
+)
+
+src_prepare() {
+       default
+       local module
+       touch 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 asm.module)
+                               requires java.base;
+                               exports 
org.objectweb.${module/analysis/tree.analysis};
+                       }
+               EOF
+               echo "requires transitive 
org.objectweb.${module/analysis/tree.analysis};" \
+                       >> 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"
+               for module in "${ASM_MODULES[@]}"; do
+                       rm "${module}/src/main/java/module-info.java" || die
+                       JAVA_SRC_DIR+=("${module}/src/main/java")
+               done
+               ejavadoc
+       fi
+}
+
+src_install() {
+       JAVA_JAR_FILENAME="asm.jar"
+       java-pkg-simple_src_install
+       local module
+       for module in asm-{analysis,commons,tree,util}; do
+               java-pkg_dojar ${module}.jar
+               if use source; then
+                       java-pkg_dosrc "${module}/src/main/java/*"
+               fi
+       done
+}

Reply via email to