summaryrefslogtreecommitdiffstats
path: root/make
Commit message (Collapse)AuthorAgeFilesLines
* Fix compilation of OpenCL 2.x headers on OS XWade Walker2015-11-088-8/+16
| | | | | | | The include files were getting the OS X framework files from OpenCL/*.h, instead of the local stub files from CL/*.h, which meant that OpenCL 2.x-related things were undefined. Changed OpenCL 2.x stub files to refer to local .h files only. Maybe later change 1.x also, but leaving it for now to minimize disruption to working code.
* 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-086-46/+12
| | | | | 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-0813-322/+29
| | | | This completes the removal of all CL*Binding interfaces; all tests pass at this point.
* Factor out common custom C and Java code to reduce duplicationWade Walker2015-11-0812-786/+402
| | | | | | | | | 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-084-24/+24
| | | | | 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
|
* 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 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-061-1/+10
|
* 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-023-4/+4
|
* 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 1057: Analyze CLProgramTest freeze on Win 8.1 Intel i7-4770T CPU / HD ↵Sven Gothel2014-09-012-4/+4
| | | | | | | | 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-112-14/+40
| | | | 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
* 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)
* unit test: preserve hs_err_pid*.log files (move to results folder for archive)Sven Gothel2014-05-091-0/+3
|
* Remove warnings, turn on linting, fix Eclipse.Wade Walker2014-03-072-5/+12
| | | | | | | Removed warnings due to memoryMaximumSize being ignored when javac isn't forked. Turned on all linting. Changed the arguments of uncomment-function-params so it will run from within Eclipse properly (using basedir instead of user.dir, since only the former will be properly set both inside Eclipse and on the command line).
* Remove alignment warning in gluegen preprocessing.Wade Walker2014-03-051-2/+5
| | | | | | | | Turns off the warning about CL_ALIGNED not being defined for the current compiler, but only inside the gluegen preprocessor. If CL_ALIGNED isn't defined for the real C compiler on the platform, the warning will still show up during C compilation.
* Remove unnamed struct emission warnings.Wade Walker2014-03-051-1/+12
| | | | Uses the new augmentation of gluegen's Ignore keyword.
* Pass function pointers into clEnqueueMapImage.Wade Walker2014-03-021-2/+2
| | | | | | | These pointers were showing up as uninitialized variables; on inspection they just weren't being passed in from the Java side or assigned on the C side. There are currently no tests of this function, which is how we didn't notice this omission.
* Load jocl.properties if present.Wade Walker2014-03-021-2/+2
| | | | This lets us build with debug information turned on.
* Fix C build warnings.Wade Walker2014-03-022-4/+3
| | | | | | Fixes -fno-rtti and implicit cast warnings. After this commit, all C warnings are gone except for one due to gluegen emitting char pointers instead of unsigned char pointers.
* Merge pull request #5 from WadeWalker/bug_978_fix_solaris_testsWade Walker2014-02-242-13/+15
|\ | | | | Fix OpenCL test failures on Solaris for bug 978.
| * Fix OpenCL test failures on Solaris.Wade Walker2014-02-232-13/+15
| | | | | | | | | | | | | | | | | | | | Since nobody currently makes an OpenCL driver for Solaris, all the tests used to fail, which told us nothing. This commit adds code to check whether OpenCL is unavailable and the OS is Solaris, in which case the test contents are skipped. If an OpenCL driver ever appears for Solaris, or if we start testing on another platform with no OpenCL driver, there's now one single place to add or remove checks that will allow for this.
* | Fix build.xml (regression): Re-activate 'generate.jdk6.autocloseable, ↵Sven Gothel2014-02-211-1/+1
| | | | | | | | | | | | generate.jdk7.autocloseable' in java.generate.impl Regression of commit 46cc6ebfb2f53daebceb9a36b553ff01af56999f
* | build.xml: Don't re-generate source (gluegen) if CLAbstractImpl_JNI.c ↵Sven Gothel2014-02-172-4/+9
| | | | | | | | uptodate (use java.generate.skip); Put native code on gensrc/native/jocl
* | Fix Bug 920 - JOCL does not work on windows with 32 bit vm (2/2)Sven Gothel2014-02-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | All gluegen generated native function wrappers, miss CL_API_CALL in the function declarations similar to commit 569726132f622e290bebc5d40c96f8115dbcb5da. Adding gluegen calling convention to cl-impl.cfg: LocalProcAddressCallingConvention __ALL__ CL_API_CALL All tests passed on windows 32bit now!
* | Fix Bug 920 - JOCL does not work on windows with 32 bit vm (1/2)Sven Gothel2014-02-173-8/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'clGetExtensionFunctionAddress' function pointer declaration was faulty, i.e. using CL_API_ENTRY instead of CL_API_CALL. CL_API_CALL on windows is defined as '__stdcall' which impacts Window 32bit platforms. Fixed same issue w/: - clCreateContext - clBuildProgram Same issue occurs with _all_ gluegen generated native function wrappers, i.e. CL_API_CALL is missing in the function declarations! I will follow-up w/ this fix in a bit ..
* | Fix windows test scripts (CP, D_ARGS, ..)Sven Gothel2014-02-172-3/+14
| |
* | Fix build.xml: Remove gluegen config dependency on ../build using build-tempSven Gothel2014-02-172-12/+14
| | | | | | | | | | | | | | | | Fix copy2temp target and issue it before gluegen of cl-if.cfg. Note: ${project.root}/build cannot be a hard-dependency since ${rootrel.build} is configurable hence ${project.root}/${rootrel.build}.
* | Windows build scripts: Bump ant to 1.8.2Sven Gothel2014-02-172-2/+2
| |