summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolkmar W. Pogatzki <gentoo@pogatzki.net>2023-10-10 16:27:03 +0200
committerMiroslav Šulc <fordfrog@gentoo.org>2023-10-18 09:53:15 +0200
commit446869172d79a04a1f764f75058e6b1999dd1a13 (patch)
treed7a3ab54b0a24b1a102558e66a06f2a54143a99f /dev-java/asm
parentjava-utils-2.eclass: avoid reverse dependency for dev-java/testng (diff)
downloadgentoo-446869172d79a04a1f764f75058e6b1999dd1a13.tar.gz
gentoo-446869172d79a04a1f764f75058e6b1999dd1a13.tar.bz2
gentoo-446869172d79a04a1f764f75058e6b1999dd1a13.zip
dev-java/asm: add 9.6
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Closes: https://github.com/gentoo/gentoo/pull/33386 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
Diffstat (limited to 'dev-java/asm')
-rw-r--r--dev-java/asm/Manifest1
-rw-r--r--dev-java/asm/asm-9.6.ebuild94
2 files changed, 95 insertions, 0 deletions
diff --git a/dev-java/asm/Manifest b/dev-java/asm/Manifest
index ec6cf25000d4..53e6953311c2 100644
--- a/dev-java/asm/Manifest
+++ b/dev-java/asm/Manifest
@@ -1 +1,2 @@
DIST asm-ASM_9_5.tar.bz2 1372645 BLAKE2B 3eac319c9322dfd9fff1324b032a2248127592107c0256adec6f0c592cf55298b9f060603e1697e7560db9b337585f59bfebea684dcefaf0b4a149061ebb915c SHA512 6c1b4624789435b347b43db50e6605cf60008c73125245e1495e11eef03770e49308963ee152654fa45ac9b05150e8ff4d646d69b69aef27296069f4a7343301
+DIST asm-ASM_9_6.tar.bz2 1374579 BLAKE2B 621b19f1818ffdd451037af210ec7c3286e3dabdb1d6192157c2e6e8c101f599691cd4de57adf500f5413b4aaf4f808d6ac791e84626223a7be5672a17137670 SHA512 86b2db3e81c29c465d4128736f88ae3b73af8f312915921549d0acdb50a8d2c2c2beed5162af164b6e75278702af0c6f0a8d84b4133516eb4ac419520b7c764d
diff --git a/dev-java/asm/asm-9.6.ebuild b/dev-java/asm/asm-9.6.ebuild
new file mode 100644
index 000000000000..f121718f5735
--- /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
+}