summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Bug 923: Remove dependency of CStruct annotation processor _generation_ and ↵Sven Gothel2014-05-1115-206/+453
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | generated_class_user due to Java8 issues. Java8's annotation processor as embedded within javac does not allow referencing not-yet existing generated classes in a class source code which will produce these generated classes via the annotation process. Example: +++ import com.jogamp.gluegen.structgen.CStruct; public class Lala { @CStruct(name="RenderingConfig", header="TestStruct01.h") public RenderingConfig config; } +++ Above example illustrates that the type 'RenderingConfig' does not exist at time of processing the annotation. The type will be created via the annotation process itself. Even though we pass '-proc:only', i.e. skip java compilation, Java8's annotation processing via javac fails in such case. We see this as a bug within javac's annotation processing itself! +++ This workaround splits the annotation process and using the class as generated by the former. To allow this to work, CStruct receives a new field 'jname' allowing to enforce the java-name of the structure using a dummy field type like boolean. @CStruct(name="RenderingConfig", jname="RenderingConfig", header="TestStruct01.h") public boolean dummy; Further more CStruct can be annotated on the package, i.e. 'package-info.java', avoiding the dependency problem altogether. To support multiple header files and types, 'CStructs' has been introduced using an array of 'CStruct'. @CStructs({@CStruct(name="RenderingConfig", header="TestStruct01.h"), @CStruct(name="Pixel", header="TestStruct02.h")}) package com.jogamp.gluegen.test.junit.structgen; Tests: - Build w/ Java7 and Java8 - Validated 'major version 50' (Java 6) class files (OK)
* unit test: preserve hs_err_pid*.log files (move to results folder for archive)Sven Gothel2014-05-091-0/+3
|
* UnixDynamicLinkerImpl_JNI.c: Add (inactive) dlopen debug code (helper to ↵Sven Gothel2014-05-091-0/+24
| | | | analyze llvm-vmkit libGL loading issue)
* PosixDynamicLinkerImpl: cleanup uncommented enums's intendationSven Gothel2014-05-091-2/+2
|
* build/test: Add ant-junit4.jar to classpath; Add experimental gluegen-rt-alt ↵Sven Gothel2014-05-097-16/+167
| | | | recipe (inactive); Misc ..
* gluegen: avoid bugs with sign-extension in readUInt16Harvey Harrison2014-04-111-2/+3
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* Bump to 2.2-rcSven Gothel2014-03-111-4/+4
|
* Revert "Fix CStruct annotation processor warning."v2.1.5Sven Gothel2014-03-101-1/+1
| | | | This reverts commit fccb2460832aedd1b51372aa1e7881770cb638c9.
* Bump to release 2.1.5 (Android: 0914019)Sven Gothel2014-03-101-3/+3
|
* Minor Cleanup after merging fixes for bugs 987, 990, 992 and 994Sven Gothel2014-03-104-11/+14
|
* Merge remote-tracking branch ↵Sven Gothel2014-03-101-1/+1
|\ | | | | | | 'remotes/wwalker/bug_994_fix_cstruct_annotation_warning'
| * Fix CStruct annotation processor warning.Wade Walker2014-03-061-1/+1
| | | | | | | | | | Updated the Java source version the annotation processor supports to stop it from throwing a warning during the build process.
* | Merge remote-tracking branch ↵Sven Gothel2014-03-101-0/+3
|\ \ | | | | | | | | | 'remotes/wwalker/bug_992_allow_ignore_of_unnamed_structs'
| * | Allow Ignore in config to ignore unnamed structs.Wade Walker2014-03-051-0/+3
| |/ | | | | | | | | | | | | | | | | | | Augments the behavior of the Ignore keyword to ignore when gluegen skips the emission of unnamed structs. These structs are usually unnamed because we've created opaque types for them, so we know they're not going to be emitted and want to be able to suppress the warning on a case-by-case basis.
* | Merge remote-tracking branch 'remotes/wwalker/bug_990_fix_gluegen_c_warnings'Sven Gothel2014-03-106-4/+67
|\ \
| * | Fix accidental tabs.Wade Walker2014-03-044-25/+25
| | |
| * | Remove warnings in emitted C code.Wade Walker2014-03-046-1/+64
| |/ | | | | | | | | | | | | | | Fix 1: Only emit "int * _offsetHandle = NULL" if it will be used, to avoid unused variable warning. Fix 2: Add "unsigned" to typecasts in C function calls when needed to avoid implicit typecast warning. This commit also adds a unit test for a method that uses an "unsigned char **" parameter, to mimic the JOCL clCreateProgramWithBinary() function that caused the typecast warnings.
* | Fix 7z for paths containing spaces on Windows.Wade Walker2014-03-011-1/+1
| |
* | Fix sed for paths containing spaces on Windows.Wade Walker2014-03-011-1/+1
| |
* | Add parser temp output files to ignored list.Wade Walker2014-03-011-0/+2
|/
* Bitstream: Add 'throwIOExceptionOnEOF' mode; fix certain EOS situations ↵Sven Gothel2014-02-211-9/+85
| | | | (flush, skip)
* build-test.xml: Push 'java.generate' up from java.build to android.packageSven Gothel2014-02-211-3/+3
|
* Bug 980: Refine Bitstream API 'signed' and 'unsigned' semantics - ↵Sven Gothel2014-02-218-92/+109
| | | | readUInt32(..) must return long due to EOF
* Bitstream: Another CamelCase fix: uint32LongtoInt -> uint32LongToIntSven Gothel2014-02-211-2/+2
|
* Bitstream: Refine c70c730b22c847668cf475dc6f841b85297ac3ab: 'toUint32Long' ↵Sven Gothel2014-02-213-14/+22
| | | | -> 'toUInt32Long', add 'uint32LongtoInt'
* Bitstream: Add static 'long toUint32Long(int)' and 'int toUint32Int(int)' ↵Sven Gothel2014-02-214-15/+62
| | | | conversion functions
* Bug 980: Use Bitsream class for jogamp.common.os.elf.**Sven Gothel2014-02-202-18/+12
|
* Bug 890: Adding versatile Bitstream implementationSven Gothel2014-02-208-3/+2371
| | | | | | | | | | | | | | | | We already have several locations where bitstream operations are required and partially implemented (JPEG decoder, media parsing, ..) as well as endian related conversion (elf parser, ..). Create a versatile Bitstream class allowing: - Utilize I/O operations on I/O streams, buffers and arrays - Consider MSBfirst / LSBfirst mode - Linear bit R/W operations - Bulk R/W operations w/ endian related type conversion - Allow mark/reset and switching streams and input/output mode - Optimized operations Complete set of unit tests included, covering hopefully all cases.
* Bug 958 - Add support for OpenJDK version notationSven Gothel2014-02-161-3/+10
| | | | | | | | | | | | | | | | | | Manu <[email protected]>: In OpenJDK, Java version notation is a little different from Oracle JDK one: OpenJDK uses "-u" instead of "_" to separate the version number from the update number, i.e. "1.7.0-u60-b04" vs "1.7.0_60-ea". That would be nice to take this into account in the static initializer of jogamp.common.os.PlatformPropsImpl class. You could simply replace the line: final int usIdx = JAVA_VERSION.lastIndexOf("_"); by: final int usIdx = JAVA_VERSION.replace("-u", "_").lastIndexOf("_"); If you want to program it better, you can also test the "java.runtime.name" property that returns "OpenJDK Runtime Environment" for OpenJDK. See also bug #944 https://jogamp.org/bugzilla/show_bug.cgi?id=944 +++ Done .. avoding the replace op.
* toolchain-linux [armhf/armsf]: Add symlinks to cc g++ c++Sven Gothel2014-02-156-0/+6
|
* Bump 'down' to 2.1.5Sven Gothel2014-02-151-2/+2
|
* Fix make.gluegen.all.android-armv6-cross.sh (SDIR was missing)Sven Gothel2014-02-151-0/+2
|
* Bug 972 - Reduce ClassLoader Lookup, i.e. Class.forName(..) / Instrument ↵Sven Gothel2014-02-121-8/+99
| | | | ReflectionUtil's forName(..) usage
* Bump to 2.2.0 RCSven Gothel2014-02-051-4/+4
|
* Prepare 2.1.4v2.1.4Sven Gothel2014-01-301-3/+3
|
* ActivityLauncher: Ensure System properties are cleared at stop() alreadySven Gothel2014-01-261-26/+36
|
* build.xml .. fix doc (copy/paste)Sven Gothel2014-01-261-1/+1
|
* Add lst-jars.sh scriptSven Gothel2014-01-251-0/+6
|
* Jar Manifest: Seal all packages ; Each jar is 'standalone' as required by ↵Sven Gothel2014-01-254-2/+12
| | | | 'sealed packages': gluegen-rt.jar < gluegen-rt-android.jar < gluegen.jar
* Jar Manifest: Sealed Entries must follow generic headers - Otherwise ↵Sven Gothel2014-01-254-8/+12
| | | | subsequent entries are not recognized
* Bug 856 - Android: Support dual ABI (x86 i686 *and* ARMv7arm), i.e. pick ↵Sven Gothel2014-01-2412-163/+404
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'best' ABI - Use 'os.arch' as a prelim CPUType for MachineDescription - Always attempt to load a binary and parse it's elf header - Linux: self-exe - Android: gluegen-rt library - Other: java lib - Always use details (ABI) if ARM - Android: Check CPU_TYPE and CPU_TYPE2 // FIXME / HACK: // We use sCPUType for MachineDescriptionRuntime.getStatic() // until we have determined the final CPU_TYPE, etc. // MachineDescriptionRuntime gets notified via MachineDescriptionRuntime.notifyPropsInitialized() below. // // We could use Elf Ehdr's machine value to determine the bit-size // used for it's offset table! // However, 'os.arch' should be a good guess for this task. Tested manually on - Linux x86, x86_64, armhf (raspi) - Android intel and arm - Windows x86_64 - OSX x86_64
* Refine test/TestMultiAndFatJar: Demoing test class outside of fat and multi jarSven Gothel2014-01-243-11/+28
| | | | | | | | Use 'output' folder - Copy jogl-test.jar and junit.jar to output, to be used in executing (run-*.sh) Works here ..
* Platform: Fix API doc of getCPUFamily(), getCPUType() and getABIType()Sven Gothel2014-01-231-3/+9
|
* Jar Manifest: Add empty line before EOF (otherwise last line is cut-off - ↵Sven Gothel2014-01-226-0/+11
| | | | duh), add 'Application-Library-Allowable-Codebase: *'
* Bug 945 - GlueGen's IOUtil does not consider file URI's authority when ↵Sven Gothel2014-01-226-29/+91
| | | | | | | | | | | | | | | | | | | | | | | converting to file-path or URI (Windows UNC / share host) Note: Authority for 'file-scheme' URI's is used on Windows to denote the host of the shared resource -> UNC Following methods of IOUtil didn't consider the authority for file-scheme URI: 'URL toURL(final URI uri)' 'String decodeURIToFilePath(final String uriPath)' 'String decodeURIIfFilePath(final URI uri)' Further more, the patterns 'patternSingleFS' and 'patternSingleBS' converted multiple '\' '/' to one replacement. However, we should not change the separator count and replace them one-by-one. TestIOUtilURIHandling: - Added shared-file-host 'filehost' test cases to file URIs and plain file path tests. - Passed on Unix and Windows. Added 'make/scripts/test-win32-smb_share.bat' - Testing actual windows share usage - Passed on Windows
* GlueGen: Add 'MethodJavadoc <method-name> comment-line..' configuration ↵Sven Gothel2014-01-212-38/+85
| | | | element, allowing to add custom API doc lines per method for the JavaMethodBindingEmitter
* Bug 944 - Platform doesn't parse early-access java-version string properly ↵Sven Gothel2014-01-142-7/+6
| | | | | | | | | (JAVA_VERSION_UPDATE) Fix JAVA_VERSION_UPDATE for early release versions. Early access java versions are e.g. '1.7.0_60-ea' where releases simply are named: '1.7.0_60'.
* Add TaskBase.flush(Throwsable): To propagate optional reason for flush ; ↵Sven Gothel2014-01-111-1/+10
| | | | Deprecate flush()
* IntBitfield: Fix ctor: min 1 unit; Fix getBitCount(): Use unsigned ↵Sven Gothel2014-01-091-9/+14
| | | | right-shift '>>>'
* gluegen: MethodBinding implements clone() without implenting ClonableHarvey Harrison2014-01-051-6/+1
| | | | | | Just directly call the copy-constructor and avoid using clone. Signed-off-by: Harvey Harrison <[email protected]>