summaryrefslogtreecommitdiff
path: root/dev-java/bnd
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java/bnd')
-rw-r--r--dev-java/bnd/Manifest1
-rw-r--r--dev-java/bnd/bnd-7.4.0.ebuild100
2 files changed, 101 insertions, 0 deletions
diff --git a/dev-java/bnd/Manifest b/dev-java/bnd/Manifest
index 9725bb6af3fc..724978f5cb7b 100644
--- a/dev-java/bnd/Manifest
+++ b/dev-java/bnd/Manifest
@@ -1 +1,2 @@
DIST aQute.bnd-7.2.3.tar.gz 173798900 BLAKE2B 4378df3f25d28e5e1c47c2b3a1d9371c86fc6b199b2cdf7f44a66c7ca02397864b7ccd8517b80454edfdc78e51169ce354541d18191e303277bb88bfc3371f49 SHA512 bacceaacc230a9b11d049ba5a26cd46db11e4454c5f82cda8ce8b0efe30afd5336fb3e72659c229f44f595ff40dadbdb9a5993943c22b7c6ccaf6484b4d168af
+DIST aQute.bnd-7.4.0.tar.gz 185561212 BLAKE2B 2b1dcae551e23ddc6bb18b51a52de60e358cfa40c50cf80f10e82c2c0701594971563a7a5f64194ef3d502d01dde4112630d10316afb256a32216721f930e1af SHA512 44290a14a902b78414aa7f6d8092866b46ea63dcf6c839ed4ba070267d1d73a61ed6f8d1edc4ebd8b31e494dd158b0f537de823def0c818a092f53cb6713f535
diff --git a/dev-java/bnd/bnd-7.4.0.ebuild b/dev-java/bnd/bnd-7.4.0.ebuild
new file mode 100644
index 000000000000..a6564f2c9084
--- /dev/null
+++ b/dev-java/bnd/bnd-7.4.0.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=9
+
+JAVA_PKG_IUSE="doc source"
+
+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/_rc/.RC}.tar.gz -> aQute.bnd-${PV}.tar.gz"
+S="${WORKDIR}/${P/_rc/.RC}"
+
+LICENSE="Apache-2.0 EPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+CP_DEPEND="
+ ~dev-java/bndlib-${PV}:0
+ dev-java/felix-resolver:0
+ dev-java/guava:0
+ <=dev-java/javaparser-core-3.13.10-r0: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:0
+ dev-java/eclipse-jdt-annotation:0
+ dev-java/felix-gogo-runtime:0
+ dev-java/jtwig-reflection:0
+ dev-java/osgi-service-log:0
+ dev-java/osgi-service-subsystem:0
+ >=virtual/jdk-17:*"
+
+RDEPEND="${CP_DEPEND}
+ ~dev-java/bnd-annotation-${PV}:0
+ ~dev-java/bnd-util-${PV}:0
+ ~dev-java/libg-${PV}:0
+ dev-java/slf4j-api:0
+ >=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
+ eclipse-jdt-annotation
+ jtwig-reflection
+ felix-gogo-runtime
+ osgi-service-subsystem
+"
+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() {
+ 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
+ rm -vr target/classes/aQute/remote/{agent,embedded,main,plugin,test} bnd.jar || die
+ jar cf bnd.jar -C target/classes . || die
+}
+
+src_install() {
+ java-pkg-simple_src_install
+ java-pkg_register-dependency libg
+ java-pkg_register-dependency bnd-annotation
+ java-pkg_register-dependency bnd-util
+ java-pkg_register-dependency slf4j-api
+}