https://jogamp.org/chuck/job/gluegen/gluegengluegengluegengluegenhttps://jogamp.org/chuck/job/gluegen/trueStarted by user Sven GothelsgothelSven Gothel967a235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastergit://jogamp.org/srv/scm/gluegen.git00924testReportfalsev2.5.0440248460248gluegen v2.5.0967falsefalse9671060SUCCESS1692362500522https://jogamp.org/chuck/job/gluegen/967/doc/manual/index.html9b825a445c3d2646546306c1815f498406e2f8c31691962066000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfeat(manual): Update configuration documentation. Add following configuration : * CustomJNICode * ExtendedInterfaceSymbolsIgnore * ExtendedInterfaceSymbolsOnly * ExtendedImplementationSymbolsIgnore * ExtendedImplementationSymbolsOnly * ExtendedIntfAndImplSymbolsIgnore * ExtendedIntfAndImplSymbolsOnly * MaxOneElement * ParentClass * ReturnsStringOnly Update following configuration : * Extends 2023-08-13 23:27:46 +02009b825a445c3d2646546306c1815f498406e2f8c3feat(manual): Update configuration documentation.editdoc/manual/index.htmldoc/manual/index.htmldoc/misc/macos_nativelib_dependencies.mdmake/scripts/md2html_update.shdoc/manual/index.mddoc/misc/macos_nativelib_dependencies.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdfd623305d90a88fd01dea3dccf6b9fe76b19703f1691979745000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sh Noyte: Additionally edited 'doc/misc/macos_nativelib_dependencies.md` to include `Use explicit OpenJDK/Temurin JDK `java` executable path` as a workaround to pass `DYLD_LIBRARY_PATH` to `/usr/bin/java`. 2023-08-14 04:22:25 +0200fd623305d90a88fd01dea3dccf6b9fe76b19703fBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sheditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmladddoc/manual/index.mdadddoc/misc/macos_nativelib_dependencies.htmleditdoc/misc/macos_nativelib_dependencies.mdaddmake/scripts/md2html_update.sheditdoc/manual/index.htmldoc/manual/index.mddoc/manual/index.html9250960f107cebbb4e6d3a55009b330f101453ea1691979872000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Fix link style in manual refs .. 2023-08-14 04:24:32 +02009250960f107cebbb4e6d3a55009b330f101453eaBug 1449: Fix link style in manual refs ..editdoc/manual/index.mdeditdoc/manual/index.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html8850b3d7f82ca5f1f828192407574581abd82ef91691980057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ... 2023-08-14 04:27:37 +02008850b3d7f82ca5f1f828192407574581abd82ef9doc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ...editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdmake/jogamp-env.xmla235ae5dae463afa16f62f48bf62f896efa80b681692362120000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump: 2.5.0 Release 2023-08-18 14:35:20 +0200a235ae5dae463afa16f62f48bf62f896efa80b68Bump: 2.5.0 Releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/sven%20gothelSven Gothel967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/Started by user Sven GothelsgothelSven Gothel96596632c220a25866ae3e2091d5d5f2bee0f631b6396632c220a25866ae3e2091d5d5f2bee0f631b63origin/master96632c220a25866ae3e2091d5d5f2bee0f631b6396632c220a25866ae3e2091d5d5f2bee0f631b63origin/master96632c220a25866ae3e2091d5d5f2bee0f631b6396632c220a25866ae3e2091d5d5f2bee0f631b63origin/mastergit://jogamp.org/srv/scm/gluegen.git00924testReportfalse#965483084460248gluegen #965965falsefalse965954SUCCESS1691850452214https://jogamp.org/chuck/job/gluegen/965/jcppmake/scripts/runtest.shmake/scripts/runtest-x64.bat96632c220a25866ae3e2091d5d5f2bee0f631b631691850046000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump JCPP: Use Unix '/' file separator in #line output for UNIFIED_OUTPUT 2023-08-12 16:20:46 +020096632c220a25866ae3e2091d5d5f2bee0f631b63Bump JCPP: Use Unix '/' file separator in #line output for UNIFIED_OUTPUTeditjcppeditmake/scripts/runtest-x64.bateditmake/scripts/runtest.shgithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/schwabschwabhttps://jogamp.org/chuck/user/mferymferyhttps://jogamp.org/chuck/user/tgctgchttps://jogamp.org/chuck/user/sven%20gothelSven Gothel965https://jogamp.org/chuck/job/gluegen/label=android-arm64/965/965https://jogamp.org/chuck/job/gluegen/label=linux-arm32/965/965https://jogamp.org/chuck/job/gluegen/label=linux-arm64/965/965https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/965/965https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/965/965https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/965/Started by user Sven GothelsgothelSven Gothel964b3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/masterb3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/masterb3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/mastergit://jogamp.org/srv/scm/gluegen.git20924testReportfalse#964457413460248gluegen #964964falsefalse964928UNSTABLE1691845830344https://jogamp.org/chuck/job/gluegen/964/make/gluegen-cpptasks-base.xmlmake/build.xml953f594a00094362e0ed56553b16aecbee2b92f21644182238000https://jogamp.org/chuck/user/schwabschwabschwab@suse.deAdd support for riscv64 architecture 2022-02-06 22:17:18 +0100953f594a00094362e0ed56553b16aecbee2b92f2Add support for riscv64 architectureeditmake/gluegen-cpptasks-base.xmleditmake/build.xmlmake/stub_includes/platform/glibc-compat-symbols.h6489e38ae8d86b1a80336c20774fc9b82313cef31686119542000https://jogamp.org/chuck/user/tgctgctgc@kb.dkglibc-compat-symbols.h: skip versioning on PPC64/PPC64LE 2023-06-07 08:32:22 +02006489e38ae8d86b1a80336c20774fc9b82313cef3glibc-compat-symbols.h: skip versioning on PPC64/PPC64LEeditmake/stub_includes/platform/glibc-compat-symbols.hsrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/native/common/PointerBuffer.csrc/native/common/Buffers.csrc/java/com/jogamp/common/nio/Buffers.javasrc/java/com/jogamp/common/nio/StructAccessor.javasrc/java/com/jogamp/common/nio/NativeBuffer.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/common/nio/ElementBuffer.java03c548d96e5c81d0fc39503fe3042cf03e0a75e21686868991000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generation Recfactored all NIO buffer utils to Buffers, i.e. buffer <-> address, memcpy, strnlen, etc Buffers: - Added copyNativeToDirectByteBuffer(..), allowing to copy a native memory slice into a direct buffer. - Added typeNameToBufferClass(String) and sizeOfBufferElem(Class<? extends Buffer>) - Completed slize2<Type>(..) buffer-mapping methods - Exposure of safe getDirectByteBuffer(..) w/ null-check (package private) Added NativeBuffer.storeDirectAddress(..), allowing to write the array address into a native buffer (struct, etc), allowing to referencing the ElementBuffer (linear array of elements) and PointerBuffer (array of pointer). Hint: This can be read via PointerBuffer.wrap(..).get(0) Added ElementBuffer (a NativeBuffer) mapping an array of elements, completing native abstraction next to PointerBuffer (array of pointer). ElementBuffer can dereference an existing element-array by native address via ElementBuffer.derefPointer(..). Views of its content can be directly accessed via ElementBuffer.slice(..). +++ These utilities and buffer abstractions will allow to reuse code and simplify the GlueGen struct get/set implementations and help to reduce native code injection. 2023-06-16 00:43:11 +020003c548d96e5c81d0fc39503fe3042cf03e0a75e2GlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generationeditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/common/nio/Buffers.javadeletesrc/native/common/PointerBuffer.caddsrc/native/common/Buffers.caddsrc/java/com/jogamp/common/nio/ElementBuffer.javaeditsrc/java/com/jogamp/common/nio/StructAccessor.javaeditsrc/java/com/jogamp/common/nio/NativeBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/CodeUnit.javasrc/java/com/jogamp/gluegen/JavaCodeUnit.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javaf1678c4ac8b85c85d11b737d08dcfe31b388e0211686869969000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [2]: Add CodeUnit: Representing a generated C or Java file, covering multiple FunctionEmitter allowing to unify output, decoration and dynamic helper code injection per unit - Handles file open and have public ctor emitAutogeneratedWarning(..), being self-contained - Includes `JVMUtil_NewDirectByteBufferCopy(..)` implementation in CCodeUnit, may be injected if required in customCode via emitHeader(..) 2023-06-16 00:59:29 +0200f1678c4ac8b85c85d11b737d08dcfe31b388e021GlueGen Struct [2]: Add CodeUnit: Representing a generated C or Java file, covering multiple FunctionEmitter allowing to unify output, decoration and dynamic helper code injection per unitaddsrc/java/com/jogamp/gluegen/JavaCodeUnit.javaaddsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javaaddsrc/java/com/jogamp/gluegen/CodeUnit.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java0a9105dd3ebbcf4b98664e50333334bff677031c1686870646000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...) 2023-06-16 01:10:46 +02000a9105dd3ebbcf4b98664e50333334bff677031cGlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...)editsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaaeadfab9572e4b441b1bc1f0708cf4c72dfe181e1686871015000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess' Drop 'ManualStaticInitCall', 'ForceStaticInitCode': With new CCodeUnit's `JVMUtil_NewDirectByteBufferCopy(..)` implementation and generalized Buffers' methods, no specific init code is required anymore. Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess': - 'ReturnsStringOnly' only String getter, drop ByteBuffer/byte[] - 'MaxOneElement' only one element maximum for pointer reference - 'ImmutableAccess' strict read-only, also reduces generated code a lot 2023-06-16 01:16:55 +0200aeadfab9572e4b441b1bc1f0708cf4c72dfe181eGlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess'editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javadoc/JogAmpMacOSVersions.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgdoc/GlueGen_Mapping.mdmake/build-test.xmlREADME.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hdoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.mdwww/index.html8b127c4c1dd26fcb1756805ddb83729203161f781686874580000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [5]: Revised Struct Mapping + Documentation GlueGen Revised Struct Mapping (esp pointer to array or single element), Struct String Charset, .. and Documentation - Documentation: - Added README.md Let's have a proper face for the git repo - Added doc/GlueGen_Mapping.md (and its html conversion doc/GlueGen_Mapping.html) Created a new document covering application and implementation details suitable for users/devs. - Added doc/JogAmpMacOSVersions.md conversion to doc/JogAmpMacOSVersions.html - Updated www/index.html - Use *CodeUnit instead of PrintWriter, representing a Java or C code unit covering a set of functions and structs. The CCodeUnit also handles common code shared by its unit across functions etc. - Dropping 'static initializer', as its no more required due to simplified `JVMUtil_NewDirectByteBufferCopy()` variant. - Revised Struct Mapping: - Pure Java implementation to map primitive and struct fields within a struct by utilizing ElementBuffer. Only 'Function Pointer' fields within a struct require native code. Exposes `static boolean usesNativeCode()` to query whether native code is used/required. - Transparent native memory address API Expose `long getDirectBufferAddress()` and `static TK_Struct derefPointer(long addr)`, allowing to - pass the native struct-pointer with native code - reconstruct the struct from a native struct-pointer - have a fully functional `TK_Struct.derefPointer(struct.getDirectBufferAddress())` cycle. - Add 'boolean is<Val>Null() to query whether a pointer (array) is NULL - *Changed* array get/set method for more flexibility alike `System.arraycopy(src, srcPos, dest, destPos, len)`, where 'src' is being dropped for the getter and 'dest' is being dropped for the setter as both objects are reflected by the struct instance. - *Changed* `get<Val>ArrayLength()` -> `get<Val>ElemCount()` for clarity - Considering all ConstElemCount values with config 'ReturnedArrayLength <int>' to be owned by native code -> NativeOwnership -> Not changing the underlying memory region! JavaOwnership is considered for all pointer-arrays not of NativeOwnership. Hence any setter on a NativeOwnership pointer-array will fail with non-matching elem-count. - Add 'release<Val>()' for JavaOwnership pointer-arrays, allowing to release the Java owned native memory incl. null-ing pointer and set<Val>ElemCount(0). - Support setter for 'const <type>*' w/ JavaOwnership, i.e. pointer to const value of a primitive or struct, setter and getter using pointer to array or single element in general. - Added Config `ImmutableAccess symbol` to disable all setter for whole struct or a field - Added Config `MaxOneElement symbol` to restrict a pointer to maximum one element and unset initial value (zero elements) - Added Config `ReturnsStringOnly symbol` to restrict mapping only to a Java String, dropping the ByteBuffer variant for 'char' - String mapping default is UTF-8 and can be read and set via [get|set]Charset(..) per class. - Dynamic string length retrieval in case no `ReturnedArrayLength` has been configured has changed from `strlen()` to `strnlen(aptr, max_len)` to be on the safe site. The maximum length default is 8192 bytes and can be read and set via [get|set]MaxStrnlen(..) per class. FIXME: strnlen(..) using EOS byte non-functional for non 8-bit codecs like UTF-8, US-ASCII. This is due to e.g. UTF-16 doesn't use an EOS byte, but interprets it as part of a code point. - TODO: Perhaps a few more unit tests - TODO: Allow plain 'int' to be mapped in structs IFF their size is same for all MachineDescriptions used. Currently this is the case -> 4 bytes like int32_t. 2023-06-16 02:16:20 +02008b127c4c1dd26fcb1756805ddb83729203161f78GlueGen Struct [5]: Revised Struct Mapping + Documentationeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/JogAmpMacOSVersions.mdeditmake/build-test.xmladddoc/GlueGen_Mapping.htmladddoc/GlueGen_Mapping.mdeditwww/index.htmladddoc/JogAmpMacOSVersions.htmladdREADME.mdsrc/java/com/jogamp/common/nio/Buffers.javafdccf16290c7b742337d3f7ab66e4b85660ca7811686886205000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuffers.copyNativeToDirectByteBuffer(): Remove unused var 2023-06-16 05:30:05 +0200fdccf16290c7b742337d3f7ab66e4b85660ca781Buffers.copyNativeToDirectByteBuffer(): Remove unused vareditsrc/java/com/jogamp/common/nio/Buffers.javamake/build-test.xmlsrc/java/com/jogamp/gluegen/JavaEmitter.java88309192b450e09ba16e9d72adac178c4ce47dc31686886327000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creation 2023-06-16 05:32:07 +020088309192b450e09ba16e9d72adac178c4ce47dc3GlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creationeditmake/build-test.xmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javad98d25f26a8231c746f8e461a6d932182376cd0b1686905464000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(cli): Add --preserveGeneratedCPP option inside GlueGen 2023-06-16 10:51:04 +0200d98d25f26a8231c746f8e461a6d932182376cd0bfeat(cli): Add --preserveGeneratedCPP option inside GlueGeneditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.java.gitmodulessrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.hsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hjcppsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.java738c15d654f67ec8aeccec2b46f5a0804c7934911686905484000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(feature): Enable pragma once management 2023-06-16 10:51:24 +0200738c15d654f67ec8aeccec2b46f5a0804c793491feat(feature): Enable pragma once managementeditsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hedit.gitmoduleseditsrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditjcppeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javae1d5b49ecd9b180b6a80ad4d0ab63e08076826211686905510000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsed 2023-06-16 10:51:50 +0200e1d5b49ecd9b180b6a80ad4d0ab63e0807682621feat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsededitsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/GlueGen.javac0a5b3fcc4a2d7f5c30f95e9b387c8a2e02b4f6f1686905528000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(translationUnit): Improve logs in case of failure inside translationUnit 2023-06-16 10:52:08 +0200c0a5b3fcc4a2d7f5c30f95e9b387c8a2e02b4f6ffeat(translationUnit): Improve logs in case of failure inside translationUniteditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h8d3e22e8c54bca8e84ea94566f47b8f24cc24b601686905549000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(constants): Add supports of ~ inside ConstantDefinition 2023-06-16 10:52:29 +02008d3e22e8c54bca8e84ea94566f47b8f24cc24b60feat(constants): Add supports of ~ inside ConstantDefinitioneditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgd7bc10d7ff0e3a30d74c4e4c439230f3983bcfb41686908682000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(jni): Add directive for dedicated JNI Code with CustomJNICode 2023-06-16 11:44:42 +0200d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4feat(jni): Add directive for dedicated JNI Code with CustomJNICodeeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/JavaEmitter.java106a552817e6da2845052b48ebbfc14cf05edbd51686930961000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'. 2023-06-16 17:56:01 +0200106a552817e6da2845052b48ebbfc14cf05edbd5GlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'.editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/common/nio/ElementBuffer.java8b1db2e6cce3289ed043f85660505551b11e33741686972184000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods. 2023-06-17 05:23:04 +02008b1db2e6cce3289ed043f85660505551b11e3374ElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods.editsrc/java/com/jogamp/common/nio/ElementBuffer.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javadoc/GlueGen_Mapping.mda0abee0deb699fc97fc1146200c9057de15798d61686977931000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated code Revised setter: A) int32_t val[10] -> setter for a subset change only, as-is with args[src, srcPos, destPos, length] - no new memory, reuse only - no special action to be performed B) int32_t* val -> setter with toggle 'subset' with args[subset, src, srcPos, destPos, length], - replace memory w/ 'subset==false' where it also may copy 'destPos' gap from old -> new - reuse memory w/ 'subset==true', where destPos+length <= elementCount C) const int32_t* val -> setter to replace referenced memory only args[src, srcPos, length] - always replaces memory, no copy of a gap (no destPos) Hence: - case (A) stays as is - case (B) will be revised and argument 'boolean subset' added - case (C) will be revised (simplified) and argument 'destPos' removed 2023-06-17 06:58:51 +0200a0abee0deb699fc97fc1146200c9057de15798d6GlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated codeeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditdoc/GlueGen_Mapping.mddoc/JogAmpMacOSVersions.html6e8d3491863f21283edfd8aa0116599248fdc6fe1686977959000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8) 2023-06-17 06:59:19 +02006e8d3491863f21283edfd8aa0116599248fdc6fedoc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8)editdoc/JogAmpMacOSVersions.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlf364dd017e548d1b61b0b01ecd4ab2dbe4924d761686978185000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolved 2023-06-17 07:03:05 +0200f364dd017e548d1b61b0b01ecd4ab2dbe4924d76doc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolvededitdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.html42bd110d9ec63594cc028f3ee8a459424b1d2ae01686978472000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDrop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styles Would need to fix my standalone pandoc setup to produce proper standalone docs. 2023-06-17 07:07:52 +020042bd110d9ec63594cc028f3ee8a459424b1d2ae0Drop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styleseditwww/index.htmldeletedoc/GlueGen_Mapping.htmldeletedoc/JogAmpMacOSVersions.htmlsrc/java/com/jogamp/gluegen/JavaType.java99574c6adb0aad760162fea744606345fc5644721687051345000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaType: Add getSignature(..) like Type 2023-06-18 03:22:25 +020099574c6adb0aad760162fea744606345fc564472JavaType: Add getSignature(..) like Typeeditsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/cgram/types/Type.java0e90617503c71eedba05b604d4b35ca2d14928ec1687051403000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comType: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native" 2023-06-18 03:23:23 +02000e90617503c71eedba05b604d4b35ca2d14928ecType: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native"editsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaeec3f21c3597ff9bf9760a06e00dd341214ea90d1687051571000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void' 2023-06-18 03:26:11 +0200eec3f21c3597ff9bf9760a06e00dd341214ea90dGlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void'editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java5a19d4fb868f7459dc81ee7e82e1040f79a875441687051879000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') .. We already support platform dependent sizes like pointer etc, no reason to drop e.g. 'int'. Note: 'int' is also always 32bit of size within our current set of supported platforms, e.g. MachineDataInfo. Further fix and clarify primCElemFixedSize and primElemSizeExpr, only to be true and set if isPrimitive. 2023-06-18 03:31:19 +02005a19d4fb868f7459dc81ee7e82e1040f79a87544GlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') ..editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java2837fad810b66ace8d841c8a67577db442883c781687052094000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doc 2023-06-18 03:34:54 +02002837fad810b66ace8d841c8a67577db442883c78GlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doceditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java187c097055dc691a2ee65bed1c06c089aaf5cb591687052143000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replaced 2023-06-18 03:35:43 +0200187c097055dc691a2ee65bed1c06c089aaf5cb59GlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replacededitsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg4761c936ab5e09fe7ae19522bacf3889fc300fc91687052364000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90d See impact to T2_InitializeOptions struct fields: - 'void* Reserved1' shall be ignored (*this is the regression fix*) - 'void* Reserved2' will be taked due to config 'Opaque long T2_InitializeOptions.Reserved2' - 'T2_CustomFunc CustomFunc2' will produce a member function call as previously 2023-06-18 03:39:24 +02004761c936ab5e09fe7ae19522bacf3889fc300fc9GlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90deditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.md601399a1b7c9c66866716a8629098698dea49f381687052454000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippets 2023-06-18 03:40:54 +0200601399a1b7c9c66866716a8629098698dea49f38GlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippetseditdoc/GlueGen_Mapping.mdwww/index.htmldoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.html9dd35877f28f5d3dce5e1817edd33bb8f6dbbe361687052612000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBring back produced html5 standalone files, having fixed pandoc usage. See my pandoc-buttondown git repo <https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git/about/> Latest config <https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git/commit/?id=fb38ada0c8d71a2b26bd3ee9d075acce84d76b2c> fixed creation of standalone html5 files. 2023-06-18 03:43:32 +02009dd35877f28f5d3dce5e1817edd33bb8f6dbbe36Bring back produced html5 standalone files, having fixed pandoc usage.editwww/index.htmladddoc/GlueGen_Mapping.htmladddoc/JogAmpMacOSVersions.html.gitmodules6f7bbc15ff19640396ade377a1b2c508e67f98da1687055509000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Use default jcpp branch as its merged now 2023-06-18 04:31:49 +02006f7bbc15ff19640396ade377a1b2c508e67f98daCPP Enable Pragma Once: Use default jcpp branch as its merged nowedit.gitmodulessrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java1159dadbdca861e4a6dd47e9da3ccb47ec15f4a31687055578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramter 2023-06-18 04:32:58 +02001159dadbdca861e4a6dd47e9da3ccb47ec15f4a3CPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramtereditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java7825c4c053e0755e5dc0aa20127914887efa75e41687055634000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this feature 2023-06-18 04:33:54 +02007825c4c053e0755e5dc0aa20127914887efa75e4CPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this featureeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.java.stubsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-CustomJNICode.c.stub195bf966e4946ee9e80cd7aec68685218ad7a7771687058861000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub code 2023-06-18 05:27:41 +0200195bf966e4946ee9e80cd7aec68685218ad7a777CustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub codedeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.java.stubeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-CustomJNICode.c.stubeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-CustomJNICode.c.stub6aec5c5274d0ffb6662fdc53671b58df23850d891687058954000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stub 2023-06-18 05:29:14 +02006aec5c5274d0ffb6662fdc53671b58df23850d89CustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stubaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-CustomJNICode.c.stubsrc/java/com/jogamp/gluegen/GlueGen.javafd8ebf543ecc16233c0027c5a38701c11be548c71687064490000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfix(cli): Fix disablePragmaOnce option Option set enablePragmaOnce to true instead false 2023-06-18 07:01:30 +0200fd8ebf543ecc16233c0027c5a38701c11be548c7fix(cli): Fix disablePragmaOnce optioneditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/GlueGen.javab939d0e0555b0fe0e3609d6d867941b9aacf0e6f1687110928000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by default 2023-06-18 19:55:28 +0200b939d0e0555b0fe0e3609d6d867941b9aacf0e6fCPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by defaulteditsrc/java/com/jogamp/gluegen/GlueGen.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlb08c609647f6280ddcd1329c40da1fe23d34c4e61687118554000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [14]: Update doc/GlueGen_Mapping.md Completing a few cases and fix some signatures in table 2023-06-18 22:02:34 +0200b08c609647f6280ddcd1329c40da1fe23d34c4e6GlueGen Struct [14]: Update doc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlwww/index.htmlf783788e21f40a4a429221dad416a79586429eb41687118768000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comwww/index.html: Copy Documentation section into main text for visibility 2023-06-18 22:06:08 +0200f783788e21f40a4a429221dad416a79586429eb4www/index.html: Copy Documentation section into main text for visibilityeditwww/index.htmldoc/manual/index.html49e5000347543559867a45f1d1b330b6086d7a321687119397000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping document 2023-06-18 22:16:37 +020049e5000347543559867a45f1d1b330b6086d7a32Doc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping documenteditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java32db4ef66cacc4a6f01bd6b36f8cda96acb7ed381687180722000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType() 2023-06-19 15:18:42 +020032db4ef66cacc4a6f01bd6b36f8cda96acb7ed38GlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType()editsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javadoc/GlueGen_Mapping.mdf7f554208c024280f1929df79bdbb83c758b8b491687226322000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the former 2023-06-20 03:58:42 +0200f7f554208c024280f1929df79bdbb83c758b8b49doc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the formereditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javadoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javadoc/GlueGen_Mapping.mdmake/build-test.xmlb9dc722d689760bf85628edd8766dc6cd2360c8e1687226532000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentation 2023-06-20 04:02:12 +0200b9dc722d689760bf85628edd8766dc6cd2360c8eGlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentationaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javaeditmake/build-test.xmleditdoc/GlueGen_Mapping.htmleditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cdoc/GlueGen_Mapping.md65e9c14e1566d5bfa88435d460c699c2a8fd23b71687253052000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>() 2023-06-20 11:24:12 +020065e9c14e1566d5bfa88435d460c699c2a8fd23b7GlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>()editdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg3d6003fcada35d91c0d865ad0f4edb1da3ed8b8d1687285862000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long config 2023-06-20 20:31:02 +02003d6003fcada35d91c0d865ad0f4edb1da3ed8b8dGlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long configeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/java/com/jogamp/gluegen/JavaEmitter.java10433928d69e58dc6a6b99e9c0a9b0a2669db56a1687319498000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in message 2023-06-21 05:51:38 +020010433928d69e58dc6a6b99e9c0a9b0a2669db56aJavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in messageeditsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javadf5b63babeec8a9de0ab22a917bbd6c192a2ac0f1687493571000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Test: Test2 -> Test2FuncPtr 2023-06-23 06:12:51 +0200df5b63babeec8a9de0ab22a917bbd6c192a2ac0fGlueGen Test: Test2 -> Test2FuncPtreditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javasrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/common/nio/NativeBuffer.javasrc/java/com/jogamp/common/nio/ElementBuffer.java3f50232fae03c65d7d84a6ca1e2a7b83cefde6ae1687493851000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methods Completing API to simplify usage by generated code. All absolute get/set method check arguments itself and against limit(), allow to drop checks in generated code (size). 2023-06-23 06:17:31 +02003f50232fae03c65d7d84a6ca1e2a7b83cefde6aeNIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methodseditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/java/com/jogamp/common/nio/NativeBuffer.javaeditsrc/java/com/jogamp/common/nio/ElementBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaType.javaf90a42bd693ab9d451902e69ad86359fae2510dc1687493917000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Type, JavaType: Align getSignature(..) output 2023-06-23 06:18:37 +0200f90a42bd693ab9d451902e69ad86359fae2510dcGlueGen: Type, JavaType: Align getSignature(..) outputeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Field.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.java9e61409658358834c2ba26c69c3efcbb5755c1281687494716000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction() Added getArrayBaseOrPointerTargetType() returns getBaseType() for arrays or getTargetType() for pointer, i.e. stops traversing if an elementType is a pointer and returns the elementType as target-type. This resolves 'int* intPtrArray[10]', but also simplifies all cases of 'int** intPtrPtr' and 'int intPtr[10]' etc. Since get{Base,Target}Type() returns the functionPointer, getTargetFunction() allows to retrieve the actual target function type. 2023-06-23 06:31:56 +02009e61409658358834c2ba26c69c3efcbb5755c128GlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction()editsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Field.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java10842e888d1367475019f33bc651671453b31bd21687494816000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO output 2023-06-23 06:33:36 +020010842e888d1367475019f33bc651671453b31bd2GlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO outputeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java829d69ca42d2022790b136a5f689c34919a7c7751687494886000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth() 2023-06-23 06:34:46 +0200829d69ca42d2022790b136a5f689c34919a7c775GlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth()editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md23f4c6347ea24cf619dba573e83790e73d81d5ad1687496964000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [16]: Add support for pointer-pointer and function-pointer values See documentation and unit test test2.h, Test2FuncPtr.java and Test3PtrStorage.java 2023-06-23 07:09:24 +020023f4c6347ea24cf619dba573e83790e73d81d5adGlueGen Struct [16]: Add support for pointer-pointer and function-pointer valuesaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javaeditmake/scripts/runtest.sheditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java69d9f10bb1c99cba53869f2b019d5227446622e21687671162000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusable 2023-06-25 07:32:42 +020069d9f10bb1c99cba53869f2b019d5227446622e2GlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusableeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/DebugEmitter.java7a4a0aea28729eabf1d44f58b0cfa4255f1609921687671473000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usage 2023-06-25 07:37:53 +02007a4a0aea28729eabf1d44f58b0cfa4255f160992GlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usageeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java12ed5d03a26997c185474e992ad93ec99ec3baa11687671638000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..) 2023-06-25 07:40:38 +020012ed5d03a26997c185474e992ad93ec99ec3baa1GlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..)editsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java069c5f69d22c8979728149a51a089b52712cac5c1687671701000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Add JavaEmitter(JavaConfiguration) ctor 2023-06-25 07:41:41 +0200069c5f69d22c8979728149a51a089b52712cac5cGlueGen: Add JavaEmitter(JavaConfiguration) ctoreditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javafd1c691c2e11e1dcfc6f84143e5152c5cd14b45b1687671830000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array case 2023-06-25 07:43:50 +0200fd1c691c2e11e1dcfc6f84143e5152c5cd14b45bJavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array caseeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Type.java42a1f8c8bdb34242f422d24c4ad1d67a1e7ffd251687671956000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type. 2023-06-25 07:45:56 +020042a1f8c8bdb34242f422d24c4ad1d67a1e7ffd25GlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type.editsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javad55eab966968dfff6eac0db0445a0dbfbfb962401687671991000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType: Expose toString(..) w/ 'isPointer' argument 2023-06-25 07:46:31 +0200d55eab966968dfff6eac0db0445a0dbfbfb96240GlueGen FunctionType: Expose toString(..) w/ 'isPointer' argumenteditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javasrc/java/com/jogamp/gluegen/JavaType.javac54c5699c752fcf2cee19ef9dc21cd4acb5aa6cd1687672284000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Add JavaType.forObjectClass() 2023-06-25 07:51:24 +0200c54c5699c752fcf2cee19ef9dc21cd4acb5aa6cdGlueGen Add JavaType.forObjectClass()editsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javab9bddbd7a75e7fa9812fdcc455a0c4857c3e99901687672373000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() ) 2023-06-25 07:52:53 +0200b9bddbd7a75e7fa9812fdcc455a0c4857c3e9990GlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() )editsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java15ed242971142e0726e60271172266515533e1f41687672860000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]' Define a JavaCallback, enacted on a function-pointer argument `T2_CallbackFunc` and a user-param `void*` for Java Object mapping Example: JavaCallbackDef T2_CallbackFunc 2 2023-06-25 08:01:00 +020015ed242971142e0726e60271172266515533e1f4GlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]'editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java7caf66ccae2dea53b82fb6552cb9144d4146259f1687672890000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol) 2023-06-25 08:01:30 +02007caf66ccae2dea53b82fb6552cb9144d4146259fGlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol)editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/JavaEmitter.java5a130ab0c6db44225692e362e41e7b45481f93921687673003000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementation Note: JavaCallbackDef is commented out on test2.cfg example, since implementation is missing. 2023-06-25 08:03:23 +02005a130ab0c6db44225692e362e41e7b45481f9392GlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementationeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmled49b01838f3c07fa7a997b1f758ce2c983f49f71687673033000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add more related documentation 2023-06-25 08:03:53 +0200ed49b01838f3c07fa7a997b1f758ce2c983f49f7GlueGen JavaCallback: Add more related documentationeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaType.java90b86c62270c494d2422dabc2879e59e063b535c1687741869000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime) New nature can be queried via isNamedClass(). Cleaned up equals() and completed hashValue() etc. Ctor validation ensures exactly one nature is set! 2023-06-26 03:11:09 +020090b86c62270c494d2422dabc2879e59e063b535cGlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime)editsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java93c63bd880b6bc8a85a0057112b5065b312af1db1687742099000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function. This passes the jobject for the callback function/interface and the userParam (from 'void*') down to the native implementation. TODO: Add specific native implementation for JavaCallback, wrapping the jobject's into a native struct as user-param and a universal C-function as the native callback to dispatch the call to the java method with known arguments. 2023-06-26 03:14:59 +020093c63bd880b6bc8a85a0057112b5065b312af1dbGlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function.editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java68911f778039bbf08b5afbffd536b4cdacd330321687745359000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Expose getJNIMethodDescriptor() for JNI mangled method names, used in CMethodBindingEmitter; Use JavaCallback's function-pointer-type capital-name as simple-class-name and its FQN for JNI resolution. 2023-06-26 04:09:19 +020068911f778039bbf08b5afbffd536b4cdacd33032GlueGen JavaCallback: Expose getJNIMethodDescriptor() for JNI mangled method names, used in CMethodBindingEmitter; Use JavaCallback's function-pointer-type capital-name as simple-class-name and its FQN for JNI resolution.editsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java4d884db4e08ce9911871d3bdcf378041cde584fd1687771042000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Move JavaCallback into JavaConfiguration, accessible across *Emitter (needed for CMethodEmitter as well); Add JavaCallback.methodSignature to be passed to native function later on to find the callback jmethodID 2023-06-26 11:17:22 +02004d884db4e08ce9911871d3bdcf378041cde584fdGlueGen JavaCallback: Move JavaCallback into JavaConfiguration, accessible across *Emitter (needed for CMethodEmitter as well); Add JavaCallback.methodSignature to be passed to native function later on to find the callback jmethodIDeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java58712fb3a386ca6327b71218bab6e4b218da36a81687771132000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callback 2023-06-26 11:18:52 +020058712fb3a386ca6327b71218bab6e4b218da36a8GlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callbackeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.java9be1305636daa633a7219e102b22a4ffcf2776901687997160000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-types .. includes cross-ref'ed doc and unit test 2023-06-29 02:06:00 +02009be1305636daa633a7219e102b22a4ffcf277690GlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-typeseditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadoc/GlueGen_Mapping.md9f69f8b60b9fdc80076e20f303252ddd35b97ccf1687997460000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for it 2023-06-29 02:11:00 +02009f69f8b60b9fdc80076e20f303252ddd35b97ccfGlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for iteditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javadoc/GlueGen_Mapping.mdce542531f4cb6fe2bf37f3926ea869722e5acf7d1687997898000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen LibraryOnLoad Config: Generate `JNI_OnLoad(..)` for dynamic and `JNI_OnLoad_<LibraryBasename>(..)` for static libraries and `JVMUtil_GetJNIEnv(..)` to resolve the `JNIEnv*` as used by JavaCallback 2023-06-29 02:18:18 +0200ce542531f4cb6fe2bf37f3926ea869722e5acf7dGlueGen LibraryOnLoad Config: Generate `JNI_OnLoad(..)` for dynamic and `JNI_OnLoad_<LibraryBasename>(..)` for static libraries and `JVMUtil_GetJNIEnv(..)` to resolve the `JNIEnv*` as used by JavaCallbackeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaa1b107dd3fbe2070a1e667d8d7702912b0af70711687998298000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtils 2023-06-29 02:24:58 +0200a1b107dd3fbe2070a1e667d8d7702912b0af7071GlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtilseditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java809a7f84fcada7fbde8b7d0c226b78492fbfc6161687998901000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback) 2023-06-29 02:35:01 +0200809a7f84fcada7fbde8b7d0c226b78492fbfc616GlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaa83dad9963b394ac3e7bb193c6da7d9a5004a40e1688000610000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType: Factor out getParameterList(..) from toString(..) and drop 'void' and use typedef-name; MethodBinding: Add getCParameterList(..) and getJavaParameterList(..) for general usage similar to FunctionType.getParameterList() 2023-06-29 03:03:30 +0200a83dad9963b394ac3e7bb193c6da7d9a5004a40eGlueGen FunctionType: Factor out getParameterList(..) from toString(..) and drop 'void' and use typedef-name; MethodBinding: Add getCParameterList(..) and getJavaParameterList(..) for general usage similar to FunctionType.getParameterList()editsrc/java/com/jogamp/gluegen/CodeGenUtils.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java1d66739e09899cb90888c8fe34aba339511aa6561688000700000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parameter 2023-06-29 03:05:00 +02001d66739e09899cb90888c8fe34aba339511aa656GlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parametereditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md6591f1fef419841660311bbb554aeda7b267c9a71688003412000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource management Tested via Test4JavaCallback.java (using test2.[hc]). Please read the GlueGen_Mapping.md as well as Test4JavaCallback.java . +++ Some implementation details: JavaConfiguration maps JavaCallbackDef to JavaCallback set-function and maintains a list. JavaCallbackDef itself holds all configured details. JavaConfiguration also maps JavaCallbackInfo to JavaCallback set-function. JavaCallbackInfo itself holds all compile time information, as produced by JavaEmitter.beginFunctions(..). This extends JavaCallbackDef and avoid repetetive computation for the callback-function-type and its MethodBinding, parameter indices for the callback interface and userParam, etc. CMethodBindingEmitter: Native callback to Java dispatch - The JavaCallback setter function creates a native 'UserParam' struct instance, which holds the callback-interface-jobject, its callback-jmethodID and the userParam-jobject for invocation of the actual JavaCallback interface method. - To produce the C-Type -> JNI-Type conversion, An internal CMethodBindingEmitter instance for the native-callback function binding is created inside the CMethodBindingEmitter of the callback setter method. It is being used to map the types to JNI within the generated native callback function, passed to the actual JavaCallback method. JavaMethodBindingEmitter: Native callback to Java dispatch - The JavaCallbacl setter passes the callback-interface-object, the userParam-object and the callback-method-signature (to have the native method retrieve the jmethodID). - It receives the native pointer of the native `UserParam` struct instance, which gets mapped to the userParam-object. (*TODO: Refine ownership + release*). 2023-06-29 03:50:12 +02006591f1fef419841660311bbb554aeda7b267c9a7GlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource managementeditdoc/GlueGen_Mapping.htmleditmake/scripts/runtest.sheditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mdfb86a3c6f68f3788b02a8e8209a697f50c25dc191688004329000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: Align GlueGen_Mapping.md intro w/ README.md and www/index.html 2023-06-29 04:05:29 +0200fb86a3c6f68f3788b02a8e8209a697f50c25dc19Doc: Align GlueGen_Mapping.md intro w/ README.md and www/index.htmleditdoc/GlueGen_Mapping.htmleditwww/index.htmleditREADME.mdeditdoc/GlueGen_Mapping.mdwww/index.htmldc5061e2d31f01a875b27e722835e2e8cfa67c881688004465000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: www/index.html: Fix JOGL UML link 2023-06-29 04:07:45 +0200dc5061e2d31f01a875b27e722835e2e8cfa67c88Doc: www/index.html: Fix JOGL UML linkeditwww/index.htmldoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mdd5304ac167fc406f682730c40fef2c880a44672e1688004644000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc intro: Fix LibraryOnLoad using generic LibraryBasename 2023-06-29 04:10:44 +0200d5304ac167fc406f682730c40fef2c880a44672eDoc intro: Fix LibraryOnLoad using generic LibraryBasenameeditwww/index.htmleditdoc/GlueGen_Mapping.mdeditREADME.mdeditdoc/GlueGen_Mapping.htmlREADME.md0298341f71f43f4011a40e955bd5e99cbd7985971688004983000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comREADME.md: Fix links 2023-06-29 04:16:23 +02000298341f71f43f4011a40e955bd5e99cbd798597README.md: Fix linkseditREADME.mdsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java4e9d0edc3810d36ffe1660e6ac17d1dc547ea7d71688006922000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function. 2023-06-29 04:48:42 +02004e9d0edc3810d36ffe1660e6ac17d1dc547ea7d7GlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function.editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javae898caec411fc2f313aabc188a22099e266640801688007050000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTest4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests.. 2023-06-29 04:50:50 +0200e898caec411fc2f313aabc188a22099e26664080Test4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests..editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java.classpathad79dae90b94d0875416278e9dcedfc08a1de5781688110839000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse classpath 2023-06-30 09:40:39 +0200ad79dae90b94d0875416278e9dcedfc08a1de578Eclipse classpathedit.classpathsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javab35d62425311ec50e6c80b07372bc411aa287bb41688110881000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generator 2023-06-30 09:41:21 +0200b35d62425311ec50e6c80b07372bc411aa287bb4GlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generatoreditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.mda73c992290930e617c78241bae9fe20cb18a01a91688117793000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass` Updated unit test and doc accordingly. Unit tests handle OpenAL's AL_SOFT_callback_buffer and AL_SOFT_events. Tested global scope (no key, default) and 1 key (default) and 1 key (custom class). Added more query functions, which all only take the `SetCallbackFunction` key arguments as specified. Cleaned up JavaCallback* config class field naminig scheme. Added 'synchronized (..Map) { }' block in crucial `SetCallbackFunction`, rendering implementation thread safe. 2023-06-30 11:36:33 +0200a73c992290930e617c78241bae9fe20cb18a01a9GlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass`editdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mddd5829a4fed25fbad766361b87c65076ef596ded1688172618000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad section 2023-07-01 02:50:18 +0200dd5829a4fed25fbad766361b87c65076ef596dedGlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad sectioneditwww/index.htmleditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmleditREADME.mdsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java6200b9122a90ef8c2af8b9205b4b1c90b1aa50741688204731000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback call .. to avoid a potential race condition 2023-07-01 11:45:31 +02006200b9122a90ef8c2af8b9205b4b1c90b1aa5074GlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback calleditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md8766fcfdce4dd864fe6764b063a0f9a4b17327c11688230657000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methods Further we use a dedicated lock Object used in the Java implementation. TODO: Native static callback dispatch code shall - (also) acquire the lock - handle case where the data has been released already to render this solution thread-safe and data-race free 2023-07-01 18:57:37 +02008766fcfdce4dd864fe6764b063a0f9a4b17327c1GlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methodseditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadf0895828e957d97f38510da36eade7a60691d961688232194000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined! 2023-07-01 19:23:14 +0200df0895828e957d97f38510da36eade7a60691d96GlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined!editdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java679ce37046c3c68b97e56fb70ea7b316e9dba3ad1688249578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safe 2023-07-02 00:12:58 +0200679ce37046c3c68b97e56fb70ea7b316e9dba3adGlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safeeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlbe2d31199f95ddbfa02530a021c8ab9611018f271688249822000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Emphasize all methods are thread-safe 2023-07-02 00:17:02 +0200be2d31199f95ddbfa02530a021c8ab9611018f27GlueGen JavaCallback: Emphasize all methods are thread-safeeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html760fb65d1d65fcac927e28de442f3b9bfd3d58f01688249941000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typo 2023-07-02 00:19:01 +0200760fb65d1d65fcac927e28de442f3b9bfd3d58f0doc/GlueGen_Mapping.md: Typoeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java98dca8cd3cffd3f9dc1c920bbe8e6349877447b71688263100000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ release 2023-07-02 03:58:20 +020098dca8cd3cffd3f9dc1c920bbe8e6349877447b7GlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ releaseeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java1caceb4e72b2e99c5c458d37ebced0c51fe6bb701688268764000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj only 2023-07-02 05:32:44 +02001caceb4e72b2e99c5c458d37ebced0c51fe6bb70GlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj onlyeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javae999ece8b0cd2ec440314f9a4c20812c694991ae1688268853000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElement 2023-07-02 05:34:13 +0200e999ece8b0cd2ec440314f9a4c20812c694991aeGlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElementeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java3ee4a042aee86657128b834dad553baf838346121688298727000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter JavaCallback: Use a friendly readable basename for errors 2023-07-02 13:52:07 +02003ee4a042aee86657128b834dad553baf83834612CMethodBindingEmitter JavaCallback: Use a friendly readable basename for errorseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java88346aae69cc12c7f6932152697a854039517aa71688298775000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issues 2023-07-02 13:52:55 +020088346aae69cc12c7f6932152697a854039517aa7GlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issueseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java9b9aa128d92e9512cb00559e99dce9c8de726ed71688298856000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in general Covered by unit tests now 2023-07-02 13:54:16 +02009b9aa128d92e9512cb00559e99dce9c8de726ed7GlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in generaleditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java6d53b4b1dd07006e7af0e540b2c2e6ee6e1746d51688300764000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef struct 2023-07-02 14:26:04 +02006d53b4b1dd07006e7af0e540b2c2e6ee6e1746d5GlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef structeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.mdREADME.mdsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlwww/index.htmla599b852a041ba3d80b43981589ac1390979dac21688463389000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ... Implementation now generates a static Java callback dispatcher for each defined SetCallbackFunction, which gets invoked by the generated native static counterpart with all arguments required. The static callback utilizes its own synchronization for thread-safety and fetches the required data set stored at SetCallbackFunction to dispatch the call to the users' CallbackFunction. In case the callback has been removed already, the static callback simply bails out quietly. The native code does not create, release or manage heap memory and therefore is considered safe. +++ Further Struct Type UserParam are now supported including Heterogeneous UserParam mapping (read GlueGen_Mapping.*). +++ Cleaned up code by extracting all JavaCallback emitter code into JavaCallbackEmitter class in one place, leaving JavaMethodbindingEmitter and CMethodbindingEmitter mostly in their original stage (non-convoluted). In this regard, I had to refactor a few function, i.e. moving CMethodbindingEmitter.getJNIMangledArg(..) into JavaType.appendDescriptor(..) and JavaType.appendJNIDescriptor(..) while reusing the toJNIMethodDescriptor(..) conversion. Test4JavaCallback covers and passes all cases. 2023-07-04 11:36:29 +0200a599b852a041ba3d80b43981589ac1390979dac2GlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ...editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditwww/index.htmleditREADME.mdeditsrc/java/com/jogamp/gluegen/JavaType.javaeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaaddsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaType.java8cc90ef6a61b9686cc287bf34a3fcba924276c011688466171000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversion 2023-07-04 12:22:51 +02008cc90ef6a61b9686cc287bf34a3fcba924276c01GlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversioneditsrc/java/com/jogamp/gluegen/JavaType.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html0c4067379e5e12617b9a4530e607ca34762b54e31688467795000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Quote `void*` correctly .. 2023-07-04 12:49:55 +02000c4067379e5e12617b9a4530e607ca34762b54e3doc/GlueGen_Mapping.md: Quote `void*` correctly ..editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CCodeUnit.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mdae4c2c3e59ed92caa6f0e18360b7236e50899bf61688544256000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback! 2023-07-05 10:04:16 +0200ae4c2c3e59ed92caa6f0e18360b7236e50899bf6GlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback!editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java5ceca8550b82591a6a2661a26d3e0d5e6e3e15ff1688545308000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType() It is common in toolkit APIs that a string might not be passed as a 'nul' terminated (EOS) C string, but as a Pascal string with a given length argument. A C string is specied as ArgumentIsString alEventCallbackInject 3 while allowing multiple indices .. A Pascal string can be specified as ArgumentIsPascalString ALEVENTPROCSOFT 3 4 while allowing multiple indice-tuples for length and value .. The tuple consist of the length agrument-index first (usually an int) followed by the value argument-index (usually a 'char*'). +++ CMethodBindingEmitter.emitBodyMapCToJNIType(), where PascalString is implemented, is currently being used for - JNI return statement (no PascalString impact possible) - JavaCallback C type -> JNI type, PascalString impacting 2023-07-05 10:21:48 +02005ceca8550b82591a6a2661a26d3e0d5e6e3e15ffGlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType()editdoc/manual/index.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/manual/index.html56d3cbcf7a6a6f83706962dd24846906fa2bb4201688549576000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comManual: Refine `ArgumentIsPascalString` 2023-07-05 11:32:56 +020056d3cbcf7a6a6f83706962dd24846906fa2bb420Manual: Refine `ArgumentIsPascalString`editdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java5b867d0f90a43a02e1fbd03fb1ed588a391806eb1688550086000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID) Also use a longer jclass argument name 'clazz' -> 'staticCBClazz' to avoid potential collisions 2023-07-05 11:41:26 +02005b867d0f90a43a02e1fbd03fb1ed588a391806ebGlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md3ed3e9887c459169b807165c9df2ae2bc2990a311688632530000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build key 2023-07-06 10:35:30 +02003ed3e9887c459169b807165c9df2ae2bc2990a31GlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build keyeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html4267e223e33acdc098cc5b4371765f8e31b96eff1688636526000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter index 2023-07-06 11:42:06 +02004267e223e33acdc098cc5b4371765f8e31b96effGlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter indexeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md701311d6fc507b1e21681dd60c6851fbc50c23041688773427000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add capability to have UserParam as (part of) key Resolves use case where UserParam reflects e.g. a context (AL_SOFT_events) and will be (part of) the key mapping. Implementation required an additional userParamID -> userParam mapping for default Object/ID usage. Added 2 test cases. 2023-07-08 01:43:47 +0200701311d6fc507b1e21681dd60c6851fbc50c2304GlueGen JavaCallback: Add capability to have UserParam as (part of) keyeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.caddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/manual/index.html63ed5f7676bc46ee03db1a6d27c5ce86fcf6a5971688774924000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comManual: Fix ArgumentIsPascalString 2023-07-08 02:08:44 +020063ed5f7676bc46ee03db1a6d27c5ce86fcf6a597Manual: Fix ArgumentIsPascalStringeditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md0ea6688e41c31b0e2c8dba73582c935562885b441688999976000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting API 2023-07-10 16:39:36 +02000ea6688e41c31b0e2c8dba73582c935562885b44GlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting APIeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubdoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html60277196f721875a4114e065fdf1ba24521811be1689014834000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' 2023-07-10 20:47:14 +020060277196f721875a4114e065fdf1ba24521811bedoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass'editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmla03df850033d11386471534840a83bbac81304df1689015095000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions) 2023-07-10 20:51:35 +0200a03df850033d11386471534840a83bbac81304dfdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions)editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlfe21c87b24842d67df686b7c48fa36ed65a9afc91689015808000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today) Cough cough .. should have reviewed the whole thing once. Must be the summer distraction causing premature commits. Sorry about that :) 2023-07-10 21:03:28 +0200fe21c87b24842d67df686b7c48fa36ed65a9afc9doc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today)editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.c380969bbf0b7746ab245b7d7d177243092fb2c341690816974000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Add setter generation for not constant and not opaque compound attribute 2023-07-31 17:22:54 +0200380969bbf0b7746ab245b7d7d177243092fb2c34feat(generation): Add setter generation for not constant and not opaque compound attributeeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.had69716fda64b517c33ed847c4b215ea398aac991690817141000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(callbackGenerator): Add basic management of callback without userData 2023-07-31 17:25:41 +0200ad69716fda64b517c33ed847c4b215ea398aac99feat(callbackGenerator): Add basic management of callback without userDataeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javadoc/GlueGen_Mapping.md165e3b87b2d3abbb83e9fe5421ac63931b41c7931690907832000https://jogamp.org/chuck/user/mferymferymfery@ankama.comdoc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userData 2023-08-01 18:37:12 +0200165e3b87b2d3abbb83e9fe5421ac63931b41c793doc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userDataeditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaEmitter.java9bf13be7d8a144be18dd313e8ed7658f25b9c1d01691062314000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCase 2023-08-03 13:31:54 +02009bf13be7d8a144be18dd313e8ed7658f25b9c1d0feat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCaseeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java1e78cc429f148aa200ae487bacb6d4a9b6b7c8d91691090184000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper) 2023-08-03 21:16:24 +02001e78cc429f148aa200ae487bacb6d4a9b6b7c8d9CMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java910ce385d5e56eeb1fd7f81678042f19f76b18701691090316000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup) 2023-08-03 21:18:36 +0200910ce385d5e56eeb1fd7f81678042f19f76b1870JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java711533cef82cab317662e84f1d1719bdbeca42531691090608000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entities 2023-08-03 21:23:28 +0200711533cef82cab317662e84f1d1719bdbeca4253JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entitieseditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaa51c63b8b054eec3393d4c340cf3cefe561a01b11691098549000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParam Passed CMethodBindingEmitter denotes the callback-function, including the binding. The new iteration to handle the ad-hoc compound conversion, introduced in commit ad69716fda64b517c33ed847c4b215ea398aac99 'callback without userData', iterates over the callback-function argument list. Hence it shall only exclude the ad-hoc compound conversion if index != info.cbFuncUserParamIdx. Dropping the addition exclusion 'i != info.setFuncUserParamIdx'. 2023-08-03 23:35:49 +0200a51c63b8b054eec3393d4c340cf3cefe561a01b1JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParameditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javae9a2294b3f18bb4c4f38347ccf347058cb4642b31691099874000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding' Was added in commit ad69716fda64b517c33ed847c4b215ea398aac99 'callback without userData', while adding ad-hoc compound conversion. 2023-08-03 23:57:54 +0200e9a2294b3f18bb4c4f38347ccf347058cb4642b3JavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding'editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javae729d53c8384757b6a5ada2491c7cd4ad07c8bfe1691100456000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding' Since emitJavaCallbackBodyPassJavaArguments() is private now, only use case is to handle info.cbFuncBinding and we can drop the redundant argument. Similar to cleanup commit e9a2294b3f18bb4c4f38347ccf347058cb4642b3 2023-08-04 00:07:36 +0200e729d53c8384757b6a5ada2491c7cd4ad07c8bfeJavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding'editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java88941c41dbb134984fd0857db9ea0729d9306bbb1691100598000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..) Passed 'jcbFuncCMethodEmitter' only used to access CMethodBindingEmitter.emitBodyMapCToJNIType(int, boolean), a non-ideal hack! (FIXME) General processing shall use the local `info.cbFuncBinding`. 2023-08-04 00:09:58 +020088941c41dbb134984fd0857db9ea0729d9306bbbJavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.javad4e8ecc3b4f68b86d95ec951971a0fea202179881691100882000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required? - needsIntermediateOperation -> needsJavaCallbackCode - Use JavaConfiguration.requiresJavaCallbackCode(..) TBD: Is this even required? As far as I see, the non-userParam callback case adds no additional code requirements. Both, callback with and without userParam shares same code path and the respective native static fields. Only that the non-userParam code path adds additional native static fields, but all code sections are produced in both cases. 2023-08-04 00:14:42 +0200d4e8ecc3b4f68b86d95ec951971a0fea20217988JavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required?editsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java3e249796e7b42033072aeda438d987601939db441691101088000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different order - ad-hoc compound equals must compare value, since native code creates a new class instance from native struct - Add additional case with addition callback argument for further validation 2023-08-04 00:18:08 +02003e249796e7b42033072aeda438d987601939db44Fix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different ordereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/DebugEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javab08c61935daa0191f4ec59c6998bc56dae18e54d1691139125000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't present 2023-08-04 10:52:05 +0200b08c61935daa0191f4ec59c6998bc56dae18e54dfeat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't presenteditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java97b574914f7f961458f6668495c2fef70b9105491691139611000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..) We only produce one variant in code. Use case: String type as userParam (barely tested and not useful) 2023-08-04 11:00:11 +020097b574914f7f961458f6668495c2fef70b910549CMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java1250d960d8bf2ee9ab8726a18a837115d69308151691139828000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String') Use case: String type as userParam, barely tested and not useful. However, let's pass through all cases in our code. Added LOG INFO for mapped types. 2023-08-04 11:03:48 +02001250d960d8bf2ee9ab8726a18a837115d6930815JavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String')editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg3ad38748d7ef50a3631506eabcd3ae3417faa84d1691140413000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identity Use case is having a compound-type as userParam, which also acts as key, see MessageCallback13, Test4JavaCallback.chapter13(). The Java compound instance is re-created using the actual identical native memory (address), which has been stored or passed in the native toolkit. 2023-08-04 11:13:33 +02003ad38748d7ef50a3631506eabcd3ae3417faa84dJavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identityeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java927bbc7160a812bb29c0e7120d4a3009bfb13bbf1691142383000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode() Method was encapsulated in commit d4e8ecc3b4f68b86d95ec951971a0fea20217988 and questioned whether it is required. The non-userParam callback case adds no additional code requirements. Both, callback with and without userParam shares same code path and the respective native static fields. Only that the non-userParam code path adds additional native static fields, but all code sections are produced in both cases. Passed all unit tests. 2023-08-04 11:46:23 +0200927bbc7160a812bb29c0e7120d4a3009bfb13bbfJavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html9b0335ea91c39469b586b4005dfae35d4b2cc84b1691143006000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html page 2023-08-04 11:56:46 +02009b0335ea91c39469b586b4005dfae35d4b2cc84bdoc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html pageeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gdoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p1.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javamake/build-test.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg2abb40b0ca9a6a06bdbe3e66b4235301ed15c6931691170668000https://jogamp.org/chuck/user/mferymferymfery@ankama.comwip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Almost done 2023-08-04 19:37:48 +02002abb40b0ca9a6a06bdbe3e66b4235301ed15c693wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbfeditdoc/GlueGen_Mapping.mddeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javaeditmake/scripts/runtest.shdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javaeditdoc/GlueGen_Mapping.htmleditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgeditmake/build-test.xmldeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p1.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java4a8f15d29120e7744eca75f6d99bae6a7431749e1691172143000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRevert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()" This reverts commit 927bbc7160a812bb29c0e7120d4a3009bfb13bbf. 2023-08-04 20:02:23 +02004a8f15d29120e7744eca75f6d99bae6a7431749eRevert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()"editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-if.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgmake/build-test.xml8b4d36e543a14c404c73942840f15a4d81d839901691194245000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfg 2023-08-05 02:10:45 +02008b4d36e543a14c404c73942840f15a4d81d83990WIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-if.cfgdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgeditmake/build-test.xmlmake/build-test.xmle52b7022e31022b92f4aaf5fb2e9457d767682c81691194342000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1 2023-08-05 02:12:22 +0200e52b7022e31022b92f4aaf5fb2e9457d767682c8WIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1editmake/build-test.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg06318d44c94c494fe6862ac8cf97fca799d058001691194407000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impl 2023-08-05 02:13:27 +020006318d44c94c494fe6862ac8cf97fca799d05800WIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgfbd065be8a5f36455a335c20549d729537f5d4b01691194442000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target name 2023-08-05 02:14:02 +0200fbd065be8a5f36455a335c20549d729537f5d4b0WIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target nameeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.java94c68465331b10f548727483437a3f3b575ee2871691194863000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1() 2023-08-05 02:21:03 +020094c68465331b10f548727483437a3f3b575ee287WIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1()editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java2e8b69496221f242fee762140418008a9a862d3d1691194985000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped. Just ensure GlueGen itself is initializes via Platform.initSingleton() in common BaseClass 2023-08-05 02:23:05 +02002e8b69496221f242fee762140418008a9a862d3dGlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped.editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javaf0da1ec6f5ac68de4c1ede1fd54a71b656fe5d751691195057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam case Additional body code for JavaCallback is required for methods it. 2023-08-05 02:24:17 +0200f0da1ec6f5ac68de4c1ede1fd54a71b656fe5d75JavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam caseeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javasrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javasrc/junit/com/jogamp/common/util/TestIntIntHashMap.javasrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javatest/junit/com/jogamp/gluegen/TestStructAccessor.javasrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javatest/junit/com/jogamp/gluegen/StructAccessorTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/common/util/TestLongIntHashMap.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.java177ee444d1b86e6412f636d5f4e8f0695d4182461691198109000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:15:09 +0200177ee444d1b86e6412f636d5f4e8f0695d418246Cleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classesaddsrc/junit/com/jogamp/common/util/TestIntIntHashMap.javaaddsrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javaaddtest/junit/com/jogamp/gluegen/TestStructAccessor.javadeletesrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javadeletesrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaaddsrc/junit/com/jogamp/common/util/TestLongIntHashMap.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javadeletesrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javadeletetest/junit/com/jogamp/gluegen/StructAccessorTest.javadeletesrc/junit/com/jogamp/common/util/LongIntHashMapTest.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javadeletesrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javasrc/junit/com/jogamp/common/util/TestIntIntHashMap.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javatest/junit/com/jogamp/gluegen/StructValidator.javatest/junit/com/jogamp/gluegen/TestStructAccessor.javasrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/common/util/TestLongIntHashMap.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.java0d3c2b630e06045013250547b3d0cb1bd9f993861691198166000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:16:06 +02000d3c2b630e06045013250547b3d0cb1bd9f99386Cleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classeseditsrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaedittest/junit/com/jogamp/gluegen/StructValidator.javaeditsrc/junit/com/jogamp/common/util/TestIntIntHashMap.javaeditsrc/junit/com/jogamp/common/util/TestLongIntHashMap.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaedittest/junit/com/jogamp/gluegen/TestStructAccessor.javaeditsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javaeditsrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javaeditsrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg05a931d587feb3116892f5b146b3a4bb2867e9231691198497000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:21:37 +020005a931d587feb3116892f5b146b3a4bb2867e923Cleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classeseditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgmake/scripts/runtest.shdoc/misc/macos_nativelib_dependencies.md287780236de7e3cea7ba826a76f720cf4501e4c01691205539000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-path 2023-08-05 05:18:59 +0200287780236de7e3cea7ba826a76f720cf4501e4c0Add notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-pathadddoc/misc/macos_nativelib_dependencies.mdeditmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.java9555288019afaf7f1b9eb73e02fe0d899d6332921691207188000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMinor cleanup (includes, spacing) 2023-08-05 05:46:28 +02009555288019afaf7f1b9eb73e02fe0d899d633292Minor cleanup (includes, spacing)editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html0e6d18c6b6d46b54e679ce0c44613e21e58245f21691209636000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.md Original comment of commit 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693 wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Revised comment taken from unmerged updated branch f6de3646acf0fdadf55708fd8a1c42fbd8663bc5 wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Some short summary of modifications : * Add tests with each emitters for test2, but tests are shared and run for each emitters * Update JavaParser.g to allow parsing of bindings generated after test2 processing * Add basic management of generic type (But not yet retrieved inside classTypeSpec args) * Add basic management of annotations (with or w/o parameter(s)) (Retrieved in statement, classes and interfaces but not used) * Align lexer constants in JavaParser.g * Update JavaParser.g to allow fetching all inner classes and inner interfaces to allow excluding by ExtendedInterfaceSymbolsIgnore * Modify JavaConfiguration::requiresJavaCallbackCode because all callback need to force generation not only callback without user param * Functions not generated w/o JavaConfiguration::requiresJavaCallbackCode : * SetLogCallBack12a * SetLogCallBack12b * MessageCallback11b * alBufferCallback0 2023-08-05 06:27:16 +02000e6d18c6b6d46b54e679ce0c44613e21e58245f2JavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/CodeGenUtils.java4ab62d5121afec50dcb975fcfabefd838861da281691488341000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Fix CodeGenUtils.emitJavaHeaders When both classExtended and interfaces are specified for given class space missing between classExtended and implements keyword 2023-08-08 11:52:21 +02004ab62d5121afec50dcb975fcfabefd838861da28feat(generation): Fix CodeGenUtils.emitJavaHeaderseditsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.g496df9c41332a0d606017f0df5ba08b02af0c9921691489157000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementation 2023-08-08 12:05:57 +0200496df9c41332a0d606017f0df5ba08b02af0c992feat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementationeditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gjcppsrc/junit/com/jogamp/gluegen/test/junit/generation/BuildEnvironment.javamake/scripts/runtest.sh.classpathmake/build-test.xml4c5f3d8e589016e17ac3f1aad6a5c26bc21efe2f1691498036000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changes 2023-08-08 14:33:56 +02004c5f3d8e589016e17ac3f1aad6a5c26bc21efe2fBump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changeseditjcppedit.classpatheditsrc/junit/com/jogamp/gluegen/test/junit/generation/BuildEnvironment.javaeditmake/build-test.xmleditmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hmake/scripts/runtest-secmgr.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hdoc/manual/index.htmlmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.hsrc/java/com/jogamp/gluegen/pcpp/ConcatenatingReader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java239b00c26cc3f24b7d9e334de8ac1bee849e05b11691500094000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDrop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPP 2023-08-08 15:08:14 +0200239b00c26cc3f24b7d9e334de8ac1bee849e05b1Drop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPPaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.heditdoc/manual/index.htmleditmake/scripts/runtest-secmgr.shdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hdeletesrc/java/com/jogamp/gluegen/pcpp/ConcatenatingReader.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.heditmake/scripts/runtest.shdeletesrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hsrc/junit/com/jogamp/gluegen/test/junit/generation/sub-inc/-cpptest-included2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java07c57a0d36c375f55e93f0caf7dd57e7c0afe2711691526683000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-' 2023-08-08 22:31:23 +020007c57a0d36c375f55e93f0caf7dd57e7c0afe271TestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-'editsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/sub-inc/-cpptest-included2.hsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.gsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gb5ec911572aa0c07228fcb02976a8e848cc903911691656787000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.g 2023-08-10 10:39:47 +0200b5ec911572aa0c07228fcb02976a8e848cc90391ANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gf8752c59945205b717c4b21ceeb4044ae9a0e9df1691657242000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operator n GlueGen commit 10032c0115f2794a254cffc2a1cd5e48ca8ff0b8 in branch JOGL_2_SANDBOX Ken hacked in consuming a '-' prefix to have negative numbers covered by 'Number'. This is wrong, as it breaks deduction of `additiveExpr` and 'unaryExpr' rules, which want to consume '-' and '+'. The latter is used to completely resolve constant expressions starting from the 'constExpr' rule. See ISO 9899:202x Programming Language - C https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2596.pdf 2023-08-10 10:47:22 +0200f8752c59945205b717c4b21ceeb4044ae9a0e9dfBug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operatoreditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/java/com/jogamp/gluegen/ConstantDefinition.java5b6e6af3932ece0c656cf4438100f4e213ea91b61691657611000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand' i.e. all supported operands used for constant-expression of define macros. 2023-08-10 10:53:31 +02005b6e6af3932ece0c656cf4438100f4e213ea91b6Bug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand'editsrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/JavaEmitter.javac30f0db4b785f21288f9cc5f7fd65393781d93c31691657735000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expression 2023-08-10 10:55:35 +0200c30f0db4b785f21288f9cc5f7fd65393781d93c3Bug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expressioneditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_10.hppsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javamake/build.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java2ae7f2ea923aab662a0c273578456216bc8cd6331691657943000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParser 2023-08-10 10:59:03 +02002ae7f2ea923aab662a0c273578456216bc8cd633Bug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParsereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_1.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_10.hppdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.heditmake/build.xmleditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javaa7e62d106b1ba89d0973e5ccb00982e8ae8df9e41691658115000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: TestCParser: Enable test10_cc() w/o JCPP 2023-08-10 11:01:55 +0200a7e62d106b1ba89d0973e5ccb00982e8ae8df9e4Bug 1450: TestCParser: Enable test10_cc() w/o JCPPeditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javasrc/java/com/jogamp/gluegen/GlueGen.javab3dd6410aad591ddaec4eddfb8d894893368a54a1691658538000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: 'from expression' -> 'with expression' 2023-08-10 11:08:58 +0200b3dd6410aad591ddaec4eddfb8d894893368a54aGlueGen: 'from expression' -> 'with expression'editsrc/java/com/jogamp/gluegen/GlueGen.javagithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/schwabschwabhttps://jogamp.org/chuck/user/mferymferyhttps://jogamp.org/chuck/user/tgctgchttps://jogamp.org/chuck/user/sven%20gothelSven Gothel964https://jogamp.org/chuck/job/gluegen/label=android-arm64/964/964https://jogamp.org/chuck/job/gluegen/label=linux-arm32/964/964https://jogamp.org/chuck/job/gluegen/label=linux-arm64/964/964https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/964/Started by user Sven GothelsgothelSven Gothel9616a74d16a805a4204093972bb91361b2aa633065c6a74d16a805a4204093972bb91361b2aa633065corigin/master6a74d16a805a4204093972bb91361b2aa633065c6a74d16a805a4204093972bb91361b2aa633065corigin/master6a74d16a805a4204093972bb91361b2aa633065c6a74d16a805a4204093972bb91361b2aa633065corigin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#961512871460248gluegen #961961falsefalse961849SUCCESS1684801689711https://jogamp.org/chuck/job/gluegen/961/src/java/com/jogamp/common/av/AudioSink.java325e5ed234a5e15f8f94eaa72dba6dbb619d490a1684653552000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink: Enhance description re 'AudioFrame' and 'frameDuration' also using enqueueData() -> 1 AudioFrame 2023-05-21 09:19:12 +0200325e5ed234a5e15f8f94eaa72dba6dbb619d490aAudioSink: Enhance description re 'AudioFrame' and 'frameDuration' also using enqueueData() -> 1 AudioFrameeditsrc/java/com/jogamp/common/av/AudioSink.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/com/jogamp/common/av/AudioFormat.javasrc/java/jogamp/common/av/NullAudioSink.java5c33470aea6b30c81681992567d7c92e100bdab31684667129000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink: Add getAvgFrameDuration(); API-Doc: Default*: 'frame' -> AudioFrame; init(): Use getAvgFrameDuration() for queue growth and limit. This change renders buffer dequeueing, growth and limit sticking w/ [ms] values while getAvgFrameDuration() assists frame count determination. getAvgFrameDuration() is calculated when buffer is fully filled (queuedBytes / queuedFrames), i.e. a proper representation to be used to dequeue in duration range as well as for growth. This further decouples the frameDuration{->Hint} parameter in init(), as it is now only used for the initial buffer count (and latency adjustment). 2023-05-21 13:05:29 +02005c33470aea6b30c81681992567d7c92e100bdab3AudioSink: Add getAvgFrameDuration(); API-Doc: Default*: 'frame' -> AudioFrame; init(): Use getAvgFrameDuration() for queue growth and limit.editsrc/java/jogamp/common/av/JavaSoundAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioFormat.javaeditsrc/java/jogamp/common/av/NullAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/com/jogamp/common/av/AudioFormat.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.javasrc/java/com/jogamp/common/av/TimeFrameI.java742cf0cd053f968cbf291ed367d4568c12d8bde21684680257000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioFormat/AudioSink: Use float in seconds for duration to avoid losing precision when dealing with stats, averages etc 2023-05-21 16:44:17 +0200742cf0cd053f968cbf291ed367d4568c12d8bde2AudioFormat/AudioSink: Use float in seconds for duration to avoid losing precision when dealing with stats, averages etceditsrc/java/com/jogamp/common/av/AudioFormat.javaeditsrc/java/jogamp/common/av/NullAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javaeditsrc/java/com/jogamp/common/av/TimeFrameI.javaeditsrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.javac04726720a57f8db42f2621ad58ff3bd42006c631684798468000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink: Refine context locking where supported, have a more usable universal API interface 2023-05-23 01:34:28 +0200c04726720a57f8db42f2621ad58ff3bd42006c63AudioSink: Refine context locking where supported, have a more usable universal API interfaceeditsrc/java/jogamp/common/av/NullAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javaeditsrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.java6a74d16a805a4204093972bb91361b2aa633065c1684798621000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink: Drop getMaxSupportedChannels(), use getNativeFormat(), getPreferredFormat() and isSupported(); Add setChannelLimit() impacting Add setChannelLimit() impacting getPreferredFormat() and isSupported(), i.e. to limit channels for e.g. JOAL/OpenAL spatial 3D sound usage. getNativeFormat() shall be unaffected. getMaxSupportedChannels() is redudandant -> getPreferredFormat() 2023-05-23 01:37:01 +02006a74d16a805a4204093972bb91361b2aa633065cAudioSink: Drop getMaxSupportedChannels(), use getNativeFormat(), getPreferredFormat() and isSupported(); Add setChannelLimit() impactingeditsrc/java/jogamp/common/av/NullAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javaeditsrc/java/jogamp/common/av/JavaSoundAudioSink.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel961https://jogamp.org/chuck/job/gluegen/label=android-arm64/961/961https://jogamp.org/chuck/job/gluegen/label=linux-arm32/961/961https://jogamp.org/chuck/job/gluegen/label=linux-arm64/961/961https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/961/961https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/961/961https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/961/Started by user Sven GothelsgothelSven Gothel960e96f9b0c05b9fd5e47f55c2079271d6969a27a80e96f9b0c05b9fd5e47f55c2079271d6969a27a80origin/mastere96f9b0c05b9fd5e47f55c2079271d6969a27a80e96f9b0c05b9fd5e47f55c2079271d6969a27a80origin/mastere96f9b0c05b9fd5e47f55c2079271d6969a27a80e96f9b0c05b9fd5e47f55c2079271d6969a27a80origin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#960288530460248gluegen #960960falsefalse960753SUCCESS1684586137795https://jogamp.org/chuck/job/gluegen/960/src/java/com/jogamp/common/util/JarUtil.javae96f9b0c05b9fd5e47f55c2079271d6969a27a801684585899000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJarUtil.getRelativeOf(): Make'cutOffInclSubDir' optional, i.e. ignore if null in case no sub-directory is desired 2023-05-20 14:31:39 +0200e96f9b0c05b9fd5e47f55c2079271d6969a27a80JarUtil.getRelativeOf(): Make'cutOffInclSubDir' optional, i.e. ignore if null in case no sub-directory is desirededitsrc/java/com/jogamp/common/util/JarUtil.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel960https://jogamp.org/chuck/job/gluegen/label=android-arm64/960/960https://jogamp.org/chuck/job/gluegen/label=linux-arm32/960/960https://jogamp.org/chuck/job/gluegen/label=linux-arm64/960/960https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/960/960https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/960/960https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/960/Started by user Sven GothelsgothelSven Gothel9597f8dcc310cfb8b3eb1e026ce9aeb73471e223d8a7f8dcc310cfb8b3eb1e026ce9aeb73471e223d8aorigin/master7f8dcc310cfb8b3eb1e026ce9aeb73471e223d8a7f8dcc310cfb8b3eb1e026ce9aeb73471e223d8aorigin/master7f8dcc310cfb8b3eb1e026ce9aeb73471e223d8a7f8dcc310cfb8b3eb1e026ce9aeb73471e223d8aorigin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#959290450460248gluegen #959959falsefalse959692SUCCESS1684562125022https://jogamp.org/chuck/job/gluegen/959/src/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.javasrc/java/com/jogamp/common/av/AudioSinkFactory.javasrc/java/com/jogamp/common/av/TimeFrameI.java270172bcbd91f96d4a38a3d73e23d744f57a25b81684303538000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comPromote common av (audio/video) classes (AudioSink, ..) from JOGL to GlueGen for cross module usage in JOAL, JOGL, ... Supply AudioSink: NullAudioSink and JavaSoundAudioSink by GlueGen, ALAudioSink is supplied via JOAL. 2023-05-17 08:05:38 +0200270172bcbd91f96d4a38a3d73e23d744f57a25b8Promote common av (audio/video) classes (AudioSink, ..) from JOGL to GlueGen for cross module usage in JOAL, JOGL, ...addsrc/java/com/jogamp/common/av/AudioSinkFactory.javaaddsrc/java/jogamp/common/av/JavaSoundAudioSink.javaaddsrc/java/jogamp/common/av/NullAudioSink.javaaddsrc/java/com/jogamp/common/av/AudioSink.javaaddsrc/java/com/jogamp/common/av/TimeFrameI.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.java37977b4fe48cdc6be6f8e4938b5c79371d527a5d1684333616000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink: Add exclusive locking allowing implementations to short-cut for less management overhead (-> OpenAL + Synthesizer) 2023-05-17 16:26:56 +020037977b4fe48cdc6be6f8e4938b5c79371d527a5dAudioSink: Add exclusive locking allowing implementations to short-cut for less management overhead (-> OpenAL + Synthesizer)editsrc/java/jogamp/common/av/JavaSoundAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javaeditsrc/java/jogamp/common/av/NullAudioSink.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/com/jogamp/common/av/AudioFormat.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.javasrc/java/com/jogamp/common/av/AudioSinkFactory.java2b339721a4d6dd4f3af129a4654375b15c7ea3401684374540000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comPlace AudioFormat in its own file outside AudioSink, JOAL's ALAudioSink has moved to com.jogamp.openal.util.ALAudioSink (public) 2023-05-18 03:49:00 +02002b339721a4d6dd4f3af129a4654375b15c7ea340Place AudioFormat in its own file outside AudioSink, JOAL's ALAudioSink has moved to com.jogamp.openal.util.ALAudioSink (public)addsrc/java/com/jogamp/common/av/AudioFormat.javaeditsrc/java/jogamp/common/av/JavaSoundAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSinkFactory.javaeditsrc/java/jogamp/common/av/NullAudioSink.javasrc/java/com/jogamp/common/av/AudioFormat.javab7e6bee3deba4d79cab7d4d82288cf632907faf81684475239000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioFormat: Fix rounding/int-truncate errors, all millisecond params use type int 2023-05-19 07:47:19 +0200b7e6bee3deba4d79cab7d4d82288cf632907faf8AudioFormat: Fix rounding/int-truncate errors, all millisecond params use type inteditsrc/java/com/jogamp/common/av/AudioFormat.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/jogamp/common/av/NullAudioSink.javaae301d0f1288b31841e91be8d63a2ab024c2158f1684475317000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink: Add latency query, init(..) frameDuration in ms shall be int, fix API doc 2023-05-19 07:48:37 +0200ae301d0f1288b31841e91be8d63a2ab024c2158fAudioSink: Add latency query, init(..) frameDuration in ms shall be int, fix API doceditsrc/java/jogamp/common/av/JavaSoundAudioSink.javaeditsrc/java/jogamp/common/av/NullAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javasrc/java/com/jogamp/common/av/AudioSink.javasrc/java/jogamp/common/av/JavaSoundAudioSink.javasrc/java/com/jogamp/common/av/AudioFormat.javasrc/java/jogamp/common/av/NullAudioSink.javaefa6fe4f5746aeae49c3a01dbe243be88309f7bc1684548905000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd AudioSink.getSourceCount(), refine Audio* API doc 2023-05-20 04:15:05 +0200efa6fe4f5746aeae49c3a01dbe243be88309f7bcAdd AudioSink.getSourceCount(), refine Audio* API doceditsrc/java/jogamp/common/av/JavaSoundAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioSink.javaeditsrc/java/jogamp/common/av/NullAudioSink.javaeditsrc/java/com/jogamp/common/av/AudioFormat.javasrc/java/com/jogamp/common/av/AudioSink.java7f8dcc310cfb8b3eb1e026ce9aeb73471e223d8a1684561205000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAudioSink.init(): Detail 'frameDuration' intend and impact of underlying JOAL/OpenAL implementation 2023-05-20 07:40:05 +02007f8dcc310cfb8b3eb1e026ce9aeb73471e223d8aAudioSink.init(): Detail 'frameDuration' intend and impact of underlying JOAL/OpenAL implementationeditsrc/java/com/jogamp/common/av/AudioSink.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel959https://jogamp.org/chuck/job/gluegen/label=android-arm64/959/959https://jogamp.org/chuck/job/gluegen/label=linux-arm32/959/959https://jogamp.org/chuck/job/gluegen/label=linux-arm64/959/959https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/959/959https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/959/959https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/959/Started by user Sven GothelsgothelSven Gothel9579301bf1854d91405319801b62c268e2ca09406e69301bf1854d91405319801b62c268e2ca09406e6origin/master9301bf1854d91405319801b62c268e2ca09406e69301bf1854d91405319801b62c268e2ca09406e6origin/master9301bf1854d91405319801b62c268e2ca09406e69301bf1854d91405319801b62c268e2ca09406e6origin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#957406239460248gluegen #957957falsefalse957619SUCCESS1684127434654https://jogamp.org/chuck/job/gluegen/957/doc/JogAmpMacOSVersions.md9301bf1854d91405319801b62c268e2ca09406e61684127300000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.md: Fix 'Build node 12.6.5' row (11 -> 12) 2023-05-15 07:08:20 +02009301bf1854d91405319801b62c268e2ca09406e6doc/JogAmpMacOSVersions.md: Fix 'Build node 12.6.5' row (11 -> 12)editdoc/JogAmpMacOSVersions.mdgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel957https://jogamp.org/chuck/job/gluegen/label=android-arm64/957/957https://jogamp.org/chuck/job/gluegen/label=linux-arm32/957/957https://jogamp.org/chuck/job/gluegen/label=linux-arm64/957/957https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/957/957https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/957/957https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/957/Started by an SCM change95699d14e9d70ab183f3d2b7f4fde7d0de8e8928a4b99d14e9d70ab183f3d2b7f4fde7d0de8e8928a4borigin/master99d14e9d70ab183f3d2b7f4fde7d0de8e8928a4b99d14e9d70ab183f3d2b7f4fde7d0de8e8928a4borigin/master99d14e9d70ab183f3d2b7f4fde7d0de8e8928a4b99d14e9d70ab183f3d2b7f4fde7d0de8e8928a4borigin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#956338675460248gluegen #956956falsefalse956567SUCCESS1683566880122https://jogamp.org/chuck/job/gluegen/956/make/build.xml99d14e9d70ab183f3d2b7f4fde7d0de8e8928a4b1683566852000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen 7z File Layout: Have *-java-src.zip inside jar folder This is restricted to the 7z archive only for now, not yet producing artifacts in a jar folder as joal, jogl and jocl. This is due to sub-projects referencing gluegen jar files. A compromise. 2023-05-08 19:27:32 +020099d14e9d70ab183f3d2b7f4fde7d0de8e8928a4bGlueGen 7z File Layout: Have *-java-src.zip inside jar foldereditmake/build.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel956https://jogamp.org/chuck/job/gluegen/label=android-arm64/956/956https://jogamp.org/chuck/job/gluegen/label=linux-arm32/956/956https://jogamp.org/chuck/job/gluegen/label=linux-arm64/956/956https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/956/956https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/956/956https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/956/Started by user Sven GothelsgothelSven Gothel955803d7540429836227f9f496742a059717c156250803d7540429836227f9f496742a059717c156250origin/master803d7540429836227f9f496742a059717c156250803d7540429836227f9f496742a059717c156250origin/master803d7540429836227f9f496742a059717c156250803d7540429836227f9f496742a059717c156250origin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#955552742460248gluegen #955955falsefalse955515SUCCESS1683554684253https://jogamp.org/chuck/job/gluegen/955/git955https://jogamp.org/chuck/job/gluegen/label=android-arm64/955/955https://jogamp.org/chuck/job/gluegen/label=linux-arm32/955/955https://jogamp.org/chuck/job/gluegen/label=linux-arm64/955/955https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/955/955https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/955/955https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/955/Started by user Sven GothelsgothelSven Gothel954803d7540429836227f9f496742a059717c156250803d7540429836227f9f496742a059717c156250origin/master803d7540429836227f9f496742a059717c156250803d7540429836227f9f496742a059717c156250origin/master803d7540429836227f9f496742a059717c156250803d7540429836227f9f496742a059717c156250origin/mastergit://jogamp.org/srv/scm/gluegen.git00807testReportfalse#954408061460248gluegen #954954falsefalse954432SUCCESS1683420755470https://jogamp.org/chuck/job/gluegen/954/make/jogamp-env.xml2ac520f23c27ca63116c55440597baaa6f23094b1675274728000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNext JogAmp Release to be 2.5.0, mark w/ developer RC + timestamp tag 2023-02-01 19:05:28 +01002ac520f23c27ca63116c55440597baaa6f23094bNext JogAmp Release to be 2.5.0, mark w/ developer RC + timestamp tageditmake/jogamp-env.xmlsrc/java/com/jogamp/common/nio/Buffers.java69b748925038b7d44fa6318536642b426e3d3e381678065023000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuffers: Add put[34][bsifd](..) and array-put variants for flexibility/performance. Notable: The array-put is slower than small range single-puts, e.g. put3i(..). 2023-03-06 02:10:23 +010069b748925038b7d44fa6318536642b426e3d3e38Buffers: Add put[34][bsifd](..) and array-put variants for flexibility/performance.editsrc/java/com/jogamp/common/nio/Buffers.javasrc/native/common/Platforms.csrc/java/com/jogamp/common/os/Clock.javasrc/java/com/jogamp/common/os/Platform.javasrc/native/common/jau_sys_Clock.c717bc406e96fbff30cf02adad019cf9daa14e59c1678094912000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd Clock, implementing proper monotonic and wallclock time using Instant (sec + nsec), currentTimeMillis() is also monotonic now, reused by Platform. Dropped Platform.currentTimeMicros() Clock and its implementation was copied from jaulibs, a spin-off from Direct-BT. The implementation uses `clock_gettime(CLOCK_MONOTONIC, &t)` and is considered safe and high-performant as it avoids a kernel call via VDSO (GNU/Linux). 2023-03-06 10:28:32 +0100717bc406e96fbff30cf02adad019cf9daa14e59cAdd Clock, implementing proper monotonic and wallclock time using Instant (sec + nsec), currentTimeMillis() is also monotonic now, reused by Platform. Dropped Platform.currentTimeMicros()addsrc/native/common/jau_sys_Clock.ceditsrc/java/com/jogamp/common/os/Platform.javaaddsrc/java/com/jogamp/common/os/Clock.javadeletesrc/native/common/Platforms.csrc/java/com/jogamp/common/util/PerfCounterCtrl.javaa26445909b3677a8c2de669992a13de2053fa8211678096239000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd PerfCounterCtrl, a simple performance counter controller 2023-03-06 10:50:39 +0100a26445909b3677a8c2de669992a13de2053fa821Add PerfCounterCtrl, a simple performance counter controlleraddsrc/java/com/jogamp/common/util/PerfCounterCtrl.javasrc/java/com/jogamp/common/os/Clock.javasrc/java/com/jogamp/common/util/PerfCounterCtrl.javasrc/native/common/jau_sys_Clock.c0836295b52aaad1dce10a31a13cb544802d7de031678137418000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix Clock for performance counter: Add currentTimeNanos() since module startup, retrievable via getMonotonicStartupTime(). (performance) Settings two long fields in getMonotonicTime() and creating Instant and using Duration for high-frequency counter is too expensive. currentTimeNanos() subtracts the startup time from the current monotonic time and returns the resulting duration in nanoseconds, which lasts for 292 years since module startup. This satisfies performance counter requirements. 2023-03-06 22:16:58 +01000836295b52aaad1dce10a31a13cb544802d7de03Fix Clock for performance counter: Add currentTimeNanos() since module startup, retrievable via getMonotonicStartupTime(). (performance)editsrc/java/com/jogamp/common/util/PerfCounterCtrl.javaeditsrc/java/com/jogamp/common/os/Clock.javaeditsrc/native/common/jau_sys_Clock.csrc/java/com/jogamp/common/os/Clock.javasrc/java/com/jogamp/common/util/PerfCounterCtrl.javasrc/native/common/jau_sys_Clock.cb773048aee7ebfb00b7ae7b45ef9f49e88ebc5a41678138127000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comClock: Rename currentTimeNanos() -> currentNanos() as it represents the duration since module startup and not time. 2023-03-06 22:28:47 +0100b773048aee7ebfb00b7ae7b45ef9f49e88ebc5a4Clock: Rename currentTimeNanos() -> currentNanos() as it represents the duration since module startup and not time.editsrc/java/com/jogamp/common/os/Clock.javaeditsrc/java/com/jogamp/common/util/PerfCounterCtrl.javaeditsrc/native/common/jau_sys_Clock.csrc/java/com/jogamp/common/os/Clock.javasrc/native/common/jau_sys_Clock.c1842451b0e49ac1899ed3ab3515021a6077aff921678147339000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comClock: Consider return code on failed native clock_gettime(..) call; Add Win32 clock_gettime() implementation. Consider return code on failed native clock_gettime(..) call - Return Instant.EPOCH for all Instant variations (essentially 0) - Return 0 for all 'long' variations (ms, ns) Add Win32 clock_gettime() implementation. - Source: https://github.com/Alexpux/mingw-w64/blob/master/mingw-w64-libraries/winpthreads/src/clock.c - Public Domain within mingw-w64, included here to simplify linkage. - Tested on Win10 64bit w/ TestTextRendererNEWT00, all values are OK 2023-03-07 01:02:19 +01001842451b0e49ac1899ed3ab3515021a6077aff92Clock: Consider return code on failed native clock_gettime(..) call; Add Win32 clock_gettime() implementation.editsrc/native/common/jau_sys_Clock.ceditsrc/java/com/jogamp/common/os/Clock.javasrc/java/com/jogamp/common/util/ReflectionUtil.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javasrc/java/com/jogamp/common/os/Platform.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.java6545ab42048dfda5f6cb72ce272a331078cd200e1678148190000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comClock: Use Clock.currentNanos() instead of System.nanoTime() 2023-03-07 01:16:30 +01006545ab42048dfda5f6cb72ce272a331078cd200eClock: Use Clock.currentNanos() instead of System.nanoTime()editsrc/java/com/jogamp/common/util/ReflectionUtil.javaeditsrc/junit/com/jogamp/common/util/LongIntHashMapTest.javaeditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javasrc/junit/com/jogamp/junit/util/MiscUtils.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/java/com/jogamp/common/util/JarUtil.java69d22df0a6132dbf8b88fd04090c0bc81129237f1683154095000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIOUtil.copyStream2{File|Stream)(..): Drop unused and misleading 'totalNumBytes' argument, since we have no user-feedback callback passed. 2023-05-04 00:48:15 +020069d22df0a6132dbf8b88fd04090c0bc81129237fIOUtil.copyStream2{File|Stream)(..): Drop unused and misleading 'totalNumBytes' argument, since we have no user-feedback callback passed.editsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/junit/com/jogamp/junit/util/MiscUtils.javaeditsrc/java/com/jogamp/common/util/JarUtil.javaeditsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/util/IOUtil.java6e67a7b54af82aa4e4ec28f50ff08a26f9d806271683154197000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIOUtil.copyStream2Byte{Array|Buffer}(..): API Doc: Clarify that the complete stream is copied. 2023-05-04 00:49:57 +02006e67a7b54af82aa4e4ec28f50ff08a26f9d80627IOUtil.copyStream2Byte{Array|Buffer}(..): API Doc: Clarify that the complete stream is copied.editsrc/java/com/jogamp/common/util/IOUtil.javasrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/java/com/jogamp/common/util/IOUtil.javab32e378ec80488c5ffbd0d9bb356217e6db0245f1683155093000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIOUtil.copyStreamChunk2ByteBuffer(..): Added new method to copy a chunk (segment) of the input stream (skipBytes, byteCount) This method is inspired by Bug 1280, <https://github.com/sgothel/joal/pull/16>, 'copy only needed bytes' for JOAL's com.jogamp.openal.util.WAVData.loadFromStream(..). This method is a revised version of the proposed IOHelpers.copyFromStream2ByteBuffer(..), see <https://github.com/OndrejSpanel/joal/commit/1616659e98904270af4faca25b770d0983609735> 2023-05-04 01:04:53 +0200b32e378ec80488c5ffbd0d9bb356217e6db0245fIOUtil.copyStreamChunk2ByteBuffer(..): Added new method to copy a chunk (segment) of the input stream (skipBytes, byteCount)editsrc/junit/com/jogamp/common/util/TestIOUtil01.javaeditsrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/make.gluegen.all.win64.batdoc/HowToBuild.html704cadb26e1b98e613a4faea94d9b8d7e308d1ea1683157810000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: Windows: We use MinGW64 w/ 'posix threads' instead of 'win32 threads', allowing C++ std::mutex etc to be used (openal-soft) 2023-05-04 01:50:10 +0200704cadb26e1b98e613a4faea94d9b8d7e308d1eaHowToBuild: Windows: We use MinGW64 w/ 'posix threads' instead of 'win32 threads', allowing C++ std::mutex etc to be used (openal-soft)editmake/scripts/make.gluegen.all.win64.bateditdoc/HowToBuild.htmldoc/HowToBuild.html69f72ff942f8c4dfb990a9d816a18867e220854b1683214116000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: MacOS: Detail cmake commandline installation and mention 7-Zip 2023-05-04 17:28:36 +020069f72ff942f8c4dfb990a9d816a18867e220854bHowToBuild: MacOS: Detail cmake commandline installation and mention 7-Zipeditdoc/HowToBuild.htmlmake/gluegen-cpptasks-base.xmlmake/scripts/make.macosx.jdk_lipo_libs.shdoc/HowToBuild.htmlc0027eb10c20e41bdcbb2aff3ecb00c5b6351f311683235183000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRoll back MacOS Min Version Requirement to 10.5 from 11.0 (macosx-version-min) MacOSX compiler configuration. 2023-05-04 Actively supported architectures are 'x86_64' and 'arm64'. XCode 14.2 on a MacOS 12.6.5 x86_64 (mac-mini) machine is capable to produce fat-lipo code for MacOS >= 10.5 for 'x86_64' and 'arm64'. The MacOS SDK 11.3 has been re-added from a previous XCode installation. However, alternative source is <https://github.com/phracker/MacOSX-SDKs>. Only for using C++ and hence the C++ STL, the minimum version is 10.7 due to clang++ libc++. This is currently the case for JOAL's bundled openal-soft, as well as for JOGL's optional oculusvr-sdk (disabled). 2023-05-04 23:19:43 +0200c0027eb10c20e41bdcbb2aff3ecb00c5b6351f31Roll back MacOS Min Version Requirement to 10.5 from 11.0 (macosx-version-min)editmake/scripts/make.macosx.jdk_lipo_libs.sheditdoc/HowToBuild.htmleditmake/gluegen-cpptasks-base.xmldoc/JogAmpMacOSVersions.mdmake/gluegen-cpptasks-base.xmldoc/HowToBuild.html3c2a0c1cfd66e0d812997db4836c69379e1e84761683387299000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMacOS: Using 'Minimum Deployment Target' 10.7 (Lion) and documenting MacOS versions Note that starting with Xcode 14.3, the upcoming 'Minimum Deployment Target' is 10.13 (High Sierra). However, we are still using Xcode 14.2 and hence 10.7 is still supported. Note that I upped the 'Minimum Deployment Target' (again) from 10.5 to 10.7 to align with JOAL/openal-soft, i.e. a guaranteed common denominator. You may still try to use 10.5. Note lowest tested MacOS version (from myself) is 10.13.6 w/ x86_64) (High Sierra). 2023-05-06 17:34:59 +02003c2a0c1cfd66e0d812997db4836c69379e1e8476MacOS: Using 'Minimum Deployment Target' 10.7 (Lion) and documenting MacOS versionsadddoc/JogAmpMacOSVersions.mdeditmake/gluegen-cpptasks-base.xmleditdoc/HowToBuild.htmldoc/JogAmpMacOSVersions.md3409fd54cc7d56a95864afe1c9f720a1457d13941683388987000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.md Fix markdown list 2023-05-06 18:03:07 +02003409fd54cc7d56a95864afe1c9f720a1457d1394doc/JogAmpMacOSVersions.md Fix markdown listeditdoc/JogAmpMacOSVersions.mddoc/JogAmpMacOSVersions.md573bc43f88554fbb9e600dbcd65f78eb259a70ef1683389888000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.md: Spaces (and 2nd attempt to fix the list depth in .. Build Setup .. 2023-05-06 18:18:08 +0200573bc43f88554fbb9e600dbcd65f78eb259a70efdoc/JogAmpMacOSVersions.md: Spaces (and 2nd attempt to fix the list depth in .. Build Setup ..editdoc/JogAmpMacOSVersions.mddoc/JogAmpMacOSVersions.md5c8bac04b9175c9f0987642f9b72d3384b01334b1683390108000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.md: 3rd times a charm (space and list depth) 2023-05-06 18:21:48 +02005c8bac04b9175c9f0987642f9b72d3384b01334bdoc/JogAmpMacOSVersions.md: 3rd times a charm (space and list depth)editdoc/JogAmpMacOSVersions.mddoc/JogAmpMacOSVersions.md803d7540429836227f9f496742a059717c1562501683390283000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.md 4th round (...) For some reason the pandoc -> html works well, but integration w/ cgit css requires - newline before the list - sometimes loses the list depth and makes it flat 2023-05-06 18:24:43 +0200803d7540429836227f9f496742a059717c156250doc/JogAmpMacOSVersions.md 4th round (...)editdoc/JogAmpMacOSVersions.mdgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel954https://jogamp.org/chuck/job/gluegen/label=android-arm64/954/954https://jogamp.org/chuck/job/gluegen/label=linux-arm32/954/954https://jogamp.org/chuck/job/gluegen/label=linux-arm64/954/954https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/954/954https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/954/954https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/954/Started by user Sven GothelsgothelSven Gothel9529dce06050a8a607b8c4ab83bd3aba8460d9ca5939dce06050a8a607b8c4ab83bd3aba8460d9ca593origin/master9dce06050a8a607b8c4ab83bd3aba8460d9ca5939dce06050a8a607b8c4ab83bd3aba8460d9ca593origin/master9dce06050a8a607b8c4ab83bd3aba8460d9ca5939dce06050a8a607b8c4ab83bd3aba8460d9ca593origin/mastergit://jogamp.org/srv/scm/gluegen.git00792testReportfalsev2.4.0304280460248gluegen v2.4.0952falsefalse952371SUCCESS1675274021575https://jogamp.org/chuck/job/gluegen/952/make/jogamp-env.xml9dce06050a8a607b8c4ab83bd3aba8460d9ca5931675273961000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Mark 2.4.0 as released. 2023-02-01 18:52:41 +01009dce06050a8a607b8c4ab83bd3aba8460d9ca593GlueGen: Mark 2.4.0 as released.editmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel952https://jogamp.org/chuck/job/gluegen/label=android-arm64/952/952https://jogamp.org/chuck/job/gluegen/label=linux-arm32/952/952https://jogamp.org/chuck/job/gluegen/label=linux-arm64/952/952https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/952/952https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/952/952https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/952/Started by user Sven GothelsgothelSven Gothel951042ff8177884b6af1543622c63c917886798b119042ff8177884b6af1543622c63c917886798b119origin/master042ff8177884b6af1543622c63c917886798b119042ff8177884b6af1543622c63c917886798b119origin/master042ff8177884b6af1543622c63c917886798b119042ff8177884b6af1543622c63c917886798b119origin/mastergit://jogamp.org/srv/scm/gluegen.git00792testReportfalse#951331415460248gluegen #951951falsefalse951237SUCCESS1674578841147https://jogamp.org/chuck/job/gluegen/951/git951https://jogamp.org/chuck/job/gluegen/label=android-arm64/951/951https://jogamp.org/chuck/job/gluegen/label=linux-arm32/951/951https://jogamp.org/chuck/job/gluegen/label=linux-arm64/951/951https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/951/951https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/951/951https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/951/Started by user Sven GothelsgothelSven Gothel950042ff8177884b6af1543622c63c917886798b119042ff8177884b6af1543622c63c917886798b119origin/master042ff8177884b6af1543622c63c917886798b119042ff8177884b6af1543622c63c917886798b119origin/master042ff8177884b6af1543622c63c917886798b119042ff8177884b6af1543622c63c917886798b119origin/mastergit://jogamp.org/srv/scm/gluegen.git00791testReportfalse#950284415460248gluegen #950950falsefalse950191SUCCESS1674502909843https://jogamp.org/chuck/job/gluegen/950/src/java/com/jogamp/common/os/NativeLibrary.java9fc572089e533a15c23a7b9d4a17119d5519f3c21674502340000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNativeLibrary.enumerateLibraryPaths(): Reduce relative/absolute path mapping to 'java.library.path', others are absolute 2023-01-23 20:32:20 +01009fc572089e533a15c23a7b9d4a17119d5519f3c2NativeLibrary.enumerateLibraryPaths(): Reduce relative/absolute path mapping to 'java.library.path', others are absoluteeditsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.java042ff8177884b6af1543622c63c917886798b1191674502370000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMappedByteBufferInputStream: Reduce dependency to Platform 2023-01-23 20:32:50 +0100042ff8177884b6af1543622c63c917886798b119MappedByteBufferInputStream: Reduce dependency to Platformeditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel950https://jogamp.org/chuck/job/gluegen/label=android-arm64/950/950https://jogamp.org/chuck/job/gluegen/label=linux-arm64/950/950https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/950/950https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/950/950https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/950/Started by user Sven GothelsgothelSven Gothel949e6cab620406492567e2194a3fac90ca76950272de6cab620406492567e2194a3fac90ca76950272dorigin/mastere6cab620406492567e2194a3fac90ca76950272de6cab620406492567e2194a3fac90ca76950272dorigin/mastere6cab620406492567e2194a3fac90ca76950272de6cab620406492567e2194a3fac90ca76950272dorigin/mastergit://jogamp.org/srv/scm/gluegen.git00791testReportfalse#949328631460248gluegen #949949falsefalse949125SUCCESS1674466864814https://jogamp.org/chuck/job/gluegen/949/src/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/java/com/jogamp/common/util/awt/AWTEDTExecutor.javaf5ea3aa0429d6efd3616a605e5df78530aba3e251674451735000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFormatting: BindingJNILibLoader, AWTEDTExecutor 2023-01-23 06:28:55 +0100f5ea3aa0429d6efd3616a605e5df78530aba3e25Formatting: BindingJNILibLoader, AWTEDTExecutoreditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javaeditsrc/java/com/jogamp/common/util/awt/AWTEDTExecutor.javamake/lib/cpptasks.jarmake/lib/cpptasks-version.txt594a960cd72a5859429967e3f23fa7aaac1f712c1674465026000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump cpptasks.jar, commit 19c854265956942497dc89444a9ee84f18383671 (Support native windows dll-names) Add support for Windows dynamic library target, i.e. NAME.dll instead of libNAME.dll. This is now required when linking a GLUENAME1.dll to TOOLNAME1.dll, where GLUENAME1.dll is loaded via System.loadLibrary() and TOOLNAME1.dll required to be found. Might be a change in the current ming64 toolchain. Before this change, the library name 'libTOOLNAME1.so' was written into `libGLUENAME1.so` and hence could not be found (manually renamed to a dll name). Now we can also drop the manual rename of libNAME1.so -> NAME1.dll, finally :) 2023-01-23 10:10:26 +0100594a960cd72a5859429967e3f23fa7aaac1f712cBump cpptasks.jar, commit 19c854265956942497dc89444a9ee84f18383671 (Support native windows dll-names)editmake/lib/cpptasks.jareditmake/lib/cpptasks-version.txtmake/gluegen-cpptasks-base.xmlmake/build.xmlmake/build-test.xmla9f1ccf10e42076d88813d369cfbc3e2054694281674465105000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRemove Windows dll-rename, adopting to cpptasks.jar change 2023-01-23 10:11:45 +0100a9f1ccf10e42076d88813d369cfbc3e205469428Remove Windows dll-rename, adopting to cpptasks.jar changeeditmake/build.xmleditmake/gluegen-cpptasks-base.xmleditmake/build-test.xmlmake/scripts/runtest.shmake/scripts/runtest-x64.batmake/scripts/java-win64.batba93184177af82276c3353ed9759dab8ba0421d71674465367000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWindows java-win64.bat launch script: Set LIB_DIR to absolute path as required by System.load*() 2023-01-23 10:16:07 +0100ba93184177af82276c3353ed9759dab8ba0421d7Windows java-win64.bat launch script: Set LIB_DIR to absolute path as required by System.load*()editmake/scripts/runtest.sheditmake/scripts/java-win64.bateditmake/scripts/runtest-x64.batsrc/java/com/jogamp/common/os/NativeLibrary.java7e869ec5dde4409bbd3b16253d7c9ad9f3a2d3e71674465474000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNativeLibrary: Add getSystemEnvLibraryPaths(), i.e. LD_LIBRARY_PATH, PATH, .. content 2023-01-23 10:17:54 +01007e869ec5dde4409bbd3b16253d7c9ad9f3a2d3e7NativeLibrary: Add getSystemEnvLibraryPaths(), i.e. LD_LIBRARY_PATH, PATH, .. contenteditsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/os/NativeLibrary.java55e0d96bddd01042fb0955d7a3864ac7879b612f1674465665000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNativeLibrary.enumerateLibraryPaths(): Using addPaths() ensures given 'path' is being resolved as absolute-canonical as required for System.load*() Further, detailed DEBUG messages are added on -Djogamp.debug.NativeLibrary 2023-01-23 10:21:05 +010055e0d96bddd01042fb0955d7a3864ac7879b612fNativeLibrary.enumerateLibraryPaths(): Using addPaths() ensures given 'path' is being resolved as absolute-canonical as required for System.load*()editsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javae6cab620406492567e2194a3fac90ca76950272d1674465795000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJNILibLoaderBase.loadLibraryInternal(): Produce own detailed exception if lib couldn't be loaded (avoid showing misleading orig exception) .. and detail some debug output. Both, own exception and debug output expose NativeLibrary.getSystemEnvLibraryPaths() 2023-01-23 10:23:15 +0100e6cab620406492567e2194a3fac90ca76950272dJNILibLoaderBase.loadLibraryInternal(): Produce own detailed exception if lib couldn't be loaded (avoid showing misleading orig exception)editsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel949https://jogamp.org/chuck/job/gluegen/label=android-arm64/949/949https://jogamp.org/chuck/job/gluegen/label=linux-arm64/949/949https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/949/949https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/949/949https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/949/Started by an SCM changeStarted by user Sven GothelsgothelSven Gothel9483987a767d0edeaf74a23ea5d4d9c4793f4c3c8c13987a767d0edeaf74a23ea5d4d9c4793f4c3c8c1origin/master3987a767d0edeaf74a23ea5d4d9c4793f4c3c8c13987a767d0edeaf74a23ea5d4d9c4793f4c3c8c1origin/master3987a767d0edeaf74a23ea5d4d9c4793f4c3c8c13987a767d0edeaf74a23ea5d4d9c4793f4c3c8c1origin/mastergit://jogamp.org/srv/scm/gluegen.git10781testReportfalse#948282328460248gluegen #948948falsefalse94856UNSTABLE1674264524087https://jogamp.org/chuck/job/gluegen/948/make/gluegen-cpptasks-base.xmldoc/HowToBuild.htmlmake/jogamp-env.xmlsrc/java/jogamp/common/os/PlatformPropsImpl.java2fc456b93588f9a6973403cb27409bbf54ecbef41673714504000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMacOS: Add fat universal build w/ x86_64 + aarch64; Bump min SDK version >= 11.0 2023-01-14 17:41:44 +01002fc456b93588f9a6973403cb27409bbf54ecbef4MacOS: Add fat universal build w/ x86_64 + aarch64; Bump min SDK version >= 11.0editmake/jogamp-env.xmleditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditmake/gluegen-cpptasks-base.xmleditdoc/HowToBuild.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hf41dbbef593d037b45517665f3eb7940f8c0b1c51673714533000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix unit test1.h 2023-01-14 17:42:13 +0100f41dbbef593d037b45517665f3eb7940f8c0b1c5Fix unit test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h.classpathef21430be4da6f4fe95e99e2dd492074776e55f61673714567000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse: Use JDK 1.8.0 JRE container to avoid Java 11 modules 2023-01-14 17:42:47 +0100ef21430be4da6f4fe95e99e2dd492074776e55f6Eclipse: Use JDK 1.8.0 JRE container to avoid Java 11 modulesedit.classpathmake/scripts/make.macosx.jdk_lipo_libs.shdoc/HowToBuild.html03666ee78db829a00a120a1a60464615f1b0e8d51673716421000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMacOS: Add description to produce fat OpenJDK libraries for x86_64 and aarch64 2023-01-14 18:13:41 +010003666ee78db829a00a120a1a60464615f1b0e8d5MacOS: Add description to produce fat OpenJDK libraries for x86_64 and aarch64addmake/scripts/make.macosx.jdk_lipo_libs.sheditdoc/HowToBuild.html.settings/org.eclipse.jdt.ui.prefs.settings/org.eclipse.jdt.core.prefsad7a72a72ec14d453554a3380985f18ce31195f11673716453000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse: Add jdt settings 2023-01-14 18:14:13 +0100ad7a72a72ec14d453554a3380985f18ce31195f1Eclipse: Add jdt settingsadd.settings/org.eclipse.jdt.ui.prefsadd.settings/org.eclipse.jdt.core.prefs.classpath8edb09f4851a713b0e9817b4d2f081e0de86eaf31673724980000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse: Update settings 2023-01-14 20:36:20 +01008edb09f4851a713b0e9817b4d2f081e0de86eaf3Eclipse: Update settingsedit.classpathsrc/java/com/jogamp/common/util/SecurityUtil.javasrc/java/com/jogamp/common/util/IntIntHashMap.javasrc/java/com/jogamp/common/nio/Buffers.javasrc/java/com/jogamp/common/net/GenericURLStreamHandlerFactory.javasrc/java/jogamp/common/Debug.javasrc/java/jogamp/common/os/PlatformPropsImpl.javasrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.javasrc/java/com/jogamp/common/os/Platform.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/util/PropertyAccess.javasrc/java/com/jogamp/common/util/UnsafeUtil.java1396c3ca6fc675dcf4bdea708c8a8c89d481e3b81673728169000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comReplace AccessController.doPrivileged() w/ SecurityUtil.doPrivileged() 2023-01-14 21:29:29 +01001396c3ca6fc675dcf4bdea708c8a8c89d481e3b8Replace AccessController.doPrivileged() w/ SecurityUtil.doPrivileged()editsrc/java/com/jogamp/common/util/PropertyAccess.javaeditsrc/java/com/jogamp/common/util/SecurityUtil.javaeditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/com/jogamp/common/util/UnsafeUtil.javaeditsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.javaeditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/java/com/jogamp/common/util/IntIntHashMap.javaeditsrc/java/com/jogamp/common/net/GenericURLStreamHandlerFactory.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javaeditsrc/java/jogamp/common/Debug.javaeditsrc/java/com/jogamp/common/nio/Buffers.javamake/build.xml853361a9fecdf1def9e7c25c8917207ca3e70a3b1673748529000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.combuild.xml: Always set source w/ target version, avoid build WARNING 2023-01-15 03:08:49 +0100853361a9fecdf1def9e7c25c8917207ca3e70a3bbuild.xml: Always set source w/ target version, avoid build WARNINGeditmake/build.xmlsrc/java/com/jogamp/common/util/VersionUtil.javamake/scripts/setenv-build-jogamp-x86.shmake/scripts/setenv-build-jogamp-x86_64.shmake/scripts/make.gluegen.all.linux-x86_64.shmake/jogamp-env.xmlsrc/java/jogamp/common/os/PlatformPropsImpl.java32c3fbccac055b3fc878f53dfb385d00d6789c7d1673748810000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDefault build is JDK-17, prepare up to Java-21 (next LTS); PlatformPropsImpl: Remove static OSXVersion and Version* vars, add JAVA_17 and JAVA_21 flag. PlatformPropsImpl's static OSXVersion is JOGL specific and will be moved into its GLContextImpl. PlatformPropsImpl's static Version are not required and eats up memory where it can be used transitionary. 2023-01-15 03:13:30 +010032c3fbccac055b3fc878f53dfb385d00d6789c7dDefault build is JDK-17, prepare up to Java-21 (next LTS); PlatformPropsImpl: Remove static OSXVersion and Version* vars, add JAVA_17 and JAVA_21 flag.editsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/com/jogamp/common/util/VersionUtil.javaeditmake/jogamp-env.xmleditmake/scripts/setenv-build-jogamp-x86.sheditmake/scripts/setenv-build-jogamp-x86_64.sheditmake/scripts/make.gluegen.all.linux-x86_64.shsrc/java/com/jogamp/common/util/SecurityUtil.javac965bcf2b8cce8f81e2abc64b8960b653ddf5c001673748869000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSecurityUtil: Skip System's SecurityManager action for getSecurityManager() and doPrivileged() for Java17+ 2023-01-15 03:14:29 +0100c965bcf2b8cce8f81e2abc64b8960b653ddf5c00SecurityUtil: Skip System's SecurityManager action for getSecurityManager() and doPrivileged() for Java17+editsrc/java/com/jogamp/common/util/SecurityUtil.javasrc/junit/com/jogamp/common/util/TestIteratorIndexCORE.java3818ed8cd00af3b145d9c95ca2287dc0a2d579571673748893000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestIteratorIndexCORE: Fix template usage 2023-01-15 03:14:53 +01003818ed8cd00af3b145d9c95ca2287dc0a2d57957TestIteratorIndexCORE: Fix template usageeditsrc/junit/com/jogamp/common/util/TestIteratorIndexCORE.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.java1ff1f894b3edc4c241b580a38e8f1439ad2c531e1673748975000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestRecursiveLock01, TestRecursiveThreadGroupLock01: 'yield()' -> 'yield_thread()' to avoid potential Java>17 collision (JEP 361) 2023-01-15 03:16:15 +01001ff1f894b3edc4c241b580a38e8f1439ad2c531eTestRecursiveLock01, TestRecursiveThreadGroupLock01: 'yield()' -> 'yield_thread()' to avoid potential Java>17 collision (JEP 361)editsrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h0ee82236f503008d8421804760eda4750ee77d3a1673749000000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h: Fix warnings re 'const' qualifier 2023-01-15 03:16:40 +01000ee82236f503008d8421804760eda4750ee77d3asrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h: Fix warnings re 'const' qualifiereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hmake/scripts/make.gluegen.all.win64.batmake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.ios.arm64.sh.gitignoremake/scripts/make.gluegen.all.win32.batmake/scripts/make.gluegen.all.macosx.shaf39597583ec0c9783e343cb5f3defdd2c2119711673752098000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuild scripts: MacOS + Windows: Use JDK-17 to build our Java-1.8 API 2023-01-15 04:08:18 +0100af39597583ec0c9783e343cb5f3defdd2c211971Build scripts: MacOS + Windows: Use JDK-17 to build our Java-1.8 APIeditmake/scripts/make.gluegen.all.win32.bateditmake/scripts/make.gluegen.all.ios.arm64.shedit.gitignoreeditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/make.gluegen.all.ios.amd64.sheditmake/scripts/make.gluegen.all.macosx.shdoc/HowToBuild.htmlac87bf4604aee7654b4954473f6cc498785de7711673754523000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: adoptopenjdk -> adoptium, openjdk-11 -> openjdk-17 2023-01-15 04:48:43 +0100ac87bf4604aee7654b4954473f6cc498785de771HowToBuild: adoptopenjdk -> adoptium, openjdk-11 -> openjdk-17editdoc/HowToBuild.htmlmake/jogamp-env.xml4b90062c9452379ab6cea5ac23976a9f112798ed1673986690000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuild: jogamp-env: Set minJava{8,9,11,17,21}, allowing detailed JVM attributes and reuse it. 2023-01-17 21:18:10 +01004b90062c9452379ab6cea5ac23976a9f112798edBuild: jogamp-env: Set minJava{8,9,11,17,21}, allowing detailed JVM attributes and reuse it.editmake/jogamp-env.xmlmake/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/runtest-x32.batmake/scripts/make.gluegen.all.win32.batmake/scripts/java-win32.batmake/scripts/test-win32-smb_share.batce34e9e03775908ae88c6aea73f758fca28f501d1673986746000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate Windows build/test scripts, remove 32-bit windows scripts 2023-01-17 21:19:06 +0100ce34e9e03775908ae88c6aea73f758fca28f501dUpdate Windows build/test scripts, remove 32-bit windows scriptseditmake/scripts/make.gluegen.all.win64.batdeletemake/scripts/java-win32.batdeletemake/scripts/runtest-x32.batdeletemake/scripts/test-win32-smb_share.batdeletemake/scripts/make.gluegen.all.win32.bateditmake/scripts/java-win64.batdoc/HowToBuild.htmld549076e2d4f01f4c21500bce2784aa912d91b611673986808000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: Remove Windows 32bit; Update Window 64bit toolchain, fix MacOS cmake version 2023-01-17 21:20:08 +0100d549076e2d4f01f4c21500bce2784aa912d91b61HowToBuild: Remove Windows 32bit; Update Window 64bit toolchain, fix MacOS cmake versioneditdoc/HowToBuild.htmldoc/HowToBuild.html5b6b1f8ce6b6be0d5da02eaa7048325fd63535681673994368000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: Update Debian >= 11 2023-01-17 23:26:08 +01005b6b1f8ce6b6be0d5da02eaa7048325fd6353568HowToBuild: Update Debian >= 11editdoc/HowToBuild.htmlmake/jogamp-androidtasks.xmle943520e7f327294e2002246fe229f692877c0341674184253000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comandroid aapt: add includeAntRuntime="false" (warning off) 2023-01-20 04:10:53 +0100e943520e7f327294e2002246fe229f692877c034android aapt: add includeAntRuntime="false" (warning off)editmake/jogamp-androidtasks.xmlmake/scripts/check-java-major-version.sh0ee21c35bff99abd2e7d34184003d9cf1ef808311674184273000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comcheck-java-major-version: Add proper alt version 2023-01-20 04:11:13 +01000ee21c35bff99abd2e7d34184003d9cf1ef80831check-java-major-version: Add proper alt versioneditmake/scripts/check-java-major-version.shmake/jogamp-env.xmlmake/jogamp-androidtasks.xml6a215f61d7aa882f4f02b031b015a678525c86421674188805000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjogamp-androidtasks: Drop fixed 'android.api.level.min', 'use android.api.level' (default: level 24 or 'N') 2023-01-20 05:26:45 +01006a215f61d7aa882f4f02b031b015a678525c8642jogamp-androidtasks: Drop fixed 'android.api.level.min', 'use android.api.level' (default: level 24 or 'N')editmake/jogamp-env.xmleditmake/jogamp-androidtasks.xmlmake/jogamp-androidtasks.xml3987a767d0edeaf74a23ea5d4d9c4793f4c3c8c11674188902000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjogamp-androidtasks: Update key and sign parameter: sigalg 'SHA256withRSA', keyalg 'RSA', keysize '2048', validity '365', digestalg 'SHA256' 2023-01-20 05:28:22 +01003987a767d0edeaf74a23ea5d4d9c4793f4c3c8c1jogamp-androidtasks: Update key and sign parameter: sigalg 'SHA256withRSA', keyalg 'RSA', keysize '2048', validity '365', digestalg 'SHA256'editmake/jogamp-androidtasks.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel948https://jogamp.org/chuck/job/gluegen/label=android-arm64/948/948https://jogamp.org/chuck/job/gluegen/label=linux-arm64/948/948https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/948/948https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/948/948https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/948/Started by user Sven GothelsgothelSven Gothel9380b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git20788testReportfalse#938653208460248gluegen #938938falsefalse9381UNSTABLE1610399491388https://jogamp.org/chuck/job/gluegen/938/iOSArm64-jogamp-aarch64-sgothel-021githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel938https://jogamp.org/chuck/job/gluegen/label=android-arm64/938/938https://jogamp.org/chuck/job/gluegen/label=linux-arm64/938/938https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/938/938https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/938/938https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/938/Started by user Sven GothelsgothelSven Gothel9370b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git10788testReportfalse#937632758460248gluegen #937937falsefalse937191UNSTABLE1583525142767https://jogamp.org/chuck/job/gluegen/937/iOSArm64-jogamp-aarch64-sgothel-021githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel937https://jogamp.org/chuck/job/gluegen/label=android-arm64/937/937https://jogamp.org/chuck/job/gluegen/label=linux-arm64/937/937https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/937/937https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/937/937https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/937/Started by user Sven GothelsgothelSven Gothel9360b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git10788testReportfalse#936486497460248gluegen #936936falsefalse936118UNSTABLE1580669463223https://jogamp.org/chuck/job/gluegen/936/iOSArm64-jogamp-aarch64-sgothel-021githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel936https://jogamp.org/chuck/job/gluegen/label=android-arm64/936/936https://jogamp.org/chuck/job/gluegen/label=linux-arm64/936/936https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/936/936https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/936/936https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/936/Started by user Sven GothelsgothelSven Gothel9340b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git10788testReportfalse#9341353556460248gluegen #934934falsefalse93427UNSTABLE1580622844802https://jogamp.org/chuck/job/gluegen/934/githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel934https://jogamp.org/chuck/job/gluegen/label=android-arm64/934/934https://jogamp.org/chuck/job/gluegen/label=linux-arm64/934/934https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/934/934https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/934/934https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/934/Started by user Sven GothelsgothelSven Gothel9310b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git10788testReportfalse#931446943460248gluegen #931931falsefalse931775UNSTABLE1578921241540https://jogamp.org/chuck/job/gluegen/931/githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel931https://jogamp.org/chuck/job/gluegen/label=android-arm64/931/931https://jogamp.org/chuck/job/gluegen/label=linux-arm64/931/931https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/931/931https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/931/931https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/931/Started by user Sven GothelsgothelSven Gothel9300b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git10788testReportfalse#930440620460248gluegen #930930falsefalse930576UNSTABLE1578170950631https://jogamp.org/chuck/job/gluegen/930/githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel930https://jogamp.org/chuck/job/gluegen/label=android-arm64/930/930https://jogamp.org/chuck/job/gluegen/label=linux-arm64/930/930https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/930/930https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/930/930https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/930/Started by user Sven GothelsgothelSven Gothel9290b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/master0b441cfc14947b1c8cabdc87705ae95a0afec4d90b441cfc14947b1c8cabdc87705ae95a0afec4d9origin/mastergit://jogamp.org/srv/scm/gluegen.git10788testReportfalse#929515967460248gluegen #929929falsefalse929482UNSTABLE1578166134331https://jogamp.org/chuck/job/gluegen/929/make/gluegen-cpptasks-base.xmlmake/build.xml5a59c20f9bd9be5c20b176720810dd5a95a75d871577977450000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comnative.tag.jar: include *.symbols 2020-01-02 16:04:10 +01005a59c20f9bd9be5c20b176720810dd5a95a75d87native.tag.jar: include *.symbolseditmake/gluegen-cpptasks-base.xmleditmake/build.xmlmake/gluegen-cpptasks-base.xmlmake/build.xml26024b4b205d34563c641578dc1d2791cb1a03d91578159993000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comnative.tag.jar: Revert explicit inclusion of *.symbols file -> implicit inclusion/exclusion based on build.dynamiclibs Exclude *.symbols files implicitly when building 'build.dynamiclibs' and include *.symbols files implicitly when not building 'build.dynamiclibs' (static libs) 2020-01-04 18:46:33 +010026024b4b205d34563c641578dc1d2791cb1a03d9native.tag.jar: Revert explicit inclusion of *.symbols file -> implicit inclusion/exclusion based on build.dynamiclibseditmake/build.xmleditmake/gluegen-cpptasks-base.xmlmake/scripts/make.gluegen.all.win64.batmake/scripts/make.gluegen.all.win32.bat0b441cfc14947b1c8cabdc87705ae95a0afec4d91578163537000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comfix windows build scripts 2020-01-04 19:45:37 +01000b441cfc14947b1c8cabdc87705ae95a0afec4d9fix windows build scriptseditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/make.gluegen.all.win32.batgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel929https://jogamp.org/chuck/job/gluegen/label=android-arm64/929/929https://jogamp.org/chuck/job/gluegen/label=linux-arm64/929/929https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/929/929https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/929/929https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/929/Started by user Sven GothelsgothelSven Gothel92818c8834bdc8c1c00f6911143927c496d2218fa4218c8834bdc8c1c00f6911143927c496d2218fa42origin/master18c8834bdc8c1c00f6911143927c496d2218fa4218c8834bdc8c1c00f6911143927c496d2218fa42origin/master18c8834bdc8c1c00f6911143927c496d2218fa4218c8834bdc8c1c00f6911143927c496d2218fa42origin/mastergit://jogamp.org/srv/scm/gluegen.git20786testReportfalse#928437601460248gluegen #928928falsefalse928379UNSTABLE1577953014184https://jogamp.org/chuck/job/gluegen/928/make/doc/javadoc/resources/glass.pngmake/doc/javadoc/stylesheet.cssmake/doc/javadoc/resources/x.png509389b399c0f49cf073beb737c64acadafeb7731577950832000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comOpenJDK 11 javadoc stylesheet and resources 2020-01-02 08:40:32 +0100509389b399c0f49cf073beb737c64acadafeb773OpenJDK 11 javadoc stylesheet and resourceseditmake/doc/javadoc/stylesheet.cssaddmake/doc/javadoc/resources/x.pngaddmake/doc/javadoc/resources/glass.pngmake/doc/javadoc/stylesheet.cssaad3bc50ee2b6ada76fbd97b32f88951f75710841577951035000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjavadoc stylesheet: Apply JogAmp Style .. 2020-01-02 08:43:55 +0100aad3bc50ee2b6ada76fbd97b32f88951f7571084javadoc stylesheet: Apply JogAmp Style ..editmake/doc/javadoc/stylesheet.cssmake/build.xml18c8834bdc8c1c00f6911143927c496d2218fa421577951943000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjavadoc: enable frames 2020-01-02 08:59:03 +010018c8834bdc8c1c00f6911143927c496d2218fa42javadoc: enable frameseditmake/build.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel928https://jogamp.org/chuck/job/gluegen/label=android-arm64/928/928https://jogamp.org/chuck/job/gluegen/label=linux-arm64/928/928https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/928/928https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/928/928https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/928/Started by user Sven GothelsgothelSven Gothel92751e73653a35bd041384f201090b49ff601e4a5e751e73653a35bd041384f201090b49ff601e4a5e7origin/master51e73653a35bd041384f201090b49ff601e4a5e751e73653a35bd041384f201090b49ff601e4a5e7origin/master51e73653a35bd041384f201090b49ff601e4a5e751e73653a35bd041384f201090b49ff601e4a5e7origin/mastergit://jogamp.org/srv/scm/gluegen.git20786testReportfalse#927434507460248gluegen #927927falsefalse927292UNSTABLE1577940532748https://jogamp.org/chuck/job/gluegen/927/make/scripts/make.gluegen.all.sh09f274ac5330f3b5b1e7c2e848765488033f10501577899166000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comupdate make-all script 2020-01-01 18:19:26 +010009f274ac5330f3b5b1e7c2e848765488033f1050update make-all scripteditmake/scripts/make.gluegen.all.shmake/lib/gluegen-cpptasks-ios-amd64.xmlmake/lib/gluegen-cpptasks-ios-aarch64.xml4de730cae5245d593275bcac02c3e67708d78c011577918246000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comadd optional make/lib/gluegen/cpptasks* for iOS aarch64 and amd64 2020-01-01 23:37:26 +01004de730cae5245d593275bcac02c3e67708d78c01add optional make/lib/gluegen/cpptasks* for iOS aarch64 and amd64addmake/lib/gluegen-cpptasks-ios-aarch64.xmladdmake/lib/gluegen-cpptasks-ios-amd64.xmlmake/lib/gluegen-cpptasks-linux-aarch64-ontarget.xmlmake/lib/gluegen-cpptasks-linux-aarch64.xmlmake/lib/gluegen-cpptasks-android-aarch64.xml7856ab9d24e21346b0e3e403d04aca3070ab16d21577918310000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.commake/lib/gluegen-cpptasks* set 'is64Bit' where appropriate (no impact, but added for correctness) 2020-01-01 23:38:30 +01007856ab9d24e21346b0e3e403d04aca3070ab16d2make/lib/gluegen-cpptasks* set 'is64Bit' where appropriate (no impact, but added for correctness)editmake/lib/gluegen-cpptasks-linux-aarch64.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-linux-aarch64-ontarget.xmlmake/jogamp-fat.mf833c17c651e72e9e2cd67d8ac1e2e1fe3f811d491577918995000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjogamp-fat.jar Main-Class VersionApplet -> GLWindow As we can no more rely on having AWT headful system, use JOGL/NEWT GLWindow to simply dump the version. Hence 'java -jar jogamp-fat.jar' behaves similar to 'etc/test.sh'. 2020-01-01 23:49:55 +0100833c17c651e72e9e2cd67d8ac1e2e1fe3f811d49jogamp-fat.jar Main-Class VersionApplet -> GLWindoweditmake/jogamp-fat.mfmake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.ios.arm64.shb2f4b2a4b09cf42d0a1da30b8072a0d50e7ac91a1577921214000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump iOS 12.2 -> 13.2 2020-01-02 00:26:54 +0100b2f4b2a4b09cf42d0a1da30b8072a0d50e7ac91aBump iOS 12.2 -> 13.2editmake/scripts/make.gluegen.all.ios.arm64.sheditmake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.ios.arm64.sh7a3dbb77bde1296f9d4d370dde1c5b7d360a34e91577921374000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comiOS scripts: Use GLUEGEN_CPPTASKS_FILE instead of -DisIOS*=true 2020-01-02 00:29:34 +01007a3dbb77bde1296f9d4d370dde1c5b7d360a34e9iOS scripts: Use GLUEGEN_CPPTASKS_FILE instead of -DisIOS*=trueeditmake/scripts/make.gluegen.all.ios.amd64.sheditmake/scripts/make.gluegen.all.ios.arm64.shmake/scripts/make.gluegen.all-host-macos.shmake/scripts/make.gluegen.all.shmake/scripts/make.gluegen.all-host-linux.sha4eb7f17f871ded72163c649be403ccad38a66691577922332000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comall build scripts: make.gluegen.all-host-macos.sh make.gluegen.all-host-linux.sh 2020-01-02 00:45:32 +0100a4eb7f17f871ded72163c649be403ccad38a6669all build scripts: make.gluegen.all-host-macos.sh make.gluegen.all-host-linux.shaddmake/scripts/make.gluegen.all-host-macos.shdeletemake/scripts/make.gluegen.all.shaddmake/scripts/make.gluegen.all-host-linux.shmake/lib/gluegen-cpptasks-ios-amd64.xmlmake/build.xmlmake/lib/gluegen-cpptasks-ios-aarch64.xml51e73653a35bd041384f201090b49ff601e4a5e71577940290000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHandle special junit treatment via make/lib/gluegen-cpptasks* (i.e. iOS) Otherwise the build won't produce dummy junit test results for jenkins etc. 2020-01-02 05:44:50 +010051e73653a35bd041384f201090b49ff601e4a5e7Handle special junit treatment via make/lib/gluegen-cpptasks* (i.e. iOS)editmake/build.xmleditmake/lib/gluegen-cpptasks-ios-aarch64.xmleditmake/lib/gluegen-cpptasks-ios-amd64.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel927https://jogamp.org/chuck/job/gluegen/label=android-arm64/927/927https://jogamp.org/chuck/job/gluegen/label=linux-arm64/927/927https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/927/927https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/927/927https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/927/Started by user Sven GothelsgothelSven Gothel922e3bc8ce349944d531c0b314ddb3f7a8946ce2a86e3bc8ce349944d531c0b314ddb3f7a8946ce2a86origin/mastere3bc8ce349944d531c0b314ddb3f7a8946ce2a86e3bc8ce349944d531c0b314ddb3f7a8946ce2a86origin/mastere3bc8ce349944d531c0b314ddb3f7a8946ce2a86e3bc8ce349944d531c0b314ddb3f7a8946ce2a86origin/mastergit://jogamp.org/srv/scm/gluegen.git20783testReportfalse#922440470460248gluegen #922922falsefalse922181UNSTABLE1577855904484https://jogamp.org/chuck/job/gluegen/922/githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel922https://jogamp.org/chuck/job/gluegen/label=android-arm64/922/922https://jogamp.org/chuck/job/gluegen/label=linux-arm64/922/922https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/922/922https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/922/922https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/922/Started by user Sven GothelsgothelSven Gothel921e3bc8ce349944d531c0b314ddb3f7a8946ce2a86e3bc8ce349944d531c0b314ddb3f7a8946ce2a86origin/mastere3bc8ce349944d531c0b314ddb3f7a8946ce2a86e3bc8ce349944d531c0b314ddb3f7a8946ce2a86origin/mastere3bc8ce349944d531c0b314ddb3f7a8946ce2a86e3bc8ce349944d531c0b314ddb3f7a8946ce2a86origin/mastergit://jogamp.org/srv/scm/gluegen.git10783testReportfalse#921546077460248gluegen #921921falsefalse92192UNSTABLE1577819960402https://jogamp.org/chuck/job/gluegen/921/www/index.htmlbfe55de5d06eb8dc0b07f720c235b86e547964c31557140652000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate CSS; Add responsive viewport design tag 2019-05-06 13:04:12 +0200bfe55de5d06eb8dc0b07f720c235b86e547964c3Update CSS; Add responsive viewport design tageditwww/index.htmldoc/HowToBuild.htmldoc/manual/index.html2a8c4d1cfa45794bc27358f3379f8c5bece745371557141092000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate CSS; Add responsive viewport design tag 2019-05-06 13:11:32 +02002a8c4d1cfa45794bc27358f3379f8c5bece74537Update CSS; Add responsive viewport design tageditdoc/HowToBuild.htmleditdoc/manual/index.htmlmake/lib/android-sdk/21/android-java-src.zipmake/lib/android-sdk/21/android.jarmake/lib/android-sdk/9/android-java-src.zipmake/lib/android-sdk/15/android-java-src.txtmake/lib/android-sdk/9/NOTICE.txtmake/lib/android-sdk/24/android-java-src.txtmake/lib/android-sdk/21/LICENSE.txtmake/lib/android-sdk/24/NOTICE.txtmake/lib/android-sdk/9/LICENSE.txtmake/build.xmlmake/scripts/make.gluegen.all.linux-x86_64.shmake/lib/android-sdk/15/NOTICE.txtmake/lib/android-sdk/15/android.jarmake/jogamp-env.xmlmake/lib/android-sdk/15/android-java-src.zipmake/lib/android-sdk/21/android-java-src.txtmake/lib/android-sdk/9/android-java-src.txtmake/lib/android-sdk/24/android-java-src.zipmake/lib/android-sdk/24/LICENSE.txtmake/gluegen-cpptasks-base.xmlmake/lib/android-sdk/24/android.jarmake/lib/android-sdk/21/NOTICE.txtmake/lib/android-sdk/9/android.jarmake/lib/android-sdk/15/LICENSE.txt5f9c1435ab06c7b620befa8677fc23080dac0ce21560404578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Initial Host/Target Compiler Selection: Java8 Current requirements are: - Java 1.8 (Level 8.0) - Android SDK API level 24 (Version 7.0 Nougat, released August 2016) Official production builds are performed w/ Java 1.8. - Java 1.8 (Level 8.0) - Android SDK API level 24 (Version 7.0 Nougat, released August 2016) Android 7 API level 24 supports Java 1.8, see https://developer.android.com/studio/write/java8-support Java 8 is chosen today, June 2019, since OpenJDK 1.8 is well supported on desktop, mobile support is given w/ OpenJDK 9 and Android also support these language features for almost 3 years. ++++ Current patch does require one to set the target.sourcelevel, target.targetlevel and target.rt.jar properties or their equivalent capital case environment variables. Only allowed value is currently 1.8. 2019-06-13 07:42:58 +02005f9c1435ab06c7b620befa8677fc23080dac0ce2Bug 1363: Java 11: Initial Host/Target Compiler Selection: Java8addmake/lib/android-sdk/24/NOTICE.txtdeletemake/lib/android-sdk/21/android-java-src.zipeditmake/gluegen-cpptasks-base.xmldeletemake/lib/android-sdk/15/NOTICE.txtaddmake/lib/android-sdk/24/android-java-src.txteditmake/jogamp-env.xmladdmake/lib/android-sdk/24/LICENSE.txtdeletemake/lib/android-sdk/9/android-java-src.zipdeletemake/lib/android-sdk/9/android.jardeletemake/lib/android-sdk/15/android.jardeletemake/lib/android-sdk/21/NOTICE.txtdeletemake/lib/android-sdk/21/android.jardeletemake/lib/android-sdk/15/android-java-src.txteditmake/scripts/make.gluegen.all.linux-x86_64.shdeletemake/lib/android-sdk/15/LICENSE.txtdeletemake/lib/android-sdk/9/android-java-src.txtdeletemake/lib/android-sdk/21/LICENSE.txtaddmake/lib/android-sdk/24/android.jardeletemake/lib/android-sdk/9/LICENSE.txteditmake/build.xmladdmake/lib/android-sdk/24/android-java-src.zipdeletemake/lib/android-sdk/9/NOTICE.txtdeletemake/lib/android-sdk/15/android-java-src.zipdeletemake/lib/android-sdk/21/android-java-src.txtmake/lib/cpptasks.jarmake/build.xmlmake/build-test.xml97622eb70b1ff720d91d768768b7a996ac01ad781560734064000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate cpptask.jar to commit 757192655df20cc6a68affe8cbb4d7de387c9c67 Added CC Task Option: 'usehighleveltool' to give user option to prefer the high-level tool like gcc or clang for static linkage where usually 'ar' is being used. 2019-06-17 03:14:24 +020097622eb70b1ff720d91d768768b7a996ac01ad78Update cpptask.jar to commit 757192655df20cc6a68affe8cbb4d7de387c9c67editmake/build-test.xmleditmake/lib/cpptasks.jareditmake/build.xmlmake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.ios.arm64.shmake/jogamp-androidtasks.xmlsrc/java/jogamp/common/os/MachineDataInfoRuntime.javasrc/java/com/jogamp/common/util/VersionUtil.javamake/gluegen-properties.xmlmake/build.xmlsrc/java/com/jogamp/common/os/MachineDataInfo.javasrc/java/jogamp/common/os/PlatformPropsImpl.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/os/Platform.javamake/gluegen-cpptasks-base.xmlsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/util/JarUtil.java52a6d4ef4133a998824236af9bb48d0ea65359a91560736762000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comiOS: Initial iOS support commit: build.xml targets, java code-path etc Current build system for JogAmp iOS Build is: - Build Machine: OSX Mojave 10.14 - Using own (still proprietary) OpenJDK 9 iOS Build - OpenJDK 1.8 (This will be replaced by OpenJDK 11 soon) - Xcode 10.2 2019-06-17 03:59:22 +020052a6d4ef4133a998824236af9bb48d0ea65359a9iOS: Initial iOS support commit: build.xml targets, java code-path etceditsrc/java/jogamp/common/os/MachineDataInfoRuntime.javaeditmake/build.xmleditsrc/java/com/jogamp/common/util/JarUtil.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/com/jogamp/common/os/MachineDataInfo.javaeditmake/gluegen-cpptasks-base.xmladdmake/scripts/make.gluegen.all.ios.arm64.sheditmake/gluegen-properties.xmleditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditmake/jogamp-androidtasks.xmleditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/java/com/jogamp/common/util/VersionUtil.javaaddmake/scripts/make.gluegen.all.ios.amd64.sheditsrc/java/com/jogamp/common/util/IOUtil.javamake/stub_includes/jni/jni.hsrc/java/com/jogamp/common/os/Platform.javasrc/java/com/jogamp/common/util/VersionUtil.javasrc/native/common/JVM_JNI8.csrc/java/com/jogamp/common/os/NativeLibrary.javamake/build.xmlsrc/java/jogamp/common/os/PlatformPropsImpl.java330dad069dee5a0cc0480cf5cd9052000004223a1560737304000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Recognize Java9+ ..; Support JEP 178 static linkage libgluegen-rt[.so] -> libgluegen_rt[.so|.a] Recognize Java9+ .. - Recognize new Java9+ version string as of JEP 223 - Avoid Classpath's private findLibrary call +++ Support JEP 178 static linkage (OpenJDK 1.8) - Need to change native library basename: libgluegen-rt[.so] -> libgluegen_rt[.so|.a] since the dash '-' is not supported in a ANSI-c function name. - Added 'JNI_OnLoad_gluegen_rt' to recognize statical linked JNI code - Added JNI_VERSION_1_8 to jni/jni.h 2019-06-17 04:08:24 +0200330dad069dee5a0cc0480cf5cd9052000004223aBug 1363: Java 11: Recognize Java9+ ..; Support JEP 178 static linkage libgluegen-rt[.so] -> libgluegen_rt[.so|.a]editsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/com/jogamp/common/util/VersionUtil.javaaddsrc/native/common/JVM_JNI8.ceditmake/build.xmleditmake/stub_includes/jni/jni.heditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/com/jogamp/common/os/Platform.javamake/lib/cpptasks.jarmake/gluegen-cpptasks-base.xmlmake/build.xml062901d807770646604322aa45d1e018270ae7ce1560739694000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate cpptask.jar to commit 18e04a2fb9c2a3556040091213f82fc570bc5736 and comment-out verbose OSX compiler/link flags, as well as removing one dead linker cfg target. 2019-06-17 04:48:14 +0200062901d807770646604322aa45d1e018270ae7ceUpdate cpptask.jar to commit 18e04a2fb9c2a3556040091213f82fc570bc5736editmake/lib/cpptasks.jareditmake/gluegen-cpptasks-base.xmleditmake/build.xmlmake/gluegen-cpptasks-base.xml2439ef7a2e6789c2614b3f0efde11bc874cebad01561022896000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comiOS: Bump required iOS default version to 11.0 2019-06-20 11:28:16 +02002439ef7a2e6789c2614b3f0efde11bc874cebad0iOS: Bump required iOS default version to 11.0editmake/gluegen-cpptasks-base.xmlmake/gluegen-cpptasks-base.xmlmake/build.xml8ce56955f989f0d8ac21335ea563f9c7eb1111541561108019000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comiOS: Generalize building the native symbols file via macro 2019-06-21 11:06:59 +02008ce56955f989f0d8ac21335ea563f9c7eb111154iOS: Generalize building the native symbols file via macroeditmake/gluegen-cpptasks-base.xmleditmake/build.xmlsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/os/DynamicLibraryBundle.javasrc/java/jogamp/common/os/DynamicLinkerImpl.javae44b9364353a6173598eb98d276795d77cc4456c1561135717000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comiOS: NativeLibrary: Refine iOS, use proper alt system path for iOS+OSX, relax closeLibrary(..) 2019-06-21 18:48:37 +0200e44b9364353a6173598eb98d276795d77cc4456ciOS: NativeLibrary: Refine iOS, use proper alt system path for iOS+OSX, relax closeLibrary(..)editsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.javaeditsrc/java/com/jogamp/common/os/DynamicLibraryBundle.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/jogamp/common/os/DynamicLinkerImpl.javamake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.ios.arm64.shmake/scripts/make.gluegen.all.solaris-x86_64.shmake/scripts/make.gluegen.all.linux-x86_64-clang.shmake/scripts/make.gluegen.all.linux-x86.shmake/scripts/make.gluegen.all.android-armv6-cross.shmake/scripts/make.gluegen.all.linux-x86_64.shmake/scripts/make.gluegen.all.linux-aarch64.shmake/scripts/make.gluegen.all.generic.shmake/scripts/make.gluegen.all.win32.batmake/scripts/setenv-build-jogl-x86.shmake/scripts/adb-launch-main.shmake/scripts/make.gluegen.all.linux-armv6hf.shmake/scripts/setenv-build-jogamp-x86.shmake/scripts/setenv-build-jogamp-x86_64.shmake/scripts/make.gluegen.all.linux-x86-clang.shmake/scripts/make.gluegen.all.linux-ppc64le.shmake/scripts/crosstest-junit-linux-armv7-rel.shmake/scripts/crosstest-java-android-armv6-rel.shmake/scripts/make.gluegen.all.solaris-x86.shmake/scripts/setenv-android-tools.shmake/scripts/make.gluegen.all.android-x86-cross.shmake/scripts/crosstest-java-linux-armv6hf-rel.shmake/scripts/make.gluegen.all.android-aarch64-cross.shmake/scripts/make.gluegen.all.win64.batmake/scripts/crosstest-java-linux-armv6-rel.shmake/scripts/make.gluegen.all.linux-armv6hf-cross.shmake/scripts/setenv-build-jogl-x86_64.shmake/scripts/make.gluegen.all.linux-aarch64-cross.shmake/scripts/make.gluegen.all.macosx-java6.shmake/scripts/make.gluegen.all.macosx.shc7205e3906e426ec0c74b12b50faece189d3f8c21565990458000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Mod scripts for OpenJDK11 usage 2019-08-16 23:20:58 +0200c7205e3906e426ec0c74b12b50faece189d3f8c2Bug 1363: Java 11: Mod scripts for OpenJDK11 usageeditmake/scripts/crosstest-junit-linux-armv7-rel.sheditmake/scripts/crosstest-java-linux-armv6hf-rel.shaddmake/scripts/setenv-build-jogamp-x86.sheditmake/scripts/make.gluegen.all.linux-x86_64-clang.sheditmake/scripts/make.gluegen.all.linux-aarch64-cross.shdeletemake/scripts/make.gluegen.all.macosx-java6.sheditmake/scripts/make.gluegen.all.solaris-x86_64.sheditmake/scripts/setenv-android-tools.sheditmake/scripts/make.gluegen.all.linux-x86_64.sheditmake/scripts/make.gluegen.all.android-aarch64-cross.sheditmake/scripts/make.gluegen.all.linux-armv6hf.shaddmake/scripts/setenv-build-jogamp-x86_64.sheditmake/scripts/make.gluegen.all.linux-armv6hf-cross.sheditmake/scripts/make.gluegen.all.linux-x86.sheditmake/scripts/make.gluegen.all.win32.bateditmake/scripts/make.gluegen.all.android-armv6-cross.shdeletemake/scripts/setenv-build-jogl-x86.sheditmake/scripts/make.gluegen.all.linux-aarch64.sheditmake/scripts/make.gluegen.all.android-x86-cross.sheditmake/scripts/make.gluegen.all.ios.arm64.sheditmake/scripts/crosstest-java-linux-armv6-rel.sheditmake/scripts/adb-launch-main.sheditmake/scripts/make.gluegen.all.solaris-x86.shdeletemake/scripts/setenv-build-jogl-x86_64.sheditmake/scripts/crosstest-java-android-armv6-rel.sheditmake/scripts/make.gluegen.all.linux-x86-clang.sheditmake/scripts/make.gluegen.all.linux-ppc64le.sheditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/make.gluegen.all.ios.amd64.sheditmake/scripts/make.gluegen.all.macosx.sheditmake/scripts/make.gluegen.all.generic.shdoc/HowToBuild.htmla83fe317fc55771c18709ec201870d98c307eb131565990554000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: HowToBuild Update Also update GNU/Linux and other platforms information to current OS versions and developer toolchains. 2019-08-16 23:22:34 +0200a83fe317fc55771c18709ec201870d98c307eb13Bug 1363: Java 11: HowToBuild Updateeditdoc/HowToBuild.htmlsrc/java/net/highteq/nativetaglet/NativeTaglet.java4df8c0112b1e6f3236428cd8429d034058a98f6b1565990656000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comPorted NativeTaglet to jdk.javadoc.doclet.Taglet The old com.sun.tools.doclets.Taglet was removed, so had to move to new API. 2019-08-16 23:24:16 +02004df8c0112b1e6f3236428cd8429d034058a98f6bPorted NativeTaglet to jdk.javadoc.doclet.Tagleteditsrc/java/net/highteq/nativetaglet/NativeTaglet.javamake/build.xml0e915e519cad5f23dcea1707b894f2b5b869bbf11565990882000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFixed native header generation so it doesn't use javah The javah command was removed in Java 10, so now native headers must be generated in javac instead. 2019-08-16 23:28:02 +02000e915e519cad5f23dcea1707b894f2b5b869bbf1Fixed native header generation so it doesn't use javaheditmake/build.xmlmake/build.xmld7db7d7749a139c0238e0ae484ece39bc6b51d661565992484000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: build.xml fix some comments, javah replacement move and compile time build 2019-08-16 23:54:44 +0200d7db7d7749a139c0238e0ae484ece39bc6b51d66Bug 1363: Java 11: build.xml fix some comments, javah replacement move and compile time buildeditmake/build.xmlsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java610493b1724b5d91327f478338ff5d029bdcc0321565992710000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix warning in annotation processor 2019-08-16 23:58:30 +0200610493b1724b5d91327f478338ff5d029bdcc032Fix warning in annotation processoreditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java3ae05eacc091282f009792e2b06505efe96cca7d1565992724000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFixed null pointer exception in logging print 2019-08-16 23:58:44 +02003ae05eacc091282f009792e2b06505efe96cca7dFixed null pointer exception in logging printeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/junit/com/jogamp/gluegen/test/junit/structgen/package-info.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java93121714758f89a394993f0740c6929f48fb887b1565992733000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFixed CStruct annotation processor to not use dummy Java variable types When annotations were placed on dummy Java variables, the annotation processor was emitting a RenameJavaType directive into the gluegen config file that caused the emitted file to be named boolean.java instead of RenderingConfig.java or Pixel.java. Turned off this behavior when jname is given in the @CStruct annotation. I'm uncertain how much this processor is even used, since I can't find any occurrences of @CStruct outside the test code for it in gluegen. 2019-08-16 23:58:53 +020093121714758f89a394993f0740c6929f48fb887bFixed CStruct annotation processor to not use dummy Java variable typeseditsrc/junit/com/jogamp/gluegen/test/junit/structgen/package-info.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javanbproject/project.xmlmake/gluegen-cpptasks-base.xmlnbproject/ide-file-targets.xmltest/junit/com/jogamp/gluegen/build.xmlmake/build.xml760295dc597b3a91bf011115dd7bfad9c0c37f821565992775000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFixed java.home directory and removed obsolete tools.jar In Java 9+, there's no longer a "jre" directory in the installation, so removed references to it. The tools.jar file also no longer exists in Java installations (it's now stored in a secret non-JAR format), so removed that as well. 2019-08-16 23:59:35 +0200760295dc597b3a91bf011115dd7bfad9c0c37f82Fixed java.home directory and removed obsolete tools.jareditmake/gluegen-cpptasks-base.xmleditnbproject/ide-file-targets.xmleditnbproject/project.xmleditmake/build.xmledittest/junit/com/jogamp/gluegen/build.xmlmake/gluegen-cpptasks-base.xmltest/junit/com/jogamp/gluegen/build.xml40863053f2c97d8dd89b41c6e2d3703f4d2f72d01565993223000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFixed minor Ant buildfile consistency issues These were flagged as errors by Eclipse, and appear legitimate, but didn't make the command line build fail. 2019-08-17 00:07:03 +020040863053f2c97d8dd89b41c6e2d3703f4d2f72d0Fixed minor Ant buildfile consistency issueseditmake/gluegen-cpptasks-base.xmledittest/junit/com/jogamp/gluegen/build.xmlmake/gluegen-cpptasks-base.xml5aee782592a5ef038dfb79c7b2af5ddab81c0a211565993352000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFixed JRE path for Linux AMD64 to work for Java 11 2019-08-17 00:09:12 +02005aee782592a5ef038dfb79c7b2af5ddab81c0a21Fixed JRE path for Linux AMD64 to work for Java 11editmake/gluegen-cpptasks-base.xmlmake/gluegen-cpptasks-base.xmlf54e4fbaebfec36bd3b523dc4e23f744e8e6a4ef1566085239000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Refine 'java.home.dir' and 'java.lib.dir.platform' setup for traditional layout and JEP 220(Java 9+) JEP 220 states it is now optional to use the <arch> subfolder in 'lib' to store native libraries, i.e. 'lib/<arch>/libjava.so' can be flattened to 'lib/libjava.so'. Further the jre subfolder is no more used according to the JEP 220, however, it can be used. Therefor we scan for 'java.home.dir' in the following order: - if '<java.home>/../jre' exists, i.e. we are within the 'jre' folder, use '<java.home>/..'. - otherwise assume <java.home> reflect the flattened actual base folder and use it as is. We scan for 'java.lib.dir.platform' in the following order: - if exists <java.home>/jre/lib/i386/libjava.so -> <java.home>/jre/lib/i386 - if exists <java.home>/lib/i386/libjava.so -> <java.home>/lib/i386 - defaults to flattened <java.home>/lib This way we keep the historical arch information for each platform and stay most flexible for any SDK build layout. 2019-08-18 01:40:39 +0200f54e4fbaebfec36bd3b523dc4e23f744e8e6a4efBug 1363: Java 11: Refine 'java.home.dir' and 'java.lib.dir.platform' setup for traditional layout and JEP 220(Java 9+)editmake/gluegen-cpptasks-base.xmlmake/gluegen-cpptasks-custom.xml65195899777be7be194db59bd668d22c70f291451566085381000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Align gluegen-cpptask-custom.xml template to commit f54e4fbaebfec36bd3b523dc4e23f744e8e6a4ef 2019-08-18 01:43:01 +020065195899777be7be194db59bd668d22c70f29145Bug 1363: Java 11: Align gluegen-cpptask-custom.xml template to commit f54e4fbaebfec36bd3b523dc4e23f744e8e6a4efeditmake/gluegen-cpptasks-custom.xmlmake/gluegen-cpptasks-base.xml4df5aea16fba71b43b78fc6a878fb68c01294a3a1566085471000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comiOS: Fix native symbol generation for Windows Regression from commit 8ce56955f989f0d8ac21335ea563f9c7eb111154 2019-08-18 01:44:31 +02004df5aea16fba71b43b78fc6a878fb68c01294a3aiOS: Fix native symbol generation for Windowseditmake/gluegen-cpptasks-base.xmlsrc/java/com/jogamp/common/os/NativeLibrary.java15549c5c038e4ef009b9b487e460c29da16c956b1566085514000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMacOS shall only scan for .dylib, dropping .jnilib search in NativeLibrary 2019-08-18 01:45:14 +020015549c5c038e4ef009b9b487e460c29da16c956bMacOS shall only scan for .dylib, dropping .jnilib search in NativeLibraryeditsrc/java/com/jogamp/common/os/NativeLibrary.javamake/build.xmlf12fde9dbfc79aa37303c724f094b3cef8a3f9891566085618000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.combuild.xml: Explicitly issue 'clean-temp' at start and in the end of default 'all*' targets. This shall ensure that build-temp gets deleted before and after build, removing the transitionary previous build state. 2019-08-18 01:46:58 +0200f12fde9dbfc79aa37303c724f094b3cef8a3f989build.xml: Explicitly issue 'clean-temp' at start and in the end of default 'all*' targets.editmake/build.xmlmake/scripts/java-win32.batmake/scripts/java-win64.batdoc/HowToBuild.html0577701f4d92c414dbfe6875f4319fd311e0106c1566085761000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate HowToBuild (gawk) and windows test scripts 2019-08-18 01:49:21 +02000577701f4d92c414dbfe6875f4319fd311e0106cUpdate HowToBuild (gawk) and windows test scriptseditdoc/HowToBuild.htmleditmake/scripts/java-win32.bateditmake/scripts/java-win64.batmake/jogamp-env.xmlmake/scripts/make.gluegen.all.linux-x86_64.shmake/build.xml189f8ede61afea66ea14f7402dac10381a98c9ca1566092305000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Fix javadoc invocation, drop -source <release> for compile time javac Also prepare the 'target.releaselevel' property to be set by 'RELEASE_LEVEL' environment, however - we do not use it at this point. For now, we build gluegen-rt using '-source 1.8' '-target 1.8' and the bootclasspath of openjdk8 rt.jar to ensure java8 compatibility. Alternatively one could use '--release 8' instead using the java11 distributed modules. However, I think the above method is more safe, only allowing java8 rt.jar to be used for compilation. Further, gluegen.jar is build using '-target 1.8' only, since it musty use java11 sources at least for the javadoc taglet. 2019-08-18 03:38:25 +0200189f8ede61afea66ea14f7402dac10381a98c9caBug 1363: Java 11: Fix javadoc invocation, drop -source <release> for compile time javaceditmake/build.xmleditmake/scripts/make.gluegen.all.linux-x86_64.sheditmake/jogamp-env.xmlmake/jogamp-env.xmldoc/HowToBuild.html0f370707ed27dff495c5d091d284f7a006cb28a01566095929000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Java version must be 11 or greater; Fix HowToBuild: Give detailed build commandline. 2019-08-18 04:38:49 +02000f370707ed27dff495c5d091d284f7a006cb28a0Bug 1363: Java 11: Java version must be 11 or greater; Fix HowToBuild: Give detailed build commandline.editmake/jogamp-env.xmleditdoc/HowToBuild.htmlmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-x86.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/lib/gluegen-cpptasks-linux-32bit.xml175392ceeba5f69aa5ac90e4021490ade742a3231566143894000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Adopt java.lib.dir.platform changes to make/lib/gluegen-cpptasks-* 2019-08-18 17:58:14 +0200175392ceeba5f69aa5ac90e4021490ade742a323Bug 1363: Java 11: Adopt java.lib.dir.platform changes to make/lib/gluegen-cpptasks-*editmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-x86.xmleditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/lib/gluegen-cpptasks-linux-32bit.xmlsrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/java/jogamp/common/os/MachineDataInfoRuntime.javasrc/java/com/jogamp/common/os/Platform.javasrc/junit/com/jogamp/common/util/TestTempJarCache.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/jogamp/common/os/PlatformPropsImpl.java6f987f16c808242b61263d76bd7d72e148a0af241566165207000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Complete renaming JEP 178 compatible native lib basename gluegen-rt -> gluegen_rt - Fix finding native library for Elf parsing - Fix one unit test - Fix comments Completes commit 330dad069dee5a0cc0480cf5cd9052000004223a 2019-08-18 23:53:27 +02006f987f16c808242b61263d76bd7d72e148a0af24Bug 1363: Java 11: Complete renaming JEP 178 compatible native lib basename gluegen-rt -> gluegen_rteditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/junit/com/jogamp/common/util/TestTempJarCache.javaeditsrc/java/jogamp/common/os/MachineDataInfoRuntime.javaeditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javamake/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/make.gluegen.all.win32.batLICENSE.txtdoc/HowToBuild.htmlmake/scripts/java-win32.batmake/build-test.xml5f4292bb8a310489e05a4f3545ae081310a93f721566165402000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuild Update: CMake 2.8.10.2 -> 3.15.2 (Windows + MacOS), Mingw64 4.8.1 -> 8.1.0 2019-08-18 23:56:42 +02005f4292bb8a310489e05a4f3545ae081310a93f72Build Update: CMake 2.8.10.2 -> 3.15.2 (Windows + MacOS), Mingw64 4.8.1 -> 8.1.0editdoc/HowToBuild.htmleditmake/scripts/java-win32.bateditLICENSE.txteditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/java-win64.bateditmake/scripts/make.gluegen.all.win32.bateditmake/build-test.xmlsrc/junit/com/jogamp/common/nio/BuffersTest.javasrc/java/com/jogamp/common/nio/Buffers.javasrc/junit/com/jogamp/common/nio/TestBuffers.javasrc/junit/com/jogamp/common/nio/CachedBufferFactoryTest.javasrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javasrc/junit/com/jogamp/common/nio/TestCachedBufferFactory.java6603026f1bfec02e3486c52270a09a355a1bf9141566176302000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Resolve Buffers.Cleaner implementation As of Java9, sun.misc.Cleaner has moved to jdk.internal.ref.Cleaner. However, access has been made (under the table) via sun.misc.Unsafe, which we are using for now as we cannot set the jdk.internal.ref.Cleaner method accessible. In this regard, we had to change our Cleaner.clean(..) method using a ByteBuffer instead of a Buffer object paramter. All tests have passed, no more illegal access case running on Java11 has been exposed. 2019-08-19 02:58:22 +02006603026f1bfec02e3486c52270a09a355a1bf914Bug 1363: Java 11: Resolve Buffers.Cleaner implementationdeletesrc/junit/com/jogamp/common/nio/CachedBufferFactoryTest.javaeditsrc/java/com/jogamp/common/nio/Buffers.javaaddsrc/junit/com/jogamp/common/nio/TestBuffers.javaaddsrc/junit/com/jogamp/common/nio/TestCachedBufferFactory.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javadeletesrc/junit/com/jogamp/common/nio/BuffersTest.javamake/jogamp-env.xml493f0597646a1521074512b54c77d51fdfcca2801566177154000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Refine Build and Runtime requirements. Fix Java compiler test. We allow java [8-10] to pass even thought we require java 11 or greater. This gives us the opportunity to run the junit tests on a java 8 VM (tested). 2019-08-19 03:12:34 +0200493f0597646a1521074512b54c77d51fdfcca280Bug 1363: Java 11: Refine Build and Runtime requirements. Fix Java compiler test.editmake/jogamp-env.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javamake/scripts/java-win64.batmake/scripts/runtest.shmake/scripts/runtest-x64.batmake/scripts/java-win32.batmake/build-test.xmlc63b81c1660f65804b058d1af1b66949b06390df1566187438000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWindows Regression: Mingw64 8.1.0 using statical linked tool lib Test1p1Test1p1JavaEmitter 'com.jogamp.gluegen.test.junit.generation.Test1p1JavaEmitter' exposes a regression using MingW64 8.1.0: System.loadLibrary() gives a "Can't find dependent libraries". Here, 'Bindingtest1p1' is linked against 'test1' and fails to load due to its wrong dependent library name within 'Bindingtest1p1'. MingW64 8.1.0 dropped 'libtest1.so' into 'Bindingtest1p1.dll', which is surely wrong. Even passing '-Wl,-soname=test1.dll' didn't help. Note: Such constellation would only work with adding the lib-path to PATH on Windows. Since we don't utilize the method in any of our projects, but use the dynamic library lookup method - this is not a blocker, but wasted some good time. 2019-08-19 06:03:58 +0200c63b81c1660f65804b058d1af1b66949b06390dfWindows Regression: Mingw64 8.1.0 using statical linked tool lib Test1p1Test1p1JavaEmittereditmake/scripts/runtest-x64.bateditmake/scripts/java-win32.bateditmake/build-test.xmleditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javaeditmake/scripts/java-win64.batsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javamake/build.xmlmake/build-test.xml2d89df89453c099d4e357aa17eae88efcf1d1b701566238303000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Document Java8 target constraints; Fix one odd compile issue Document Java8 target constraints, i.e. where we need to set source, target and bootclasspath to ensure target runtime Java8 compliance. Fix one odd compile issue! Using two theorethical identical GNU/Linux Debian 10 machines with same set of installed software, one passes (like MacOS, Windows) and one fails. The failure was due to the CStructAnnotationProcessor's @SupportedSourceVersion tag. This downgrades the SourceVersion's previous bump from 6->11 (commit 610493b1724b5d91327f478338ff5d029bdcc032) down to 8. Interesting times .. 2019-08-19 20:11:43 +02002d89df89453c099d4e357aa17eae88efcf1d1b70Bug 1363: Java 11: Document Java8 target constraints; Fix one odd compile issueeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javaeditmake/build-test.xmleditmake/build.xmlsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java3068420e778909e75edbed8ffd17c49c95b6e4c21566239925000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Revert CStructAnnotationProcessor's @SupportedSourceVersion back to 11 Behold, the issue as documented at commit 2d89df89453c099d4e357aa17eae88efcf1d1b70, one build machine failing to compile SourceVersion.RELEASE_11 was due to an incomplete installation of openjdk-11-jdk on Debian GNU/Linux. Wow. I have re-installed the openjdk-11-jre and openjdk-11-jdk packages on said machine, ensured they are being used .. and it works. Another note here regarding usage of OpenJDK11 compile time environment and Java8 target. If using Eclipse, I had to set the system runtime JDK to JDK 8. Otherwise the 'editor clean-up' jobs would run against the JDK 11 classes and wrongly so change certain type castings etc, incompatible with Java 8. If anybody knows a solution here .. shoot. 2019-08-19 20:38:45 +02003068420e778909e75edbed8ffd17c49c95b6e4c2Bug 1363: Java 11: Revert CStructAnnotationProcessor's @SupportedSourceVersion back to 11editsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java.classpath9eb21b874edb66003c642971d6c99bc22ec37e271567562065000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Use new Android SDK 24 for Eclipse Android .classpath 2019-09-04 03:54:25 +02009eb21b874edb66003c642971d6c99bc22ec37e27Bug 1363: Java 11: Use new Android SDK 24 for Eclipse Android .classpathedit.classpathmake/jogamp-env.xml252ab21e6b6958cb54992d68535cdb7563b70f401567562173000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix JogAmp Next Release Number: 2.4.0 2019-09-04 03:56:13 +0200252ab21e6b6958cb54992d68535cdb7563b70f40Fix JogAmp Next Release Number: 2.4.0editmake/jogamp-env.xmlsrc/java/com/jogamp/common/nio/Buffers.javasrc/java/com/jogamp/common/util/UnsafeUtil.java07c1885e9a3d1f3a3853414648c06fb3864bc69f1567562886000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1363: Java 11: Extract and extend sun.misc.Unsafe functionality to UnsafeUtil UnsafeUtil centralizes the workarounds (hack) of certain Java>=9 modularization encapsulation pitfalls, where no exports have been defined. The last resort. 1) Buffers utilizes UnsafeUtil for Java>=9 invokeCleaner. 2) To gain access for certain methods + fields w/o 'illegal access warnings', we have to temporarily disable the IllegalAccessLogger. Hence we provide a method 'T doWithoutIllegalAccessLogger(..<T> action)' for our essential module access under Java >= 9. 2019-09-04 04:08:06 +020007c1885e9a3d1f3a3853414648c06fb3864bc69fBug 1363: Java 11: Extract and extend sun.misc.Unsafe functionality to UnsafeUtileditsrc/java/com/jogamp/common/nio/Buffers.javaaddsrc/java/com/jogamp/common/util/UnsafeUtil.javasrc/junit/com/jogamp/junit/util/JunitTracer.java13ff301f7a21c55df7e6af77d936a81536b16e7f1574902961000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comminor autocleanup (final removed from static) 2019-11-28 02:02:41 +010013ff301f7a21c55df7e6af77d936a81536b16e7fminor autocleanup (final removed from static)editsrc/junit/com/jogamp/junit/util/JunitTracer.javamake/gluegen-cpptasks-base.xml617bb981ef3485edd1e0729934d223da07a72a6b1575049927000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix gluegen-cpptasks-base.xml for crosscompilation, failed due to unset supposedly detected mandatory new properties Move new detected build properties build.dynamiclibs, build.staticlibs and output.lib.type from gluegen.cpptasks.detect.os.1 to gluegen.cpptasks.detect.os. This enables setting these mandatory properties always, as gluegen.cpptasks.detect.os.1 gets overriden by custom cross-compilation configurations. Also moving the property dump from gluegen.cpptasks.detect.os.1 to gluegen.cpptasks.detect.os for same reasons. 2019-11-29 18:52:07 +0100617bb981ef3485edd1e0729934d223da07a72a6bFix gluegen-cpptasks-base.xml for crosscompilation, failed due to unset supposedly detected mandatory new propertieseditmake/gluegen-cpptasks-base.xmlmake/scripts/make.gluegen.all.ios.amd64.shmake/scripts/make.gluegen.all.macosx.shmake/scripts/make.gluegen.all.ios.arm64.sh50f8d56b5e7eac286e8183b162bddf2d528ffa6b1575271308000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comScripts: Macos /opt-share -> /usr/local (Catalina Read-Only) 2019-12-02 08:21:48 +010050f8d56b5e7eac286e8183b162bddf2d528ffa6bScripts: Macos /opt-share -> /usr/local (Catalina Read-Only)editmake/scripts/make.gluegen.all.ios.arm64.sheditmake/scripts/make.gluegen.all.ios.amd64.sheditmake/scripts/make.gluegen.all.macosx.shsrc/java/com/jogamp/gluegen/JavaEmitter.java5736716ed0598c97273583717ffb9d22a60ca7a41575619814000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1412 - JNI: GlueGen JavaEmitter: Check & Handle Exception after calling back into Java The generated JNI code JVMUtil_NewDirectByteBufferCopy(..) calls Buffers.newDirectByteBuffer(..) and potential exceptions should be checked. 2019-12-06 09:10:14 +01005736716ed0598c97273583717ffb9d22a60ca7a4Bug 1412 - JNI: GlueGen JavaEmitter: Check & Handle Exception after calling back into Javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/lib/gluegen-cpptasks-android-aarch64.xmlmake/gluegen-properties.xmlmake/jogamp-androidtasks.xmlmake/scripts/make.gluegen.all.android-aarch64-cross.shmake/jogamp-env.xmlmake/scripts/setenv-android-tools.sh74e5bbe097a07d1275a2d6452d1e2336a8d5c44a1575955954000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Support building using current SDK and NDK v20 as of 2019-12-10 (GlueGen w/ android-aarch64 patched) Default Platform: Android 7.0 Nougat, API level 24 supports Java 1.8 Reworked gluegen/make/scripts/setenv-android-tools.sh, following canonical environment variables and sets all required variables for cross-compilation. See file's comments! ant files: - android.version -> android.api.level (default 24) - android.jar defaults to ${gluegen.root}/make/lib/android-sdk/24/android.jar (provided) 2019-12-10 06:32:34 +010074e5bbe097a07d1275a2d6452d1e2336a8d5c44aBug 1417 - Android: Support building using current SDK and NDK v20 as of 2019-12-10 (GlueGen w/ android-aarch64 patched)editmake/gluegen-properties.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/jogamp-androidtasks.xmleditmake/scripts/make.gluegen.all.android-aarch64-cross.sheditmake/jogamp-env.xmleditmake/scripts/setenv-android-tools.shsrc/java/com/jogamp/common/os/AndroidVersion.javamake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/scripts/setenv-android-tools.shmake/scripts/make.gluegen.all.android-x86-cross.shmake/scripts/make.gluegen.all.android-armv6-cross.shmake/lib/gluegen-cpptasks-android-x86.xmlb6a91a035c14f1e4d142517f311007e48ea9c0c11576000603000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Complete 1st round: make/lib/gluegen-cpptask-android-<abi>.xml and scripts All aligned now - gluegen-cpptasks-android-aarch64.xml - gluegen-cpptasks-android-armv6.xml (this has ld flag --no-undefined disabled, due to internal missing symbols) - gluegen-cpptasks-android-x86.xml 2019-12-10 18:56:43 +0100b6a91a035c14f1e4d142517f311007e48ea9c0c1Bug 1417 - Android: Complete 1st round: make/lib/gluegen-cpptask-android-<abi>.xml and scriptseditmake/scripts/setenv-android-tools.sheditmake/scripts/make.gluegen.all.android-armv6-cross.sheditmake/scripts/make.gluegen.all.android-x86-cross.sheditsrc/java/com/jogamp/common/os/AndroidVersion.javaeditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-x86.xmlmake/lib/cpptasks.jar4f7273e017e2deb2928a76066604ced03609f9211576000682000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Update cpptasks.jar http://jogamp.org/git/?p=ant-cpptasks.git commit e1933c74b9c256332cd12c9a1094e4687b535112 Bug 1417 Android clang support: Introduce clangLinkerOption '-target <abi>' 2019-12-10 18:58:02 +01004f7273e017e2deb2928a76066604ced03609f921Bug 1417 - Android: Update cpptasks.jareditmake/lib/cpptasks.jarsrc/java/com/jogamp/common/os/MachineDataInfo.java19761070e12f65fe7a07e6d9b7a5221a1623b12d1576000770000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Add new x86 MachineDataInfo, differs due to smaller 'long double' than regular x86_32_unix 2019-12-10 18:59:30 +010019761070e12f65fe7a07e6d9b7a5221a1623b12dBug 1417 - Android: Add new x86 MachineDataInfo, differs due to smaller 'long double' than regular x86_32_unixeditsrc/java/com/jogamp/common/os/MachineDataInfo.javamake/Manifest-rt-androidmake/Manifest-android-launchereb6dfabd7427a1836f6b1d2080422f98808ea0a41576000900000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Manifest*-android* can no more have 'Name: <folder>' directives for apk The 'Name <folder>' leads new apk to claim the missing resources (the folder actually) and fails to install the apk. Hence removed tagging the folders sealed. 2019-12-10 19:01:40 +0100eb6dfabd7427a1836f6b1d2080422f98808ea0a4Bug 1417 - Android: Manifest*-android* can no more have 'Name: <folder>' directives for apkeditmake/Manifest-rt-androideditmake/Manifest-android-launchermake/build.xml51ef5eadd9db020412d3a3716b4ab5a25b0522fb1576001000000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Resulting dynamic libraries require the 'soname' to be set since API level 23 TODO: Do this for all JogAmp modules! 2019-12-10 19:03:20 +010051ef5eadd9db020412d3a3716b4ab5a25b0522fbBug 1417 - Android: Resulting dynamic libraries require the 'soname' to be set since API level 23editmake/build.xmlmake/lib/cpptasks.jarmake/build.xml53ae28fd2bc501b5de54fdbdf915d88f823eb11a1576153418000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Update cpptask, using implicit 'soname' setup, which scales better for all platforms. http://jogamp.org/git/?p=ant-cpptasks.git commit 8353e0cc85705ca8f81f8563ad975026978b6745 2019-12-12 13:23:38 +010053ae28fd2bc501b5de54fdbdf915d88f823eb11aBug 1417 - Android: Update cpptask, using implicit 'soname' setup, which scales better for all platforms.editmake/lib/cpptasks.jareditmake/build.xmlmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-x86.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/scripts/setenv-android-tools.sh26d06324312b8fe6980ff29ab9d443cc5ec2657f1577141454000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Classify SYSROOTs in NDK for native libraries (link) and headers (compile) Utilizing '-sysroot' with the linker, we require standard FS layout. '~/Android/Sdk/ndk/20.1.5948944/platforms/android-24/arch-arm64' contains the proper std FS layout for libraries under usr/lib, but lacks the header files. We call this 'ANDROID_TOOLCHAIN_SYSROOT0' and shall be used for linking. '~/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/linux-x86_64/sysroot' native libraries are not under std FS layout, but headers are under std FS layout for compilation under usr/include. We call this 'ANDROID_TOOLCHAIN_SYSROOT1' and shall be used for compilation. Identified while working on openal-soft Android compilation, where we need to pass ANDROID_TOOLCHAIN_SYSROOT0 2019-12-23 23:50:54 +010026d06324312b8fe6980ff29ab9d443cc5ec2657fBug 1417 - Android: Classify SYSROOTs in NDK for native libraries (link) and headers (compile)editmake/lib/gluegen-cpptasks-android-x86.xmleditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/scripts/setenv-android-tools.sheditmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-x86.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/scripts/setenv-android-tools.shaeae740ba2569d839820bfc20c43a8550ab8ed331577156732000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Add ANDROID_TOOLCHAIN_SYSROOT1_INC_ARCH for arch specific includes like asm/types.h Also adapt make/lib/gluegen-cpptask-android* files: - Set C++ stdlib = libstdc++ - Set isysroot (same as sysroot) - Add isystem: *_SYSROOT1_INC, *_SYSROOT1_INC_ARCH and *_SYSROOT1_INC/c++/v1 2019-12-24 04:05:32 +0100aeae740ba2569d839820bfc20c43a8550ab8ed33Bug 1417 - Android: Add ANDROID_TOOLCHAIN_SYSROOT1_INC_ARCH for arch specific includes like asm/types.heditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-x86.xmleditmake/scripts/setenv-android-tools.sheditmake/lib/gluegen-cpptasks-android-armv6.xmlmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-x86.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/scripts/setenv-android-tools.shae4cdcf3490a1bf493f39ab5c8c6b596d3af71de1577173868000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Add ANDROID_TOOLCHAIN_SYSROOT1_INC_STL for LLVM's C++ STL headers (default since NDK r18) Using LLVM's c++_shared as of NDK r18: https://developer.android.com/ndk/guides/cpp-support.html LLVM's c++ headers must come before other system header! Also see https://github.com/android/ndk/issues/452 and https://gitlab.kitware.com/cmake/cmake/issues/17059 Also adapt make/lib/gluegen-cpptask-android* files: - Compiler -- align for potential C++ usage, i.e.: -- don't use '-sysroot' not '-isysroot' -- IF using C++ STL, prepend ANDROID_TOOLCHAIN_SYSROOT1_INC_STL -- just add normal sysroot headers via '-isystem' - Linker -- Use ANDROID_TOOLCHAIN_SYSROOT1_LIB1 and ANDROID_TOOLCHAIN_SYSROOT1_LIB2 for '-L' search path -- where ANDROID_TOOLCHAIN_SYSROOT1_LIB2 is for 'libc++' -> 'c++_shared' 2019-12-24 08:51:08 +0100ae4cdcf3490a1bf493f39ab5c8c6b596d3af71deBug 1417 - Android: Add ANDROID_TOOLCHAIN_SYSROOT1_INC_STL for LLVM's C++ STL headers (default since NDK r18)editmake/lib/gluegen-cpptasks-android-x86.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/scripts/setenv-android-tools.shmake/scripts/adb-am-force-stop-all.shmake/scripts/adb-pm-clear-all.shd190301a82a961ac3246890206200086842059bd1577330159000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Add adb scripts to force-stop and clear all jogamp tasks and packages 2019-12-26 04:15:59 +0100d190301a82a961ac3246890206200086842059bdBug 1417 - Android: Add adb scripts to force-stop and clear all jogamp tasks and packagesaddmake/scripts/adb-am-force-stop-all.shaddmake/scripts/adb-pm-clear-all.shmake/resources/android/AndroidManifest-Launcher.xmlmake/jogamp-env.xmlmake/resources/android/AndroidManifest-Test.xmlmake/resources/android/AndroidManifest-Runtime.xml6e98be1a1bc819b47e2cc52eb35d23a7489fdf1b1577330300000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: jogamp-env.xml: Elaborate on Android SDK API versions required [min=21, target=28], javac w/ 24, some NDK's clang with 22. 2019-12-26 04:18:20 +01006e98be1a1bc819b47e2cc52eb35d23a7489fdf1bBug 1417 - Android: jogamp-env.xml: Elaborate on Android SDK API versions required [min=21, target=28], javac w/ 24, some NDK's clang with 22.editmake/resources/android/AndroidManifest-Launcher.xmleditmake/resources/android/AndroidManifest-Test.xmleditmake/jogamp-env.xmleditmake/resources/android/AndroidManifest-Runtime.xmlsrc/java/jogamp/android/launcher/LauncherTempFileCache.javasrc/java/jogamp/common/os/android/AndroidUtilsImpl.javafaa37334e2912e02cb58e738570a127cc6402b371577330376000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Context.MODE_WORLD_READABLE causes SecurityException on API >= 24, use Context.MODE_PRIVATE for temp cache 2019-12-26 04:19:36 +0100faa37334e2912e02cb58e738570a127cc6402b37Bug 1417 - Android: Context.MODE_WORLD_READABLE causes SecurityException on API >= 24, use Context.MODE_PRIVATE for temp cacheeditsrc/java/jogamp/common/os/android/AndroidUtilsImpl.javaeditsrc/java/jogamp/android/launcher/LauncherTempFileCache.javamake/build-test.xmlmake/jogamp-androidtasks.xml1390bc236de531646aaa4525a17de1a533b1fa061577330792000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417 - Android: Use d8 for dex'ing w/ implicit Java8 desugaring (macro: aapt.signed) The new SDK d8 dex'ing tool performs Java8 desugaring, hence allows using Java8 code style. We use d8 instead of dx in the 'aapt.signed' macro of 'jogamp-androidtasks.xml'. For the proper desugaring, we pass 'android-min.jar and 'target.rt.jar' Android and Java8 system runtime jar-files to d8's classpath. Macro 'aapt.signed' also receives the new optional element 'd8-classpaths' to allows caller to pass further required jar-files to the d8 classpath. See build-test.xml. 2019-12-26 04:26:32 +01001390bc236de531646aaa4525a17de1a533b1fa06Bug 1417 - Android: Use d8 for dex'ing w/ implicit Java8 desugaring (macro: aapt.signed)editmake/build-test.xmleditmake/jogamp-androidtasks.xmlLICENSE.txtsrc/java/com/jogamp/common/util/WeakIdentityHashMap.java5979d66fb0c619be32ebcf9fbe644cf6d757345f1577745723000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd WeakIdentityHashMap implementation (from Apache Avro) Origin <https://github.com/apache/avro/blob/master/lang/java/avro/src/main/java/org/apache/avro/util/WeakIdentityHashMap.java> from their commit 70260919426f89825ca148f5ee815f3b2cf4764d. Apache License Version 2.0 until. Using our JogAmp 'New BSD 2-Clause License' for changes after this initial commit. Related to Bug 1312, where we like to utilize a WeakIdentityHashMap, allowing to have cached shared GLContext to disappear .. a compromise. 2019-12-30 23:42:03 +01005979d66fb0c619be32ebcf9fbe644cf6d757345fAdd WeakIdentityHashMap implementation (from Apache Avro)addsrc/java/com/jogamp/common/util/WeakIdentityHashMap.javaeditLICENSE.txtsrc/java/com/jogamp/common/util/WeakIdentityHashMap.javac6fabb0ac94000afe29156f170c63080a37c034b1577751082000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWeakIdentityHashMap: Cleanup; Implement putAll(..); Make IdentityWeakReference static 2019-12-31 01:11:22 +0100c6fabb0ac94000afe29156f170c63080a37c034bWeakIdentityHashMap: Cleanup; Implement putAll(..); Make IdentityWeakReference staticeditsrc/java/com/jogamp/common/util/WeakIdentityHashMap.javasrc/java/com/jogamp/common/util/Bitfield.javasrc/java/com/jogamp/common/util/WeakIdentityHashMap.java178c7b9d40e06a04790542241912ca21d2c7b92f1577758019000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWeakIdentityHashMap: Refine capacity computation; Bitfield.Util add 'PowerOf2' functions 2019-12-31 03:06:59 +0100178c7b9d40e06a04790542241912ca21d2c7b92fWeakIdentityHashMap: Refine capacity computation; Bitfield.Util add 'PowerOf2' functionseditsrc/java/com/jogamp/common/util/WeakIdentityHashMap.javaeditsrc/java/com/jogamp/common/util/Bitfield.javasrc/java/com/jogamp/common/util/WeakIdentityHashMap.javaadd34060fde735ea932ca49fbe79e473c5a4f40b1577763218000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWeakIdentityHashMap: Always null check on weakRef.get(); IdentityWeakReference: hash is final. 2019-12-31 04:33:38 +0100add34060fde735ea932ca49fbe79e473c5a4f40bWeakIdentityHashMap: Always null check on weakRef.get(); IdentityWeakReference: hash is final.editsrc/java/com/jogamp/common/util/WeakIdentityHashMap.javamake/lib/cpptasks.jare3bc8ce349944d531c0b314ddb3f7a8946ce2a861577819175000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1417: Update ant-cpptasks to commit c45a19eadc4c697b7cc1b095692b04deb73da5ce 2019-12-31 20:06:15 +0100e3bc8ce349944d531c0b314ddb3f7a8946ce2a86Bug 1417: Update ant-cpptasks to commit c45a19eadc4c697b7cc1b095692b04deb73da5ceeditmake/lib/cpptasks.jargithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel921https://jogamp.org/chuck/job/gluegen/label=android-arm64/921/921https://jogamp.org/chuck/job/gluegen/label=linux-arm64/921/921https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/921/921https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/921/921https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/921/Started by user Sven GothelsgothelSven Gothel9168c4e3c5abe2dd2d6cdebe7de93a942075bf727628c4e3c5abe2dd2d6cdebe7de93a942075bf72762origin/master8c4e3c5abe2dd2d6cdebe7de93a942075bf727628c4e3c5abe2dd2d6cdebe7de93a942075bf72762origin/master8c4e3c5abe2dd2d6cdebe7de93a942075bf727628c4e3c5abe2dd2d6cdebe7de93a942075bf72762origin/mastergit://jogamp.org/srv/scm/gluegen.git10757testReportfalse#916575796460248gluegen #916916falsefalse916331UNSTABLE1554853686853https://jogamp.org/chuck/job/gluegen/916/androidArm64-jogamp-aarch64-sgothel-041make/build.xml8c4e3c5abe2dd2d6cdebe7de93a942075bf727621554853657000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.combuild.xml:gluegen.build.native: Place unsetting into the conditional .impl target like gluegen.build.java.impl, as the .impl may be skipped. 2019-04-10 01:47:37 +02008c4e3c5abe2dd2d6cdebe7de93a942075bf72762build.xml:gluegen.build.native: Place unsetting into the conditionaleditmake/build.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel916https://jogamp.org/chuck/job/gluegen/label=android-arm64/916/916https://jogamp.org/chuck/job/gluegen/label=linux-arm64/916/916https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/916/916https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/916/916https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/916/Started by user Sven GothelsgothelSven Gothel915b846476786a776296a5c5ab6cbfb370a4c5497aeb846476786a776296a5c5ab6cbfb370a4c5497aeorigin/masterb846476786a776296a5c5ab6cbfb370a4c5497aeb846476786a776296a5c5ab6cbfb370a4c5497aeorigin/masterb846476786a776296a5c5ab6cbfb370a4c5497aeb846476786a776296a5c5ab6cbfb370a4c5497aeorigin/mastergit://jogamp.org/srv/scm/gluegen.git00757testReportfalse#915507045460248gluegen #915915falsefalse915276SUCCESS1554783906180https://jogamp.org/chuck/job/gluegen/915/androidArm64-jogamp-aarch64-sgothel-041githttps://jogamp.org/chuck/user/sven%20gothelSven Gothel915https://jogamp.org/chuck/job/gluegen/label=android-arm64/915/915https://jogamp.org/chuck/job/gluegen/label=linux-arm64/915/915https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/915/915https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/915/915https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/915/Started by user Sven GothelsgothelSven Gothel914b846476786a776296a5c5ab6cbfb370a4c5497aeb846476786a776296a5c5ab6cbfb370a4c5497aeorigin/masterb846476786a776296a5c5ab6cbfb370a4c5497aeb846476786a776296a5c5ab6cbfb370a4c5497aeorigin/masterb846476786a776296a5c5ab6cbfb370a4c5497aeb846476786a776296a5c5ab6cbfb370a4c5497aeorigin/mastergit://jogamp.org/srv/scm/gluegen.git10756testReportfalse#914556738460248gluegen #914914falsefalse914219UNSTABLE1554696317971https://jogamp.org/chuck/job/gluegen/914/androidArm64-jogamp-aarch64-sgothel-041make/lib/gluegen-cpptasks-linux-armv6hf-ontarget.xmlmake/lib/toolchain/aarch64-linux-gnueabi/bin/ccmake/lib/gluegen-cpptasks-linux-aarch64-ontarget.xmlmake/lib/toolchain/armsf-linux-gnueabi/bin/ccmake/lib/toolchain/aarch64-linux-gnueabi/bin/stripmake/scripts/make.gluegen.all.linux-aarch64.shmake/lib/toolchain/armhf-linux-gnueabi/bin/gccmake/lib/toolchain/armhf-linux-gnueabi/bin/g++make/lib/toolchain/aarch64-linux-gnueabi/bin/objdumpmake/scripts/make.gluegen.all.linux-armv6hf.shmake/lib/toolchain/armhf-linux-gnueabi/bin/c++make/lib/toolchain/armhf-linux-gnueabi/bin/stripmake/lib/toolchain/aarch64-linux-gnueabi/bin/c++make/lib/toolchain/armhf-linux-gnueabi/bin/ccmake/lib/toolchain/aarch64-linux-gnueabi/bin/gccmake/lib/toolchain/aarch64-linux-gnueabi/bin/g++make/lib/toolchain/armsf-linux-gnueabi/bin/stripmake/lib/toolchain/armhf-linux-gnueabi/bin/objdumpmake/lib/toolchain/aarch64-linux-gnueabi/bin/ldmake/lib/gluegen-cpptasks-linux-aarch64.xmlmake/lib/toolchain/armsf-linux-gnueabi/bin/ldmake/lib/toolchain/armsf-linux-gnueabi/bin/g++make/lib/toolchain/armsf-linux-gnueabi/bin/gccmake/lib/toolchain/armsf-linux-gnueabi/bin/objdumpmake/lib/toolchain/armhf-linux-gnueabi/bin/ldmake/lib/toolchain/armsf-linux-gnueabi/bin/c++12047cae51b5a594b38c9e162f135352452c46fd1554606923000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1190: Updating crosstools and enabling aarch64 + armv6hf 'ontarget' Default is to crosscompile w/o testing, i.e. property 'isCrosscompilation' is set to 'true'. 'ontarget' includes testing, no crosscompilation. Updated crosstools links to new build of jogamp-scripting commit e6692024687685d3af725555d9bb5490d85ecc8d 2019-04-07 05:15:23 +020012047cae51b5a594b38c9e162f135352452c46fdBug 1190: Updating crosstools and enabling aarch64 + armv6hf 'ontarget'addmake/lib/gluegen-cpptasks-linux-aarch64-ontarget.xmleditmake/lib/toolchain/aarch64-linux-gnueabi/bin/lddeletemake/lib/toolchain/armsf-linux-gnueabi/bin/c++editmake/lib/gluegen-cpptasks-linux-aarch64.xmldeletemake/lib/toolchain/armsf-linux-gnueabi/bin/g++deletemake/lib/toolchain/armsf-linux-gnueabi/bin/stripeditmake/lib/toolchain/armhf-linux-gnueabi/bin/gcceditmake/lib/toolchain/armhf-linux-gnueabi/bin/stripeditmake/lib/toolchain/armhf-linux-gnueabi/bin/ldeditmake/lib/toolchain/armhf-linux-gnueabi/bin/cceditmake/lib/toolchain/armhf-linux-gnueabi/bin/g++editmake/lib/toolchain/aarch64-linux-gnueabi/bin/ccaddmake/lib/gluegen-cpptasks-linux-armv6hf-ontarget.xmldeletemake/lib/toolchain/armsf-linux-gnueabi/bin/cceditmake/lib/toolchain/aarch64-linux-gnueabi/bin/c++editmake/lib/toolchain/aarch64-linux-gnueabi/bin/stripeditmake/lib/toolchain/aarch64-linux-gnueabi/bin/objdumpdeletemake/lib/toolchain/armsf-linux-gnueabi/bin/ldeditmake/scripts/make.gluegen.all.linux-armv6hf.sheditmake/scripts/make.gluegen.all.linux-aarch64.sheditmake/lib/toolchain/aarch64-linux-gnueabi/bin/gcceditmake/lib/toolchain/aarch64-linux-gnueabi/bin/g++deletemake/lib/toolchain/armsf-linux-gnueabi/bin/gcceditmake/lib/toolchain/armhf-linux-gnueabi/bin/c++editmake/lib/toolchain/armhf-linux-gnueabi/bin/objdumpdeletemake/lib/toolchain/armsf-linux-gnueabi/bin/objdumpmake/lib/gluegen-cpptasks-linux-armv6hf-ontarget.xmlmake/scripts/make.gluegen.all.linux-armv6-cross.shmake/lib/gluegen-cpptasks-linux-armv6.xmlmake/lib/gluegen-cpptasks-linux-aarch64-ontarget.xmlmake/scripts/make.gluegen.all.linux-armv6.shmake/gluegen-cpptasks-base.xmlmake/stub_includes/platform/glibc-compat-symbols.hmake/lib/gluegen-cpptasks-linux-aarch64.xmlmake/lib/gluegen-cpptasks-linux-armv6hf.xml117565b7d8771b6c9c2144b2d1ef5a131446e0581554669277000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1190: Fix arm6hf + aarch64 gcc options, adapt glibc-compat-symbols.h - arm6hf needs the fpu to be specified, we still use the lowest armv6 hard float denominator - aarch64 shall have the -march compiler argument as well - glibc-compat-symbols.h Finally drop the glibc versioning on memcpy for both 2019-04-07 22:34:37 +0200117565b7d8771b6c9c2144b2d1ef5a131446e058Bug 1190: Fix arm6hf + aarch64 gcc options, adapt glibc-compat-symbols.hdeletemake/scripts/make.gluegen.all.linux-armv6.sheditmake/stub_includes/platform/glibc-compat-symbols.hdeletemake/lib/gluegen-cpptasks-linux-armv6.xmleditmake/lib/gluegen-cpptasks-linux-armv6hf-ontarget.xmleditmake/lib/gluegen-cpptasks-linux-aarch64.xmleditmake/lib/gluegen-cpptasks-linux-armv6hf.xmleditmake/gluegen-cpptasks-base.xmleditmake/lib/gluegen-cpptasks-linux-aarch64-ontarget.xmldeletemake/scripts/make.gluegen.all.linux-armv6-cross.shmake/lib/toolchain/armhf-linux-gnueabi/bin/ldmake/lib/toolchain/aarch64-linux-gnueabi/bin/ld7bbb0822608fa9c832588c35874ead558a4793221554686790000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1190: aarch64 + armhf ld symbolic link to actual x-tool binary of ld.bfd 2019-04-08 03:26:30 +02007bbb0822608fa9c832588c35874ead558a479322Bug 1190: aarch64 + armhf ld symbolic link to actual x-tool binary ofeditmake/lib/toolchain/armhf-linux-gnueabi/bin/ldeditmake/lib/toolchain/aarch64-linux-gnueabi/bin/ldmake/scripts/make.gluegen.all.linux-aarch64.shmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/jogamp-env.xmlmake/scripts/make.gluegen.all.linux-armv6hf.shmake/scripts/make.gluegen.all.linux-armv6hf-cross.shmake/scripts/make.gluegen.all.android-x86-cross.shmake/lib/gluegen-cpptasks-android-x86.xmlmake/scripts/make.gluegen.all.linux-aarch64-cross.shmake/scripts/make.gluegen.all.android-armv6-cross.shmake/scripts/make.gluegen.all.android-aarch64-cross.shmake/scripts/make.gluegen.all.linux-ppc64le.sh0bd5136c2df8407cea7b0dcc7fb1e62432ba18bb1554687391000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1190: Define TARGET_PLATFORM_SYSROOT TARGET_PLATFORM_USRROOT TARGET_PLATFORM_USRLIBS for crosscompilation Android Crosscompilation Usage: - TARGET_PLATFORM_ROOT -> TARGET_PLATFORM_SYSROOT General - TARGET_PLATFORM_SYSROOT Crosscompiler and system specified 'sysroot' (as in gcc --print-sysroot) - TARGET_PLATFORM_USRROOT Additional optional user headers and libraries for target - TARGET_PLATFORM_USRLIBS Actual location of target user libraries within TARGET_PLATFORM_USRROOT - TARGET_JAVA_LIBS Actual location of the Java libraries within TARGET_PLATFORM_USRROOT 2019-04-08 03:36:31 +02000bd5136c2df8407cea7b0dcc7fb1e62432ba18bbBug 1190: Define TARGET_PLATFORM_SYSROOT TARGET_PLATFORM_USRROOTeditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-x86.xmleditmake/scripts/make.gluegen.all.linux-armv6hf-cross.sheditmake/jogamp-env.xmleditmake/scripts/make.gluegen.all.linux-aarch64.sheditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/scripts/make.gluegen.all.linux-aarch64-cross.sheditmake/scripts/make.gluegen.all.android-armv6-cross.sheditmake/scripts/make.gluegen.all.android-x86-cross.sheditmake/scripts/make.gluegen.all.linux-ppc64le.sheditmake/scripts/make.gluegen.all.android-aarch64-cross.sheditmake/scripts/make.gluegen.all.linux-armv6hf.shmake/jogamp-env.xmlmake/gluegen-cpptasks-base.xmlb846476786a776296a5c5ab6cbfb370a4c5497ae1554689306000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comComplete jogamp-env.xml TARGET_* readout; Use parsed env in cpptasks-base as well 2019-04-08 04:08:26 +0200b846476786a776296a5c5ab6cbfb370a4c5497aeComplete jogamp-env.xml TARGET_* readout; Use parsed env ineditmake/jogamp-env.xmleditmake/gluegen-cpptasks-base.xmlgithttps://jogamp.org/chuck/user/sven%20gothelSven Gothel914https://jogamp.org/chuck/job/gluegen/label=android-arm64/914/914https://jogamp.org/chuck/job/gluegen/label=linux-arm64/914/914https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/914/914https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/914/914https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/914/Started by user Sven GothelsgothelSven Gothel913302599570c04bae0d96e3b20981fab1ffcaf61ae302599570c04bae0d96e3b20981fab1ffcaf61aeorigin/master302599570c04bae0d96e3b20981fab1ffcaf61ae302599570c04bae0d96e3b20981fab1ffcaf61aeorigin/master302599570c04bae0d96e3b20981fab1ffcaf61ae302599570c04bae0d96e3b20981fab1ffcaf61aeorigin/mastergit://jogamp.org/srv/scm/gluegen.git00756testReportfalse#913491594460248gluegen #913913falsefalse913134SUCCESS1554486151693https://jogamp.org/chuck/job/gluegen/913/androidArm64-jogamp-aarch64-sgothel-041make/scripts/adb-install-all-x86.shmake/scripts/adb-reinstall-all-x86.shmake/gluegen-cpptasks-base.xmlmake/scripts/make.gluegen.all.android-x86-cross.shmake/lib/gluegen-cpptasks-android-x86.xmlmake/scripts/make.gluegen.all.shsrc/java/jogamp/common/os/PlatformPropsImpl.java2ccd72b1064464ac277ccfc3951901114c439a991424107220000https://jogamp.org/chuck/user/xavier.halladexavier.halladexavier.hallade@intel.comadded android x86 support. 2015-02-16 18:20:20 +01002ccd72b1064464ac277ccfc3951901114c439a99added android x86 support.addmake/scripts/make.gluegen.all.android-x86-cross.sheditmake/gluegen-cpptasks-base.xmleditsrc/java/jogamp/common/os/PlatformPropsImpl.javaaddmake/scripts/adb-reinstall-all-x86.sheditmake/scripts/make.gluegen.all.shaddmake/lib/gluegen-cpptasks-android-x86.xmladdmake/scripts/adb-install-all-x86.shmake/gluegen-cpptasks-base.xmlmake/scripts/make.gluegen.all.linux-ppc64le.shmake/build.xmlsrc/java/jogamp/common/os/PlatformPropsImpl.java6d87df8b109f045433575cd94b22ba8d8150903a1446040072000https://jogamp.org/chuck/user/pinipinipini@debian.orgSupport architecture ppc64le (Debian ppc64el). 2015-10-28 14:47:52 +01006d87df8b109f045433575cd94b22ba8d8150903aSupport architecture ppc64le (Debian ppc64el).editmake/build.xmladdmake/scripts/make.gluegen.all.linux-ppc64le.sheditmake/gluegen-cpptasks-base.xmleditsrc/java/jogamp/common/os/PlatformPropsImpl.javadoc/manual/example6/gen.shdoc/manual/index.htmldoc/manual/example4/gen.shdoc/manual/example7/gen.shdoc/manual/example3/gen.shdoc/manual/example5/gen.shdoc/manual/example1/gen.shdoc/manual/example2/gen.shdoc/HowToBuild.htmld04ee580f3dbc4f9c6c7cd4ba2ab7cec5b38a4521448536747000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 682: Rename com.sun.gluegen -> com.jogamp.gluegen in doc/** 2015-11-26 12:19:07 +0100d04ee580f3dbc4f9c6c7cd4ba2ab7cec5b38a452Bug 682: Rename com.sun.gluegen -> com.jogamp.gluegen in doc/**editdoc/manual/example3/gen.sheditdoc/manual/example4/gen.sheditdoc/manual/example2/gen.sheditdoc/manual/index.htmleditdoc/manual/example5/gen.sheditdoc/HowToBuild.htmleditdoc/manual/example1/gen.sheditdoc/manual/example7/gen.sheditdoc/manual/example6/gen.shsrc/java/com/jogamp/common/os/AndroidVersion.javaf24a8b675a0b3d7e73870c46239792a31cf814911459959267000https://jogamp.org/chuck/user/diegoperezdiegoperezdiegoperez@google.comUse system property to detect Android 2016-04-06 17:14:27 +0100f24a8b675a0b3d7e73870c46239792a31cf81491Use system property to detect Androideditsrc/java/com/jogamp/common/os/AndroidVersion.javasrc/java/com/jogamp/common/util/IOUtil.javae7ac6b284eb3515f552cba491c43efe75f0a4eba1544538033000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdding 'jogamp.gluegen.TestTempDirExec' property, allowing to disable testing executable of temp dir This also avoids trying to unpack the test executable on Windows, which may cause a virus scanner to halt the process or otherwise cause issues. 2018-12-11 15:20:33 +0100e7ac6b284eb3515f552cba491c43efe75f0a4ebaAdding 'jogamp.gluegen.TestTempDirExec' property, allowing to disableeditsrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/make.gluegen.all.win64.bat3525af421e7b1e622599b8ca45728105aa1e61581544538110000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comlocal build windows scripts: add 7zip to path 2018-12-11 15:21:50 +01003525af421e7b1e622599b8ca45728105aa1e6158local build windows scripts: add 7zip to patheditmake/scripts/make.gluegen.all.win64.bat.classpathd915f8209ddd4083daebc139b5cdf0295f637ef41552956062000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse: Move android.jar to classpath end, avoid junit override 2019-03-19 01:41:02 +0100d915f8209ddd4083daebc139b5cdf0295f637ef4Eclipse: Move android.jar to classpath end, avoid junit overrideedit.classpathmake/scripts/runtest.shsrc/java/com/jogamp/common/util/IOUtil.java4375d2824ac6ff656df184ea0c19ab781e3524e81553394756000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219, Bug 1231: Avoid deflating test-exe on Windows using java.nio.file.Files.isExecutable(Path) Attempt to resolved virus scanner false positive detection on Windows while deflating the native code test-exe file in the temporary folder. As Julien Gouesse suggested, using Java 1.7's java.nio.file.Files.isExecutable(Path) _may_ resolve the issue, this has to be thorougly tested. This patch favors the nio's isExecutable file's ACL test over the more intrusive execution itself using a simple shell script file w/ set executable flag. Mind that previous tests allowed the shell script's execution, even if the temp folder did not allow execution of native code. We have to see how our testing results will be on this attempt. 2019-03-24 03:32:36 +01004375d2824ac6ff656df184ea0c19ab781e3524e8Bug 1219, Bug 1231: Avoid deflating test-exe on Windows usingeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/java-win64.batmake/scripts/runtest.shmake/scripts/runtest-x64.bat0c567321c6d594ec11edfd3aa848a0a634c544ef1553486643000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219, Bug 1231: Re-add executable test by execution Re-adding executable test by execution is required for 'blocker technology' like Windows's 'Software Restriction Policies (SRP)', which only gets activated by the actual execution attempt. Merely testing the file's (ACL) execution flags via NIO's isExecutable is not sufficient. Implementation first tests the file's (ACL) execution flags via NIO's isExecutable. If the NIO test was successful or not available, the actual execution test is performed. To mitigate the virus scanner's false positive, we use an executable shell script per default now, which may be overriden by the new environment 'jogamp.gluegen.UseNativeExeFile=true' Tested on GNU/Linux with one temp folder having mount options 'noexec' and on Windows using Software Restriction Policies (SRP) disallowing one temp folder. Both temp folder were first in line via environment 'java.io.tmpdir'. 2019-03-25 05:04:03 +01000c567321c6d594ec11edfd3aa848a0a634c544efBug 1219, Bug 1231: Re-add executable test by executioneditsrc/java/com/jogamp/common/util/IOUtil.javaeditmake/scripts/runtest-x64.bateditmake/scripts/java-win64.bateditmake/scripts/runtest.shdoc/HowToBuild.html179c88fcc547f965cb5fdce2b03f4faa776871ac1553696788000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUpdate HowToBuild.html Minimum supported Debian version is now Debian 9 or Stretch to minimize maintenance. Note: No other GNU/Linux version has been validated so far. 2019-03-27 15:26:28 +0100179c88fcc547f965cb5fdce2b03f4faa776871acUpdate HowToBuild.htmleditdoc/HowToBuild.htmlmake/gluegen-cpptasks-base.xmlmake/scripts/runtest.shmake/build.xmlmake/build-test.xml03bcef96e3105923ccc8c827b70b97ff0aa3464c1553905454000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1316: MacOSX: Keep *.dylib (Don't move to *.jnilib) Since Java8 (or even earlier), JRE on OSX uses *.dylib native library suffix instead of *.jnilib when automatically searching and loading them. This is not easily being recognized by JogAmp, since we explicitly name the native libraries with full path when testing with our TempJarCache. 2019-03-30 01:24:14 +010003bcef96e3105923ccc8c827b70b97ff0aa3464cBug 1316: MacOSX: Keep *.dylib (Don't move to *.jnilib)editmake/build-test.xmleditmake/gluegen-cpptasks-base.xmleditmake/build.xmleditmake/scripts/runtest.shsrc/java/com/jogamp/common/util/ReflectionUtil.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javasrc/java/com/jogamp/common/util/Bitstream.javasrc/junit/com/jogamp/common/util/BitDemoData.javaecb65c39a6902158ed824348a23dbbcb42a85f011553922494000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1366 - Use String.format((Locale)null, "..." ..) avoiding Locale output for System related Operations 2019-03-30 06:08:14 +0100ecb65c39a6902158ed824348a23dbbcb42a85f01Bug 1366 - Use String.format((Locale)null, "..." ..) avoiding Localeeditsrc/java/com/jogamp/common/util/ReflectionUtil.javaeditsrc/java/com/jogamp/common/util/Bitstream.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/junit/com/jogamp/common/util/BitDemoData.javaeditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javasrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javasrc/java/com/jogamp/common/util/cache/TempJarCache.javasrc/java/com/jogamp/common/os/Platform.javasrc/java/com/jogamp/common/util/cache/TempCacheReg.javasrc/junit/com/jogamp/common/util/TestTempJarCache.javasrc/java/com/jogamp/common/util/cache/TempFileCache.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/junit/com/jogamp/common/util/TestJarUtil.java1157b913a068167062c853b4b525954b223a55091554246029000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1367: Make TempFileCache & TempJarCache even if temp folder can't handle executables 2019-04-03 01:00:29 +02001157b913a068167062c853b4b525954b223a5509Bug 1367: Make TempFileCache & TempJarCache even if temp folder can'teditsrc/java/com/jogamp/common/util/cache/TempJarCache.javaeditsrc/junit/com/jogamp/common/util/TestJarUtil.javaeditsrc/java/com/jogamp/common/util/cache/TempFileCache.javaeditsrc/junit/com/jogamp/common/util/TestTempJarCache.javaeditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javaeditsrc/java/com/jogamp/common/util/cache/TempCacheReg.javamake/Manifest-rt-nativessrc/junit/com/jogamp/common/util/TestVersionInfo.javamake/scripts/runtest.shsrc/java/com/jogamp/common/util/JogampVersion.javasrc/java/com/jogamp/common/util/cache/TempJarCache.javamake/Manifest-android-launchermake/Manifestmake/Manifest-rt-androidmake/build.xmlsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/util/SHASum.javamake/Manifest-rt.cdcmake/Manifest-rt-altsrc/java/com/jogamp/common/GlueGenVersion.javamake/Manifest-rt00ad70b3bd7f8859c710039857aa7da17a29b3d71554264292000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1369: Source Certification Contract (SCC): Initial SHA256 fingerprint & runtime validation This change implements a strong SHA256 signature over: 1) source tree inclusive make recipe (SHA256-Source) 2) all class files (SHA256-Classes) 3) all native libraries (SHA256-Natives) 4) the class files as deployed in the jar (SHA256-Classes-this) 5) the native libraries as deployed in the jar (SHA256-Natives-this) and drops all of these in the deployed Jar file. This allows SHA256 validation of (4) + (5) at runtime and further complete validation (1), (2) and (3) offline. Full SCC would now required (1) - (3) to be placed on a server for further validation. Optionally we may use GPG <https://gnupg.org/> or PGP to validate the build entity to implement the chain of trust <https://en.wikipedia.org/wiki/Chain_of_trust> The SHA256 runtime validation is tested via: com.jogamp.common.util.TestVersionInfo 2019-04-03 06:04:52 +020000ad70b3bd7f8859c710039857aa7da17a29b3d7Bug 1369: Source Certification Contract (SCC): Initial SHA256editmake/Manifest-android-launchereditmake/Manifest-rt-alteditsrc/junit/com/jogamp/common/util/TestVersionInfo.javaeditmake/Manifest-rteditmake/Manifesteditmake/Manifest-rt-androideditmake/Manifest-rt-nativeseditmake/Manifest-rt.cdceditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/util/JogampVersion.javaeditsrc/java/com/jogamp/common/GlueGenVersion.javaeditmake/build.xmleditsrc/java/com/jogamp/common/util/IOUtil.javaaddsrc/java/com/jogamp/common/util/SHASum.javaeditsrc/java/com/jogamp/common/util/cache/TempJarCache.javamake/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/make.gluegen.all.win32.batmake/scripts/setenv-build-jogl-x86.shmake/scripts/setenv-build-jogl-x86_64.shmake/scripts/java-win32.batmake/scripts/test-win32-smb_share.bat90dc3754add8ddfec905a21dac748059c45028491554264364000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comOpenJDK8 Script Usage: Linux: Favor Debian default; Windows: Use AdoptOpenJDK8 2019-04-03 06:06:04 +020090dc3754add8ddfec905a21dac748059c4502849OpenJDK8 Script Usage: Linux: Favor Debian default; Windows: Useeditmake/scripts/test-win32-smb_share.bateditmake/scripts/make.gluegen.all.win32.bateditmake/scripts/setenv-build-jogl-x86.sheditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/java-win64.bateditmake/scripts/java-win32.bateditmake/scripts/setenv-build-jogl-x86_64.shmake/scripts/runtest.shsrc/junit/com/jogamp/common/util/TestTempJarCache.java8954b8f1d4b051908f37773521f072843b66de011554296192000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1367: TempJarCache: Fix Unit Test using Reflections 2019-04-03 14:56:32 +02008954b8f1d4b051908f37773521f072843b66de01Bug 1367: TempJarCache: Fix Unit Test using Reflectionseditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/util/TestTempJarCache.javamake/Manifest-rt-nativessrc/junit/com/jogamp/common/util/TestVersionInfo.javasrc/java/com/jogamp/common/util/SHASum.javasrc/java/com/jogamp/common/util/JogampVersion.javamake/scripts/runtest.shmake/Manifest-android-launchermake/Manifest-rt.cdcmake/Manifest-rt-altmake/Manifestmake/build.xmlmake/Manifest-rt-androidmake/Manifest-rt234bd58643e83aa7d34d752de3e98d6ae84cba3d1554319476000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1369: SCC: Hide SHA Algorithm bit size in literals of Specification Implementation currently uses 256 bit Secure Hash (SHA) algorithm, but this may change in the future. Hence only use 'SHA' in the names, not 'SHA256'. 2019-04-03 21:24:36 +0200234bd58643e83aa7d34d752de3e98d6ae84cba3dBug 1369: SCC: Hide SHA Algorithm bit size in literals of Specificationeditmake/build.xmleditmake/Manifest-rteditmake/Manifest-rt-androideditmake/Manifest-rt.cdceditmake/Manifest-rt-nativeseditmake/Manifest-rt-alteditsrc/java/com/jogamp/common/util/SHASum.javaeditmake/Manifesteditsrc/java/com/jogamp/common/util/JogampVersion.javaeditsrc/junit/com/jogamp/common/util/TestVersionInfo.javaeditmake/Manifest-android-launchereditmake/scripts/runtest.shmake/build.xml302599570c04bae0d96e3b20981fab1ffcaf61ae1554322135000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1369: SCC: Clarify & fix build dependencies in build.xml Clean 'base.compile' order w/ matching build -> package tuples, having gluegen.build.shasum after the last actual build and before packaging. - init, - android-launcher.build, - gluegen.build.java, - gluegen.build.native, - gluegen.build.shasum, - gluegen.package.java, - gluegen.package.native, - android-launcher.package Further properly utilize a 'gluegen.package.*.done' property, corresponding with the 'gluegen.build.skip.*' property. Drop 'build.javaonly' gluegen.build.native exclusion 2019-04-03 22:08:55 +0200302599570c04bae0d96e3b20981fab1ffcaf61aeBug 1369: SCC: Clarify & fix build dependencies in build.xmleditmake/build.xmlgithttps://jogamp.org/chuck/user/pinipinihttps://jogamp.org/chuck/user/xavier.halladexavier.halladehttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/diegoperezdiegoperezhttps://jogamp.org/chuck/user/sven%20gothelSven Gothel913https://jogamp.org/chuck/job/gluegen/label=android-arm64/913/913https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/913/913https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/913/913https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/913/Started by user Sven GothelsgothelSven Gothel91099b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/master99b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/master99b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/mastergit://jogamp.org/srv/scm/gluegen.git00753testReportfalse#910507259460248gluegen #910910falsefalse91032SUCCESS1544443917740https://jogamp.org/chuck/job/gluegen/910/androidArm64-jogamp-aarch64-sgothel-041git910https://jogamp.org/chuck/job/gluegen/label=android-arm64/910/910https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/910/910https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/910/910https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/910/Started by user Sven GothelsgothelSven Gothel90999b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/master99b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/master99b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/mastergit://jogamp.org/srv/scm/gluegen.git00753testReportfalse#909542108460248gluegen #909909falsefalse90918SUCCESS1544441925292https://jogamp.org/chuck/job/gluegen/909/androidArm64-jogamp-aarch64-sgothel-041githttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel909https://jogamp.org/chuck/job/gluegen/label=android-arm64/909/909https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/909/909https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/909/909https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/909/Started by an SCM change90899b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/master99b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/master99b357956e4fd516ddd051d8a0f478c47faa40b199b357956e4fd516ddd051d8a0f478c47faa40b1origin/mastergit://jogamp.org/srv/scm/gluegen.git000testReportfalse#90857365460248gluegen #908908falsefalse9081ABORTED1544422801058https://jogamp.org/chuck/job/gluegen/908/src/java/com/jogamp/common/nio/MappedByteBufferInputStream.java99b357956e4fd516ddd051d8a0f478c47faa40b11515993683000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMappedByteBufferInputStream: Add flushSlices() to release mapped slices to save mapped ByteBuffer memory Also: - fix dbgDump(..) FileChannel access, test if openend. - add DEBUG dumps on CTOR, Close and notifyLengthChangeImpl 2018-01-15 06:21:23 +010099b357956e4fd516ddd051d8a0f478c47faa40b1MappedByteBufferInputStream: Add flushSlices() to release mapped sliceseditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javagithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel903https://jogamp.org/chuck/job/gluegen/label=android-arm64/903/903https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/903/903https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/903/904https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/904/Started by an SCM change904f357ff4b1be9088c9e9cf6aa891204fc3cd4040af357ff4b1be9088c9e9cf6aa891204fc3cd4040aorigin/masterf357ff4b1be9088c9e9cf6aa891204fc3cd4040af357ff4b1be9088c9e9cf6aa891204fc3cd4040aorigin/masterf357ff4b1be9088c9e9cf6aa891204fc3cd4040af357ff4b1be9088c9e9cf6aa891204fc3cd4040aorigin/mastergit://jogamp.org/srv/scm/gluegen.git000testReportfalse#9040460248gluegen #904904falsefalse9041FAILURE1501478400418https://jogamp.org/chuck/job/gluegen/904/.gitlab-ci.yml0ba8e7f4173c04eef40ae95baca07a8c1cedfa401481407084000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comAdd GitLab CI .gitlab-ci.yml, build and test each commit on aarch64 and x86-64 linux systems. 2016-12-10 22:58:04 +01000ba8e7f4173c04eef40ae95baca07a8c1cedfa40Add GitLab CI .gitlab-ci.yml, build and test each commit on aarch64 andadd.gitlab-ci.ymlmake/scripts/make.gluegen.all.linux-aarch64.shmake/gluegen-cpptasks-base.xmlmake/build.xmlmake/lib/gluegen-cpptasks-linux-aarch64.xml00ea29eb954a29aaf2fd2adffd6677e580ab28501481410867000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1295: Add linux-aarch64 GNU/Linux AArch64 support make/build.xml: New target declare.linux.aarch64 Update target declare.linux to depend on declare.linux.aarch64 make/gluegen-cpp-tasks-base.xml: Fix aarch64 jre/lib/arm -> jre/lib/aarch64 make/lib/gluegen-cpptasks-linux-aarch64.xml: Added make/scripts/make.gluegen.all.linux-aarch64.sh: Added Tested on DragonBoard 410c running Linaro Debian Platform: LINUX / Linux 4.4.8-linaro-lt-qcom (4.4.8), aarch64 (ARM64, EABI_AARCH64), 4 cores, littleEndian true MachineDataInfo: runtimeValidated true, 32Bit false, primitive size / alignment: int8 1 / 1, int16 2 / 2 int 4 / 4, long 8 / 8 int32 4 / 4, int64 8 / 8 float 4 / 4, double 8 / 8, ldouble 16 / 16 pointer 8 / 8, page 4096 Platform: Java Version: 1.8.0_91 (1.8.0u91), VM: OpenJDK 64-Bit Server VM, Runtime: OpenJDK Runtime Environment Platform: Java Vendor: Oracle Corporation, http://java.oracle.com/, JavaSE: true, Java6: true, AWT enabled: true Signed-off-by: Xerxes Ranby <xerxes@gudinna.com> 2016-12-11 00:01:07 +010000ea29eb954a29aaf2fd2adffd6677e580ab2850Bug 1295: Add linux-aarch64 GNU/Linux AArch64 supporteditmake/build.xmladdmake/lib/gluegen-cpptasks-linux-aarch64.xmladdmake/scripts/make.gluegen.all.linux-aarch64.sheditmake/gluegen-cpptasks-base.xmlmake/lib/toolchain/aarch64-linux-gnueabi/bin/c++make/lib/toolchain/aarch64-linux-gnueabi/bin/gccmake/lib/toolchain/aarch64-linux-gnueabi/bin/g++make/lib/toolchain/aarch64-linux-gnueabi/bin/ccmake/lib/toolchain/aarch64-linux-gnueabi/bin/objdumpmake/lib/toolchain/aarch64-linux-gnueabi/bin/stripmake/scripts/make.gluegen.all.linux-aarch64-cross.shmake/lib/toolchain/aarch64-linux-gnueabi/bin/ldmake/stub_includes/platform/glibc-compat-symbols.hmake/lib/gluegen-cpptasks-linux-aarch64.xmle7db4d356f264b45d178839798b7d3d552019fc11481527928000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1295: Add linux-aarch64 GNU/Linux AArch64 crosscompile support make/lib/gluegen-cpptasks-linux-aarch64.xml: Add missing -DisLinux=true required when crosscompiling Remove -marm -mfloat-abi=hard flags unrecognisable by aarch64 crosscompile toolchain make/lib/toolchain/aarch64-linux-gnueabi/bin/*: Symlink to /usr/local/x-tools/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi-* make/scripts/make.gluegen.all.linux-aarch64-cross.sh: New crosscompile script make/stub_includes/platform/glibc-compat-symbols.h: glibc 2.17 is the first glibc version that support aarch64 however memcpy is not versioned for aarch64 Disable versioning for linux glibc/aarch64 Signed-off-by: Xerxes Rånby <xerxes@gudinna.com> 2016-12-12 08:32:08 +0100e7db4d356f264b45d178839798b7d3d552019fc1Bug 1295: Add linux-aarch64 GNU/Linux AArch64 crosscompile supportaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/objdumpaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/gcceditmake/lib/gluegen-cpptasks-linux-aarch64.xmladdmake/lib/toolchain/aarch64-linux-gnueabi/bin/g++addmake/lib/toolchain/aarch64-linux-gnueabi/bin/ldaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/c++addmake/scripts/make.gluegen.all.linux-aarch64-cross.sheditmake/stub_includes/platform/glibc-compat-symbols.haddmake/lib/toolchain/aarch64-linux-gnueabi/bin/stripaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/ccdoc/HowToBuild.html574be76b4c4a396d1de7c8ead1fcbfed1fbac1ec1487771925000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: Refine and add Debian 9 (Stretch) 2017-02-22 14:58:45 +0100574be76b4c4a396d1de7c8ead1fcbfed1fbac1ecHowToBuild: Refine and add Debian 9 (Stretch)editdoc/HowToBuild.htmlmake/scripts/runtest.shsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javasrc/java/com/jogamp/common/nio/Buffers.java6833dfa977c282a9b016ede99fdaa46eb5b064441487772005000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFactor out Cleaner access for general use (Cleaning up NIO DirectBuffer) 2017-02-22 15:00:05 +01006833dfa977c282a9b016ede99fdaa46eb5b06444Factor out Cleaner access for general use (Cleaning up NIOeditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/nio/Buffers.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothelhttps://jogamp.org/chuck/user/xerxesxerxes903https://jogamp.org/chuck/job/gluegen/label=android-arm64/903/903https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/903/903https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/903/904https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/904/Started by user Sven GothelsgothelSven Gothel9037a12c273df90f41485f16e69d9680cb08fc7672f7a12c273df90f41485f16e69d9680cb08fc7672forigin/master7a12c273df90f41485f16e69d9680cb08fc7672f7a12c273df90f41485f16e69d9680cb08fc7672forigin/master7a12c273df90f41485f16e69d9680cb08fc7672f7a12c273df90f41485f16e69d9680cb08fc7672forigin/mastergit://jogamp.org/srv/scm/gluegen.git002507testReportfalse#9031050608460248gluegen #903903falsefalse9032718SUCCESS1447706590368https://jogamp.org/chuck/job/gluegen/903/linux64-nvidia-debian7-jogamp-x32-sgothel-003src/junit/com/jogamp/gluegen/test/junit/generation/Test1p2LoadJNIAndImplLib.javasrc/java/com/jogamp/common/os/DynamicLibraryBundle.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/java/com/jogamp/common/os/DynamicLibraryBundleInfo.javasrc/junit/com/jogamp/junit/sec/Applet01.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.java2034bbfac88b7d1360f9c939e173ff758f7f47ac1447559072000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1268 - DynamicLibraryBundleInfo: Add NativeLibrary's 'searchSystemPath' and 'searchSystemPathFirst' attributes NativeLibrary can be instantiate by defining 'searchSystemPath' and 'searchSystemPathFirst' arguments, allowing to specify the system path role while looking up the library. Since NativeLibrary is utilized via DynamicLibraryBundleInfo upstream, the latter interface shall allow users to specify those attributes. 2015-11-15 04:44:32 +01002034bbfac88b7d1360f9c939e173ff758f7f47acBug 1268 - DynamicLibraryBundleInfo: Add NativeLibrary'seditsrc/java/com/jogamp/common/os/DynamicLibraryBundle.javaeditsrc/junit/com/jogamp/junit/sec/Applet01.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/java/com/jogamp/common/os/DynamicLibraryBundleInfo.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2LoadJNIAndImplLib.javaeditsrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javamake/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/make.gluegen.all.win32.batmake/scripts/java-win32.bat7a12c273df90f41485f16e69d9680cb08fc7672f1447639717000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump scripts to jre1.8.0_66 2015-11-16 03:08:37 +01007a12c273df90f41485f16e69d9680cb08fc7672fBump scripts to jre1.8.0_66editmake/scripts/make.gluegen.all.win32.bateditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/java-win32.bateditmake/scripts/java-win64.batgithttps://jogamp.org/chuck/user/sgothelSven Gothel903https://jogamp.org/chuck/job/gluegen/label=android-arm64/903/903https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/903/903https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/903/903https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/903/Started by user Sven GothelsgothelSven Gothel901acd52a1936090eee11b3220f5c75ee37763773c7acd52a1936090eee11b3220f5c75ee37763773c7origin/masteracd52a1936090eee11b3220f5c75ee37763773c7acd52a1936090eee11b3220f5c75ee37763773c7origin/masteracd52a1936090eee11b3220f5c75ee37763773c7acd52a1936090eee11b3220f5c75ee37763773c7origin/mastergit://jogamp.org/srv/scm/gluegen.git002756testReportfalse#901783144460248gluegen #901901falsefalse9012480SUCCESS1444910869066https://jogamp.org/chuck/job/gluegen/901/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xmlfc27bec0a9ee440c05a4a6889201e79f2b88391a1444452455000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.4.0-rc 2015-10-10 06:47:35 +0200fc27bec0a9ee440c05a4a6889201e79f2b88391aBump to 2.4.0-rceditmake/jogamp-env.xmlmake/lib/v2.3.2/gluegen-rt.jarmake/scripts/runtest.shsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaf829ccd1696e3b4016f11319f7b6148a8a0a2c781444629980000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comVersion Semantics Test: Bump for 2.3.2 -> 2.4.x 2015-10-12 08:06:20 +0200f829ccd1696e3b4016f11319f7b6148a8a0a2c78Version Semantics Test: Bump for 2.3.2 -> 2.4.xaddmake/lib/v2.3.2/gluegen-rt.jareditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/util/ArrayHashSet.javasrc/java/com/jogamp/common/util/IntBitfield.javasrc/java/com/jogamp/common/util/cache/TempJarCache.javasrc/java/com/jogamp/common/util/TaskBase.javasrc/java/com/jogamp/common/util/FunctionTask.javasrc/java/com/jogamp/common/util/RunnableTask.javasrc/java/com/jogamp/common/util/JarUtil.javaacd52a1936090eee11b3220f5c75ee37763773c71444910633000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRemove deprectated classes and methods 2015-10-15 14:03:53 +0200acd52a1936090eee11b3220f5c75ee37763773c7Remove deprectated classes and methodseditsrc/java/com/jogamp/common/util/cache/TempJarCache.javaeditsrc/java/com/jogamp/common/util/RunnableTask.javaeditsrc/java/com/jogamp/common/util/FunctionTask.javaeditsrc/java/com/jogamp/common/util/ArrayHashSet.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/java/com/jogamp/common/util/TaskBase.javaeditsrc/java/com/jogamp/common/util/JarUtil.javadeletesrc/java/com/jogamp/common/util/IntBitfield.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel901https://jogamp.org/chuck/job/gluegen/label=android-arm64/901/901https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/901/901https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/901/901https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/901/Started by user Sven GothelsgothelSven Gothel900cc1e9bc698b7f11097c1e114027e53121552f280cc1e9bc698b7f11097c1e114027e53121552f280origin/mastercc1e9bc698b7f11097c1e114027e53121552f280cc1e9bc698b7f11097c1e114027e53121552f280origin/mastercc1e9bc698b7f11097c1e114027e53121552f280cc1e9bc698b7f11097c1e114027e53121552f280origin/mastergit://jogamp.org/srv/scm/gluegen.git102745testReportfalsev2.3.2#900718350460248gluegen #900900falsetrue9002300UNSTABLE1444364340087https://jogamp.org/chuck/job/gluegen/900/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xmlcc1e9bc698b7f11097c1e114027e53121552f2801444364308000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.3.2 Release 2015-10-09 06:18:28 +0200cc1e9bc698b7f11097c1e114027e53121552f280Bump to 2.3.2 Releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel900https://jogamp.org/chuck/job/gluegen/label=android-arm64/900/900https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/900/900https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/900/900https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/900/Started by an SCM change899444af35253943cfa5bad88ff752981c311689e49444af35253943cfa5bad88ff752981c311689e49origin/master444af35253943cfa5bad88ff752981c311689e49444af35253943cfa5bad88ff752981c311689e49origin/master444af35253943cfa5bad88ff752981c311689e49444af35253943cfa5bad88ff752981c311689e49origin/mastergit://jogamp.org/srv/scm/gluegen.git002745testReportfalse#899671076460248gluegen #899899falsefalse8992088SUCCESS1444211855240https://jogamp.org/chuck/job/gluegen/899/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/lib/semantic-versioning/semver-src.zipmake/lib/semantic-versioning/semver.jarmake/lib/semantic-versioning/VERSION444af35253943cfa5bad88ff752981c311689e491444207419000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump semver to commit 4f50b49c955f2bde2bb7eb4c7493206ec6bb1f2f + Fix JLS Binary Compat: Moving methods and fields upwards for classes _and_ interfaces is OK + + - We shall also travers all interfaces upwards + - All methods and fields found upwards must be tested for compatibility as well! + + Further: + - Add class-name to Field- and MethodInfo via new intermediate AbstractMemberInfo. + The class-name is used to have allow differs to find a class move upwards! + + - Pretty printing of class move binary-compatible change 2015-10-07 10:43:39 +0200444af35253943cfa5bad88ff752981c311689e49Bump semver to commit 4f50b49c955f2bde2bb7eb4c7493206ec6bb1f2feditmake/lib/semantic-versioning/VERSIONeditmake/lib/semantic-versioning/semver-src.zipeditmake/lib/semantic-versioning/semver.jargithttps://jogamp.org/chuck/user/sgothelSven Gothel899https://jogamp.org/chuck/job/gluegen/label=android-arm64/899/899https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/899/899https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/899/899https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/899/Started by user Sven GothelsgothelSven Gothel8981d5d6391f2da4cc200340448df88651cf26f1f661d5d6391f2da4cc200340448df88651cf26f1f66origin/master1d5d6391f2da4cc200340448df88651cf26f1f661d5d6391f2da4cc200340448df88651cf26f1f66origin/master1d5d6391f2da4cc200340448df88651cf26f1f661d5d6391f2da4cc200340448df88651cf26f1f66origin/mastergit://jogamp.org/srv/scm/gluegen.git002745testReportfalse#898702839460248gluegen #898898falsefalse8981867SUCCESS1443896267966https://jogamp.org/chuck/job/gluegen/898/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/ExceptionUtils.javasrc/java/com/jogamp/common/net/Uri.javasrc/java/com/jogamp/common/util/SourcedInterruptedException.java1d5d6391f2da4cc200340448df88651cf26f1f661443895903000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRefine new API methods: ExceptionUtils, Uri (Add @since, refine arguments and API doc) 2015-10-03 20:11:43 +02001d5d6391f2da4cc200340448df88651cf26f1f66Refine new API methods: ExceptionUtils, Uri (Add @since, refineeditsrc/java/com/jogamp/common/net/Uri.javaeditsrc/java/com/jogamp/common/ExceptionUtils.javaeditsrc/java/com/jogamp/common/util/SourcedInterruptedException.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel898https://jogamp.org/chuck/job/gluegen/label=android-arm64/898/898https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/898/898https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/898/898https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/898/Started by user Sven GothelsgothelSven Gothel897026875dd5256051d4e3504f1d9b01f7ce2bb70ff026875dd5256051d4e3504f1d9b01f7ce2bb70fforigin/master026875dd5256051d4e3504f1d9b01f7ce2bb70ff026875dd5256051d4e3504f1d9b01f7ce2bb70fforigin/master026875dd5256051d4e3504f1d9b01f7ce2bb70ff026875dd5256051d4e3504f1d9b01f7ce2bb70fforigin/mastergit://jogamp.org/srv/scm/gluegen.git002745testReportfalse#897804344460248gluegen #897897falsefalse8971745SUCCESS1443867010157https://jogamp.org/chuck/job/gluegen/897/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/util/TestIOUtil01.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javad78bb1be0a6290cb94918b21865a023c018250481443838206000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1237 - Clarify IOUtil.getResource(..) for better efficiency, i.e. allow caller to skip relative futile lookup IOUtil.getResource(..) and IOUtil.ClassResources, needs more clarity. ClassLoader shall be passed explicitly next to the optional relative context Class instance. This allows better efficiency, i.e. caller can pass ClassLoader but skip a possible relative lookup, if not existing. 2015-10-03 04:10:06 +0200d78bb1be0a6290cb94918b21865a023c01825048Bug 1237 - Clarify IOUtil.getResource(..) for better efficiency, i.e.editsrc/junit/com/jogamp/common/util/TestIOUtil01.javaeditsrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javaeditsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/net/AssetURLContext.java48cef027ec727d3e03b78f577208d1ce10b705d11443839312000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1237: Minor Cleanup: AssetURLContext and IOUtil.getResource(..) DEBUG Messages 2015-10-03 04:28:32 +020048cef027ec727d3e03b78f577208d1ce10b705d1Bug 1237: Minor Cleanup: AssetURLContext and IOUtil.getResource(..)editsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/java/com/jogamp/common/net/AssetURLContext.javasrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/runtest.shsrc/java/com/jogamp/common/ExceptionUtils.javasrc/java/com/jogamp/common/net/Uri.javasrc/junit/com/jogamp/common/net/TestUri01.javasrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/java/com/jogamp/common/util/JarUtil.javasrc/java/com/jogamp/common/util/SourcedInterruptedException.java026875dd5256051d4e3504f1d9b01f7ce2bb70ff1443865442000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1243 - Fix IOUtil.cleanPathString(..) special case ; Allow IOUtil and Uri to handle relative path Fix IOUtil.cleanPathString(..) special case: Special case '/a/./../b' -> '/b' requires to resolve './' before '../'. Allow IOUtil and Uri to handle relative path: - IOUtil.getParentOf(..) - IOUtil.cleanPathString(..) Handle cases: 'a/./../b' -> 'b' '.././b' -> '../b' - Uri: Handle null scheme 2015-10-03 11:44:02 +0200026875dd5256051d4e3504f1d9b01f7ce2bb70ffBug 1243 - Fix IOUtil.cleanPathString(..) special case ; Allow IOUtileditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/util/JarUtil.javaeditsrc/java/com/jogamp/common/net/Uri.javaeditsrc/java/com/jogamp/common/util/SourcedInterruptedException.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/junit/com/jogamp/common/util/TestIOUtil01.javaeditsrc/junit/com/jogamp/common/net/TestUri01.javaeditsrc/java/com/jogamp/common/ExceptionUtils.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel897https://jogamp.org/chuck/job/gluegen/label=android-arm64/897/897https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/897/897https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/897/897https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/897/Started by user Sven GothelsgothelSven Gothel896a1009b450e68c083c0d3c56129602697a4f674d9a1009b450e68c083c0d3c56129602697a4f674d9origin/mastera1009b450e68c083c0d3c56129602697a4f674d9a1009b450e68c083c0d3c56129602697a4f674d9origin/mastera1009b450e68c083c0d3c56129602697a4f674d9a1009b450e68c083c0d3c56129602697a4f674d9origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#896625858460248gluegen #896896falsefalse8961237SUCCESS1443167110730https://jogamp.org/chuck/job/gluegen/896/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/util/CustomDeflate.javasrc/java/com/jogamp/common/util/bin/exe-windows-i386.deflsrc/java/com/jogamp/common/util/CustomCompress.javasrc/java/com/jogamp/common/util/bin/exe-windows-x86_64.defla1009b450e68c083c0d3c56129602697a4f674d91443112263000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1231: Usability of CustomCompress API incl zip-level; Replace test-exe deflated files w/ zip-level 9 2015-09-24 18:31:03 +0200a1009b450e68c083c0d3c56129602697a4f674d9Bug 1231: Usability of CustomCompress API incl zip-level; Replaceeditsrc/java/com/jogamp/common/util/bin/exe-windows-i386.defleditsrc/junit/com/jogamp/common/util/CustomDeflate.javaeditsrc/java/com/jogamp/common/util/CustomCompress.javaeditsrc/java/com/jogamp/common/util/bin/exe-windows-x86_64.deflgithttps://jogamp.org/chuck/user/sgothelSven Gothel896https://jogamp.org/chuck/job/gluegen/label=android-arm64/896/896https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/896/896https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/896/896https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/896/Started by user Sven GothelsgothelSven Gothel8950e723ff0866919cbc4ddfc3d7773c3485252eba30e723ff0866919cbc4ddfc3d7773c3485252eba3origin/master0e723ff0866919cbc4ddfc3d7773c3485252eba30e723ff0866919cbc4ddfc3d7773c3485252eba3origin/master0e723ff0866919cbc4ddfc3d7773c3485252eba30e723ff0866919cbc4ddfc3d7773c3485252eba3origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#895822383460248gluegen #895895falsefalse8951131SUCCESS1443099807409https://jogamp.org/chuck/job/gluegen/895/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.javasrc/native/tinype/make.shsrc/native/tinype/tiny2.csrc/java/com/jogamp/common/util/CustomCompress.javasrc/junit/com/jogamp/common/util/CustomDeflate.javasrc/native/tinype/tiny.csrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.316b.gzsrc/junit/com/jogamp/common/util/CustomInflate.javasrc/java/com/jogamp/common/util/bin/exe-windows-i386.deflsrc/java/com/jogamp/common/util/bin/exe-windows-x86_64.defl0e723ff0866919cbc4ddfc3d7773c3485252eba31443099566000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1231: Add Windows x86_64 test executable ; Use 'WinMain' for Windows test-executable ; Use CustomInflate for Performance - Use 'WinMain' for Windows test-executable This may have little difference than using std 'main' entry - Add Windows x86_64 test executable Since the reporter claims the test executable works well on Windows i386, maybe utilizing a x86_64 test executable on same VM fixes the issue - Use CustomInflate for Performance - Skips GZIP header - Adds own custom header [magic, deflate-size, inflate-size] - Own header allows simplified I/O read and deflation 2015-09-24 14:59:26 +02000e723ff0866919cbc4ddfc3d7773c3485252eba3Bug 1231: Add Windows x86_64 test executable ; Use 'WinMain' for Windowsaddsrc/java/com/jogamp/common/util/bin/exe-windows-i386.defldeletesrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.316b.gzaddsrc/java/com/jogamp/common/util/CustomCompress.javaaddsrc/junit/com/jogamp/common/util/CustomInflate.javaeditsrc/native/tinype/tiny2.ceditsrc/java/com/jogamp/common/util/IOUtil.javaaddsrc/java/com/jogamp/common/util/bin/exe-windows-x86_64.defleditsrc/native/tinype/make.sheditsrc/native/tinype/tiny.caddsrc/junit/com/jogamp/common/util/CustomDeflate.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel895https://jogamp.org/chuck/job/gluegen/label=android-arm64/895/895https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/895/895https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/895/895https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/895/Started by user Sven GothelsgothelSven Gothel894be9614d73e69159fbba5b458a4450b5df3a6613bbe9614d73e69159fbba5b458a4450b5df3a6613borigin/masterbe9614d73e69159fbba5b458a4450b5df3a6613bbe9614d73e69159fbba5b458a4450b5df3a6613borigin/masterbe9614d73e69159fbba5b458a4450b5df3a6613bbe9614d73e69159fbba5b458a4450b5df3a6613borigin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#894664477460248gluegen #894894falsefalse8941026SUCCESS1442983555311https://jogamp.org/chuck/job/gluegen/894/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.javamake/scripts/java-win64.batbe9614d73e69159fbba5b458a4450b5df3a6613b1442983348000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219: IOUtil.testDirExe: Issue Process.destroy() in finalize block to ensure launched native exe process terminates. See Bug 1219 comment 58: It seems that on some Windows platforms the launched native process using our test-exe keeps running even though we issued Process.waitFor(). Hence we issue Process.destroy() in the finalize block to at least attempt to terminate it. Note: The Process implementation is platform specific and may vary. 2015-09-23 06:42:28 +0200be9614d73e69159fbba5b458a4450b5df3a6613bBug 1219: IOUtil.testDirExe: Issue Process.destroy() in finalize blockeditsrc/java/com/jogamp/common/util/IOUtil.javaeditmake/scripts/java-win64.batgithttps://jogamp.org/chuck/user/sgothelSven Gothel894https://jogamp.org/chuck/job/gluegen/label=android-arm64/894/894https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/894/894https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/894/894https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/894/Started by user Sven GothelsgothelSven Gothel8930f08d051974d840ca898d7d0b888a679e4dee2480f08d051974d840ca898d7d0b888a679e4dee248origin/master0f08d051974d840ca898d7d0b888a679e4dee2480f08d051974d840ca898d7d0b888a679e4dee248origin/master0f08d051974d840ca898d7d0b888a679e4dee2480f08d051974d840ca898d7d0b888a679e4dee248origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#893971291460248gluegen #893893falsefalse893904SUCCESS1442876073835https://jogamp.org/chuck/job/gluegen/893/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.java0f08d051974d840ca898d7d0b888a679e4dee2481442876041000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219: IOUtil.testDirExe: Disable 'existingExe' DEBUG_EXE feature by hardcoded 'DEBUG_EXE_EXISTING_FILE = false' This is required for security, i.e. not allowing to execute any pre-existing files! In case we need to manually debug this issue, we can re-enable it manually and locally, but not in public builds! 2015-09-22 00:54:01 +02000f08d051974d840ca898d7d0b888a679e4dee248Bug 1219: IOUtil.testDirExe: Disable 'existingExe' DEBUG_EXE feature byeditsrc/java/com/jogamp/common/util/IOUtil.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel893https://jogamp.org/chuck/job/gluegen/label=android-arm64/893/893https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/893/893https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/893/893https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/893/Started by user Sven GothelsgothelSven Gothel8926c45f1dbeb875790056aef424b91b54440790a2b6c45f1dbeb875790056aef424b91b54440790a2borigin/master6c45f1dbeb875790056aef424b91b54440790a2b6c45f1dbeb875790056aef424b91b54440790a2borigin/master6c45f1dbeb875790056aef424b91b54440790a2b6c45f1dbeb875790056aef424b91b54440790a2borigin/mastergit://jogamp.org/srv/scm/gluegen.git102734testReportfalse#892906255460248gluegen #892892falsefalse892799UNSTABLE1442813465909https://jogamp.org/chuck/job/gluegen/892/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.javasrc/native/tinype/make.shdoc/Implementation/IOUtil.testDirExe/win32-noexec-ntfs_attribs_deny_execute_file.logmake/scripts/runtest.shsrc/native/tinype/tiny2.csrc/junit/com/jogamp/common/util/TestPlatform01.javadoc/Implementation/IOUtil.testDirExe/linux-noexec-file_attribs.logdoc/Implementation/IOUtil.testDirExe/win32-noexec-SoftwareRestrictionPolicies.logdoc/Implementation/IOUtil.testDirExe/win32-noexec-invalid_executable.loga8db919494e934f768ee8adb0d0bad75fa390e621442813213000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219: IOUtil.testDirExe: Satisfactory when executed, more debug options IOUtil.testDirExe(): - Satisfactory when executed Failure to execute produce an IOException right at ProcessBuilder.start(). Hence we can allow an unexpected process exit value, since we only want to learn whether executable files are allowed. - More debug options DEBUG_EXE: 'jogamp.debug.IOUtil.Exe' DEBUG_EXE_NOSTREAM: 'jogamp.debug.IOUtil.Exe.NoStream' - if DEBUG_EXE - a pre-existing 'jogamp_exe_tst'+<SUFFIX> will be used as-is. - the test-exe will not be deleted - StreamMonitor is being used to dump stdout/stderr if !DEBUG_EXE_NOSTREAM. 2015-09-21 07:26:53 +0200a8db919494e934f768ee8adb0d0bad75fa390e62Bug 1219: IOUtil.testDirExe: Satisfactory when executed, more debugadddoc/Implementation/IOUtil.testDirExe/win32-noexec-ntfs_attribs_deny_execute_file.logadddoc/Implementation/IOUtil.testDirExe/win32-noexec-invalid_executable.logadddoc/Implementation/IOUtil.testDirExe/linux-noexec-file_attribs.logeditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/util/TestPlatform01.javaadddoc/Implementation/IOUtil.testDirExe/win32-noexec-SoftwareRestrictionPolicies.logeditsrc/native/tinype/make.sheditsrc/java/com/jogamp/common/util/IOUtil.javaaddsrc/native/tinype/tiny2.csrc/java/com/jogamp/common/util/IOUtil.java6c45f1dbeb875790056aef424b91b54440790a2b1442813403000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219: Fix IOUtil.StreamMonitor EOS handling - Make StreamMonitor a daemon thread, i.e. not hindering VM from exit - Earmark each InputStream's EOS state and only attempt to readByte if !eos - End loop and hence the thread if all InputStream have reached EOS. - Don't close the InputStream. Closing the InputStream is expected to be done by the owner, otherwise no EOS could even be reached! - Flush the output PrintStream at thread exit 2015-09-21 07:30:03 +02006c45f1dbeb875790056aef424b91b54440790a2bBug 1219: Fix IOUtil.StreamMonitor EOS handlingeditsrc/java/com/jogamp/common/util/IOUtil.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel892https://jogamp.org/chuck/job/gluegen/label=android-arm64/892/892https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/892/892https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/892/892https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/892/Started by user Sven GothelsgothelSven Gothel891b17ba1462cc4bb96be52f378dedafb50a3bc13f1b17ba1462cc4bb96be52f378dedafb50a3bc13f1origin/masterb17ba1462cc4bb96be52f378dedafb50a3bc13f1b17ba1462cc4bb96be52f378dedafb50a3bc13f1origin/masterb17ba1462cc4bb96be52f378dedafb50a3bc13f1b17ba1462cc4bb96be52f378dedafb50a3bc13f1origin/mastergit://jogamp.org/srv/scm/gluegen.git102734testReportfalse#891624573460248gluegen #891891falsefalse891694UNSTABLE1442691304870https://jogamp.org/chuck/job/gluegen/891/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.javasrc/native/tinype/make.shsrc/native/tinype/tiny.exesrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.305b.gzsrc/native/tinype/tiny.csrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.316b.gzsrc/native/tinype/tiny.exe.gzsrc/native/tinype/make.batb17ba1462cc4bb96be52f378dedafb50a3bc13f11442691138000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219: Use Win32 API for test PE exe, not console Previous test PE exe, commit 0ebc5398fa20d23214a37dc4930a1fa1617293c7, was a console exe. A console exe opens a new console window if not being launched from one. New test PE exe is produced w/ '-mwindows', i.e. for Win32 API w/o a console. 2015-09-19 21:32:18 +0200b17ba1462cc4bb96be52f378dedafb50a3bc13f1Bug 1219: Use Win32 API for test PE exe, not consoledeletesrc/native/tinype/tiny.exe.gzeditsrc/java/com/jogamp/common/util/IOUtil.javaaddsrc/native/tinype/make.shdeletesrc/native/tinype/tiny.exedeletesrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.305b.gzeditsrc/native/tinype/tiny.cdeletesrc/native/tinype/make.bataddsrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.316b.gzgithttps://jogamp.org/chuck/user/sgothelSven Gothel891https://jogamp.org/chuck/job/gluegen/label=android-arm64/891/891https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/891/891https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/891/891https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/891/Started by user Sven GothelsgothelSven Gothel8900ebc5398fa20d23214a37dc4930a1fa1617293c70ebc5398fa20d23214a37dc4930a1fa1617293c7origin/master0ebc5398fa20d23214a37dc4930a1fa1617293c70ebc5398fa20d23214a37dc4930a1fa1617293c7origin/master0ebc5398fa20d23214a37dc4930a1fa1617293c70ebc5398fa20d23214a37dc4930a1fa1617293c7origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#890704555460248gluegen #890890falsefalse890589SUCCESS1442635046476https://jogamp.org/chuck/job/gluegen/890/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.javasrc/native/tinype/tiny.exemake/scripts/java-win64.batmake/scripts/runtest-x32.batmake/scripts/runtest.shmake/scripts/runtest-x64.batsrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.305b.gzsrc/native/tinype/tiny.cmake/scripts/java-win32.batsrc/native/tinype/tiny.exe.gzsrc/java/com/jogamp/common/util/bin/exe-windows-i586-268b.binsrc/native/tinype/make.bat0ebc5398fa20d23214a37dc4930a1fa1617293c71442634989000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1219: Sporadic failure to determine 'executable temp base directory' on Windows using 'exe-windows-i586-268b.bin' (Fix attempt #1) Replacing the tiny 268 byte sized 'exe-windows-i586-268b.bin' PE file w/ a regular 2048 byte sized PE file 'exe-windows-i386-2048b.bin'. File is produced via: c:\mingw\bin\gcc -nodefaultlibs -nostdlib -s -Os -o tiny.exe tiny.c Adding the 305 byte sized gzipped version 'exe-windows-i386-2048b.bin.305b.gz' to the gluegen-rt jar file to reduce the payload for non Windows platforms. Adding special property 'jogamp.debug.IOUtil.Exe' to debug testing the exe file, enable via '-Djogamp.debug.IOUtil.Exe'. Passes here on all Windows machines, however, the prev. one worked here as well. 2015-09-19 05:56:29 +02000ebc5398fa20d23214a37dc4930a1fa1617293c7Bug 1219: Sporadic failure to determine 'executable temp base directory'editmake/scripts/java-win32.batdeletesrc/java/com/jogamp/common/util/bin/exe-windows-i586-268b.binaddsrc/native/tinype/tiny.exeaddsrc/native/tinype/tiny.caddsrc/native/tinype/tiny.exe.gzeditmake/scripts/runtest-x32.bataddsrc/java/com/jogamp/common/util/bin/exe-windows-i386-2048b.bin.305b.gzaddsrc/native/tinype/make.bateditsrc/java/com/jogamp/common/util/IOUtil.javaeditmake/scripts/java-win64.bateditmake/scripts/runtest-x64.bateditmake/scripts/runtest.shgithttps://jogamp.org/chuck/user/sgothelSven Gothel890https://jogamp.org/chuck/job/gluegen/label=android-arm64/890/890https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/890/890https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/890/890https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/890/Started by user Sven GothelsgothelSven Gothel8897187046a1ddac65aec195de935df1d5bc9d8e67c7187046a1ddac65aec195de935df1d5bc9d8e67corigin/master7187046a1ddac65aec195de935df1d5bc9d8e67c7187046a1ddac65aec195de935df1d5bc9d8e67corigin/master7187046a1ddac65aec195de935df1d5bc9d8e67c7187046a1ddac65aec195de935df1d5bc9d8e67corigin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#889923829460248gluegen #889889falsefalse889474SUCCESS1442567609939https://jogamp.org/chuck/job/gluegen/889/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/jogamp/android/launcher/LauncherTempFileCache.java7187046a1ddac65aec195de935df1d5bc9d8e67c1442567494000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix Android LauncherTempFileCache: Cannot use gluegen-rt dependencies GlueGen'w runtime dependency com.jogamp.common.util.InterruptSource was introduced in commit 1c4e2d3ea379fe6578dfb84e10f22729b71b1ae5 but the launcher loads the same .. 2015-09-18 11:11:34 +02007187046a1ddac65aec195de935df1d5bc9d8e67cFix Android LauncherTempFileCache: Cannot use gluegen-rt dependencieseditsrc/java/jogamp/android/launcher/LauncherTempFileCache.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel889https://jogamp.org/chuck/job/gluegen/label=android-arm64/889/889https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/889/889https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/889/889https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/889/Started by user Sven GothelsgothelSven Gothel8883e40d97a9a7a60e746b3703d2c7d3f4884159a523e40d97a9a7a60e746b3703d2c7d3f4884159a52origin/master3e40d97a9a7a60e746b3703d2c7d3f4884159a523e40d97a9a7a60e746b3703d2c7d3f4884159a52origin/master3e40d97a9a7a60e746b3703d2c7d3f4884159a523e40d97a9a7a60e746b3703d2c7d3f4884159a52origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#888781754460248gluegen #888888falsefalse888242SUCCESS1442296653797https://jogamp.org/chuck/job/gluegen/888/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/jogamp/common/util/locks/RecursiveLockImpl01CompleteFair.javasrc/java/jogamp/common/util/locks/RecursiveThreadGroupLockImpl01Unfairish.javadb7ce1c9c271edf6dc08db9f920adc93df9b2bb01441420973000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1213 - RecursiveThreadGroupLockImpl01Unfairish.unlock() always interrupts original-owner, even if not waiting at unlock() RecursiveThreadGroupLockImpl01Unfairish.unlock(): An interrupt() is always issued from group members on the original owner. This shall only happen, if the original owner is waiting within unlock() for all group members to be unlocked. This extra interrupt causes side-effects, see Bug 1211. Only issue the interrupt to wake-up the original owner iff waiting within unlock! +++ RecursiveLockImpl01CompleteFair: Issue 'Thread.interrupted()' to clear a slipped interrupt call after while-loop. 2015-09-05 04:42:53 +0200db7ce1c9c271edf6dc08db9f920adc93df9b2bb0Bug 1213 - RecursiveThreadGroupLockImpl01Unfairish.unlock() alwayseditsrc/java/jogamp/common/util/locks/RecursiveLockImpl01CompleteFair.javaeditsrc/java/jogamp/common/util/locks/RecursiveThreadGroupLockImpl01Unfairish.javasrc/junit/com/jogamp/junit/util/SingletonJunitCase.javab94d0c4e2ac4b29ffe6bb832d37b83c6d32497fe1441422014000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSingletonJunitCase: Allow explicit disabling singletonLock to allow manual test cases to run concurrently 2015-09-05 05:00:14 +0200b94d0c4e2ac4b29ffe6bb832d37b83c6d32497feSingletonJunitCase: Allow explicit disabling singletonLock to alloweditsrc/junit/com/jogamp/junit/util/SingletonJunitCase.javasrc/java/com/jogamp/common/util/InterruptedRuntimeException.javasrc/java/com/jogamp/common/util/InterruptSource.javasrc/java/com/jogamp/common/JogampRuntimeException.javasrc/java/com/jogamp/common/ExceptionUtils.javasrc/java/com/jogamp/common/util/SourcedInterruptedException.java47495cd2a228534578731346c8baf2b190bcd2411442070832000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1213: Expose InterruptSource, SourcedInterruptedException and InterruptedRuntimeException - InterruptSource interface declares methods to retrieve the source of a Thread.interrupt() call. - InterruptSource.Thread implements InterruptSource, i.e. allows code running within such thread to learn about the interrupt source (stack trace). - SourcedInterruptedException is a InterruptedException specialization which may include the source of the causing Thread.interrupt() call. - InterruptedRuntimeException An unchecked RuntimeException propagating an InterruptedException where handling of the latter is not desired. The causing InterruptedException may be of type SourcedInterruptedException, hence a detailed stack trace analysis might be possible. 2015-09-12 17:13:52 +020047495cd2a228534578731346c8baf2b190bcd241Bug 1213: Expose InterruptSource, SourcedInterruptedException andaddsrc/java/com/jogamp/common/util/InterruptSource.javaaddsrc/java/com/jogamp/common/util/InterruptedRuntimeException.javaeditsrc/java/com/jogamp/common/ExceptionUtils.javaaddsrc/java/com/jogamp/common/util/SourcedInterruptedException.javaeditsrc/java/com/jogamp/common/JogampRuntimeException.javasrc/java/com/jogamp/common/util/FunctionTask.javasrc/java/com/jogamp/common/util/TaskBase.javasrc/java/com/jogamp/common/util/RunnableTask.java2b97ed6d238a0db1e2cf7bdf15349e90eaaa8dfc1442071771000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1213 (related): Fix TaskBase, RunnableTask and FunctionTask implementation and semantics - TaskBase - requires 'volatile boolean isExecuted' for atomic query of same semantics - fix isInQueue(): condition was reverse in regars to 'isExecuted' - expose 'Thread getExecutionThread()' as learned within run() method. - RunnableTask - deprecate: 'static invoke(final boolean waitUntilDone, final Runnable runnable)', since it's nonsense, use runnable.run() instead. - 'static RunnableTask invokeOnNewThread(..)' - uses InterruptSource.Thread - Persistent-Wait - Cancelable using InterruptedRuntimeException - FunctionTask - deprecate 'static <U,V> U invoke(final boolean waitUntilDone, final Function<U,V> func, final V... args)', since it's nonsense, use func.eval(args) instead. - 'static FunctionTask<U,V> invokeOnNewThread(..)' - uses InterruptSource.Thread - Persistent-Wait - Cancelable using InterruptedRuntimeException 2015-09-12 17:29:31 +02002b97ed6d238a0db1e2cf7bdf15349e90eaaa8dfcBug 1213 (related): Fix TaskBase, RunnableTask and FunctionTaskeditsrc/java/com/jogamp/common/util/FunctionTask.javaeditsrc/java/com/jogamp/common/util/TaskBase.javaeditsrc/java/com/jogamp/common/util/RunnableTask.javasrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket01.javamake/scripts/runtest.shsrc/java/com/jogamp/common/util/TaskBase.javasrc/java/jogamp/common/util/locks/SingletonInstanceServerSocket.javasrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket00.javasrc/java/com/jogamp/common/util/InterruptSource.javasrc/java/jogamp/android/launcher/LauncherTempFileCache.javasrc/java/jogamp/common/util/locks/RecursiveLockImpl01CompleteFair.javasrc/java/com/jogamp/common/util/FunctionTask.javasrc/java/com/jogamp/common/util/cache/TempFileCache.javasrc/java/com/jogamp/common/util/RunnableTask.javasrc/java/com/jogamp/common/util/SourcedInterruptedException.java1c4e2d3ea379fe6578dfb84e10f22729b71b1ae51442286734000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1213: Refine changes .. comments and API - Use InterruptSource.Thread.create(..), while reducing InterruptSource.Thread ctors to 3 variants. - Use InterruptSource.Thread instead of java.lang.Thread where possible - Use SourcedInterruptedException where possible - SingletonInstanceServerSocket: start(), stop() and run() - Persistent-Wait and Cancelable - Add @since 2.3.2 2015-09-15 05:12:14 +02001c4e2d3ea379fe6578dfb84e10f22729b71b1ae5Bug 1213: Refine changes .. comments and APIeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket01.javaeditsrc/java/com/jogamp/common/util/FunctionTask.javaeditsrc/java/com/jogamp/common/util/TaskBase.javaeditsrc/java/com/jogamp/common/util/RunnableTask.javaeditsrc/java/jogamp/android/launcher/LauncherTempFileCache.javaeditsrc/java/jogamp/common/util/locks/RecursiveLockImpl01CompleteFair.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/util/InterruptSource.javaeditsrc/java/jogamp/common/util/locks/SingletonInstanceServerSocket.javaeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket00.javaeditsrc/java/com/jogamp/common/util/SourcedInterruptedException.javaeditsrc/java/com/jogamp/common/util/cache/TempFileCache.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/jogamp/android/launcher/MainLauncher.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javasrc/junit/com/jogamp/common/util/TestRunnableTask01.javasrc/java/jogamp/common/util/locks/SingletonInstanceServerSocket.javasrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket00.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javasrc/java/jogamp/common/util/locks/SingletonInstanceFileLock.java3e40d97a9a7a60e746b3703d2c7d3f4884159a521442291795000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1213: Use InterruptSource.Thread 2015-09-15 06:36:35 +02003e40d97a9a7a60e746b3703d2c7d3f4884159a52Bug 1213: Use InterruptSource.Threadeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/junit/com/jogamp/common/util/TestRunnableTask01.javaeditsrc/java/jogamp/common/util/locks/SingletonInstanceFileLock.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javaeditsrc/java/jogamp/android/launcher/MainLauncher.javaeditsrc/java/jogamp/common/util/locks/SingletonInstanceServerSocket.javaeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket00.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel888https://jogamp.org/chuck/job/gluegen/label=android-arm64/888/888https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/888/888https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/888/888https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/888/Started by user Sven GothelsgothelSven Gothel8876cfca260ed7e901223f8f675d060a88a518cf7d16cfca260ed7e901223f8f675d060a88a518cf7d1origin/master6cfca260ed7e901223f8f675d060a88a518cf7d16cfca260ed7e901223f8f675d060a88a518cf7d1origin/master6cfca260ed7e901223f8f675d060a88a518cf7d16cfca260ed7e901223f8f675d060a88a518cf7d1origin/mastergit://jogamp.org/srv/scm/gluegen.git102734testReportfalse#887680104460248gluegen #887887falsefalse88762UNSTABLE1441151220127https://jogamp.org/chuck/job/gluegen/887/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/make.gluegen.all.win32.batmake/scripts/java-win32.batmake/scripts/test-win32-smb_share.bat6cfca260ed7e901223f8f675d060a88a518cf7d11441143406000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWindows Scripts: Bump JVM to 1.8.0_60 2015-09-01 23:36:46 +02006cfca260ed7e901223f8f675d060a88a518cf7d1Windows Scripts: Bump JVM to 1.8.0_60editmake/scripts/make.gluegen.all.win64.bateditmake/scripts/java-win64.bateditmake/scripts/java-win32.bateditmake/scripts/make.gluegen.all.win32.bateditmake/scripts/test-win32-smb_share.batgithttps://jogamp.org/chuck/user/sgothelSven Gothel887https://jogamp.org/chuck/job/gluegen/label=android-arm64/887/887https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/887/887https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/887/887https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/887/Started by user Sven GothelsgothelSven Gothel886426cec646d49ed1fe56611d18aaf4594c9edea53426cec646d49ed1fe56611d18aaf4594c9edea53origin/master426cec646d49ed1fe56611d18aaf4594c9edea53426cec646d49ed1fe56611d18aaf4594c9edea53origin/master426cec646d49ed1fe56611d18aaf4594c9edea53426cec646d49ed1fe56611d18aaf4594c9edea53origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#886646289460248gluegen #8862015-08-29_21-03-58falsefalse886-1SUCCESS1440875038000https://jogamp.org/chuck/job/gluegen/886/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/jogamp/common/util/locks/RecursiveThreadGroupLockImpl01Unfairish.java426cec646d49ed1fe56611d18aaf4594c9edea531440867752000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRecursiveThreadGroupLockImpl01Unfairish: Add toString() in IllegalArgumentException exceptions 2015-08-29T19:02:32+0200426cec646d49ed1fe56611d18aaf4594c9edea53RecursiveThreadGroupLockImpl01Unfairish: Add toString() ineditsrc/java/jogamp/common/util/locks/RecursiveThreadGroupLockImpl01Unfairish.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel886https://jogamp.org/chuck/job/gluegen/label=android-arm64/886/886https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/886/886https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/886/886https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/886/Started by user Sven GothelsgothelSven Gothel885b4ad01b53421a58ccfe7028a520cf3e06d6b6742b4ad01b53421a58ccfe7028a520cf3e06d6b6742origin/masterb4ad01b53421a58ccfe7028a520cf3e06d6b6742b4ad01b53421a58ccfe7028a520cf3e06d6b6742origin/masterb4ad01b53421a58ccfe7028a520cf3e06d6b6742b4ad01b53421a58ccfe7028a520cf3e06d6b6742origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#885703472460248gluegen #8852015-08-19_06-09-05falsefalse885-1SUCCESS1439957345000https://jogamp.org/chuck/job/gluegen/885/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/jvm/JNILibLoaderBase.java73bb0ada4c77ef86d37747532f4807e0ec0ab51d1439885545000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1145: JNILibLoaderBase.addNativeJarLibsImpl: Proper order: #1 single-slim-jar, #2 fat-jar, #3 Classpath + TAG.class We shall attempt the official recommendation of deployment first (single-slim-jar) not wasting time trying a 'nativeLibraryPath' lookup within the classpath. 2015-08-18T10:12:25+020073bb0ada4c77ef86d37747532f4807e0ec0ab51dBug 1145: JNILibLoaderBase.addNativeJarLibsImpl: Proper order: #1editsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javamake/scripts/runtest.shsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javab4ad01b53421a58ccfe7028a520cf3e06d6b67421439885610000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1145, Bug 1172: Add performance counter for native-jar lookup: Property 'jogamp.debug.JNILibLoader.Perf' 2015-08-18T10:13:30+0200b4ad01b53421a58ccfe7028a520cf3e06d6b6742Bug 1145, Bug 1172: Add performance counter for native-jar lookup:editmake/scripts/runtest.sheditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel885https://jogamp.org/chuck/job/gluegen/label=android-arm64/885/885https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/885/885https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/885/885https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/885/Started by user Sven GothelsgothelSven Gothel88441d89263109d20dbcfcc7a642c88a290b4877b5f41d89263109d20dbcfcc7a642c88a290b4877b5forigin/master41d89263109d20dbcfcc7a642c88a290b4877b5f41d89263109d20dbcfcc7a642c88a290b4877b5forigin/master41d89263109d20dbcfcc7a642c88a290b4877b5f41d89263109d20dbcfcc7a642c88a290b4877b5forigin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#884767023460248gluegen #8842015-08-18_04-58-27falsefalse884-1SUCCESS1439866707000https://jogamp.org/chuck/job/gluegen/884/win64-nvgtx460-win7-jogamp-x32-sgothel-010git884https://jogamp.org/chuck/job/gluegen/label=android-arm64/884/884https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/884/884https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/884/884https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/884/Started by user Sven GothelsgothelSven Gothel88341d89263109d20dbcfcc7a642c88a290b4877b5f41d89263109d20dbcfcc7a642c88a290b4877b5forigin/master41d89263109d20dbcfcc7a642c88a290b4877b5f41d89263109d20dbcfcc7a642c88a290b4877b5forigin/master41d89263109d20dbcfcc7a642c88a290b4877b5f41d89263109d20dbcfcc7a642c88a290b4877b5forigin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#883683443460248gluegen #8832015-08-18_04-01-06falsefalse883-1SUCCESS1439863266000https://jogamp.org/chuck/job/gluegen/883/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/gluegen-cpptasks-base.xml3f73bbbd44721cc666e4d3505fcf163490636ba81439367672000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1172: Use the same in-jar folder structure for native jars as the fat-jar 2015-08-12T10:21:12+02003f73bbbd44721cc666e4d3505fcf163490636ba8Bug 1172: Use the same in-jar folder structure for native jars as theeditmake/gluegen-cpptasks-base.xmlsrc/java/com/jogamp/common/os/NativeLibrary.javabf4d8786cb732d86db333b43020ecf0af27f60bf1439376986000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1145: Fix cc1 NativeLibrary: Add current working directory + natives/os-arch/ + library names Fixes Bug 1145 cc1 when using an unpacked fat-jar 2015-08-12T12:56:26+0200bf4d8786cb732d86db333b43020ecf0af27f60bfBug 1145: Fix cc1 NativeLibrary: Add current working directory +editsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javasrc/junit/com/jogamp/common/os/TestElfReader01.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/jogamp/common/os/PlatformPropsImpl.javad12e4d4ea279998b27457691038e709879dcaca61439390325000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1194: NativeLibrary: Remove dangerous search paths using the JRE extension mechanism NativeLibrary: API change: Removed searchSystemPathFirst argument to the open and enumerateLibraryPaths methods. Removed the generic sun.boot.library.path system path and the MacOS specific Frameworks paths from enumerateLibraryPaths. JNILibLoaderBase, PlatformPropsImpl & TestElfReader01: Updated to handle the NativeLibrary API change. This change will prevent JogAmp modules to pickup and load unsupported and old SUN JOGL 1 natives that may have been deployed with the JRE. 2015-08-12T16:38:45+0200d12e4d4ea279998b27457691038e709879dcaca6Bug 1194: NativeLibrary: Remove dangerous search paths using the JREeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javaeditsrc/junit/com/jogamp/common/os/TestElfReader01.javasrc/junit/com/jogamp/common/os/TestElfReader01.javamake/scripts/runtest.shsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/jogamp/common/os/PlatformPropsImpl.java6557eedd0f0ec98d743c762a698bb028e88a9e161439849731000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1194: Reinstate system-lib search for NativeLibrary.open(..) and PlatformPropsImpl.findSysLib(..). This patch partially reverts of commit d12e4d4ea279998b27457691038e709879dcaca6. NativeLibrary.open(..) requires search of system libraries, since it loads the actual 'tool library' for which we generate the JNI binding. The 'tool library' is preferably the system wide installed version, e.g. libGL.so etc. PlatformPropsImpl.findSysLib(..) also requires finding system libraries as needed for PlatformPropsImpl.queryElfFile(..), i.e. using libjava.so etc. Only the JNI 'glue library', glueing java calls to the 'tool library', shall not use the system wide library search since we shall only use JogAmp provided instances here. This patch also reinstates binary compatibility w/ prev. GlueGen JARs since NativeLibrary.enumerateLibraryPath(..) is public. +++ Further more 'NativeLibrary.enumerateLibraryPath(..)' now adds OSX system framework search _before_ the user path in case 'searchSystemPath && searchSystemPathFirst'. Original code always added this search to the end, which does not match the intended behavior (-> bug). 2015-08-18T00:15:31+02006557eedd0f0ec98d743c762a698bb028e88a9e16Bug 1194: Reinstate system-lib search for NativeLibrary.open(..) andeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/os/TestElfReader01.javasrc/java/com/jogamp/common/util/JogampVersion.java32f09a5894ce3b157d5439df83703fa6f5336ff41439851849000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1145: Fix cc2: Null versions reported using the fat-jar (JogampVersion) In case we run fat-jar file, the package name is 'com.jogamp' and all entries are based upon GlueGen. JogampVersion will fall back trying to find a fat-jar Manifest in case a null Manifest is being passed. 2015-08-18T00:50:49+020032f09a5894ce3b157d5439df83703fa6f5336ff4Bug 1145: Fix cc2: Null versions reported using the fat-jareditsrc/java/com/jogamp/common/util/JogampVersion.javamake/scripts/runtest.shsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.java41d89263109d20dbcfcc7a642c88a290b4877b5f1439854258000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1172: TempJarCache: Only copy native library files from 'natives/os.and.arch', reducing JAR search. Since all native libraries are now contained within 'natives/os.and.arch', we don't need to search the whole JAR file anymore but simply can copy the content of the defined folder - if existing. 2015-08-18T01:30:58+020041d89263109d20dbcfcc7a642c88a290b4877b5fBug 1172: TempJarCache: Only copy native library files fromeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javagithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel883https://jogamp.org/chuck/job/gluegen/label=android-arm64/883/883https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/883/883https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/883/883https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/883/Started by an SCM change882961e021ea528aea89129cab4289df4406b24e8b1961e021ea528aea89129cab4289df4406b24e8b1origin/master961e021ea528aea89129cab4289df4406b24e8b1961e021ea528aea89129cab4289df4406b24e8b1origin/master961e021ea528aea89129cab4289df4406b24e8b1961e021ea528aea89129cab4289df4406b24e8b1origin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#882810134460248gluegen #8822015-08-10_16-20-00falsefalse882-1SUCCESS1439216400000https://jogamp.org/chuck/job/gluegen/882/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/util/TestBitfield00.java961e021ea528aea89129cab4289df4406b24e8b11438943768000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBitfield Unit Test: Add 3bit test-data; Add testing 'untouched' other bits of put32/get32 2015-08-07T12:36:08+0200961e021ea528aea89129cab4289df4406b24e8b1Bitfield Unit Test: Add 3bit test-data; Add testing 'untouched' othereditsrc/junit/com/jogamp/common/util/TestBitfield00.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel882https://jogamp.org/chuck/job/gluegen/label=android-arm64/882/882https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/882/882https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/882/882https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/882/Started by user Sven GothelsgothelSven Gothel881df51fbae035f266869963116bf83f2ab45ae6fecdf51fbae035f266869963116bf83f2ab45ae6fecorigin/masterdf51fbae035f266869963116bf83f2ab45ae6fecdf51fbae035f266869963116bf83f2ab45ae6fecorigin/masterdf51fbae035f266869963116bf83f2ab45ae6fecdf51fbae035f266869963116bf83f2ab45ae6fecorigin/mastergit://jogamp.org/srv/scm/gluegen.git102734testReportfalse#881679483460248gluegen #8812015-08-05_16-49-23falsefalse881-1UNSTABLE1438786163000https://jogamp.org/chuck/job/gluegen/881/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/os/DynamicLibraryBundle.javadf51fbae035f266869963116bf83f2ab45ae6fec1438778576000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDynamicLibraryBundle.toolDynamicLookupFunction(..): DEBUG: Show 'toolGetProcAddressHandle' (Bug 1062) Show 'toolGetProcAddressHandle' in DEBUG mode in DynamicLibraryBundle.toolDynamicLookupFunction(..), allowing to validate source of symbols. 2015-08-05T14:42:56+0200df51fbae035f266869963116bf83f2ab45ae6fecDynamicLibraryBundle.toolDynamicLookupFunction(..): DEBUG: Showeditsrc/java/com/jogamp/common/os/DynamicLibraryBundle.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel881https://jogamp.org/chuck/job/gluegen/label=android-arm64/881/881https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/881/881https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/881/881https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/881/Started by user Sven GothelsgothelSven Gothel880fb970d92bc737afe34e23a0667b1737c6b105fdefb970d92bc737afe34e23a0667b1737c6b105fdeorigin/masterfb970d92bc737afe34e23a0667b1737c6b105fdefb970d92bc737afe34e23a0667b1737c6b105fdeorigin/masterfb970d92bc737afe34e23a0667b1737c6b105fdefb970d92bc737afe34e23a0667b1737c6b105fdeorigin/mastergit://jogamp.org/srv/scm/gluegen.git002734testReportfalse#880780835460248gluegen #8802015-08-02_02-50-15falsefalse880-1SUCCESS1438476615000https://jogamp.org/chuck/job/gluegen/880/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/util/TestBitstream00.javasrc/junit/com/jogamp/common/util/TestBitstream02.javasrc/junit/com/jogamp/common/util/TestBitstream01.javasrc/junit/com/jogamp/common/util/BitstreamData.javasrc/junit/com/jogamp/common/util/TestBitstream04.javasrc/junit/com/jogamp/common/util/BitDemoData.javasrc/junit/com/jogamp/common/util/TestBitstream03.java805800e9b02acf54a6cc5a04ce94c9b465c42f431438459476000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBitfield: Reuse [BitstreamData -> BitDemoData] for unit tests 2015-08-01T22:04:36+0200805800e9b02acf54a6cc5a04ce94c9b465c42f43Bitfield: Reuse [BitstreamData -> BitDemoData] for unit testsdeletesrc/junit/com/jogamp/common/util/BitstreamData.javaeditsrc/junit/com/jogamp/common/util/TestBitstream00.javaeditsrc/junit/com/jogamp/common/util/TestBitstream02.javaaddsrc/junit/com/jogamp/common/util/BitDemoData.javaeditsrc/junit/com/jogamp/common/util/TestBitstream01.javaeditsrc/junit/com/jogamp/common/util/TestBitstream03.javaeditsrc/junit/com/jogamp/common/util/TestBitstream04.javasrc/java/jogamp/common/util/Int32ArrayBitfield.javasrc/java/com/jogamp/common/util/Bitfield.javasrc/java/com/jogamp/common/util/IntBitfield.javamake/scripts/runtest.shsrc/java/jogamp/common/util/Int32Bitfield.javasrc/java/jogamp/common/util/SyncedBitfield.javasrc/junit/com/jogamp/common/util/TestBitfield00.java047e9adaf2a5f51f7acfa194a744c99b6bfadaea1438463541000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBitfield: Refine API method names, add clearField(boolean), fix put32(..) and bitCount(), add unit test (passed) 2015-08-01T23:12:21+0200047e9adaf2a5f51f7acfa194a744c99b6bfadaeaBitfield: Refine API method names, add clearField(boolean), fixeditsrc/java/jogamp/common/util/Int32Bitfield.javaeditmake/scripts/runtest.sheditsrc/java/jogamp/common/util/SyncedBitfield.javaeditsrc/java/jogamp/common/util/Int32ArrayBitfield.javaeditsrc/java/com/jogamp/common/util/Bitfield.javaeditsrc/java/com/jogamp/common/util/IntBitfield.javaaddsrc/junit/com/jogamp/common/util/TestBitfield00.javasrc/java/com/jogamp/common/util/IntBitfield.java8342d3bdbe2e14ad44dfc708e00daf721dae6a581438463628000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIntBitfield: Fix units calculation ( +7 -> +31 for ceiling, using 32bits per unit) 2015-08-01T23:13:48+02008342d3bdbe2e14ad44dfc708e00daf721dae6a58IntBitfield: Fix units calculation ( +7 -> +31 for ceiling, using 32bitseditsrc/java/com/jogamp/common/util/IntBitfield.javasrc/java/jogamp/common/util/SyncedBitfield.java74c25e4f1ee32686229c4032671b94022269d33b1438463921000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSyncedBitfield.clearField: Must be synchronized 2015-08-01T23:18:41+020074c25e4f1ee32686229c4032671b94022269d33bSyncedBitfield.clearField: Must be synchronizededitsrc/java/jogamp/common/util/SyncedBitfield.javasrc/junit/com/jogamp/common/util/TestBitfield00.javabea171a16539b16b493acc9cc0e102985e2939a61438464149000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTest Bitfield: Validate Bitfield.copy(..) return value 2015-08-01T23:22:29+0200bea171a16539b16b493acc9cc0e102985e2939a6Test Bitfield: Validate Bitfield.copy(..) return valueeditsrc/junit/com/jogamp/common/util/TestBitfield00.javasrc/java/jogamp/common/util/Int32ArrayBitfield.javasrc/java/com/jogamp/common/util/Bitfield.javasrc/java/jogamp/common/util/SyncedBitfield.javasrc/junit/com/jogamp/common/util/TestBitfield00.javasrc/java/jogamp/common/util/Int32Bitfield.javafb970d92bc737afe34e23a0667b1737c6b105fde1438466988000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix Bitfield.put(..): Return previous value 2015-08-02T00:09:48+0200fb970d92bc737afe34e23a0667b1737c6b105fdeFix Bitfield.put(..): Return previous valueeditsrc/junit/com/jogamp/common/util/TestBitfield00.javaeditsrc/java/jogamp/common/util/Int32ArrayBitfield.javaeditsrc/java/com/jogamp/common/util/Bitfield.javaeditsrc/java/jogamp/common/util/Int32Bitfield.javaeditsrc/java/jogamp/common/util/SyncedBitfield.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel880https://jogamp.org/chuck/job/gluegen/label=android-arm64/880/880https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/880/880https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/880/880https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/880/Started by an SCM change878c0f38b3f8d862d8ce38c36ad7459494a11d833e3c0f38b3f8d862d8ce38c36ad7459494a11d833e3origin/masterc0f38b3f8d862d8ce38c36ad7459494a11d833e3c0f38b3f8d862d8ce38c36ad7459494a11d833e3origin/masterc0f38b3f8d862d8ce38c36ad7459494a11d833e3c0f38b3f8d862d8ce38c36ad7459494a11d833e3origin/mastergit://jogamp.org/srv/scm/gluegen.git002657testReportfalse#878680857460248gluegen #8782015-07-31_05-20-00falsefalse878-1SUCCESS1438312800000https://jogamp.org/chuck/job/gluegen/878/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/jogamp/common/util/Int32ArrayBitfield.javasrc/java/com/jogamp/common/util/Bitfield.javasrc/java/jogamp/common/util/SyncedBitfield.javasrc/java/jogamp/common/util/Int32Bitfield.javac0f38b3f8d862d8ce38c36ad7459494a11d833e31438304106000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBitfield: Refine impl. complete get/put 32bit, add copy*(..), add synchronized delegation; TODO: Unit tests. 2015-07-31T02:55:06+0200c0f38b3f8d862d8ce38c36ad7459494a11d833e3Bitfield: Refine impl. complete get/put 32bit, add copy*(..), addeditsrc/java/com/jogamp/common/util/Bitfield.javaeditsrc/java/jogamp/common/util/Int32Bitfield.javaeditsrc/java/jogamp/common/util/Int32ArrayBitfield.javaaddsrc/java/jogamp/common/util/SyncedBitfield.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel878https://jogamp.org/chuck/job/gluegen/label=android-arm64/878/878https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/878/878https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/878/878https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/878/Started by an SCM change8776296e71c438c45efa5e952b77245dd8c4a3afbbb6296e71c438c45efa5e952b77245dd8c4a3afbbborigin/master6296e71c438c45efa5e952b77245dd8c4a3afbbb6296e71c438c45efa5e952b77245dd8c4a3afbbborigin/master6296e71c438c45efa5e952b77245dd8c4a3afbbb6296e71c438c45efa5e952b77245dd8c4a3afbbborigin/mastergit://jogamp.org/srv/scm/gluegen.git002657testReportfalse#877754711460248gluegen #8772015-07-30_03-20-00falsefalse877-1SUCCESS1438219200000https://jogamp.org/chuck/job/gluegen/877/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/jogamp/common/util/Int32ArrayBitfield.javasrc/java/com/jogamp/common/util/Bitfield.javasrc/java/com/jogamp/common/util/IntBitfield.javasrc/java/jogamp/common/util/Int32Bitfield.javae241034942725b7a189cb6186fd331d9defde7bc1438210238000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIntroduce Bitfield interface w/ Int32 and Int32Array impl. deprecating IntBitfield IntBitfield's 64bit bit-size is exceeding its use-case, making it less efficient and complicated. Bitfield offers a fast path implementation for 32 bits as well as a int[] implementation. TODO: 32 bit Unaligned putInt32(..) and getInt32(..), currently throwing UnsupportedOperationException for int[] impl. 2015-07-30T00:50:38+0200e241034942725b7a189cb6186fd331d9defde7bcIntroduce Bitfield interface w/ Int32 and Int32Array impl. deprecatingaddsrc/java/com/jogamp/common/util/Bitfield.javaaddsrc/java/jogamp/common/util/Int32ArrayBitfield.javaaddsrc/java/jogamp/common/util/Int32Bitfield.javaeditsrc/java/com/jogamp/common/util/IntBitfield.javasrc/java/jogamp/common/util/Int32ArrayBitfield.javasrc/java/jogamp/common/util/Int32Bitfield.javasrc/java/com/jogamp/common/util/Bitfield.java0caa9474833a224060b9e4deefb7e0b171a8f2731438210439000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBitfield: Use IndexOutOfBoundsException instead of ArrayIndexOutOfBoundsException 2015-07-30T00:53:59+02000caa9474833a224060b9e4deefb7e0b171a8f273Bitfield: Use IndexOutOfBoundsException instead ofeditsrc/java/jogamp/common/util/Int32ArrayBitfield.javaeditsrc/java/jogamp/common/util/Int32Bitfield.javaeditsrc/java/com/jogamp/common/util/Bitfield.javasrc/java/com/jogamp/common/util/Bitfield.java6296e71c438c45efa5e952b77245dd8c4a3afbbb1438210815000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBitfield: @since 2.3.2 .. 2015-07-30T01:00:15+02006296e71c438c45efa5e952b77245dd8c4a3afbbbBitfield: @since 2.3.2 ..editsrc/java/com/jogamp/common/util/Bitfield.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel877https://jogamp.org/chuck/job/gluegen/label=android-arm64/877/877https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/877/877https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/877/877https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/877/Started by user Sven GothelsgothelSven Gothel876cb2c86e887d1ae8a29eab5e3967b6ec99d853218cb2c86e887d1ae8a29eab5e3967b6ec99d853218origin/mastercb2c86e887d1ae8a29eab5e3967b6ec99d853218cb2c86e887d1ae8a29eab5e3967b6ec99d853218origin/mastercb2c86e887d1ae8a29eab5e3967b6ec99d853218cb2c86e887d1ae8a29eab5e3967b6ec99d853218origin/mastergit://jogamp.org/srv/scm/gluegen.git102657testReportfalse#876678249460248gluegen #8762015-07-29_10-58-23falsefalse876-1UNSTABLE1438160303000https://jogamp.org/chuck/job/gluegen/876/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-fat.mfmake/jogamp-fat-test.mfcb2c86e887d1ae8a29eab5e3967b6ec99d8532181438148234000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1145 - Fat Jar: Use 'Main-Class' for default launch of useful info/demos 2015-07-29T07:37:14+0200cb2c86e887d1ae8a29eab5e3967b6ec99d853218Bug 1145 - Fat Jar: Use 'Main-Class' for default launch of usefuleditmake/jogamp-fat.mfeditmake/jogamp-fat-test.mfgithttps://jogamp.org/chuck/user/sgothelSven Gothel876https://jogamp.org/chuck/job/gluegen/label=android-arm64/876/876https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/876/876https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/876/876https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/876/Started by user Sven GothelsgothelSven Gothel8750240a71c56c1108da6863a2bb34e971ac6a4e0610240a71c56c1108da6863a2bb34e971ac6a4e061origin/master0240a71c56c1108da6863a2bb34e971ac6a4e0610240a71c56c1108da6863a2bb34e971ac6a4e061origin/master0240a71c56c1108da6863a2bb34e971ac6a4e0610240a71c56c1108da6863a2bb34e971ac6a4e061origin/mastergit://jogamp.org/srv/scm/gluegen.git102657testReportfalse#875687641460248gluegen #8752015-07-29_04-20-17falsefalse875-1UNSTABLE1438136417000https://jogamp.org/chuck/job/gluegen/875/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-fat.mfmake/build.xmlmake/jogamp-fat-test.mf0240a71c56c1108da6863a2bb34e971ac6a4e0611438128529000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1145 - Provide JogAmp Big Fat Jars and Fat 7z Archive New distributed files in 'dist' subfolder for producing fat files via jogamp-scripting: dist/jogamp-fat.mf dist/jogamp-test-fat.mf dist/junit.jar 2015-07-29T02:08:49+02000240a71c56c1108da6863a2bb34e971ac6a4e061Bug 1145 - Provide JogAmp Big Fat Jars and Fat 7z Archiveeditmake/build.xmladdmake/jogamp-fat.mfaddmake/jogamp-fat-test.mfgithttps://jogamp.org/chuck/user/sgothelSven Gothel875https://jogamp.org/chuck/job/gluegen/label=android-arm64/875/875https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/875/875https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/875/875https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/875/Started by user Sven GothelsgothelSven Gothel874b0582c8a8268032b48b0e78e4db4a4abeb41a94eb0582c8a8268032b48b0e78e4db4a4abeb41a94eorigin/masterb0582c8a8268032b48b0e78e4db4a4abeb41a94eb0582c8a8268032b48b0e78e4db4a4abeb41a94eorigin/masterb0582c8a8268032b48b0e78e4db4a4abeb41a94eb0582c8a8268032b48b0e78e4db4a4abeb41a94eorigin/mastergit://jogamp.org/srv/scm/gluegen.git002657testReportfalse#874618696460248gluegen #8742015-07-28_00-46-34falsefalse874-1SUCCESS1438037194000https://jogamp.org/chuck/job/gluegen/874/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/jogamp/common/os/PlatformPropsImpl.javab0582c8a8268032b48b0e78e4db4a4abeb41a94e1437985028000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comPlatformPropsImpl: Add static final Version18 and Version19 VersionNumber 2015-07-27T10:17:08+0200b0582c8a8268032b48b0e78e4db4a4abeb41a94ePlatformPropsImpl: Add static final Version18 and Version19editsrc/java/jogamp/common/os/PlatformPropsImpl.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel874https://jogamp.org/chuck/job/gluegen/label=android-arm64/874/874https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/874/874https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/874/874https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/874/Started by user Sven GothelsgothelSven Gothel873c7edf7debd03ac688fca32d91b4f98f21de2a7afc7edf7debd03ac688fca32d91b4f98f21de2a7aforigin/masterc7edf7debd03ac688fca32d91b4f98f21de2a7afc7edf7debd03ac688fca32d91b4f98f21de2a7aforigin/masterc7edf7debd03ac688fca32d91b4f98f21de2a7afc7edf7debd03ac688fca32d91b4f98f21de2a7aforigin/mastergit://jogamp.org/srv/scm/gluegen.git002657testReportfalse#873677893460248gluegen #8732015-07-25_00-02-28falsefalse873-1SUCCESS1437775348000https://jogamp.org/chuck/job/gluegen/873/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/nio/BuffersTest.javac7edf7debd03ac688fca32d91b4f98f21de2a7af1437763819000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1180: Refine BuffersTest: Add assertion for remaining() 2015-07-24T20:50:19+0200c7edf7debd03ac688fca32d91b4f98f21de2a7afBug 1180: Refine BuffersTest: Add assertion for remaining()editsrc/junit/com/jogamp/common/nio/BuffersTest.javagithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel873https://jogamp.org/chuck/job/gluegen/label=android-arm64/873/873https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/873/873https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/873/873https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/873/Started by user Sven GothelsgothelSven Gothel871c7ecc12a3b9281360e2121f02e9985be3b680f7fc7ecc12a3b9281360e2121f02e9985be3b680f7forigin/masterc7ecc12a3b9281360e2121f02e9985be3b680f7fc7ecc12a3b9281360e2121f02e9985be3b680f7forigin/masterc7ecc12a3b9281360e2121f02e9985be3b680f7fc7ecc12a3b9281360e2121f02e9985be3b680f7forigin/mastergit://jogamp.org/srv/scm/gluegen.git202657testReportfalse#871606621460248gluegen #8712015-07-24_22-00-19falsefalse871-1UNSTABLE1437768019000https://jogamp.org/chuck/job/gluegen/871/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/nio/BuffersTest.javace9187bbbf62389fc7897a87f36952cdd23674f61437750722000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBUG1180 BuffersTest: Verify positionLimitCapacityAfterArrayAllocation Signed-off-by: Xerxes RÃ¥nby <xerxes@gudinna.com> 2015-07-24T17:12:02+0200ce9187bbbf62389fc7897a87f36952cdd23674f6BUG1180 BuffersTest: Verify positionLimitCapacityAfterArrayAllocationeditsrc/junit/com/jogamp/common/nio/BuffersTest.javasrc/junit/com/jogamp/common/nio/BuffersTest.javamake/scripts/runtest.shc7ecc12a3b9281360e2121f02e9985be3b680f7f1437752134000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1180 BuffersTest: Refine test case a bit, add static main for standalone tests 2015-07-24T17:35:34+0200c7ecc12a3b9281360e2121f02e9985be3b680f7fBug 1180 BuffersTest: Refine test case a bit, add static main foreditsrc/junit/com/jogamp/common/nio/BuffersTest.javaeditmake/scripts/runtest.shgithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel871https://jogamp.org/chuck/job/gluegen/label=android-arm64/871/871https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/871/871https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/871/871https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/871/Started by user Sven GothelsgothelSven Gothel870abb11fd8123637b2dcad93a56cc02cd8fc928a5cabb11fd8123637b2dcad93a56cc02cd8fc928a5corigin/masterabb11fd8123637b2dcad93a56cc02cd8fc928a5cabb11fd8123637b2dcad93a56cc02cd8fc928a5corigin/masterabb11fd8123637b2dcad93a56cc02cd8fc928a5cabb11fd8123637b2dcad93a56cc02cd8fc928a5corigin/mastergit://jogamp.org/srv/scm/gluegen.git102646testReportfalse#870624263460248gluegen #8702015-07-24_07-13-15falsefalse870-1UNSTABLE1437714795000https://jogamp.org/chuck/job/gluegen/870/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/doc/javadoc/stylesheet.cssdaf14669243b195c94352089574a4e03d641c1cf1437330282000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjavadoc stylesheet.css: Refine list visual, i.e. top/bottom margin and less indentation. 2015-07-19T20:24:42+0200daf14669243b195c94352089574a4e03d641c1cfjavadoc stylesheet.css: Refine list visual, i.e. top/bottom margin andeditmake/doc/javadoc/stylesheet.cssmake/doc/javadoc/stylesheet.cssabb11fd8123637b2dcad93a56cc02cd8fc928a5c1437331156000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comjavadoc stylesheet.css: Refine list visual, i.e. font size 76 -> 80%, line-height 1.2 (default) -> 1.4 2015-07-19T20:39:16+0200abb11fd8123637b2dcad93a56cc02cd8fc928a5cjavadoc stylesheet.css: Refine list visual, i.e. font size 76 -> 80%,editmake/doc/javadoc/stylesheet.cssgithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel870https://jogamp.org/chuck/job/gluegen/label=android-arm64/870/870https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/870/870https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/870/870https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/870/Started by user Sven GothelsgothelSven Gothel869ad064d8dd94f44093fe196edd4a2dfb6c3a0a8faad064d8dd94f44093fe196edd4a2dfb6c3a0a8faorigin/masterad064d8dd94f44093fe196edd4a2dfb6c3a0a8faad064d8dd94f44093fe196edd4a2dfb6c3a0a8faorigin/masterad064d8dd94f44093fe196edd4a2dfb6c3a0a8faad064d8dd94f44093fe196edd4a2dfb6c3a0a8faorigin/mastergit://jogamp.org/srv/scm/gluegen.git102646testReportfalse#869985391460248gluegen #8692015-07-19_01-23-59falsefalse869-1UNSTABLE1437261839000https://jogamp.org/chuck/job/gluegen/869/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/doc/javadoc/stylesheet.css708a163e333e9e7786c1828d028c8ca10b584f471437239112000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comjavadoc/stylesheet.css: Fix font size of nested bullet lists. Fonts became too small to read. Signed-off-by: Xerxes RÃ¥nby <xerxes@gudinna.com> 2015-07-18T19:05:12+0200708a163e333e9e7786c1828d028c8ca10b584f47javadoc/stylesheet.css: Fix font size of nested bullet lists.editmake/doc/javadoc/stylesheet.cssmake/gluegen-cpptasks-base.xmlmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/lib/gluegen-cpptasks-linux-armv6.xmlmake/lib/gluegen-cpptasks-linux-armv6hf.xmlad064d8dd94f44093fe196edd4a2dfb6c3a0a8fa1437254502000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGCC Linker Config: Add '-static-libstdc++' in case libstdc++ is being linked Linking libstdc++ dynamically might cause issues on platforms where a huge variation of named library exists - or none even is installed. 2015-07-18T23:21:42+0200ad064d8dd94f44093fe196edd4a2dfb6c3a0a8faGCC Linker Config: Add '-static-libstdc++' in case libstdc++ is beingeditmake/lib/gluegen-cpptasks-linux-armv6.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-linux-armv6hf.xmleditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/gluegen-cpptasks-base.xmlgithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel869https://jogamp.org/chuck/job/gluegen/label=android-arm64/869/869https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/869/869https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/869/869https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/869/Started by user Sven GothelsgothelSven Gothel868a3701528aa4be01924c983ce74e2efeaba0e58bca3701528aa4be01924c983ce74e2efeaba0e58bcorigin/mastera3701528aa4be01924c983ce74e2efeaba0e58bca3701528aa4be01924c983ce74e2efeaba0e58bcorigin/mastera3701528aa4be01924c983ce74e2efeaba0e58bca3701528aa4be01924c983ce74e2efeaba0e58bcorigin/mastergit://jogamp.org/srv/scm/gluegen.git002646testReportfalse#868675702460248gluegen #8682015-07-16_07-50-04falsefalse868-1SUCCESS1437025804000https://jogamp.org/chuck/job/gluegen/868/win64-nvgtx460-win7-jogamp-x32-sgothel-010www/index.htmldoc/manual/index.html2a8a0c090b83f151ef25154e75f1175bed5f9a2b1435347647000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comdoc/manual/index.html www/index.html Fix links. Signed-off-by: Xerxes RÃ¥nby <xerxes@gudinna.com> 2015-06-26T21:40:47+02002a8a0c090b83f151ef25154e75f1175bed5f9a2bdoc/manual/index.html www/index.html Fix links.editwww/index.htmleditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javae424c28f869269f5a22c22ef017230346b22847a1436379393000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBUG 1166: Fix JavaEmitter JVMUtil_NewDirectByteBufferCopy Prevents jlong to jint truncation when capacity is passed from jni to java. com.jogamp.common.nio.Buffers newDirectByteBuffer and the underlying java.nio.ByteBuffer allocateDirect only work with capacitys of int size. Signed-off-by: Xerxes RÃ¥nby <xerxes@gudinna.com> 2015-07-08T20:16:33+0200e424c28f869269f5a22c22ef017230346b22847aBUG 1166: Fix JavaEmitter JVMUtil_NewDirectByteBufferCopyeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaf6a5ac4473135bbc4bc1a5f537e060df45eb48241437004525000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1166: Refine fix of JavaEmitter's JVMUtil_NewDirectByteBufferCopy See commit e424c28f869269f5a22c22ef017230346b22847a (first patch) Since JVMUtil_NewDirectByteBufferCopy is being called w/ 'size_t' values, e.g. 'count * sizeof(Structure)', we shall validate whether 'capacity' is valid, i.e. <= MAX_INT. After validation, 'capacity' is being cast to 'jint' before being passed to the java method. 2015-07-16T01:55:25+0200f6a5ac4473135bbc4bc1a5f537e060df45eb4824Bug 1166: Refine fix of JavaEmitter's JVMUtil_NewDirectByteBufferCopyeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java6ecc869eea932ac77dd6d4604eb205a8a659f83d1437007448000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.staticClassInitCodeCCode: Reuse static strings 2015-07-16T02:44:08+02006ecc869eea932ac77dd6d4604eb205a8a659f83dJavaEmitter.staticClassInitCodeCCode: Reuse static stringseditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaa3701528aa4be01924c983ce74e2efeaba0e58bc1437007577000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1166: Refine fix of JavaEmitter's JVMUtil_NewDirectByteBufferCopy (2) Further refine code, see commit f6a5ac4473135bbc4bc1a5f537e060df45eb4824. - Perform a NULL check on Buffers.newDirectByteBuffer(..) result. - Only copy memory if capacity > 0, incl fetching direct buffer address 2015-07-16T02:46:17+0200a3701528aa4be01924c983ce74e2efeaba0e58bcBug 1166: Refine fix of JavaEmitter's JVMUtil_NewDirectByteBufferCopyeditsrc/java/com/jogamp/gluegen/JavaEmitter.javagithttps://jogamp.org/chuck/user/xerxesxerxeshttps://jogamp.org/chuck/user/sgothelSven Gothel868https://jogamp.org/chuck/job/gluegen/label=android-arm64/868/868https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/868/868https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/868/868https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/868/Started by user Sven GothelsgothelSven Gothel86794d2e7353419a3f042fc560412c55c5b5aaba88794d2e7353419a3f042fc560412c55c5b5aaba887origin/master94d2e7353419a3f042fc560412c55c5b5aaba88794d2e7353419a3f042fc560412c55c5b5aaba887origin/master94d2e7353419a3f042fc560412c55c5b5aaba88794d2e7353419a3f042fc560412c55c5b5aaba887origin/mastergit://jogamp.org/srv/scm/gluegen.git102646testReportfalse#867684108460248gluegen #8672015-07-15_22-23-46falsefalse867-1UNSTABLE1436991826000https://jogamp.org/chuck/job/gluegen/867/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/stub_includes/jni/macosx/jawt_md.h94d2e7353419a3f042fc560412c55c5b5aaba8871436983659000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix jni/macosx/jawt_md.h: Put comment in /* */ brackets .. 2015-07-15T20:07:39+020094d2e7353419a3f042fc560412c55c5b5aaba887Fix jni/macosx/jawt_md.h: Put comment in /* */ brackets ..editmake/stub_includes/jni/macosx/jawt_md.hgithttps://jogamp.org/chuck/user/sgothelSven Gothel867https://jogamp.org/chuck/job/gluegen/label=android-arm64/867/867https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/867/867https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/867/867https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/867/Started by user Sven GothelsgothelSven Gothel865a224afde7eb5ee4b6877406e0321b3550586df2fa224afde7eb5ee4b6877406e0321b3550586df2forigin/mastera224afde7eb5ee4b6877406e0321b3550586df2fa224afde7eb5ee4b6877406e0321b3550586df2forigin/mastera224afde7eb5ee4b6877406e0321b3550586df2fa224afde7eb5ee4b6877406e0321b3550586df2forigin/mastergit://jogamp.org/srv/scm/gluegen.git002646testReportfalse#865695972460248gluegen #8652015-07-14_22-47-20falsefalse865-1SUCCESS1436906840000https://jogamp.org/chuck/job/gluegen/865/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/gluegen-cpptasks-base.xmltest/native/sizeof_dump.cf746c6cfb251478c10fa5d2df2d92f8855cb7cdc1436897729000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comUse GlueGen's JNI header for native compilation (java.includes.dir, java.includes.dir.platform) Using the same cross-platform JNI header for native compilation as for GlueGen code generation allows using a more determined (well defined) and simplified environment. 2015-07-14T20:15:29+0200f746c6cfb251478c10fa5d2df2d92f8855cb7cdcUse GlueGen's JNI header for native compilation (java.includes.dir,editmake/gluegen-cpptasks-base.xmladdtest/native/sizeof_dump.cmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/lib/gluegen-cpptasks-linux-32bit.xmlmake/build.xml12ec1a6c41cd60df4f67df4a6332465fb82d9a3c1436899551000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix using GlueGen's JNI header for native compilation (java.includes.dir, java.includes.dir.platform) Patch custom make/lib/gluegen-cpptasks-<OS>-<ARCH>.xml to match using GlueGen's JNI header. Remove 'ignored override' defs of 'java.includes.dir.platform' in build.xml. 2015-07-14T20:45:51+020012ec1a6c41cd60df4f67df4a6332465fb82d9a3cFix using GlueGen's JNI header for native compilationeditmake/build.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/lib/gluegen-cpptasks-linux-32bit.xml.classpatha224afde7eb5ee4b6877406e0321b3550586df2f1436899596000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse .classpath: Add source mapping of antlr-src.zip to antlr.jar 2015-07-14T20:46:36+0200a224afde7eb5ee4b6877406e0321b3550586df2fEclipse .classpath: Add source mapping of antlr-src.zip to antlr.jaredit.classpathgithttps://jogamp.org/chuck/user/sgothelSven Gothel865https://jogamp.org/chuck/job/gluegen/label=android-arm64/865/865https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/865/865https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/865/865https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/865/Started by user Sven GothelsgothelSven Gothel86350d216f8a721a5f7fb25b42113e8da1ca04ba8a050d216f8a721a5f7fb25b42113e8da1ca04ba8a0origin/master50d216f8a721a5f7fb25b42113e8da1ca04ba8a050d216f8a721a5f7fb25b42113e8da1ca04ba8a0origin/master50d216f8a721a5f7fb25b42113e8da1ca04ba8a050d216f8a721a5f7fb25b42113e8da1ca04ba8a0origin/mastergit://jogamp.org/srv/scm/gluegen.git002646testReportfalse#863666346460248gluegen #8632015-07-13_16-43-39falsefalse863-1SUCCESS1436798619000https://jogamp.org/chuck/job/gluegen/863/win64-nvgtx460-win7-jogamp-x32-sgothel-010git863https://jogamp.org/chuck/job/gluegen/label=android-arm64/863/863https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/863/863https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/863/863https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/863/Started by user Sven GothelsgothelSven Gothel86250d216f8a721a5f7fb25b42113e8da1ca04ba8a050d216f8a721a5f7fb25b42113e8da1ca04ba8a0origin/master50d216f8a721a5f7fb25b42113e8da1ca04ba8a050d216f8a721a5f7fb25b42113e8da1ca04ba8a0origin/master50d216f8a721a5f7fb25b42113e8da1ca04ba8a050d216f8a721a5f7fb25b42113e8da1ca04ba8a0origin/mastergit://jogamp.org/srv/scm/gluegen.git002646testReportfalse#862655374460248gluegen #8622015-07-13_13-49-53falsefalse862-1SUCCESS1436788193000https://jogamp.org/chuck/job/gluegen/862/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/scripts/make.gluegen.all.macosx-java6.sh0bac7cdd7b06f4192c9954c3a42c125821d864e21436562667000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comosx-java6 script: use separate rootrel.build 2015-07-10T23:11:07+02000bac7cdd7b06f4192c9954c3a42c125821d864e2osx-java6 script: use separate rootrel.buildeditmake/scripts/make.gluegen.all.macosx-java6.shmake/lib/gluegen-cpptasks-android-aarch64.xml50d216f8a721a5f7fb25b42113e8da1ca04ba8a01436780347000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix Android ARM64 Support: Don't define 'isAndroidARMv6:=false', since properties are tested whether they are set, rarely by value isAndroidARMv6 2015-07-13T11:39:07+020050d216f8a721a5f7fb25b42113e8da1ca04ba8a0Fix Android ARM64 Support: Don't define 'isAndroidARMv6:=false', sinceeditmake/lib/gluegen-cpptasks-android-aarch64.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel862https://jogamp.org/chuck/job/gluegen/label=android-arm64/862/862https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/862/862https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/862/862https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/862/Started by user Sven GothelsgothelSven Gothel860658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/master658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/master658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/mastergit://jogamp.org/srv/scm/gluegen.git102646testReportfalse#8601323628460248gluegen #8602015-06-05_14-18-27falsefalse860-1UNSTABLE1433506707000https://jogamp.org/chuck/job/gluegen/860/win64-nvgtx460-win7-jogamp-x32-sgothel-010githttps://jogamp.org/chuck/user/sgothelSven Gothel860https://jogamp.org/chuck/job/gluegen/label=android-arm64/860/860https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/860/860https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/860/860https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/860/Started by user Sven GothelsgothelSven Gothel859658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/master658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/master658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/mastergit://jogamp.org/srv/scm/gluegen.git202646testReportfalse#8591219907460248gluegen #8592015-06-04_22-07-20falsefalse859-1UNSTABLE1433448440000https://jogamp.org/chuck/job/gluegen/859/win64-nvgtx460-win7-jogamp-x32-sgothel-010githttps://jogamp.org/chuck/user/sgothelSven Gothel859https://jogamp.org/chuck/job/gluegen/label=android-arm64/859/859https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/859/859https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/859/859https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/859/Started by user Sven GothelsgothelSven Gothel858658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/master658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/master658d5837d7db96387976a5848b51a7ca651bee66658d5837d7db96387976a5848b51a7ca651bee66origin/mastergit://jogamp.org/srv/scm/gluegen.git102646testReportfalse#8581626733460248gluegen #8582015-04-10_14-32-47falsefalse858-1UNSTABLE1428669167000https://jogamp.org/chuck/job/gluegen/858/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xmlab684608247912ace165923f36ea443fda0e838a1427494045000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.3.2-devel 2015-03-27T23:07:25+0100ab684608247912ace165923f36ea443fda0e838aBump to 2.3.2-develeditmake/jogamp-env.xmlsrc/java/com/jogamp/common/util/ArrayHashSet.javamake/scripts/runtest.shsrc/junit/com/jogamp/common/util/TestArrayHashMap01.javasrc/java/com/jogamp/common/util/ArrayHashMap.javasrc/junit/com/jogamp/common/util/TestArrayHashSet01.javac156343fec33ceea7f238b9766a9f4985fb926871427887030000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd ArrayHashMap; Use 'supportNullValue' optimizing ArrayHashSet and ArrayHashMap; Unify ctor for both impl. Add/Enhance unit tests for both. 2015-04-01T13:17:10+0200c156343fec33ceea7f238b9766a9f4985fb92687Add ArrayHashMap; Use 'supportNullValue' optimizing ArrayHashSet andeditsrc/java/com/jogamp/common/util/ArrayHashSet.javaaddsrc/junit/com/jogamp/common/util/TestArrayHashMap01.javaeditmake/scripts/runtest.shaddsrc/java/com/jogamp/common/util/ArrayHashMap.javaeditsrc/junit/com/jogamp/common/util/TestArrayHashSet01.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2LoadJNIAndImplLib.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/cgram/TNode.javasrc/java/com/jogamp/gluegen/cgram/types/EnumType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/DebugEmitter.javac6d5ee30e023d030697f14ae2c444ce7a5542e941427889064000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1153 - GlueGen: Support [const] [native] expressions and conversion to java space, incl. [native] numbers Rewrite ConstantDefinition: Add sub-class CNumber: - containing integer/float values and their original qualifiers [long, double, unsigned] - conversion to java number ConstantDefinition: - holds native expression - optionally holds CNumber representing native expression, if [only] a number - can compute equivalent java expression with result type (JavaExpr) Add static native number reg-expression for number detection and parsing. Add static native number to CNumber conversion methods. +++ Retrieve full LISP tree and convert to serialized expression to be utilized for expressions used in enumerates. Parse enumerates, allowing const native expressions: - Utilize ConstantDefinition either for definite CNumber or expression - Simply add "+1" for new default values, if previous is an expression 2015-04-01T13:51:04+0200c6d5ee30e023d030697f14ae2c444ce7a5542e94Bug 1153 - GlueGen: Support [const] [native] expressions and conversioneditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/TNode.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2LoadJNIAndImplLib.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/cgram/types/EnumType.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javajcpp29da0b8bc787767d68cabbc885bad1d80357e1e71427889170000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1153 - GlueGen: Bump JCPP 2015-04-01T13:52:50+020029da0b8bc787767d68cabbc885bad1d80357e1e7Bug 1153 - GlueGen: Bump JCPPeditjcppmake/scripts/runtest.shmake/lib/semantic-versioning/semver.jarmake/lib/semantic-versioning/semver-src.zipsrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.javamake/lib/semantic-versioning/VERSION59d1511f97d574fc091afa43ea88ef50726d4b911428023119000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump semantic-versioning (0.9.33 + jogamp fixes) 2015-04-03T03:05:19+020059d1511f97d574fc091afa43ea88ef50726d4b91Bump semantic-versioning (0.9.33 + jogamp fixes)editmake/scripts/runtest.sheditmake/lib/semantic-versioning/VERSIONeditmake/lib/semantic-versioning/semver.jareditsrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.javaeditmake/lib/semantic-versioning/semver-src.zipmake/lib/semantic-versioning/semver.jarmake/lib/semantic-versioning/semver-src.zipsrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.javasrc/junit/com/jogamp/common/util/TestVersionSemantics.javamake/lib/semantic-versioning/VERSIONde68aca2f93640999b4ac916cd500f9d531e2c3b1428089396000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump semver to 0.9.33 w/ our patch for CompatibilityType.BACKWARD_COMPATIBLE_BINARY 2015-04-03T21:29:56+0200de68aca2f93640999b4ac916cd500f9d531e2c3bBump semver to 0.9.33 w/ our patch foreditmake/lib/semantic-versioning/semver.jareditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaeditmake/lib/semantic-versioning/semver-src.zipeditmake/lib/semantic-versioning/VERSIONeditsrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.javamake/lib/semantic-versioning/semver-src.zipmake/lib/semantic-versioning/semver.jarmake/lib/semantic-versioning/VERSION658d5837d7db96387976a5848b51a7ca651bee661428090696000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump semver: 0d2e314ef48bd2fd38b45f781c4573bdb2b32a69 2015-04-03T21:51:36+0200658d5837d7db96387976a5848b51a7ca651bee66Bump semver: 0d2e314ef48bd2fd38b45f781c4573bdb2b32a69editmake/lib/semantic-versioning/VERSIONeditmake/lib/semantic-versioning/semver-src.zipeditmake/lib/semantic-versioning/semver.jargithttps://jogamp.org/chuck/user/sgothelSven Gothel858https://jogamp.org/chuck/job/gluegen/label=android-arm64/858/858https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/858/858https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/858/858https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/858/Started by user Sven GothelsgothelSven Gothel857f1eba171ddd887a2daa3dfa2ac90ac864c5b22d4f1eba171ddd887a2daa3dfa2ac90ac864c5b22d4origin/masterf1eba171ddd887a2daa3dfa2ac90ac864c5b22d4f1eba171ddd887a2daa3dfa2ac90ac864c5b22d4origin/masterf1eba171ddd887a2daa3dfa2ac90ac864c5b22d4f1eba171ddd887a2daa3dfa2ac90ac864c5b22d4origin/mastergit://jogamp.org/srv/scm/gluegen.git402591testReportfalsev2.3.1 #8571320173460248gluegen #8572015-03-27_16-10-37falsetrue857-1UNSTABLE1427469037000https://jogamp.org/chuck/job/gluegen/857/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/lib/v2.3.0/gluegen-rt.jarmake/lib/v2.2.1/gluegen-rt.jarmake/scripts/runtest.shsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaf1eba171ddd887a2daa3dfa2ac90ac864c5b22d41427463947000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestVersionSemantics: Add version tests: v220 -> v221, v221 -> v230 and v230 -> v23x 2015-03-27T14:45:47+0100f1eba171ddd887a2daa3dfa2ac90ac864c5b22d4TestVersionSemantics: Add version tests: v220 -> v221, v221 -> v230 andaddmake/lib/v2.3.0/gluegen-rt.jareditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaaddmake/lib/v2.2.1/gluegen-rt.jareditmake/scripts/runtest.shgithttps://jogamp.org/chuck/user/sgothelSven Gothel857https://jogamp.org/chuck/job/gluegen/label=android-arm64/857/857https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/857/857https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/857/857https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/857/Started by user Sven GothelsgothelSven Gothel85640c9a3d3b61c5f779b255f840de87cb6df0d36fe40c9a3d3b61c5f779b255f840de87cb6df0d36feorigin/master40c9a3d3b61c5f779b255f840de87cb6df0d36fe40c9a3d3b61c5f779b255f840de87cb6df0d36feorigin/master40c9a3d3b61c5f779b255f840de87cb6df0d36fe40c9a3d3b61c5f779b255f840de87cb6df0d36feorigin/mastergit://jogamp.org/srv/scm/gluegen.git102569testReportfalse#8561226278460248gluegen #8562015-03-26_23-54-15falsefalse856-1UNSTABLE1427410455000https://jogamp.org/chuck/job/gluegen/856/win64-nvgtx460-win7-jogamp-x32-sgothel-010doc/licenses/Apache.LICENSE-2.0LICENSE.txt3dc82b104cf69db890328ff1ffd165474c4a4d591427399495000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149 - Add JCPP Apache 2.0 License to LICENSE.txt file / Also add the Apache 2.0 license to doc/licenses/Apache.LICENSE-2.0 JCPP migration shall be completed now. Thx to Ben Mankin, aka Shevek! 2015-03-26T20:51:35+01003dc82b104cf69db890328ff1ffd165474c4a4d59Bug 1149 - Add JCPP Apache 2.0 License to LICENSE.txt file / Also addadddoc/licenses/Apache.LICENSE-2.0editLICENSE.txtsrc/java/com/jogamp/gluegen/JavaEmitter.java5ca2db226e23c61339943f981a3f46300818cb9a1427406798000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter: Always use 'containingJTypeName' for JavaConfiguration.canonicalStructFieldSymbol(..) Patch harmonizes configuration, was also using 'structCTypeName' besides 'containingJTypeName', but surely it makes no sense to use different type names for struct-field configurations. 2015-03-26T22:53:18+01005ca2db226e23c61339943f981a3f46300818cb9aJavaEmitter: Always use 'containingJTypeName' foreditsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/jogamp-env.xml40c9a3d3b61c5f779b255f840de87cb6df0d36fe1427406816000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.3.1 release 2015-03-26T22:53:36+010040c9a3d3b61c5f779b255f840de87cb6df0d36feBump to 2.3.1 releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel856https://jogamp.org/chuck/job/gluegen/label=android-arm64/856/856https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/856/856https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/856/856https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/856/Started by user Sven GothelsgothelSven Gothel85532ca07fc21d1af2034c1788b6317ee14e1354d1532ca07fc21d1af2034c1788b6317ee14e1354d15origin/master32ca07fc21d1af2034c1788b6317ee14e1354d1532ca07fc21d1af2034c1788b6317ee14e1354d15origin/master32ca07fc21d1af2034c1788b6317ee14e1354d1532ca07fc21d1af2034c1788b6317ee14e1354d15origin/mastergit://jogamp.org/srv/scm/gluegen.git302569testReportfalse#8551196385460248gluegen #8552015-03-25_13-51-21falsefalse855-1UNSTABLE1427287881000https://jogamp.org/chuck/job/gluegen/855/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gd30a3ea54e26978d6ff199cba0fd79c5c0cef4831427280341000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149: Fix parsing of hexadecimal w/ binary exponent floats in regexp-constant and java-parser. (Due to PCPP -> JCPP) Lack of parsing binary exponent floats is exposed due to using JCPP and correct constant-definitions. - JavaParser.g: - Add support for hexadecimal w/ binary exponent floats - TAB -> 4 spaces - ConstantDefinition.java: - Add RegExp 'fpRegexp', patternDecimalNumber: decimal number w/ support for hexadecimal w/ binary exponent floats. - isDecimalNumber(..): Use patternDecimalNumber instead of try-and-error (NumberFormatException) - patternCPPOperand: exclude patternDecimalNumber! - JavaEmitter.java: - Respect explicit suffix [dD] for double type. - Drop floating point suffixes [fF] - Test: Added tests for hexadecimal w/ binary exponent floats 2015-03-25T11:45:41+0100d30a3ea54e26978d6ff199cba0fd79c5c0cef483Bug 1149: Fix parsing of hexadecimal w/ binary exponent floats ineditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gjcppmake/scripts/java-win64.batmake/scripts/runtest.shmake/scripts/runtest-x64.batmake/scripts/java-win32.bat32ca07fc21d1af2034c1788b6317ee14e1354d151427284226000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149 - Fix JCPP test case IncludeAbsoluteTest 2015-03-25T12:50:26+010032ca07fc21d1af2034c1788b6317ee14e1354d15Bug 1149 - Fix JCPP test case IncludeAbsoluteTesteditmake/scripts/runtest.sheditmake/scripts/java-win32.bateditjcppeditmake/scripts/runtest-x64.bateditmake/scripts/java-win64.batgithttps://jogamp.org/chuck/user/sgothelSven Gothel855https://jogamp.org/chuck/job/gluegen/label=android-arm64/855/855https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/855/855https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/855/855https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/855/Started by user Sven GothelsgothelSven Gothel8546058af19f2929a39deb0dbcc48040a4bb53bb5596058af19f2929a39deb0dbcc48040a4bb53bb559origin/master6058af19f2929a39deb0dbcc48040a4bb53bb5596058af19f2929a39deb0dbcc48040a4bb53bb559origin/master6058af19f2929a39deb0dbcc48040a4bb53bb5596058af19f2929a39deb0dbcc48040a4bb53bb559origin/mastergit://jogamp.org/srv/scm/gluegen.git502569testReportfalse#8541149583460248gluegen #8542015-03-24_05-03-16falsefalse854-1UNSTABLE1427169796000https://jogamp.org/chuck/job/gluegen/854/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/stub_includes/jni/jni.hmake/stub_includes/jni/win32/jawt_md.hmake/stub_includes/jni/x11/jawt_md.hmake/stub_includes/jni/win32/jni_md.hmake/stub_includes/jni/x11/jni_md.hmake/stub_includes/jni/jawt.hmake/stub_includes/jni/macosx/jni_md.hmake/stub_includes/jni/macosx/jawt_md.h532b8df474976b474f0cf4eb2d93588ded2ad3fe1427075483000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comImport JOGL's JNI header and unify them for GlueGen and C-Compiler usage. We had macosx JNI header and different JNI header included in JOGL for native compilation and GlueGen runs. This unifies the header for any use. 2015-03-23T02:51:23+0100532b8df474976b474f0cf4eb2d93588ded2ad3feImport JOGL's JNI header and unify them for GlueGen and C-Compileraddmake/stub_includes/jni/win32/jawt_md.heditmake/stub_includes/jni/macosx/jawt_md.heditmake/stub_includes/jni/macosx/jni_md.haddmake/stub_includes/jni/win32/jni_md.haddmake/stub_includes/jni/x11/jawt_md.haddmake/stub_includes/jni/jni.haddmake/stub_includes/jni/x11/jni_md.haddmake/stub_includes/jni/jawt.hsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-gluegen.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-gluegen.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/Logging.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gmake/build-test.xmlmake/jogamp-env.xmlsrc/java/com/jogamp/common/nio/StructAccessor.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/GenericCPP.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.javab755b045fb7e3c8306f24dd645297992ab8db7f91427076303000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149 - Replacing PCPP w/ JCPP, allowing complete macro handling (Part-1: Cleanup / Preparation) 2015-03-23T03:05:03+0100b755b045fb7e3c8306f24dd645297992ab8db7f9Bug 1149 - Replacing PCPP w/ JCPP, allowing complete macro handlingeditmake/jogamp-env.xmleditsrc/java/com/jogamp/gluegen/Logging.javaeditsrc/java/com/jogamp/common/nio/StructAccessor.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaaddsrc/java/com/jogamp/gluegen/GenericCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-gluegen.cfgeditmake/build-test.xmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-gluegen.cfgmake/stub_includes/gluegen/stdio.h.gitmodulesmake/scripts/runtest.sh.classpathjcppdoc/HowToBuild.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javamake/build.xmlmake/build-test.xmlsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/GenericCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/pcpp/PCPP.java88d51db39f3b00df1462eb0a18c1825ae1e864851427161464000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149 - Replacing PCPP w/ JCPP, allowing complete macro handling (Part-2: JCPP submodule, build, test and doc) 2015-03-24T02:44:24+010088d51db39f3b00df1462eb0a18c1825ae1e86485Bug 1149 - Replacing PCPP w/ JCPP, allowing complete macro handlingeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.haddjcppeditsrc/java/com/jogamp/gluegen/GlueGen.javaaddmake/stub_includes/gluegen/stdio.hadd.gitmoduleseditmake/build.xmleditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/java/com/jogamp/gluegen/GenericCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditmake/build-test.xmledit.classpathadddoc/HowToBuild.htmleditmake/scripts/runtest.shsrc/java/com/jogamp/gluegen/Logging.java19315f8f48012ede41c325d72526a612002737f81427161521000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix Logging: PlainLogConsoleHandler shall start w/ Level.ALL, add explicit Level setter for handler. 2015-03-24T02:45:21+010019315f8f48012ede41c325d72526a612002737f8Fix Logging: PlainLogConsoleHandler shall start w/ Level.ALL, addeditsrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/GlueGen.javac8439e78c9e8ba4040bb723252a1c8fec00f904b1427165051000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149 - Replacing PCPP w/ JCPP: Name used CPP impl. 2015-03-24T03:44:11+0100c8439e78c9e8ba4040bb723252a1c8fec00f904bBug 1149 - Replacing PCPP w/ JCPP: Name used CPP impl.editsrc/java/com/jogamp/gluegen/GlueGen.javajcpp4eab2908f5344a330ff18bdf7b168f136d87781a1427165160000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1149 - Replacing PCPP w/ JCPP: Final version bump .. 2015-03-24T03:46:00+01004eab2908f5344a330ff18bdf7b168f136d87781aBug 1149 - Replacing PCPP w/ JCPP: Final version bump ..editjcppmake/stub_includes/jni/macosx/jni_md.hmake/stub_includes/jni/win32/jni_md.hmake/stub_includes/jni/x11/jni_md.h6058af19f2929a39deb0dbcc48040a4bb53bb5591427166162000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRefine JNI header's jni_md.h: Always include 'gluegen_stdint.h' for 'standalone' usage. On OSX java7 we include the system jni.h and GlueGen's jni_md.h .. Fixes regression of commit 532b8df474976b474f0cf4eb2d93588ded2ad3fe 2015-03-24T04:02:42+01006058af19f2929a39deb0dbcc48040a4bb53bb559Refine JNI header's jni_md.h: Always include 'gluegen_stdint.h' foreditmake/stub_includes/jni/win32/jni_md.heditmake/stub_includes/jni/macosx/jni_md.heditmake/stub_includes/jni/x11/jni_md.hgithttps://jogamp.org/chuck/user/sgothelSven Gothel854https://jogamp.org/chuck/job/gluegen/label=android-arm64/854/854https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/854/854https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/854/854https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/854/Started by user Sven GothelsgothelSven Gothel852030b580cf8bb7f1e91eed6e47a341eb50fc2e6be030b580cf8bb7f1e91eed6e47a341eb50fc2e6beorigin/master030b580cf8bb7f1e91eed6e47a341eb50fc2e6be030b580cf8bb7f1e91eed6e47a341eb50fc2e6beorigin/master030b580cf8bb7f1e91eed6e47a341eb50fc2e6be030b580cf8bb7f1e91eed6e47a341eb50fc2e6beorigin/mastergit://jogamp.org/srv/scm/gluegen.git102382testReportfalse#8521177152460248gluegen #8522015-03-21_04-47-09falsefalse852-1UNSTABLE1426909629000https://jogamp.org/chuck/job/gluegen/852/win64-nvgtx460-win7-jogamp-x32-sgothel-010githttps://jogamp.org/chuck/user/sgothelSven Gothel852https://jogamp.org/chuck/job/gluegen/label=android-arm64/852/852https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/852/852https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/852/852https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/852/Started by an SCM change851030b580cf8bb7f1e91eed6e47a341eb50fc2e6be030b580cf8bb7f1e91eed6e47a341eb50fc2e6beorigin/master030b580cf8bb7f1e91eed6e47a341eb50fc2e6be030b580cf8bb7f1e91eed6e47a341eb50fc2e6beorigin/master030b580cf8bb7f1e91eed6e47a341eb50fc2e6be030b580cf8bb7f1e91eed6e47a341eb50fc2e6beorigin/mastergit://jogamp.org/srv/scm/gluegen.git202382testReportfalse#8511229471460248gluegen #8512015-03-18_00-20-00falsefalse851-1UNSTABLE1426634400000https://jogamp.org/chuck/job/gluegen/851/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/os/DynamicLibraryBundle.java030b580cf8bb7f1e91eed6e47a341eb50fc2e6be1426630479000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix DynamicLibraryBundle.isToolLibComplete() no tool-lib case, regression of commit 12feaa7d3b1544098f684d851e3caff1ec88cbc8 Regression of commit 12feaa7d3b1544098f684d851e3caff1ec88cbc8 'isToolLibComplete()' returned false if dynLinkGlobal is null, even if no tool-lib has been used. In which case dynLinkGlobal has not been initialized and hence is always null. 'isToolLibComplete()' now takes no tool-lib into consideration! Currently only 'OVRDynamicLibraryBundleInfo' of JOGL's 'oculusvr' binding used this configuration within JogAmp. 2015-03-17T23:14:39+0100030b580cf8bb7f1e91eed6e47a341eb50fc2e6beFix DynamicLibraryBundle.isToolLibComplete() no tool-lib case,editsrc/java/com/jogamp/common/os/DynamicLibraryBundle.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel851https://jogamp.org/chuck/job/gluegen/label=android-arm64/851/851https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/851/851https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/851/851https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/851/Started by an SCM change850bd2019270defbaa1a625e5d097b76beb8610a8edbd2019270defbaa1a625e5d097b76beb8610a8edorigin/masterbd2019270defbaa1a625e5d097b76beb8610a8edbd2019270defbaa1a625e5d097b76beb8610a8edorigin/masterbd2019270defbaa1a625e5d097b76beb8610a8edbd2019270defbaa1a625e5d097b76beb8610a8edorigin/mastergit://jogamp.org/srv/scm/gluegen.git402382testReportfalse#8501182037460248gluegen #8502015-03-15_09-20-00falsefalse850-1UNSTABLE1426407600000https://jogamp.org/chuck/job/gluegen/850/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xmlbd2019270defbaa1a625e5d097b76beb8610a8ed1426108036000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.combump to 2.3.1-rc 2015-03-11T22:07:16+0100bd2019270defbaa1a625e5d097b76beb8610a8edbump to 2.3.1-rceditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel850https://jogamp.org/chuck/job/gluegen/label=android-arm64/850/850https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/850/850https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/850/850https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/850/Started by user Sven GothelsgothelSven Gothel849213d01cac6bb0b91e85dbacb5cd4dff539881780213d01cac6bb0b91e85dbacb5cd4dff539881780origin/master213d01cac6bb0b91e85dbacb5cd4dff539881780213d01cac6bb0b91e85dbacb5cd4dff539881780origin/master213d01cac6bb0b91e85dbacb5cd4dff539881780213d01cac6bb0b91e85dbacb5cd4dff539881780origin/mastergit://jogamp.org/srv/scm/gluegen.git202382testReportfalsev2.3.0#8491219808460248gluegen #8492015-03-11_17-59-39falsetrue849-1UNSTABLE1426093179000https://jogamp.org/chuck/job/gluegen/849/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java454fac44efd1728d8f5c09ed4abd4041f6187e441426001157000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1144 - Add 'DelegateImplementation': Cleanup JavaConfiguration and use manuallyImplement(AliasedSymbol) for FunctionSymbol 2015-03-10T16:25:57+0100454fac44efd1728d8f5c09ed4abd4041f6187e44Bug 1144 - Add 'DelegateImplementation': Cleanup JavaConfiguration andeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javac3b2a86bb9051d6f03c3f104eff2dbe6cefc18031426001270000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1144 - Add 'DelegateImplementation': Sort JavaMethodBindingEmitter argument list; forImplementingMethodCall -> isNativeMethod 2015-03-10T16:27:50+0100c3b2a86bb9051d6f03c3f104eff2dbe6cefc1803Bug 1144 - Add 'DelegateImplementation': Sort JavaMethodBindingEmittereditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javamake/scripts/runtest.shsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaf664f7e950ff60d73e488801cf7f37878588203d1426056146000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1144 - Add 'DelegateImplementation': Cleanup MethodBinding/FunctionBinding Semantics - Clarify name semantics: name -> [interfaceName, implName, nativeName] - JavaMethodBindingEmitter: Refine native identity via isNativeMethod + isPrivateNativeMethod - ProcAddressEmitter: Remove hack whether we need to wrap .. use isNativeMethod + isPrivateNativeMethod 2015-03-11T07:42:26+0100f664f7e950ff60d73e488801cf7f37878588203dBug 1144 - Add 'DelegateImplementation': Cleanupeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.csrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfg405512e1c8a2e24834b0d057f0b020b4a0f4c25b1426056516000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1144 - Add 'DelegateImplementation', manually impl. may delegate to renamed original 'DelegateImplementation' is a variation of 'ManuallyImplement'. 'ManuallyImplement' emits the interface method, but suppresses the Java and native-code implementation. The latter shall be implemented manually by the user. 'DelegateImplementation' emits the interface method, and the _private_ renamed Java and native-code implementation. Both can be called from the manual user implementation, hence delegation. Configuration: DelegateImplementation <ORIG-SYMBOL> <RENAMED-IMPL-SYMBOL> I.e. delegation model shall apply to <ORIG-SYMBOL> and the Java and native-code implementation renamed to <RENAMED-IMPL-SYMBOL>. The user manual implementation of <ORIG-SYMBOL> may delegate to <RENAMED-IMPL-SYMBOL>. 2015-03-11T07:48:36+0100405512e1c8a2e24834b0d057f0b020b4a0f4c25bBug 1144 - Add 'DelegateImplementation', manually impl. may delegate toeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hmake/jogamp-env.xml9a65b90b34632493d86af62e4bfaf24bff29e4401426056939000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump for 2.3.0 release 2015-03-11T07:55:39+01009a65b90b34632493d86af62e4bfaf24bff29e440Bump for 2.3.0 releaseeditmake/jogamp-env.xmlsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.java25f248669f603c2bbd6ad97f31e0c72ce780f5071426067458000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - LOG AliasedSymbol: Don't issue getAliasedString(), logger takes care of that, when it logs. 2015-03-11T10:50:58+010025f248669f603c2bbd6ad97f31e0c72ce780f507Bug 1134 - LOG AliasedSymbol: Don't issue getAliasedString(), loggereditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javabbea09816015ecf3596acdcc033553127fcc0ef31426079415000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1144 - Add 'DelegateImplementation': Requires own MethodBinding for delegates impl. / Adding ReturnsOpaque - DelegateImplementation requires own MethodBinding for delegates impl. The delegation name must be included within the FunctionSymbol's aliases _only_ for implementations, where delegation applies. This allows all subsequent type/cfg checks to hit on AliasedSymbol! Hence we need to create individual MethodBinding instances for interfaces and public/private implementations. - Adding ReturnsOpaque Configuration: ReturnsOpaque <Primitive Java Type> <Function Name> This feature is necessary to achieve 'Opaque' functionality for function's return type - instead of types in general. - Fix AliasedSymbolImpl copy-ctor, i.e. this.name = o.name ! 2015-03-11T14:10:15+0100bbea09816015ecf3596acdcc033553127fcc0ef3Bug 1144 - Add 'DelegateImplementation': Requires own MethodBinding foreditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfg213d01cac6bb0b91e85dbacb5cd4dff5398817801426086383000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1144 - Fix commit bbea09816015ecf3596acdcc033553127fcc0ef3 (missing file) 2015-03-11T16:06:23+0100213d01cac6bb0b91e85dbacb5cd4dff539881780Bug 1144 - Fix commit bbea09816015ecf3596acdcc033553127fcc0ef3 (missingaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfggithttps://jogamp.org/chuck/user/sgothelSven Gothel849https://jogamp.org/chuck/job/gluegen/label=android-arm64/849/849https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/849/849https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/849/849https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/849/Started by user Sven GothelsgothelSven Gothel8479d2bc5118f20f6f6defae075da17d34e1716d36d9d2bc5118f20f6f6defae075da17d34e1716d36dorigin/master9d2bc5118f20f6f6defae075da17d34e1716d36d9d2bc5118f20f6f6defae075da17d34e1716d36dorigin/master9d2bc5118f20f6f6defae075da17d34e1716d36d9d2bc5118f20f6f6defae075da17d34e1716d36dorigin/mastergit://jogamp.org/srv/scm/gluegen.git102382testReportfalse#8471286265460248gluegen #8472015-03-09_10-25-52falsefalse847-1UNSTABLE1425893152000https://jogamp.org/chuck/job/gluegen/847/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javamake/scripts/runtest.shsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.java6a0822b03de2976c5bc37544c50e70094eeb94a71425636139000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestByteBuffer*Stream: Reduce mmap load on poor OSX mini test machine to reduce test time (was: > 10 min) 2015-03-06T11:02:19+01006a0822b03de2976c5bc37544c50e70094eeb94a7TestByteBuffer*Stream: Reduce mmap load on poor OSX mini test machine toeditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javasrc/java/com/jogamp/gluegen/cgram/types/BitType.javasrc/java/com/jogamp/gluegen/cgram/types/PrimitiveType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/UnionType.javasrc/java/com/jogamp/gluegen/cgram/types/MemoryLayoutType.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gsrc/java/com/jogamp/gluegen/cgram/types/StructType.javasrc/java/com/jogamp/gluegen/cgram/types/FloatType.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/cgram/types/DoubleType.javasrc/java/com/jogamp/gluegen/cgram/types/EnumType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/ReferencedStructs.javasrc/junit/com/jogamp/gluegen/test/junit/internals/TestType.javasrc/java/com/jogamp/gluegen/cgram/types/VoidType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeca019cdea4017227e951d8a9eb30cb34fca4a071425709536000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Pass ASTLocationTag to all types, used for GlueGenException Enhances semantic exception in code generation by adding the AST location of the type or function declaration. 2015-03-07T07:25:36+0100eca019cdea4017227e951d8a9eb30cb34fca4a07Bug 1134 - Pass ASTLocationTag to all types, used for GlueGenExceptioneditsrc/java/com/jogamp/gluegen/cgram/types/DoubleType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/BitType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FloatType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PrimitiveType.javaeditsrc/java/com/jogamp/gluegen/ReferencedStructs.javaeditsrc/java/com/jogamp/gluegen/cgram/types/MemoryLayoutType.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/junit/com/jogamp/gluegen/test/junit/internals/TestType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/VoidType.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/UnionType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/EnumType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgb86c042c864db0d8061b999fadc87dd9f3b458241425709683000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Handle Opaque fields in structs; Print struct field name in apidoc of getter/setter 2015-03-07T07:28:03+0100b86c042c864db0d8061b999fadc87dd9f3b45824Bug 1134 - Handle Opaque fields in structs; Print struct field name ineditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/IntType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javad75bd393a5850252d7d7012e68af3850178ca8c91425712884000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix IntType: Add getCName(..) for proper C-type code; Fix its newCVVariant(..), don't pass given cv-attr as typedef Add getCName(..) for proper C-type code - Add 'unsigned ' if not typedef and is unsigned. - Allows removal of special case in CMethodBindingEmitter - Fixes ProcAddressCMethodBindingEmitter typedef emission and removes clang warnings, caused by this (many). Fix its newCVVariant(..), don't pass given cv-attr as typedef - Proper delegation of 'const', regression of prev. commits 2015-03-07T08:21:24+0100d75bd393a5850252d7d7012e68af3850178ca8c9Bug 1134 - Fix IntType: Add getCName(..) for proper C-type code; Fix itseditsrc/java/com/jogamp/gluegen/cgram/types/IntType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javae2d5d6f55794c5e27c3a29dcbbdaf2921506667d1425713966000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix Type.getDebugString() comma separation 2015-03-07T08:39:26+0100e2d5d6f55794c5e27c3a29dcbbdaf2921506667dFix Type.getDebugString() comma separationeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/ASTLocusTag.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/GlueGenException.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.javada909f84dc8421052c92491baa7dd90e1c78dc8f1425765971000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Use ASTLocationTag in Logging (PCPP, Emitter); Refine ASTLocationTag log/exception formatting. Since commit eca019cdea4017227e951d8a9eb30cb34fca4a07, we have ASTLocationTag available. Hence use it for all logging purposes and emit a standard compiler output, which shall be parsable by other tools. 2015-03-07T23:06:11+0100da909f84dc8421052c92491baa7dd90e1c78dc8fBug 1134 - Use ASTLocationTag in Logging (PCPP, Emitter); Refineeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.javaeditsrc/java/com/jogamp/gluegen/Logging.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/GlueGenException.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditsrc/java/com/jogamp/gluegen/ASTLocusTag.javasrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java457355003bff320eee831731de016d29fb1e39821425798008000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Logging's formatter now takes care of Type -> getDebugString() when desired, not at 'log' call Removes load to assemble the getDebugString() of Type and JavaType when invoking log function. Note: the log may be skipped if log-level is not reached. 2015-03-08T08:00:08+0100457355003bff320eee831731de016d29fb1e3982Bug 1134 - Logging's formatter now takes care of Type ->editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/GlueGenException.javasrc/java/com/jogamp/gluegen/ASTLocusTag.java3b7871515f9a6a3c7adcbf12772d168e61f86d501425859829000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Make ASTLocusTag's text optional 2015-03-09T01:10:29+01003b7871515f9a6a3c7adcbf12772d168e61f86d50Bug 1134 - Make ASTLocusTag's text optionaleditsrc/java/com/jogamp/gluegen/Logging.javaeditsrc/java/com/jogamp/gluegen/ASTLocusTag.javaeditsrc/java/com/jogamp/gluegen/GlueGenException.javasrc/java/com/jogamp/gluegen/cgram/types/PrimitiveType.javasrc/java/com/jogamp/gluegen/cgram/types/BitType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/UnionType.javasrc/java/com/jogamp/gluegen/cgram/types/MemoryLayoutType.javasrc/java/com/jogamp/gluegen/cgram/types/StructType.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/FloatType.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/cgram/types/TypeVisitor.javasrc/java/com/jogamp/gluegen/cgram/types/EnumType.javasrc/java/com/jogamp/gluegen/cgram/types/DoubleType.javasrc/java/com/jogamp/gluegen/cgram/types/IntType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/cgram/types/VoidType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javacf9f28cf249393f42d7d2835775521dfadee6b921425861921000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix IntType 'unsigned'; Type: Use copy-ctor instead of Clonable, .. - Fix IntType 'unsigned' - Need to handle 'unsigned' for typedef and !typedef, when exposing 'unsigned' for code emission. - Consider IntType.typedefUnsigned in hash/equals - Type: Use copy-ctor instead of Clonable enhancing strong typing. - add 'Type clone(final ASTLocusTag newLoc)' - Consider Type.typedefCVAttributes in hash/equals 2015-03-09T01:45:21+0100cf9f28cf249393f42d7d2835775521dfadee6b92Bug 1134 - Fix IntType 'unsigned'; Type: Use copy-ctor instead ofeditsrc/java/com/jogamp/gluegen/cgram/types/MemoryLayoutType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/TypeVisitor.javaeditsrc/java/com/jogamp/gluegen/cgram/types/EnumType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/UnionType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PrimitiveType.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/DoubleType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/IntType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javaeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FloatType.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javaeditsrc/java/com/jogamp/gluegen/cgram/types/VoidType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/BitType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.csrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/ReferencedStructs.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgmake/build-test.xml9eb9403d774db0c55ea3cb2fc5bd04114b8b5feb1425863358000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix aliased typedef struct emission - Code regarding 'aliased typedef struct' is tagged in JavaEmitter and HeaderParser: 'NOTE: Struct Name Resolution (JavaEmitter, HeaderParser)' Prefers containing cstruct typedef pointer if available _and_ if cstruct is _not_ a typedef! - Removed: 'HeaderParser.resolveAnonCompound(..)' no more required, since CompoundType always sets its name! Commit cf9f28cf249393f42d7d2835775521dfadee6b92 - JavaEmitter.emitStruct: - Regard above 'aliased typedef struct' NOTE - JavaEmitter.typeToJavaType: - Regard above 'aliased typedef struct' NOTE - ReferencedStructs - Drop duplicate CompoundType instances of same name. This can happen due to const/volatile and ASTLocusTag variants. 2015-03-09T02:09:18+01009eb9403d774db0c55ea3cb2fc5bd04114b8b5febBug 1134 - Fix aliased typedef struct emissioneditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/java/com/jogamp/gluegen/ReferencedStructs.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditmake/build-test.xmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java414a0146660cadd35d5ae270f7f819717e9c73741425863433000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix CMethodBindingEmitter return type '_res' qualifiers We cannot have the local variable holding the return type 'const' and assign a value to it later. 2015-03-09T02:10:33+0100414a0146660cadd35d5ae270f7f819717e9c7374Bug 1134 - Fix CMethodBindingEmitter return type '_res' qualifierseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java10060b091b76bee35246c5165d49ab546ebc4e371425863922000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - ProcAddressCMethodBindingEmitter: Use available 'ProcAddrTypedef' for type validation w/ local generated variant (robustness) ProcAddressCMethodBindingEmitter code regarding having the public 'ProcAddrTypedef' (from input header) was simply broken, since it always used the local generated 'ProcAddrTypedef', if 'ProcAddrTypedef' was forced. Hence the public 'ProcAddrTypedef' was ignored in most cases. ProcAddressCMethodBindingEmitter's semantic changed from: needsLocalTypedef -> hasProcAddrTypedef New Code generation: - always generated the local 'ProcAddrTypedef' - if hasProcAddrTypedef, use public 'ProcAddrTypedef' for return type variable - cast local 'ProcAddrTypedef' to public 'ProcAddrTypedef', which renders the native compiler to validate the local and public types. 2015-03-09T02:18:42+010010060b091b76bee35246c5165d49ab546ebc4e37Bug 1134 - ProcAddressCMethodBindingEmitter: Use availableeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javamake/build-test.xmlsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java90e53d0c01f2fe62ff8c5bcc41741ec3c9c47e591425865435000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix CMethodBindingEmitter return type '_res' qualifiers (part 2) Commit 414a0146660cadd35d5ae270f7f819717e9c7374 removed the const/volatile of the local return variable. This change also casts the function calling result to the same - hence removing a possible c-compiler warning of dropping qualifier const. 2015-03-09T02:43:55+010090e53d0c01f2fe62ff8c5bcc41741ec3c9c47e59Bug 1134 - Fix CMethodBindingEmitter return type '_res' qualifiers (parteditmake/build-test.xmleditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.g8efdf71e2de6392344326ba6a28e8f8fa7e3e8e51425867843000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - In case of 'undefined type' throw a semantic GlueGenException instead of an NPE 2015-03-09T03:24:03+01008efdf71e2de6392344326ba6a28e8f8fa7e3e8e5Bug 1134 - In case of 'undefined type' throw a semantic GlueGenExceptioneditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/GlueGen.javasrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.gsrc/java/com/jogamp/gluegen/cgram/Define.java5dd12c17bf5037c7ac6a2ac73caf4d61443c47491425877363000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Add ASTLocusTagProvider for Define and fix newline in c-parser (Expose source location for log/error messages) 2015-03-09T06:02:43+01005dd12c17bf5037c7ac6a2ac73caf4d61443c4749Bug 1134 - Add ASTLocusTagProvider for Define and fix newline ineditsrc/java/com/jogamp/gluegen/cgram/Define.javaeditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.geditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gsrc/java/com/jogamp/gluegen/JavaEmitter.java9d2bc5118f20f6f6defae075da17d34e1716d36d1425879113000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Refine err/log message of 'previous definition is here' 2015-03-09T06:31:53+01009d2bc5118f20f6f6defae075da17d34e1716d36dBug 1134 - Refine err/log message of 'previous definition is here'editsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/java/com/jogamp/gluegen/JavaEmitter.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel847https://jogamp.org/chuck/job/gluegen/label=android-arm64/847/847https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/847/847https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/847/847https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/847/Started by user Sven GothelsgothelSven Gothel84643f200428eb595665d6db6edbd5538413f5a977c43f200428eb595665d6db6edbd5538413f5a977corigin/master43f200428eb595665d6db6edbd5538413f5a977c43f200428eb595665d6db6edbd5538413f5a977corigin/master43f200428eb595665d6db6edbd5538413f5a977c43f200428eb595665d6db6edbd5538413f5a977corigin/mastergit://jogamp.org/srv/scm/gluegen.git902119testReportfalse#8462811859460248gluegen #8462015-03-06_10-58-23falsefalse846-1UNSTABLE1425635903000https://jogamp.org/chuck/job/gluegen/846/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/gluegen/cgram/types/BitType.javasrc/java/com/jogamp/gluegen/cgram/types/Field.javamake/scripts/runtest.shsrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/cgram/types/StructType.javasrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/TypeInfo.javasrc/java/com/jogamp/gluegen/TypeConfig.javasrc/java/com/jogamp/gluegen/cgram/types/FloatType.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/EnumType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/ReferencedStructs.javasrc/junit/com/jogamp/gluegen/test/junit/internals/TestType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/DebugEmitter.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/SizeThunk.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/UnionType.javasrc/java/com/jogamp/gluegen/cgram/types/MemoryLayoutType.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gmake/build-test.xmlsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/TypeComparator.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.csrc/java/com/jogamp/gluegen/cgram/types/DoubleType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/cgram/types/IntType.javasrc/java/com/jogamp/gluegen/cgram/types/TypeDictionary.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/java/com/jogamp/gluegen/cgram/types/VoidType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.java72d3635279ffc8ad88e47dff9bbe95d211226d111425532444000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Enhance GlueGen Compiler: Minimal GL Header Changes _and_ Typesafety - We shall be able to import 'most' vanilla GL header, i.e. only change the typedef part using our GlueGen types - Type Safety: - GlueGen now detects '#define' and 'enum' redefines and throw an exception in this case. This helps detecting wrongly renamed GL extensions into core! - GlueGen now detects function redefines (overloading) and throw an exception in this case. Hence the semantics of duplicate functions has to be equal! This helps detecting wrongly renamed GL extensions into core! - Semantic equality for all types is provided via interface TypeComparator.SemanticEqualityOp, i.e. 'boolean equalSemantics(..)' implemented by com.jogamp.gluegen.cgram.types.Type. Semantic equality can be relaxed via config "RelaxedEqualSemanticsTest true", i.e. ignoring integer size, and const / volatile qualifiers. - All equality/hash methods of 'com.jogamp.gluegen.cgram.types.*' are restructured. - Track and simplify renamed 'symbol', i.e. use a common sub-interface for all renamed symbols (ConstantDefinition, FunctionSymbol, ..) - This is provided in a unified manner via interface com.jogamp.gluegen.cgram.types.AliasedSymbol and its common implementation AliasedSymbolImpl - All JavaConfiguration.shouldIgnore* methods operate w/ 'AliasedSymbol' trying to match all aliases. - Support 'struct NAME [ { ... } ]' w/o typedef's - New GL / CL headers do not use typedef's for anonymous opaque types - Opaque Type handling - JavaConfiguration.typeInfo(..), identifying opaque types, no more back references from target-type -> typedef. Hence the following is possible now: typedef void * Opaque01; // Opaque typedef void * APointerBuffer; // A Buffer - All Logger instances are no more static and derive their warning level from the package's root Logger via Logging.getLogger(..). 2015-03-05T06:14:04+010072d3635279ffc8ad88e47dff9bbe95d211226d11Bug 1134 - Enhance GlueGen Compiler: Minimal GL Header Changes _and_editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaaddsrc/java/com/jogamp/gluegen/cgram/types/TypeComparator.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.geditsrc/java/com/jogamp/gluegen/ReferencedStructs.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Field.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/gluegen/cgram/types/BitType.javaaddsrc/java/com/jogamp/gluegen/TypeConfig.javaeditsrc/java/com/jogamp/gluegen/cgram/types/SizeThunk.javaeditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/IntType.javaaddsrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FloatType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructType.javaeditmake/build-test.xmleditsrc/java/com/jogamp/gluegen/cgram/types/UnionType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/VoidType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaaddsrc/junit/com/jogamp/gluegen/test/junit/internals/TestType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/MemoryLayoutType.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/cgram/types/TypeDictionary.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/java/com/jogamp/gluegen/Logging.javaeditsrc/java/com/jogamp/gluegen/TypeInfo.javaeditsrc/java/com/jogamp/gluegen/cgram/types/EnumType.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/cgram/types/DoubleType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaea6df88075c44f6b6317920119d6b33d5d97b3621425536059000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix regression: Static C-Function call must use original API name - Regression of commit 72d3635279ffc8ad88e47dff9bbe95d211226d11 CMethodBindingEmitter emits statically linked function calls, hence needs to use the original name of AliasedSymbol. AliasedSymbol: Add 'getOrigName()' at creation! 2015-03-05T07:14:19+0100ea6df88075c44f6b6317920119d6b33d5d97b362Bug 1134 - Fix regression: Static C-Function call must use original APIeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/ASTLocusTag.javasrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/cgram/TNode.javasrc/java/com/jogamp/gluegen/cgram/types/EnumType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/GlueGenException.javasrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.g8eb9e27bccca4a0cd6a0b1b15bee76576ce030c31425619715000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Add ASTLocationTag, locating source of [semantic] errors while parsing / analyzing New GlueGenException supports ASTLocationTag, which will be throws in case of semantic and/or parsing errors. 2015-03-06T06:28:35+01008eb9e27bccca4a0cd6a0b1b15bee76576ce030c3Bug 1134 - Add ASTLocationTag, locating source of [semantic] errorseditsrc/java/com/jogamp/gluegen/JavaEmitter.javaaddsrc/java/com/jogamp/gluegen/GlueGenException.javaeditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/java/com/jogamp/gluegen/cgram/TNode.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javaeditsrc/antlr/com/jogamp/gluegen/cgram/HeaderParser.gaddsrc/java/com/jogamp/gluegen/ASTLocusTag.javaeditsrc/java/com/jogamp/gluegen/cgram/types/EnumType.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/ant/GlueGenTask.javasrc/java/com/jogamp/gluegen/Logging.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.java54dcf4271abf188585b248473cab11b0b4d938541425620098000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Refine Logging using 'LoggerIf' - Replace System.err w/ Logging where appropriate 2015-03-06T06:34:58+010054dcf4271abf188585b248473cab11b0b4d93854Bug 1134 - Refine Logging using 'LoggerIf' - Replace System.err w/editsrc/java/com/jogamp/gluegen/Logging.javaeditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/ant/GlueGenTask.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.javamake/build-test.xml4183867b055e99762d9b1a9163012657738be31a1425620370000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Utilize AliasedSymbol where required in *Configuration; Clarify ProcAddressEmitter criteria 2015-03-06T06:39:30+01004183867b055e99762d9b1a9163012657738be31aBug 1134 - Utilize AliasedSymbol where required in *Configuration;editmake/build-test.xmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.java1df503b8f14b385b35c6b50a4ff7ff03d1c3134f1425620518000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix ProcAddressEmitter.getFunctionPointerTypedefName() ; Fix JavaEmitter's Function/Struct Emission Fix ProcAddressEmitter.getFunctionPointerTypedefName(): - needs to produce function-pointer-type name w/ original name Fix JavaEmitter's Function/Struct Emission: - needs to create FunctionSymbol w/ original native name, - then rename - preserving the original one. 2015-03-06T06:41:58+01001df503b8f14b385b35c6b50a4ff7ff03d1c3134fBug 1134 - Fix ProcAddressEmitter.getFunctionPointerTypedefName() ; Fixeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/AliasedSymbol.javasrc/java/com/jogamp/gluegen/GlueGenException.javasrc/java/com/jogamp/gluegen/ASTLocusTag.java5f66fafec303de7d7904a499fefb8e3d023b61ae1425622350000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - GlueGenException.toString(): Produce a 'gcc' like/compatible error message 2015-03-06T07:12:30+01005f66fafec303de7d7904a499fefb8e3d023b61aeBug 1134 - GlueGenException.toString(): Produce a 'gcc' like/compatibleeditsrc/java/com/jogamp/gluegen/GlueGenException.javaeditsrc/java/com/jogamp/gluegen/ASTLocusTag.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h43f200428eb595665d6db6edbd5538413f5a977c1425629939000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1134 - Fix regression on OpenSolaris/gcc: Redefine in test1.h (test case) 2015-03-06T09:18:59+010043f200428eb595665d6db6edbd5538413f5a977cBug 1134 - Fix regression on OpenSolaris/gcc: Redefine in test1.h (testeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hgithttps://jogamp.org/chuck/user/sgothelSven Gothel846https://jogamp.org/chuck/job/gluegen/label=android-arm64/846/846https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/846/846https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/846/846https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/846/Started by user Sven GothelsgothelSven Gothel844dd2440cbadc642a561d8f92c502fe822b2f11762dd2440cbadc642a561d8f92c502fe822b2f11762origin/masterdd2440cbadc642a561d8f92c502fe822b2f11762dd2440cbadc642a561d8f92c502fe822b2f11762origin/masterdd2440cbadc642a561d8f92c502fe822b2f11762dd2440cbadc642a561d8f92c502fe822b2f11762origin/mastergit://jogamp.org/srv/scm/gluegen.git502065testReportfalse#8443033263460248gluegen #8442015-02-05_04-37-06falsefalse844-1UNSTABLE1423107426000https://jogamp.org/chuck/job/gluegen/844/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/scripts/setenv-build-jogl-x86_64.sh2328173804f78f536b161f31d7c73be16823c7f31423088243000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.combuild setup script: remove redundant ANT_PATH entry 2015-02-04T23:17:23+01002328173804f78f536b161f31d7c73be16823c7f3build setup script: remove redundant ANT_PATH entryeditmake/scripts/setenv-build-jogl-x86_64.shsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.javasrc/java/com/jogamp/common/os/DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/runtime/FunctionAddressResolver.javadd2440cbadc642a561d8f92c502fe822b2f117621423088362000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRefine commit 12feaa7d3b1544098f684d851e3caff1ec88cbc8: Add 'throws SecurityException' decl., remove dead code, remove redundant check. 2015-02-04T23:19:22+0100dd2440cbadc642a561d8f92c502fe822b2f11762Refine commit 12feaa7d3b1544098f684d851e3caff1ec88cbc8: Add 'throwseditsrc/java/com/jogamp/common/os/DynamicLibraryBundle.javaeditsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.javaeditsrc/java/com/jogamp/gluegen/runtime/FunctionAddressResolver.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel844https://jogamp.org/chuck/job/gluegen/label=android-arm64/844/844https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/844/844https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/844/844https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/844/Started by user Sven GothelsgothelSven Gothel84372e348dfcdfe2aa2f0878950d943e738ea94422a72e348dfcdfe2aa2f0878950d943e738ea94422aorigin/master72e348dfcdfe2aa2f0878950d943e738ea94422a72e348dfcdfe2aa2f0878950d943e738ea94422aorigin/master72e348dfcdfe2aa2f0878950d943e738ea94422a72e348dfcdfe2aa2f0878950d943e738ea94422aorigin/mastergit://jogamp.org/srv/scm/gluegen.git402056testReportfalse#8433124043460248gluegen #8432015-02-03_13-35-15falsefalse843-1UNSTABLE1422966915000https://jogamp.org/chuck/job/gluegen/843/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/gluegen-cpptasks-base.xml72e348dfcdfe2aa2f0878950d943e738ea94422a1422963232000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix regression of commit 3caf446e29a3934900b9983dfd72cb8aa0d9e8d7: Win64 is not LP64 2015-02-03T12:33:52+010072e348dfcdfe2aa2f0878950d943e738ea94422aFix regression of commit 3caf446e29a3934900b9983dfd72cb8aa0d9e8d7: Win64editmake/gluegen-cpptasks-base.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel843https://jogamp.org/chuck/job/gluegen/label=android-arm64/843/843https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/843/843https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/843/843https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/843/Started by user Sven GothelsgothelSven Gothel842d8dff4c9f2186749b167195eeb339c33f56864e8d8dff4c9f2186749b167195eeb339c33f56864e8origin/masterd8dff4c9f2186749b167195eeb339c33f56864e8d8dff4c9f2186749b167195eeb339c33f56864e8origin/masterd8dff4c9f2186749b167195eeb339c33f56864e8d8dff4c9f2186749b167195eeb339c33f56864e8origin/mastergit://jogamp.org/srv/scm/gluegen.git502067testReportfalse#8423210597460248gluegen #8422015-02-03_03-21-30falsefalse842-1UNSTABLE1422930090000https://jogamp.org/chuck/job/gluegen/842/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/ReflectionUtil.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/ExceptionUtils.java785af7ed26b18d5c85e40e525859ac65deb370171414282591000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRefine ExceptionUtils: Shorten method name, dumpThrowable uses dumpStack 2014-10-26T01:16:31+0100785af7ed26b18d5c85e40e525859ac65deb37017Refine ExceptionUtils: Shorten method name, dumpThrowable uses dumpStackeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/com/jogamp/common/util/ReflectionUtil.javaeditsrc/java/com/jogamp/common/ExceptionUtils.javasrc/java/com/jogamp/common/ExceptionUtils.javaca4f075aeed16331f0b806ea564ca3d4920393361417630791000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comExceptionUtils.dumpStack(..): Skip self stack entry 2014-12-03T19:19:51+0100ca4f075aeed16331f0b806ea564ca3d492039336ExceptionUtils.dumpStack(..): Skip self stack entryeditsrc/java/com/jogamp/common/ExceptionUtils.javasrc/junit/com/jogamp/common/util/TestBitstream00.javamake/scripts/runtest.shsrc/junit/com/jogamp/common/util/TestBitstream02.javasrc/junit/com/jogamp/common/util/TestBitstream01.javasrc/junit/com/jogamp/common/util/TestBitstream04.javasrc/java/com/jogamp/common/util/Bitstream.javasrc/junit/com/jogamp/common/util/TestBitstream03.java9e13e8c78ed69bb7afcd49abe8bf69340dc062231417631446000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1106 - Bitstream: Simplify 'msbFirst' case for bulk operations / Add setting of stream position (optional) - Add setting position entry, optionally supported, e.g. ByteBufferStream and ByteArrayStream - Remove 'msbFirst' parameter on all 'bulk' read/write operations. These methods use LSB-first always, allowing proper stream access of data w/ different bit-sizes. Data is now read/write as little-endian and swapped accordingly. Optimizations are adopted for LSB-first operations. This change removes API confusion/bugs: - removes one decision (parameter) - removes the data reversion case - removes bugs w/ different bit-sizes 2014-12-03T19:30:46+01009e13e8c78ed69bb7afcd49abe8bf69340dc06223Bug 1106 - Bitstream: Simplify 'msbFirst' case for bulk operations / Addeditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/util/TestBitstream03.javaeditsrc/java/com/jogamp/common/util/Bitstream.javaeditsrc/junit/com/jogamp/common/util/TestBitstream04.javaeditsrc/junit/com/jogamp/common/util/TestBitstream00.javaeditsrc/junit/com/jogamp/common/util/TestBitstream02.javaeditsrc/junit/com/jogamp/common/util/TestBitstream01.javasrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/runtest-x32.batmake/scripts/runtest.shmake/scripts/runtest-x64.bat150ea4f231c9629ef9ef354e3f1a92a516d46f911418313625000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1108 - IOUtil.getTempDir(..): Difficulties to determine executable access permission on Windows via BATCH file execution Try using explicit call to Windows 'cmd.exe' w/ referencing the BATCH file location, via 'Runtime.getRuntime().exec(new String[] { "cmd", "/c", "a.bat" } );' While the bug itself could not be reproduced here, I could test on Windows 7 (64bit and 32bit), as well as an WindowsXP 32bit that no regression occured. 2014-12-11T17:00:25+0100150ea4f231c9629ef9ef354e3f1a92a516d46f91Bug 1108 - IOUtil.getTempDir(..): Difficulties to determine executableeditmake/scripts/runtest.sheditmake/scripts/runtest-x64.bateditmake/scripts/runtest-x32.bateditsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java558d51e384e8c4e2bf3d4f646724c3351101b6051418317526000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaEmitter: Use proper class access modifiers for emitted classes incl. ProcAddressTable Emitted Java classes as well as optional ProcAddressTable shall use unique generated access modifiers covering all MethodAccess cases. 2014-12-11T18:05:26+0100558d51e384e8c4e2bf3d4f646724c3351101b605GlueGen JavaEmitter: Use proper class access modifiers for emittededitsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javamake/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/runtest-x32.batmake/scripts/runtest.shmake/scripts/make.gluegen.all.win32.batmake/scripts/runtest-x64.batmake/scripts/java-win32.batmake/scripts/test-win32-smb_share.bat235a64d1f2354fa15805d1759ff0b46c71338b4f1418397522000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comtest scripts: Bump JRE, add TEMP/TMP settings 2014-12-12T16:18:42+0100235a64d1f2354fa15805d1759ff0b46c71338b4ftest scripts: Bump JRE, add TEMP/TMP settingseditmake/scripts/runtest.sheditmake/scripts/test-win32-smb_share.bateditmake/scripts/java-win32.bateditmake/scripts/make.gluegen.all.win32.bateditmake/scripts/make.gluegen.all.win64.bateditmake/scripts/runtest-x32.bateditmake/scripts/runtest-x64.bateditmake/scripts/java-win64.batsrc/java/com/jogamp/common/util/cache/TempFileCache.javasrc/java/com/jogamp/common/util/cache/TempJarCache.javaf26fcc971dc95ffb7033ac9e539a3c0ebb43025a1418398535000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTempFileCache/TempJarCache: Fix NPE in DEBUG mode 2014-12-12T16:35:35+0100f26fcc971dc95ffb7033ac9e539a3c0ebb43025aTempFileCache/TempJarCache: Fix NPE in DEBUG modeeditsrc/java/com/jogamp/common/util/cache/TempFileCache.javaeditsrc/java/com/jogamp/common/util/cache/TempJarCache.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/native/tinype-corkami/tiny-simple.asmsrc/native/tinype-corkami/tiny.asmsrc/native/tinype-corkami/consts.incsrc/native/tinype-corkami/readme.txtsrc/native/tinype-corkami/make.batmake/build.xmlsrc/java/com/jogamp/common/util/bin/exe-windows-i586-268b.bin181dc8ae227cd5cbecf60ab8d973bb8eef7c45f01418445539000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1108 - Fix difficulties to determine executable access permission on Windows via BATCH file execution Batch file execution test via direct call, i.e.'a.bat', does not work on some Windows machine, not reproducible here! A workaround would be to call the batch file explicit via 'CMD /c a.bat': - works when using 'Software Restriction Policies' (Bug 1015 Comment 2) - does _not_ work when denying ACL "Traverse Folder / Execute File" permission (Bug 1015 Comment 3) Due to this bug, we need to use a native execution: - Performing executable test w/ native exe file instead of batch file on Windows x86 32bit and 64bit, - using [1] TinyPE XP-W8 Compatible - x86 32bit and 64bit - 268 bytes - Tested on: WinXP-32bit, Win7-64bit and Win8-64bit - Author/License: Ange Albertini, BSD Licence, 2010-2013 - On all other Windows machines (ARM, ..), we still use direct execution of 'a.bat' but may add native exe files for missing platforms. +++ This patch injects said binaries within the java jar file and copies it into the 'to be tested' temp folder for execution. [1] TinyPE XP-W8 Compatible - x86 32bit and 64bit - 268 bytes is included within 'src/native/tinype-corkami', build manually and imported as 'src/java/com/jogamp/common/util/bin/exe-windows-i586-268b.bin'. +++ 2014-12-13T05:38:59+0100181dc8ae227cd5cbecf60ab8d973bb8eef7c45f0Bug 1108 - Fix difficulties to determine executable access permission onaddsrc/native/tinype-corkami/make.bataddsrc/java/com/jogamp/common/util/bin/exe-windows-i586-268b.binaddsrc/native/tinype-corkami/readme.txteditmake/build.xmladdsrc/native/tinype-corkami/tiny.asmaddsrc/native/tinype-corkami/consts.incaddsrc/native/tinype-corkami/tiny-simple.asmeditsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.java55b9d1a9c22ac2cfba9a876c9860aa3f151996061418882533000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comProcAddressConfiguration: Allow setting default value for 'GetProcAddressTableExpr' 2014-12-18T07:02:13+010055b9d1a9c22ac2cfba9a876c9860aa3f15199606ProcAddressConfiguration: Allow setting default value foreditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressConfiguration.javasrc/java/com/jogamp/common/ExceptionUtils.java8f29378cfcef86b0e7c351e9c5df3c07b15edca91422044550000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comExceptionUtils.dumpThrowable(..): Also dump all causes of the given Throwable 2015-01-23T21:22:30+01008f29378cfcef86b0e7c351e9c5df3c07b15edca9ExceptionUtils.dumpThrowable(..): Also dump all causes of the giveneditsrc/java/com/jogamp/common/ExceptionUtils.javamake/scripts/make.gluegen.all.android-armv7-cross.shmake/scripts/make.gluegen.all.android-armv6-cross.shmake/jogamp-androidtasks.xmlmake/scripts/setenv-android-tools.sh26c6d2c724ddda48bfbeedffe626f81ab3178ae11422403292000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1124 - Android Build: Use SDK >= 24.0.2 (build-tools >= 21.1.2) and NDK >= 10d Adjust build scripts and GlueGen Android tasks for SDK >= 24.0.2 (build-tools >= 21.1.2) and NDK >= 10d 2015-01-28T01:01:32+010026c6d2c724ddda48bfbeedffe626f81ab3178ae1Bug 1124 - Android Build: Use SDK >= 24.0.2 (build-tools >= 21.1.2) andaddmake/scripts/setenv-android-tools.sheditmake/scripts/make.gluegen.all.android-armv6-cross.sheditmake/scripts/make.gluegen.all.android-armv7-cross.sheditmake/jogamp-androidtasks.xmlsrc/java/jogamp/android/launcher/ClassLoaderUtil.javaee977a8a773b3461c42f64583d6cfe1ab5322b9e1422403343000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1123 - Android Launcher/ClassLoaderUtil: Fails to work w/ Android 5.* (lollipop/art) Our Android ClassLoaderUtil, used to daisy chain dex ClassLoader using GlueGen, Joal and Jogl APK files, doesn't work on Android 5.* (lollipop) with the art runtime. See below adb log. Seems like this is a known issue https://code.google.com/p/android/issues/detail?id=82122 Workaround mentioned is to copy the APK file(s) to a temp directory .. 2015-01-28T01:02:23+0100ee977a8a773b3461c42f64583d6cfe1ab5322b9eBug 1123 - Android Launcher/ClassLoaderUtil: Fails to work w/ Androideditsrc/java/jogamp/android/launcher/ClassLoaderUtil.javamake/lib/android-sdk/21/LICENSE.txtmake/lib/android-sdk/21/android-java-src.zipmake/lib/android-sdk/21/android.jarmake/lib/android-sdk/21/NOTICE.txtmake/lib/android-sdk/21/android-java-src.txt89c5a976d86a659bd81ec52aae224ff810fd9b231422589765000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1122 - Add Android API 21 jar file and source zip 2015-01-30T04:49:25+010089c5a976d86a659bd81ec52aae224ff810fd9b23Bug 1122 - Add Android API 21 jar file and source zipaddmake/lib/android-sdk/21/android.jaraddmake/lib/android-sdk/21/LICENSE.txtaddmake/lib/android-sdk/21/android-java-src.txtaddmake/lib/android-sdk/21/android-java-src.zipaddmake/lib/android-sdk/21/NOTICE.txtsrc/java/com/jogamp/gluegen/JavaEmitter.java0676d6f8b3ddf947b297be4de68517faf334dde01422593320000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Make const array-length getter static, if constant. 2015-01-30T05:48:40+01000676d6f8b3ddf947b297be4de68517faf334dde0GlueGen: Make const array-length getter static, if constant.editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/jogamp/common/os/elf/ElfHeader.javasrc/java/jogamp/common/os/elf/Ehdr.javasrc/java/jogamp/common/os/elf/Shdr.javab6e3878d253abab0dc864279eb1ae01fff220acf1422593450000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1122 - Elf Parser: EM_res183 -> EM_AARCH64, detecting AArch64; Updating Shdr and Ehdr via GlueGen 2015-01-30T05:50:50+0100b6e3878d253abab0dc864279eb1ae01fff220acfBug 1122 - Elf Parser: EM_res183 -> EM_AARCH64, detecting AArch64;editsrc/java/jogamp/common/os/elf/Ehdr.javaeditsrc/java/jogamp/common/os/elf/ElfHeader.javaeditsrc/java/jogamp/common/os/elf/Shdr.javasrc/java/com/jogamp/common/os/AndroidVersion.javamake/lib/gluegen-cpptasks-android-aarch64.xmlsrc/java/com/jogamp/common/os/Platform.javasrc/java/jogamp/common/os/MachineDescriptionRuntime.javamake/scripts/adb-install-all-arm64-v8a.shmake/gluegen-cpptasks-base.xmlmake/scripts/make.gluegen.all.android-aarch64-cross.shsrc/java/com/jogamp/common/os/MachineDescription.javamake/scripts/adb-reinstall-all-arm64-v8a.shsrc/java/jogamp/common/os/PlatformPropsImpl.java30933c60156c67a9624fefae2be6504300ce71bb1422594279000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1122: Add AArch64 support (Android, GNU/Linux and in general) - Add AArch64 detection via - Elf Parser - Android properties - Java properties - Android: Validate CPUType.Family _and_ ABIType - MachineDescription - Remove redundant Type ID and its field - Reuse X86_64_UNIX for AArch64 (static config) New ARCH 'aarch64' for ant: <os arch> armv8a aarch64 New CPUType.ARM64 (ARM): java: os.arch aarch64 arm64 New CPUType.ARMv8_A (ARM): java: os.arch armv8-a arm64-v8a New ABIType: EABI_AARCH64 2015-01-30T06:04:39+010030933c60156c67a9624fefae2be6504300ce71bbBug 1122: Add AArch64 support (Android, GNU/Linux and in general)editsrc/java/com/jogamp/common/os/Platform.javaaddmake/scripts/adb-install-all-arm64-v8a.shaddmake/scripts/make.gluegen.all.android-aarch64-cross.shaddmake/scripts/adb-reinstall-all-arm64-v8a.shaddmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/gluegen-cpptasks-base.xmleditsrc/java/com/jogamp/common/os/AndroidVersion.javaeditsrc/java/com/jogamp/common/os/MachineDescription.javaeditsrc/java/jogamp/common/os/MachineDescriptionRuntime.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javasrc/native/unix/UnixDynamicLinkerImpl_JNI.csrc/native/windows/WindowsDynamicLinkerImpl_JNI.csrc/native/common/JVMUtil.c6eba192bec7cc6258fbc0c97b448fe4a4d45de9a1422643589000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Cleanup static generated JNI code (fix method names) Symbol could not be found w/ Android: UnixDynamicLinkerImpl_JNI.c::Java_jogamp_common_os_UnixDynamicLinkerImpl_dlerror 2015-01-30T19:46:29+01006eba192bec7cc6258fbc0c97b448fe4a4d45de9aGlueGen: Cleanup static generated JNI code (fix method names)editsrc/native/unix/UnixDynamicLinkerImpl_JNI.ceditsrc/native/windows/WindowsDynamicLinkerImpl_JNI.ceditsrc/native/common/JVMUtil.cmake/lib/gluegen-cpptasks-android-aarch64.xmlmake/lib/gluegen-cpptasks-android-armv6.xmlmake/lib/gluegen-cpptasks-android-armv7.xmlmake/gluegen-cpptasks-base.xmlmake/stub_includes/platform/gluegen_stddef.hmake/stub_includes/platform/gluegen_stdint.hmake/stub_includes/platform/glibc-compat-symbols.h3caf446e29a3934900b9983dfd72cb8aa0d9e8d71422643802000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1122: Reflect __LP64__ and _aarch64__ in GlueGen's stdint/stddef and Android compilerflags 2015-01-30T19:50:02+01003caf446e29a3934900b9983dfd72cb8aa0d9e8d7Bug 1122: Reflect __LP64__ and _aarch64__ in GlueGen's stdint/stddef andeditmake/stub_includes/platform/gluegen_stdint.heditmake/gluegen-cpptasks-base.xmleditmake/lib/gluegen-cpptasks-android-aarch64.xmleditmake/lib/gluegen-cpptasks-android-armv6.xmleditmake/stub_includes/platform/gluegen_stddef.heditmake/lib/gluegen-cpptasks-android-armv7.xmleditmake/stub_includes/platform/glibc-compat-symbols.hsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.javasrc/java/jogamp/common/os/BionicDynamicLinker64BitImpl.javasrc/java/jogamp/common/os/UnixDynamicLinkerImpl.javasrc/java/com/jogamp/common/os/DynamicLinker.javasrc/java/jogamp/common/os/BionicDynamicLinkerImpl.javasrc/java/com/jogamp/common/os/DynamicLookupHelper.javasrc/java/jogamp/common/os/BionicDynamicLinker32bitImpl.javasrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.javasrc/java/jogamp/common/os/PosixDynamicLinkerImpl.javasrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.javasrc/java/com/jogamp/common/os/DynamicLibraryBundle.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/jogamp/common/os/DynamicLinkerImpl.java12feaa7d3b1544098f684d851e3caff1ec88cbc81422644957000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRefine Native Library Code: Bulk Permissions, Cleanup DynamicLinker impl. - and fix Android AArch64 BionicDynamicLinker (Bug 1122) - Bulk Permissions ProcAddressTable.reset(..) performs address lookup in one block. Now claiming all permissions upfront once, and releasing them afterwards. - Cleanup DynamicLinker impl. Proper top-down impl. of DynamicLinkerImpl, handling all security code and validations. - Fix Android AArch64 BionicDynamicLinker (Bug 1122) Dalvik uses diff RTLD_* defines for AArch64! 2015-01-30T20:09:17+010012feaa7d3b1544098f684d851e3caff1ec88cbc8Refine Native Library Code: Bulk Permissions, Cleanup DynamicLinkereditsrc/java/jogamp/common/os/MacOSXDynamicLinkerImpl.javaeditsrc/java/com/jogamp/common/os/DynamicLookupHelper.javaeditsrc/java/jogamp/common/os/DynamicLinkerImpl.javadeletesrc/java/jogamp/common/os/BionicDynamicLinkerImpl.javaaddsrc/java/jogamp/common/os/BionicDynamicLinker64BitImpl.javaeditsrc/java/jogamp/common/os/PosixDynamicLinkerImpl.javaeditsrc/java/com/jogamp/gluegen/runtime/ProcAddressTable.javaeditsrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.javaeditsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.javaaddsrc/java/jogamp/common/os/BionicDynamicLinker32bitImpl.javaeditsrc/java/com/jogamp/common/os/DynamicLinker.javaeditsrc/java/com/jogamp/common/os/DynamicLibraryBundle.javaeditsrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/os/AndroidVersion.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javasrc/java/com/jogamp/common/os/Platform.javasrc/java/jogamp/common/os/MachineDescriptionRuntime.javasrc/java/com/jogamp/common/os/MachineDescription.java0deceee37d943faa7c34971388863a27f395d6a51422645345000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1122: Refine AArch64 and OSType/32Bit incl. MachineDescription Android: - Detect ABIType.EABI_GNU_ARMHF via 'armeabi-v7a-hard' Platform.CPUType: - contains is32Bit now MachineDescription: - Rename *x86_64_unix* -> *lp64_unix*, reflecting universal __LP64__ mode - Remove is32Bit, which is determined by CPUType 2015-01-30T20:15:45+01000deceee37d943faa7c34971388863a27f395d6a5Bug 1122: Refine AArch64 and OSType/32Bit incl. MachineDescriptioneditsrc/java/com/jogamp/common/os/MachineDescription.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javaeditsrc/java/jogamp/common/os/MachineDescriptionRuntime.javaeditsrc/java/com/jogamp/common/os/AndroidVersion.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/jogamp/common/os/elf/ElfHeaderPart2.javasrc/java/com/jogamp/common/os/AndroidVersion.javasrc/java/jogamp/common/os/elf/IOUtils.javasrc/java/jogamp/common/os/elf/SectionHeader.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/jogamp/common/os/elf/Ehdr_p1.javamake/elf-header.cfgmake/scripts/runtest.shsrc/java/jogamp/common/os/elf/ElfHeader.javasrc/java/jogamp/common/os/MachineDescriptionRuntime.javasrc/java/com/jogamp/common/util/VersionUtil.javasrc/java/jogamp/common/os/elf/Ehdr.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javasrc/java/jogamp/common/os/PlatformPropsImpl.javamake/stub_includes/os/elf_header.hsrc/junit/com/jogamp/common/os/TestElfReader01.javasrc/java/com/jogamp/common/os/Platform.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/jogamp/common/os/elf/SectionArmAttributes.javasrc/java/jogamp/common/os/elf/ElfHeaderPart1.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javasrc/java/com/jogamp/common/os/MachineDescription.javasrc/java/jogamp/common/os/elf/Shdr.javasrc/java/jogamp/common/os/elf/Ehdr_p2.javaa3f2d08801c5a54048faca52f422bcededf81b2a1422760899000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1125 - Make ELF Reader 'jogamp.common.os.elf' Stateless ELF Reader 'jogamp.common.os.elf' currently uses Platform's pre-determined OS_TYPE and CPUType. It also uses the host platforms MachineDescription, hence can not read ELF files from other machines. This also forbids Platform to determine CPUType etc w/o having a valid 'os.arch' property. +++ ElfHeader should be split in - ElfHeaderPart1 (CPUType independent) - ElfHeaderPart2 (CPUType dependent) Fix shall make the ELF Reader self containing by only using ELF CPUType data, etc. This requires customization of struct parsing, where MachineDescription.Static index shall be - defined in ElfHeaderPart1 using e_Ident's CPUType. - used in ElfHeaderPart2 and all its struct types. 2015-02-01T04:21:39+0100a3f2d08801c5a54048faca52f422bcededf81b2aBug 1125 - Make ELF Reader 'jogamp.common.os.elf' Statelesseditsrc/java/jogamp/common/os/elf/Shdr.javaaddsrc/java/jogamp/common/os/elf/ElfHeaderPart1.javaeditsrc/junit/com/jogamp/common/os/TestElfReader01.javaeditmake/stub_includes/os/elf_header.heditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaaddsrc/java/jogamp/common/os/elf/Ehdr_p1.javaeditsrc/java/jogamp/common/os/elf/SectionArmAttributes.javaeditsrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javaeditmake/elf-header.cfgeditsrc/java/com/jogamp/common/util/VersionUtil.javaeditsrc/java/com/jogamp/common/os/MachineDescription.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditmake/scripts/runtest.shdeletesrc/java/jogamp/common/os/elf/ElfHeader.javaaddsrc/java/jogamp/common/os/elf/ElfHeaderPart2.javadeletesrc/java/jogamp/common/os/elf/Ehdr.javaaddsrc/java/jogamp/common/os/elf/Ehdr_p2.javaeditsrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/jogamp/common/os/MachineDescriptionRuntime.javaeditsrc/java/jogamp/common/os/elf/IOUtils.javaeditsrc/java/jogamp/common/os/elf/SectionHeader.javaeditsrc/java/com/jogamp/common/os/AndroidVersion.javasrc/java/com/jogamp/common/os/NativeLibrary.javasrc/java/com/jogamp/common/nio/Buffers.java234819d531cdf20842cd0b3302935b187b2012d61422761022000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMinor Cleanup: Buffers: Remove !JAVA_6 branch; NativeLibrary: Reuse isOSX detection 2015-02-01T04:23:42+0100234819d531cdf20842cd0b3302935b187b2012d6Minor Cleanup: Buffers: Remove !JAVA_6 branch; NativeLibrary: Reuseeditsrc/java/com/jogamp/common/os/NativeLibrary.javaeditsrc/java/com/jogamp/common/nio/Buffers.javasrc/java/com/jogamp/gluegen/cgram/types/Field.javamake/elf-header.cfgmake/scripts/runtest.shsrc/java/jogamp/common/os/MachineDataInfoRuntime.javasrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javasrc/junit/com/jogamp/common/util/TestPlatform01.javasrc/junit/com/jogamp/common/nio/TestPointerBufferEndian.javasrc/native/common/MachineDataInfoRuntime.csrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javamake/build.xmlsrc/java/jogamp/common/os/PlatformPropsImpl.javasrc/java/com/jogamp/common/os/Platform.javasrc/java/com/jogamp/gluegen/package.htmlsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/junit/com/jogamp/junit/sec/Applet01.javasrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/java/jogamp/common/os/elf/ElfHeaderPart2.javasrc/junit/com/jogamp/common/nio/TestStructAccessorEndian.javasrc/native/common/MachineDescriptionRuntime.csrc/java/com/jogamp/gluegen/cgram/types/SizeThunk.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/jogamp/common/os/elf/Ehdr_p1.javasrc/java/jogamp/common/os/MachineDescriptionRuntime.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/common/util/VersionUtil.javasrc/java/com/jogamp/common/os/MachineDataInfo.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javamake/gluegen-cpptasks-base.xmlsrc/java/jogamp/common/os/elf/ElfHeaderPart1.javasrc/java/com/jogamp/common/os/MachineDescription.javasrc/java/jogamp/common/os/elf/Shdr.javasrc/java/jogamp/common/os/elf/Ehdr_p2.java7db9df61142694965b50f2e0553d4c9e5668439b1422829349000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1126 - Remove static query requirement of MachineDescriptor, find matching StaticConfig at runtime; Fix PPC (Bug 1056) and MIPSLE (Bug 1014) issues. Currently the StaticConfig is being queried via the key[OSType, CPUType ..] as pre-determined by Java properties or the ELF parser. This adds complication to maintain different platforms and the key query might not even be sufficient. The MachineDescriptor's StaticConfig only purpose shall be to speed-up native data size and offset/alignment retrieval. This is done by using the StaticConfig index within all StaticConfig[]s as a lookup-index for the precomputed struct's size and offset tables. +++ Solution: Rename: MachineDescriptor -> MachineDataInfo Rename: MachineDescriptorRuntime -> MachineDataInfoRuntime After having defined os.and.arch (OSType, CPUType and ABIType) w/ the optional help of the now self containing ELF Reader (Bug 1125), the native gluegen-rt library gets loaded enabling JNI methods. It is satisfactory to retrieve MachineDataInfo at runtime w/ JNI and find the matching/compatible StaticConfig. Only in case none is found, the program needs to abort. Otherwise the found MachineDataInfo.StaticConfig and MachineDataInfo are stored for further use (see above). This removes above complication and key to StaticConfig mapping. New platforms simply need to add a new unique entry into the StaticConfig[] table. ++ Also fixes Bug 1056 (PPC), thanks to tmancill [@] debian [.] org, and Bug 1014 (MIPSLE), thanks to Dejan Latinovic. Parts of the patch for Bug 1014 from Dejan Latinovic are included. also solved by this change set. 2015-02-01T23:22:29+01007db9df61142694965b50f2e0553d4c9e5668439bBug 1126 - Remove static query requirement of MachineDescriptor, findeditsrc/java/com/jogamp/gluegen/cgram/types/Field.javaeditsrc/junit/com/jogamp/common/nio/TestPointerBufferEndian.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/junit/com/jogamp/junit/sec/Applet01.javaeditsrc/java/jogamp/common/os/elf/ElfHeaderPart2.javadeletesrc/java/com/jogamp/common/os/MachineDescription.javaeditsrc/java/com/jogamp/common/util/VersionUtil.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/java/com/jogamp/gluegen/package.htmleditsrc/java/com/jogamp/gluegen/cgram/types/SizeThunk.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaaddsrc/native/common/MachineDataInfoRuntime.ceditsrc/junit/com/jogamp/common/util/TestPlatform01.javadeletesrc/java/jogamp/common/os/MachineDescriptionRuntime.javaeditmake/elf-header.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/jogamp/common/os/elf/Ehdr_p1.javaeditmake/gluegen-cpptasks-base.xmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/jogamp/common/os/elf/Shdr.javaeditmake/scripts/runtest.shaddsrc/java/jogamp/common/os/MachineDataInfoRuntime.javaeditmake/build.xmladdsrc/java/com/jogamp/common/os/MachineDataInfo.javaeditsrc/junit/com/jogamp/common/util/TestIOUtil01.javaeditsrc/java/jogamp/common/os/PlatformPropsImpl.javaeditsrc/java/jogamp/common/os/elf/ElfHeaderPart1.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javaeditsrc/junit/com/jogamp/common/nio/TestStructAccessorEndian.javaeditsrc/java/jogamp/common/os/elf/Ehdr_p2.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javadeletesrc/native/common/MachineDescriptionRuntime.cmake/scripts/make.gluegen.all.android-armv7-cross.shmake/lib/gluegen-cpptasks-android-armv7.xmlmake/scripts/crosstest-junit-android-armv7-rel.sh4621d94cd8081b00bc02929da08eed7258d7d9a41422876193000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRemove unused armv7 scripts and gluegen piece 2015-02-02T12:23:13+01004621d94cd8081b00bc02929da08eed7258d7d9a4Remove unused armv7 scripts and gluegen piecedeletemake/lib/gluegen-cpptasks-android-armv7.xmldeletemake/scripts/crosstest-junit-android-armv7-rel.shdeletemake/scripts/make.gluegen.all.android-armv7-cross.shmake/build.xmlmake/jogamp-androidtasks.xml3b43a223253176731567c6d8b7a67c9a6110782b1422901082000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen AAPT Task: Android APK native-code files shall be named using 'os.and.arch', instead of android.abi for harmonization 2015-02-02T19:18:02+01003b43a223253176731567c6d8b7a67c9a6110782bGlueGen AAPT Task: Android APK native-code files shall be named usingeditmake/jogamp-androidtasks.xmleditmake/build.xmlmake/scripts/adb-reinstall-all-armv7.shmake/scripts/adb-install-all-armv6.shmake/scripts/adb-install-all-aarch64.shmake/scripts/adb-reinstall-all-aarch64.shmake/scripts/adb-install-all-arm64-v8a.shmake/scripts/adb-install-all-armv7.shmake/scripts/adb-reinstall-all-arm64-v8a.sh1a80c33a16594e9a7182887a911ed44c9fbc9f791422906022000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Adapt APK install scripts for harmonized os.and.arch names, see commit 3b43a223253176731567c6d8b7a67c9a6110782b 2015-02-02T20:40:22+01001a80c33a16594e9a7182887a911ed44c9fbc9f79GlueGen: Adapt APK install scripts for harmonized os.and.arch names, seedeletemake/scripts/adb-reinstall-all-arm64-v8a.shdeletemake/scripts/adb-reinstall-all-armv7.shdeletemake/scripts/adb-install-all-armv7.sheditmake/scripts/adb-install-all-armv6.shaddmake/scripts/adb-install-all-aarch64.shaddmake/scripts/adb-reinstall-all-aarch64.shdeletemake/scripts/adb-install-all-arm64-v8a.shmake/jogamp-env.xmlmake/build.xmld8dff4c9f2186749b167195eeb339c33f56864e81422925617000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd javadoc arg '-Xdoclint:none' if java >= 1.8 via property 'javadoc.xarg1' avoiding javadoc build failure 2015-02-03T02:06:57+0100d8dff4c9f2186749b167195eeb339c33f56864e8Add javadoc arg '-Xdoclint:none' if java >= 1.8 via propertyeditmake/build.xmleditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel842https://jogamp.org/chuck/job/gluegen/label=android-arm64/842/842https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/842/842https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/842/842https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/842/Started by user Sven GothelsgothelSven Gothel8386f5b67d998b1be9b49584bbb55814d10fe55e8136f5b67d998b1be9b49584bbb55814d10fe55e813origin/master6f5b67d998b1be9b49584bbb55814d10fe55e8136f5b67d998b1be9b49584bbb55814d10fe55e813origin/master6f5b67d998b1be9b49584bbb55814d10fe55e8136f5b67d998b1be9b49584bbb55814d10fe55e813origin/mastergit://jogamp.org/srv/scm/gluegen.git502267testReportfalse#8382878260460248gluegen #8382014-10-08_08-50-26falsefalse838-1UNSTABLE1412751026000https://jogamp.org/chuck/job/gluegen/838/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/util/locks/TestSingletonServerSocket02.javasrc/junit/com/jogamp/junit/util/SingletonJunitCase.java2afb19885905285399b90f9a489fba8d2a09454e1412376433000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSingletonJunitCase: Increase TO 12 -> 15 mins, only sleep for 1 poll period (500 ms) per JVM after test class (cooperative w/ other JVM test instances) 2014-10-04T00:47:13+02002afb19885905285399b90f9a489fba8d2a09454eSingletonJunitCase: Increase TO 12 -> 15 mins, only sleep for 1 polleditsrc/junit/com/jogamp/junit/util/SingletonJunitCase.javaeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket02.javasrc/java/com/jogamp/common/ExceptionUtils.java6f5b67d998b1be9b49584bbb55814d10fe55e8131412742866000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd ExceptionUtils: Exposing dumpStackTrace(..) and dumpThrowable(..) 2014-10-08T06:34:26+02006f5b67d998b1be9b49584bbb55814d10fe55e813Add ExceptionUtils: Exposing dumpStackTrace(..) and dumpThrowable(..)addsrc/java/com/jogamp/common/ExceptionUtils.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel838https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/838/838https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/838/838https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/838/Started by user Sven GothelsgothelSven Gothel8370d9efa74b10ea29d33ecc9c2b9f06bb2209d96ca0d9efa74b10ea29d33ecc9c2b9f06bb2209d96caorigin/master0d9efa74b10ea29d33ecc9c2b9f06bb2209d96ca0d9efa74b10ea29d33ecc9c2b9f06bb2209d96caorigin/master0d9efa74b10ea29d33ecc9c2b9f06bb2209d96ca0d9efa74b10ea29d33ecc9c2b9f06bb2209d96caorigin/mastergit://jogamp.org/srv/scm/gluegen.git602242testReportfalse#8373100547460248gluegen #8372014-10-03_06-15-38falsefalse837-1UNSTABLE1412309738000https://jogamp.org/chuck/job/gluegen/837/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/lib/semantic-versioning/README.mdmake/lib/semantic-versioning/semver.jarmake/lib/semantic-versioning/semver-src.zipmake/lib/semantic-versioning/VERSIONebe187fca62695b7631bfc67cb415d4e05c374561411522084000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump semver to 0.9.30-SNAPSHOT of jogamp branch, incl. commit 9cdb6bbf6d3248a65aa78ced08211d609c356f91 commit 9cdb6bbf6d3248a65aa78ced08211d609c356f91 fixes the tests of the Class, Field and Method accessor bit for compatibility. 2014-09-24T03:28:04+0200ebe187fca62695b7631bfc67cb415d4e05c37456Bump semver to 0.9.30-SNAPSHOT of jogamp branch, incl. commiteditmake/lib/semantic-versioning/semver.jareditmake/lib/semantic-versioning/semver-src.zipeditmake/lib/semantic-versioning/VERSIONeditmake/lib/semantic-versioning/README.mdsrc/java/com/jogamp/common/util/IOUtil.java1350823035597f784f9cf871aa487f896f3d18401411674359000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIOUtil: Fix API doc; getTempDir(..) shall throw IOException instead of RuntimeException for IO failures - Fix API doc - copy*() methods only close stream they open, no need to mention the proper behavior (obvious). - getTempDir(..) shall throw IOException instead of RuntimeException for IO failures - Ease using getTempDir(..), i.e. only handle IOException 2014-09-25T21:45:59+02001350823035597f784f9cf871aa487f896f3d1840IOUtil: Fix API doc; getTempDir(..) shall throw IOException instead ofeditsrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/runtest.shsrc/java/com/jogamp/common/nio/ByteBufferInputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaae17a5895088e321bc373318cc1e144a2f822f291411674664000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1080 - Add read support for memory mapped big file I/O via specialized InputStream impl., incl. mark/reset - ByteBufferInputStream simply impl. InputStream for an arbitrary 2MiB restricted ByteBuffer - Users may only need a smaller implementation for 'smaller' file sizes or for streaming a [native] ByteBuffer. - MappedByteBufferInputStream impl. InputStream for any file size, while slicing the total size to memory mapped buffers via the given FileChannel. The latter are mapped lazily and diff. flush/cache methods are supported to ease virtual memory usage. - TestByteBufferInputStream: Basic unit test for basic functionality and perf. stats. 2014-09-25T21:51:04+0200ae17a5895088e321bc373318cc1e144a2f822f29Bug 1080 - Add read support for memory mapped big file I/O viaaddsrc/java/com/jogamp/common/nio/ByteBufferInputStream.javaaddsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditmake/scripts/runtest.shaddsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javasrc/junit/com/jogamp/junit/sec/Applet01.javasrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.java86541252028e0b2093b87836732924b6746858ca1411696419000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdapt unit tests to commit 1350823035597f784f9cf871aa487f896f3d1840: getTempDir(..) throws IOException 2014-09-26T03:53:39+020086541252028e0b2093b87836732924b6746858caAdapt unit tests to commit 1350823035597f784f9cf871aa487f896f3d1840:editsrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javaeditsrc/junit/com/jogamp/junit/sec/Applet01.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.java95c4a3c7b6b256de4293ed1b31380d6af5ab59d01411719223000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1080 - Fix TestByteBufferInputStream: Handle OutOfMemoryError cause in IOException (Add note to FLUSH_NONE); Reduce test load / duration. 2014-09-26T10:13:43+020095c4a3c7b6b256de4293ed1b31380d6af5ab59d0Bug 1080 - Fix TestByteBufferInputStream: Handle OutOfMemoryError causeeditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/java/com/jogamp/common/nio/MappedByteBufferOutputStream.javamake/scripts/runtest-x32.batmake/scripts/runtest.shmake/scripts/runtest-x64.batsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.java92a6d2c1476fd562721f231f89afba9342ed8a201411720144000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1080 - Add write support for memory mapped big file I/O via specialized OutputStream impl. Added MappedByteBufferOutputStream as a child instance of MappedByteBufferInputStream, since the latter already manages the file's mapped buffer slices. Current design is: - MappedByteBufferInputStream (parent) - MappedByteBufferOutputStream this is due to InputStream and OutputStream not being interfaces, but most functionality is provided in one class. We could redesign both as follows: - MappedByteBufferIOStream (parent) - MappedByteBufferInputStream - MappedByteBufferOutputStream This might visualize things better .. dunno whether its worth the extra redirection. +++ MappedByteBufferInputStream: - Adding [file] resize support via custom FileResizeOp - All construction happens via ctors - Handle refCount, incr. by ctor and getOutputStream(..), decr by close - Check whether stream is closed already -> IOException - Simplify / Reuse code MappedByteBufferOutputStream: - Adding simple write operations 2014-09-26T10:29:04+020092a6d2c1476fd562721f231f89afba9342ed8a20Bug 1080 - Add write support for memory mapped big file I/O viaeditmake/scripts/runtest-x32.bataddsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javaeditmake/scripts/runtest-x64.bateditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaaddsrc/java/com/jogamp/common/nio/MappedByteBufferOutputStream.javaeditmake/scripts/runtest.shsrc/java/com/jogamp/common/nio/MappedByteBufferOutputStream.javamake/scripts/runtest.shsrc/java/com/jogamp/common/nio/ByteBufferInputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.java00a9ee70054872712017b5a14b19aa92068c84201411948650000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1080 - Refine MappedByteBuffer*Stream impl. and API [doc], adding stream to stream copy as well as direct memory mapped ByteBuffer access 2014-09-29T01:57:30+020000a9ee70054872712017b5a14b19aa92068c8420Bug 1080 - Refine MappedByteBuffer*Stream impl. and API [doc], addingeditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaeditsrc/java/com/jogamp/common/nio/MappedByteBufferOutputStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javaaddsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/nio/ByteBufferInputStream.javasrc/java/com/jogamp/common/nio/MappedByteBufferOutputStream.javamake/scripts/runtest.shmake/scripts/runtest-x64.batsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javasrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaa7a3d5ab98ee0ad33fdef50bf081afeb8295ebe41412291562000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMappedByteBuffer*Stream: - Validate active and GC'ed mapped-buffer count in cleanAllSlices() via close() .. - Fix missing unmapping last buffer in notifyLengthChangeImpl(), branch criteria was off by one. - cleanSlice(..) now also issues cleanBuffer(..) on the GC'ed entry, hence if WeakReference is still alive, enforce it's release. - cleanBuffer(..) reverts FLUSH_PRE_HARD -> FLUSH_PRE_SOFT in case of an error. - flush() -> flush(boolean metaData) to expose FileChannel.force(metaData). - Add synchronous mode, flushing/syncing the mapped buffers when in READ_WRITE mapping mode and issue FileChannel.force() if not READ_ONLY. Above is implemented via flush()/flushImpl(..) for buffers and FileChannel, as well as in syncSlice(..) for buffers only. flush*()/syncSlice() is covered by: - setLength() - notifyLengthChange*(..) - nextSlice() Always issue flushImpl() in close(). - Windows: Clean all buffers in setLength(), otherwise Windows will report: - Windows: Catch MappedByteBuffer.force() IOException - Optimization of position(..) position(..) is now standalone to allow issuing flushSlice(..) before gathering the new mapped buffer. This shall avoid one extra cache miss. Hence rename positionImpl(..) -> position2(..). - All MappedByteBufferOutputStream.write(..) methods issue syncSlice(..) on the last written current slice to ensure new 'synchronous' mode is honored. +++ Unit tests: - Ensure test files are being deleted - TestByteBufferCopyStream: Reduced test file size to more sensible values. - 2014-10-03T01:12:42+0200a7a3d5ab98ee0ad33fdef50bf081afeb8295ebe4MappedByteBuffer*Stream:editsrc/java/com/jogamp/common/nio/MappedByteBufferOutputStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javaeditmake/scripts/runtest-x64.bateditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/util/TestIOUtil01.javamake/scripts/make.gluegen.all.macosx-java7.shmake/scripts/make.gluegen.all.macosx-java6.shmake/scripts/make.gluegen.all.macosx.sh9b4656a2b676bcad43e67e5ee47f4ed00399a83a1412291622000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMake Scripts OSX: Remove -java7 script, add -java6 script (default uses java8) 2014-10-03T01:13:42+02009b4656a2b676bcad43e67e5ee47f4ed00399a83aMake Scripts OSX: Remove -java7 script, add -java6 script (default usesdeletemake/scripts/make.gluegen.all.macosx-java7.shaddmake/scripts/make.gluegen.all.macosx-java6.sheditmake/scripts/make.gluegen.all.macosx.shsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.java89831e61dc68b29ceb6c1cc579f6a7bb17a46d701412293647000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestByteBufferCopyStream, TestByteBufferInputStream: Reduce load and test time 2014-10-03T01:47:27+020089831e61dc68b29ceb6c1cc579f6a7bb17a46d70TestByteBufferCopyStream, TestByteBufferInputStream: Reduce load andeditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaf7c2c27234e58371ffbb2b3ec44a0f3e8a3733401412294940000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestByteBufferInputStream: Reduce FLUSH_SOFT load 2014-10-03T02:09:00+0200f7c2c27234e58371ffbb2b3ec44a0f3e8a373340TestByteBufferInputStream: Reduce FLUSH_SOFT loadeditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javabd240ebfe09b7c7a21689dee8be0cc673eb7f3401412295250000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMappedByteBufferInputStream: Default CacheMode is FLUSH_PRE_HARD now (was FLUSH_PRE_SOFT) FLUSH_PRE_SOFT cannot be handled by some platforms, e.g. Windows 32bit. FLUSH_PRE_HARD is the most reliable caching mode and it will fallback to FLUSH_PRE_SOFT if no method for 'cleaner' exists. Further, FLUSH_PRE_HARD turns our to be the fastest mode as well. 2014-10-03T02:14:10+0200bd240ebfe09b7c7a21689dee8be0cc673eb7f340MappedByteBufferInputStream: Default CacheMode is FLUSH_PRE_HARD noweditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javasrc/junit/com/jogamp/common/util/TestBitstream00.javasrc/junit/com/jogamp/common/nio/BuffersTest.javasrc/junit/com/jogamp/common/util/TestVersionInfo.javasrc/junit/com/jogamp/common/nio/TestBuffersFloatDoubleConversion.javasrc/junit/com/jogamp/common/util/TestPlatform01.javasrc/junit/com/jogamp/common/net/TestUri01.javasrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javasrc/junit/com/jogamp/common/nio/TestPointerBufferEndian.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/junit/util/SingletonTestCase.javasrc/junit/com/jogamp/common/os/TestElfReader01.javasrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen02.javasrc/junit/com/jogamp/common/util/TestTempJarCache.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javasrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javasrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/junit/com/jogamp/common/util/TestBitstream03.javasrc/junit/com/jogamp/common/net/TestUrisWithAssetHandler.javasrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen01.javasrc/junit/com/jogamp/common/nio/TestStructAccessorEndian.javasrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javasrc/junit/com/jogamp/common/util/TestBitstream04.javasrc/junit/com/jogamp/common/net/TestUriQueryProps.javasrc/junit/com/jogamp/common/net/TestUri03Resolving.javasrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javasrc/junit/com/jogamp/common/util/TestArrayHashSet01.javasrc/junit/com/jogamp/common/util/TestJarUtil.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/common/util/TestSystemPropsAndEnvs.javasrc/junit/com/jogamp/common/util/TestBitstream02.javasrc/junit/com/jogamp/common/util/TestVersionNumber.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javasrc/junit/com/jogamp/common/util/TestBitstream01.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.javasrc/junit/com/jogamp/common/util/TestVersionSemantics.javasrc/junit/com/jogamp/common/util/TestRunnableTask01.javasrc/junit/com/jogamp/common/util/TestFloatStack01.javasrc/junit/com/jogamp/junit/util/JunitTracer.javasrc/junit/com/jogamp/common/util/TestIteratorIndexCORE.javasrc/junit/com/jogamp/common/nio/CachedBufferFactoryTest.javasrc/junit/com/jogamp/common/net/AssetURLConnectionBase.javafb60db3a633d82a0323f066a98a8a9fadf3ecff51412297031000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSingletonTestCase: Move singleton test impl. from JOGL's UITestCase, inherit from JunitTracer and use it for all tests. - Certain performance tests don't make sense utilizing several jenkins unit tests on one machine, hence singleton test execution is desired. - JOGL's UITestCase also will derive from this SingletonTestCase 2014-10-03T02:43:51+0200fb60db3a633d82a0323f066a98a8a9fadf3ecff5SingletonTestCase: Move singleton test impl. from JOGL's UITestCase,editsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/util/TestVersionNumber.javaeditsrc/junit/com/jogamp/common/util/TestBitstream04.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javaeditsrc/junit/com/jogamp/common/util/TestBitstream03.javaeditsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/junit/com/jogamp/common/util/TestArrayHashSet01.javaeditsrc/junit/com/jogamp/common/nio/TestPointerBufferEndian.javaeditsrc/junit/com/jogamp/common/util/TestBitstream00.javaeditsrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen02.javaeditsrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaeditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaeditsrc/junit/com/jogamp/common/util/TestJarUtil.javaeditsrc/junit/com/jogamp/common/net/AssetURLConnectionBase.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javaeditsrc/junit/com/jogamp/common/util/TestBitstream01.javaeditsrc/junit/com/jogamp/common/util/TestFloatStack01.javaeditsrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen01.javaeditsrc/junit/com/jogamp/common/net/TestUri03Resolving.javaeditsrc/junit/com/jogamp/common/util/TestRunnableTask01.javaeditsrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javaeditsrc/junit/com/jogamp/common/util/TestBitstream02.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javaeditsrc/junit/com/jogamp/junit/util/JunitTracer.javaeditsrc/junit/com/jogamp/common/net/TestUri01.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javaeditsrc/junit/com/jogamp/common/nio/TestStructAccessorEndian.javaeditsrc/junit/com/jogamp/common/util/TestTempJarCache.javaeditsrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javaeditsrc/junit/com/jogamp/common/util/TestSystemPropsAndEnvs.javaeditsrc/junit/com/jogamp/common/nio/TestBuffersFloatDoubleConversion.javaeditsrc/junit/com/jogamp/common/util/TestVersionInfo.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javaeditsrc/junit/com/jogamp/common/net/TestUrisWithAssetHandler.javaeditsrc/junit/com/jogamp/common/util/TestIteratorIndexCORE.javaeditsrc/junit/com/jogamp/common/util/TestIOUtil01.javaaddsrc/junit/com/jogamp/junit/util/SingletonTestCase.javaeditsrc/junit/com/jogamp/common/util/TestPlatform01.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/common/os/TestElfReader01.javaeditsrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javaeditsrc/junit/com/jogamp/common/net/TestUriQueryProps.javaeditsrc/junit/com/jogamp/common/nio/CachedBufferFactoryTest.javaeditsrc/junit/com/jogamp/common/nio/BuffersTest.javaeditsrc/junit/com/jogamp/common/util/LongIntHashMapTest.java.gitignore1630bc961747d227d166fa128effcb24e050f6cc1412297104000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comgitignore: build*/ and build-temp 2014-10-03T02:45:04+02001630bc961747d227d166fa128effcb24e050f6ccgitignore: build*/ and build-tempedit.gitignoresrc/junit/com/jogamp/junit/util/SingletonTestCase.javadb12572b4f674884c3f7ad8f7e15ba9e97cf865a1412297361000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSingletonTestCase: SINGLE_INSTANCE_LOCK_TO (timeout) 6 -> 12 minutes 2014-10-03T02:49:21+0200db12572b4f674884c3f7ad8f7e15ba9e97cf865aSingletonTestCase: SINGLE_INSTANCE_LOCK_TO (timeout) 6 -> 12 minuteseditsrc/junit/com/jogamp/junit/util/SingletonTestCase.javasrc/junit/com/jogamp/common/util/TestBitstream00.javasrc/junit/com/jogamp/common/nio/BuffersTest.javasrc/junit/com/jogamp/common/util/TestVersionInfo.javasrc/junit/com/jogamp/common/nio/TestBuffersFloatDoubleConversion.javasrc/junit/com/jogamp/common/util/TestPlatform01.javasrc/junit/com/jogamp/common/net/TestUri01.javasrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javasrc/junit/com/jogamp/common/nio/TestPointerBufferEndian.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javasrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket01.javasrc/junit/com/jogamp/junit/util/SingletonTestCase.javasrc/junit/com/jogamp/common/os/TestElfReader01.javasrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen02.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javasrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javasrc/junit/com/jogamp/common/util/TestTempJarCache.javasrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/junit/com/jogamp/common/util/TestBitstream03.javasrc/junit/com/jogamp/common/net/TestUrisWithAssetHandler.javasrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen01.javasrc/junit/com/jogamp/common/nio/TestStructAccessorEndian.javasrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket02.javasrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javasrc/junit/com/jogamp/common/util/TestBitstream04.javasrc/junit/com/jogamp/junit/util/SingletonJunitCase.javasrc/junit/com/jogamp/common/net/TestUriQueryProps.javasrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javasrc/junit/com/jogamp/common/net/TestUri03Resolving.javasrc/junit/com/jogamp/common/util/TestJarUtil.javasrc/junit/com/jogamp/common/util/TestArrayHashSet01.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/common/util/TestSystemPropsAndEnvs.javasrc/junit/com/jogamp/common/util/TestBitstream02.javasrc/junit/com/jogamp/common/util/TestVersionNumber.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.javasrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javasrc/junit/com/jogamp/common/util/TestBitstream01.javasrc/junit/com/jogamp/common/util/TestRunnableTask01.javasrc/junit/com/jogamp/common/util/TestVersionSemantics.javasrc/junit/com/jogamp/common/util/TestFloatStack01.javasrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket00.javasrc/junit/com/jogamp/common/util/TestIteratorIndexCORE.javasrc/junit/com/jogamp/common/nio/CachedBufferFactoryTest.javasrc/junit/com/jogamp/common/net/AssetURLConnectionBase.java773d96584b4edc13eb6ff689eaf891aab09aa5a41412300997000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSingletonTestCase -> SingletonJunitCase: Accomodate ClassLoader lifecycle of static fields; Change name to avoid testing itself. 2014-10-03T03:49:57+0200773d96584b4edc13eb6ff689eaf891aab09aa5a4SingletonTestCase -> SingletonJunitCase: Accomodate ClassLoadereditsrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen01.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveLock01.javaeditsrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javaeditsrc/junit/com/jogamp/common/net/AssetURLConnectionBase.javaeditsrc/junit/com/jogamp/common/util/TestVersionInfo.javaeditsrc/junit/com/jogamp/common/net/TestUrisWithAssetHandler.javaeditsrc/junit/com/jogamp/common/util/TestFloatStack01.javaeditsrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javaeditsrc/junit/com/jogamp/common/util/LongIntHashMapTest.javaeditsrc/junit/com/jogamp/common/util/TestBitstream02.javaeditsrc/junit/com/jogamp/common/net/TestUri01.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferInputStream.javaeditsrc/junit/com/jogamp/common/util/TestBitstream04.javaeditsrc/junit/com/jogamp/common/nio/TestBuffersFloatDoubleConversion.javadeletesrc/junit/com/jogamp/junit/util/SingletonTestCase.javaaddsrc/junit/com/jogamp/junit/util/SingletonJunitCase.javaeditsrc/junit/com/jogamp/common/nio/CachedBufferFactoryTest.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferCopyStream.javaeditsrc/junit/com/jogamp/common/util/TestRunnableTask01.javaeditsrc/junit/com/jogamp/common/os/TestElfReader01.javaeditsrc/junit/com/jogamp/common/util/TestIteratorIndexCORE.javaeditsrc/junit/com/jogamp/common/nio/TestStructAccessorEndian.javaeditsrc/junit/com/jogamp/common/util/TestPlatform01.javaeditsrc/junit/com/jogamp/common/util/TestBitstream00.javaeditsrc/junit/com/jogamp/common/util/TestJarUtil.javaeditsrc/junit/com/jogamp/common/util/locks/TestRecursiveThreadGroupLock01.javaeditsrc/junit/com/jogamp/common/net/TestUri03Resolving.javaeditsrc/junit/com/jogamp/common/nio/BuffersTest.javaeditsrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaeditsrc/junit/com/jogamp/common/nio/TestPointerBufferEndian.javaeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket02.javaeditsrc/junit/com/jogamp/common/util/TestSystemPropsAndEnvs.javaeditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaeditsrc/junit/com/jogamp/common/util/TestBitstream03.javaeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket00.javaeditsrc/junit/com/jogamp/common/net/TestUriQueryProps.javaeditsrc/junit/com/jogamp/common/util/TestArrayHashSet01.javaeditsrc/junit/com/jogamp/common/util/locks/TestSingletonServerSocket01.javaeditsrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen02.javaeditsrc/junit/com/jogamp/common/nio/TestByteBufferOutputStream.javaeditsrc/junit/com/jogamp/common/util/TestVersionNumber.javaeditsrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javaeditsrc/junit/com/jogamp/common/util/TestTempJarCache.javaeditsrc/junit/com/jogamp/common/util/TestBitstream01.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javaeditsrc/junit/com/jogamp/common/util/TestIOUtil01.javasrc/junit/com/jogamp/junit/util/SingletonJunitCase.java0d9efa74b10ea29d33ecc9c2b9f06bb2209d96ca1412302371000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSingletonJunitCase: Refine poll and release behavior - Increase poll frequency from every 1000 ms -> 500 ms - After releasing the lock, sleep to 6 x poll period, i.e. 3s 2014-10-03T04:12:51+02000d9efa74b10ea29d33ecc9c2b9f06bb2209d96caSingletonJunitCase: Refine poll and release behavioreditsrc/junit/com/jogamp/junit/util/SingletonJunitCase.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel837https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/837/837https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/837/837https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/837/Started by user Sven GothelsgothelSven Gothel8273a8515045c906b0174fb74f25b425f532b9cf2d13a8515045c906b0174fb74f25b425f532b9cf2d1origin/master3a8515045c906b0174fb74f25b425f532b9cf2d13a8515045c906b0174fb74f25b425f532b9cf2d1origin/master3a8515045c906b0174fb74f25b425f532b9cf2d13a8515045c906b0174fb74f25b425f532b9cf2d1origin/mastergit://jogamp.org/srv/scm/gluegen.git001975testReportfalse#827264950460248gluegen #8272014-09-20_23-03-21falsefalse827-1SUCCESS1411247001000https://jogamp.org/chuck/job/gluegen/827/win64-nvgtx460-win7-jogamp-x32-sgothel-010git827https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/827/827https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/827/827https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/827/Started by user Sven GothelsgothelSven Gothel8263a8515045c906b0174fb74f25b425f532b9cf2d13a8515045c906b0174fb74f25b425f532b9cf2d1origin/master3a8515045c906b0174fb74f25b425f532b9cf2d13a8515045c906b0174fb74f25b425f532b9cf2d1origin/master3a8515045c906b0174fb74f25b425f532b9cf2d13a8515045c906b0174fb74f25b425f532b9cf2d1origin/mastergit://jogamp.org/srv/scm/gluegen.git001975testReportfalse#826263141460248gluegen #8262014-09-14_07-58-50falsefalse826-1SUCCESS1410674330000https://jogamp.org/chuck/job/gluegen/826/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.java3a8515045c906b0174fb74f25b425f532b9cf2d11410666869000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1067 - IOUtil.testDirExec(File) needs to preserve SPACE in exetst.getCanonicalPath() command Having a test-executable file with SPACE in it's temporary path, e.g. Unix: /magic temp/user/ Windows XP: C:\Documents and Settings\user\temp results to split up commands if using 'Process.exec(String)', since it utilizes a StringTokenizer to assemble the command String[]. This patch uses 'Process.exec(String[])' avoiding splitting up SPACE in the full command string/path. Major impact is on 'Windows XP', where a SPACE separated TEMP/TMP folder is the default. Note-1: Commit 9bc3d3f78bb2fb1aa0ccfb02ffb5bdda74420cac introduced testing executable permission on Windows (Bug 1015) and rendered this issue visible. To reproduce the issue on Windows: +++ set TEMP=C:\Documents and Settings\jogamp\temp set TMP=C:\Documents and Settings\jogamp\temp "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" +++ Note-2: This bug affects all platforms! 2014-09-14T05:54:29+02003a8515045c906b0174fb74f25b425f532b9cf2d1Bug 1067 - IOUtil.testDirExec(File) needs to preserve SPACE ineditsrc/java/com/jogamp/common/util/IOUtil.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel826https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/826/826https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/826/826https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/826/Started by user Sven GothelsgothelSven Gothel825c97e35377aea70cb293cabdd205bcc5da64b95c6c97e35377aea70cb293cabdd205bcc5da64b95c6origin/masterc97e35377aea70cb293cabdd205bcc5da64b95c6c97e35377aea70cb293cabdd205bcc5da64b95c6origin/masterc97e35377aea70cb293cabdd205bcc5da64b95c6c97e35377aea70cb293cabdd205bcc5da64b95c6origin/mastergit://jogamp.org/srv/scm/gluegen.git001975testReportfalse#825281098460248gluegen #8252014-09-10_07-28-29falsefalse825-1SUCCESS1410326909000https://jogamp.org/chuck/job/gluegen/825/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/net/TestUri01.javasrc/java/com/jogamp/common/net/UriQueryProps.javamake/scripts/runtest.shsrc/java/com/jogamp/common/net/Uri.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javac97e35377aea70cb293cabdd205bcc5da64b95c61410319263000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1063: Uri: Refine API doc; Add create(Encoded ..) ; Provide common impl. for getNormalized(), getDirectory(), getParent() and getRelativeOf() - Refine API doc - Add notion of {@code host} and {@code port} validation - Add create(Encoded ..), allowing creation of variants w/o re-encoding - Provide common impl. for getNormalized(), getDirectory(), getParent() and getRelativeOf() Above feature methods share common goals, hence use same implementation: - If opaque, cut-off query and merge after operation - cleanup path, i.e. /dummy/../test/ -> /test/ - cutoff file, dir - if requested - append optional appendix and cleanup again Return behavior various thought, i.e. null, this or allow exception. Enhanced test of above features. 2014-09-10T05:21:03+0200c97e35377aea70cb293cabdd205bcc5da64b95c6Bug 1063: Uri: Refine API doc; Add create(Encoded ..) ; Provide commoneditsrc/java/com/jogamp/common/net/Uri.javaeditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/java/com/jogamp/common/net/UriQueryProps.javaeditsrc/junit/com/jogamp/common/net/TestUri01.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel825https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/825/825https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/825/825https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/825/Started by user Sven GothelsgothelSven Gothel8246a466e3f1e92a1e831ea61d1bb72c32f56b2a28d6a466e3f1e92a1e831ea61d1bb72c32f56b2a28dorigin/master6a466e3f1e92a1e831ea61d1bb72c32f56b2a28d6a466e3f1e92a1e831ea61d1bb72c32f56b2a28dorigin/master6a466e3f1e92a1e831ea61d1bb72c32f56b2a28d6a466e3f1e92a1e831ea61d1bb72c32f56b2a28dorigin/mastergit://jogamp.org/srv/scm/gluegen.git201945testReportfalse#824258644460248gluegen #8242014-09-08_13-55-38falsefalse824-1UNSTABLE1410177338000https://jogamp.org/chuck/job/gluegen/824/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javamake/scripts/runtest.shsrc/java/com/jogamp/common/util/cache/TempJarCache.javasrc/java/com/jogamp/common/net/Uri.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javasrc/junit/com/jogamp/common/util/TestIOUtilURIHandling.javasrc/junit/com/jogamp/common/net/TestUri01.javasrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javasrc/junit/com/jogamp/common/net/TestUri03Resolving.javasrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/net/AssetURLContext.javasrc/junit/com/jogamp/common/util/TestIOUtilURICompose.javasrc/junit/com/jogamp/common/net/TestNetIOURIReservedCharsBug908.javamake/scripts/runtest-x64.batsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaLICENSE.txtsrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javasrc/junit/com/jogamp/common/util/TestTempJarCache.javasrc/junit/com/jogamp/common/net/URIDumpUtil.javasrc/java/com/jogamp/common/util/JarUtil.javasrc/junit/com/jogamp/common/net/AssetURLConnectionBase.java5205e47e8a2e84e793b26305391b1c4f8648597c1410070812000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1063 - Utilize own Uri and Uri.Encoded class w/ proper encoding and differentiating encoded/decoded variants by type [Part 1] - Add immutable com.jogamp.common.net.Uri class impl. RFC 2396 w/ encoding of RFC 3986 - Class Uri.Encoded is used to represent encoded parts - IOUtil: Remove unused methods (residing in Uri) and mark others deprecated (will move to Uri) - Adopt usage of Uri: This must be completet in follow-up commits! 2014-09-07T08:20:12+02005205e47e8a2e84e793b26305391b1c4f8648597cBug 1063 - Utilize own Uri and Uri.Encoded class w/ proper encoding andaddsrc/java/com/jogamp/common/net/Uri.javaeditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javaeditLICENSE.txtaddsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestUri03Resolving.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaaddsrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javaeditsrc/java/com/jogamp/common/util/JarUtil.javaeditsrc/junit/com/jogamp/common/util/TestTempJarCache.javaeditsrc/java/com/jogamp/common/net/AssetURLContext.javadeletesrc/junit/com/jogamp/common/util/TestIOUtilURIHandling.javaeditsrc/junit/com/jogamp/common/net/URIDumpUtil.javaeditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaeditsrc/junit/com/jogamp/common/net/AssetURLConnectionBase.javaeditsrc/java/com/jogamp/common/util/cache/TempJarCache.javaaddsrc/junit/com/jogamp/common/net/TestUri01.javadeletesrc/junit/com/jogamp/common/util/TestIOUtilURICompose.javadeletesrc/junit/com/jogamp/common/net/TestNetIOURIReservedCharsBug908.javaeditmake/scripts/runtest-x64.batmake/scripts/runtest.shsrc/java/com/jogamp/common/net/Uri.javasrc/junit/com/jogamp/common/net/TestUri03Resolving.java2d615932505d4870f3fd0dd37f21fb3d308ab5361410099307000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1063 - Uri.PATH_LEGAL: Remove reserved 'punct', encoding all reserved chars but '!', allows removal of PATH_MIN_LEGAL ; Add comment for Harmony values for review 2014-09-07T16:15:07+02002d615932505d4870f3fd0dd37f21fb3d308ab536Bug 1063 - Uri.PATH_LEGAL: Remove reserved 'punct', encoding alleditsrc/java/com/jogamp/common/net/Uri.javaeditsrc/junit/com/jogamp/common/net/TestUri03Resolving.javaeditmake/scripts/runtest.shsrc/junit/com/jogamp/common/net/TestUri01.javamake/scripts/runtest.shmake/scripts/runtest-x64.batsrc/junit/com/jogamp/common/net/TestUri03Resolving.javasrc/java/com/jogamp/common/net/Uri.java6322991799268166e46aeeacb142c11d45950f481410102168000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1063 - Refine Uri and Uri.Encode ; Fix unit tests (passing on GNU/Linux, OSX and Windows) - Refine Uri - remove System.err.print* - scheme is of type Encode - Refine Uri.Encode - substring(..) shall return type Encode - Fix unit tests (passing on GNU/Linux, OSX and Windows) 2014-09-07T17:02:48+02006322991799268166e46aeeacb142c11d45950f48Bug 1063 - Refine Uri and Uri.Encode ; Fix unit tests (passing oneditsrc/junit/com/jogamp/common/net/TestUri03Resolving.javaeditmake/scripts/runtest-x64.bateditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/net/Uri.javaeditsrc/junit/com/jogamp/common/net/TestUri01.javamake/scripts/runtest.shsrc/java/com/jogamp/common/util/cache/TempJarCache.javasrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.javasrc/java/com/jogamp/common/net/Uri.javasrc/junit/com/jogamp/common/net/TestUri01.javasrc/junit/com/jogamp/common/net/TestUri03Resolving.javasrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javasrc/junit/com/jogamp/common/util/TestJarUtil.javasrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javasrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/java-win64.batsrc/java/com/jogamp/common/os/Platform.javamake/scripts/runtest-x64.batLICENSE.txtsrc/junit/com/jogamp/common/util/TestTempJarCache.javasrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javasrc/junit/com/jogamp/junit/sec/Applet01.javasrc/junit/com/jogamp/common/net/URIDumpUtil.javasrc/java/com/jogamp/common/util/JarUtil.javadde91a061cb0bc209442fe0e74a532b91d1bb4b81410138542000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1063: Complete Uri impl. and adoption throughout GlueGen - Uri: - Add error correction (fix) of path at ctor in case a a contained Uri is requested from an opaque one. The latter might come from URI/URL and is not properly encoded! See Uri.PARSE_HINT_FIX_PATH - Simplify conversion methods: - valueOf(URI/URL): Re-encode only if not opaque - getNativeFilePath() -> toFile() - Move IOUtil Uri related constants to class Uri - Add DEBUG and DEBUG_SHOWFIX - Complete adoption of URI -> Uri changes - IOUtil, JarUtil and TempJarCache still holds some left over deprecated methods, which will be removed after officially starting 2.3.0 (JOGL dependencies) - Otherwise not URI utilization left - Tests - Cleaned ip TestUri01 and TestUri03Resolving - TestUri03Resolving also tests URL -> Uri, and hence mentioned Uri.PARSE_HINT_FIX_PATH 2014-09-08T03:09:02+0200dde91a061cb0bc209442fe0e74a532b91d1bb4b8Bug 1063: Complete Uri impl. and adoption throughout GlueGeneditLICENSE.txteditsrc/java/com/jogamp/common/util/cache/TempJarCache.javaeditsrc/junit/com/jogamp/common/net/TestUri03Resolving.javaeditsrc/junit/com/jogamp/common/util/TestTempJarCache.javaeditsrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.javaeditsrc/java/com/jogamp/common/util/JarUtil.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/jvm/JNILibLoaderBase.javaeditsrc/junit/com/jogamp/common/util/TestJarUtil.javaeditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.javaeditsrc/junit/com/jogamp/junit/sec/Applet01.javaeditsrc/java/com/jogamp/common/os/Platform.javaeditsrc/junit/com/jogamp/common/net/TestUri01.javaeditsrc/junit/com/jogamp/junit/sec/TestSecIOUtil01.javaeditmake/scripts/java-win64.bateditmake/scripts/runtest-x64.bateditsrc/java/com/jogamp/common/net/Uri.javaeditsrc/junit/com/jogamp/common/net/URIDumpUtil.javamake/jogamp-env.xml3e50f103fa49b40f86966877084e0282a8d97ff81410163218000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump 2.3.0 2014-09-08T10:00:18+02003e50f103fa49b40f86966877084e0282a8d97ff8Bump 2.3.0editmake/jogamp-env.xmlsrc/java/com/jogamp/common/util/IOUtil.javasrc/java/com/jogamp/common/net/URIQueryProps.javasrc/junit/com/jogamp/common/net/TestURIQueryProps.javamake/scripts/runtest.shsrc/java/com/jogamp/common/net/Uri.javasrc/java/com/jogamp/common/net/UriQueryProps.javasrc/junit/com/jogamp/common/net/TestUriQueryProps.java6a466e3f1e92a1e831ea61d1bb72c32f56b2a28d1410169785000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1063: Further Uri completion - As a result of JOGL Uri adoption 2014-09-08T11:49:45+02006a466e3f1e92a1e831ea61d1bb72c32f56b2a28dBug 1063: Further Uri completion - As a result of JOGL Uri adoptioneditsrc/java/com/jogamp/common/util/IOUtil.javadeletesrc/junit/com/jogamp/common/net/TestURIQueryProps.javadeletesrc/java/com/jogamp/common/net/URIQueryProps.javaeditsrc/java/com/jogamp/common/net/Uri.javaaddsrc/java/com/jogamp/common/net/UriQueryProps.javaaddsrc/junit/com/jogamp/common/net/TestUriQueryProps.javaeditmake/scripts/runtest.shgithttps://jogamp.org/chuck/user/sgothelSven Gothel824https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/824/824https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/824/824https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/824/Started by user Sven GothelsgothelSven Gothel823360c2d89e162616f5596dc83561601e0378bdb11360c2d89e162616f5596dc83561601e0378bdb11origin/master360c2d89e162616f5596dc83561601e0378bdb11360c2d89e162616f5596dc83561601e0378bdb11origin/master360c2d89e162616f5596dc83561601e0378bdb11360c2d89e162616f5596dc83561601e0378bdb11origin/mastergit://jogamp.org/srv/scm/gluegen.git001865testReportfalsev2.2.1#823282819460248gluegen #8232014-09-08_06-13-20falsetrue823-1SUCCESS1410149600000https://jogamp.org/chuck/job/gluegen/823/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xml360c2d89e162616f5596dc83561601e0378bdb111410141678000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.2.1 release 2014-09-08T04:01:18+0200360c2d89e162616f5596dc83561601e0378bdb11Bump to 2.2.1 releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel823https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/823/823https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/823/823https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/823/Started by user Sven GothelsgothelSven Gothel8220b07f9107c5b033913f5c4cbeb906ae6dafc2d770b07f9107c5b033913f5c4cbeb906ae6dafc2d77origin/master0b07f9107c5b033913f5c4cbeb906ae6dafc2d770b07f9107c5b033913f5c4cbeb906ae6dafc2d77origin/master0b07f9107c5b033913f5c4cbeb906ae6dafc2d770b07f9107c5b033913f5c4cbeb906ae6dafc2d77origin/mastergit://jogamp.org/srv/scm/gluegen.git102050testReportfalse#822283408460248gluegen #8222014-09-07_07-59-58falsefalse822-1UNSTABLE1410069598000https://jogamp.org/chuck/job/gluegen/822/win64-nvgtx460-win7-jogamp-x32-sgothel-010src/java/com/jogamp/common/util/IOUtil.javasrc/junit/com/jogamp/junit/util/MiscUtils.javamake/scripts/java-win64.batmake/scripts/runtest.shsrc/junit/com/jogamp/common/net/TestNetIOURIReservedCharsBug908.javamake/scripts/runtest-x64.batsrc/junit/com/jogamp/common/util/TestIOUtilURIHandling.javasrc/junit/com/jogamp/common/net/URIDumpUtil.javasrc/junit/com/jogamp/common/util/TestJarUtil.javasrc/java/com/jogamp/common/util/JarUtil.java0b07f9107c5b033913f5c4cbeb906ae6dafc2d771410062319000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 908: Fix URI/URL double encoding, ensuring encoded/decoded variants are used properly (Added unit test) Bug 908 was caused by confusing URI encoded parts (e.g. scheme-specific-part) and it's decoded variant. This especially happened due to: - the fact, that the encoded and unencoded variant uses the same String type, - the URI/URL decoding differs, is not complete (e.g. %20 .. SPACE remains in decoded part), - and does not comply w/ RFC 2396 and RFC 3986 (encoding), e.g. not all RESERVED chars are encoded. In branch 'v2.3.0_branch', we will introduce our own Uri and Uri.Encoded class to solve above issue by replacing all URI usage w/ Uri. - Backporting results of own Uri class introduction in branch 'v2.3.0_branch' - Ensure the encoded URI parts are used where required, i.e. IOUtil.compose(..) etc - TestNetIOURIReservedCharsBug908: Automated test, launching GlueGen jar file from an <i>odd pathname</i>. 2014-09-07T05:58:39+02000b07f9107c5b033913f5c4cbeb906ae6dafc2d77Bug 908: Fix URI/URL double encoding, ensuring encoded/decoded variantseditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/util/IOUtil.javaeditsrc/junit/com/jogamp/common/util/TestJarUtil.javaeditsrc/java/com/jogamp/common/util/JarUtil.javaeditsrc/junit/com/jogamp/common/net/URIDumpUtil.javaaddsrc/junit/com/jogamp/junit/util/MiscUtils.javaeditmake/scripts/java-win64.bateditmake/scripts/runtest-x64.bateditsrc/junit/com/jogamp/common/util/TestIOUtilURIHandling.javaaddsrc/junit/com/jogamp/common/net/TestNetIOURIReservedCharsBug908.javagithttps://jogamp.org/chuck/user/sgothelSven Gothel822https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/822/822https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/822/822https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/822/Started by user Sven GothelsgothelSven Gothel8212faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/master2faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/master2faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/mastergit://jogamp.org/srv/scm/gluegen.git002028testReportfalse#821279230460248gluegen #8212014-09-03_15-48-30falsefalse821-1SUCCESS1409752110000https://jogamp.org/chuck/job/gluegen/821/win64-nvgtx460-win7-jogamp-x32-sgothel-010githttps://jogamp.org/chuck/user/hharrisonHarvey Harrisonhttps://jogamp.org/chuck/user/sgothelSven Gothel821https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/821/821https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/821/821https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/821/Started by user Sven GothelsgothelSven Gothel8202faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/master2faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/master2faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/mastergit://jogamp.org/srv/scm/gluegen.git102028testReportfalse#820311151460248gluegen #8202014-09-03_05-36-40falsefalse820-1UNSTABLE1409715400000https://jogamp.org/chuck/job/gluegen/820/win64-nvgtx460-win7-jogamp-x32-sgothel-010githttps://jogamp.org/chuck/user/hharrisonHarvey Harrisonhttps://jogamp.org/chuck/user/sgothelSven Gothel820https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/820/820https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/820/820https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/820/Started by user Sven GothelsgothelSven Gothel8182faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/master2faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/master2faec846fbc13d206028b16a7713c7a1a701fa082faec846fbc13d206028b16a7713c7a1a701fa08origin/mastergit://jogamp.org/srv/scm/gluegen.git102028testReportfalse#818176892460248gluegen #8182014-09-01_16-21-48falsefalse818-1UNSTABLE1409581308000https://jogamp.org/chuck/job/gluegen/818/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/scripts/make.gluegen.all.win64.batmake/scripts/make.gluegen.all.win32.bat2faec846fbc13d206028b16a7713c7a1a701fa081409505409000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comScripts: Bump to java 1.8.0_20 2014-08-31T19:16:49+02002faec846fbc13d206028b16a7713c7a1a701fa08Scripts: Bump to java 1.8.0_20editmake/scripts/make.gluegen.all.win64.bateditmake/scripts/make.gluegen.all.win32.batgithttps://jogamp.org/chuck/user/hharrisonHarvey Harrisonhttps://jogamp.org/chuck/user/sgothelSven Gothel818https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/818/818https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/818/818https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/818/Started by user Sven GothelsgothelSven Gothel817a4f7d51f5a643fcf528711ea0e1bbd19158f5f7ca4f7d51f5a643fcf528711ea0e1bbd19158f5f7corigin/mastera4f7d51f5a643fcf528711ea0e1bbd19158f5f7ca4f7d51f5a643fcf528711ea0e1bbd19158f5f7corigin/mastera4f7d51f5a643fcf528711ea0e1bbd19158f5f7ca4f7d51f5a643fcf528711ea0e1bbd19158f5f7corigin/mastergit://jogamp.org/srv/scm/gluegen.git102028testReportfalse#817266045460248gluegen #8172014-08-31_21-08-19falsefalse817-1UNSTABLE1409512099000https://jogamp.org/chuck/job/gluegen/817/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xmle2be0d00dcd28dc7d6b5df444e2ede80edd7cad51407365125000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.2.1-rc 2014-08-07T00:45:25+0200e2be0d00dcd28dc7d6b5df444e2ede80edd7cad5Bump to 2.2.1-rceditmake/jogamp-env.xmlmake/build.xml1bf89ec4fde4227f8935f8c91b7ee22d160da5811408155786000https://jogamp.org/chuck/user/hharrisonHarvey Harrisonharvey.harrison@gmail.comgluegen: directly use git subcommands rather than sed over a temp file git symbolic-ref is the preferred way (as of 1.7.10) to parse the current branch name. This even works for the detached head case. Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> 2014-08-15T19:23:06-07001bf89ec4fde4227f8935f8c91b7ee22d160da581gluegen: directly use git subcommands rather than sed over a temp fileeditmake/build.xmlsrc/java/com/jogamp/common/util/IntIntHashMap.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javamake/scripts/runtest.shsrc/junit/com/jogamp/common/util/IntIntHashMapTest.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.java6de8ace67b26f039fb1c89a3fce4d5f2437c615c1408174264000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comIntIntHashMap: Reduce temp. ArrayList<Entry> instances in clone 2014-08-16T09:31:04+02006de8ace67b26f039fb1c89a3fce4d5f2437c615cIntIntHashMap: Reduce temp. ArrayList<Entry> instances in cloneeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/util/IntIntHashMap.javaeditsrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaeditsrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javaeditsrc/junit/com/jogamp/common/util/LongIntHashMapTest.javamake/scripts/make.gluegen.all.win64.batmake/scripts/java-win64.batmake/scripts/make.gluegen.all.win32.batmake/scripts/java-win32.bat812c5f6a74b40fc36141886cd30ae9013e2fe8971409190810000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comScripts: Bump to java 1.7.0_67 and apache-ant 1.9.4 2014-08-28T03:53:30+0200812c5f6a74b40fc36141886cd30ae9013e2fe897Scripts: Bump to java 1.7.0_67 and apache-ant 1.9.4editmake/scripts/make.gluegen.all.win32.bateditmake/scripts/java-win64.bateditmake/scripts/java-win32.bateditmake/scripts/make.gluegen.all.win64.batsrc/java/com/jogamp/common/util/IOUtil.javamake/scripts/runtest-x32.batmake/scripts/runtest.shmake/scripts/runtest-x64.bat9bc3d3f78bb2fb1aa0ccfb02ffb5bdda74420cac1409192871000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1015: Test executable permission on Windows via bat file (temp dir, like on unix and osx) Tested on Window 7 and Windows 8.1 using 'Using Software Restriction Policies', i.e. disabled sw-execution in TEMP dir. On Windows we need to add min. shell code, here 'echo off', allowing the bat file to be executed if policy allows it. Reminder: We test the following temp folder 1) java.io.tmpdir/jogamp 2) $XDG_CACHE_HOME/jogamp 3) $TMPDIR/jogamp or $TEMP/jogamp 4) $HOME/.jogamp +++ Misc: Proper 'duplicate' validation via 'file1.equals(file2)' test using the abstract pathname. 2014-08-28T04:27:51+02009bc3d3f78bb2fb1aa0ccfb02ffb5bdda74420cacBug 1015: Test executable permission on Windows via bat file (temp dir,editmake/scripts/runtest-x32.bateditsrc/java/com/jogamp/common/util/IOUtil.javaeditmake/scripts/runtest-x64.bateditmake/scripts/runtest.shmake/scripts/setenv-build-jogl-x86.shfcde400cccd352cc13ff1f21945f330fcd94fbb71409192907000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comscripts: favor java8 on 32bit like we do on 64bit 2014-08-28T04:28:27+0200fcde400cccd352cc13ff1f21945f330fcd94fbb7scripts: favor java8 on 32bit like we do on 64biteditmake/scripts/setenv-build-jogl-x86.shmake/build.xmld220090818a531cafee28cbf885e07e10b9c29921409196107000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRevert "gluegen: directly use git subcommands rather than sed over a temp file" This reverts commit 1bf89ec4fde4227f8935f8c91b7ee22d160da581. 2014-08-28T05:21:47+0200d220090818a531cafee28cbf885e07e10b9c2992Revert "gluegen: directly use git subcommands rather than sed over aeditmake/build.xmlmake/scripts/runtest.shmake/lib/v2.2.0/gluegen-rt.jarsrc/junit/com/jogamp/common/util/TestVersionSemantics.javaced23e04240578955450172101012f1321b2e9a31409231947000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestVersionSemantics: BACKWARD_COMPATIBLE_USER current vs 2.2.0 2014-08-28T15:19:07+0200ced23e04240578955450172101012f1321b2e9a3TestVersionSemantics: BACKWARD_COMPATIBLE_USER current vs 2.2.0addmake/lib/v2.2.0/gluegen-rt.jareditmake/scripts/runtest.sheditsrc/junit/com/jogamp/common/util/TestVersionSemantics.javamake/lib/semantic-versioning/README.mdmake/lib/semantic-versioning/semver-src.zipmake/lib/semantic-versioning/semver.jarmake/lib/semantic-versioning/VERSIONd7698c5690a407e8018d3c56319d406cb395bbe81409237152000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comSemver: Bump to 0.9.27 2014-08-28T16:45:52+0200d7698c5690a407e8018d3c56319d406cb395bbe8Semver: Bump to 0.9.27editmake/lib/semantic-versioning/semver-src.zipeditmake/lib/semantic-versioning/README.mdeditmake/lib/semantic-versioning/semver.jareditmake/lib/semantic-versioning/VERSIONmake/scripts/setenv-build-jogl-x86.shmake/scripts/setenv-build-jogl-x86_64.sha4f7d51f5a643fcf528711ea0e1bbd19158f5f7c1409237202000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comscripts: setenv-build-x86*: allow using a preset jre/jdk iff JAVA_HOME and J2RE_HOME is set and path exists 2014-08-28T16:46:42+0200a4f7d51f5a643fcf528711ea0e1bbd19158f5f7cscripts: setenv-build-x86*: allow using a preset jre/jdk iff JAVA_HOMEeditmake/scripts/setenv-build-jogl-x86.sheditmake/scripts/setenv-build-jogl-x86_64.shgithttps://jogamp.org/chuck/user/hharrisonHarvey Harrisonhttps://jogamp.org/chuck/user/sgothelSven Gothel817https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/817/817https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/817/817https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/817/Started by user Sven GothelsgothelSven Gothel814153ae3ec043a2d69390668533acfa04c0ff148dd153ae3ec043a2d69390668533acfa04c0ff148ddorigin/master153ae3ec043a2d69390668533acfa04c0ff148dd153ae3ec043a2d69390668533acfa04c0ff148ddorigin/master153ae3ec043a2d69390668533acfa04c0ff148dd153ae3ec043a2d69390668533acfa04c0ff148ddorigin/mastergit://jogamp.org/srv/scm/gluegen.git202028testReportfalsev2.2.0#814202826460248gluegen #8142014-08-07_00-22-25falsefalse814-1UNSTABLE1407363745000https://jogamp.org/chuck/job/gluegen/814/win64-nvgtx460-win7-jogamp-x32-sgothel-010make/jogamp-env.xml153ae3ec043a2d69390668533acfa04c0ff148dd1407331405000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump to 2.2.0 2014-08-06T15:23:25+0200153ae3ec043a2d69390668533acfa04c0ff148ddBump to 2.2.0editmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/sgothelSven Gothel814https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/814/814https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/814/814https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/814/blueStarted by an SCM change8f65d7a7987ae4b30ef38069b3dffefa4441403f8f65d7a7987ae4b30ef38069b3dffefa4441403f8origin/masterf65d7a7987ae4b30ef38069b3dffefa4441403f8f65d7a7987ae4b30ef38069b3dffefa4441403f8origin/masterf65d7a7987ae4b30ef38069b3dffefa4441403f8f65d7a7987ae4b30ef38069b3dffefa4441403f8origin/masterfalse#88534460248gluegen #82010-01-12_20-32-51falsefalse8-1SUCCESS1263324771000https://jogamp.org/chuck/job/gluegen/8/u64JogAmp266ab5707d5f6b9e1cf935e6258badd6ba9f26391263311681000https://jogamp.org/chuck/user/michael%20bienMichael Bienmbien@fh-landshut.deupdated project files to reference antlr-3.2.jar. 2010-01-12T16:54:41+0100266ab5707d5f6b9e1cf935e6258badd6ba9f2639updated project files to reference antlr-3.2.jar.b138169c1f85a7914304ae793efb9cabfbfd5da21263311847000https://jogamp.org/chuck/user/michael%20bienMichael Bienmbien@fh-landshut.defixed emitted code for buffer-array mixing. removed workaround in BufferFactory since it is no longer needed. small code cleanup (generator java 5 migration). 2010-01-12T16:57:27+0100b138169c1f85a7914304ae793efb9cabfbfd5da2fixed emitted code for buffer-array mixing.f65d7a7987ae4b30ef38069b3dffefa4441403f81263312170000https://jogamp.org/chuck/user/michael%20bienMichael Bienmbien@fh-landshut.defixed off-by-one bug in put and get. implemented method chaining pattern. added position(int pos) method. 2010-01-12T17:02:50+0100f65d7a7987ae4b30ef38069b3dffefa4441403f8fixed off-by-one bug in put and get.githttps://jogamp.org/chuck/user/michael%20bienMichael BienTest Result: 0 tests failing out of a total of 924 tests.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100truefalseStarted by user Sven GothelsgothelSven Gothel967a235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastergit://jogamp.org/srv/scm/gluegen.git00924testReportfalsev2.5.0440248460248gluegen v2.5.0967falsefalse9671060SUCCESS1692362500522https://jogamp.org/chuck/job/gluegen/967/doc/manual/index.html9b825a445c3d2646546306c1815f498406e2f8c31691962066000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfeat(manual): Update configuration documentation. Add following configuration : * CustomJNICode * ExtendedInterfaceSymbolsIgnore * ExtendedInterfaceSymbolsOnly * ExtendedImplementationSymbolsIgnore * ExtendedImplementationSymbolsOnly * ExtendedIntfAndImplSymbolsIgnore * ExtendedIntfAndImplSymbolsOnly * MaxOneElement * ParentClass * ReturnsStringOnly Update following configuration : * Extends 2023-08-13 23:27:46 +02009b825a445c3d2646546306c1815f498406e2f8c3feat(manual): Update configuration documentation.editdoc/manual/index.htmldoc/manual/index.htmldoc/misc/macos_nativelib_dependencies.mdmake/scripts/md2html_update.shdoc/manual/index.mddoc/misc/macos_nativelib_dependencies.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdfd623305d90a88fd01dea3dccf6b9fe76b19703f1691979745000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sh Noyte: Additionally edited 'doc/misc/macos_nativelib_dependencies.md` to include `Use explicit OpenJDK/Temurin JDK `java` executable path` as a workaround to pass `DYLD_LIBRARY_PATH` to `/usr/bin/java`. 2023-08-14 04:22:25 +0200fd623305d90a88fd01dea3dccf6b9fe76b19703fBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sheditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmladddoc/manual/index.mdadddoc/misc/macos_nativelib_dependencies.htmleditdoc/misc/macos_nativelib_dependencies.mdaddmake/scripts/md2html_update.sheditdoc/manual/index.htmldoc/manual/index.mddoc/manual/index.html9250960f107cebbb4e6d3a55009b330f101453ea1691979872000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Fix link style in manual refs .. 2023-08-14 04:24:32 +02009250960f107cebbb4e6d3a55009b330f101453eaBug 1449: Fix link style in manual refs ..editdoc/manual/index.mdeditdoc/manual/index.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html8850b3d7f82ca5f1f828192407574581abd82ef91691980057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ... 2023-08-14 04:27:37 +02008850b3d7f82ca5f1f828192407574581abd82ef9doc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ...editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdmake/jogamp-env.xmla235ae5dae463afa16f62f48bf62f896efa80b681692362120000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump: 2.5.0 Release 2023-08-18 14:35:20 +0200a235ae5dae463afa16f62f48bf62f896efa80b68Bump: 2.5.0 Releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/sven%20gothelSven Gothel967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/Started by user Sven GothelsgothelSven Gothel967a235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastergit://jogamp.org/srv/scm/gluegen.git00924testReportfalsev2.5.0440248460248gluegen v2.5.0967falsefalse9671060SUCCESS1692362500522https://jogamp.org/chuck/job/gluegen/967/doc/manual/index.html9b825a445c3d2646546306c1815f498406e2f8c31691962066000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfeat(manual): Update configuration documentation. Add following configuration : * CustomJNICode * ExtendedInterfaceSymbolsIgnore * ExtendedInterfaceSymbolsOnly * ExtendedImplementationSymbolsIgnore * ExtendedImplementationSymbolsOnly * ExtendedIntfAndImplSymbolsIgnore * ExtendedIntfAndImplSymbolsOnly * MaxOneElement * ParentClass * ReturnsStringOnly Update following configuration : * Extends 2023-08-13 23:27:46 +02009b825a445c3d2646546306c1815f498406e2f8c3feat(manual): Update configuration documentation.editdoc/manual/index.htmldoc/manual/index.htmldoc/misc/macos_nativelib_dependencies.mdmake/scripts/md2html_update.shdoc/manual/index.mddoc/misc/macos_nativelib_dependencies.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdfd623305d90a88fd01dea3dccf6b9fe76b19703f1691979745000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sh Noyte: Additionally edited 'doc/misc/macos_nativelib_dependencies.md` to include `Use explicit OpenJDK/Temurin JDK `java` executable path` as a workaround to pass `DYLD_LIBRARY_PATH` to `/usr/bin/java`. 2023-08-14 04:22:25 +0200fd623305d90a88fd01dea3dccf6b9fe76b19703fBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sheditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmladddoc/manual/index.mdadddoc/misc/macos_nativelib_dependencies.htmleditdoc/misc/macos_nativelib_dependencies.mdaddmake/scripts/md2html_update.sheditdoc/manual/index.htmldoc/manual/index.mddoc/manual/index.html9250960f107cebbb4e6d3a55009b330f101453ea1691979872000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Fix link style in manual refs .. 2023-08-14 04:24:32 +02009250960f107cebbb4e6d3a55009b330f101453eaBug 1449: Fix link style in manual refs ..editdoc/manual/index.mdeditdoc/manual/index.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html8850b3d7f82ca5f1f828192407574581abd82ef91691980057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ... 2023-08-14 04:27:37 +02008850b3d7f82ca5f1f828192407574581abd82ef9doc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ...editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdmake/jogamp-env.xmla235ae5dae463afa16f62f48bf62f896efa80b681692362120000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump: 2.5.0 Release 2023-08-18 14:35:20 +0200a235ae5dae463afa16f62f48bf62f896efa80b68Bump: 2.5.0 Releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/sven%20gothelSven Gothel967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/Started by an SCM change904f357ff4b1be9088c9e9cf6aa891204fc3cd4040af357ff4b1be9088c9e9cf6aa891204fc3cd4040aorigin/masterf357ff4b1be9088c9e9cf6aa891204fc3cd4040af357ff4b1be9088c9e9cf6aa891204fc3cd4040aorigin/masterf357ff4b1be9088c9e9cf6aa891204fc3cd4040af357ff4b1be9088c9e9cf6aa891204fc3cd4040aorigin/mastergit://jogamp.org/srv/scm/gluegen.git000testReportfalse#9040460248gluegen #904904falsefalse9041FAILURE1501478400418https://jogamp.org/chuck/job/gluegen/904/.gitlab-ci.yml0ba8e7f4173c04eef40ae95baca07a8c1cedfa401481407084000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comAdd GitLab CI .gitlab-ci.yml, build and test each commit on aarch64 and x86-64 linux systems. 2016-12-10 22:58:04 +01000ba8e7f4173c04eef40ae95baca07a8c1cedfa40Add GitLab CI .gitlab-ci.yml, build and test each commit on aarch64 andadd.gitlab-ci.ymlmake/scripts/make.gluegen.all.linux-aarch64.shmake/gluegen-cpptasks-base.xmlmake/build.xmlmake/lib/gluegen-cpptasks-linux-aarch64.xml00ea29eb954a29aaf2fd2adffd6677e580ab28501481410867000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1295: Add linux-aarch64 GNU/Linux AArch64 support make/build.xml: New target declare.linux.aarch64 Update target declare.linux to depend on declare.linux.aarch64 make/gluegen-cpp-tasks-base.xml: Fix aarch64 jre/lib/arm -> jre/lib/aarch64 make/lib/gluegen-cpptasks-linux-aarch64.xml: Added make/scripts/make.gluegen.all.linux-aarch64.sh: Added Tested on DragonBoard 410c running Linaro Debian Platform: LINUX / Linux 4.4.8-linaro-lt-qcom (4.4.8), aarch64 (ARM64, EABI_AARCH64), 4 cores, littleEndian true MachineDataInfo: runtimeValidated true, 32Bit false, primitive size / alignment: int8 1 / 1, int16 2 / 2 int 4 / 4, long 8 / 8 int32 4 / 4, int64 8 / 8 float 4 / 4, double 8 / 8, ldouble 16 / 16 pointer 8 / 8, page 4096 Platform: Java Version: 1.8.0_91 (1.8.0u91), VM: OpenJDK 64-Bit Server VM, Runtime: OpenJDK Runtime Environment Platform: Java Vendor: Oracle Corporation, http://java.oracle.com/, JavaSE: true, Java6: true, AWT enabled: true Signed-off-by: Xerxes Ranby <xerxes@gudinna.com> 2016-12-11 00:01:07 +010000ea29eb954a29aaf2fd2adffd6677e580ab2850Bug 1295: Add linux-aarch64 GNU/Linux AArch64 supporteditmake/build.xmladdmake/lib/gluegen-cpptasks-linux-aarch64.xmladdmake/scripts/make.gluegen.all.linux-aarch64.sheditmake/gluegen-cpptasks-base.xmlmake/lib/toolchain/aarch64-linux-gnueabi/bin/c++make/lib/toolchain/aarch64-linux-gnueabi/bin/gccmake/lib/toolchain/aarch64-linux-gnueabi/bin/g++make/lib/toolchain/aarch64-linux-gnueabi/bin/ccmake/lib/toolchain/aarch64-linux-gnueabi/bin/objdumpmake/lib/toolchain/aarch64-linux-gnueabi/bin/stripmake/scripts/make.gluegen.all.linux-aarch64-cross.shmake/lib/toolchain/aarch64-linux-gnueabi/bin/ldmake/stub_includes/platform/glibc-compat-symbols.hmake/lib/gluegen-cpptasks-linux-aarch64.xmle7db4d356f264b45d178839798b7d3d552019fc11481527928000https://jogamp.org/chuck/user/xerxesxerxesxerxes@gudinna.comBug 1295: Add linux-aarch64 GNU/Linux AArch64 crosscompile support make/lib/gluegen-cpptasks-linux-aarch64.xml: Add missing -DisLinux=true required when crosscompiling Remove -marm -mfloat-abi=hard flags unrecognisable by aarch64 crosscompile toolchain make/lib/toolchain/aarch64-linux-gnueabi/bin/*: Symlink to /usr/local/x-tools/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi-* make/scripts/make.gluegen.all.linux-aarch64-cross.sh: New crosscompile script make/stub_includes/platform/glibc-compat-symbols.h: glibc 2.17 is the first glibc version that support aarch64 however memcpy is not versioned for aarch64 Disable versioning for linux glibc/aarch64 Signed-off-by: Xerxes Rånby <xerxes@gudinna.com> 2016-12-12 08:32:08 +0100e7db4d356f264b45d178839798b7d3d552019fc1Bug 1295: Add linux-aarch64 GNU/Linux AArch64 crosscompile supportaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/objdumpaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/gcceditmake/lib/gluegen-cpptasks-linux-aarch64.xmladdmake/lib/toolchain/aarch64-linux-gnueabi/bin/g++addmake/lib/toolchain/aarch64-linux-gnueabi/bin/ldaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/c++addmake/scripts/make.gluegen.all.linux-aarch64-cross.sheditmake/stub_includes/platform/glibc-compat-symbols.haddmake/lib/toolchain/aarch64-linux-gnueabi/bin/stripaddmake/lib/toolchain/aarch64-linux-gnueabi/bin/ccdoc/HowToBuild.html574be76b4c4a396d1de7c8ead1fcbfed1fbac1ec1487771925000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comHowToBuild: Refine and add Debian 9 (Stretch) 2017-02-22 14:58:45 +0100574be76b4c4a396d1de7c8ead1fcbfed1fbac1ecHowToBuild: Refine and add Debian 9 (Stretch)editdoc/HowToBuild.htmlmake/scripts/runtest.shsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javasrc/java/com/jogamp/common/nio/Buffers.java6833dfa977c282a9b016ede99fdaa46eb5b064441487772005000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFactor out Cleaner access for general use (Cleaning up NIO DirectBuffer) 2017-02-22 15:00:05 +01006833dfa977c282a9b016ede99fdaa46eb5b06444Factor out Cleaner access for general use (Cleaning up NIOeditsrc/java/com/jogamp/common/nio/MappedByteBufferInputStream.javaeditmake/scripts/runtest.sheditsrc/java/com/jogamp/common/nio/Buffers.javagithttps://jogamp.org/chuck/user/sven%20gothelSven Gothelhttps://jogamp.org/chuck/user/xerxesxerxes903https://jogamp.org/chuck/job/gluegen/label=android-arm64/903/903https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/903/903https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/903/904https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/904/Started by user Sven GothelsgothelSven Gothel967a235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastergit://jogamp.org/srv/scm/gluegen.git00924testReportfalsev2.5.0440248460248gluegen v2.5.0967falsefalse9671060SUCCESS1692362500522https://jogamp.org/chuck/job/gluegen/967/doc/manual/index.html9b825a445c3d2646546306c1815f498406e2f8c31691962066000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfeat(manual): Update configuration documentation. Add following configuration : * CustomJNICode * ExtendedInterfaceSymbolsIgnore * ExtendedInterfaceSymbolsOnly * ExtendedImplementationSymbolsIgnore * ExtendedImplementationSymbolsOnly * ExtendedIntfAndImplSymbolsIgnore * ExtendedIntfAndImplSymbolsOnly * MaxOneElement * ParentClass * ReturnsStringOnly Update following configuration : * Extends 2023-08-13 23:27:46 +02009b825a445c3d2646546306c1815f498406e2f8c3feat(manual): Update configuration documentation.editdoc/manual/index.htmldoc/manual/index.htmldoc/misc/macos_nativelib_dependencies.mdmake/scripts/md2html_update.shdoc/manual/index.mddoc/misc/macos_nativelib_dependencies.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdfd623305d90a88fd01dea3dccf6b9fe76b19703f1691979745000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sh Noyte: Additionally edited 'doc/misc/macos_nativelib_dependencies.md` to include `Use explicit OpenJDK/Temurin JDK `java` executable path` as a workaround to pass `DYLD_LIBRARY_PATH` to `/usr/bin/java`. 2023-08-14 04:22:25 +0200fd623305d90a88fd01dea3dccf6b9fe76b19703fBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sheditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmladddoc/manual/index.mdadddoc/misc/macos_nativelib_dependencies.htmleditdoc/misc/macos_nativelib_dependencies.mdaddmake/scripts/md2html_update.sheditdoc/manual/index.htmldoc/manual/index.mddoc/manual/index.html9250960f107cebbb4e6d3a55009b330f101453ea1691979872000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Fix link style in manual refs .. 2023-08-14 04:24:32 +02009250960f107cebbb4e6d3a55009b330f101453eaBug 1449: Fix link style in manual refs ..editdoc/manual/index.mdeditdoc/manual/index.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html8850b3d7f82ca5f1f828192407574581abd82ef91691980057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ... 2023-08-14 04:27:37 +02008850b3d7f82ca5f1f828192407574581abd82ef9doc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ...editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdmake/jogamp-env.xmla235ae5dae463afa16f62f48bf62f896efa80b681692362120000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump: 2.5.0 Release 2023-08-18 14:35:20 +0200a235ae5dae463afa16f62f48bf62f896efa80b68Bump: 2.5.0 Releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/sven%20gothelSven Gothel967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/Started by user Sven GothelsgothelSven Gothel967a235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastera235ae5dae463afa16f62f48bf62f896efa80b68a235ae5dae463afa16f62f48bf62f896efa80b68origin/mastergit://jogamp.org/srv/scm/gluegen.git00924testReportfalsev2.5.0440248460248gluegen v2.5.0967falsefalse9671060SUCCESS1692362500522https://jogamp.org/chuck/job/gluegen/967/doc/manual/index.html9b825a445c3d2646546306c1815f498406e2f8c31691962066000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfeat(manual): Update configuration documentation. Add following configuration : * CustomJNICode * ExtendedInterfaceSymbolsIgnore * ExtendedInterfaceSymbolsOnly * ExtendedImplementationSymbolsIgnore * ExtendedImplementationSymbolsOnly * ExtendedIntfAndImplSymbolsIgnore * ExtendedIntfAndImplSymbolsOnly * MaxOneElement * ParentClass * ReturnsStringOnly Update following configuration : * Extends 2023-08-13 23:27:46 +02009b825a445c3d2646546306c1815f498406e2f8c3feat(manual): Update configuration documentation.editdoc/manual/index.htmldoc/manual/index.htmldoc/misc/macos_nativelib_dependencies.mdmake/scripts/md2html_update.shdoc/manual/index.mddoc/misc/macos_nativelib_dependencies.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdfd623305d90a88fd01dea3dccf6b9fe76b19703f1691979745000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sh Noyte: Additionally edited 'doc/misc/macos_nativelib_dependencies.md` to include `Use explicit OpenJDK/Temurin JDK `java` executable path` as a workaround to pass `DYLD_LIBRARY_PATH` to `/usr/bin/java`. 2023-08-14 04:22:25 +0200fd623305d90a88fd01dea3dccf6b9fe76b19703fBug 1449: Convert manual/index.html to `gfm` (GitHub-Flavored Markdown) using markdown -> manual/index.md and add conversion recipes + make/scripts/md2html_update.sheditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmladddoc/manual/index.mdadddoc/misc/macos_nativelib_dependencies.htmleditdoc/misc/macos_nativelib_dependencies.mdaddmake/scripts/md2html_update.sheditdoc/manual/index.htmldoc/manual/index.mddoc/manual/index.html9250960f107cebbb4e6d3a55009b330f101453ea1691979872000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1449: Fix link style in manual refs .. 2023-08-14 04:24:32 +02009250960f107cebbb4e6d3a55009b330f101453eaBug 1449: Fix link style in manual refs ..editdoc/manual/index.mdeditdoc/manual/index.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html8850b3d7f82ca5f1f828192407574581abd82ef91691980057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ... 2023-08-14 04:27:37 +02008850b3d7f82ca5f1f828192407574581abd82ef9doc/GlueGen_Mapping.md: Fix GlueGen Manual read consideration ...editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdmake/jogamp-env.xmla235ae5dae463afa16f62f48bf62f896efa80b681692362120000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump: 2.5.0 Release 2023-08-18 14:35:20 +0200a235ae5dae463afa16f62f48bf62f896efa80b68Bump: 2.5.0 Releaseeditmake/jogamp-env.xmlgithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/sven%20gothelSven Gothel967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/Started by user Sven GothelsgothelSven Gothel964b3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/masterb3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/masterb3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/mastergit://jogamp.org/srv/scm/gluegen.git20924testReportfalse#964457413460248gluegen #964964falsefalse964928UNSTABLE1691845830344https://jogamp.org/chuck/job/gluegen/964/make/gluegen-cpptasks-base.xmlmake/build.xml953f594a00094362e0ed56553b16aecbee2b92f21644182238000https://jogamp.org/chuck/user/schwabschwabschwab@suse.deAdd support for riscv64 architecture 2022-02-06 22:17:18 +0100953f594a00094362e0ed56553b16aecbee2b92f2Add support for riscv64 architectureeditmake/gluegen-cpptasks-base.xmleditmake/build.xmlmake/stub_includes/platform/glibc-compat-symbols.h6489e38ae8d86b1a80336c20774fc9b82313cef31686119542000https://jogamp.org/chuck/user/tgctgctgc@kb.dkglibc-compat-symbols.h: skip versioning on PPC64/PPC64LE 2023-06-07 08:32:22 +02006489e38ae8d86b1a80336c20774fc9b82313cef3glibc-compat-symbols.h: skip versioning on PPC64/PPC64LEeditmake/stub_includes/platform/glibc-compat-symbols.hsrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/native/common/PointerBuffer.csrc/native/common/Buffers.csrc/java/com/jogamp/common/nio/Buffers.javasrc/java/com/jogamp/common/nio/StructAccessor.javasrc/java/com/jogamp/common/nio/NativeBuffer.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/common/nio/ElementBuffer.java03c548d96e5c81d0fc39503fe3042cf03e0a75e21686868991000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generation Recfactored all NIO buffer utils to Buffers, i.e. buffer <-> address, memcpy, strnlen, etc Buffers: - Added copyNativeToDirectByteBuffer(..), allowing to copy a native memory slice into a direct buffer. - Added typeNameToBufferClass(String) and sizeOfBufferElem(Class<? extends Buffer>) - Completed slize2<Type>(..) buffer-mapping methods - Exposure of safe getDirectByteBuffer(..) w/ null-check (package private) Added NativeBuffer.storeDirectAddress(..), allowing to write the array address into a native buffer (struct, etc), allowing to referencing the ElementBuffer (linear array of elements) and PointerBuffer (array of pointer). Hint: This can be read via PointerBuffer.wrap(..).get(0) Added ElementBuffer (a NativeBuffer) mapping an array of elements, completing native abstraction next to PointerBuffer (array of pointer). ElementBuffer can dereference an existing element-array by native address via ElementBuffer.derefPointer(..). Views of its content can be directly accessed via ElementBuffer.slice(..). +++ These utilities and buffer abstractions will allow to reuse code and simplify the GlueGen struct get/set implementations and help to reduce native code injection. 2023-06-16 00:43:11 +020003c548d96e5c81d0fc39503fe3042cf03e0a75e2GlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generationeditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/common/nio/Buffers.javadeletesrc/native/common/PointerBuffer.caddsrc/native/common/Buffers.caddsrc/java/com/jogamp/common/nio/ElementBuffer.javaeditsrc/java/com/jogamp/common/nio/StructAccessor.javaeditsrc/java/com/jogamp/common/nio/NativeBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/CodeUnit.javasrc/java/com/jogamp/gluegen/JavaCodeUnit.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javaf1678c4ac8b85c85d11b737d08dcfe31b388e0211686869969000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [2]: Add CodeUnit: Representing a generated C or Java file, covering multiple FunctionEmitter allowing to unify output, decoration and dynamic helper code injection per unit - Handles file open and have public ctor emitAutogeneratedWarning(..), being self-contained - Includes `JVMUtil_NewDirectByteBufferCopy(..)` implementation in CCodeUnit, may be injected if required in customCode via emitHeader(..) 2023-06-16 00:59:29 +0200f1678c4ac8b85c85d11b737d08dcfe31b388e021GlueGen Struct [2]: Add CodeUnit: Representing a generated C or Java file, covering multiple FunctionEmitter allowing to unify output, decoration and dynamic helper code injection per unitaddsrc/java/com/jogamp/gluegen/JavaCodeUnit.javaaddsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javaaddsrc/java/com/jogamp/gluegen/CodeUnit.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java0a9105dd3ebbcf4b98664e50333334bff677031c1686870646000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...) 2023-06-16 01:10:46 +02000a9105dd3ebbcf4b98664e50333334bff677031cGlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...)editsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaaeadfab9572e4b441b1bc1f0708cf4c72dfe181e1686871015000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess' Drop 'ManualStaticInitCall', 'ForceStaticInitCode': With new CCodeUnit's `JVMUtil_NewDirectByteBufferCopy(..)` implementation and generalized Buffers' methods, no specific init code is required anymore. Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess': - 'ReturnsStringOnly' only String getter, drop ByteBuffer/byte[] - 'MaxOneElement' only one element maximum for pointer reference - 'ImmutableAccess' strict read-only, also reduces generated code a lot 2023-06-16 01:16:55 +0200aeadfab9572e4b441b1bc1f0708cf4c72dfe181eGlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess'editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javadoc/JogAmpMacOSVersions.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgdoc/GlueGen_Mapping.mdmake/build-test.xmlREADME.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hdoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.mdwww/index.html8b127c4c1dd26fcb1756805ddb83729203161f781686874580000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [5]: Revised Struct Mapping + Documentation GlueGen Revised Struct Mapping (esp pointer to array or single element), Struct String Charset, .. and Documentation - Documentation: - Added README.md Let's have a proper face for the git repo - Added doc/GlueGen_Mapping.md (and its html conversion doc/GlueGen_Mapping.html) Created a new document covering application and implementation details suitable for users/devs. - Added doc/JogAmpMacOSVersions.md conversion to doc/JogAmpMacOSVersions.html - Updated www/index.html - Use *CodeUnit instead of PrintWriter, representing a Java or C code unit covering a set of functions and structs. The CCodeUnit also handles common code shared by its unit across functions etc. - Dropping 'static initializer', as its no more required due to simplified `JVMUtil_NewDirectByteBufferCopy()` variant. - Revised Struct Mapping: - Pure Java implementation to map primitive and struct fields within a struct by utilizing ElementBuffer. Only 'Function Pointer' fields within a struct require native code. Exposes `static boolean usesNativeCode()` to query whether native code is used/required. - Transparent native memory address API Expose `long getDirectBufferAddress()` and `static TK_Struct derefPointer(long addr)`, allowing to - pass the native struct-pointer with native code - reconstruct the struct from a native struct-pointer - have a fully functional `TK_Struct.derefPointer(struct.getDirectBufferAddress())` cycle. - Add 'boolean is<Val>Null() to query whether a pointer (array) is NULL - *Changed* array get/set method for more flexibility alike `System.arraycopy(src, srcPos, dest, destPos, len)`, where 'src' is being dropped for the getter and 'dest' is being dropped for the setter as both objects are reflected by the struct instance. - *Changed* `get<Val>ArrayLength()` -> `get<Val>ElemCount()` for clarity - Considering all ConstElemCount values with config 'ReturnedArrayLength <int>' to be owned by native code -> NativeOwnership -> Not changing the underlying memory region! JavaOwnership is considered for all pointer-arrays not of NativeOwnership. Hence any setter on a NativeOwnership pointer-array will fail with non-matching elem-count. - Add 'release<Val>()' for JavaOwnership pointer-arrays, allowing to release the Java owned native memory incl. null-ing pointer and set<Val>ElemCount(0). - Support setter for 'const <type>*' w/ JavaOwnership, i.e. pointer to const value of a primitive or struct, setter and getter using pointer to array or single element in general. - Added Config `ImmutableAccess symbol` to disable all setter for whole struct or a field - Added Config `MaxOneElement symbol` to restrict a pointer to maximum one element and unset initial value (zero elements) - Added Config `ReturnsStringOnly symbol` to restrict mapping only to a Java String, dropping the ByteBuffer variant for 'char' - String mapping default is UTF-8 and can be read and set via [get|set]Charset(..) per class. - Dynamic string length retrieval in case no `ReturnedArrayLength` has been configured has changed from `strlen()` to `strnlen(aptr, max_len)` to be on the safe site. The maximum length default is 8192 bytes and can be read and set via [get|set]MaxStrnlen(..) per class. FIXME: strnlen(..) using EOS byte non-functional for non 8-bit codecs like UTF-8, US-ASCII. This is due to e.g. UTF-16 doesn't use an EOS byte, but interprets it as part of a code point. - TODO: Perhaps a few more unit tests - TODO: Allow plain 'int' to be mapped in structs IFF their size is same for all MachineDescriptions used. Currently this is the case -> 4 bytes like int32_t. 2023-06-16 02:16:20 +02008b127c4c1dd26fcb1756805ddb83729203161f78GlueGen Struct [5]: Revised Struct Mapping + Documentationeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/JogAmpMacOSVersions.mdeditmake/build-test.xmladddoc/GlueGen_Mapping.htmladddoc/GlueGen_Mapping.mdeditwww/index.htmladddoc/JogAmpMacOSVersions.htmladdREADME.mdsrc/java/com/jogamp/common/nio/Buffers.javafdccf16290c7b742337d3f7ab66e4b85660ca7811686886205000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuffers.copyNativeToDirectByteBuffer(): Remove unused var 2023-06-16 05:30:05 +0200fdccf16290c7b742337d3f7ab66e4b85660ca781Buffers.copyNativeToDirectByteBuffer(): Remove unused vareditsrc/java/com/jogamp/common/nio/Buffers.javamake/build-test.xmlsrc/java/com/jogamp/gluegen/JavaEmitter.java88309192b450e09ba16e9d72adac178c4ce47dc31686886327000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creation 2023-06-16 05:32:07 +020088309192b450e09ba16e9d72adac178c4ce47dc3GlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creationeditmake/build-test.xmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javad98d25f26a8231c746f8e461a6d932182376cd0b1686905464000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(cli): Add --preserveGeneratedCPP option inside GlueGen 2023-06-16 10:51:04 +0200d98d25f26a8231c746f8e461a6d932182376cd0bfeat(cli): Add --preserveGeneratedCPP option inside GlueGeneditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.java.gitmodulessrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.hsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hjcppsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.java738c15d654f67ec8aeccec2b46f5a0804c7934911686905484000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(feature): Enable pragma once management 2023-06-16 10:51:24 +0200738c15d654f67ec8aeccec2b46f5a0804c793491feat(feature): Enable pragma once managementeditsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hedit.gitmoduleseditsrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditjcppeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javae1d5b49ecd9b180b6a80ad4d0ab63e08076826211686905510000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsed 2023-06-16 10:51:50 +0200e1d5b49ecd9b180b6a80ad4d0ab63e0807682621feat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsededitsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/GlueGen.javac0a5b3fcc4a2d7f5c30f95e9b387c8a2e02b4f6f1686905528000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(translationUnit): Improve logs in case of failure inside translationUnit 2023-06-16 10:52:08 +0200c0a5b3fcc4a2d7f5c30f95e9b387c8a2e02b4f6ffeat(translationUnit): Improve logs in case of failure inside translationUniteditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h8d3e22e8c54bca8e84ea94566f47b8f24cc24b601686905549000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(constants): Add supports of ~ inside ConstantDefinition 2023-06-16 10:52:29 +02008d3e22e8c54bca8e84ea94566f47b8f24cc24b60feat(constants): Add supports of ~ inside ConstantDefinitioneditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgd7bc10d7ff0e3a30d74c4e4c439230f3983bcfb41686908682000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(jni): Add directive for dedicated JNI Code with CustomJNICode 2023-06-16 11:44:42 +0200d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4feat(jni): Add directive for dedicated JNI Code with CustomJNICodeeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/JavaEmitter.java106a552817e6da2845052b48ebbfc14cf05edbd51686930961000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'. 2023-06-16 17:56:01 +0200106a552817e6da2845052b48ebbfc14cf05edbd5GlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'.editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/common/nio/ElementBuffer.java8b1db2e6cce3289ed043f85660505551b11e33741686972184000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods. 2023-06-17 05:23:04 +02008b1db2e6cce3289ed043f85660505551b11e3374ElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods.editsrc/java/com/jogamp/common/nio/ElementBuffer.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javadoc/GlueGen_Mapping.mda0abee0deb699fc97fc1146200c9057de15798d61686977931000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated code Revised setter: A) int32_t val[10] -> setter for a subset change only, as-is with args[src, srcPos, destPos, length] - no new memory, reuse only - no special action to be performed B) int32_t* val -> setter with toggle 'subset' with args[subset, src, srcPos, destPos, length], - replace memory w/ 'subset==false' where it also may copy 'destPos' gap from old -> new - reuse memory w/ 'subset==true', where destPos+length <= elementCount C) const int32_t* val -> setter to replace referenced memory only args[src, srcPos, length] - always replaces memory, no copy of a gap (no destPos) Hence: - case (A) stays as is - case (B) will be revised and argument 'boolean subset' added - case (C) will be revised (simplified) and argument 'destPos' removed 2023-06-17 06:58:51 +0200a0abee0deb699fc97fc1146200c9057de15798d6GlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated codeeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditdoc/GlueGen_Mapping.mddoc/JogAmpMacOSVersions.html6e8d3491863f21283edfd8aa0116599248fdc6fe1686977959000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8) 2023-06-17 06:59:19 +02006e8d3491863f21283edfd8aa0116599248fdc6fedoc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8)editdoc/JogAmpMacOSVersions.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlf364dd017e548d1b61b0b01ecd4ab2dbe4924d761686978185000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolved 2023-06-17 07:03:05 +0200f364dd017e548d1b61b0b01ecd4ab2dbe4924d76doc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolvededitdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.html42bd110d9ec63594cc028f3ee8a459424b1d2ae01686978472000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDrop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styles Would need to fix my standalone pandoc setup to produce proper standalone docs. 2023-06-17 07:07:52 +020042bd110d9ec63594cc028f3ee8a459424b1d2ae0Drop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styleseditwww/index.htmldeletedoc/GlueGen_Mapping.htmldeletedoc/JogAmpMacOSVersions.htmlsrc/java/com/jogamp/gluegen/JavaType.java99574c6adb0aad760162fea744606345fc5644721687051345000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaType: Add getSignature(..) like Type 2023-06-18 03:22:25 +020099574c6adb0aad760162fea744606345fc564472JavaType: Add getSignature(..) like Typeeditsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/cgram/types/Type.java0e90617503c71eedba05b604d4b35ca2d14928ec1687051403000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comType: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native" 2023-06-18 03:23:23 +02000e90617503c71eedba05b604d4b35ca2d14928ecType: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native"editsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaeec3f21c3597ff9bf9760a06e00dd341214ea90d1687051571000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void' 2023-06-18 03:26:11 +0200eec3f21c3597ff9bf9760a06e00dd341214ea90dGlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void'editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java5a19d4fb868f7459dc81ee7e82e1040f79a875441687051879000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') .. We already support platform dependent sizes like pointer etc, no reason to drop e.g. 'int'. Note: 'int' is also always 32bit of size within our current set of supported platforms, e.g. MachineDataInfo. Further fix and clarify primCElemFixedSize and primElemSizeExpr, only to be true and set if isPrimitive. 2023-06-18 03:31:19 +02005a19d4fb868f7459dc81ee7e82e1040f79a87544GlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') ..editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java2837fad810b66ace8d841c8a67577db442883c781687052094000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doc 2023-06-18 03:34:54 +02002837fad810b66ace8d841c8a67577db442883c78GlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doceditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java187c097055dc691a2ee65bed1c06c089aaf5cb591687052143000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replaced 2023-06-18 03:35:43 +0200187c097055dc691a2ee65bed1c06c089aaf5cb59GlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replacededitsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg4761c936ab5e09fe7ae19522bacf3889fc300fc91687052364000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90d See impact to T2_InitializeOptions struct fields: - 'void* Reserved1' shall be ignored (*this is the regression fix*) - 'void* Reserved2' will be taked due to config 'Opaque long T2_InitializeOptions.Reserved2' - 'T2_CustomFunc CustomFunc2' will produce a member function call as previously 2023-06-18 03:39:24 +02004761c936ab5e09fe7ae19522bacf3889fc300fc9GlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90deditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.md601399a1b7c9c66866716a8629098698dea49f381687052454000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippets 2023-06-18 03:40:54 +0200601399a1b7c9c66866716a8629098698dea49f38GlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippetseditdoc/GlueGen_Mapping.mdwww/index.htmldoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.html9dd35877f28f5d3dce5e1817edd33bb8f6dbbe361687052612000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBring back produced html5 standalone files, having fixed pandoc usage. See my pandoc-buttondown git repo <https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git/about/> Latest config <https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git/commit/?id=fb38ada0c8d71a2b26bd3ee9d075acce84d76b2c> fixed creation of standalone html5 files. 2023-06-18 03:43:32 +02009dd35877f28f5d3dce5e1817edd33bb8f6dbbe36Bring back produced html5 standalone files, having fixed pandoc usage.editwww/index.htmladddoc/GlueGen_Mapping.htmladddoc/JogAmpMacOSVersions.html.gitmodules6f7bbc15ff19640396ade377a1b2c508e67f98da1687055509000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Use default jcpp branch as its merged now 2023-06-18 04:31:49 +02006f7bbc15ff19640396ade377a1b2c508e67f98daCPP Enable Pragma Once: Use default jcpp branch as its merged nowedit.gitmodulessrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java1159dadbdca861e4a6dd47e9da3ccb47ec15f4a31687055578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramter 2023-06-18 04:32:58 +02001159dadbdca861e4a6dd47e9da3ccb47ec15f4a3CPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramtereditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java7825c4c053e0755e5dc0aa20127914887efa75e41687055634000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this feature 2023-06-18 04:33:54 +02007825c4c053e0755e5dc0aa20127914887efa75e4CPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this featureeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.java.stubsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-CustomJNICode.c.stub195bf966e4946ee9e80cd7aec68685218ad7a7771687058861000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub code 2023-06-18 05:27:41 +0200195bf966e4946ee9e80cd7aec68685218ad7a777CustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub codedeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.java.stubeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-CustomJNICode.c.stubeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-CustomJNICode.c.stub6aec5c5274d0ffb6662fdc53671b58df23850d891687058954000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stub 2023-06-18 05:29:14 +02006aec5c5274d0ffb6662fdc53671b58df23850d89CustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stubaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-CustomJNICode.c.stubsrc/java/com/jogamp/gluegen/GlueGen.javafd8ebf543ecc16233c0027c5a38701c11be548c71687064490000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfix(cli): Fix disablePragmaOnce option Option set enablePragmaOnce to true instead false 2023-06-18 07:01:30 +0200fd8ebf543ecc16233c0027c5a38701c11be548c7fix(cli): Fix disablePragmaOnce optioneditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/GlueGen.javab939d0e0555b0fe0e3609d6d867941b9aacf0e6f1687110928000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by default 2023-06-18 19:55:28 +0200b939d0e0555b0fe0e3609d6d867941b9aacf0e6fCPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by defaulteditsrc/java/com/jogamp/gluegen/GlueGen.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlb08c609647f6280ddcd1329c40da1fe23d34c4e61687118554000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [14]: Update doc/GlueGen_Mapping.md Completing a few cases and fix some signatures in table 2023-06-18 22:02:34 +0200b08c609647f6280ddcd1329c40da1fe23d34c4e6GlueGen Struct [14]: Update doc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlwww/index.htmlf783788e21f40a4a429221dad416a79586429eb41687118768000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comwww/index.html: Copy Documentation section into main text for visibility 2023-06-18 22:06:08 +0200f783788e21f40a4a429221dad416a79586429eb4www/index.html: Copy Documentation section into main text for visibilityeditwww/index.htmldoc/manual/index.html49e5000347543559867a45f1d1b330b6086d7a321687119397000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping document 2023-06-18 22:16:37 +020049e5000347543559867a45f1d1b330b6086d7a32Doc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping documenteditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java32db4ef66cacc4a6f01bd6b36f8cda96acb7ed381687180722000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType() 2023-06-19 15:18:42 +020032db4ef66cacc4a6f01bd6b36f8cda96acb7ed38GlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType()editsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javadoc/GlueGen_Mapping.mdf7f554208c024280f1929df79bdbb83c758b8b491687226322000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the former 2023-06-20 03:58:42 +0200f7f554208c024280f1929df79bdbb83c758b8b49doc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the formereditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javadoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javadoc/GlueGen_Mapping.mdmake/build-test.xmlb9dc722d689760bf85628edd8766dc6cd2360c8e1687226532000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentation 2023-06-20 04:02:12 +0200b9dc722d689760bf85628edd8766dc6cd2360c8eGlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentationaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javaeditmake/build-test.xmleditdoc/GlueGen_Mapping.htmleditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cdoc/GlueGen_Mapping.md65e9c14e1566d5bfa88435d460c699c2a8fd23b71687253052000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>() 2023-06-20 11:24:12 +020065e9c14e1566d5bfa88435d460c699c2a8fd23b7GlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>()editdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg3d6003fcada35d91c0d865ad0f4edb1da3ed8b8d1687285862000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long config 2023-06-20 20:31:02 +02003d6003fcada35d91c0d865ad0f4edb1da3ed8b8dGlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long configeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/java/com/jogamp/gluegen/JavaEmitter.java10433928d69e58dc6a6b99e9c0a9b0a2669db56a1687319498000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in message 2023-06-21 05:51:38 +020010433928d69e58dc6a6b99e9c0a9b0a2669db56aJavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in messageeditsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javadf5b63babeec8a9de0ab22a917bbd6c192a2ac0f1687493571000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Test: Test2 -> Test2FuncPtr 2023-06-23 06:12:51 +0200df5b63babeec8a9de0ab22a917bbd6c192a2ac0fGlueGen Test: Test2 -> Test2FuncPtreditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javasrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/common/nio/NativeBuffer.javasrc/java/com/jogamp/common/nio/ElementBuffer.java3f50232fae03c65d7d84a6ca1e2a7b83cefde6ae1687493851000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methods Completing API to simplify usage by generated code. All absolute get/set method check arguments itself and against limit(), allow to drop checks in generated code (size). 2023-06-23 06:17:31 +02003f50232fae03c65d7d84a6ca1e2a7b83cefde6aeNIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methodseditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/java/com/jogamp/common/nio/NativeBuffer.javaeditsrc/java/com/jogamp/common/nio/ElementBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaType.javaf90a42bd693ab9d451902e69ad86359fae2510dc1687493917000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Type, JavaType: Align getSignature(..) output 2023-06-23 06:18:37 +0200f90a42bd693ab9d451902e69ad86359fae2510dcGlueGen: Type, JavaType: Align getSignature(..) outputeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Field.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.java9e61409658358834c2ba26c69c3efcbb5755c1281687494716000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction() Added getArrayBaseOrPointerTargetType() returns getBaseType() for arrays or getTargetType() for pointer, i.e. stops traversing if an elementType is a pointer and returns the elementType as target-type. This resolves 'int* intPtrArray[10]', but also simplifies all cases of 'int** intPtrPtr' and 'int intPtr[10]' etc. Since get{Base,Target}Type() returns the functionPointer, getTargetFunction() allows to retrieve the actual target function type. 2023-06-23 06:31:56 +02009e61409658358834c2ba26c69c3efcbb5755c128GlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction()editsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Field.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java10842e888d1367475019f33bc651671453b31bd21687494816000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO output 2023-06-23 06:33:36 +020010842e888d1367475019f33bc651671453b31bd2GlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO outputeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java829d69ca42d2022790b136a5f689c34919a7c7751687494886000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth() 2023-06-23 06:34:46 +0200829d69ca42d2022790b136a5f689c34919a7c775GlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth()editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md23f4c6347ea24cf619dba573e83790e73d81d5ad1687496964000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [16]: Add support for pointer-pointer and function-pointer values See documentation and unit test test2.h, Test2FuncPtr.java and Test3PtrStorage.java 2023-06-23 07:09:24 +020023f4c6347ea24cf619dba573e83790e73d81d5adGlueGen Struct [16]: Add support for pointer-pointer and function-pointer valuesaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javaeditmake/scripts/runtest.sheditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java69d9f10bb1c99cba53869f2b019d5227446622e21687671162000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusable 2023-06-25 07:32:42 +020069d9f10bb1c99cba53869f2b019d5227446622e2GlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusableeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/DebugEmitter.java7a4a0aea28729eabf1d44f58b0cfa4255f1609921687671473000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usage 2023-06-25 07:37:53 +02007a4a0aea28729eabf1d44f58b0cfa4255f160992GlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usageeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java12ed5d03a26997c185474e992ad93ec99ec3baa11687671638000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..) 2023-06-25 07:40:38 +020012ed5d03a26997c185474e992ad93ec99ec3baa1GlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..)editsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java069c5f69d22c8979728149a51a089b52712cac5c1687671701000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Add JavaEmitter(JavaConfiguration) ctor 2023-06-25 07:41:41 +0200069c5f69d22c8979728149a51a089b52712cac5cGlueGen: Add JavaEmitter(JavaConfiguration) ctoreditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javafd1c691c2e11e1dcfc6f84143e5152c5cd14b45b1687671830000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array case 2023-06-25 07:43:50 +0200fd1c691c2e11e1dcfc6f84143e5152c5cd14b45bJavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array caseeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Type.java42a1f8c8bdb34242f422d24c4ad1d67a1e7ffd251687671956000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type. 2023-06-25 07:45:56 +020042a1f8c8bdb34242f422d24c4ad1d67a1e7ffd25GlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type.editsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javad55eab966968dfff6eac0db0445a0dbfbfb962401687671991000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType: Expose toString(..) w/ 'isPointer' argument 2023-06-25 07:46:31 +0200d55eab966968dfff6eac0db0445a0dbfbfb96240GlueGen FunctionType: Expose toString(..) w/ 'isPointer' argumenteditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javasrc/java/com/jogamp/gluegen/JavaType.javac54c5699c752fcf2cee19ef9dc21cd4acb5aa6cd1687672284000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Add JavaType.forObjectClass() 2023-06-25 07:51:24 +0200c54c5699c752fcf2cee19ef9dc21cd4acb5aa6cdGlueGen Add JavaType.forObjectClass()editsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javab9bddbd7a75e7fa9812fdcc455a0c4857c3e99901687672373000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() ) 2023-06-25 07:52:53 +0200b9bddbd7a75e7fa9812fdcc455a0c4857c3e9990GlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() )editsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java15ed242971142e0726e60271172266515533e1f41687672860000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]' Define a JavaCallback, enacted on a function-pointer argument `T2_CallbackFunc` and a user-param `void*` for Java Object mapping Example: JavaCallbackDef T2_CallbackFunc 2 2023-06-25 08:01:00 +020015ed242971142e0726e60271172266515533e1f4GlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]'editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java7caf66ccae2dea53b82fb6552cb9144d4146259f1687672890000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol) 2023-06-25 08:01:30 +02007caf66ccae2dea53b82fb6552cb9144d4146259fGlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol)editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/JavaEmitter.java5a130ab0c6db44225692e362e41e7b45481f93921687673003000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementation Note: JavaCallbackDef is commented out on test2.cfg example, since implementation is missing. 2023-06-25 08:03:23 +02005a130ab0c6db44225692e362e41e7b45481f9392GlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementationeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmled49b01838f3c07fa7a997b1f758ce2c983f49f71687673033000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add more related documentation 2023-06-25 08:03:53 +0200ed49b01838f3c07fa7a997b1f758ce2c983f49f7GlueGen JavaCallback: Add more related documentationeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaType.java90b86c62270c494d2422dabc2879e59e063b535c1687741869000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime) New nature can be queried via isNamedClass(). Cleaned up equals() and completed hashValue() etc. Ctor validation ensures exactly one nature is set! 2023-06-26 03:11:09 +020090b86c62270c494d2422dabc2879e59e063b535cGlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime)editsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java93c63bd880b6bc8a85a0057112b5065b312af1db1687742099000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function. This passes the jobject for the callback function/interface and the userParam (from 'void*') down to the native implementation. TODO: Add specific native implementation for JavaCallback, wrapping the jobject's into a native struct as user-param and a universal C-function as the native callback to dispatch the call to the java method with known arguments. 2023-06-26 03:14:59 +020093c63bd880b6bc8a85a0057112b5065b312af1dbGlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function.editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java68911f778039bbf08b5afbffd536b4cdacd330321687745359000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Expose getJNIMethodDescriptor() for JNI mangled method names, used in CMethodBindingEmitter; Use JavaCallback's function-pointer-type capital-name as simple-class-name and its FQN for JNI resolution. 2023-06-26 04:09:19 +020068911f778039bbf08b5afbffd536b4cdacd33032GlueGen JavaCallback: Expose getJNIMethodDescriptor() for JNI mangled method names, used in CMethodBindingEmitter; Use JavaCallback's function-pointer-type capital-name as simple-class-name and its FQN for JNI resolution.editsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java4d884db4e08ce9911871d3bdcf378041cde584fd1687771042000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Move JavaCallback into JavaConfiguration, accessible across *Emitter (needed for CMethodEmitter as well); Add JavaCallback.methodSignature to be passed to native function later on to find the callback jmethodID 2023-06-26 11:17:22 +02004d884db4e08ce9911871d3bdcf378041cde584fdGlueGen JavaCallback: Move JavaCallback into JavaConfiguration, accessible across *Emitter (needed for CMethodEmitter as well); Add JavaCallback.methodSignature to be passed to native function later on to find the callback jmethodIDeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java58712fb3a386ca6327b71218bab6e4b218da36a81687771132000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callback 2023-06-26 11:18:52 +020058712fb3a386ca6327b71218bab6e4b218da36a8GlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callbackeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.java9be1305636daa633a7219e102b22a4ffcf2776901687997160000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-types .. includes cross-ref'ed doc and unit test 2023-06-29 02:06:00 +02009be1305636daa633a7219e102b22a4ffcf277690GlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-typeseditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadoc/GlueGen_Mapping.md9f69f8b60b9fdc80076e20f303252ddd35b97ccf1687997460000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for it 2023-06-29 02:11:00 +02009f69f8b60b9fdc80076e20f303252ddd35b97ccfGlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for iteditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javadoc/GlueGen_Mapping.mdce542531f4cb6fe2bf37f3926ea869722e5acf7d1687997898000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen LibraryOnLoad Config: Generate `JNI_OnLoad(..)` for dynamic and `JNI_OnLoad_<LibraryBasename>(..)` for static libraries and `JVMUtil_GetJNIEnv(..)` to resolve the `JNIEnv*` as used by JavaCallback 2023-06-29 02:18:18 +0200ce542531f4cb6fe2bf37f3926ea869722e5acf7dGlueGen LibraryOnLoad Config: Generate `JNI_OnLoad(..)` for dynamic and `JNI_OnLoad_<LibraryBasename>(..)` for static libraries and `JVMUtil_GetJNIEnv(..)` to resolve the `JNIEnv*` as used by JavaCallbackeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaa1b107dd3fbe2070a1e667d8d7702912b0af70711687998298000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtils 2023-06-29 02:24:58 +0200a1b107dd3fbe2070a1e667d8d7702912b0af7071GlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtilseditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java809a7f84fcada7fbde8b7d0c226b78492fbfc6161687998901000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback) 2023-06-29 02:35:01 +0200809a7f84fcada7fbde8b7d0c226b78492fbfc616GlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaa83dad9963b394ac3e7bb193c6da7d9a5004a40e1688000610000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType: Factor out getParameterList(..) from toString(..) and drop 'void' and use typedef-name; MethodBinding: Add getCParameterList(..) and getJavaParameterList(..) for general usage similar to FunctionType.getParameterList() 2023-06-29 03:03:30 +0200a83dad9963b394ac3e7bb193c6da7d9a5004a40eGlueGen FunctionType: Factor out getParameterList(..) from toString(..) and drop 'void' and use typedef-name; MethodBinding: Add getCParameterList(..) and getJavaParameterList(..) for general usage similar to FunctionType.getParameterList()editsrc/java/com/jogamp/gluegen/CodeGenUtils.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java1d66739e09899cb90888c8fe34aba339511aa6561688000700000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parameter 2023-06-29 03:05:00 +02001d66739e09899cb90888c8fe34aba339511aa656GlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parametereditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md6591f1fef419841660311bbb554aeda7b267c9a71688003412000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource management Tested via Test4JavaCallback.java (using test2.[hc]). Please read the GlueGen_Mapping.md as well as Test4JavaCallback.java . +++ Some implementation details: JavaConfiguration maps JavaCallbackDef to JavaCallback set-function and maintains a list. JavaCallbackDef itself holds all configured details. JavaConfiguration also maps JavaCallbackInfo to JavaCallback set-function. JavaCallbackInfo itself holds all compile time information, as produced by JavaEmitter.beginFunctions(..). This extends JavaCallbackDef and avoid repetetive computation for the callback-function-type and its MethodBinding, parameter indices for the callback interface and userParam, etc. CMethodBindingEmitter: Native callback to Java dispatch - The JavaCallback setter function creates a native 'UserParam' struct instance, which holds the callback-interface-jobject, its callback-jmethodID and the userParam-jobject for invocation of the actual JavaCallback interface method. - To produce the C-Type -> JNI-Type conversion, An internal CMethodBindingEmitter instance for the native-callback function binding is created inside the CMethodBindingEmitter of the callback setter method. It is being used to map the types to JNI within the generated native callback function, passed to the actual JavaCallback method. JavaMethodBindingEmitter: Native callback to Java dispatch - The JavaCallbacl setter passes the callback-interface-object, the userParam-object and the callback-method-signature (to have the native method retrieve the jmethodID). - It receives the native pointer of the native `UserParam` struct instance, which gets mapped to the userParam-object. (*TODO: Refine ownership + release*). 2023-06-29 03:50:12 +02006591f1fef419841660311bbb554aeda7b267c9a7GlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource managementeditdoc/GlueGen_Mapping.htmleditmake/scripts/runtest.sheditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mdfb86a3c6f68f3788b02a8e8209a697f50c25dc191688004329000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: Align GlueGen_Mapping.md intro w/ README.md and www/index.html 2023-06-29 04:05:29 +0200fb86a3c6f68f3788b02a8e8209a697f50c25dc19Doc: Align GlueGen_Mapping.md intro w/ README.md and www/index.htmleditdoc/GlueGen_Mapping.htmleditwww/index.htmleditREADME.mdeditdoc/GlueGen_Mapping.mdwww/index.htmldc5061e2d31f01a875b27e722835e2e8cfa67c881688004465000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: www/index.html: Fix JOGL UML link 2023-06-29 04:07:45 +0200dc5061e2d31f01a875b27e722835e2e8cfa67c88Doc: www/index.html: Fix JOGL UML linkeditwww/index.htmldoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mdd5304ac167fc406f682730c40fef2c880a44672e1688004644000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc intro: Fix LibraryOnLoad using generic LibraryBasename 2023-06-29 04:10:44 +0200d5304ac167fc406f682730c40fef2c880a44672eDoc intro: Fix LibraryOnLoad using generic LibraryBasenameeditwww/index.htmleditdoc/GlueGen_Mapping.mdeditREADME.mdeditdoc/GlueGen_Mapping.htmlREADME.md0298341f71f43f4011a40e955bd5e99cbd7985971688004983000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comREADME.md: Fix links 2023-06-29 04:16:23 +02000298341f71f43f4011a40e955bd5e99cbd798597README.md: Fix linkseditREADME.mdsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java4e9d0edc3810d36ffe1660e6ac17d1dc547ea7d71688006922000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function. 2023-06-29 04:48:42 +02004e9d0edc3810d36ffe1660e6ac17d1dc547ea7d7GlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function.editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javae898caec411fc2f313aabc188a22099e266640801688007050000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTest4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests.. 2023-06-29 04:50:50 +0200e898caec411fc2f313aabc188a22099e26664080Test4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests..editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java.classpathad79dae90b94d0875416278e9dcedfc08a1de5781688110839000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse classpath 2023-06-30 09:40:39 +0200ad79dae90b94d0875416278e9dcedfc08a1de578Eclipse classpathedit.classpathsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javab35d62425311ec50e6c80b07372bc411aa287bb41688110881000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generator 2023-06-30 09:41:21 +0200b35d62425311ec50e6c80b07372bc411aa287bb4GlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generatoreditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.mda73c992290930e617c78241bae9fe20cb18a01a91688117793000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass` Updated unit test and doc accordingly. Unit tests handle OpenAL's AL_SOFT_callback_buffer and AL_SOFT_events. Tested global scope (no key, default) and 1 key (default) and 1 key (custom class). Added more query functions, which all only take the `SetCallbackFunction` key arguments as specified. Cleaned up JavaCallback* config class field naminig scheme. Added 'synchronized (..Map) { }' block in crucial `SetCallbackFunction`, rendering implementation thread safe. 2023-06-30 11:36:33 +0200a73c992290930e617c78241bae9fe20cb18a01a9GlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass`editdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mddd5829a4fed25fbad766361b87c65076ef596ded1688172618000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad section 2023-07-01 02:50:18 +0200dd5829a4fed25fbad766361b87c65076ef596dedGlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad sectioneditwww/index.htmleditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmleditREADME.mdsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java6200b9122a90ef8c2af8b9205b4b1c90b1aa50741688204731000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback call .. to avoid a potential race condition 2023-07-01 11:45:31 +02006200b9122a90ef8c2af8b9205b4b1c90b1aa5074GlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback calleditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md8766fcfdce4dd864fe6764b063a0f9a4b17327c11688230657000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methods Further we use a dedicated lock Object used in the Java implementation. TODO: Native static callback dispatch code shall - (also) acquire the lock - handle case where the data has been released already to render this solution thread-safe and data-race free 2023-07-01 18:57:37 +02008766fcfdce4dd864fe6764b063a0f9a4b17327c1GlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methodseditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadf0895828e957d97f38510da36eade7a60691d961688232194000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined! 2023-07-01 19:23:14 +0200df0895828e957d97f38510da36eade7a60691d96GlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined!editdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java679ce37046c3c68b97e56fb70ea7b316e9dba3ad1688249578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safe 2023-07-02 00:12:58 +0200679ce37046c3c68b97e56fb70ea7b316e9dba3adGlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safeeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlbe2d31199f95ddbfa02530a021c8ab9611018f271688249822000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Emphasize all methods are thread-safe 2023-07-02 00:17:02 +0200be2d31199f95ddbfa02530a021c8ab9611018f27GlueGen JavaCallback: Emphasize all methods are thread-safeeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html760fb65d1d65fcac927e28de442f3b9bfd3d58f01688249941000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typo 2023-07-02 00:19:01 +0200760fb65d1d65fcac927e28de442f3b9bfd3d58f0doc/GlueGen_Mapping.md: Typoeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java98dca8cd3cffd3f9dc1c920bbe8e6349877447b71688263100000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ release 2023-07-02 03:58:20 +020098dca8cd3cffd3f9dc1c920bbe8e6349877447b7GlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ releaseeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java1caceb4e72b2e99c5c458d37ebced0c51fe6bb701688268764000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj only 2023-07-02 05:32:44 +02001caceb4e72b2e99c5c458d37ebced0c51fe6bb70GlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj onlyeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javae999ece8b0cd2ec440314f9a4c20812c694991ae1688268853000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElement 2023-07-02 05:34:13 +0200e999ece8b0cd2ec440314f9a4c20812c694991aeGlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElementeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java3ee4a042aee86657128b834dad553baf838346121688298727000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter JavaCallback: Use a friendly readable basename for errors 2023-07-02 13:52:07 +02003ee4a042aee86657128b834dad553baf83834612CMethodBindingEmitter JavaCallback: Use a friendly readable basename for errorseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java88346aae69cc12c7f6932152697a854039517aa71688298775000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issues 2023-07-02 13:52:55 +020088346aae69cc12c7f6932152697a854039517aa7GlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issueseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java9b9aa128d92e9512cb00559e99dce9c8de726ed71688298856000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in general Covered by unit tests now 2023-07-02 13:54:16 +02009b9aa128d92e9512cb00559e99dce9c8de726ed7GlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in generaleditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java6d53b4b1dd07006e7af0e540b2c2e6ee6e1746d51688300764000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef struct 2023-07-02 14:26:04 +02006d53b4b1dd07006e7af0e540b2c2e6ee6e1746d5GlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef structeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.mdREADME.mdsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlwww/index.htmla599b852a041ba3d80b43981589ac1390979dac21688463389000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ... Implementation now generates a static Java callback dispatcher for each defined SetCallbackFunction, which gets invoked by the generated native static counterpart with all arguments required. The static callback utilizes its own synchronization for thread-safety and fetches the required data set stored at SetCallbackFunction to dispatch the call to the users' CallbackFunction. In case the callback has been removed already, the static callback simply bails out quietly. The native code does not create, release or manage heap memory and therefore is considered safe. +++ Further Struct Type UserParam are now supported including Heterogeneous UserParam mapping (read GlueGen_Mapping.*). +++ Cleaned up code by extracting all JavaCallback emitter code into JavaCallbackEmitter class in one place, leaving JavaMethodbindingEmitter and CMethodbindingEmitter mostly in their original stage (non-convoluted). In this regard, I had to refactor a few function, i.e. moving CMethodbindingEmitter.getJNIMangledArg(..) into JavaType.appendDescriptor(..) and JavaType.appendJNIDescriptor(..) while reusing the toJNIMethodDescriptor(..) conversion. Test4JavaCallback covers and passes all cases. 2023-07-04 11:36:29 +0200a599b852a041ba3d80b43981589ac1390979dac2GlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ...editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditwww/index.htmleditREADME.mdeditsrc/java/com/jogamp/gluegen/JavaType.javaeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaaddsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaType.java8cc90ef6a61b9686cc287bf34a3fcba924276c011688466171000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversion 2023-07-04 12:22:51 +02008cc90ef6a61b9686cc287bf34a3fcba924276c01GlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversioneditsrc/java/com/jogamp/gluegen/JavaType.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html0c4067379e5e12617b9a4530e607ca34762b54e31688467795000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Quote `void*` correctly .. 2023-07-04 12:49:55 +02000c4067379e5e12617b9a4530e607ca34762b54e3doc/GlueGen_Mapping.md: Quote `void*` correctly ..editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CCodeUnit.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mdae4c2c3e59ed92caa6f0e18360b7236e50899bf61688544256000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback! 2023-07-05 10:04:16 +0200ae4c2c3e59ed92caa6f0e18360b7236e50899bf6GlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback!editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java5ceca8550b82591a6a2661a26d3e0d5e6e3e15ff1688545308000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType() It is common in toolkit APIs that a string might not be passed as a 'nul' terminated (EOS) C string, but as a Pascal string with a given length argument. A C string is specied as ArgumentIsString alEventCallbackInject 3 while allowing multiple indices .. A Pascal string can be specified as ArgumentIsPascalString ALEVENTPROCSOFT 3 4 while allowing multiple indice-tuples for length and value .. The tuple consist of the length agrument-index first (usually an int) followed by the value argument-index (usually a 'char*'). +++ CMethodBindingEmitter.emitBodyMapCToJNIType(), where PascalString is implemented, is currently being used for - JNI return statement (no PascalString impact possible) - JavaCallback C type -> JNI type, PascalString impacting 2023-07-05 10:21:48 +02005ceca8550b82591a6a2661a26d3e0d5e6e3e15ffGlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType()editdoc/manual/index.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/manual/index.html56d3cbcf7a6a6f83706962dd24846906fa2bb4201688549576000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comManual: Refine `ArgumentIsPascalString` 2023-07-05 11:32:56 +020056d3cbcf7a6a6f83706962dd24846906fa2bb420Manual: Refine `ArgumentIsPascalString`editdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java5b867d0f90a43a02e1fbd03fb1ed588a391806eb1688550086000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID) Also use a longer jclass argument name 'clazz' -> 'staticCBClazz' to avoid potential collisions 2023-07-05 11:41:26 +02005b867d0f90a43a02e1fbd03fb1ed588a391806ebGlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md3ed3e9887c459169b807165c9df2ae2bc2990a311688632530000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build key 2023-07-06 10:35:30 +02003ed3e9887c459169b807165c9df2ae2bc2990a31GlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build keyeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html4267e223e33acdc098cc5b4371765f8e31b96eff1688636526000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter index 2023-07-06 11:42:06 +02004267e223e33acdc098cc5b4371765f8e31b96effGlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter indexeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md701311d6fc507b1e21681dd60c6851fbc50c23041688773427000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add capability to have UserParam as (part of) key Resolves use case where UserParam reflects e.g. a context (AL_SOFT_events) and will be (part of) the key mapping. Implementation required an additional userParamID -> userParam mapping for default Object/ID usage. Added 2 test cases. 2023-07-08 01:43:47 +0200701311d6fc507b1e21681dd60c6851fbc50c2304GlueGen JavaCallback: Add capability to have UserParam as (part of) keyeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.caddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/manual/index.html63ed5f7676bc46ee03db1a6d27c5ce86fcf6a5971688774924000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comManual: Fix ArgumentIsPascalString 2023-07-08 02:08:44 +020063ed5f7676bc46ee03db1a6d27c5ce86fcf6a597Manual: Fix ArgumentIsPascalStringeditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md0ea6688e41c31b0e2c8dba73582c935562885b441688999976000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting API 2023-07-10 16:39:36 +02000ea6688e41c31b0e2c8dba73582c935562885b44GlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting APIeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubdoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html60277196f721875a4114e065fdf1ba24521811be1689014834000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' 2023-07-10 20:47:14 +020060277196f721875a4114e065fdf1ba24521811bedoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass'editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmla03df850033d11386471534840a83bbac81304df1689015095000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions) 2023-07-10 20:51:35 +0200a03df850033d11386471534840a83bbac81304dfdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions)editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlfe21c87b24842d67df686b7c48fa36ed65a9afc91689015808000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today) Cough cough .. should have reviewed the whole thing once. Must be the summer distraction causing premature commits. Sorry about that :) 2023-07-10 21:03:28 +0200fe21c87b24842d67df686b7c48fa36ed65a9afc9doc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today)editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.c380969bbf0b7746ab245b7d7d177243092fb2c341690816974000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Add setter generation for not constant and not opaque compound attribute 2023-07-31 17:22:54 +0200380969bbf0b7746ab245b7d7d177243092fb2c34feat(generation): Add setter generation for not constant and not opaque compound attributeeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.had69716fda64b517c33ed847c4b215ea398aac991690817141000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(callbackGenerator): Add basic management of callback without userData 2023-07-31 17:25:41 +0200ad69716fda64b517c33ed847c4b215ea398aac99feat(callbackGenerator): Add basic management of callback without userDataeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javadoc/GlueGen_Mapping.md165e3b87b2d3abbb83e9fe5421ac63931b41c7931690907832000https://jogamp.org/chuck/user/mferymferymfery@ankama.comdoc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userData 2023-08-01 18:37:12 +0200165e3b87b2d3abbb83e9fe5421ac63931b41c793doc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userDataeditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaEmitter.java9bf13be7d8a144be18dd313e8ed7658f25b9c1d01691062314000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCase 2023-08-03 13:31:54 +02009bf13be7d8a144be18dd313e8ed7658f25b9c1d0feat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCaseeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java1e78cc429f148aa200ae487bacb6d4a9b6b7c8d91691090184000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper) 2023-08-03 21:16:24 +02001e78cc429f148aa200ae487bacb6d4a9b6b7c8d9CMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java910ce385d5e56eeb1fd7f81678042f19f76b18701691090316000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup) 2023-08-03 21:18:36 +0200910ce385d5e56eeb1fd7f81678042f19f76b1870JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java711533cef82cab317662e84f1d1719bdbeca42531691090608000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entities 2023-08-03 21:23:28 +0200711533cef82cab317662e84f1d1719bdbeca4253JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entitieseditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaa51c63b8b054eec3393d4c340cf3cefe561a01b11691098549000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParam Passed CMethodBindingEmitter denotes the callback-function, including the binding. The new iteration to handle the ad-hoc compound conversion, introduced in commit ad69716fda64b517c33ed847c4b215ea398aac99 'callback without userData', iterates over the callback-function argument list. Hence it shall only exclude the ad-hoc compound conversion if index != info.cbFuncUserParamIdx. Dropping the addition exclusion 'i != info.setFuncUserParamIdx'. 2023-08-03 23:35:49 +0200a51c63b8b054eec3393d4c340cf3cefe561a01b1JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParameditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javae9a2294b3f18bb4c4f38347ccf347058cb4642b31691099874000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding' Was added in commit ad69716fda64b517c33ed847c4b215ea398aac99 'callback without userData', while adding ad-hoc compound conversion. 2023-08-03 23:57:54 +0200e9a2294b3f18bb4c4f38347ccf347058cb4642b3JavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding'editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javae729d53c8384757b6a5ada2491c7cd4ad07c8bfe1691100456000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding' Since emitJavaCallbackBodyPassJavaArguments() is private now, only use case is to handle info.cbFuncBinding and we can drop the redundant argument. Similar to cleanup commit e9a2294b3f18bb4c4f38347ccf347058cb4642b3 2023-08-04 00:07:36 +0200e729d53c8384757b6a5ada2491c7cd4ad07c8bfeJavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding'editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java88941c41dbb134984fd0857db9ea0729d9306bbb1691100598000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..) Passed 'jcbFuncCMethodEmitter' only used to access CMethodBindingEmitter.emitBodyMapCToJNIType(int, boolean), a non-ideal hack! (FIXME) General processing shall use the local `info.cbFuncBinding`. 2023-08-04 00:09:58 +020088941c41dbb134984fd0857db9ea0729d9306bbbJavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.javad4e8ecc3b4f68b86d95ec951971a0fea202179881691100882000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required? - needsIntermediateOperation -> needsJavaCallbackCode - Use JavaConfiguration.requiresJavaCallbackCode(..) TBD: Is this even required? As far as I see, the non-userParam callback case adds no additional code requirements. Both, callback with and without userParam shares same code path and the respective native static fields. Only that the non-userParam code path adds additional native static fields, but all code sections are produced in both cases. 2023-08-04 00:14:42 +0200d4e8ecc3b4f68b86d95ec951971a0fea20217988JavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required?editsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java3e249796e7b42033072aeda438d987601939db441691101088000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different order - ad-hoc compound equals must compare value, since native code creates a new class instance from native struct - Add additional case with addition callback argument for further validation 2023-08-04 00:18:08 +02003e249796e7b42033072aeda438d987601939db44Fix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different ordereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/DebugEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javab08c61935daa0191f4ec59c6998bc56dae18e54d1691139125000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't present 2023-08-04 10:52:05 +0200b08c61935daa0191f4ec59c6998bc56dae18e54dfeat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't presenteditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java97b574914f7f961458f6668495c2fef70b9105491691139611000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..) We only produce one variant in code. Use case: String type as userParam (barely tested and not useful) 2023-08-04 11:00:11 +020097b574914f7f961458f6668495c2fef70b910549CMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java1250d960d8bf2ee9ab8726a18a837115d69308151691139828000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String') Use case: String type as userParam, barely tested and not useful. However, let's pass through all cases in our code. Added LOG INFO for mapped types. 2023-08-04 11:03:48 +02001250d960d8bf2ee9ab8726a18a837115d6930815JavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String')editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg3ad38748d7ef50a3631506eabcd3ae3417faa84d1691140413000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identity Use case is having a compound-type as userParam, which also acts as key, see MessageCallback13, Test4JavaCallback.chapter13(). The Java compound instance is re-created using the actual identical native memory (address), which has been stored or passed in the native toolkit. 2023-08-04 11:13:33 +02003ad38748d7ef50a3631506eabcd3ae3417faa84dJavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identityeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java927bbc7160a812bb29c0e7120d4a3009bfb13bbf1691142383000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode() Method was encapsulated in commit d4e8ecc3b4f68b86d95ec951971a0fea20217988 and questioned whether it is required. The non-userParam callback case adds no additional code requirements. Both, callback with and without userParam shares same code path and the respective native static fields. Only that the non-userParam code path adds additional native static fields, but all code sections are produced in both cases. Passed all unit tests. 2023-08-04 11:46:23 +0200927bbc7160a812bb29c0e7120d4a3009bfb13bbfJavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html9b0335ea91c39469b586b4005dfae35d4b2cc84b1691143006000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html page 2023-08-04 11:56:46 +02009b0335ea91c39469b586b4005dfae35d4b2cc84bdoc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html pageeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gdoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p1.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javamake/build-test.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg2abb40b0ca9a6a06bdbe3e66b4235301ed15c6931691170668000https://jogamp.org/chuck/user/mferymferymfery@ankama.comwip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Almost done 2023-08-04 19:37:48 +02002abb40b0ca9a6a06bdbe3e66b4235301ed15c693wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbfeditdoc/GlueGen_Mapping.mddeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javaeditmake/scripts/runtest.shdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javaeditdoc/GlueGen_Mapping.htmleditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgeditmake/build-test.xmldeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p1.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java4a8f15d29120e7744eca75f6d99bae6a7431749e1691172143000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRevert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()" This reverts commit 927bbc7160a812bb29c0e7120d4a3009bfb13bbf. 2023-08-04 20:02:23 +02004a8f15d29120e7744eca75f6d99bae6a7431749eRevert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()"editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-if.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgmake/build-test.xml8b4d36e543a14c404c73942840f15a4d81d839901691194245000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfg 2023-08-05 02:10:45 +02008b4d36e543a14c404c73942840f15a4d81d83990WIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-if.cfgdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgeditmake/build-test.xmlmake/build-test.xmle52b7022e31022b92f4aaf5fb2e9457d767682c81691194342000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1 2023-08-05 02:12:22 +0200e52b7022e31022b92f4aaf5fb2e9457d767682c8WIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1editmake/build-test.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg06318d44c94c494fe6862ac8cf97fca799d058001691194407000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impl 2023-08-05 02:13:27 +020006318d44c94c494fe6862ac8cf97fca799d05800WIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgfbd065be8a5f36455a335c20549d729537f5d4b01691194442000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target name 2023-08-05 02:14:02 +0200fbd065be8a5f36455a335c20549d729537f5d4b0WIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target nameeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.java94c68465331b10f548727483437a3f3b575ee2871691194863000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1() 2023-08-05 02:21:03 +020094c68465331b10f548727483437a3f3b575ee287WIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1()editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java2e8b69496221f242fee762140418008a9a862d3d1691194985000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped. Just ensure GlueGen itself is initializes via Platform.initSingleton() in common BaseClass 2023-08-05 02:23:05 +02002e8b69496221f242fee762140418008a9a862d3dGlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped.editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javaf0da1ec6f5ac68de4c1ede1fd54a71b656fe5d751691195057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam case Additional body code for JavaCallback is required for methods it. 2023-08-05 02:24:17 +0200f0da1ec6f5ac68de4c1ede1fd54a71b656fe5d75JavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam caseeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javasrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javasrc/junit/com/jogamp/common/util/TestIntIntHashMap.javasrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javatest/junit/com/jogamp/gluegen/TestStructAccessor.javasrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javatest/junit/com/jogamp/gluegen/StructAccessorTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/common/util/TestLongIntHashMap.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.java177ee444d1b86e6412f636d5f4e8f0695d4182461691198109000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:15:09 +0200177ee444d1b86e6412f636d5f4e8f0695d418246Cleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classesaddsrc/junit/com/jogamp/common/util/TestIntIntHashMap.javaaddsrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javaaddtest/junit/com/jogamp/gluegen/TestStructAccessor.javadeletesrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javadeletesrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaaddsrc/junit/com/jogamp/common/util/TestLongIntHashMap.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javadeletesrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javadeletetest/junit/com/jogamp/gluegen/StructAccessorTest.javadeletesrc/junit/com/jogamp/common/util/LongIntHashMapTest.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javadeletesrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javasrc/junit/com/jogamp/common/util/TestIntIntHashMap.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javatest/junit/com/jogamp/gluegen/StructValidator.javatest/junit/com/jogamp/gluegen/TestStructAccessor.javasrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/common/util/TestLongIntHashMap.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.java0d3c2b630e06045013250547b3d0cb1bd9f993861691198166000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:16:06 +02000d3c2b630e06045013250547b3d0cb1bd9f99386Cleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classeseditsrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaedittest/junit/com/jogamp/gluegen/StructValidator.javaeditsrc/junit/com/jogamp/common/util/TestIntIntHashMap.javaeditsrc/junit/com/jogamp/common/util/TestLongIntHashMap.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaedittest/junit/com/jogamp/gluegen/TestStructAccessor.javaeditsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javaeditsrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javaeditsrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg05a931d587feb3116892f5b146b3a4bb2867e9231691198497000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:21:37 +020005a931d587feb3116892f5b146b3a4bb2867e923Cleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classeseditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgmake/scripts/runtest.shdoc/misc/macos_nativelib_dependencies.md287780236de7e3cea7ba826a76f720cf4501e4c01691205539000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-path 2023-08-05 05:18:59 +0200287780236de7e3cea7ba826a76f720cf4501e4c0Add notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-pathadddoc/misc/macos_nativelib_dependencies.mdeditmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.java9555288019afaf7f1b9eb73e02fe0d899d6332921691207188000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMinor cleanup (includes, spacing) 2023-08-05 05:46:28 +02009555288019afaf7f1b9eb73e02fe0d899d633292Minor cleanup (includes, spacing)editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html0e6d18c6b6d46b54e679ce0c44613e21e58245f21691209636000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.md Original comment of commit 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693 wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Revised comment taken from unmerged updated branch f6de3646acf0fdadf55708fd8a1c42fbd8663bc5 wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Some short summary of modifications : * Add tests with each emitters for test2, but tests are shared and run for each emitters * Update JavaParser.g to allow parsing of bindings generated after test2 processing * Add basic management of generic type (But not yet retrieved inside classTypeSpec args) * Add basic management of annotations (with or w/o parameter(s)) (Retrieved in statement, classes and interfaces but not used) * Align lexer constants in JavaParser.g * Update JavaParser.g to allow fetching all inner classes and inner interfaces to allow excluding by ExtendedInterfaceSymbolsIgnore * Modify JavaConfiguration::requiresJavaCallbackCode because all callback need to force generation not only callback without user param * Functions not generated w/o JavaConfiguration::requiresJavaCallbackCode : * SetLogCallBack12a * SetLogCallBack12b * MessageCallback11b * alBufferCallback0 2023-08-05 06:27:16 +02000e6d18c6b6d46b54e679ce0c44613e21e58245f2JavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/CodeGenUtils.java4ab62d5121afec50dcb975fcfabefd838861da281691488341000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Fix CodeGenUtils.emitJavaHeaders When both classExtended and interfaces are specified for given class space missing between classExtended and implements keyword 2023-08-08 11:52:21 +02004ab62d5121afec50dcb975fcfabefd838861da28feat(generation): Fix CodeGenUtils.emitJavaHeaderseditsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.g496df9c41332a0d606017f0df5ba08b02af0c9921691489157000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementation 2023-08-08 12:05:57 +0200496df9c41332a0d606017f0df5ba08b02af0c992feat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementationeditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gjcppsrc/junit/com/jogamp/gluegen/test/junit/generation/BuildEnvironment.javamake/scripts/runtest.sh.classpathmake/build-test.xml4c5f3d8e589016e17ac3f1aad6a5c26bc21efe2f1691498036000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changes 2023-08-08 14:33:56 +02004c5f3d8e589016e17ac3f1aad6a5c26bc21efe2fBump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changeseditjcppedit.classpatheditsrc/junit/com/jogamp/gluegen/test/junit/generation/BuildEnvironment.javaeditmake/build-test.xmleditmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hmake/scripts/runtest-secmgr.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hdoc/manual/index.htmlmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.hsrc/java/com/jogamp/gluegen/pcpp/ConcatenatingReader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java239b00c26cc3f24b7d9e334de8ac1bee849e05b11691500094000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDrop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPP 2023-08-08 15:08:14 +0200239b00c26cc3f24b7d9e334de8ac1bee849e05b1Drop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPPaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.heditdoc/manual/index.htmleditmake/scripts/runtest-secmgr.shdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hdeletesrc/java/com/jogamp/gluegen/pcpp/ConcatenatingReader.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.heditmake/scripts/runtest.shdeletesrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hsrc/junit/com/jogamp/gluegen/test/junit/generation/sub-inc/-cpptest-included2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java07c57a0d36c375f55e93f0caf7dd57e7c0afe2711691526683000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-' 2023-08-08 22:31:23 +020007c57a0d36c375f55e93f0caf7dd57e7c0afe271TestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-'editsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/sub-inc/-cpptest-included2.hsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.gsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gb5ec911572aa0c07228fcb02976a8e848cc903911691656787000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.g 2023-08-10 10:39:47 +0200b5ec911572aa0c07228fcb02976a8e848cc90391ANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gf8752c59945205b717c4b21ceeb4044ae9a0e9df1691657242000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operator n GlueGen commit 10032c0115f2794a254cffc2a1cd5e48ca8ff0b8 in branch JOGL_2_SANDBOX Ken hacked in consuming a '-' prefix to have negative numbers covered by 'Number'. This is wrong, as it breaks deduction of `additiveExpr` and 'unaryExpr' rules, which want to consume '-' and '+'. The latter is used to completely resolve constant expressions starting from the 'constExpr' rule. See ISO 9899:202x Programming Language - C https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2596.pdf 2023-08-10 10:47:22 +0200f8752c59945205b717c4b21ceeb4044ae9a0e9dfBug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operatoreditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/java/com/jogamp/gluegen/ConstantDefinition.java5b6e6af3932ece0c656cf4438100f4e213ea91b61691657611000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand' i.e. all supported operands used for constant-expression of define macros. 2023-08-10 10:53:31 +02005b6e6af3932ece0c656cf4438100f4e213ea91b6Bug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand'editsrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/JavaEmitter.javac30f0db4b785f21288f9cc5f7fd65393781d93c31691657735000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expression 2023-08-10 10:55:35 +0200c30f0db4b785f21288f9cc5f7fd65393781d93c3Bug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expressioneditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_10.hppsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javamake/build.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java2ae7f2ea923aab662a0c273578456216bc8cd6331691657943000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParser 2023-08-10 10:59:03 +02002ae7f2ea923aab662a0c273578456216bc8cd633Bug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParsereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_1.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_10.hppdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.heditmake/build.xmleditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javaa7e62d106b1ba89d0973e5ccb00982e8ae8df9e41691658115000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: TestCParser: Enable test10_cc() w/o JCPP 2023-08-10 11:01:55 +0200a7e62d106b1ba89d0973e5ccb00982e8ae8df9e4Bug 1450: TestCParser: Enable test10_cc() w/o JCPPeditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javasrc/java/com/jogamp/gluegen/GlueGen.javab3dd6410aad591ddaec4eddfb8d894893368a54a1691658538000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: 'from expression' -> 'with expression' 2023-08-10 11:08:58 +0200b3dd6410aad591ddaec4eddfb8d894893368a54aGlueGen: 'from expression' -> 'with expression'editsrc/java/com/jogamp/gluegen/GlueGen.javagithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/schwabschwabhttps://jogamp.org/chuck/user/mferymferyhttps://jogamp.org/chuck/user/tgctgchttps://jogamp.org/chuck/user/sven%20gothelSven Gothel964https://jogamp.org/chuck/job/gluegen/label=android-arm64/964/964https://jogamp.org/chuck/job/gluegen/label=linux-arm32/964/964https://jogamp.org/chuck/job/gluegen/label=linux-arm64/964/964https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/964/Started by user Sven GothelsgothelSven Gothel964b3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/masterb3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/masterb3dd6410aad591ddaec4eddfb8d894893368a54ab3dd6410aad591ddaec4eddfb8d894893368a54aorigin/mastergit://jogamp.org/srv/scm/gluegen.git20924testReportfalse#964457413460248gluegen #964964falsefalse964928UNSTABLE1691845830344https://jogamp.org/chuck/job/gluegen/964/make/gluegen-cpptasks-base.xmlmake/build.xml953f594a00094362e0ed56553b16aecbee2b92f21644182238000https://jogamp.org/chuck/user/schwabschwabschwab@suse.deAdd support for riscv64 architecture 2022-02-06 22:17:18 +0100953f594a00094362e0ed56553b16aecbee2b92f2Add support for riscv64 architectureeditmake/gluegen-cpptasks-base.xmleditmake/build.xmlmake/stub_includes/platform/glibc-compat-symbols.h6489e38ae8d86b1a80336c20774fc9b82313cef31686119542000https://jogamp.org/chuck/user/tgctgctgc@kb.dkglibc-compat-symbols.h: skip versioning on PPC64/PPC64LE 2023-06-07 08:32:22 +02006489e38ae8d86b1a80336c20774fc9b82313cef3glibc-compat-symbols.h: skip versioning on PPC64/PPC64LEeditmake/stub_includes/platform/glibc-compat-symbols.hsrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/native/common/PointerBuffer.csrc/native/common/Buffers.csrc/java/com/jogamp/common/nio/Buffers.javasrc/java/com/jogamp/common/nio/StructAccessor.javasrc/java/com/jogamp/common/nio/NativeBuffer.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/common/nio/ElementBuffer.java03c548d96e5c81d0fc39503fe3042cf03e0a75e21686868991000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generation Recfactored all NIO buffer utils to Buffers, i.e. buffer <-> address, memcpy, strnlen, etc Buffers: - Added copyNativeToDirectByteBuffer(..), allowing to copy a native memory slice into a direct buffer. - Added typeNameToBufferClass(String) and sizeOfBufferElem(Class<? extends Buffer>) - Completed slize2<Type>(..) buffer-mapping methods - Exposure of safe getDirectByteBuffer(..) w/ null-check (package private) Added NativeBuffer.storeDirectAddress(..), allowing to write the array address into a native buffer (struct, etc), allowing to referencing the ElementBuffer (linear array of elements) and PointerBuffer (array of pointer). Hint: This can be read via PointerBuffer.wrap(..).get(0) Added ElementBuffer (a NativeBuffer) mapping an array of elements, completing native abstraction next to PointerBuffer (array of pointer). ElementBuffer can dereference an existing element-array by native address via ElementBuffer.derefPointer(..). Views of its content can be directly accessed via ElementBuffer.slice(..). +++ These utilities and buffer abstractions will allow to reuse code and simplify the GlueGen struct get/set implementations and help to reduce native code injection. 2023-06-16 00:43:11 +020003c548d96e5c81d0fc39503fe3042cf03e0a75e2GlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generationeditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/common/nio/Buffers.javadeletesrc/native/common/PointerBuffer.caddsrc/native/common/Buffers.caddsrc/java/com/jogamp/common/nio/ElementBuffer.javaeditsrc/java/com/jogamp/common/nio/StructAccessor.javaeditsrc/java/com/jogamp/common/nio/NativeBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/CodeUnit.javasrc/java/com/jogamp/gluegen/JavaCodeUnit.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javaf1678c4ac8b85c85d11b737d08dcfe31b388e0211686869969000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [2]: Add CodeUnit: Representing a generated C or Java file, covering multiple FunctionEmitter allowing to unify output, decoration and dynamic helper code injection per unit - Handles file open and have public ctor emitAutogeneratedWarning(..), being self-contained - Includes `JVMUtil_NewDirectByteBufferCopy(..)` implementation in CCodeUnit, may be injected if required in customCode via emitHeader(..) 2023-06-16 00:59:29 +0200f1678c4ac8b85c85d11b737d08dcfe31b388e021GlueGen Struct [2]: Add CodeUnit: Representing a generated C or Java file, covering multiple FunctionEmitter allowing to unify output, decoration and dynamic helper code injection per unitaddsrc/java/com/jogamp/gluegen/JavaCodeUnit.javaaddsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javaaddsrc/java/com/jogamp/gluegen/CodeUnit.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java0a9105dd3ebbcf4b98664e50333334bff677031c1686870646000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...) 2023-06-16 01:10:46 +02000a9105dd3ebbcf4b98664e50333334bff677031cGlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...)editsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaaeadfab9572e4b441b1bc1f0708cf4c72dfe181e1686871015000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess' Drop 'ManualStaticInitCall', 'ForceStaticInitCode': With new CCodeUnit's `JVMUtil_NewDirectByteBufferCopy(..)` implementation and generalized Buffers' methods, no specific init code is required anymore. Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess': - 'ReturnsStringOnly' only String getter, drop ByteBuffer/byte[] - 'MaxOneElement' only one element maximum for pointer reference - 'ImmutableAccess' strict read-only, also reduces generated code a lot 2023-06-16 01:16:55 +0200aeadfab9572e4b441b1bc1f0708cf4c72dfe181eGlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess'editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javadoc/JogAmpMacOSVersions.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgdoc/GlueGen_Mapping.mdmake/build-test.xmlREADME.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hdoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.mdwww/index.html8b127c4c1dd26fcb1756805ddb83729203161f781686874580000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [5]: Revised Struct Mapping + Documentation GlueGen Revised Struct Mapping (esp pointer to array or single element), Struct String Charset, .. and Documentation - Documentation: - Added README.md Let's have a proper face for the git repo - Added doc/GlueGen_Mapping.md (and its html conversion doc/GlueGen_Mapping.html) Created a new document covering application and implementation details suitable for users/devs. - Added doc/JogAmpMacOSVersions.md conversion to doc/JogAmpMacOSVersions.html - Updated www/index.html - Use *CodeUnit instead of PrintWriter, representing a Java or C code unit covering a set of functions and structs. The CCodeUnit also handles common code shared by its unit across functions etc. - Dropping 'static initializer', as its no more required due to simplified `JVMUtil_NewDirectByteBufferCopy()` variant. - Revised Struct Mapping: - Pure Java implementation to map primitive and struct fields within a struct by utilizing ElementBuffer. Only 'Function Pointer' fields within a struct require native code. Exposes `static boolean usesNativeCode()` to query whether native code is used/required. - Transparent native memory address API Expose `long getDirectBufferAddress()` and `static TK_Struct derefPointer(long addr)`, allowing to - pass the native struct-pointer with native code - reconstruct the struct from a native struct-pointer - have a fully functional `TK_Struct.derefPointer(struct.getDirectBufferAddress())` cycle. - Add 'boolean is<Val>Null() to query whether a pointer (array) is NULL - *Changed* array get/set method for more flexibility alike `System.arraycopy(src, srcPos, dest, destPos, len)`, where 'src' is being dropped for the getter and 'dest' is being dropped for the setter as both objects are reflected by the struct instance. - *Changed* `get<Val>ArrayLength()` -> `get<Val>ElemCount()` for clarity - Considering all ConstElemCount values with config 'ReturnedArrayLength <int>' to be owned by native code -> NativeOwnership -> Not changing the underlying memory region! JavaOwnership is considered for all pointer-arrays not of NativeOwnership. Hence any setter on a NativeOwnership pointer-array will fail with non-matching elem-count. - Add 'release<Val>()' for JavaOwnership pointer-arrays, allowing to release the Java owned native memory incl. null-ing pointer and set<Val>ElemCount(0). - Support setter for 'const <type>*' w/ JavaOwnership, i.e. pointer to const value of a primitive or struct, setter and getter using pointer to array or single element in general. - Added Config `ImmutableAccess symbol` to disable all setter for whole struct or a field - Added Config `MaxOneElement symbol` to restrict a pointer to maximum one element and unset initial value (zero elements) - Added Config `ReturnsStringOnly symbol` to restrict mapping only to a Java String, dropping the ByteBuffer variant for 'char' - String mapping default is UTF-8 and can be read and set via [get|set]Charset(..) per class. - Dynamic string length retrieval in case no `ReturnedArrayLength` has been configured has changed from `strlen()` to `strnlen(aptr, max_len)` to be on the safe site. The maximum length default is 8192 bytes and can be read and set via [get|set]MaxStrnlen(..) per class. FIXME: strnlen(..) using EOS byte non-functional for non 8-bit codecs like UTF-8, US-ASCII. This is due to e.g. UTF-16 doesn't use an EOS byte, but interprets it as part of a code point. - TODO: Perhaps a few more unit tests - TODO: Allow plain 'int' to be mapped in structs IFF their size is same for all MachineDescriptions used. Currently this is the case -> 4 bytes like int32_t. 2023-06-16 02:16:20 +02008b127c4c1dd26fcb1756805ddb83729203161f78GlueGen Struct [5]: Revised Struct Mapping + Documentationeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/JogAmpMacOSVersions.mdeditmake/build-test.xmladddoc/GlueGen_Mapping.htmladddoc/GlueGen_Mapping.mdeditwww/index.htmladddoc/JogAmpMacOSVersions.htmladdREADME.mdsrc/java/com/jogamp/common/nio/Buffers.javafdccf16290c7b742337d3f7ab66e4b85660ca7811686886205000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBuffers.copyNativeToDirectByteBuffer(): Remove unused var 2023-06-16 05:30:05 +0200fdccf16290c7b742337d3f7ab66e4b85660ca781Buffers.copyNativeToDirectByteBuffer(): Remove unused vareditsrc/java/com/jogamp/common/nio/Buffers.javamake/build-test.xmlsrc/java/com/jogamp/gluegen/JavaEmitter.java88309192b450e09ba16e9d72adac178c4ce47dc31686886327000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creation 2023-06-16 05:32:07 +020088309192b450e09ba16e9d72adac178c4ce47dc3GlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creationeditmake/build-test.xmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javad98d25f26a8231c746f8e461a6d932182376cd0b1686905464000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(cli): Add --preserveGeneratedCPP option inside GlueGen 2023-06-16 10:51:04 +0200d98d25f26a8231c746f8e461a6d932182376cd0bfeat(cli): Add --preserveGeneratedCPP option inside GlueGeneditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.java.gitmodulessrc/java/com/jogamp/gluegen/GlueGen.javasrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.hsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hjcppsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.java738c15d654f67ec8aeccec2b46f5a0804c7934911686905484000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(feature): Enable pragma once management 2023-06-16 10:51:24 +0200738c15d654f67ec8aeccec2b46f5a0804c793491feat(feature): Enable pragma once managementeditsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hedit.gitmoduleseditsrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/pcpp/PCPP.javaeditjcppeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javae1d5b49ecd9b180b6a80ad4d0ab63e08076826211686905510000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsed 2023-06-16 10:51:50 +0200e1d5b49ecd9b180b6a80ad4d0ab63e0807682621feat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsededitsrc/java/com/jogamp/gluegen/cgram/types/CompoundType.javasrc/java/com/jogamp/gluegen/GlueGen.javac0a5b3fcc4a2d7f5c30f95e9b387c8a2e02b4f6f1686905528000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(translationUnit): Improve logs in case of failure inside translationUnit 2023-06-16 10:52:08 +0200c0a5b3fcc4a2d7f5c30f95e9b387c8a2e02b4f6ffeat(translationUnit): Improve logs in case of failure inside translationUniteditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h8d3e22e8c54bca8e84ea94566f47b8f24cc24b601686905549000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(constants): Add supports of ~ inside ConstantDefinition 2023-06-16 10:52:29 +02008d3e22e8c54bca8e84ea94566f47b8f24cc24b60feat(constants): Add supports of ~ inside ConstantDefinitioneditsrc/java/com/jogamp/gluegen/ConstantDefinition.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgd7bc10d7ff0e3a30d74c4e4c439230f3983bcfb41686908682000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(jni): Add directive for dedicated JNI Code with CustomJNICode 2023-06-16 11:44:42 +0200d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4feat(jni): Add directive for dedicated JNI Code with CustomJNICodeeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.javasrc/java/com/jogamp/gluegen/JavaEmitter.java106a552817e6da2845052b48ebbfc14cf05edbd51686930961000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'. 2023-06-16 17:56:01 +0200106a552817e6da2845052b48ebbfc14cf05edbd5GlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'.editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/common/nio/ElementBuffer.java8b1db2e6cce3289ed043f85660505551b11e33741686972184000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods. 2023-06-17 05:23:04 +02008b1db2e6cce3289ed043f85660505551b11e3374ElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods.editsrc/java/com/jogamp/common/nio/ElementBuffer.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javadoc/GlueGen_Mapping.mda0abee0deb699fc97fc1146200c9057de15798d61686977931000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated code Revised setter: A) int32_t val[10] -> setter for a subset change only, as-is with args[src, srcPos, destPos, length] - no new memory, reuse only - no special action to be performed B) int32_t* val -> setter with toggle 'subset' with args[subset, src, srcPos, destPos, length], - replace memory w/ 'subset==false' where it also may copy 'destPos' gap from old -> new - reuse memory w/ 'subset==true', where destPos+length <= elementCount C) const int32_t* val -> setter to replace referenced memory only args[src, srcPos, length] - always replaces memory, no copy of a gap (no destPos) Hence: - case (A) stays as is - case (B) will be revised and argument 'boolean subset' added - case (C) will be revised (simplified) and argument 'destPos' removed 2023-06-17 06:58:51 +0200a0abee0deb699fc97fc1146200c9057de15798d6GlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated codeeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditdoc/GlueGen_Mapping.mddoc/JogAmpMacOSVersions.html6e8d3491863f21283edfd8aa0116599248fdc6fe1686977959000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8) 2023-06-17 06:59:19 +02006e8d3491863f21283edfd8aa0116599248fdc6fedoc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8)editdoc/JogAmpMacOSVersions.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlf364dd017e548d1b61b0b01ecd4ab2dbe4924d761686978185000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolved 2023-06-17 07:03:05 +0200f364dd017e548d1b61b0b01ecd4ab2dbe4924d76doc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolvededitdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.html42bd110d9ec63594cc028f3ee8a459424b1d2ae01686978472000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDrop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styles Would need to fix my standalone pandoc setup to produce proper standalone docs. 2023-06-17 07:07:52 +020042bd110d9ec63594cc028f3ee8a459424b1d2ae0Drop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styleseditwww/index.htmldeletedoc/GlueGen_Mapping.htmldeletedoc/JogAmpMacOSVersions.htmlsrc/java/com/jogamp/gluegen/JavaType.java99574c6adb0aad760162fea744606345fc5644721687051345000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaType: Add getSignature(..) like Type 2023-06-18 03:22:25 +020099574c6adb0aad760162fea744606345fc564472JavaType: Add getSignature(..) like Typeeditsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/cgram/types/Type.java0e90617503c71eedba05b604d4b35ca2d14928ec1687051403000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comType: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native" 2023-06-18 03:23:23 +02000e90617503c71eedba05b604d4b35ca2d14928ecType: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native"editsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaeec3f21c3597ff9bf9760a06e00dd341214ea90d1687051571000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void' 2023-06-18 03:26:11 +0200eec3f21c3597ff9bf9760a06e00dd341214ea90dGlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void'editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java5a19d4fb868f7459dc81ee7e82e1040f79a875441687051879000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') .. We already support platform dependent sizes like pointer etc, no reason to drop e.g. 'int'. Note: 'int' is also always 32bit of size within our current set of supported platforms, e.g. MachineDataInfo. Further fix and clarify primCElemFixedSize and primElemSizeExpr, only to be true and set if isPrimitive. 2023-06-18 03:31:19 +02005a19d4fb868f7459dc81ee7e82e1040f79a87544GlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') ..editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java2837fad810b66ace8d841c8a67577db442883c781687052094000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doc 2023-06-18 03:34:54 +02002837fad810b66ace8d841c8a67577db442883c78GlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doceditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java187c097055dc691a2ee65bed1c06c089aaf5cb591687052143000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replaced 2023-06-18 03:35:43 +0200187c097055dc691a2ee65bed1c06c089aaf5cb59GlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replacededitsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg4761c936ab5e09fe7ae19522bacf3889fc300fc91687052364000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90d See impact to T2_InitializeOptions struct fields: - 'void* Reserved1' shall be ignored (*this is the regression fix*) - 'void* Reserved2' will be taked due to config 'Opaque long T2_InitializeOptions.Reserved2' - 'T2_CustomFunc CustomFunc2' will produce a member function call as previously 2023-06-18 03:39:24 +02004761c936ab5e09fe7ae19522bacf3889fc300fc9GlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90deditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.md601399a1b7c9c66866716a8629098698dea49f381687052454000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippets 2023-06-18 03:40:54 +0200601399a1b7c9c66866716a8629098698dea49f38GlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippetseditdoc/GlueGen_Mapping.mdwww/index.htmldoc/GlueGen_Mapping.htmldoc/JogAmpMacOSVersions.html9dd35877f28f5d3dce5e1817edd33bb8f6dbbe361687052612000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBring back produced html5 standalone files, having fixed pandoc usage. See my pandoc-buttondown git repo <https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git/about/> Latest config <https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git/commit/?id=fb38ada0c8d71a2b26bd3ee9d075acce84d76b2c> fixed creation of standalone html5 files. 2023-06-18 03:43:32 +02009dd35877f28f5d3dce5e1817edd33bb8f6dbbe36Bring back produced html5 standalone files, having fixed pandoc usage.editwww/index.htmladddoc/GlueGen_Mapping.htmladddoc/JogAmpMacOSVersions.html.gitmodules6f7bbc15ff19640396ade377a1b2c508e67f98da1687055509000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Use default jcpp branch as its merged now 2023-06-18 04:31:49 +02006f7bbc15ff19640396ade377a1b2c508e67f98daCPP Enable Pragma Once: Use default jcpp branch as its merged nowedit.gitmodulessrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java1159dadbdca861e4a6dd47e9da3ccb47ec15f4a31687055578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramter 2023-06-18 04:32:58 +02001159dadbdca861e4a6dd47e9da3ccb47ec15f4a3CPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramtereditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.java7825c4c053e0755e5dc0aa20127914887efa75e41687055634000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this feature 2023-06-18 04:33:54 +02007825c4c053e0755e5dc0aa20127914887efa75e4CPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this featureeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/structgen/CStructAnnotationProcessor.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.java.stubsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-CustomJNICode.c.stub195bf966e4946ee9e80cd7aec68685218ad7a7771687058861000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub code 2023-06-18 05:27:41 +0200195bf966e4946ee9e80cd7aec68685218ad7a777CustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub codedeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJNICode.cfgdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-CustomJavaCode.java.stubeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p2-CustomJNICode.c.stubeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-CustomJNICode.c.stub6aec5c5274d0ffb6662fdc53671b58df23850d891687058954000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stub 2023-06-18 05:29:14 +02006aec5c5274d0ffb6662fdc53671b58df23850d89CustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stubaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test1p1-CustomJNICode.c.stubsrc/java/com/jogamp/gluegen/GlueGen.javafd8ebf543ecc16233c0027c5a38701c11be548c71687064490000https://jogamp.org/chuck/user/ferymathieuyferymathieuyferymathieuy@gmail.comfix(cli): Fix disablePragmaOnce option Option set enablePragmaOnce to true instead false 2023-06-18 07:01:30 +0200fd8ebf543ecc16233c0027c5a38701c11be548c7fix(cli): Fix disablePragmaOnce optioneditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/GlueGen.javab939d0e0555b0fe0e3609d6d867941b9aacf0e6f1687110928000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by default 2023-06-18 19:55:28 +0200b939d0e0555b0fe0e3609d6d867941b9aacf0e6fCPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by defaulteditsrc/java/com/jogamp/gluegen/GlueGen.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlb08c609647f6280ddcd1329c40da1fe23d34c4e61687118554000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [14]: Update doc/GlueGen_Mapping.md Completing a few cases and fix some signatures in table 2023-06-18 22:02:34 +0200b08c609647f6280ddcd1329c40da1fe23d34c4e6GlueGen Struct [14]: Update doc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlwww/index.htmlf783788e21f40a4a429221dad416a79586429eb41687118768000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comwww/index.html: Copy Documentation section into main text for visibility 2023-06-18 22:06:08 +0200f783788e21f40a4a429221dad416a79586429eb4www/index.html: Copy Documentation section into main text for visibilityeditwww/index.htmldoc/manual/index.html49e5000347543559867a45f1d1b330b6086d7a321687119397000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping document 2023-06-18 22:16:37 +020049e5000347543559867a45f1d1b330b6086d7a32Doc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping documenteditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java32db4ef66cacc4a6f01bd6b36f8cda96acb7ed381687180722000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType() 2023-06-19 15:18:42 +020032db4ef66cacc4a6f01bd6b36f8cda96acb7ed38GlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType()editsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/StructLayout.javadoc/GlueGen_Mapping.mdf7f554208c024280f1929df79bdbb83c758b8b491687226322000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the former 2023-06-20 03:58:42 +0200f7f554208c024280f1929df79bdbb83c758b8b49doc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the formereditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javadoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javadoc/GlueGen_Mapping.mdmake/build-test.xmlb9dc722d689760bf85628edd8766dc6cd2360c8e1687226532000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentation 2023-06-20 04:02:12 +0200b9dc722d689760bf85628edd8766dc6cd2360c8eGlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentationaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javaeditmake/build-test.xmleditdoc/GlueGen_Mapping.htmleditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cdoc/GlueGen_Mapping.md65e9c14e1566d5bfa88435d460c699c2a8fd23b71687253052000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>() 2023-06-20 11:24:12 +020065e9c14e1566d5bfa88435d460c699c2a8fd23b7GlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>()editdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg3d6003fcada35d91c0d865ad0f4edb1da3ed8b8d1687285862000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long config 2023-06-20 20:31:02 +02003d6003fcada35d91c0d865ad0f4edb1da3ed8b8dGlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long configeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/java/com/jogamp/gluegen/JavaEmitter.java10433928d69e58dc6a6b99e9c0a9b0a2669db56a1687319498000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in message 2023-06-21 05:51:38 +020010433928d69e58dc6a6b99e9c0a9b0a2669db56aJavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in messageeditsrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javadf5b63babeec8a9de0ab22a917bbd6c192a2ac0f1687493571000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Test: Test2 -> Test2FuncPtr 2023-06-23 06:12:51 +0200df5b63babeec8a9de0ab22a917bbd6c192a2ac0fGlueGen Test: Test2 -> Test2FuncPtreditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test2.javasrc/java/com/jogamp/common/nio/AbstractBuffer.javasrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/common/nio/NativeBuffer.javasrc/java/com/jogamp/common/nio/ElementBuffer.java3f50232fae03c65d7d84a6ca1e2a7b83cefde6ae1687493851000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comNIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methods Completing API to simplify usage by generated code. All absolute get/set method check arguments itself and against limit(), allow to drop checks in generated code (size). 2023-06-23 06:17:31 +02003f50232fae03c65d7d84a6ca1e2a7b83cefde6aeNIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methodseditsrc/java/com/jogamp/common/nio/AbstractBuffer.javaeditsrc/java/com/jogamp/common/nio/NativeBuffer.javaeditsrc/java/com/jogamp/common/nio/ElementBuffer.javaeditsrc/java/com/jogamp/common/nio/PointerBuffer.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaType.javaf90a42bd693ab9d451902e69ad86359fae2510dc1687493917000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Type, JavaType: Align getSignature(..) output 2023-06-23 06:18:37 +0200f90a42bd693ab9d451902e69ad86359fae2510dcGlueGen: Type, JavaType: Align getSignature(..) outputeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Field.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.java9e61409658358834c2ba26c69c3efcbb5755c1281687494716000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction() Added getArrayBaseOrPointerTargetType() returns getBaseType() for arrays or getTargetType() for pointer, i.e. stops traversing if an elementType is a pointer and returns the elementType as target-type. This resolves 'int* intPtrArray[10]', but also simplifies all cases of 'int** intPtrPtr' and 'int intPtr[10]' etc. Since get{Base,Target}Type() returns the functionPointer, getTargetFunction() allows to retrieve the actual target function type. 2023-06-23 06:31:56 +02009e61409658358834c2ba26c69c3efcbb5755c128GlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction()editsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/cgram/types/ArrayType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Field.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java10842e888d1367475019f33bc651671453b31bd21687494816000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO output 2023-06-23 06:33:36 +020010842e888d1367475019f33bc651671453b31bd2GlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO outputeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java829d69ca42d2022790b136a5f689c34919a7c7751687494886000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth() 2023-06-23 06:34:46 +0200829d69ca42d2022790b136a5f689c34919a7c775GlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth()editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md23f4c6347ea24cf619dba573e83790e73d81d5ad1687496964000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [16]: Add support for pointer-pointer and function-pointer values See documentation and unit test test2.h, Test2FuncPtr.java and Test3PtrStorage.java 2023-06-23 07:09:24 +020023f4c6347ea24cf619dba573e83790e73d81d5adGlueGen Struct [16]: Add support for pointer-pointer and function-pointer valuesaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javaeditmake/scripts/runtest.sheditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java69d9f10bb1c99cba53869f2b019d5227446622e21687671162000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusable 2023-06-25 07:32:42 +020069d9f10bb1c99cba53869f2b019d5227446622e2GlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusableeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/DebugEmitter.java7a4a0aea28729eabf1d44f58b0cfa4255f1609921687671473000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usage 2023-06-25 07:37:53 +02007a4a0aea28729eabf1d44f58b0cfa4255f160992GlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usageeditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java12ed5d03a26997c185474e992ad93ec99ec3baa11687671638000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..) 2023-06-25 07:40:38 +020012ed5d03a26997c185474e992ad93ec99ec3baa1GlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..)editsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java069c5f69d22c8979728149a51a089b52712cac5c1687671701000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Add JavaEmitter(JavaConfiguration) ctor 2023-06-25 07:41:41 +0200069c5f69d22c8979728149a51a089b52712cac5cGlueGen: Add JavaEmitter(JavaConfiguration) ctoreditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javafd1c691c2e11e1dcfc6f84143e5152c5cd14b45b1687671830000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array case 2023-06-25 07:43:50 +0200fd1c691c2e11e1dcfc6f84143e5152c5cd14b45bJavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array caseeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/Type.java42a1f8c8bdb34242f422d24c4ad1d67a1e7ffd251687671956000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type. 2023-06-25 07:45:56 +020042a1f8c8bdb34242f422d24c4ad1d67a1e7ffd25GlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type.editsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javad55eab966968dfff6eac0db0445a0dbfbfb962401687671991000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType: Expose toString(..) w/ 'isPointer' argument 2023-06-25 07:46:31 +0200d55eab966968dfff6eac0db0445a0dbfbfb96240GlueGen FunctionType: Expose toString(..) w/ 'isPointer' argumenteditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javasrc/java/com/jogamp/gluegen/JavaType.javac54c5699c752fcf2cee19ef9dc21cd4acb5aa6cd1687672284000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Add JavaType.forObjectClass() 2023-06-25 07:51:24 +0200c54c5699c752fcf2cee19ef9dc21cd4acb5aa6cdGlueGen Add JavaType.forObjectClass()editsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javab9bddbd7a75e7fa9812fdcc455a0c4857c3e99901687672373000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() ) 2023-06-25 07:52:53 +0200b9bddbd7a75e7fa9812fdcc455a0c4857c3e9990GlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() )editsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java15ed242971142e0726e60271172266515533e1f41687672860000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]' Define a JavaCallback, enacted on a function-pointer argument `T2_CallbackFunc` and a user-param `void*` for Java Object mapping Example: JavaCallbackDef T2_CallbackFunc 2 2023-06-25 08:01:00 +020015ed242971142e0726e60271172266515533e1f4GlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]'editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaConfiguration.java7caf66ccae2dea53b82fb6552cb9144d4146259f1687672890000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol) 2023-06-25 08:01:30 +02007caf66ccae2dea53b82fb6552cb9144d4146259fGlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol)editsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/JavaEmitter.java5a130ab0c6db44225692e362e41e7b45481f93921687673003000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementation Note: JavaCallbackDef is commented out on test2.cfg example, since implementation is missing. 2023-06-25 08:03:23 +02005a130ab0c6db44225692e362e41e7b45481f9392GlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementationeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmled49b01838f3c07fa7a997b1f758ce2c983f49f71687673033000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add more related documentation 2023-06-25 08:03:53 +0200ed49b01838f3c07fa7a997b1f758ce2c983f49f7GlueGen JavaCallback: Add more related documentationeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaType.java90b86c62270c494d2422dabc2879e59e063b535c1687741869000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime) New nature can be queried via isNamedClass(). Cleaned up equals() and completed hashValue() etc. Ctor validation ensures exactly one nature is set! 2023-06-26 03:11:09 +020090b86c62270c494d2422dabc2879e59e063b535cGlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime)editsrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java93c63bd880b6bc8a85a0057112b5065b312af1db1687742099000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function. This passes the jobject for the callback function/interface and the userParam (from 'void*') down to the native implementation. TODO: Add specific native implementation for JavaCallback, wrapping the jobject's into a native struct as user-param and a universal C-function as the native callback to dispatch the call to the java method with known arguments. 2023-06-26 03:14:59 +020093c63bd880b6bc8a85a0057112b5065b312af1dbGlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function.editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java68911f778039bbf08b5afbffd536b4cdacd330321687745359000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Expose getJNIMethodDescriptor() for JNI mangled method names, used in CMethodBindingEmitter; Use JavaCallback's function-pointer-type capital-name as simple-class-name and its FQN for JNI resolution. 2023-06-26 04:09:19 +020068911f778039bbf08b5afbffd536b4cdacd33032GlueGen JavaCallback: Expose getJNIMethodDescriptor() for JNI mangled method names, used in CMethodBindingEmitter; Use JavaCallback's function-pointer-type capital-name as simple-class-name and its FQN for JNI resolution.editsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java4d884db4e08ce9911871d3bdcf378041cde584fd1687771042000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Move JavaCallback into JavaConfiguration, accessible across *Emitter (needed for CMethodEmitter as well); Add JavaCallback.methodSignature to be passed to native function later on to find the callback jmethodID 2023-06-26 11:17:22 +02004d884db4e08ce9911871d3bdcf378041cde584fdGlueGen JavaCallback: Move JavaCallback into JavaConfiguration, accessible across *Emitter (needed for CMethodEmitter as well); Add JavaCallback.methodSignature to be passed to native function later on to find the callback jmethodIDeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java58712fb3a386ca6327b71218bab6e4b218da36a81687771132000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callback 2023-06-26 11:18:52 +020058712fb3a386ca6327b71218bab6e4b218da36a8GlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callbackeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.java9be1305636daa633a7219e102b22a4ffcf2776901687997160000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-types .. includes cross-ref'ed doc and unit test 2023-06-29 02:06:00 +02009be1305636daa633a7219e102b22a4ffcf277690GlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-typeseditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadoc/GlueGen_Mapping.md9f69f8b60b9fdc80076e20f303252ddd35b97ccf1687997460000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for it 2023-06-29 02:11:00 +02009f69f8b60b9fdc80076e20f303252ddd35b97ccfGlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for iteditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javadoc/GlueGen_Mapping.mdce542531f4cb6fe2bf37f3926ea869722e5acf7d1687997898000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen LibraryOnLoad Config: Generate `JNI_OnLoad(..)` for dynamic and `JNI_OnLoad_<LibraryBasename>(..)` for static libraries and `JVMUtil_GetJNIEnv(..)` to resolve the `JNIEnv*` as used by JavaCallback 2023-06-29 02:18:18 +0200ce542531f4cb6fe2bf37f3926ea869722e5acf7dGlueGen LibraryOnLoad Config: Generate `JNI_OnLoad(..)` for dynamic and `JNI_OnLoad_<LibraryBasename>(..)` for static libraries and `JVMUtil_GetJNIEnv(..)` to resolve the `JNIEnv*` as used by JavaCallbackeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/JavaEmitter.javaa1b107dd3fbe2070a1e667d8d7702912b0af70711687998298000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtils 2023-06-29 02:24:58 +0200a1b107dd3fbe2070a1e667d8d7702912b0af7071GlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtilseditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java809a7f84fcada7fbde8b7d0c226b78492fbfc6161687998901000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback) 2023-06-29 02:35:01 +0200809a7f84fcada7fbde8b7d0c226b78492fbfc616GlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaa83dad9963b394ac3e7bb193c6da7d9a5004a40e1688000610000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType: Factor out getParameterList(..) from toString(..) and drop 'void' and use typedef-name; MethodBinding: Add getCParameterList(..) and getJavaParameterList(..) for general usage similar to FunctionType.getParameterList() 2023-06-29 03:03:30 +0200a83dad9963b394ac3e7bb193c6da7d9a5004a40eGlueGen FunctionType: Factor out getParameterList(..) from toString(..) and drop 'void' and use typedef-name; MethodBinding: Add getCParameterList(..) and getJavaParameterList(..) for general usage similar to FunctionType.getParameterList()editsrc/java/com/jogamp/gluegen/CodeGenUtils.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.java1d66739e09899cb90888c8fe34aba339511aa6561688000700000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parameter 2023-06-29 03:05:00 +02001d66739e09899cb90888c8fe34aba339511aa656GlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parametereditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javamake/scripts/runtest.shsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md6591f1fef419841660311bbb554aeda7b267c9a71688003412000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource management Tested via Test4JavaCallback.java (using test2.[hc]). Please read the GlueGen_Mapping.md as well as Test4JavaCallback.java . +++ Some implementation details: JavaConfiguration maps JavaCallbackDef to JavaCallback set-function and maintains a list. JavaCallbackDef itself holds all configured details. JavaConfiguration also maps JavaCallbackInfo to JavaCallback set-function. JavaCallbackInfo itself holds all compile time information, as produced by JavaEmitter.beginFunctions(..). This extends JavaCallbackDef and avoid repetetive computation for the callback-function-type and its MethodBinding, parameter indices for the callback interface and userParam, etc. CMethodBindingEmitter: Native callback to Java dispatch - The JavaCallback setter function creates a native 'UserParam' struct instance, which holds the callback-interface-jobject, its callback-jmethodID and the userParam-jobject for invocation of the actual JavaCallback interface method. - To produce the C-Type -> JNI-Type conversion, An internal CMethodBindingEmitter instance for the native-callback function binding is created inside the CMethodBindingEmitter of the callback setter method. It is being used to map the types to JNI within the generated native callback function, passed to the actual JavaCallback method. JavaMethodBindingEmitter: Native callback to Java dispatch - The JavaCallbacl setter passes the callback-interface-object, the userParam-object and the callback-method-signature (to have the native method retrieve the jmethodID). - It receives the native pointer of the native `UserParam` struct instance, which gets mapped to the userParam-object. (*TODO: Refine ownership + release*). 2023-06-29 03:50:12 +02006591f1fef419841660311bbb554aeda7b267c9a7GlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource managementeditdoc/GlueGen_Mapping.htmleditmake/scripts/runtest.sheditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mdfb86a3c6f68f3788b02a8e8209a697f50c25dc191688004329000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: Align GlueGen_Mapping.md intro w/ README.md and www/index.html 2023-06-29 04:05:29 +0200fb86a3c6f68f3788b02a8e8209a697f50c25dc19Doc: Align GlueGen_Mapping.md intro w/ README.md and www/index.htmleditdoc/GlueGen_Mapping.htmleditwww/index.htmleditREADME.mdeditdoc/GlueGen_Mapping.mdwww/index.htmldc5061e2d31f01a875b27e722835e2e8cfa67c881688004465000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc: www/index.html: Fix JOGL UML link 2023-06-29 04:07:45 +0200dc5061e2d31f01a875b27e722835e2e8cfa67c88Doc: www/index.html: Fix JOGL UML linkeditwww/index.htmldoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mdd5304ac167fc406f682730c40fef2c880a44672e1688004644000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDoc intro: Fix LibraryOnLoad using generic LibraryBasename 2023-06-29 04:10:44 +0200d5304ac167fc406f682730c40fef2c880a44672eDoc intro: Fix LibraryOnLoad using generic LibraryBasenameeditwww/index.htmleditdoc/GlueGen_Mapping.mdeditREADME.mdeditdoc/GlueGen_Mapping.htmlREADME.md0298341f71f43f4011a40e955bd5e99cbd7985971688004983000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comREADME.md: Fix links 2023-06-29 04:16:23 +02000298341f71f43f4011a40e955bd5e99cbd798597README.md: Fix linkseditREADME.mdsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java4e9d0edc3810d36ffe1660e6ac17d1dc547ea7d71688006922000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function. 2023-06-29 04:48:42 +02004e9d0edc3810d36ffe1660e6ac17d1dc547ea7d7GlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function.editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javae898caec411fc2f313aabc188a22099e266640801688007050000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTest4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests.. 2023-06-29 04:50:50 +0200e898caec411fc2f313aabc188a22099e26664080Test4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests..editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java.classpathad79dae90b94d0875416278e9dcedfc08a1de5781688110839000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comEclipse classpath 2023-06-30 09:40:39 +0200ad79dae90b94d0875416278e9dcedfc08a1de578Eclipse classpathedit.classpathsrc/java/com/jogamp/gluegen/cgram/types/Type.javasrc/java/com/jogamp/gluegen/MethodBinding.javasrc/java/com/jogamp/gluegen/cgram/types/PointerType.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javab35d62425311ec50e6c80b07372bc411aa287bb41688110881000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generator 2023-06-30 09:41:21 +0200b35d62425311ec50e6c80b07372bc411aa287bb4GlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generatoreditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/PointerType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/MethodBinding.javaeditsrc/java/com/jogamp/gluegen/CodeGenUtils.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionType.javaeditsrc/java/com/jogamp/gluegen/cgram/types/Type.javaeditsrc/java/com/jogamp/gluegen/cgram/types/FunctionSymbol.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.mda73c992290930e617c78241bae9fe20cb18a01a91688117793000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass` Updated unit test and doc accordingly. Unit tests handle OpenAL's AL_SOFT_callback_buffer and AL_SOFT_events. Tested global scope (no key, default) and 1 key (default) and 1 key (custom class). Added more query functions, which all only take the `SetCallbackFunction` key arguments as specified. Cleaned up JavaCallback* config class field naminig scheme. Added 'synchronized (..Map) { }' block in crucial `SetCallbackFunction`, rendering implementation thread safe. 2023-06-30 11:36:33 +0200a73c992290930e617c78241bae9fe20cb18a01a9GlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass`editdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmlwww/index.htmldoc/GlueGen_Mapping.mdREADME.mddd5829a4fed25fbad766361b87c65076ef596ded1688172618000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad section 2023-07-01 02:50:18 +0200dd5829a4fed25fbad766361b87c65076ef596dedGlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad sectioneditwww/index.htmleditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmleditREADME.mdsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java6200b9122a90ef8c2af8b9205b4b1c90b1aa50741688204731000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback call .. to avoid a potential race condition 2023-07-01 11:45:31 +02006200b9122a90ef8c2af8b9205b4b1c90b1aa5074GlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback calleditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md8766fcfdce4dd864fe6764b063a0f9a4b17327c11688230657000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methods Further we use a dedicated lock Object used in the Java implementation. TODO: Native static callback dispatch code shall - (also) acquire the lock - handle case where the data has been released already to render this solution thread-safe and data-race free 2023-07-01 18:57:37 +02008766fcfdce4dd864fe6764b063a0f9a4b17327c1GlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methodseditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadf0895828e957d97f38510da36eade7a60691d961688232194000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined! 2023-07-01 19:23:14 +0200df0895828e957d97f38510da36eade7a60691d96GlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined!editdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java679ce37046c3c68b97e56fb70ea7b316e9dba3ad1688249578000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safe 2023-07-02 00:12:58 +0200679ce37046c3c68b97e56fb70ea7b316e9dba3adGlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safeeditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlbe2d31199f95ddbfa02530a021c8ab9611018f271688249822000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Emphasize all methods are thread-safe 2023-07-02 00:17:02 +0200be2d31199f95ddbfa02530a021c8ab9611018f27GlueGen JavaCallback: Emphasize all methods are thread-safeeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html760fb65d1d65fcac927e28de442f3b9bfd3d58f01688249941000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typo 2023-07-02 00:19:01 +0200760fb65d1d65fcac927e28de442f3b9bfd3d58f0doc/GlueGen_Mapping.md: Typoeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java98dca8cd3cffd3f9dc1c920bbe8e6349877447b71688263100000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ release 2023-07-02 03:58:20 +020098dca8cd3cffd3f9dc1c920bbe8e6349877447b7GlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ releaseeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java1caceb4e72b2e99c5c458d37ebced0c51fe6bb701688268764000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj only 2023-07-02 05:32:44 +02001caceb4e72b2e99c5c458d37ebced0c51fe6bb70GlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj onlyeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javae999ece8b0cd2ec440314f9a4c20812c694991ae1688268853000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElement 2023-07-02 05:34:13 +0200e999ece8b0cd2ec440314f9a4c20812c694991aeGlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElementeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java3ee4a042aee86657128b834dad553baf838346121688298727000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter JavaCallback: Use a friendly readable basename for errors 2023-07-02 13:52:07 +02003ee4a042aee86657128b834dad553baf83834612CMethodBindingEmitter JavaCallback: Use a friendly readable basename for errorseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java88346aae69cc12c7f6932152697a854039517aa71688298775000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issues 2023-07-02 13:52:55 +020088346aae69cc12c7f6932152697a854039517aa7GlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issueseditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java9b9aa128d92e9512cb00559e99dce9c8de726ed71688298856000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in general Covered by unit tests now 2023-07-02 13:54:16 +02009b9aa128d92e9512cb00559e99dce9c8de726ed7GlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in generaleditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java6d53b4b1dd07006e7af0e540b2c2e6ee6e1746d51688300764000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef struct 2023-07-02 14:26:04 +02006d53b4b1dd07006e7af0e540b2c2e6ee6e1746d5GlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef structeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.mdREADME.mdsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/FunctionEmitter.javasrc/java/com/jogamp/gluegen/CCodeUnit.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlwww/index.htmla599b852a041ba3d80b43981589ac1390979dac21688463389000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ... Implementation now generates a static Java callback dispatcher for each defined SetCallbackFunction, which gets invoked by the generated native static counterpart with all arguments required. The static callback utilizes its own synchronization for thread-safety and fetches the required data set stored at SetCallbackFunction to dispatch the call to the users' CallbackFunction. In case the callback has been removed already, the static callback simply bails out quietly. The native code does not create, release or manage heap memory and therefore is considered safe. +++ Further Struct Type UserParam are now supported including Heterogeneous UserParam mapping (read GlueGen_Mapping.*). +++ Cleaned up code by extracting all JavaCallback emitter code into JavaCallbackEmitter class in one place, leaving JavaMethodbindingEmitter and CMethodbindingEmitter mostly in their original stage (non-convoluted). In this regard, I had to refactor a few function, i.e. moving CMethodbindingEmitter.getJNIMangledArg(..) into JavaType.appendDescriptor(..) and JavaType.appendJNIDescriptor(..) while reusing the toJNIMethodDescriptor(..) conversion. Test4JavaCallback covers and passes all cases. 2023-07-04 11:36:29 +0200a599b852a041ba3d80b43981589ac1390979dac2GlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ...editsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressCMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/FunctionEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditwww/index.htmleditREADME.mdeditsrc/java/com/jogamp/gluegen/JavaType.javaeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaaddsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaType.java8cc90ef6a61b9686cc287bf34a3fcba924276c011688466171000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversion 2023-07-04 12:22:51 +02008cc90ef6a61b9686cc287bf34a3fcba924276c01GlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversioneditsrc/java/com/jogamp/gluegen/JavaType.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html0c4067379e5e12617b9a4530e607ca34762b54e31688467795000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Quote `void*` correctly .. 2023-07-04 12:49:55 +02000c4067379e5e12617b9a4530e607ca34762b54e3doc/GlueGen_Mapping.md: Quote `void*` correctly ..editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CCodeUnit.javadoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mdae4c2c3e59ed92caa6f0e18360b7236e50899bf61688544256000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback! 2023-07-05 10:04:16 +0200ae4c2c3e59ed92caa6f0e18360b7236e50899bf6GlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback!editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/CCodeUnit.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java5ceca8550b82591a6a2661a26d3e0d5e6e3e15ff1688545308000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType() It is common in toolkit APIs that a string might not be passed as a 'nul' terminated (EOS) C string, but as a Pascal string with a given length argument. A C string is specied as ArgumentIsString alEventCallbackInject 3 while allowing multiple indices .. A Pascal string can be specified as ArgumentIsPascalString ALEVENTPROCSOFT 3 4 while allowing multiple indice-tuples for length and value .. The tuple consist of the length agrument-index first (usually an int) followed by the value argument-index (usually a 'char*'). +++ CMethodBindingEmitter.emitBodyMapCToJNIType(), where PascalString is implemented, is currently being used for - JNI return statement (no PascalString impact possible) - JavaCallback C type -> JNI type, PascalString impacting 2023-07-05 10:21:48 +02005ceca8550b82591a6a2661a26d3e0d5e6e3e15ffGlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType()editdoc/manual/index.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/manual/index.html56d3cbcf7a6a6f83706962dd24846906fa2bb4201688549576000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comManual: Refine `ArgumentIsPascalString` 2023-07-05 11:32:56 +020056d3cbcf7a6a6f83706962dd24846906fa2bb420Manual: Refine `ArgumentIsPascalString`editdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java5b867d0f90a43a02e1fbd03fb1ed588a391806eb1688550086000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID) Also use a longer jclass argument name 'clazz' -> 'staticCBClazz' to avoid potential collisions 2023-07-05 11:41:26 +02005b867d0f90a43a02e1fbd03fb1ed588a391806ebGlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md3ed3e9887c459169b807165c9df2ae2bc2990a311688632530000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build key 2023-07-06 10:35:30 +02003ed3e9887c459169b807165c9df2ae2bc2990a31GlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build keyeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html4267e223e33acdc098cc5b4371765f8e31b96eff1688636526000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter index 2023-07-06 11:42:06 +02004267e223e33acdc098cc5b4371765f8e31b96effGlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter indexeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javadoc/GlueGen_Mapping.md701311d6fc507b1e21681dd60c6851fbc50c23041688773427000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add capability to have UserParam as (part of) key Resolves use case where UserParam reflects e.g. a context (AL_SOFT_events) and will be (part of) the key mapping. Implementation required an additional userParamID -> userParam mapping for default Object/ID usage. Added 2 test cases. 2023-07-08 01:43:47 +0200701311d6fc507b1e21681dd60c6851fbc50c2304GlueGen JavaCallback: Add capability to have UserParam as (part of) keyeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.caddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubeditdoc/GlueGen_Mapping.htmleditsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubeditdoc/GlueGen_Mapping.mdeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/manual/index.html63ed5f7676bc46ee03db1a6d27c5ce86fcf6a5971688774924000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comManual: Fix ArgumentIsPascalString 2023-07-08 02:08:44 +020063ed5f7676bc46ee03db1a6d27c5ce86fcf6a597Manual: Fix ArgumentIsPascalStringeditdoc/manual/index.htmlsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.md0ea6688e41c31b0e2c8dba73582c935562885b441688999976000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting API 2023-07-10 16:39:36 +02000ea6688e41c31b0e2c8dba73582c935562885b44GlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting APIeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stubeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditdoc/GlueGen_Mapping.mdeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditdoc/GlueGen_Mapping.htmleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaIfCode.java.stubdoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html60277196f721875a4114e065fdf1ba24521811be1689014834000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' 2023-07-10 20:47:14 +020060277196f721875a4114e065fdf1ba24521811bedoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass'editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmla03df850033d11386471534840a83bbac81304df1689015095000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions) 2023-07-10 20:51:35 +0200a03df850033d11386471534840a83bbac81304dfdoc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions)editdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmldoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.htmlfe21c87b24842d67df686b7c48fa36ed65a9afc91689015808000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today) Cough cough .. should have reviewed the whole thing once. Must be the summer distraction causing premature commits. Sorry about that :) 2023-07-10 21:03:28 +0200fe21c87b24842d67df686b7c48fa36ed65a9afc9doc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today)editdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.hsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test1.c380969bbf0b7746ab245b7d7d177243092fb2c341690816974000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Add setter generation for not constant and not opaque compound attribute 2023-07-31 17:22:54 +0200380969bbf0b7746ab245b7d7d177243092fb2c34feat(generation): Add setter generation for not constant and not opaque compound attributeeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaType.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.had69716fda64b517c33ed847c4b215ea398aac991690817141000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(callbackGenerator): Add basic management of callback without userData 2023-07-31 17:25:41 +0200ad69716fda64b517c33ed847c4b215ea398aac99feat(callbackGenerator): Add basic management of callback without userDataeditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaType.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javadoc/GlueGen_Mapping.md165e3b87b2d3abbb83e9fe5421ac63931b41c7931690907832000https://jogamp.org/chuck/user/mferymferymfery@ankama.comdoc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userData 2023-08-01 18:37:12 +0200165e3b87b2d3abbb83e9fe5421ac63931b41c793doc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userDataeditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaEmitter.java9bf13be7d8a144be18dd313e8ed7658f25b9c1d01691062314000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCase 2023-08-03 13:31:54 +02009bf13be7d8a144be18dd313e8ed7658f25b9c1d0feat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCaseeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java1e78cc429f148aa200ae487bacb6d4a9b6b7c8d91691090184000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper) 2023-08-03 21:16:24 +02001e78cc429f148aa200ae487bacb6d4a9b6b7c8d9CMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java910ce385d5e56eeb1fd7f81678042f19f76b18701691090316000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup) 2023-08-03 21:18:36 +0200910ce385d5e56eeb1fd7f81678042f19f76b1870JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java711533cef82cab317662e84f1d1719bdbeca42531691090608000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entities 2023-08-03 21:23:28 +0200711533cef82cab317662e84f1d1719bdbeca4253JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entitieseditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaa51c63b8b054eec3393d4c340cf3cefe561a01b11691098549000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParam Passed CMethodBindingEmitter denotes the callback-function, including the binding. The new iteration to handle the ad-hoc compound conversion, introduced in commit ad69716fda64b517c33ed847c4b215ea398aac99 'callback without userData', iterates over the callback-function argument list. Hence it shall only exclude the ad-hoc compound conversion if index != info.cbFuncUserParamIdx. Dropping the addition exclusion 'i != info.setFuncUserParamIdx'. 2023-08-03 23:35:49 +0200a51c63b8b054eec3393d4c340cf3cefe561a01b1JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParameditsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javae9a2294b3f18bb4c4f38347ccf347058cb4642b31691099874000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding' Was added in commit ad69716fda64b517c33ed847c4b215ea398aac99 'callback without userData', while adding ad-hoc compound conversion. 2023-08-03 23:57:54 +0200e9a2294b3f18bb4c4f38347ccf347058cb4642b3JavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding'editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javae729d53c8384757b6a5ada2491c7cd4ad07c8bfe1691100456000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding' Since emitJavaCallbackBodyPassJavaArguments() is private now, only use case is to handle info.cbFuncBinding and we can drop the redundant argument. Similar to cleanup commit e9a2294b3f18bb4c4f38347ccf347058cb4642b3 2023-08-04 00:07:36 +0200e729d53c8384757b6a5ada2491c7cd4ad07c8bfeJavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding'editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java88941c41dbb134984fd0857db9ea0729d9306bbb1691100598000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..) Passed 'jcbFuncCMethodEmitter' only used to access CMethodBindingEmitter.emitBodyMapCToJNIType(int, boolean), a non-ideal hack! (FIXME) General processing shall use the local `info.cbFuncBinding`. 2023-08-04 00:09:58 +020088941c41dbb134984fd0857db9ea0729d9306bbbJavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..)editsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.javad4e8ecc3b4f68b86d95ec951971a0fea202179881691100882000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required? - needsIntermediateOperation -> needsJavaCallbackCode - Use JavaConfiguration.requiresJavaCallbackCode(..) TBD: Is this even required? As far as I see, the non-userParam callback case adds no additional code requirements. Both, callback with and without userParam shares same code path and the respective native static fields. Only that the non-userParam code path adds additional native static fields, but all code sections are produced in both cases. 2023-08-04 00:14:42 +0200d4e8ecc3b4f68b86d95ec951971a0fea20217988JavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required?editsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.java3e249796e7b42033072aeda438d987601939db441691101088000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comFix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different order - ad-hoc compound equals must compare value, since native code creates a new class instance from native struct - Add additional case with addition callback argument for further validation 2023-08-04 00:18:08 +02003e249796e7b42033072aeda438d987601939db44Fix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different ordereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/GlueEmitter.javasrc/java/com/jogamp/gluegen/DebugEmitter.javasrc/java/com/jogamp/gluegen/GlueGen.javab08c61935daa0191f4ec59c6998bc56dae18e54d1691139125000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't present 2023-08-04 10:52:05 +0200b08c61935daa0191f4ec59c6998bc56dae18e54dfeat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't presenteditsrc/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.javaeditsrc/java/com/jogamp/gluegen/DebugEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueEmitter.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java97b574914f7f961458f6668495c2fef70b9105491691139611000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..) We only produce one variant in code. Use case: String type as userParam (barely tested and not useful) 2023-08-04 11:00:11 +020097b574914f7f961458f6668495c2fef70b910549CMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..)editsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.javasrc/java/com/jogamp/gluegen/JavaEmitter.java1250d960d8bf2ee9ab8726a18a837115d69308151691139828000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String') Use case: String type as userParam, barely tested and not useful. However, let's pass through all cases in our code. Added LOG INFO for mapped types. 2023-08-04 11:03:48 +02001250d960d8bf2ee9ab8726a18a837115d6930815JavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String')editsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.csrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfg3ad38748d7ef50a3631506eabcd3ae3417faa84d1691140413000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identity Use case is having a compound-type as userParam, which also acts as key, see MessageCallback13, Test4JavaCallback.chapter13(). The Java compound instance is re-created using the actual identical native memory (address), which has been stored or passed in the native toolkit. 2023-08-04 11:13:33 +02003ad38748d7ef50a3631506eabcd3ae3417faa84dJavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identityeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.ceditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java927bbc7160a812bb29c0e7120d4a3009bfb13bbf1691142383000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode() Method was encapsulated in commit d4e8ecc3b4f68b86d95ec951971a0fea20217988 and questioned whether it is required. The non-userParam callback case adds no additional code requirements. Both, callback with and without userParam shares same code path and the respective native static fields. Only that the non-userParam code path adds additional native static fields, but all code sections are produced in both cases. Passed all unit tests. 2023-08-04 11:46:23 +0200927bbc7160a812bb29c0e7120d4a3009bfb13bbfJavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html9b0335ea91c39469b586b4005dfae35d4b2cc84b1691143006000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comdoc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html page 2023-08-04 11:56:46 +02009b0335ea91c39469b586b4005dfae35d4b2cc84bdoc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html pageeditdoc/GlueGen_Mapping.htmleditdoc/GlueGen_Mapping.mdsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javadoc/GlueGen_Mapping.mdsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gdoc/GlueGen_Mapping.htmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p1.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javamake/build-test.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg2abb40b0ca9a6a06bdbe3e66b4235301ed15c6931691170668000https://jogamp.org/chuck/user/mferymferymfery@ankama.comwip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Almost done 2023-08-04 19:37:48 +02002abb40b0ca9a6a06bdbe3e66b4235301ed15c693wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbfeditdoc/GlueGen_Mapping.mddeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test3PtrStorage.javaeditmake/scripts/runtest.shdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test4JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BindingJNILibLoader.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javaeditdoc/GlueGen_Mapping.htmleditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgeditmake/build-test.xmldeletesrc/junit/com/jogamp/gluegen/test/junit/generation/Test2FuncPtr.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test2.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p1.cfgeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/java/com/jogamp/gluegen/JavaEmitter.java4a8f15d29120e7744eca75f6d99bae6a7431749e1691172143000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comRevert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()" This reverts commit 927bbc7160a812bb29c0e7120d4a3009bfb13bbf. 2023-08-04 20:02:23 +02004a8f15d29120e7744eca75f6d99bae6a7431749eRevert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()"editsrc/java/com/jogamp/gluegen/JavaConfiguration.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/test2-if.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgmake/build-test.xml8b4d36e543a14c404c73942840f15a4d81d839901691194245000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfg 2023-08-05 02:10:45 +02008b4d36e543a14c404c73942840f15a4d81d83990WIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfgaddsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-if.cfgdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/test2-gluegen.cfgeditmake/build-test.xmlmake/build-test.xmle52b7022e31022b92f4aaf5fb2e9457d767682c81691194342000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1 2023-08-05 02:12:22 +0200e52b7022e31022b92f4aaf5fb2e9457d767682c8WIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1editmake/build-test.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg06318d44c94c494fe6862ac8cf97fca799d058001691194407000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impl 2023-08-05 02:13:27 +020006318d44c94c494fe6862ac8cf97fca799d05800WIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impleditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgfbd065be8a5f36455a335c20549d729537f5d4b01691194442000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target name 2023-08-05 02:14:02 +0200fbd065be8a5f36455a335c20549d729537f5d4b0WIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target nameeditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2p2.cfgsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.java94c68465331b10f548727483437a3f3b575ee2871691194863000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comWIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1() 2023-08-05 02:21:03 +020094c68465331b10f548727483437a3f3b575ee287WIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1()editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java2e8b69496221f242fee762140418008a9a862d3d1691194985000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped. Just ensure GlueGen itself is initializes via Platform.initSingleton() in common BaseClass 2023-08-05 02:23:05 +02002e8b69496221f242fee762140418008a9a862d3dGlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped.editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.javasrc/java/com/jogamp/gluegen/JavaConfiguration.javaf0da1ec6f5ac68de4c1ede1fd54a71b656fe5d751691195057000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam case Additional body code for JavaCallback is required for methods it. 2023-08-05 02:24:17 +0200f0da1ec6f5ac68de4c1ede1fd54a71b656fe5d75JavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam caseeditsrc/java/com/jogamp/gluegen/JavaConfiguration.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javasrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javasrc/junit/com/jogamp/common/util/TestIntIntHashMap.javasrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javasrc/junit/com/jogamp/common/util/IntIntHashMapTest.javatest/junit/com/jogamp/gluegen/TestStructAccessor.javasrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javatest/junit/com/jogamp/gluegen/StructAccessorTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/common/util/TestLongIntHashMap.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javasrc/junit/com/jogamp/common/util/LongIntHashMapTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javasrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.java177ee444d1b86e6412f636d5f4e8f0695d4182461691198109000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:15:09 +0200177ee444d1b86e6412f636d5f4e8f0695d418246Cleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classesaddsrc/junit/com/jogamp/common/util/TestIntIntHashMap.javaaddsrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javaaddtest/junit/com/jogamp/gluegen/TestStructAccessor.javadeletesrc/junit/com/jogamp/common/net/AssetURLConnectionRegisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javadeletesrc/junit/com/jogamp/common/util/IntIntHashMapTest.javaaddsrc/junit/com/jogamp/common/util/TestLongIntHashMap.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest4JavaCallback.javadeletesrc/junit/com/jogamp/common/net/AssetURLConnectionUnregisteredTest.javaaddsrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javadeletetest/junit/com/jogamp/gluegen/StructAccessorTest.javadeletesrc/junit/com/jogamp/common/util/LongIntHashMapTest.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javadeletesrc/junit/com/jogamp/common/util/IntObjectHashMapTest.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/BaseTest3PtrStorage.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/PCPPTest.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javasrc/junit/com/jogamp/common/util/TestIntIntHashMap.javasrc/junit/com/jogamp/common/net/TestUri02Composing.javatest/junit/com/jogamp/gluegen/StructValidator.javatest/junit/com/jogamp/gluegen/TestStructAccessor.javasrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/junit/com/jogamp/common/util/TestLongIntHashMap.javasrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.java0d3c2b630e06045013250547b3d0cb1bd9f993861691198166000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:16:06 +02000d3c2b630e06045013250547b3d0cb1bd9f99386Cleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classeseditsrc/junit/com/jogamp/common/util/TestIntObjectHashMap.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass2FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaedittest/junit/com/jogamp/gluegen/StructValidator.javaeditsrc/junit/com/jogamp/common/util/TestIntIntHashMap.javaeditsrc/junit/com/jogamp/common/util/TestLongIntHashMap.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaedittest/junit/com/jogamp/gluegen/TestStructAccessor.javaeditsrc/junit/com/jogamp/common/net/TestUri02Composing.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.javaeditsrc/junit/com/jogamp/common/net/TestAssetURLConnectionRegistered.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javaeditsrc/junit/com/jogamp/common/net/TestAssetURLConnectionUnregistered.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass3PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javamake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfg05a931d587feb3116892f5b146b3a4bb2867e9231691198497000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comCleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes 2023-08-05 03:21:37 +020005a931d587feb3116892f5b146b3a4bb2867e923Cleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classeseditmake/scripts/runtest.sheditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-common.cfgmake/scripts/runtest.shdoc/misc/macos_nativelib_dependencies.md287780236de7e3cea7ba826a76f720cf4501e4c01691205539000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comAdd notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-path 2023-08-05 05:18:59 +0200287780236de7e3cea7ba826a76f720cf4501e4c0Add notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-pathadddoc/misc/macos_nativelib_dependencies.mdeditmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javasrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javasrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javasrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.java9555288019afaf7f1b9eb73e02fe0d899d6332921691207188000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comMinor cleanup (includes, spacing) 2023-08-05 05:46:28 +02009555288019afaf7f1b9eb73e02fe0d899d633292Minor cleanup (includes, spacing)editsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p1PtrStorage.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p1FuncPtr.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p1JavaCallback.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.javadoc/GlueGen_Mapping.mddoc/GlueGen_Mapping.html0e6d18c6b6d46b54e679ce0c44613e21e58245f21691209636000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comJavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.md Original comment of commit 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693 wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Revised comment taken from unmerged updated branch f6de3646acf0fdadf55708fd8a1c42fbd8663bc5 wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf Some short summary of modifications : * Add tests with each emitters for test2, but tests are shared and run for each emitters * Update JavaParser.g to allow parsing of bindings generated after test2 processing * Add basic management of generic type (But not yet retrieved inside classTypeSpec args) * Add basic management of annotations (with or w/o parameter(s)) (Retrieved in statement, classes and interfaces but not used) * Align lexer constants in JavaParser.g * Update JavaParser.g to allow fetching all inner classes and inner interfaces to allow excluding by ExtendedInterfaceSymbolsIgnore * Modify JavaConfiguration::requiresJavaCallbackCode because all callback need to force generation not only callback without user param * Functions not generated w/o JavaConfiguration::requiresJavaCallbackCode : * SetLogCallBack12a * SetLogCallBack12b * MessageCallback11b * alBufferCallback0 2023-08-05 06:27:16 +02000e6d18c6b6d46b54e679ce0c44613e21e58245f2JavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.mdeditdoc/GlueGen_Mapping.htmlsrc/java/com/jogamp/gluegen/CodeGenUtils.java4ab62d5121afec50dcb975fcfabefd838861da281691488341000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Fix CodeGenUtils.emitJavaHeaders When both classExtended and interfaces are specified for given class space missing between classExtended and implements keyword 2023-08-08 11:52:21 +02004ab62d5121afec50dcb975fcfabefd838861da28feat(generation): Fix CodeGenUtils.emitJavaHeaderseditsrc/java/com/jogamp/gluegen/CodeGenUtils.javasrc/antlr/com/jogamp/gluegen/jgram/JavaParser.g496df9c41332a0d606017f0df5ba08b02af0c9921691489157000https://jogamp.org/chuck/user/mferymferymfery@ankama.comfeat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementation 2023-08-08 12:05:57 +0200496df9c41332a0d606017f0df5ba08b02af0c992feat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementationeditsrc/antlr/com/jogamp/gluegen/jgram/JavaParser.gjcppsrc/junit/com/jogamp/gluegen/test/junit/generation/BuildEnvironment.javamake/scripts/runtest.sh.classpathmake/build-test.xml4c5f3d8e589016e17ac3f1aad6a5c26bc21efe2f1691498036000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changes 2023-08-08 14:33:56 +02004c5f3d8e589016e17ac3f1aad6a5c26bc21efe2fBump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changeseditjcppedit.classpatheditsrc/junit/com/jogamp/gluegen/test/junit/generation/BuildEnvironment.javaeditmake/build-test.xmleditmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hmake/scripts/runtest-secmgr.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hdoc/manual/index.htmlmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.hsrc/java/com/jogamp/gluegen/pcpp/ConcatenatingReader.javasrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javasrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java239b00c26cc3f24b7d9e334de8ac1bee849e05b11691500094000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comDrop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPP 2023-08-08 15:08:14 +0200239b00c26cc3f24b7d9e334de8ac1bee849e05b1Drop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPPaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest.heditdoc/manual/index.htmleditmake/scripts/runtest-secmgr.shdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/TestPCPP.javadeletesrc/junit/com/jogamp/gluegen/test/junit/generation/pcpptest-included.hdeletesrc/java/com/jogamp/gluegen/pcpp/ConcatenatingReader.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.heditmake/scripts/runtest.shdeletesrc/java/com/jogamp/gluegen/pcpp/PCPP.javasrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.hsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hsrc/junit/com/jogamp/gluegen/test/junit/generation/sub-inc/-cpptest-included2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java07c57a0d36c375f55e93f0caf7dd57e7c0afe2711691526683000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comTestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-' 2023-08-08 22:31:23 +020007c57a0d36c375f55e93f0caf7dd57e7c0afe271TestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-'editsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest-included.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaeditsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/sub-inc/-cpptest-included2.hsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.gsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gb5ec911572aa0c07228fcb02976a8e848cc903911691656787000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.g 2023-08-10 10:39:47 +0200b5ec911572aa0c07228fcb02976a8e848cc90391ANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/StdCParser.geditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gf8752c59945205b717c4b21ceeb4044ae9a0e9df1691657242000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operator n GlueGen commit 10032c0115f2794a254cffc2a1cd5e48ca8ff0b8 in branch JOGL_2_SANDBOX Ken hacked in consuming a '-' prefix to have negative numbers covered by 'Number'. This is wrong, as it breaks deduction of `additiveExpr` and 'unaryExpr' rules, which want to consume '-' and '+'. The latter is used to completely resolve constant expressions starting from the 'constExpr' rule. See ISO 9899:202x Programming Language - C https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2596.pdf 2023-08-10 10:47:22 +0200f8752c59945205b717c4b21ceeb4044ae9a0e9dfBug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operatoreditsrc/antlr/com/jogamp/gluegen/cgram/GnuCParser.gsrc/java/com/jogamp/gluegen/ConstantDefinition.java5b6e6af3932ece0c656cf4438100f4e213ea91b61691657611000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand' i.e. all supported operands used for constant-expression of define macros. 2023-08-10 10:53:31 +02005b6e6af3932ece0c656cf4438100f4e213ea91b6Bug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand'editsrc/java/com/jogamp/gluegen/ConstantDefinition.javasrc/java/com/jogamp/gluegen/GlueGen.javasrc/java/com/jogamp/gluegen/JavaEmitter.javac30f0db4b785f21288f9cc5f7fd65393781d93c31691657735000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expression 2023-08-10 10:55:35 +0200c30f0db4b785f21288f9cc5f7fd65393781d93c3Bug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expressioneditsrc/java/com/jogamp/gluegen/GlueGen.javaeditsrc/java/com/jogamp/gluegen/JavaEmitter.javasrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.hmake/scripts/runtest.shsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_10.hppsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.hsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_1.hsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javamake/build.xmlsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.java2ae7f2ea923aab662a0c273578456216bc8cd6331691657943000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParser 2023-08-10 10:59:03 +02002ae7f2ea923aab662a0c273578456216bc8cd633Bug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParsereditsrc/junit/com/jogamp/gluegen/test/junit/generation/test2.heditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestJCPP.javaaddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_1.haddsrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest_10.hppdeletesrc/junit/com/jogamp/gluegen/test/junit/generation/cpptest.heditmake/build.xmleditmake/scripts/runtest.shaddsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javasrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javaa7e62d106b1ba89d0973e5ccb00982e8ae8df9e41691658115000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comBug 1450: TestCParser: Enable test10_cc() w/o JCPP 2023-08-10 11:01:55 +0200a7e62d106b1ba89d0973e5ccb00982e8ae8df9e4Bug 1450: TestCParser: Enable test10_cc() w/o JCPPeditsrc/junit/com/jogamp/gluegen/test/junit/generation/TestCParser.javasrc/java/com/jogamp/gluegen/GlueGen.javab3dd6410aad591ddaec4eddfb8d894893368a54a1691658538000https://jogamp.org/chuck/user/sven%20gothelSven Gothelsgothel@jausoft.comGlueGen: 'from expression' -> 'with expression' 2023-08-10 11:08:58 +0200b3dd6410aad591ddaec4eddfb8d894893368a54aGlueGen: 'from expression' -> 'with expression'editsrc/java/com/jogamp/gluegen/GlueGen.javagithttps://jogamp.org/chuck/user/ferymathieuyferymathieuyhttps://jogamp.org/chuck/user/schwabschwabhttps://jogamp.org/chuck/user/mferymferyhttps://jogamp.org/chuck/user/tgctgchttps://jogamp.org/chuck/user/sven%20gothelSven Gothel964https://jogamp.org/chuck/job/gluegen/label=android-arm64/964/964https://jogamp.org/chuck/job/gluegen/label=linux-arm32/964/964https://jogamp.org/chuck/job/gluegen/label=linux-arm64/964/964https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/964/970Started by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changeStarted by an SCM changetruefalse11351708824480692falsegluegenhttps://jogamp.org/chuck/job/gluegen/bluequeue/item/1135/Jenkins is about to shut down1708824480693falsefalsejoaljoaljoaljoalhttps://jogamp.org/chuck/job/joal/true685https://jogamp.org/chuck/job/joal/685/684https://jogamp.org/chuck/job/joal/684/683https://jogamp.org/chuck/job/joal/683/681https://jogamp.org/chuck/job/joal/681/680https://jogamp.org/chuck/job/joal/680/679https://jogamp.org/chuck/job/joal/679/678https://jogamp.org/chuck/job/joal/678/675https://jogamp.org/chuck/job/joal/675/674https://jogamp.org/chuck/job/joal/674/673https://jogamp.org/chuck/job/joal/673/672https://jogamp.org/chuck/job/joal/672/670https://jogamp.org/chuck/job/joal/670/669https://jogamp.org/chuck/job/joal/669/668https://jogamp.org/chuck/job/joal/668/667https://jogamp.org/chuck/job/joal/667/666https://jogamp.org/chuck/job/joal/666/665https://jogamp.org/chuck/job/joal/665/664https://jogamp.org/chuck/job/joal/664/662https://jogamp.org/chuck/job/joal/662/661https://jogamp.org/chuck/job/joal/661/660https://jogamp.org/chuck/job/joal/660/659https://jogamp.org/chuck/job/joal/659/653https://jogamp.org/chuck/job/joal/653/652https://jogamp.org/chuck/job/joal/652/651https://jogamp.org/chuck/job/joal/651/650https://jogamp.org/chuck/job/joal/650/649https://jogamp.org/chuck/job/joal/649/648https://jogamp.org/chuck/job/joal/648/647https://jogamp.org/chuck/job/joal/647/642https://jogamp.org/chuck/job/joal/642/641https://jogamp.org/chuck/job/joal/641/640https://jogamp.org/chuck/job/joal/640/639https://jogamp.org/chuck/job/joal/639/636https://jogamp.org/chuck/job/joal/636/631https://jogamp.org/chuck/job/joal/631/627https://jogamp.org/chuck/job/joal/627/626https://jogamp.org/chuck/job/joal/626/625https://jogamp.org/chuck/job/joal/625/624https://jogamp.org/chuck/job/joal/624/623https://jogamp.org/chuck/job/joal/623/622https://jogamp.org/chuck/job/joal/622/621https://jogamp.org/chuck/job/joal/621/620https://jogamp.org/chuck/job/joal/620/619https://jogamp.org/chuck/job/joal/619/618https://jogamp.org/chuck/job/joal/618/617https://jogamp.org/chuck/job/joal/617/616https://jogamp.org/chuck/job/joal/616/615https://jogamp.org/chuck/job/joal/615/614https://jogamp.org/chuck/job/joal/614/613https://jogamp.org/chuck/job/joal/613/612https://jogamp.org/chuck/job/joal/612/611https://jogamp.org/chuck/job/joal/611/610https://jogamp.org/chuck/job/joal/610/608https://jogamp.org/chuck/job/joal/608/607https://jogamp.org/chuck/job/joal/607/606https://jogamp.org/chuck/job/joal/606/605https://jogamp.org/chuck/job/joal/605/604https://jogamp.org/chuck/job/joal/604/603https://jogamp.org/chuck/job/joal/603/602https://jogamp.org/chuck/job/joal/602/601https://jogamp.org/chuck/job/joal/601/600https://jogamp.org/chuck/job/joal/600/599https://jogamp.org/chuck/job/joal/599/598https://jogamp.org/chuck/job/joal/598/597https://jogamp.org/chuck/job/joal/597/596https://jogamp.org/chuck/job/joal/596/595https://jogamp.org/chuck/job/joal/595/594https://jogamp.org/chuck/job/joal/594/593https://jogamp.org/chuck/job/joal/593/592https://jogamp.org/chuck/job/joal/592/591https://jogamp.org/chuck/job/joal/591/590https://jogamp.org/chuck/job/joal/590/589https://jogamp.org/chuck/job/joal/589/588https://jogamp.org/chuck/job/joal/588/587https://jogamp.org/chuck/job/joal/587/586https://jogamp.org/chuck/job/joal/586/585https://jogamp.org/chuck/job/joal/585/584https://jogamp.org/chuck/job/joal/584/583https://jogamp.org/chuck/job/joal/583/582https://jogamp.org/chuck/job/joal/582/581https://jogamp.org/chuck/job/joal/581/577https://jogamp.org/chuck/job/joal/577/576https://jogamp.org/chuck/job/joal/576/575https://jogamp.org/chuck/job/joal/575/574https://jogamp.org/chuck/job/joal/574/573https://jogamp.org/chuck/job/joal/573/570https://jogamp.org/chuck/job/joal/570/569https://jogamp.org/chuck/job/joal/569/568https://jogamp.org/chuck/job/joal/568/567https://jogamp.org/chuck/job/joal/567/566https://jogamp.org/chuck/job/joal/566/565https://jogamp.org/chuck/job/joal/565/564https://jogamp.org/chuck/job/joal/564/563https://jogamp.org/chuck/job/joal/563/562https://jogamp.org/chuck/job/joal/562/561https://jogamp.org/chuck/job/joal/561/560https://jogamp.org/chuck/job/joal/560/559https://jogamp.org/chuck/job/joal/559/558https://jogamp.org/chuck/job/joal/558/557https://jogamp.org/chuck/job/joal/557/aborted1https://jogamp.org/chuck/job/joal/1/Test Result: 0 tests in total.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse685https://jogamp.org/chuck/job/joal/685/685https://jogamp.org/chuck/job/joal/685/662https://jogamp.org/chuck/job/joal/662/684https://jogamp.org/chuck/job/joal/684/684https://jogamp.org/chuck/job/joal/684/631https://jogamp.org/chuck/job/joal/631/685https://jogamp.org/chuck/job/joal/685/686falsefalsejoal-demoshttps://jogamp.org/chuck/job/joal-demos/bluegluegenhttps://jogamp.org/chuck/job/gluegen/bluelabel=android-arm64https://jogamp.org/chuck/job/joal/label=android-arm64/bluelabel=linux-arm32https://jogamp.org/chuck/job/joal/label=linux-arm32/bluelabel=linux-arm64https://jogamp.org/chuck/job/joal/label=linux-arm64/bluelabel=linux-x86_64https://jogamp.org/chuck/job/joal/label=linux-x86_64/bluelabel=macos-x86_64https://jogamp.org/chuck/job/joal/label=macos-x86_64/bluelabel=windows-x86_64https://jogamp.org/chuck/job/joal/label=windows-x86_64/bluehudson.plugins.git.GitSCM--ffdefaultandroid-arm64gluegen » android-arm64gluegen/label=android-arm64label=android-arm64https://jogamp.org/chuck/job/gluegen/label=android-arm64/true967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/965https://jogamp.org/chuck/job/gluegen/label=android-arm64/965/964https://jogamp.org/chuck/job/gluegen/label=android-arm64/964/961https://jogamp.org/chuck/job/gluegen/label=android-arm64/961/960https://jogamp.org/chuck/job/gluegen/label=android-arm64/960/959https://jogamp.org/chuck/job/gluegen/label=android-arm64/959/957https://jogamp.org/chuck/job/gluegen/label=android-arm64/957/956https://jogamp.org/chuck/job/gluegen/label=android-arm64/956/955https://jogamp.org/chuck/job/gluegen/label=android-arm64/955/954https://jogamp.org/chuck/job/gluegen/label=android-arm64/954/952https://jogamp.org/chuck/job/gluegen/label=android-arm64/952/951https://jogamp.org/chuck/job/gluegen/label=android-arm64/951/950https://jogamp.org/chuck/job/gluegen/label=android-arm64/950/949https://jogamp.org/chuck/job/gluegen/label=android-arm64/949/948https://jogamp.org/chuck/job/gluegen/label=android-arm64/948/938https://jogamp.org/chuck/job/gluegen/label=android-arm64/938/937https://jogamp.org/chuck/job/gluegen/label=android-arm64/937/936https://jogamp.org/chuck/job/gluegen/label=android-arm64/936/934https://jogamp.org/chuck/job/gluegen/label=android-arm64/934/931https://jogamp.org/chuck/job/gluegen/label=android-arm64/931/930https://jogamp.org/chuck/job/gluegen/label=android-arm64/930/929https://jogamp.org/chuck/job/gluegen/label=android-arm64/929/928https://jogamp.org/chuck/job/gluegen/label=android-arm64/928/927https://jogamp.org/chuck/job/gluegen/label=android-arm64/927/922https://jogamp.org/chuck/job/gluegen/label=android-arm64/922/921https://jogamp.org/chuck/job/gluegen/label=android-arm64/921/916https://jogamp.org/chuck/job/gluegen/label=android-arm64/916/915https://jogamp.org/chuck/job/gluegen/label=android-arm64/915/914https://jogamp.org/chuck/job/gluegen/label=android-arm64/914/913https://jogamp.org/chuck/job/gluegen/label=android-arm64/913/910https://jogamp.org/chuck/job/gluegen/label=android-arm64/910/909https://jogamp.org/chuck/job/gluegen/label=android-arm64/909/903https://jogamp.org/chuck/job/gluegen/label=android-arm64/903/901https://jogamp.org/chuck/job/gluegen/label=android-arm64/901/900https://jogamp.org/chuck/job/gluegen/label=android-arm64/900/899https://jogamp.org/chuck/job/gluegen/label=android-arm64/899/898https://jogamp.org/chuck/job/gluegen/label=android-arm64/898/897https://jogamp.org/chuck/job/gluegen/label=android-arm64/897/896https://jogamp.org/chuck/job/gluegen/label=android-arm64/896/895https://jogamp.org/chuck/job/gluegen/label=android-arm64/895/894https://jogamp.org/chuck/job/gluegen/label=android-arm64/894/893https://jogamp.org/chuck/job/gluegen/label=android-arm64/893/892https://jogamp.org/chuck/job/gluegen/label=android-arm64/892/891https://jogamp.org/chuck/job/gluegen/label=android-arm64/891/890https://jogamp.org/chuck/job/gluegen/label=android-arm64/890/889https://jogamp.org/chuck/job/gluegen/label=android-arm64/889/888https://jogamp.org/chuck/job/gluegen/label=android-arm64/888/887https://jogamp.org/chuck/job/gluegen/label=android-arm64/887/886https://jogamp.org/chuck/job/gluegen/label=android-arm64/886/885https://jogamp.org/chuck/job/gluegen/label=android-arm64/885/884https://jogamp.org/chuck/job/gluegen/label=android-arm64/884/883https://jogamp.org/chuck/job/gluegen/label=android-arm64/883/882https://jogamp.org/chuck/job/gluegen/label=android-arm64/882/881https://jogamp.org/chuck/job/gluegen/label=android-arm64/881/880https://jogamp.org/chuck/job/gluegen/label=android-arm64/880/878https://jogamp.org/chuck/job/gluegen/label=android-arm64/878/877https://jogamp.org/chuck/job/gluegen/label=android-arm64/877/876https://jogamp.org/chuck/job/gluegen/label=android-arm64/876/875https://jogamp.org/chuck/job/gluegen/label=android-arm64/875/874https://jogamp.org/chuck/job/gluegen/label=android-arm64/874/873https://jogamp.org/chuck/job/gluegen/label=android-arm64/873/871https://jogamp.org/chuck/job/gluegen/label=android-arm64/871/870https://jogamp.org/chuck/job/gluegen/label=android-arm64/870/869https://jogamp.org/chuck/job/gluegen/label=android-arm64/869/868https://jogamp.org/chuck/job/gluegen/label=android-arm64/868/867https://jogamp.org/chuck/job/gluegen/label=android-arm64/867/865https://jogamp.org/chuck/job/gluegen/label=android-arm64/865/863https://jogamp.org/chuck/job/gluegen/label=android-arm64/863/862https://jogamp.org/chuck/job/gluegen/label=android-arm64/862/860https://jogamp.org/chuck/job/gluegen/label=android-arm64/860/859https://jogamp.org/chuck/job/gluegen/label=android-arm64/859/858https://jogamp.org/chuck/job/gluegen/label=android-arm64/858/857https://jogamp.org/chuck/job/gluegen/label=android-arm64/857/856https://jogamp.org/chuck/job/gluegen/label=android-arm64/856/855https://jogamp.org/chuck/job/gluegen/label=android-arm64/855/854https://jogamp.org/chuck/job/gluegen/label=android-arm64/854/852https://jogamp.org/chuck/job/gluegen/label=android-arm64/852/851https://jogamp.org/chuck/job/gluegen/label=android-arm64/851/850https://jogamp.org/chuck/job/gluegen/label=android-arm64/850/849https://jogamp.org/chuck/job/gluegen/label=android-arm64/849/847https://jogamp.org/chuck/job/gluegen/label=android-arm64/847/846https://jogamp.org/chuck/job/gluegen/label=android-arm64/846/844https://jogamp.org/chuck/job/gluegen/label=android-arm64/844/843https://jogamp.org/chuck/job/gluegen/label=android-arm64/843/842https://jogamp.org/chuck/job/gluegen/label=android-arm64/842/blue842https://jogamp.org/chuck/job/gluegen/label=android-arm64/842/Test Result: 0 tests failing out of a total of 1 test.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=android-arm64/967/968falsefalselinux-arm32gluegen » linux-arm32gluegen/label=linux-arm32label=linux-arm32https://jogamp.org/chuck/job/gluegen/label=linux-arm32/true967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/965https://jogamp.org/chuck/job/gluegen/label=linux-arm32/965/964https://jogamp.org/chuck/job/gluegen/label=linux-arm32/964/961https://jogamp.org/chuck/job/gluegen/label=linux-arm32/961/960https://jogamp.org/chuck/job/gluegen/label=linux-arm32/960/959https://jogamp.org/chuck/job/gluegen/label=linux-arm32/959/957https://jogamp.org/chuck/job/gluegen/label=linux-arm32/957/956https://jogamp.org/chuck/job/gluegen/label=linux-arm32/956/955https://jogamp.org/chuck/job/gluegen/label=linux-arm32/955/954https://jogamp.org/chuck/job/gluegen/label=linux-arm32/954/952https://jogamp.org/chuck/job/gluegen/label=linux-arm32/952/951https://jogamp.org/chuck/job/gluegen/label=linux-arm32/951/blue951https://jogamp.org/chuck/job/gluegen/label=linux-arm32/951/Test Result: 0 tests failing out of a total of 1 test.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm32/967/968falsefalselinux-arm64gluegen » linux-arm64gluegen/label=linux-arm64label=linux-arm64https://jogamp.org/chuck/job/gluegen/label=linux-arm64/true967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/965https://jogamp.org/chuck/job/gluegen/label=linux-arm64/965/964https://jogamp.org/chuck/job/gluegen/label=linux-arm64/964/961https://jogamp.org/chuck/job/gluegen/label=linux-arm64/961/960https://jogamp.org/chuck/job/gluegen/label=linux-arm64/960/959https://jogamp.org/chuck/job/gluegen/label=linux-arm64/959/957https://jogamp.org/chuck/job/gluegen/label=linux-arm64/957/956https://jogamp.org/chuck/job/gluegen/label=linux-arm64/956/955https://jogamp.org/chuck/job/gluegen/label=linux-arm64/955/954https://jogamp.org/chuck/job/gluegen/label=linux-arm64/954/952https://jogamp.org/chuck/job/gluegen/label=linux-arm64/952/951https://jogamp.org/chuck/job/gluegen/label=linux-arm64/951/950https://jogamp.org/chuck/job/gluegen/label=linux-arm64/950/949https://jogamp.org/chuck/job/gluegen/label=linux-arm64/949/948https://jogamp.org/chuck/job/gluegen/label=linux-arm64/948/938https://jogamp.org/chuck/job/gluegen/label=linux-arm64/938/937https://jogamp.org/chuck/job/gluegen/label=linux-arm64/937/936https://jogamp.org/chuck/job/gluegen/label=linux-arm64/936/934https://jogamp.org/chuck/job/gluegen/label=linux-arm64/934/931https://jogamp.org/chuck/job/gluegen/label=linux-arm64/931/930https://jogamp.org/chuck/job/gluegen/label=linux-arm64/930/929https://jogamp.org/chuck/job/gluegen/label=linux-arm64/929/928https://jogamp.org/chuck/job/gluegen/label=linux-arm64/928/927https://jogamp.org/chuck/job/gluegen/label=linux-arm64/927/922https://jogamp.org/chuck/job/gluegen/label=linux-arm64/922/921https://jogamp.org/chuck/job/gluegen/label=linux-arm64/921/916https://jogamp.org/chuck/job/gluegen/label=linux-arm64/916/915https://jogamp.org/chuck/job/gluegen/label=linux-arm64/915/914https://jogamp.org/chuck/job/gluegen/label=linux-arm64/914/blue914https://jogamp.org/chuck/job/gluegen/label=linux-arm64/914/Test Result: 0 tests failing out of a total of 1 test.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-arm64/967/968falsefalselinux-x86_64gluegen » linux-x86_64gluegen/label=linux-x86_64label=linux-x86_64https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/true967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/965https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/965/964https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/964/961https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/961/960https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/960/959https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/959/957https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/957/956https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/956/955https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/955/954https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/954/952https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/952/951https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/951/950https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/950/949https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/949/948https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/948/938https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/938/937https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/937/936https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/936/934https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/934/931https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/931/930https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/930/929https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/929/928https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/928/927https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/927/922https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/922/921https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/921/916https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/916/915https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/915/914https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/914/913https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/913/910https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/910/909https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/909/903https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/903/901https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/901/900https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/900/899https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/899/898https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/898/897https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/897/896https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/896/895https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/895/894https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/894/893https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/893/892https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/892/891https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/891/890https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/890/889https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/889/888https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/888/887https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/887/886https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/886/885https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/885/884https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/884/883https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/883/882https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/882/881https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/881/880https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/880/878https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/878/877https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/877/876https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/876/875https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/875/874https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/874/873https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/873/871https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/871/870https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/870/869https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/869/868https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/868/867https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/867/865https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/865/863https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/863/862https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/862/860https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/860/859https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/859/858https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/858/857https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/857/856https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/856/855https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/855/854https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/854/852https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/852/851https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/851/850https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/850/849https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/849/847https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/847/846https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/846/844https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/844/843https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/843/842https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/842/838https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/838/837https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/837/827https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/827/826https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/826/825https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/825/824https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/824/823https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/823/822https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/822/821https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/821/820https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/820/818https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/818/817https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/817/814https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/814/813https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/813/812https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/812/blue273https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/273/Test Result: 0 tests failing out of a total of 307 tests.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/354https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/354/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/967/938https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/938/938https://jogamp.org/chuck/job/gluegen/label=linux-x86_64/938/968falsefalsemacos-x86_64gluegen » macos-x86_64gluegen/label=macos-x86_64label=macos-x86_64https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/true967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/965https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/965/964https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/964/961https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/961/960https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/960/959https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/959/957https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/957/956https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/956/955https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/955/954https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/954/952https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/952/951https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/951/950https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/950/949https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/949/948https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/948/938https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/938/937https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/937/936https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/936/934https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/934/931https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/931/930https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/930/929https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/929/928https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/928/927https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/927/922https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/922/921https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/921/916https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/916/915https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/915/914https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/914/913https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/913/910https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/910/909https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/909/903https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/903/901https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/901/900https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/900/899https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/899/898https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/898/897https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/897/896https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/896/895https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/895/894https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/894/893https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/893/892https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/892/891https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/891/890https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/890/889https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/889/888https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/888/887https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/887/886https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/886/885https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/885/884https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/884/883https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/883/882https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/882/881https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/881/880https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/880/878https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/878/877https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/877/876https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/876/875https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/875/874https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/874/873https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/873/871https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/871/870https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/870/869https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/869/868https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/868/867https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/867/865https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/865/863https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/863/862https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/862/860https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/860/859https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/859/858https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/858/857https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/857/856https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/856/855https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/855/854https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/854/852https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/852/851https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/851/850https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/850/849https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/849/847https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/847/846https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/846/844https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/844/843https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/843/842https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/842/838https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/838/837https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/837/827https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/827/826https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/826/825https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/825/824https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/824/823https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/823/822https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/822/821https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/821/820https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/820/818https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/818/817https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/817/814https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/814/813https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/813/812https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/812/blue151https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/151/Test Result: 0 tests failing out of a total of 307 tests.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/778https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/778/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/967/914https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/914/914https://jogamp.org/chuck/job/gluegen/label=macos-x86_64/914/968falsefalsewindows-x86_64gluegen » windows-x86_64gluegen/label=windows-x86_64label=windows-x86_64https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/true967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/965https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/965/964https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/964/961https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/961/960https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/960/959https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/959/957https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/957/956https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/956/955https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/955/954https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/954/952https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/952/951https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/951/950https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/950/949https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/949/948https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/948/938https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/938/937https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/937/936https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/936/934https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/934/931https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/931/930https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/930/929https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/929/928https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/928/927https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/927/922https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/922/921https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/921/916https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/916/915https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/915/914https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/914/913https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/913/910https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/910/909https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/909/904https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/904/903https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/903/901https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/901/900https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/900/899https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/899/898https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/898/897https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/897/896https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/896/895https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/895/894https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/894/893https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/893/892https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/892/891https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/891/890https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/890/889https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/889/888https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/888/887https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/887/886https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/886/885https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/885/884https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/884/883https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/883/882https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/882/881https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/881/880https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/880/878https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/878/877https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/877/876https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/876/875https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/875/874https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/874/873https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/873/871https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/871/870https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/870/869https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/869/868https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/868/867https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/867/865https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/865/863https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/863/862https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/862/860https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/860/859https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/859/858https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/858/857https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/857/856https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/856/855https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/855/854https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/854/852https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/852/851https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/851/850https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/850/849https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/849/847https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/847/846https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/846/844https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/844/843https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/843/842https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/842/838https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/838/837https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/837/827https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/827/826https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/826/825https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/825/824https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/824/823https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/823/822https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/822/821https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/821/820https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/820/818https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/818/817https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/817/814https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/814/813https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/813/blue273https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/273/Test Result: 0 tests failing out of a total of 307 tests.icon-health-80plushealth-80plus.png100Build stability: No recent builds failed.icon-health-80plushealth-80plus.png100falsefalse967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/358https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/358/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/967https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/967/964https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/964/964https://jogamp.org/chuck/job/gluegen/label=windows-x86_64/964/968falsefalse