commit:     4820887b4d60a5773aa1b07b550cff1c45c55ba7
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Thu Dec 25 08:54:20 2025 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Fri Feb 13 18:28:14 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4820887b

dev-java/eclipse-osgi: new package, add 4.31

Test-dependency of dev-java/jakartaee-migration

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Part-of: https://github.com/gentoo/gentoo/pull/45471
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 dev-java/eclipse-osgi/Manifest                 |  1 +
 dev-java/eclipse-osgi/eclipse-osgi-4.31.ebuild | 80 ++++++++++++++++++++++++++
 dev-java/eclipse-osgi/metadata.xml             | 11 ++++
 3 files changed, 92 insertions(+)

diff --git a/dev-java/eclipse-osgi/Manifest b/dev-java/eclipse-osgi/Manifest
new file mode 100644
index 000000000000..2f9f28290c81
--- /dev/null
+++ b/dev-java/eclipse-osgi/Manifest
@@ -0,0 +1 @@
+DIST eclipse-osgi-4.31.tar.gz 3483622 BLAKE2B 
e28b6c899aec6c7946872ae268d98b7af89e3c34f374fb5f5cdf3baf41302950ae97b1e6c10e2bb360e64b429c3e8e51fbb6df06922286e51f6a5dd24de08bee
 SHA512 
995225a9fff955750dd1d188d8e066a1f497d6de1bbb491cfccf073d74677bc2c708cde5d610a222e3850cd7ffe17e23b868c9e272546a6bfcc7d18b5dd299b0

diff --git a/dev-java/eclipse-osgi/eclipse-osgi-4.31.ebuild 
b/dev-java/eclipse-osgi/eclipse-osgi-4.31.ebuild
new file mode 100644
index 000000000000..1a3fa51cd0ff
--- /dev/null
+++ b/dev-java/eclipse-osgi/eclipse-osgi-4.31.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="OSGi System Bundle"
+HOMEPAGE="https://projects.eclipse.org/projects/eclipse.equinox";
+SRC_URI="https://github.com/eclipse-equinox/equinox/archive/R${PV//./_}.tar.gz 
-> ${P}.tar.gz"
+S="${WORKDIR}/equinox-R${PV//./_}/bundles/org.eclipse.osgi"
+
+LICENSE="EPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+CP_DEPEND=">=dev-java/osgi-annotation-8.1.0:0"
+
+DEPEND="
+       ${CP_DEPEND}
+       >=dev-java/osgi-annotation-8.1.0:0
+       >=virtual/jdk-11:*
+"
+RDEPEND="
+       ${CP_DEPEND}
+       >=virtual/jre-1.8:*
+"
+
+JAVA_GENTOO_CLASSPATH_EXTRA=":j9stubs.jar"
+JAVA_INTERMEDIATE_JAR_NAME="org.eclipse.osgi"
+JAVA_MODULE_INFO_OUT="."
+JAVA_RESOURCE_DIRS="res"
+JAVA_SRC_DIR=( {container,felix,osgi,supplement}/src )
+
+src_prepare() {
+       java-pkg-2_src_prepare
+       jar xf osgi/j9stubs.jar || die
+       find com -type f -name '*.java' > j9stubs.lst || die
+       java-pkg_clean
+
+       mkdir res || die
+       find \
+               -type f \
+               ! -name '*.html' \
+               ! -name '*.java' \
+               ! -name 'bnd.bnd' \
+               ! -name 'build.properties' \
+               ! -name 'pom.xml' \
+               ! -name 'customBuildCallbacks.xml' \
+               ! -name 'forceQualifierUpdate.txt' \
+               ! -name '.classpath*' \
+               ! -name '.gitignore' \
+               ! -name '.project' \
+               ! -path '*/.settings/*' |
+               xargs cp --parent -t res || die
+       mv 
res/{container,supplement}/src/org/eclipse/osgi/internal/signedcontent || die
+       mv res/{supplement/src/,}org || die
+       rm -r res/{container,supplement} || die
+}
+
+src_compile() {
+       # building j9stubs from source
+       ejavac -d target/j9stubs @j9stubs.lst
+       jar -cvf j9stubs.jar -C target/j9stubs . || die
+
+       # building eclipse-osgi
+       java-pkg-simple_src_compile
+
+       # re-package for moving module-info to root of jar
+       mv target/classes/{META-INF/versions/9/,}module-info.class || die
+       rm -r target/classes/META-INF/versions eclipse-osgi.jar || die
+       jar cf eclipse-osgi.jar -C target/classes . || die
+}
+
+src_install() {
+       java-pkg-simple_src_install
+       java-pkg_dojar j9stubs.jar
+}

diff --git a/dev-java/eclipse-osgi/metadata.xml 
b/dev-java/eclipse-osgi/metadata.xml
new file mode 100644
index 000000000000..de39299e700e
--- /dev/null
+++ b/dev-java/eclipse-osgi/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="project">
+               <email>[email protected]</email>
+       </maintainer>
+       <upstream>
+               <doc>https://equinox.eclipseprojects.io</doc>
+               <remote-id type="github">eclipse-equinox/equinox</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to