summaryrefslogtreecommitdiff
path: root/dev-java/jna
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-02 22:43:17 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-02 22:43:17 +0000
commit44f7bdd4803ecacf7943d21fdf2531eb2ea9aeff (patch)
tree4710102399c8e8f01d716ea1139c8fd2db449d7d /dev-java/jna
parent417ef5d7c7bd36af15766ab14554600fbe7daed7 (diff)
gentoo auto-resync : 02:02:2025 - 22:43:16
Diffstat (limited to 'dev-java/jna')
-rw-r--r--dev-java/jna/Manifest2
-rw-r--r--dev-java/jna/jna-5.16.0.ebuild192
2 files changed, 194 insertions, 0 deletions
diff --git a/dev-java/jna/Manifest b/dev-java/jna/Manifest
index dca9980403f6..9919f2623155 100644
--- a/dev-java/jna/Manifest
+++ b/dev-java/jna/Manifest
@@ -5,7 +5,9 @@ AUX jna-5.13.0-testpath.patch 5567 BLAKE2B 0c76e603af9ae2a1f3cacde220ec4451d5973
DIST jna-5.13.0.tar.gz 116027625 BLAKE2B 1f2bc7ab28adefa0bbad122957ed2c6ef55ab88e79b30c05f0d2d88e0e05152f7bb5e28097906a7e24f78304dfa2b225587adb0ada205ca3c2ceac1cdbab3f04 SHA512 aefd0becc03bb7fd753e8c5cdcbcb20f6d590125a5fb03048bef0024e826ab0254b750e22a8bb26bea38cc89262ad45e5030b666cb2c857b01b15a6a55379a0f
DIST jna-5.14.0.tar.gz 116167104 BLAKE2B 3ccb9e53e843690f9c90272c2e94fb2d903dd9bbcb7b6294a6ed3d973d3945c2b3fe5ac5e4c472830a7d07f4f32d84e781bb2ae3bd73cdd1894392331554e2cd SHA512 5758898052b3b099cd8b40046f764813377970a428e66370ba2a7125403661e25379d55fdb0ff75de32d66cbff20f0a05f438b2ca18804cc53f2edf4b1927ff0
DIST jna-5.15.0.tar.gz 117272793 BLAKE2B e16f507df75715a73d2d9e35d6a31868723effdb14f86ddfdd5c49c2e925f73c6cba8375660d3b89ecd72ab54d58f14bc1347671ccf40dfe32288230629de49b SHA512 b3329138bbdb5040da7a6b305af37e46ffd02948551f5c9fc2815eb7a66946807c3b9152797808b5a171735d6a1a241f25dc0ef95ecacf897926135727d1d533
+DIST jna-5.16.0.tar.gz 117007067 BLAKE2B 805cc1b9a23a0bddad77900b7158d00dde3827dd577f68bdbc4d7de8a1d6d368826accee92bc76b3ea3188d1f9e3655776141136c04238c51bcedcb587937109 SHA512 76124b4c885e81f68f7724a04508a76f9b366867faede11d9b75c1c56e46f904825f4d05ce94e7e3c0e4b759007c589d4fbdb90f93864a51044b5baa6b9ca21a
EBUILD jna-5.13.0-r1.ebuild 5362 BLAKE2B 45afcd8316679df0621c01f432a11913a367725800fd1705aa095f5b8623ad5e99a824ba3728c03ece164e63e45dc128fa2790d03000f8827cfa02568a1fac73 SHA512 09b768f2cc2b835f6dd466d66a1133f78fc15eb266c3a85cd52779d3d5efb07ea7f8bc3ea2756045971cafcbd46c02c41b14eef5fbe0d247230f135a72e417f8
EBUILD jna-5.14.0-r1.ebuild 5386 BLAKE2B c57ce74e3f8527748e2a185d04a92a7436c38a07612586fb157c54eea0b6e428171b9b04f636a7638a63b35ecba8833272d6f6170195639f920ae84925fb2451 SHA512 25976ce6100e9c089c963588a859deeb725460476d0cf5905f36310a2b096c30e3db6a16434c3bf717cd7eda9bd8a760c70fd65162cc2bb0a6dd616d087d84fb
EBUILD jna-5.15.0.ebuild 5395 BLAKE2B a9ff11d374ac460835724a3c9de9c00d757c35d5e4c33d56af443bd2999ba55129e18ce57674cde6e5de3e21af21a48eb0f6362eec17ef77c3d278b53529a123 SHA512 046148031eba74b75ce2ef417701fb3b925ffdcca93eca0a1a9054bfe9c193dabe92cc7bf7c85f8a2491fb4f3f24e5b363171a7e96509f50e40f66e92a9c4974
+EBUILD jna-5.16.0.ebuild 5387 BLAKE2B 6408e5816fb64e242bea96310bc627ff4c26aa636988213e76fdca24fcda123f608fa11fca8fa0471b06011cc6036f98f00ab02aa610015fac538a93c0727aab SHA512 010f746e2d172908780613d1a7253bcba0d2e1c45016ee37c435849513d7aca256f470aaf79eb6855b3e2ba5a8806aec1d0783db90c79581025618342e7ca27e
MISC metadata.xml 334 BLAKE2B 9e55710ddf27995f7f0ea6480a4b2ff6ed38424e5a8de87614715defa4ae9f788932d270df48e78fdadb27851f06f2651d94c0b043816151aea55c08f083c4ee SHA512 b8b0cc53cc447f2811b3e94638de0799efaf99a05f29a0341d3a261b1f0f996ca308a007221f165031e56e60339d8d616ca366f25eda7f7f5d55acfc60a9d695
diff --git a/dev-java/jna/jna-5.16.0.ebuild b/dev-java/jna/jna-5.16.0.ebuild
new file mode 100644
index 000000000000..5c82c2a61a33
--- /dev/null
+++ b/dev-java/jna/jna-5.16.0.ebuild
@@ -0,0 +1,192 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_PROVIDES="
+ net.java.dev.jna:jna:${PV}
+ net.java.dev.jna:jna-platform:${PV}
+"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple toolchain-funcs
+
+DESCRIPTION="Java Native Access"
+HOMEPAGE="https://github.com/java-native-access/jna"
+SRC_URI="https://github.com/java-native-access/jna/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P}"
+
+LICENSE="|| ( Apache-2.0 LGPL-2.1+ )"
+SLOT="4"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+BDEPEND="virtual/pkgconfig"
+
+CDEPEND=">=dev-libs/libffi-3.4:="
+
+DEPEND="
+ ${CDEPEND}
+ >=virtual/jdk-1.8:*
+ x11-base/xorg-proto:0
+ x11-libs/libXt
+ test? ( dev-java/reflections:0 )
+"
+
+RDEPEND="
+ ${CDEPEND}
+ >=virtual/jre-1.8:*
+"
+
+DOCS=( README.md CHANGES.md OTHERS TODO )
+PATCHES=(
+ "${FILESDIR}/5.11.0-makefile-flags.patch"
+ "${FILESDIR}/jna-5.11.0-no-Werror.patch"
+ "${FILESDIR}/jna-5.13.0-testpath.patch"
+ "${FILESDIR}/jna-5.13.0-LibCTest.patch"
+)
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+ java-pkg_clean
+ mkdir -p "res/META-INF" || die
+ echo "Main-Class: com.sun.jna.Native" > "res/META-INF/MANIFEST.MF" || die
+
+ # https://github.com/java-native-access/jna/blob/5.13.0/build.xml#L402-L407
+ sed \
+ -e "/VERSION =/s:TEMPLATE:${PV}:" \
+ -e '/VERSION_NATIVE =/s:TEMPLATE:5.1.0:' \
+ -i src/com/sun/jna/Version.java || die
+}
+
+src_compile() {
+ einfo "Compiling jna.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.sun.jna"
+ JAVA_JAR_FILENAME="jna.jar"
+ JAVA_RESOURCE_DIRS="res"
+ JAVA_SRC_DIR="src"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jna.jar"
+ rm -r target || die
+
+ einfo "Compiling jna-platform.jar"
+ JAVA_AUTOMATIC_MODULE_NAME="com.sun.jna.platform"
+ JAVA_JAR_FILENAME="jna-platform.jar"
+ JAVA_RESOURCE_DIRS=""
+ JAVA_SRC_DIR="contrib/platform/src"
+ java-pkg-simple_src_compile
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":jna-platform.jar"
+ rm -r target || die
+
+ if use doc; then
+ einfo "Compiling javadocs"
+ JAVA_SRC_DIR=(
+ "src"
+ "contrib/platform/src"
+ )
+ JAVA_JAR_FILENAME="ignoreme.jar"
+ java-pkg-simple_src_compile
+ fi
+
+ einfo "Generating headers com_sun_jna_Native.h com_sun_jna_Function.h"
+ ejavac -h native -classpath "src" \
+ "src/com/sun/jna/Function.java" \
+ "src/com/sun/jna/Native.java" || die
+
+ einfo "Building native library"
+ cd native || die
+ local args=(
+ CC="$(tc-getCC)"
+ STRIP=true
+ DYNAMIC_LIBFFI=true
+ )
+ # Using -j1 since otherwise fails to build:
+ # cannot find ../build/native/libtestlib.so: No such file or directory
+ # [Makefile:505: ../build/native/libtestlib2.so] Error 1
+ emake -j1 "${args[@]}"
+}
+
+src_test() {
+ JAVA_TEST_EXTRA_ARGS=(
+ -Djna.nosys=true
+ -Djna.boot.library.path=build/native
+ -Djna.library.path=build/native
+ )
+ JAVA_TEST_GENTOO_CLASSPATH="
+ junit-4
+ reflections
+ "
+
+ JAVA_TEST_SRC_DIR="contrib/platform/test"
+ rm -r contrib/platform/test/com/sun/jna/platform/{mac,unix,win32} || die
+ JAVA_TEST_EXCLUDES=(
+ # 1) testGetXAttr(com.sun.jna.platform.linux.XAttrUtilTest)
+ # java.io.IOException: errno: 95
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:85)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:70)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:56)
+ # at com.sun.jna.platform.linux.XAttrUtilTest.testGetXAttr(XAttrUtilTest.java:83)
+ # 2) setXAttr(com.sun.jna.platform.linux.XAttrUtilTest)
+ # java.io.IOException: errno: 95
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:85)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:70)
+ # at com.sun.jna.platform.linux.XAttrUtil.setXAttr(XAttrUtil.java:56)
+ # at com.sun.jna.platform.linux.XAttrUtilTest.setXAttr(XAttrUtilTest.java:53)
+ com.sun.jna.platform.linux.XAttrUtilTest
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_SRC_DIR="test"
+ rm -r test/com/sun/jna/wince || die
+ rm -r test/com/sun/jna/win32 || die
+
+ # 1) testLoadFromJarAbsolute(com.sun.jna.LibraryLoadTest)
+ # java.lang.UnsatisfiedLinkError: Unable to load library '/libtestlib-jar.so':
+ # /libtestlib-jar.so: cannot open shared object file: No such file or directory
+ jar cvf build/jna-test.jar \
+ -C build/native libtestlib-jar.so \
+ -C test com/sun/jna/data || die
+ JAVA_GENTOO_CLASSPATH_EXTRA+=":build/jna-test.jar"
+
+ JAVA_TEST_EXCLUDES=(
+ com.sun.jna.CallbacksTest # Needs to run separately
+ com.sun.jna.DirectTest # Needs to run separately
+ com.sun.jna.NativeTest # Needs to run separately
+ com.sun.jna.TypeMapperTest # Needs to run separately
+ com.sun.jna.UnionTest # Needs to run separately
+ com.sun.jna.VMCrashProtectionTest # Needs to run separately
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=(
+ com.sun.jna.CallbacksTest
+ com.sun.jna.DirectTest
+ com.sun.jna.UnionTest
+ )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=( com.sun.jna.NativeTest )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=( com.sun.jna.VMCrashProtectionTest )
+ java-pkg-simple_src_test
+
+ JAVA_TEST_RUN_ONLY=( com.sun.jna.TypeMapperTest )
+ java-pkg-simple_src_test
+}
+
+src_install() {
+ default
+ java-pkg_dojar jna.jar jna-platform.jar
+ java-pkg_doso build/native/libjnidispatch.so
+
+ if use doc; then
+ java-pkg_dojavadoc target/api
+ fi
+
+ if use source; then
+ java-pkg_dosrc "src/*"
+ java-pkg_dosrc "contrib/platform/src/*"
+ fi
+}