1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-22 08:58:47 +00:00

devel/jna: Update to 5.14.0+

ChangeLog:
https://github.com/java-native-access/jna/blob/master/CHANGES.md#next-release-5150

Features

 * Add support for FreeBSD aarch64.
 * Add support for DragonFly BSD x86-64.
 * Add IsProcessorFeaturePresent to c.s.j.p.win32.Kernel32.

Bug Fixes

 * Fix analysis of ELF binary on arm systems running with a java ELF binary
   without section table headers (java8 on armv7 NAS).
 * Fix free_callback JNI weak reference leak.
 * Check CallbackReference#cbstruct for null when checking existing Reference.

Release 5.14.0
Features

 * Add SetJob, SetPrinter to c.s.j.p.w.Winspool.
 * Add GetMethod, Put, SpawnInstance to
   c.s.j.p.win32.COM.WbemCli#IWbemClassObject and ExecMethod to
   c.s.j.p.win32.COM.WbemCli#IWbemServices.
 * Add GetPriorityClass, SetPriorityClass, GetThreadPriority, SetThreadPriority
   and associated constants to c.s.j.p.win32.Kernel32EajL3kA.
 * Make interface c.s.j.p.mac.XAttr public.
 * Add c.s.j.p.bsd.ExtAttr and c.s.j.p.bsd.ExtAttrUtil to wrap BSD
   <sys/extattr.h> system calls. @rednoah.
 * Add missing O_* (e.g. O_APPEND, O_SYNC, O_DIRECT, ...) to c.s.j.p.linux.Fcntl
  .
 * Shutdown CleanerThread once the last cleanable is removed.
 * Build linux-riscv64 on Ubuntu focal to improve compatibility with older glibc
   versions.

Bug Fixes

 * Library.OPTION_STRING_ENCODING is ignore for string arguments function calls.
 * Increase maximum supported fixed args on varargs calls from 3 to 255-nowak.
 * Fix Java 6 incompatibility in c.s.j.p.win32.Kerne32Util and c.s.j.p.win32.DBT.

Important Changes

The interfaces between Java and native code have changed, so libjnidispatch must
be rebuilt to be compatible with this release.  Release drops support for JDKs 6
+ 7, so you'll need at least JDK 8 to update to use this version.

PR:		278241
Reported by:	dmitry.wagin@ya.ru
Approved by:	ports@markdixon.name (maintainer, timeout > 2 weeks)
This commit is contained in:
Dmitry Wagin 2024-04-20 19:18:45 +02:00 committed by Fernando Apesteguía
parent 597e412c6c
commit 3b9e71f95e
4 changed files with 38 additions and 38 deletions

View File

@ -1,41 +1,40 @@
PORTNAME= jna
PORTVERSION= 5.7.0
PORTREVISION= 1
PORTVERSION= 5.15.0
CATEGORIES= devel java
MAINTAINER= ports@markdixon.name
COMMENT= Java access to native shared libraries
WWW= https://github.com/twall/jna
WWW= https://github.com/java-native-access/jna
LICENSE= LGPL21+ APACHE20
LICENSE= APACHE20 LGPL21+
LICENSE_COMB= dual
LICENSE_FILE= ${WRKSRC}/LICENSE
LICENSE_FILE_LGPL21+ = ${WRKSRC}/LGPL2.1
LICENSE_FILE_APACHE20= ${WRKSRC}/AL2.0
LICENSE_FILE_LGPL21+ = ${WRKSRC}/LGPL2.1
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_armv6= fails to compile: build.xml: compilation failed
BROKEN_armv7= fails to compile: build.xml: compilation failed
BROKEN_armv6= fails to compile: build.xml: compilation failed
BROKEN_armv7= fails to compile: build.xml: compilation failed
BUILD_DEPENDS= makeinfo:print/texinfo
USES= autoreconf:build gmake libtool xorg
USE_ANT= yes
USE_GITHUB= yes
GH_ACCOUNT= java-native-access
GH_TAGNAME= 0a33062e1971962ca6b283c397ed1de5cc053d33
USE_JAVA= yes
JAVA_VERSION= 8+
USE_XORG= x11 xt
MAKE_ARGS= -DCC="${CC}" -DLD="${LD}"
MAKE_ENV= ANT_OPTS=-Drelease -DARCH=${ANT_ARCH}
USE_GITHUB= yes
GH_ACCOUNT= java-native-access
PORTDOCS= javadoc platform-${PORTVERSION}-javadoc.jar
PLIST_FILES= %%JAVAJARDIR%%/jna-platform.jar \
%%JAVAJARDIR%%/jna.jar
MAKE_ARGS= -DCC="${CC}" \
-DLD="${LD}"
MAKE_ENV= ANT_OPTS="-Drelease -DARCH=${ANT_ARCH}"
ALL_TARGET= native jar
TEST_TARGET= test
PLIST_FILES= %%JAVAJARDIR%%/jna-platform.jar \
%%JAVAJARDIR%%/jna.jar
PORTDOCS= javadoc platform-${PORTVERSION}-javadoc.jar
OPTIONS_DEFINE= DOCS
ANT_ARCH= ${ARCH:S/amd64/x86-64/:S/i386/x86/:S/powerpc64/ppc64/}

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1615036692
SHA256 (java-native-access-jna-5.7.0_GH0.tar.gz) = cebdbb0894f011dbb5dd4288ea9cd0553aac3e0f7e8a617a59548432f1161254
SIZE (java-native-access-jna-5.7.0_GH0.tar.gz) = 104929411
TIMESTAMP = 1712524364
SHA256 (java-native-access-jna-5.15.0-0a33062e1971962ca6b283c397ed1de5cc053d33_GH0.tar.gz) = 62b56a76574ab94705f50051b96ff16c0db18bd19e0c106bc6b2141437604a8d
SIZE (java-native-access-jna-5.15.0-0a33062e1971962ca6b283c397ed1de5cc053d33_GH0.tar.gz) = 116285127

