public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/user/superposition:master commit in: dev-java/asm/
@ 2023-04-04 21:49 Philip Miess
  0 siblings, 0 replies; 2+ messages in thread
From: Philip Miess @ 2023-04-04 21:49 UTC (permalink / raw
  To: gentoo-commits

commit:     7e0245ba0117df53702508ba93c298fb9f8a1134
Author:     Philip Miess <Philip_Miess <AT> yahoo <DOT> com>
AuthorDate: Sun Mar 26 13:47:25 2023 +0000
Commit:     Philip Miess <Phil_miess <AT> yahoo <DOT> com>
CommitDate: Sun Mar 26 13:47:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/user/superposition.git/commit/?id=7e0245ba

resurrect asm

Signed-off-by: Philip Miess <Philip_Miess <AT> yahoo.com>

 dev-java/asm/Manifest       |  3 ++
 dev-java/asm/asm-9.4.ebuild | 90 +++++++++++++++++++++++++++++++++++++++++++++
 dev-java/asm/metadata.xml   | 30 +++++++++++++++
 3 files changed, 123 insertions(+)

diff --git a/dev-java/asm/Manifest b/dev-java/asm/Manifest
new file mode 100644
index 0000000..69315c8
--- /dev/null
+++ b/dev-java/asm/Manifest
@@ -0,0 +1,3 @@
+DIST asm-ASM_9_4.tar.bz2 1380417 BLAKE2B 612fc6669294f2926ec77522f642f2878a96a9c977579ceda9feb955041ff53fa698c75b26c27bae478a41dca59357d9cf824263df39d60ea5c6722e5f0efc75 SHA512 a59268808ac54a238bd6e117eb0164d28c5c3572c12d7ad42c2f3dbd32714c03056f330255756511db4f1ede8d66bf32c7347128b8ec179beba11cca27927687
+EBUILD asm-9.4.ebuild 2363 BLAKE2B 36b4ba331468998e388a6d240c99d0c195cee271c135f8180cdaebdce6546a6837c4a1533333889aee4dec0352dbc883de936d86bea6c80477e616c01cdd3b57 SHA512 2ead6c41436c36bc9011963a74d2fac092ffc22e31ca9cf7f5d5fcbfe05754223d3ca88f2bea77b4c72c3ef610978a23b525513e16b1d6e151a4590aad6889b4
+MISC metadata.xml 1233 BLAKE2B 13faf251d3d40ed558c83262972ea106892cc3be0f7a1b95a0b484123d93473bd867b2f7b53c3e5ccc2f1fe249ebe66cb9e757e19ad36c8d3e3eac6a7a981d98 SHA512 59a292291ac757818e41d009e2cdbb73b6d914c1f552c34e9360635cb468f1ebfdf9c58d6642710d5218689d08797320102c8ccb6d5f4bc9478883feb9b9b397

diff --git a/dev-java/asm/asm-9.4.ebuild b/dev-java/asm/asm-9.4.ebuild
new file mode 100644
index 0000000..b7a5d43
--- /dev/null
+++ b/dev-java/asm/asm-9.4.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# No tests because:
+# package org.junit.jupiter.api does not exist
+# package org.junit.jupiter.params does not exist
+JAVA_PKG_IUSE="doc source"
+MAVEN_PROVIDES="org.ow2.asm:asm-bom:9.4 org.ow2.asm:asm:9.4"
+
+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"
+
+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" )
+
+S="${WORKDIR}/asm-${MY_P}"
+
+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
new file mode 100644
index 0000000..930ec62
--- /dev/null
+++ b/dev-java/asm/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="project">
+		<email>java@gentoo.org</email>
+		<name>Java</name>
+	</maintainer>
+	<maintainer type="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>
+	<upstream>
+		<doc>https://asm.ow2.io/documentation.html</doc>
+		<bugs-to>https://gitlab.ow2.org/asm/asm/-/issues</bugs-to>
+	</upstream>
+</pkgmetadata>


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/user/superposition:master commit in: dev-java/asm/
@ 2023-04-04 21:49 Philip Miess
  0 siblings, 0 replies; 2+ messages in thread
From: Philip Miess @ 2023-04-04 21:49 UTC (permalink / raw
  To: gentoo-commits

commit:     476f7f0cf75e7008a45a2961c4c1032f76a7af66
Author:     Philip Miess <Philip_Miess <AT> yahoo <DOT> com>
AuthorDate: Sun Mar 26 18:40:09 2023 +0000
Commit:     Philip Miess <Phil_miess <AT> yahoo <DOT> com>
CommitDate: Sun Mar 26 18:40:09 2023 +0000
URL:        https://gitweb.gentoo.org/repo/user/superposition.git/commit/?id=476f7f0c

resurrect asm 5.1

Signed-off-by: Philip Miess <Philip_Miess <AT> yahoo.com>

 dev-java/asm/Manifest          |  3 +++
 dev-java/asm/asm-5.1-r1.ebuild | 48 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+)

diff --git a/dev-java/asm/Manifest b/dev-java/asm/Manifest
index 69315c8..3052d6a 100644
--- a/dev-java/asm/Manifest
+++ b/dev-java/asm/Manifest
@@ -1,3 +1,6 @@
+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_4.tar.bz2 1380417 BLAKE2B 612fc6669294f2926ec77522f642f2878a96a9c977579ceda9feb955041ff53fa698c75b26c27bae478a41dca59357d9cf824263df39d60ea5c6722e5f0efc75 SHA512 a59268808ac54a238bd6e117eb0164d28c5c3572c12d7ad42c2f3dbd32714c03056f330255756511db4f1ede8d66bf32c7347128b8ec179beba11cca27927687
+EBUILD asm-5.1-r1.ebuild 1280 BLAKE2B 9b4395b97760514e0f54c72ab1df3a0751991d13caf567a0441fb16c05f4a89559b1347b19a820ea79871123895a4f86431230fd41bd4735aa1e0d4e57c7d128 SHA512 78fa99694b9a1156a85067bab400bfb99f83f4908cd0e6f03eb64e067b15fe757f3cf4cd6b8b109227d6c42b1e3bc2900fc798d3e35d7323cf18a6dde9605c69
 EBUILD asm-9.4.ebuild 2363 BLAKE2B 36b4ba331468998e388a6d240c99d0c195cee271c135f8180cdaebdce6546a6837c4a1533333889aee4dec0352dbc883de936d86bea6c80477e616c01cdd3b57 SHA512 2ead6c41436c36bc9011963a74d2fac092ffc22e31ca9cf7f5d5fcbfe05754223d3ca88f2bea77b4c72c3ef610978a23b525513e16b1d6e151a4590aad6889b4
 MISC metadata.xml 1233 BLAKE2B 13faf251d3d40ed558c83262972ea106892cc3be0f7a1b95a0b484123d93473bd867b2f7b53c3e5ccc2f1fe249ebe66cb9e757e19ad36c8d3e3eac6a7a981d98 SHA512 59a292291ac757818e41d009e2cdbb73b6d914c1f552c34e9360635cb468f1ebfdf9c58d6642710d5218689d08797320102c8ccb6d5f4bc9478883feb9b9b397

diff --git a/dev-java/asm/asm-5.1-r1.ebuild b/dev-java/asm/asm-5.1-r1.ebuild
new file mode 100644
index 0000000..ff2f2f9
--- /dev/null
+++ b/dev-java/asm/asm-5.1-r1.ebuild
@@ -0,0 +1,48 @@
+# 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/*
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-04-04 21:49 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-04 21:49 [gentoo-commits] repo/user/superposition:master commit in: dev-java/asm/ Philip Miess
  -- strict thread matches above, loose matches on Subject: below --
2023-04-04 21:49 Philip Miess

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox