diff options
author | Volkmar W. Pogatzki <gentoo@pogatzki.net> | 2023-05-21 10:06:54 +0200 |
---|---|---|
committer | Miroslav Šulc <fordfrog@gentoo.org> | 2024-03-17 09:46:16 +0100 |
commit | c70f09ff2482b0914c55241eb553d750c8e910ea (patch) | |
tree | fca92b9c79cd09213eba85edaccad7adf25a0174 /dev-java/bnd | |
parent | dev-java/javaparser-core: new package, add 3.13.10 (diff) | |
download | gentoo-c70f09ff2482b0914c55241eb553d750c8e910ea.tar.gz gentoo-c70f09ff2482b0914c55241eb553d750c8e910ea.tar.bz2 gentoo-c70f09ff2482b0914c55241eb553d750c8e910ea.zip |
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: https://github.com/gentoo/gentoo/pull/35320/commits/51c6da26e1a72c39443c3d4c4994b9fb96cf8b91
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
Diffstat (limited to 'dev-java/bnd')
-rw-r--r-- | dev-java/bnd/Manifest | 1 | ||||
-rw-r--r-- | dev-java/bnd/bnd-7.0.0.ebuild | 100 | ||||
-rw-r--r-- | dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch | 21 | ||||
-rw-r--r-- | dev-java/bnd/metadata.xml | 10 |
4 files changed, 132 insertions, 0 deletions
diff --git a/dev-java/bnd/Manifest b/dev-java/bnd/Manifest new file mode 100644 index 000000000000..a890570b45c8 --- /dev/null +++ b/dev-java/bnd/Manifest @@ -0,0 +1 @@ +DIST aQute.bnd-7.0.0.tar.gz 172496438 BLAKE2B a2e443b0e4a2eb278a8e1df86456fea22ffb8147adc00c9f300cbd32b226218bb64ccca3da3bcd0d79b07567a7b4cf4456b96224d6abf59486fa08ca6170d0ba SHA512 11d34a7d1a9b2fb2e8c112d414a06c281ccde9a7b06c62043e19d83e85ea64fdf022dd4493a14dd2dcf6adee392a1e9bf1ab05a6d690a328f29d7019045bca8c diff --git a/dev-java/bnd/bnd-7.0.0.ebuild b/dev-java/bnd/bnd-7.0.0.ebuild new file mode 100644 index 000000000000..b847142719c7 --- /dev/null +++ b/dev-java/bnd/bnd-7.0.0.ebuild @@ -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 +} diff --git a/dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch b/dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch new file mode 100644 index 000000000000..6d37cbc9f7d6 --- /dev/null +++ b/dev-java/bnd/files/bnd-7.0.0-aQute.bnd.main.bnd.patch @@ -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) { diff --git a/dev-java/bnd/metadata.xml b/dev-java/bnd/metadata.xml new file mode 100644 index 000000000000..cb6317e530db --- /dev/null +++ b/dev-java/bnd/metadata.xml @@ -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> |