The Jenkins Controller is preparing for shutdown. No new builds can be started.
Summary
- Implement Bug #598 - JOGL ALL JAR File Change incl. it's Native Jar URL (details)
Commit
9a71703904ebfec343fb2c7266343d37a2e4c3db
by Sven GothelImplement Bug #598 - JOGL ALL JAR File Change incl. it's Native Jar URL Derivation
+++
JNILibLoaderBase.addNativeJarLibs(..): Add API doc JNILibLoaderBase: "addNativeJarLibs(Class<?> classFromJavaJar, String allNativeJarBaseName, String[] atomicNativeJarBaseNames)" -> "addNativeJarLibs(Class<?>[] classesFromJavaJars, String singleJarMarker, String[] stripBasenameSuffixes)"
Derive the 'all' (1st choice) native JAR URL solely on the given class's JAR URL.
Examples:
JOCL: // only: jocl.jar -> jocl-natives-'os.and.arch'.jar addNativeJarLibs(new Class<?>[] { JOCLJNILibLoader.class }, null, null );
JOGL: final ClassLoader cl = GLProfile.class.getClassLoader(); // either: [jogl-all.jar, jogl-all-noawt.jar, jogl-all-mobile.jar] -> jogl-all-natives-<os.and.arch>.jar // or: nativewindow-core.jar -> nativewindow-natives-<os.and.arch>.jar, // jogl-core.jar -> jogl-natives-<os.and.arch>.jar, // (newt-core.jar -> newt-natives-<os.and.arch>.jar)? (if available) final String newtFactoryClassName = "com.jogamp.newt.NewtFactory"; final Class<?>[] classesFromJavaJars = new Class<?>[] { NWJNILibLoader.class, GLProfile.class, null }; if( ReflectionUtil.isClassAvailable(newtFactoryClassName, cl) ) { classesFromJavaJars[2] = ReflectionUtil.getClass(newtFactoryClassName, false, cl); } JNILibLoaderBase.addNativeJarLibs(classesFromJavaJars, "-all", new String[] { "-noawt", "-mobile", "-core" } );
Efficiency / Performance: - Reduced JAR URL lookup calls JarUtil.getJarURL(..) - JNILibLoaderBase, Platform, JarUtil - Attempt loading Jar files (native, class, ..) only once - TempJarCache
Code Cleanup (IOUtil, JarUtil, : - IOException if not found - IllegalArgumentException if null argument
+++
jogamp.android-launcher.jar -> jogamp-android-launcher.jar
+++
|
The file was modified
| src/java/com/jogamp/common/os/Platform.java (diff) |
The file was modified
| src/junit/com/jogamp/common/util/TestJarUtil.java (diff) |
The file was modified
| make/build-test.xml (diff) |
The file was modified
| make/scripts/adb-install-all-armv7.sh (diff) |
The file was modified
| src/java/com/jogamp/common/jvm/JNILibLoaderBase.java (diff) |
The file was modified
| make/build.xml (diff) |
The file was modified
| src/java/com/jogamp/common/util/IOUtil.java (diff) |
The file was modified
| src/java/com/jogamp/common/util/JarUtil.java (diff) |
The file was modified
| src/java/com/jogamp/common/util/cache/TempJarCache.java (diff) |
The file was modified
| src/junit/com/jogamp/common/util/TestTempJarCache.java (diff) |