From b590c8d7572b727d565cc0b8ff660d43569845de Mon Sep 17 00:00:00 2001 From: root Date: Fri, 12 Jun 2026 19:09:37 -0500 Subject: Adding metadata --- dev-java/asm/Manifest | 2 + dev-java/asm/asm-9.7.1-r1.ebuild | 100 +++++++++++++++++++++++++++++++++++++++ dev-java/asm/asm-9.9.1.ebuild | 100 +++++++++++++++++++++++++++++++++++++++ dev-java/asm/metadata.xml | 31 ++++++++++++ 4 files changed, 233 insertions(+) create mode 100644 dev-java/asm/Manifest create mode 100644 dev-java/asm/asm-9.7.1-r1.ebuild create mode 100644 dev-java/asm/asm-9.9.1.ebuild create mode 100644 dev-java/asm/metadata.xml (limited to 'dev-java/asm') diff --git a/dev-java/asm/Manifest b/dev-java/asm/Manifest new file mode 100644 index 000000000000..83fe6360a3e1 --- /dev/null +++ b/dev-java/asm/Manifest @@ -0,0 +1,2 @@ +DIST asm-ASM_9_7_1.tar.bz2 1378103 BLAKE2B f7da3a9c1bcf76398c9e9b9b86d60f8854e5248632a8b2d76605851e29ee1807713fb28c9e76012ec8f9444c44e3a151ed409cd120c34ab8d3495fdc9c84edcb SHA512 77ae76464eec97dbc8129c4a746d13f0d286d2033f909b65e0e34858e1785616b7bee22faa92128b91eb39cbd849e262efe574b73ed2859920add457d6422dd0 +DIST asm-ASM_9_9_1.tar.bz2 1387005 BLAKE2B 535f8df7e8c8047e3c32983f685e4a13228b5e9dac91018ea209d44d05ec1d509a08fc89606d4a68069cb7e6ed5e70177a26d3ac3fcadb8fc8221a6e0dc052fe SHA512 14b07af7e55035cdc2fa5b0808b6062c2e006b9fc389ef7765ca03353bb33b5cd73ab4c8ecfcf7a62b8e5475bdf13e09988bd156a586ac396b8419414f6f0553 diff --git a/dev-java/asm/asm-9.7.1-r1.ebuild b/dev-java/asm/asm-9.7.1-r1.ebuild new file mode 100644 index 000000000000..67a1e694913e --- /dev/null +++ b/dev-java/asm/asm-9.7.1-r1.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="9" +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 +} 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..8660442ab725 --- /dev/null +++ b/dev-java/asm/asm-9.9.1.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2026 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 +} diff --git a/dev-java/asm/metadata.xml b/dev-java/asm/metadata.xml new file mode 100644 index 000000000000..dad117560e38 --- /dev/null +++ b/dev-java/asm/metadata.xml @@ -0,0 +1,31 @@ + + + + + java@gentoo.org + Java + + + kaiboma06@gmail.com + Kaibo Ma + + + 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. + + + https://asm.ow2.io/documentation.html + https://gitlab.ow2.org/asm/asm/-/issues + + baldeagleos-repo + -- cgit v1.3