dev-java/bnd: new package, add 7.0.0

Unlike upstream this package does not bundle bndlib

Closes: https://bugs.gentoo.org/203080
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Closes: 51c6da26e1
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Volkmar W. Pogatzki
2023-05-21 10:06:54 +02:00
committed by Miroslav Šulc
parent 4be4e3b0d3
commit c70f09ff24
4 changed files with 132 additions and 0 deletions

1
dev-java/bnd/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c

View File

@@ -0,0 +1,100 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source"
MAVEN_ID="biz.aQute.bnd:biz.aQute.bnd:${PV}"
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}.tar.gz -> aQute.bnd-${PV}.tar.gz"
S="${WORKDIR}/${P}"
LICENSE="Apache-2.0 EPL-2.0"
SLOT="0"
KEYWORDS="~amd64"
BDEPEND="app-arch/zip"
CP_DEPEND="
~dev-java/bndlib-${PV}:0
dev-java/felix-resolver:0
dev-java/guava:0
dev-java/javaparser-core: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:3.6
dev-java/eclipse-jdt-annotation:0
dev-java/felix-gogo-runtime:0
dev-java/slf4j-api:0
dev-java/jtwig-reflection:0
dev-java/osgi-service-log:0
dev-java/osgi-service-subsystem:0
>=virtual/jdk-17:*"
RDEPEND="${CP_DEPEND}
>=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-3.6
eclipse-jdt-annotation
jtwig-reflection
felix-gogo-runtime
osgi-service-subsystem
slf4j-api
"
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() {
default #780585
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
zip -d ${PN}.jar \
"*/remote/agent/*" \
"*/remote/embedded/*" \
"*/remote/main/*" \
"*/remote/plugin/*" \
"*/remote/test/*" \
|| die
}

View File

@@ -0,0 +1,21 @@
Upstream uses an older version of slf4j-simple
--- a/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
+++ b/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
@@ -486,14 +486,14 @@ public class bnd extends Processor {
System.setProperty(DEFAULT_LOG_LEVEL_KEY, "warn");
level = org.slf4j.spi.LocationAwareLogger.WARN_INT;
}
- Field field = org.slf4j.impl.SimpleLogger.class.getDeclaredField("CONFIG_PARAMS");
+ Field field = org.slf4j.simple.SimpleLogger.class.getDeclaredField("CONFIG_PARAMS");
field.setAccessible(true);
Object CONFIG_PARAMS = field.get(null);
- field = org.slf4j.impl.SimpleLoggerConfiguration.class.getDeclaredField("defaultLogLevel");
+ field = org.slf4j.simple.SimpleLoggerConfiguration.class.getDeclaredField("defaultLogLevel");
field.setAccessible(true);
field.set(CONFIG_PARAMS, level);
- field = org.slf4j.impl.SimpleLogger.class.getDeclaredField("currentLogLevel");
+ field = org.slf4j.simple.SimpleLogger.class.getDeclaredField("currentLogLevel");
field.setAccessible(true);
field.set(logger, level);
} catch (Exception e) {

10
dev-java/bnd/metadata.xml Normal file
View File

@@ -0,0 +1,10 @@
<?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>
</maintainer>
<upstream>
<remote-id type="github">bndtools/bnd</remote-id>
</upstream>
</pkgmetadata>