Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Success

Changes

Summary

  1. uses-sdk android:minSdkVersion="24" android:targetSdkVersion="35" (2025-08-31 requirements) (details)
  2. Bug 1519 - NativeLibrary: Clarify search order, allow added search-path + add property `jogamp.primary.library.path` (details)
Commit 9726442a2c70c4d496184a4bc97d306bb75e443f by Sven Gothel
uses-sdk android:minSdkVersion="24" android:targetSdkVersion="35" (2025-08-31 requirements)
The file was modifiedmake/resources/android/AndroidManifest-Launcher.xml (diff)
The file was modifiedmake/jogamp-env.xml (diff)
The file was modifiedmake/resources/android/AndroidManifest-Runtime.xml (diff)
The file was modifiedmake/resources/android/AndroidManifest-Test.xml (diff)
The file was modifieddoc/HowToBuild.html (diff)
Commit 581549571c0a0bd245621a004cc2a9be6d10888b by Sven Gothel
Bug 1519 - NativeLibrary: Clarify search order, allow added search-path + add property `jogamp.primary.library.path`

This feature enhances Bug 1510 and Bug 1511 further.

+++

NativeLibrary now allows adding (user) search path to the OS linker facility where supported (Windows).

For this feature, we require to have more information for the `DynamicLinker`
implementation, i.e. the new `NativeLibrary.LibPath` exposing
- whether its an absolute path,
- contained directory shall be added to search path (first) and
- otherwise potential added search path to prepend.

This feature is currently only supported by the Windows native linker,
since the POSIX `dlopen` facility doesn't allow to modify `LD_LIBRARY_PATH` at runtime.

+++

Add Java property `jogamp.primary.library.path` containing a separated path
in the OS system's format.

These paths will be searched first,
allowing to inject custom native libraries at runtime.

+++

NativeLibrary's search order was not clear, or had a bug in regards to `searchSystemPathFirst`.
Here the system and user lib-path was not well separated.

Clarified search order is documented in NativeLibrary class API doc.
The file was modifiedsrc/junit/com/jogamp/common/os/TestElfReader01.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/NativeLibrary.java (diff)
The file was modifiedsrc/native/windows/WindowsDynamicLinkerImpl_JNI.c (diff)
The file was modifiedsrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundle.java (diff)
The file was modifiedsrc/java/jogamp/common/os/BionicDynamicLinker64BitImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/BionicDynamicLinker32bitImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLinker.java (diff)
The file was modifiedsrc/java/jogamp/common/os/PosixDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/DynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/PlatformPropsImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.java (diff)
The file was modifiedsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.java (diff)