Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Started 8 mo 11 days ago
Took 7 min 37 sec on built-in
Unstable

#964 (Aug 12, 2023, 3:10:30 PM)

Changes
  1. Add support for riscv64 architecture (details / cgit)
  2. glibc-compat-symbols.h: skip versioning on PPC64/PPC64LE (details / cgit)
  3. GlueGen Struct [1]: Enhance com.jogamp.common.nio.* to serve a most native-free-code Struct-Code generation (details / cgit)
  4. GlueGen 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 (details / cgit)
  5. GlueGen Struct [3]: Adopt to CodeUnit Abstraction (replacing plain PrintWriter...) (details / cgit)
  6. GlueGen Struct [4]: JavaConfiguration Change: Drop 'ManualStaticInitCall', 'ForceStaticInitCode'; Add 'ReturnsStringOnly', 'MaxOneElement' and 'ImmutableAccess' (details / cgit)
  7. GlueGen Struct [5]: Revised Struct Mapping + Documentation (details / cgit)
  8. Buffers.copyNativeToDirectByteBuffer(): Remove unused var (details / cgit)
  9. GlueGen Struct [6]: Simplify adding 'private ElementBuffer _eb*' memory buffer cache once @ 'releaseVal(..)' code creation (details / cgit)
  10. feat(cli): Add --preserveGeneratedCPP option inside GlueGen (details / cgit)
  11. feat(feature): Enable pragma once management (details / cgit)
  12. feat(CompoundType): Improve error log on CompoundType.addField and CompoundType.setBodyParsed when body is already parsed (details / cgit)
  13. feat(translationUnit): Improve logs in case of failure inside translationUnit (details / cgit)
  14. feat(constants): Add supports of ~ inside ConstantDefinition (details / cgit)
  15. feat(jni): Add directive for dedicated JNI Code with CustomJNICode (details / cgit)
  16. GlueGen Struct [7]: Keep struct class non-final (revert), but ensure methods are final. Drop useless 'final' of 'static final'. (details / cgit)
  17. ElementBuffer: Add absolute get/put multi-element with full srcElemPos, destElemPos, elementCount argument set and use it for the single absolute get/put methods. (details / cgit)
  18. GlueGen Struct [8]: Revised setter (resolved shrinking array, using 'subset' flag), added (detailed) JavaDoc in generated code (details / cgit)
  19. doc/JogAmpMacOSVersions.html: Replaced w/ standalone html5 w/ header (utf8) (details / cgit)
  20. doc/GlueGen_Mapping.md: Remove note regarding shrinking array, resolved (details / cgit)
  21. Drop .md -> .html generated docs (ugly), use our cgit md -> html via refined pandoc styles (details / cgit)
  22. JavaType: Add getSignature(..) like Type (details / cgit)
  23. Type: Add hasSize(), change getSignature(..) for const: isConstTypedef() -> "typedef", isConstRaw() -> "native" (details / cgit)
  24. GlueGen Struct [9]: Fix regression which added a pointer referencing type 'void', i.e. exclude if !baseCElemType.hasSize() // like 'void*' -> 'void' (details / cgit)
  25. GlueGen Struct [10]: Don't skip primitive w/ platform dependent sized type in struct (like 'int') .. (details / cgit)
  26. GlueGen Struct [11]: Formalize Ownership (enum) and elaborate generated Java API-Doc (details / cgit)
  27. GlueGen Struct [12]: Throw InternalError(..) for produced code-path where Ownership.Native _and_ native memory potentially gets replaced (details / cgit)
  28. GlueGen Struct [9b]: Add unit test for fixed 'void*' regression commit eec3f21c3597ff9bf9760a06e00dd341214ea90d (details / cgit)
  29. GlueGen Struct [13]: Adopt GlueGen_Mapping.md to changes, added `Struct Java Signature Examples` w/ Java API Doc snippets (details / cgit)
  30. Bring back produced html5 standalone files, having fixed pandoc usage. (details / cgit)
  31. CPP Enable Pragma Once: Use default jcpp branch as its merged now (details / cgit)
  32. CPP Enable Pragma Once: Add GlueGen.run(..) debug output w/ all paramter (details / cgit)
  33. CPP Enable Pragma Once: Default is 'true', since usually all compiler and APIs do support this feature (details / cgit)
  34. CustomJNICode: Fix/complete commit d7bc10d7ff0e3a30d74c4e4c439230f3983bcfb4: Add emitCustomJNICode(..) for JavaEmitter.endFunctions() not just structs and fix the JNI-c stub code (details / cgit)
  35. CustomJNICode: Add missing (separated) test1p1-CustomJNICode.c.stub (details / cgit)
  36. fix(cli): Fix disablePragmaOnce option (details / cgit)
  37. CPP Enable Pragma Once: Remove cli '--enablePragmaOnce' option as it is enabled by default (details / cgit)
  38. GlueGen Struct [14]: Update doc/GlueGen_Mapping.md (details / cgit)
  39. www/index.html: Copy Documentation section into main text for visibility (details / cgit)
  40. Doc: Manual: Adding disclaimer being slightly outdated and hint to GlueGen_Mapping document (details / cgit)
  41. GlueGen Type: Use virt getTargetType() for ArrayType dropping getElementType(); Rename getBase{Elem ->}Type() to align with getTargetType() (details / cgit)
  42. doc/GlueGen_Mapping.md: Place `Struct Setter Pseudo-Code` above 'Signature Table' and add a brief signature to mapping description to the former (details / cgit)
  43. GlueGen Struct [15]: Add FunctionPointer getter and setter support w/ documentation (details / cgit)
  44. GlueGen Struct [15b]: FunctionPointer: Drop is<FuncName>Null() -> use get<FuncName>() (details / cgit)
  45. GlueGen junit test2.h: Add an anonymous struct pointer w/ opaque long config (details / cgit)
  46. JavaEmitter.typeToJavaTypeImpl(): Add targetType in GlueGenException and remove '"' in message (details / cgit)
  47. GlueGen Test: Test2 -> Test2FuncPtr (details / cgit)
  48. NIO NativeBuffer, {Element,Pointer}Buffer: Add limit, clear and flip; Arrange wrap/deref arguments equal; Add equal set of absolute get/set methods (details / cgit)
  49. GlueGen: Type, JavaType: Align getSignature(..) output (details / cgit)
  50. GlueGen: Type: Have get{Base,Target}Type() stop at isFunctionPointer(), enhance API doc; Add getArrayBaseOrPointerTargetType() and getTargetFunction() (details / cgit)
  51. GlueGen: JavaConfiguration.typeInfo(..): Clarify DEBUG_TYPE_INFO output (details / cgit)
  52. GlueGen: JavaConfiguration.promoteTypeInfo(): Fix primitive pointerDepth, i.e. only pass numPointersStripped w/o adding info.pointerDepth() (details / cgit)
  53. GlueGen Struct [16]: Add support for pointer-pointer and function-pointer values (details / cgit)
  54. GlueGen: Expose CMethodBindingEmitter.getJNIMangledArgs() as a public static to be reusable (details / cgit)
  55. GlueGen: Rename GlueEmitter.getConfig{uration->}() and drop JavaEmitter.getConfig(), cleaning up API usage (details / cgit)
  56. GlueGen Fix ProcAddressCMethodBindingEmitter.jniMangle(..) override: Use renamed {jniMangle->getJNIMangledArg}(..) (details / cgit)
  57. GlueGen: Add JavaEmitter(JavaConfiguration) ctor (details / cgit)
  58. JavaEmitter.generateArrayGetterSetterCode(): Place elemCountExpr null check where it could occur -> non-opaque, non-primitive array case (details / cgit)
  59. GlueGen: Fix Type.getSignature(..): Test for isFunctionPointer() to elaborate on FunctionType as getTargetType() only retruns a function-ptr and no more a function-type. (details / cgit)
  60. GlueGen FunctionType: Expose toString(..) w/ 'isPointer' argument (details / cgit)
  61. GlueGen Add JavaType.forObjectClass() (details / cgit)
  62. GlueGen FunctionSymbol: Simplify ctor reusing main-ctor; Be always reachable via type(def)name, ctor: addAliasedName( type.getCName() ) (details / cgit)
  63. GlueGen JavaConfiguration: Add 'JavaCallbackDef <funcion-pointer-typedef-name> [user-param-idx]' (details / cgit)
  64. GlueGen JavaConfiguration: Add List<Integer> stringArguments(final AliasedSymbol symbol) (details / cgit)
  65. GlueGen JavaCallback: Add preliminary implementation (WIP): Produces proper interfaces, TODO implementation (details / cgit)
  66. GlueGen JavaCallback: Add more related documentation (details / cgit)
  67. GlueGen JavaType: Add new nature 'String clazzName': Future (not yet generated or existing) Class objects (existing at runtime) (details / cgit)
  68. GlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function. (details / cgit)
  69. GlueGen 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. (details / cgit)
  70. GlueGen 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 (details / cgit)
  71. GlueGen JavaCallback: Add JavaCallback.methodSignature to JNI arg-list and pass value at invocation, allowing to find the jmethodID of callback (details / cgit)
  72. GlueGen Struct [17]: Handle void pointers, i.e. `void*`, within a struct as `Opaque` configured pointer-types (details / cgit)
  73. GlueGen doc/GlueGen_Mapping.md: Mentiond OO-Style API mapping and add section for it (details / cgit)
  74. GlueGen 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 (details / cgit)
  75. GlueGen: Move [de]captializeString(..) JavaEmitter -> static in CodeGenUtils (details / cgit)
  76. GlueGen CMethodBindingEmitter: Refactor emitBodyReturnResult() -> emitBodyMapCToJNIType(): Reuse to converting any C-type argument to java JNI type (i.e. native callback to JavaCallback) (details / cgit)
  77. GlueGen 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() (details / cgit)
  78. GlueGen ProcAddressCMethodBindingEmitter.jniMangle() override: Only add additional params if produced name containes '__', i.e. JNI mangled parameter (details / cgit)
  79. GlueGen JavaCallback: 1st Working Draft: Changed 'JavaCallbackDef' config, added code generation incl. native to Java dispatch and resource management (details / cgit)
  80. Doc: Align GlueGen_Mapping.md intro w/ README.md and www/index.html (details / cgit)
  81. Doc: www/index.html: Fix JOGL UML link (details / cgit)
  82. Doc intro: Fix LibraryOnLoad using generic LibraryBasename (details / cgit)
  83. README.md: Fix links (details / cgit)
  84. GlueGen JavaCallback: Set-Callback: Ensure a previously mapped 'userParam' instance is released before binding new one; Add test changing callback function. (details / cgit)
  85. Test4JavaCallback: Just rename myUserParam -> myUserParam01 for future tests.. (details / cgit)
  86. Eclipse classpath (details / cgit)
  87. GlueGen FunctionType/MethodBinding: get*ParameterList(): Use a more flexible way via a ParameterConsumer visitor, also usable for other iterative parameter generator (details / cgit)
  88. GlueGen JavaCallback: Resolve key mapping of callback and associated resources via 'JavaCallbackKey' config and custom `SetCallback-KeyClass` (details / cgit)
  89. GlueGen Intro: Add section about its comprehensive runtime library, shorten the JNI_OnLoad section (details / cgit)
  90. GlueGen JavaCallback: Release the associated data (natively) only after the actual toolkit setCallback call (details / cgit)
  91. GlueGen JavaCallback: Only produce default 'Key' class if keys are used, expose 'Key' to public and use it. Expose release*() and get*Keys() methods (details / cgit)
  92. GlueGen JavaCallback: Use `SetCallback-KeyClass` if manually specified, even if no keys are defined! (details / cgit)
  93. GlueGen JavaCallback: Native callback: Check ObjectRef validity and synchronize (MonitorEnter/Exit) with same Object of Java impl. -> thread safe (details / cgit)
  94. GlueGen JavaCallback: Emphasize all methods are thread-safe (details / cgit)
  95. doc/GlueGen_Mapping.md: Typo (details / cgit)
  96. GlueGen JavaCallback: Document native callback use-after-free potential (caught), zero-mem @ release (details / cgit)
  97. GlueGen JavaCallback: Native Callback: Reduce 'look-ahead' of read-after-free to critical lockObj only (details / cgit)
  98. GlueGen Struct [18]: Drop redundant 'static get*ElemCount() { return 1 }` for: isPrimitive && !isPointer && staticElemCount && maxOneElement (details / cgit)
  99. CMethodBindingEmitter JavaCallback: Use a friendly readable basename for errors (details / cgit)
  100. GlueGen JavaCallback: CMethodBindingEmitter: Check lockObj for NULL before GetObjectRefType(), avoid certain (older) Hotspot issues (details / cgit)
  101. GlueGen JavaCallback: CMethodBindingEmitter: Check, describe & clear exception if occurring - we must assume async off-thread source in general (details / cgit)
  102. GlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef struct (details / cgit)
  103. GlueGen JavaCallback: Revised: Static Java callback dispatcher, dropping native heap, support Struct UserParam ... (details / cgit)
  104. GlueGen JavaType.appendDescriptor(..): Fix regression: Must return a vanilla descriptor ('/' not '_') i.e. non JNI method-name descriptor to avoid double conversion (details / cgit)
  105. doc/GlueGen_Mapping.md: Quote `void*` correctly .. (details / cgit)
  106. GlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback! (details / cgit)
  107. GlueGen: Add 'PascalString' string semantics (length + value-ptr), added prelim code for JavaCallback use-case emitBodyMapCToJNIType() (details / cgit)
  108. Manual: Refine `ArgumentIsPascalString` (details / cgit)
  109. GlueGen JavaCallback: Fix `staticCBClazz*` initial setup (only), using a NewGlobalRef() for jclass (not required for static jmethodID) (details / cgit)
  110. GlueGen JavaCallback: Remove ambiguity: Config JavaCallbackDef/JavaCallbackKey: Always define both parameter indices; emitJavaStaticCallback(): Use cbFuncBinding and cbFuncKeyIndices from callback parameter to build key (details / cgit)
  111. GlueGen JavaCallback Doc: Remove reasoning (avoiding ambiguity) to CallbackFunction parameter index (details / cgit)
  112. GlueGen JavaCallback: Add capability to have UserParam as (part of) key (details / cgit)
  113. Manual: Fix ArgumentIsPascalString (details / cgit)
  114. GlueGen JavaCallback: Add optional custom 'Callback-UserParamClass` for non-compound `UserParam` types to have more clarity in resulting API (details / cgit)
  115. doc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (details / cgit)
  116. doc/GlueGen_Mapping.md: Typos 'UserParam' -> 'UserParamClass' (2 more occassions) (details / cgit)
  117. doc/GlueGen_Mapping.md: Using 'UserParamClass' .. grammar (3 commits for 1 discount today) (details / cgit)
  118. feat(generation): Add setter generation for not constant and not opaque compound attribute (details / cgit)
  119. feat(callbackGenerator): Add basic management of callback without userData (details / cgit)
  120. doc/GlueGen_Mapping.md: Add some documentation with JavaCallback without userData (details / cgit)
  121. feat(arrayAccessor): Allow to use ReturnedArrayLength with getter associated with field with name in PascalCase or camelCase (details / cgit)
  122. CMethodBindingEmitter.emitBodyMapCToJNIType(..): Add proper intendation to NIO ByteBuffer generation (isNIOBuffer || isCompoundTypeWrapper) (details / cgit)
  123. JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode}(): Group 'userParamDefined' case (cleanup) (details / cgit)
  124. JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Use capitalized sub-string 'baseArgName' for (static) callback related entities (details / cgit)
  125. JavaCallbackEmitter.{emitCSetFuncPreCall, emitCAdditionalCode, emitJavaCallbackBodyPassJavaArguments}(): Fix exclusion of ad-hoc compound conversion for userParam (details / cgit)
  126. JavaCallbackEmitter.emitCSetFuncPreCall(): Drop redundant arg 'CMethodBindingEmitter jcbFuncCMethodEmitter', use local 'info.cbFuncBinding' (details / cgit)
  127. JavaCallbackEmitter.emitJavaCallbackBodyPassJavaArguments(): Drop redundant arg 'MethodBinding jcbFuncCMethodBinding', use local 'info.cbFuncBinding' (details / cgit)
  128. JavaCallbackEmitter.emitCAdditionalCode(): Use `info.cbFuncBinding` locally and passed 'jcbFuncCMethodEmitter' only to invoke CMethodBindingEmitter.emitBodyMapCToJNIType(..) (details / cgit)
  129. JavaEmitter: Encapsulate 'needsJavaCallbackCode' query in JavaConfiguration. TBD: Is this even required? (details / cgit)
  130. Fix & Enhance Test4JavaCallback for non-userParam chapter12*: Fix ad-hoc compound equals and add chapter12b for additional parameter with different order (details / cgit)
  131. feat(callbackGenerator): Prevent generation of CallBack interface if setter related isn't present (details / cgit)
  132. CMethodBindingEmitter.emitBodyPassCArguments(): Either pass STRING_CHARS_PREFIX or javaCallbackEmitter.emitCOptArgumentSuffix(..) (details / cgit)
  133. JavaEmitter.bindFunction(): Add JavaCallback userParam non-void case (i.e. 'String') (details / cgit)
  134. JavaCallbackEmitter.emitJavaKeyClass(): Use directBufferAddress for compound types in equals and hashCode, i.e. use memory identity (details / cgit)
  135. JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode() (details / cgit)
  136. doc/GlueGen_Mapping.md: Shorten UserParamIndex '<0' to disable 'UserParam' and produce html page (details / cgit)
  137. wip(test_case): Example of test case for issue related of 927bbc7160a812bb29c0e7120d4a3009bfb13bbf (details / cgit)
  138. Revert "JavaCallback: Remove non-UserParam JavaConfiguration.requiresJavaCallbackCode()" (details / cgit)
  139. WIP JavaCallback Tests: Rename test2-gluegen.cfg -> test2-if.cfg (details / cgit)
  140. WIP JavaCallback Tests: Fix: Link library Bindingtest2p1 against library test2 not test1 (details / cgit)
  141. WIP JavaCallback Tests: Fix: test2-CustomJavaImplCode.java.stub must be 'IncludeAs' for both implementations, Bindingtest2p1Impl and Bindingtest2p2Impl (details / cgit)
  142. WIP JavaCallback Tests: Fix typo in 'CustomJavaCode' Java class target name (details / cgit)
  143. WIP JavaCallback Tests: Fix Test4p2JavaCallback.chapter__TestLoadLibrary() issue loadBindingtest2p2() not loadBindingtest2p1() (details / cgit)
  144. GlueGen Code Unit Tests using a statically linked tool library do not need to load the tool library dynamically, hence dropped. (details / cgit)
  145. JavaConfiguration.requiresJavaCallbackCode() shall return true for all JavaCallback cases no just non-userParam case (details / cgit)
  146. Cleanup unit test class names: Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes (details / cgit)
  147. Cleanup unit test class names (pt2): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes (details / cgit)
  148. Cleanup unit test class names (pt3): Try to start w/ 'Test', remove intermediate 'Test' for supporting, non-test classes (details / cgit)
  149. Add notes `Loading a MacOS Native Library's Dependencies` and use absolute path in unit test script for library-path (details / cgit)
  150. Minor cleanup (includes, spacing) (details / cgit)
  151. JavaCallback: Add Mathieu Féry's detailed git comment regarding 2abb40b0ca9a6a06bdbe3e66b4235301ed15c693; Updated GlueGen_Mapping.md (details / cgit)
  152. feat(generation): Fix CodeGenUtils.emitJavaHeaders (details / cgit)
  153. feat(generation): Fix generic parsing inside JavaParser.g to allow parsing of java callback implementation (details / cgit)
  154. Bump jcpp (merged w/ jcpp upstream v1.4.14) and adopt to changes (details / cgit)
  155. Drop PCPP, GlueGen exclusively uses JCPP; Adopt test case Test{P->J}CPP (details / cgit)
  156. TestJCPP: Add recursive-include test and include a header file starting with '-' and in a subdir containing a '-' (details / cgit)
  157. ANTLR Syntax: Add debugging facility for GnuCParser.g and StdCParser.g (details / cgit)
  158. Bug 1450: Fix 'Number' rule, i.e. only consume positive numbers as `additiveExpr` and `unaryExpr` consume the '-' operator (details / cgit)
  159. Bug 1450: Widen ConstantDefinition.isConstantExpression() to include 'patternCPPOperand' (details / cgit)
  160. Bug 1450: Be more verbose w/ JavaEmitter comment lines for enums and defines, include native expression (details / cgit)
  161. Bug 1450: Add test snippets covering the issues: test2.h for Bindingtest2, TestJCPP and new TestCParser (details / cgit)
  162. Bug 1450: TestCParser: Enable test10_cc() w/o JCPP (details / cgit)
  163. GlueGen: 'from expression' -> 'with expression' (details / cgit)

Started by user Sven Gothel

Revision: b3dd6410aad591ddaec4eddfb8d894893368a54a
Repository: git://jogamp.org/srv/scm/gluegen.git
  • origin/master
Test Result (2 failures / +2)