View File

@ -1,19 +1,19 @@
--- build.xml.orig 2016-03-16 14:37:28 UTC
--- build.xml.orig 2024-03-29 21:57:29 UTC
+++ build.xml
@@ -99,7 +99,7 @@
<condition property="test.compatibility" value="1.5" else="${compatibility}">
<equals arg1="${compatibility}" arg2="1.4"/>
</condition>
@@ -54,7 +54,7 @@
<property name="javadoc" location="${doc}/javadoc"/>
<property name="stylesheet" location="${javadoc}/doc/css/javadoc.css"/>
- <condition property="tests.exclude-patterns" value="**/VarArgsTest.java,**/AnnotatedLibraryTest.java,**/WebStartTest.java,**/PointerBufferTest.java,**/HeadlessLoadLibraryTest.java,**/StructureBufferFieldTest.java,**/PerformanceTest.java,**/*BufferArgumentsMarshalTest.java" else="**/wince/*.java,**/WebStartTest.java">
+ <condition property="tests.exclude-patterns" value="**/VarArgsTest.java,**/AnnotatedLibraryTest.java,**/WebStartTest.java,**/PointerBufferTest.java,**/HeadlessLoadLibraryTest.java,**/StructureBufferFieldTest.java,**/PerformanceTest.java,**/*BufferArgumentsMarshalTest.java" else="**/wince/*.java,**/WebStartTest.java,**/LibraryLoadTest.java">
<equals arg1="${os.prefix}" arg2="w32ce-arm"/>
</condition>
<property name="dist-jar" value="${dist}/${jar}"/>
@@ -1084,7 +1084,6 @@ osname=macosx;processor=x86;processor=x8
@@ -1324,7 +1324,6 @@ cd ..
<doctitle>JNA API Documentation</doctitle>
<header>${header}</header>
<bottom>${footer}</bottom>
- <link href="http://download.oracle.com/javase/${compatibility}/docs/api/"/>
- <link href="http://download.oracle.com/javase/${javac.release}/docs/api/"/>
<packageset dir="${src}" defaultexcludes="yes">
<patternset>

View File

@ -1,6 +1,6 @@
--- native/Makefile.orig 2021-02-08 18:49:25.000000000 +0000
+++ native/Makefile 2021-03-06 13:25:34.083392000 +0000
@@ -39,6 +39,8 @@
--- native/Makefile.orig 2024-03-29 21:57:29 UTC
+++ native/Makefile
@@ -41,6 +41,8 @@
# protection simply by defining HAVE_PROTECTION. This option has been only
# been enabled for those platforms on which it has been tested successfully.
@ -9,12 +9,13 @@
OS=$(shell uname | sed -e 's/CYGWIN.*/win32/g' \
-e 's/MINGW32.*/win32/g' \
-e 's/SunOS.*/solaris/g' \
@@ -291,8 +293,11 @@
ifneq (,$(findstring bsd,$(OS)))
ARCH=$(shell uname -m | sed 's/i.86/i386/g')
PCFLAGS+=-fPIC
-CINCLUDES+=-I/usr/X11R6/include
+CINCLUDES+=-I%%LOCALBASE%%/include
@@ -297,9 +299,12 @@ PCFLAGS+=-fPIC
# This is a mess: X11 headers locate in /usr/local/include on FreeBSD and
# DragonFly, in /usr/X11R7/include on NetBSD, and in /usr/X11R6/include on
# OpenBSD.
-CINCLUDES+=-I/usr/local/include -I/usr/X11R7/include -I/usr/X11R6/include
+CINCLUDES+=-I%%LOCALBASE%%/include -I/usr/X11R7/include -I/usr/X11R6/include
CINCLUDES+=$(X11INC) # Allow extra X11 include path if necessary.
LDFLAGS=-o $@ -shared
+ifeq ($(ARCH),i386)
+LDFLAGS+=-Wl,-z,notext
@ -22,7 +23,7 @@
CDEFINES+=-DHAVE_PROTECTION -DFFI_MMAP_EXEC_WRIT -DUSE_DEAFULT_LIBNAME_ENCODING
endif
@@ -356,11 +361,11 @@
@@ -363,11 +368,11 @@ ifeq ($(CC),gcc)
GCC_MAJOR_VERSION = $(shell gcc -dumpversion | cut -f 1 -d '.')
ifneq ($(GCC_MAJOR_VERSION),4)
ifneq ($(GCC_MAJOR_VERSION),3)