.classpath | 8 +- .gitignore | 1 + .gitlab-ci.yml | 69 ++ .settings/org.eclipse.jdt.core.prefs | 15 + .settings/org.eclipse.jdt.ui.prefs | 2 + LICENSE.txt | 25 +- doc/HowToBuild.html | 204 +++--- doc/manual/example1/gen.sh | 4 +- doc/manual/example2/gen.sh | 2 +- doc/manual/example3/gen.sh | 2 +- doc/manual/example4/gen.sh | 2 +- doc/manual/example5/gen.sh | 2 +- doc/manual/example6/gen.sh | 2 +- doc/manual/example7/gen.sh | 2 +- doc/manual/index.html | 16 +- make/Manifest | 5 + make/Manifest-android-launcher | 8 +- make/Manifest-rt | 5 + make/Manifest-rt-alt | 5 + make/Manifest-rt-android | 11 +- make/Manifest-rt-natives | 5 + make/Manifest-rt.cdc | 5 + make/build-test.xml | 48 +- make/build.xml | 438 +++++++++--- make/doc/javadoc/resources/glass.png | Bin 0 -> 499 bytes make/doc/javadoc/resources/x.png | Bin 0 -> 394 bytes make/doc/javadoc/stylesheet.css | 770 ++++++++++++++++----- make/gluegen-cpptasks-base.xml | 539 +++++++++++---- make/gluegen-cpptasks-custom.xml | 6 +- make/gluegen-properties.xml | 21 +- make/jogamp-androidtasks.xml | 55 +- make/jogamp-env.xml | 270 +++++--- make/jogamp-fat.mf | 2 +- make/lib/android-sdk/15/android-java-src.txt | 8 - make/lib/android-sdk/15/android-java-src.zip | Bin 10711470 -> 0 bytes make/lib/android-sdk/15/android.jar | Bin 17190617 -> 0 bytes make/lib/android-sdk/21/LICENSE.txt | 10 - make/lib/android-sdk/21/NOTICE.txt | 195 ------ make/lib/android-sdk/{15 => 24}/LICENSE.txt | 4 + make/lib/android-sdk/{15 => 24}/NOTICE.txt | 0 .../android-sdk/{21 => 24}/android-java-src.txt | 2 +- .../android-sdk/{21 => 24}/android-java-src.zip | Bin 20748908 -> 23053461 bytes make/lib/android-sdk/{21 => 24}/android.jar | Bin 25845286 -> 34266947 bytes make/lib/android-sdk/9/LICENSE.txt | 10 - make/lib/android-sdk/9/NOTICE.txt | 195 ------ make/lib/android-sdk/9/android-java-src.txt | 22 - make/lib/android-sdk/9/android-java-src.zip | Bin 6020823 -> 0 bytes make/lib/android-sdk/9/android.jar | Bin 8407956 -> 0 bytes make/lib/cpptasks-version.txt | 1 + make/lib/cpptasks.jar | Bin 377953 -> 386216 bytes make/lib/gluegen-cpptasks-android-aarch64.xml | 128 ++-- make/lib/gluegen-cpptasks-android-armv6.xml | 136 ++-- make/lib/gluegen-cpptasks-android-x86.xml | 147 ++++ make/lib/gluegen-cpptasks-ios-aarch64.xml | 18 + make/lib/gluegen-cpptasks-ios-amd64.xml | 17 + make/lib/gluegen-cpptasks-linux-32bit.xml | 6 +- .../gluegen-cpptasks-linux-aarch64-ontarget.xml | 61 ++ make/lib/gluegen-cpptasks-linux-aarch64.xml | 62 ++ ...=> gluegen-cpptasks-linux-armv6hf-ontarget.xml} | 22 +- make/lib/gluegen-cpptasks-linux-armv6hf.xml | 6 +- make/lib/toolchain/aarch64-linux-gnueabi/bin/c++ | 1 + make/lib/toolchain/aarch64-linux-gnueabi/bin/cc | 1 + make/lib/toolchain/aarch64-linux-gnueabi/bin/g++ | 1 + make/lib/toolchain/aarch64-linux-gnueabi/bin/gcc | 1 + make/lib/toolchain/aarch64-linux-gnueabi/bin/ld | 1 + .../toolchain/aarch64-linux-gnueabi/bin/objdump | 1 + make/lib/toolchain/aarch64-linux-gnueabi/bin/strip | 1 + make/lib/toolchain/armhf-linux-gnueabi/bin/c++ | 2 +- make/lib/toolchain/armhf-linux-gnueabi/bin/cc | 2 +- make/lib/toolchain/armhf-linux-gnueabi/bin/g++ | 2 +- make/lib/toolchain/armhf-linux-gnueabi/bin/gcc | 2 +- make/lib/toolchain/armhf-linux-gnueabi/bin/ld | 2 +- make/lib/toolchain/armhf-linux-gnueabi/bin/objdump | 2 +- make/lib/toolchain/armhf-linux-gnueabi/bin/strip | 2 +- make/lib/toolchain/armsf-linux-gnueabi/bin/c++ | 1 - make/lib/toolchain/armsf-linux-gnueabi/bin/cc | 1 - make/lib/toolchain/armsf-linux-gnueabi/bin/g++ | 1 - make/lib/toolchain/armsf-linux-gnueabi/bin/gcc | 1 - make/lib/toolchain/armsf-linux-gnueabi/bin/ld | 1 - make/lib/toolchain/armsf-linux-gnueabi/bin/objdump | 1 - make/lib/toolchain/armsf-linux-gnueabi/bin/strip | 1 - make/lib/v2.3.2/gluegen-rt.jar | Bin 0 -> 345605 bytes .../resources/android/AndroidManifest-Launcher.xml | 2 +- make/resources/android/AndroidManifest-Runtime.xml | 2 +- make/resources/android/AndroidManifest-Test.xml | 2 +- make/scripts/adb-am-force-stop-all.sh | 14 + make/scripts/adb-install-all-x86.sh | 2 + make/scripts/adb-launch-main.sh | 2 +- make/scripts/adb-pm-clear-all.sh | 14 + make/scripts/adb-reinstall-all-x86.sh | 5 + make/scripts/check-java-major-version.sh | 2 +- make/scripts/crosstest-java-android-armv6-rel.sh | 2 +- make/scripts/crosstest-java-linux-armv6-rel.sh | 2 +- make/scripts/crosstest-java-linux-armv6hf-rel.sh | 2 +- make/scripts/crosstest-junit-linux-armv7-rel.sh | 2 +- make/scripts/java-win32.bat | 24 - make/scripts/java-win64.bat | 22 +- make/scripts/make.gluegen.all-host-linux.sh | 20 + make/scripts/make.gluegen.all-host-macos.sh | 16 + .../make.gluegen.all.android-aarch64-cross.sh | 55 +- .../make.gluegen.all.android-armv6-cross.sh | 52 +- make/scripts/make.gluegen.all.android-x86-cross.sh | 60 ++ make/scripts/make.gluegen.all.generic.sh | 6 +- make/scripts/make.gluegen.all.ios.amd64.sh | 36 + make/scripts/make.gluegen.all.ios.arm64.sh | 36 + .../make.gluegen.all.linux-aarch64-cross.sh | 39 ++ make/scripts/make.gluegen.all.linux-aarch64.sh | 26 + make/scripts/make.gluegen.all.linux-armv6-cross.sh | 51 -- make/scripts/make.gluegen.all.linux-armv6.sh | 21 - .../make.gluegen.all.linux-armv6hf-cross.sh | 19 +- make/scripts/make.gluegen.all.linux-armv6hf.sh | 11 +- make/scripts/make.gluegen.all.linux-ppc64le.sh | 28 + make/scripts/make.gluegen.all.linux-x86-clang.sh | 10 +- make/scripts/make.gluegen.all.linux-x86.sh | 10 +- .../scripts/make.gluegen.all.linux-x86_64-clang.sh | 10 +- make/scripts/make.gluegen.all.linux-x86_64.sh | 17 +- make/scripts/make.gluegen.all.macosx-java6.sh | 29 - make/scripts/make.gluegen.all.macosx.sh | 12 +- make/scripts/make.gluegen.all.sh | 9 - make/scripts/make.gluegen.all.solaris-x86.sh | 4 +- make/scripts/make.gluegen.all.solaris-x86_64.sh | 4 +- make/scripts/make.gluegen.all.win32.bat | 24 - make/scripts/make.gluegen.all.win64.bat | 21 +- make/scripts/make.macosx.jdk_lipo_libs.sh | 17 + make/scripts/runtest-x32.bat | 16 - make/scripts/runtest-x64.bat | 6 +- make/scripts/runtest.sh | 20 +- make/scripts/setenv-android-tools.sh | 410 +++++++++-- ...uild-jogl-x86.sh => setenv-build-jogamp-x86.sh} | 38 +- ...ogl-x86_64.sh => setenv-build-jogamp-x86_64.sh} | 28 +- make/scripts/test-win32-smb_share.bat | 24 - make/stub_includes/jni/jni.h | 4 + make/stub_includes/platform/glibc-compat-symbols.h | 16 +- nbproject/ide-file-targets.xml | 14 +- nbproject/project.xml | 8 +- src/java/com/jogamp/common/GlueGenVersion.java | 43 ++ .../com/jogamp/common/jvm/JNILibLoaderBase.java | 20 +- .../common/net/GenericURLStreamHandlerFactory.java | 5 +- src/java/com/jogamp/common/nio/AbstractBuffer.java | 2 +- src/java/com/jogamp/common/nio/Buffers.java | 93 +++ .../common/nio/MappedByteBufferInputStream.java | 108 ++- src/java/com/jogamp/common/nio/PointerBuffer.java | 2 +- src/java/com/jogamp/common/os/AndroidVersion.java | 24 +- .../com/jogamp/common/os/DynamicLibraryBundle.java | 14 +- .../jogamp/common/os/DynamicLibraryBundleInfo.java | 15 + src/java/com/jogamp/common/os/MachineDataInfo.java | 13 +- src/java/com/jogamp/common/os/NativeLibrary.java | 243 +++++-- src/java/com/jogamp/common/os/Platform.java | 22 +- src/java/com/jogamp/common/util/ArrayHashSet.java | 24 - src/java/com/jogamp/common/util/Bitfield.java | 52 ++ src/java/com/jogamp/common/util/Bitstream.java | 5 +- src/java/com/jogamp/common/util/FunctionTask.java | 17 +- src/java/com/jogamp/common/util/IOUtil.java | 277 +++++--- src/java/com/jogamp/common/util/IntBitfield.java | 162 ----- src/java/com/jogamp/common/util/IntIntHashMap.java | 5 +- src/java/com/jogamp/common/util/JarUtil.java | 16 +- src/java/com/jogamp/common/util/JogampVersion.java | 50 ++ .../com/jogamp/common/util/PropertyAccess.java | 2 +- .../com/jogamp/common/util/ReflectionUtil.java | 3 +- src/java/com/jogamp/common/util/RunnableTask.java | 20 +- src/java/com/jogamp/common/util/SHASum.java | 329 +++++++++ src/java/com/jogamp/common/util/SecurityUtil.java | 51 +- src/java/com/jogamp/common/util/TaskBase.java | 31 +- src/java/com/jogamp/common/util/UnsafeUtil.java | 221 ++++++ src/java/com/jogamp/common/util/VersionUtil.java | 14 +- .../jogamp/common/util/WeakIdentityHashMap.java | 316 +++++++++ .../com/jogamp/common/util/awt/AWTEDTExecutor.java | 20 +- .../com/jogamp/common/util/cache/TempCacheReg.java | 8 +- .../jogamp/common/util/cache/TempFileCache.java | 51 +- .../com/jogamp/common/util/cache/TempJarCache.java | 128 ++-- src/java/com/jogamp/gluegen/JavaEmitter.java | 7 + .../jogamp/gluegen/runtime/ProcAddressTable.java | 5 +- .../structgen/CStructAnnotationProcessor.java | 9 +- .../android/launcher/LauncherTempFileCache.java | 2 +- src/java/jogamp/common/Debug.java | 4 +- src/java/jogamp/common/os/DynamicLinkerImpl.java | 11 +- .../jogamp/common/os/MachineDataInfoRuntime.java | 11 +- src/java/jogamp/common/os/PlatformPropsImpl.java | 129 +++- .../jogamp/common/os/UnixDynamicLinkerImpl.java | 7 +- .../jogamp/common/os/android/AndroidUtilsImpl.java | 2 +- .../net/highteq/nativetaglet/NativeTaglet.java | 145 ++-- .../nio/{BuffersTest.java => TestBuffers.java} | 10 +- .../common/nio/TestByteBufferCopyStream.java | 11 + ...ctoryTest.java => TestCachedBufferFactory.java} | 6 +- src/junit/com/jogamp/common/util/BitDemoData.java | 7 +- .../jogamp/common/util/TestIteratorIndexCORE.java | 22 +- src/junit/com/jogamp/common/util/TestJarUtil.java | 14 +- .../com/jogamp/common/util/TestTempJarCache.java | 20 +- .../com/jogamp/common/util/TestVersionInfo.java | 22 +- .../jogamp/common/util/TestVersionSemantics.java | 13 +- .../common/util/locks/TestRecursiveLock01.java | 6 +- .../util/locks/TestRecursiveThreadGroupLock01.java | 6 +- .../test/junit/generation/BindingJNILibLoader.java | 38 +- .../generation/Test1p2DynamicLibraryBundle.java | 271 ++++++++ .../junit/generation/Test1p2LoadJNIAndImplLib.java | 2 +- .../generation/Test1p2ProcAddressEmitter.java | 2 +- .../jogamp/gluegen/test/junit/generation/test1.h | 10 +- .../gluegen/test/junit/structgen/package-info.java | 2 +- src/junit/com/jogamp/junit/sec/Applet01.java | 2 +- .../com/jogamp/junit/sec/TestSecIOUtil01.java | 2 +- src/junit/com/jogamp/junit/util/JunitTracer.java | 2 +- src/native/common/JVM_JNI8.c | 42 ++ test/junit/com/jogamp/gluegen/build.xml | 5 +- www/index.html | 2 + 204 files changed, 5725 insertions(+), 2483 deletions(-) create mode 100644 .gitlab-ci.yml create mode 100644 .settings/org.eclipse.jdt.core.prefs create mode 100644 .settings/org.eclipse.jdt.ui.prefs create mode 100644 make/doc/javadoc/resources/glass.png create mode 100644 make/doc/javadoc/resources/x.png delete mode 100644 make/lib/android-sdk/15/android-java-src.txt delete mode 100644 make/lib/android-sdk/15/android-java-src.zip delete mode 100644 make/lib/android-sdk/15/android.jar delete mode 100644 make/lib/android-sdk/21/LICENSE.txt delete mode 100644 make/lib/android-sdk/21/NOTICE.txt rename make/lib/android-sdk/{15 => 24}/LICENSE.txt (90%) rename make/lib/android-sdk/{15 => 24}/NOTICE.txt (100%) rename make/lib/android-sdk/{21 => 24}/android-java-src.txt (75%) rename make/lib/android-sdk/{21 => 24}/android-java-src.zip (65%) rename make/lib/android-sdk/{21 => 24}/android.jar (55%) delete mode 100644 make/lib/android-sdk/9/LICENSE.txt delete mode 100644 make/lib/android-sdk/9/NOTICE.txt delete mode 100644 make/lib/android-sdk/9/android-java-src.txt delete mode 100644 make/lib/android-sdk/9/android-java-src.zip delete mode 100644 make/lib/android-sdk/9/android.jar create mode 100644 make/lib/gluegen-cpptasks-android-x86.xml create mode 100644 make/lib/gluegen-cpptasks-ios-aarch64.xml create mode 100644 make/lib/gluegen-cpptasks-ios-amd64.xml create mode 100644 make/lib/gluegen-cpptasks-linux-aarch64-ontarget.xml create mode 100644 make/lib/gluegen-cpptasks-linux-aarch64.xml rename make/lib/{gluegen-cpptasks-linux-armv6.xml => gluegen-cpptasks-linux-armv6hf-ontarget.xml} (81%) create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/c++ create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/cc create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/g++ create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/gcc create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/ld create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/objdump create mode 120000 make/lib/toolchain/aarch64-linux-gnueabi/bin/strip delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/c++ delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/cc delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/g++ delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/gcc delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/ld delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/objdump delete mode 120000 make/lib/toolchain/armsf-linux-gnueabi/bin/strip create mode 100644 make/lib/v2.3.2/gluegen-rt.jar create mode 100644 make/scripts/adb-am-force-stop-all.sh create mode 100755 make/scripts/adb-install-all-x86.sh create mode 100644 make/scripts/adb-pm-clear-all.sh create mode 100755 make/scripts/adb-reinstall-all-x86.sh delete mode 100755 make/scripts/java-win32.bat create mode 100755 make/scripts/make.gluegen.all-host-linux.sh create mode 100755 make/scripts/make.gluegen.all-host-macos.sh create mode 100755 make/scripts/make.gluegen.all.android-x86-cross.sh create mode 100755 make/scripts/make.gluegen.all.ios.amd64.sh create mode 100755 make/scripts/make.gluegen.all.ios.arm64.sh create mode 100755 make/scripts/make.gluegen.all.linux-aarch64-cross.sh create mode 100755 make/scripts/make.gluegen.all.linux-aarch64.sh delete mode 100755 make/scripts/make.gluegen.all.linux-armv6-cross.sh delete mode 100755 make/scripts/make.gluegen.all.linux-armv6.sh create mode 100644 make/scripts/make.gluegen.all.linux-ppc64le.sh delete mode 100755 make/scripts/make.gluegen.all.macosx-java6.sh delete mode 100755 make/scripts/make.gluegen.all.sh delete mode 100755 make/scripts/make.gluegen.all.win32.bat create mode 100644 make/scripts/make.macosx.jdk_lipo_libs.sh delete mode 100755 make/scripts/runtest-x32.bat rename make/scripts/{setenv-build-jogl-x86.sh => setenv-build-jogamp-x86.sh} (68%) rename make/scripts/{setenv-build-jogl-x86_64.sh => setenv-build-jogamp-x86_64.sh} (76%) delete mode 100755 make/scripts/test-win32-smb_share.bat delete mode 100644 src/java/com/jogamp/common/util/IntBitfield.java create mode 100644 src/java/com/jogamp/common/util/SHASum.java create mode 100644 src/java/com/jogamp/common/util/UnsafeUtil.java create mode 100644 src/java/com/jogamp/common/util/WeakIdentityHashMap.java rename src/junit/com/jogamp/common/nio/{BuffersTest.java => TestBuffers.java} (95%) rename src/junit/com/jogamp/common/nio/{CachedBufferFactoryTest.java => TestCachedBufferFactory.java} (97%) create mode 100644 src/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.java create mode 100644 src/native/common/JVM_JNI8.c