summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix command queue test for IntelWade Walker2015-11-081-1/+6
| | | User events start as CL_SUBMITTED instead of CL_QUEUE on Intel.
* Fix CLProgramTest for Intel OpenCLWade Walker2015-11-082-7/+24
| | | | | | Added a couple of differences in test results for programs recreated from binaries (the programs are executable and have binary length > 0), and avoided the CL kernel creation test on a binary because it segfaults like it does on AMD drivers.
* Fix CLProgram build lock to work on Intel OpenCL implementationWade Walker2015-11-081-16/+21
| | | | | The Intel OpenCL implementation calls the clBuildProgram notify function on a different thread, so had to change a reentrant lock to a semaphore to allow this.
* Fix generated files dependency check; remove unused include pathsWade Walker2015-11-081-27/+16
| | | | | | Fixed the dependency check for generated files; previously we were looking at the wrong path, and always regenerating all files. Also removed some include paths that don't contain any files, and renamed some filesets so it's more clear what they contain.
* Remove unused stuff from build.xmlWade Walker2015-11-081-49/+15
| | | | | | | | Removed header file downloader task which was no longer used (and not really possible to use, given the amount of manual tweaking needed to get gluegen to run on a new set of header files). Removed some commented-out lines that were obsolete. Fixed some formatting. Removed some ARMv6-related stuff that made no sense for JOCL (was inherited from JOAL). Added some forgotten dependency paths.
* Replace erroneous tabs with spaces.Wade Walker2015-11-081-23/+23
|
* Add versioned interfaces for CL 1.1, 1.2, and 2.0Wade Walker2015-11-084-12/+23
| | | Now all three derive from CL, which is currently 1.1.
* Remove CLGL interfaceWade Walker2015-11-0815-84/+35
| | | | | This removes the last sub-interface that would have to be separately versioned for future versions of OpenCL. After this, new OpenCL versions will only create one new interface and one new implementation.
* Remove creation and all references to CL*Binding interfacesWade Walker2015-11-0825-425/+104
| | | | This completes the removal of all CL*Binding interfaces; all tests pass at this point.
* Remove use of CL*Binding interfacesWade Walker2015-11-0815-177/+122
| | | In preparation for removing the interfaces themselves
* Add ability to access newer CLImpl versions for devicesWade Walker2015-11-084-3/+39
| | | | | | Added a CLPlatform method to return a CLImpl version specific to a device. This lets the user get a CLImpl12 or CLImpl20 instance which they could then cast to the right type and use to access newer CL functions than those in the default CLImpl11 object.
* Factor out common custom C and Java code to reduce duplicationWade Walker2015-11-0815-881/+221
| | | | | | | | | Consolidated C custom code so common functions are only defined once in the 1.1 version, then are called from the 1.2 and 2.0 version. Pulled common code in CLImpl up into the autogenerated implementation class and removed the hand-written implementation (since it was left empty). Factored custom Java code out so there was as little duplication as possible across the three CLImpl versions, with common code for all three versions in clImplCustomCode.java.
* Add explicit version number to original CL impl classes.Wade Walker2015-11-089-36/+35
| | | | | This makes all three versions (1.1, 1.2, and 2.0) use the same naming convention, and sets me up to use the unversioned name to factor out code common to all three.
* Add OpenCL 1.2 and 2.0 headers and CLImpl classesWade Walker2015-11-0823-58/+7780
| | | | | | | Added stub includes for OpenCL 1.2 and 2.0. Added new CLImpl versions for 1.2 and 2.0 to the build, but left them unused for now. The CL bindings used by JOCL are still generated from OpenCL 1.1, so the existing Java code will be able to stay mostly unchanged in the future.
* Remove copy of generated Java files to build-temp directoryWade Walker2015-11-082-23/+12
| | | | This build step doesn't seem to be needed; can just read the files where they're created in the build directory and everything works the same.
* Upgrade OpenCL headers to standard Khronos version 1.1Wade Walker2015-11-088-93/+176
| | | | | They were previously a pre-release version of 1.1 that had some manual changes and upgrades. This moves to the canonical versions downloaded from khronos.org.
* Remove unused file cl_render_ext.hWade Walker2015-11-082-66/+1
| | | | | This originally held definitions that hadn't been finalized before the release of OpenGL 1.1, but later those were put in the normal set of header files, making this file redundant.
* Make gluegen output messages more informativeWade Walker2015-11-081-14/+14
|
* JOCL QueueThread extends InterruptSource.Threadv2.3.2Sven Gothel2015-10-031-1/+2
|
* Include Khronos derived glcorearb.h before cl_gl.h, avoiding typedef ↵Sven Gothel2015-07-143-13/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mismatch w/ APPLE's GL LLVM's clang reports a typedef mismatch of GLintptr and GLsizeiptr between the Khronos derived glcorearb.h (from JOGL) and APPLE's gltypes.h when producing 32bit builds. +++ In file included from /usr/local/projects/jogamp/jocl/build-macosx-java6/gensrc/native/jocl/CLAbstractImpl_JNI.c:15: /usr/local/projects/jogamp/jogl/make/stub_includes/opengl/GL/glcorearb.h:604:19: error: typedef redefinition with different types ('ptrdiff_t' (aka 'int') vs 'intptr_t' (aka 'long')) typedef ptrdiff_t GLintptr; ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gltypes.h:51:18: note: previous definition is here typedef intptr_t GLintptr; +++ I.e. Khronos uses ptrdiff_t (aka 'int' on 32bit), where APPLE uses intptr_t (aka 'long' on 32bit). On OSX 32bit both ('int' and 'long') have the same sizeof value, i.e. 4 bytes, see below, hence the ABI is compatible! However, clang produces a typedef mismatch. Fix includes the Khronos derived (JOGL) glcorearb.h before cl_gl.h, hence favors the former 'canonical' definition. +++ OSX 10.10 32bit: sizeof int: 4 sizeof long: 4 sizeof long long: 8 sizeof intptr_t: 4 sizeof uintptr_t: 4 sizeof ptrdiff_t: 4 sizeof size_t: 4 sizeof float: 4 sizeof double: 8 sizeof long double: 16 OSX 10.10 64bit: sizeof int: 4 sizeof long: 8 sizeof long long: 8 sizeof intptr_t: 8 sizeof uintptr_t: 8 sizeof ptrdiff_t: 8 sizeof size_t: 8 sizeof float: 4 sizeof double: 8 sizeof long double: 16
* Remove obsolete Netbeans build filesWade Walker2015-07-129-1866/+0
| | | | The new Jogamp standard Ant build has been working correctly for a while now, so we can delete the old Netbeans build files safely.
* Remove stub includes that are duplicates of gluegen's and jogl'sWade Walker2015-07-1210-8032/+22
| | | | | | Removes jocl stub includes that are already defined in gluegen and jogl, and refers to those in gluegen and jogl instead. Requires the literalInclude parameter to the gluegen Ant task, since it must now refer to files outside the jocl project.
* Add debug targets to match those in gluegen and joglWade Walker2015-07-063-3/+14
|
* GLhandleARB set to void * on OS X, unsigned int everywhere elseWade Walker2015-07-052-1/+9
| | | | | | | | | | | | The OpenCL headers on OS X include gltypes.h, which defines GLhandleARB as void *, but the stub headers gl3.h and glext.h in JOCL were defining it as unsigned int. Put in a typedef to match how Khronos fixes the problem. See http://sourceforge.net/p/glew/bugs/206/, https://bitbucket.org/alfonse/glloadgen/issue/33/mac-compilation-error, https://www.opengl.org/registry/api/GL/glext.h, and https://www.khronos.org/bugzilla/show_bug.cgi?id=762 for more information.
* Adapt to GlueGen commit 5ca2db226e23c61339943f981a3f46300818cb9a (Use ↵v2.3.1Sven Gothel2015-03-271-2/+2
| | | | containingJTypeName for struct config)
* Adapt to GlueGen commit 454fac44efd1728d8f5c09ed4abd4041f6187e44: ↵v2.3.0Sven Gothel2015-03-111-2/+2
| | | | RenameJavaMethod -> RenameJavaSymbol
* Add javadoc arg (property 'javadoc.xarg1') '-Xdoclint:none' if java >= 1.8 ↵Sven Gothel2015-02-031-0/+2
| | | | (GlueGen commit d8dff4c9f2186749b167195eeb339c33f56864e8)
* Adapt APK install scripts for harmonized os.and.arch names, see GlueGen ↵Sven Gothel2015-02-034-7/+7
| | | | commit 3b43a223253176731567c6d8b7a67c9a6110782b
* Bug 682 - Relocating javax.media.opengl.* -> com.jogamp.opengl.*Sven Gothel2015-02-0211-19/+19
|
* Bug 1122 - Add ARM 64bit build support, add Android ARM 64 bit build ↵Sven Gothel2015-02-023-0/+72
| | | | (build/install scripts only)
* Bug 1124 - Android Build: Use SDK >= 24.0.2 (build-tools >= 21.1.2) and NDK ↵Sven Gothel2015-01-281-52/+7
| | | | >= 10d
* Bug 978: UITestCase shall only report 'not available on this machine', due ↵v2.2.4v2.2.3v2.2.2v2.2.1b22xSven Gothel2014-09-031-1/+1
| | | | | | to commit c720767642618cfb4f3739dc6962cde0465e25c5 Giving the OS type leads to misconception that is may not be available on all machines of this OS type.
* Bug 978: Promote CLAbstractImpl.isAvailable() to CLPlatform, public API. ↵Sven Gothel2014-09-035-25/+32
| | | | | | | | isAvailable() simply shall return true if JOCL/OpenCL libs could be loaded. - Promote CLAbstractImpl.isAvailable() to CLPlatform, public API. - CLAbstractImpl.isAvailable() simply shall return true if JOCL/OpenCL libs could be loaded.
* Fix Eclipse .classpath: build/gensrc/java replaced w/ simple src attachment ↵Sven Gothel2014-09-011-5/+1
| | | | w/o attribute
* Bug 1057: Analyze CLProgramTest freeze on Win 8.1 Intel i7-4770T CPU / HD ↵Sven Gothel2014-09-013-31/+34
| | | | | | | | Graphics 4600 - Properly enforce test order (alphanumeric) - Split builderTest() to synchronized and async tests
* Scripts: Bump to java 1.8.0_20Sven Gothel2014-08-312-4/+4
|
* Scripts: Bump to java 1.7.0_67 and apache-ant 1.9.4Sven Gothel2014-08-284-12/+12
|
* Bug 1024: Add fallback for native-jar-file location via classpathv2.2.0Sven Gothel2014-07-114-15/+116
| | | | Adapt to GlueGen commit f5c48efcf546ba4e08e197ccced6df83b57e1755
* Bug 1023/Bug 1024: Create native jar files for different configurations due ↵Sven Gothel2014-07-101-0/+2
| | | | to non-native-jar aliasing
* Bug 1023, Bug 1024: Adapt to GlueGen commit ↵Sven Gothel2014-07-051-1/+1
| | | | 46faa59d439ef235d7691fc64d56eedc600ffa1a
* Code Clean-Up based on our Recommended Settings (jogamp-scripting ↵Sven Gothel2014-07-0372-1916/+1954
| | | | | | | | | | | | | c47bc86ae2ee268a1f38c5580d11f93d7f8d6e74) - Change non static accesses to static members using declaring type - Change indirect accesses to static members to direct accesses (accesses through subtypes) - Add final modifier to private fields - Add final modifier to method parameters - Add final modifier to local variables - Remove unnecessary casts - Remove unnecessary '$NON-NLS$' tags - Remove trailing white spaces on all lines
* Add System.err log if CL/JNI library could not be loadedSven Gothel2014-06-251-3/+3
|
* Adapt to GlueGen commit 9ee44e1a289ecbac024662dd5a2ffc42e8add023 (Bug 1025)Sven Gothel2014-06-251-2/+2
|
* Adapt to GlueGen commit 2f6586292cd298bbc19d8acda0f7cf303c82078b (compount ↵Sven Gothel2014-06-182-2/+3
| | | | | | call-by-value extension) - initializeImpl() is no more required, since it's not forced .. uncomment in manual static initializer
* Adapt to GlueGen commit c3054a01990e55ab35756ea23ab7d7c05f24dd37 (compount ↵Sven Gothel2014-06-173-3/+7
| | | | call-by-value extension)
* Merge remote-tracking branch 'wwalker/master'Sven Gothel2014-05-106-38/+161
|\
| * Fix build instructionsWade Walker2014-04-261-32/+23
| | | | | | | | | | | | Fixed the build instructions to reflect the changes that bring JOCL into line with the other JogAmp modules. Also fixed dead links and updated the version of OpenCL we point to.
| * Merge branch 'bug_1003_add_texture_interop_test'Wade Walker2014-04-134-5/+134
| |\
| | * Fix CL-GL interoperability tests on Mac.Wade Walker2014-04-062-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | Fixed detection of compatible interoperability platforms (was silently skipping platform because GL vendor was Nvidia, but CL vendor was Apple). Also fixed CL kernel syntax error about signed-unsigned comparison that ATI's driver on Windows didn't find, and fixed the CL memory object to be write-only instead of read-only (which ATI's Windows driver just ignored).
| | * Finish texture sharing test.Wade Walker2014-04-063-44/+88
| | | | | | | | | | | | | | | Make the test modify a GL texture with a CL kernel, then loop over the texture afterwards to check each texel has the right value. Also make the test loop over all platforms and devices that support sharing.