.classpath | 2 + make/Manifest-rt-alt | 19 + make/Manifest-rt-natives | 2 +- make/build-test.xml | 45 +- make/build.xml | 176 +- make/gluegen-cpptasks-base.xml | 72 +- make/gluegen-properties.xml | 14 +- make/gluegen.properties | 1 + make/jogamp-env.xml | 4 +- make/lib/cpptasks.jar | Bin 377915 -> 377953 bytes make/lib/gluegen-cpptasks-linux-32bit.xml | 2 + make/lib/gluegen-cpptasks-linux-armv6.xml | 2 + make/lib/gluegen-cpptasks-linux-armv6hf.xml | 2 + make/lib/gluegen-xcode_clang.properties | 1 - make/lib/semantic-versioning/LICENSE | 202 ++ make/lib/semantic-versioning/README.md | 319 ++++ make/lib/semantic-versioning/VERSION | 13 + make/lib/semantic-versioning/semver-src.zip | Bin 0 -> 41840 bytes make/lib/semantic-versioning/semver.jar | Bin 0 -> 297781 bytes make/lib/v2.1.5/gluegen-rt.jar | Bin 0 -> 289171 bytes make/scripts/check-java-major-version.sh | 7 +- make/scripts/java-win32.bat | 5 +- make/scripts/java-win64.bat | 5 +- ...macosx-clang.sh => make.gluegen.all.generic.sh} | 23 +- make/scripts/make.gluegen.all.linux-x86_64.sh | 2 +- make/scripts/runtest-x32.bat | 3 +- make/scripts/runtest-x64.bat | 3 +- make/scripts/runtest.sh | 36 +- make/scripts/setenv-build-jogl-x86.sh | 12 + make/scripts/setenv-build-jogl-x86_64.sh | 29 +- make/stub_includes/platform/glibc-compat-symbols.h | 10 +- .../com/jogamp/gluegen/cgram/GnuCEmitter.g | 0 .../com/jogamp/gluegen/cgram/GnuCParser.g | 0 .../com/jogamp/gluegen/cgram/GnuCTreeParser.g | 0 .../com/jogamp/gluegen/cgram/HeaderParser.g | 35 +- .../com/jogamp/gluegen/cgram/StdCParser.g | 0 .../com/jogamp/gluegen/jgram/JavaParser.g | 8 +- src/java/com/jogamp/common/GlueGenVersion.java | 4 +- .../com/jogamp/common/JogampRuntimeException.java | 6 +- .../com/jogamp/common/jvm/JNILibLoaderBase.java | 357 ++-- .../com/jogamp/common/net/AssetURLConnection.java | 2 +- .../com/jogamp/common/net/AssetURLContext.java | 22 +- .../jogamp/common/net/AssetURLStreamHandler.java | 4 +- .../common/net/GenericURLStreamHandlerFactory.java | 10 +- .../jogamp/common/net/PiggybackURLConnection.java | 2 +- src/java/com/jogamp/common/net/URIQueryProps.java | 10 +- src/java/com/jogamp/common/net/asset/Handler.java | 2 +- src/java/com/jogamp/common/nio/AbstractBuffer.java | 4 +- src/java/com/jogamp/common/nio/Buffers.java | 241 +-- .../com/jogamp/common/nio/CachedBufferFactory.java | 78 +- src/java/com/jogamp/common/nio/PointerBuffer.java | 44 +- src/java/com/jogamp/common/nio/StructAccessor.java | 74 +- src/java/com/jogamp/common/os/AndroidVersion.java | 24 +- .../com/jogamp/common/os/DynamicLibraryBundle.java | 30 +- .../com/jogamp/common/os/MachineDescription.java | 54 +- src/java/com/jogamp/common/os/NativeLibrary.java | 82 +- src/java/com/jogamp/common/os/Platform.java | 30 +- src/java/com/jogamp/common/util/ArrayHashSet.java | 54 +- src/java/com/jogamp/common/util/Bitstream.java | 8 +- src/java/com/jogamp/common/util/FloatStack.java | 18 +- src/java/com/jogamp/common/util/FunctionTask.java | 14 +- src/java/com/jogamp/common/util/HashUtil.java | 8 +- src/java/com/jogamp/common/util/IOUtil.java | 136 +- src/java/com/jogamp/common/util/IntBitfield.java | 16 +- src/java/com/jogamp/common/util/IntIntHashMap.java | 58 +- src/java/com/jogamp/common/util/JarUtil.java | 76 +- src/java/com/jogamp/common/util/JogampVersion.java | 39 +- src/java/com/jogamp/common/util/LFRingbuffer.java | 39 +- .../com/jogamp/common/util/PropertyAccess.java | 22 +- .../com/jogamp/common/util/ReflectionUtil.java | 98 +- src/java/com/jogamp/common/util/Ringbuffer.java | 12 - .../com/jogamp/common/util/RunnableExecutor.java | 2 +- src/java/com/jogamp/common/util/RunnableTask.java | 50 +- src/java/com/jogamp/common/util/SecurityUtil.java | 16 +- .../com/jogamp/common/util/SyncedRingbuffer.java | 39 +- src/java/com/jogamp/common/util/TaskBase.java | 18 +- src/java/com/jogamp/common/util/ValueConv.java | 40 +- src/java/com/jogamp/common/util/VersionNumber.java | 16 +- .../jogamp/common/util/VersionNumberString.java | 4 +- src/java/com/jogamp/common/util/VersionUtil.java | 26 +- .../com/jogamp/common/util/awt/AWTEDTExecutor.java | 12 +- .../jogamp/common/util/cache/TempFileCache.java | 64 +- .../com/jogamp/common/util/cache/TempJarCache.java | 26 +- .../com/jogamp/common/util/locks/LockFactory.java | 4 +- .../common/util/locks/SingletonInstance.java | 14 +- .../com/jogamp/gluegen/CMethodBindingEmitter.java | 496 ++--- src/java/com/jogamp/gluegen/CodeGenUtils.java | 26 +- .../com/jogamp/gluegen/ConstantDefinition.java | 28 +- src/java/com/jogamp/gluegen/DebugEmitter.java | 35 +- src/java/com/jogamp/gluegen/FunctionEmitter.java | 68 +- src/java/com/jogamp/gluegen/GlueEmitter.java | 1 - src/java/com/jogamp/gluegen/GlueGen.java | 133 +- src/java/com/jogamp/gluegen/JavaConfiguration.java | 540 +++--- src/java/com/jogamp/gluegen/JavaEmitter.java | 1956 ++++++++++++++------ .../jogamp/gluegen/JavaMethodBindingEmitter.java | 312 ++-- src/java/com/jogamp/gluegen/JavaType.java | 151 +- src/java/com/jogamp/gluegen/Logging.java | 8 +- src/java/com/jogamp/gluegen/MethodBinding.java | 107 +- src/java/com/jogamp/gluegen/ReferencedStructs.java | 6 +- src/java/com/jogamp/gluegen/TypeInfo.java | 12 +- src/java/com/jogamp/gluegen/ant/GlueGenTask.java | 46 +- .../com/jogamp/gluegen/cgram/CSymbolTable.java | 36 +- src/java/com/jogamp/gluegen/cgram/CToken.java | 6 +- src/java/com/jogamp/gluegen/cgram/Define.java | 6 +- src/java/com/jogamp/gluegen/cgram/LineObject.java | 18 +- .../gluegen/cgram/PreprocessorInfoChannel.java | 24 +- src/java/com/jogamp/gluegen/cgram/TNode.java | 88 +- .../com/jogamp/gluegen/cgram/TNodeFactory.java | 9 +- .../com/jogamp/gluegen/cgram/types/ArrayType.java | 34 +- .../com/jogamp/gluegen/cgram/types/BitType.java | 16 +- .../jogamp/gluegen/cgram/types/CompoundType.java | 34 +- .../gluegen/cgram/types/CompoundTypeKind.java | 2 +- .../com/jogamp/gluegen/cgram/types/DoubleType.java | 6 +- .../com/jogamp/gluegen/cgram/types/EnumType.java | 36 +- src/java/com/jogamp/gluegen/cgram/types/Field.java | 16 +- .../com/jogamp/gluegen/cgram/types/FloatType.java | 6 +- .../jogamp/gluegen/cgram/types/FunctionSymbol.java | 18 +- .../jogamp/gluegen/cgram/types/FunctionType.java | 44 +- .../com/jogamp/gluegen/cgram/types/IntType.java | 14 +- .../gluegen/cgram/types/MemoryLayoutType.java | 2 +- .../jogamp/gluegen/cgram/types/PointerType.java | 30 +- .../jogamp/gluegen/cgram/types/PrimitiveType.java | 2 +- .../com/jogamp/gluegen/cgram/types/SizeThunk.java | 62 +- .../jogamp/gluegen/cgram/types/StructLayout.java | 38 +- .../com/jogamp/gluegen/cgram/types/StructType.java | 10 +- src/java/com/jogamp/gluegen/cgram/types/Type.java | 123 +- .../jogamp/gluegen/cgram/types/TypeDictionary.java | 21 +- .../com/jogamp/gluegen/cgram/types/UnionType.java | 10 +- .../com/jogamp/gluegen/cgram/types/VoidType.java | 6 +- src/java/com/jogamp/gluegen/jgram/Test.java | 40 +- .../jogamp/gluegen/pcpp/ConcatenatingReader.java | 22 +- src/java/com/jogamp/gluegen/pcpp/PCPP.java | 226 +-- .../ProcAddressCMethodBindingEmitter.java | 28 +- .../procaddress/ProcAddressConfiguration.java | 90 +- .../gluegen/procaddress/ProcAddressEmitter.java | 55 +- .../ProcAddressJavaMethodBindingEmitter.java | 21 +- .../jogamp/gluegen/runtime/ProcAddressTable.java | 42 +- src/java/com/jogamp/gluegen/structgen/CStruct.java | 19 +- .../structgen/CStructAnnotationProcessor.java | 172 +- .../com/jogamp/gluegen/structgen/CStructs.java | 46 + .../jogamp/android/launcher/ActivityLauncher.java | 26 +- .../android/launcher/AssetDexClassLoader.java | 20 +- .../jogamp/android/launcher/ClassLoaderUtil.java | 92 +- .../android/launcher/LauncherTempFileCache.java | 102 +- src/java/jogamp/android/launcher/LauncherUtil.java | 188 +- .../android/launcher/LauncherVersionActivity.java | 22 +- src/java/jogamp/android/launcher/MainLauncher.java | 86 +- .../android/launcher/TraceDexClassLoader.java | 8 +- src/java/jogamp/common/Debug.java | 56 +- src/java/jogamp/common/jvm/JVMUtil.java | 4 +- src/java/jogamp/common/os/AndroidUtils.java | 4 +- .../jogamp/common/os/BionicDynamicLinkerImpl.java | 6 +- src/java/jogamp/common/os/DynamicLinkerImpl.java | 10 +- .../jogamp/common/os/MacOSXDynamicLinkerImpl.java | 6 +- .../common/os/MachineDescriptionRuntime.java | 4 +- src/java/jogamp/common/os/PlatformPropsImpl.java | 75 +- .../jogamp/common/os/PosixDynamicLinkerImpl.java | 10 +- .../jogamp/common/os/UnixDynamicLinkerImpl.java | 8 +- .../jogamp/common/os/WindowsDynamicLinkerImpl.java | 12 +- .../jogamp/common/os/android/AndroidUtilsImpl.java | 36 +- .../common/os/android/GluegenVersionActivity.java | 18 +- src/java/jogamp/common/os/android/MD.java | 8 +- .../jogamp/common/os/android/StaticContext.java | 30 +- src/java/jogamp/common/os/elf/Ehdr.java | 36 +- src/java/jogamp/common/os/elf/ElfHeader.java | 14 +- src/java/jogamp/common/os/elf/IOUtils.java | 14 +- src/java/jogamp/common/os/elf/Section.java | 2 +- .../jogamp/common/os/elf/SectionArmAttributes.java | 24 +- src/java/jogamp/common/os/elf/SectionHeader.java | 12 +- src/java/jogamp/common/os/elf/Shdr.java | 28 +- .../jogamp/common/util/locks/LockDebugUtil.java | 6 +- .../locks/RecursiveLockImpl01CompleteFair.java | 22 +- .../util/locks/RecursiveLockImpl01Unfairish.java | 22 +- .../common/util/locks/RecursiveLockImplJava5.java | 12 +- .../RecursiveThreadGroupLockImpl01Unfairish.java | 24 +- .../util/locks/SingletonInstanceFileLock.java | 16 +- .../util/locks/SingletonInstanceServerSocket.java | 36 +- .../net/highteq/nativetaglet/NativeTaglet.java | 30 +- .../jogamp/common/net/AssetURLConnectionBase.java | 10 +- .../net/AssetURLConnectionRegisteredTest.java | 44 +- .../net/AssetURLConnectionUnregisteredTest.java | 34 +- .../com/jogamp/common/net/TestURIQueryProps.java | 22 +- .../common/net/TestUrisWithAssetHandler.java | 6 +- src/junit/com/jogamp/common/net/URIDumpUtil.java | 6 +- src/junit/com/jogamp/common/nio/BuffersTest.java | 34 +- .../jogamp/common/nio/CachedBufferFactoryTest.java | 136 +- .../nio/TestBuffersFloatDoubleConversion.java | 40 +- .../jogamp/common/nio/TestPointerBufferEndian.java | 28 +- .../common/nio/TestStructAccessorEndian.java | 28 +- .../com/jogamp/common/os/TestElfReader01.java | 52 +- .../com/jogamp/common/util/BitstreamData.java | 18 +- src/junit/com/jogamp/common/util/IntCloneable.java | 28 +- .../com/jogamp/common/util/IntIntHashMapTest.java | 90 +- .../common/util/IntIntObjUniqueRndValues.java | 20 +- .../jogamp/common/util/IntIntUniqueRndValues.java | 20 +- .../jogamp/common/util/IntObjectHashMapTest.java | 44 +- .../com/jogamp/common/util/LongIntHashMapTest.java | 36 +- .../jogamp/common/util/LongIntUniqueRndValues.java | 20 +- .../com/jogamp/common/util/RingBuffer01Base.java | 154 +- .../com/jogamp/common/util/TestArrayHashSet01.java | 32 +- .../com/jogamp/common/util/TestBitstream00.java | 10 +- .../com/jogamp/common/util/TestBitstream01.java | 16 +- .../com/jogamp/common/util/TestBitstream02.java | 8 +- .../com/jogamp/common/util/TestBitstream03.java | 14 +- .../com/jogamp/common/util/TestBitstream04.java | 14 +- .../com/jogamp/common/util/TestFloatStack01.java | 142 +- src/junit/com/jogamp/common/util/TestIOUtil01.java | 50 +- .../jogamp/common/util/TestIOUtilURICompose.java | 14 +- .../jogamp/common/util/TestIOUtilURIHandling.java | 20 +- .../jogamp/common/util/TestIteratorIndexCORE.java | 40 +- src/junit/com/jogamp/common/util/TestJarUtil.java | 44 +- .../com/jogamp/common/util/TestLFRingBuffer01.java | 18 +- .../com/jogamp/common/util/TestPlatform01.java | 30 +- .../com/jogamp/common/util/TestRunnableTask01.java | 38 +- .../jogamp/common/util/TestSyncRingBuffer01.java | 18 +- .../jogamp/common/util/TestSystemPropsAndEnvs.java | 38 +- .../com/jogamp/common/util/TestTempJarCache.java | 85 +- .../jogamp/common/util/TestValueConversion.java | 26 +- .../com/jogamp/common/util/TestVersionInfo.java | 14 +- .../com/jogamp/common/util/TestVersionNumber.java | 96 +- .../jogamp/common/util/TestVersionSemantics.java | 100 + .../common/util/locks/TestRecursiveLock01.java | 356 ++-- .../util/locks/TestRecursiveThreadGroupLock01.java | 106 +- .../util/locks/TestSingletonServerSocket00.java | 16 +- .../util/locks/TestSingletonServerSocket01.java | 4 +- .../util/locks/TestSingletonServerSocket02.java | 4 +- .../gluegen/test/junit/generation/BaseClass.java | 959 ++++++++-- .../test/junit/generation/BindingJNILibLoader.java | 10 +- .../test/junit/generation/BuildEnvironment.java | 21 +- .../gluegen/test/junit/generation/PCPPTest.java | 30 +- .../test/junit/generation/Test1p1JavaEmitter.java | 54 +- .../junit/generation/Test1p2LoadJNIAndImplLib.java | 77 + .../generation/Test1p2ProcAddressEmitter.java | 59 +- .../gluegen/test/junit/generation/test1-common.cfg | 47 +- .../jogamp/gluegen/test/junit/generation/test1.c | 185 +- .../jogamp/gluegen/test/junit/generation/test1.h | 103 +- .../test/junit/structgen/BuildStruct01.java | 34 + .../gluegen/test/junit/structgen/TestStruct02.h | 14 + .../test/junit/structgen/TestStructGen01.java | 39 +- .../test/junit/structgen/TestStructGen02.java | 51 + .../gluegen/test/junit/structgen/package-info.java | 15 + src/junit/com/jogamp/junit/sec/Applet01.java | 84 +- .../com/jogamp/junit/sec/TestSecIOUtil01.java | 24 +- src/junit/com/jogamp/junit/util/JunitTracer.java | 28 +- .../jogamp/junit/util/VersionSemanticsUtil.java | 123 ++ src/native/common/JVMUtil.c | 3 +- src/native/unix/UnixDynamicLinkerImpl_JNI.c | 24 + test/junit/com/jogamp/gluegen/BuildUtil.java | 38 +- .../com/jogamp/gluegen/StructAccessorTest.java | 37 +- test/junit/com/jogamp/gluegen/StructValidator.java | 34 +- 250 files changed, 8705 insertions(+), 5206 deletions(-) create mode 100755 make/Manifest-rt-alt delete mode 100755 make/lib/gluegen-xcode_clang.properties create mode 100644 make/lib/semantic-versioning/LICENSE create mode 100644 make/lib/semantic-versioning/README.md create mode 100644 make/lib/semantic-versioning/VERSION create mode 100644 make/lib/semantic-versioning/semver-src.zip create mode 100644 make/lib/semantic-versioning/semver.jar create mode 100644 make/lib/v2.1.5/gluegen-rt.jar rename make/scripts/{make.gluegen.all.macosx-clang.sh => make.gluegen.all.generic.sh} (51%) rename src/{java => antlr}/com/jogamp/gluegen/cgram/GnuCEmitter.g (100%) rename src/{java => antlr}/com/jogamp/gluegen/cgram/GnuCParser.g (100%) rename src/{java => antlr}/com/jogamp/gluegen/cgram/GnuCTreeParser.g (100%) rename src/{java => antlr}/com/jogamp/gluegen/cgram/HeaderParser.g (95%) rename src/{java => antlr}/com/jogamp/gluegen/cgram/StdCParser.g (100%) rename src/{java => antlr}/com/jogamp/gluegen/jgram/JavaParser.g (99%) create mode 100644 src/java/com/jogamp/gluegen/structgen/CStructs.java create mode 100644 src/junit/com/jogamp/common/util/TestVersionSemantics.java create mode 100644 src/junit/com/jogamp/gluegen/test/junit/generation/Test1p2LoadJNIAndImplLib.java create mode 100644 src/junit/com/jogamp/gluegen/test/junit/structgen/BuildStruct01.java create mode 100644 src/junit/com/jogamp/gluegen/test/junit/structgen/TestStruct02.h create mode 100644 src/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen02.java create mode 100644 src/junit/com/jogamp/gluegen/test/junit/structgen/package-info.java create mode 100644 src/junit/com/jogamp/junit/util/VersionSemanticsUtil.java