summaryrefslogtreecommitdiff
path: root/dev-java/felix-framework
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-10-04 13:17:38 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-10-04 13:17:38 +0100
commit78754950ffa3aaba0f48b1ca1d505caa4a3dfbfa (patch)
tree285997f09f32d26633ba2beffd30c972a4ec87a2 /dev-java/felix-framework
parentbf99f8024d68382f76665735c70ae912331bc2ca (diff)
gentoo auto-resync : 04:10:2022 - 13:17:38
Diffstat (limited to 'dev-java/felix-framework')
-rw-r--r--dev-java/felix-framework/Manifest3
-rw-r--r--dev-java/felix-framework/felix-framework-7.0.5.ebuild106
-rw-r--r--dev-java/felix-framework/metadata.xml12
3 files changed, 121 insertions, 0 deletions
diff --git a/dev-java/felix-framework/Manifest b/dev-java/felix-framework/Manifest
new file mode 100644
index 000000000000..a7565f2c8be3
--- /dev/null
+++ b/dev-java/felix-framework/Manifest
@@ -0,0 +1,3 @@
+DIST felix-framework-7.0.5.tar.gz 505118 BLAKE2B 3652d46dfb4c9c5b43b159450b81ad896483fb2df40165d7e7b8bbd718c8e3297163065474bd10f3858ff7fc2646134ed470e34ede8eeb5efc05cec75f1a7aec SHA512 58fa96500fed827c348a47ac8672aeb4e5b94bfd681c4cde610b3a453fd2abfe2d631742281a192c76718ee83fc4c30980a5179926ff3bc7b8ea649ef07f34a3
+EBUILD felix-framework-7.0.5.ebuild 3563 BLAKE2B 08b2fe7c8b729cf8d6e27432868a4e8e2be6482f424d3e512cb63d2f1ad3854d7f44c936cb8452d57ec11a32f4593cdf1e08dc5e8c0ffc04c0de79b1ae2737a8 SHA512 3487caf78e9ec47aa5a8ce63d84ba4c6c034c8370f4f7d479d155a7b64043baee50755a50fb9096a996b91512605b8c22edf298a76626803760c0227d38d05ed
+MISC metadata.xml 455 BLAKE2B 69e2d92cd05dd44530363b6920e0673ac8f6d87cebf7ca931d4699378062348b83391fdfeaa4dc95d470a718d363fa7e6578f949b6f8f3510317f6d63bc7c514 SHA512 585dc4c8a3fb5c6c01940c887207346065ca9c7499abdb79ab6f6554a05fe6b27734e48101cb0dab61b8e0e32417bf28e722947864bd0ea3d48296198a3f3264
diff --git a/dev-java/felix-framework/felix-framework-7.0.5.ebuild b/dev-java/felix-framework/felix-framework-7.0.5.ebuild
new file mode 100644
index 000000000000..a8a67fa28876
--- /dev/null
+++ b/dev-java/felix-framework/felix-framework-7.0.5.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Skeleton command:
+# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri mirror://apache/felix/org.apache.felix.framework-7.0.5-source-release.tar.gz --slot 0 --keywords "~amd64" --ebuild felix-framework-7.0.5.ebuild
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="org.apache.felix:org.apache.felix.framework:7.0.5"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Implementation of the OSGi R8 core framework specification"
+HOMEPAGE="https://felix.apache.org/documentation/subprojects/apache-felix-framework.html"
+SRC_URI="mirror://apache/felix/org.apache.${PN//-/.}-${PV}-source-release.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# Common dependencies
+# POM: pom.xml
+# org.codehaus.mojo:animal-sniffer-annotations:1.9 -> >=dev-java/animal-sniffer-annotations-1.15:0
+
+CP_DEPEND="dev-java/animal-sniffer-annotations:0"
+
+# Compile dependencies
+# POM: pom.xml
+# org.apache.felix:org.apache.felix.resolver:2.0.4 -> >=dev-java/felix-resolver-2.0.4:0
+# org.osgi:org.osgi.annotation:6.0.0 -> !!!artifactId-not-found!!!
+# POM: pom.xml
+# test? junit:junit:4.12 -> >=dev-java/junit-4.13.2:4
+# test? org.easymock:easymock:2.5.2 -> >=dev-java/easymock-2.5.2:2.5
+# test? org.mockito:mockito-all:1.10.19 -> !!!artifactId-not-found!!!
+# test? org.ow2.asm:asm-all:5.2 -> !!!artifactId-not-found!!!
+
+DEPEND="
+ >=virtual/jdk-11:*
+ ${CP_DEPEND}
+ dev-java/osgi-annotation:0
+ dev-java/felix-resolver:0
+ test? (
+ dev-java/asm:4
+ dev-java/easymock:2.5
+ dev-java/mockito:0
+ )
+"
+
+RDEPEND="
+ >=virtual/jre-1.8:*
+ ${CP_DEPEND}"
+
+S="${WORKDIR}/org.apache.felix.framework-${PV}"
+
+JAVA_CLASSPATH_EXTRA="felix-resolver,osgi-annotation"
+JAVA_SRC_DIR="src/main/java"
+JAVA_RESOURCE_DIRS="src/main/resources"
+
+JAVA_TEST_GENTOO_CLASSPATH="asm-4,junit-4,easymock-2.5,mockito"
+JAVA_TEST_SRC_DIR="src/test/java"
+
+src_prepare() {
+ default
+ # 58,91 pom.xml
+ cat > src/main/java/module-info.java <<-EOF
+ $( sed -n '/<moduleInfoSource>/,/<\/moduleInfoSource/p' pom.xml \
+ | grep -v moduleInfoSource )
+ EOF
+
+ sed -e 's/{dollar}//g' -i src/main/resources/default.properties || die
+
+ sed -e "s:\${pom.version}:${PV}:" \
+ -i src/main/resources/org/apache/felix/framework/Felix.properties || die
+
+ # bundling some classes from felix-resolver according to 99,132 pom.xml
+ # if we don't bundle compilation would fail with:
+ # src/main/java/module-info.java:23: error: package is empty or does not exist: org.osgi.service.resolver
+ cd src/main/resources || die
+ jar xvf "$(java-pkg_getjar --build-only felix-resolver felix-resolver.jar)" \
+ org/{apache/felix,osgi/service}/resolver/ || die
+}
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ # according to pom.xml, line 129
+ # grep the line between <Add-opens> and </Add-opens> from pom.xml
+ local add_opens="$(sed -n '/<Add-opens>/,/<\/Add-opens/p' pom.xml \
+ | grep -v Add-opens | tr -s '[:space:]')" || die
+ echo "Add-opens:${add_opens}" > "${T}/Add-opens-to-MANIFEST.MF" \
+ || die "Add-opens-to-MANIFEST.MF failed"
+ jar ufmv ${JAVA_JAR_FILENAME} "${T}/Add-opens-to-MANIFEST.MF" \
+ || die "updating MANIFEST.MF failed"
+}
+
+src_test() {
+ # java.base does not "opens java.lang" to unnamed module
+ # adding it to MANIFEST.MF would not fix the test failures.
+ local vm_version="$(java-config -g PROVIDES_VERSION)"
+ if ver_test "${vm_version}" -ge 17; then
+ JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED )
+ fi
+ java-pkg-simple_src_test
+}
diff --git a/dev-java/felix-framework/metadata.xml b/dev-java/felix-framework/metadata.xml
new file mode 100644
index 000000000000..e6816da2d497
--- /dev/null
+++ b/dev-java/felix-framework/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <bugs-to>https://issues.apache.org/jira/browse/FELIX</bugs-to>
+ <doc>https://felix.apache.org/documentation/subprojects/apache-felix-framework.html</doc>
+ <remote-id type="github">apache/felix-dev</remote-id>
+ </upstream>
+</pkgmetadata>