[PATCH] Windows 32-bit DLL name decoration (original) (raw)
Alexey Ivanov alexey.ivanov at oracle.com
Thu Nov 15 22:14:05 UTC 2018
- Previous message (by thread): [PATCH] Windows 32-bit DLL name decoration
- Next message (by thread): [PATCH] Windows 32-bit DLL name decoration
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi Ali,
Can the issue be resolved by using different call modifiers on the affected functions?
Some build / link issues were resolved by adding / removing JNICALL modifier, see https://bugs.openjdk.java.net/browse/JDK-8201226 http://mail.openjdk.java.net/pipermail/build-dev/2018-April/021553.html
https://bugs.openjdk.java.net/browse/JDK-8202476 http://mail.openjdk.java.net/pipermail/build-dev/2018-May/021913.html
Regards, Alexey
On 15/11/2018 21:43, Ali İnce wrote:
Hi,
An issue (https://github.com/AdoptOpenJDK/openjdk-build/issues/709) raised against AdoptOpenJDK jdk11 32-bit windows builds led us to the name decoration problem on built 32-bit dlls - specifically dtsocket.dll and dtshmem.dll. Whereas 64-bit MSVC builds don’t apply any name decorations on exported functions, 32-bit builds apply them - which requires either def files or /export flags to be specified on the linker arguments. Although the expected linker arguments were present on previous jdk makefiles, they were removed in jdk11 makefiles. Below is the proposed patch, which can also be browsed at https://github.com/AdoptOpenJDK/openjdk-jdk11u/pull/1. Would you please have a look and let me know of any points I may have missed (I don’t have any background information about why the export flags were removed in jdk11)? Regards, Ali diff --git a/make/lib/Lib-jdk.jdi.gmk b/make/lib/Lib-jdk.jdi.gmk index 197b95c2e2..ac6ebf5591 100644 --- a/make/lib/Lib-jdk.jdi.gmk +++ b/make/lib/Lib-jdk.jdi.gmk @@ -37,6 +37,7 @@ ifeq ($(OPENJDKTARGETOS), windows) _jdk.jdwp.agent:include _ _jdk.jdwp.agent:libjdwp/export, _ _LDFLAGS := $(LDFLAGSJDKLIB), _ _+ LDFLAGSwindows := -export:jdwpTransportOnLoad, _ _LIBS := $(JDKLIBLIBS), _ )) diff --git a/make/lib/Lib-jdk.jdwp.agent.gmk b/make/lib/Lib-jdk.jdwp.agent.gmk index 0bc93e0d35..0382e55325 100644 --- a/make/lib/Lib-jdk.jdwp.agent.gmk +++ b/make/lib/Lib-jdk.jdwp.agent.gmk _@@ -37,6 +37,7 @@ (eval(eval (eval(call SetupJdkLibrary, BUILDLIBDTSOCKET, _ _libjdwp/export, _ _LDFLAGS := $(LDFLAGSJDKLIB) _ _$(call SETSHAREDLIBRARYORIGIN), _ _+ LDFLAGSwindows := -export:jdwpTransportOnLoad, _ _LIBSlinux := -lpthread, _ _LIBSsolaris := -lnsl -lsocket, _ _LIBSwindows := $(JDKLIBLIBS) ws232.lib, _
- Previous message (by thread): [PATCH] Windows 32-bit DLL name decoration
- Next message (by thread): [PATCH] Windows 32-bit DLL name decoration
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]