summaryrefslogtreecommitdiffstats
path: root/make/resources/cl-impl.cfg
diff options
context:
space:
mode:
authorWade Walker <[email protected]>2013-12-15 16:16:18 -0600
committerWade Walker <[email protected]>2013-12-15 16:24:11 -0600
commit9ecc606bce374ea093c6321f2d4921b5019a0b18 (patch)
treea9029d561ebed9135ac599dc5941c3d760af3167 /make/resources/cl-impl.cfg
parentd1113c49ed95a2089decdc5c270a29fcbd233d68 (diff)
Bug 884: Add standard JogAmp build files.
The new make/build.xml successfully builds and tests the project. The original NetBeans build files are still present, but won't work anymore since the resources directory is now inside the make directory. The new build files are based on those of JOAL. The new build is not yet minimized and cleaned up, because this commit is meant to be the minimum way to get things functional.
Diffstat (limited to 'make/resources/cl-impl.cfg')
-rw-r--r--make/resources/cl-impl.cfg95
1 files changed, 95 insertions, 0 deletions
diff --git a/make/resources/cl-impl.cfg b/make/resources/cl-impl.cfg
new file mode 100644
index 00000000..c2aff892
--- /dev/null
+++ b/make/resources/cl-impl.cfg
@@ -0,0 +1,95 @@
+Include cl-common.cfg
+
+Style ImplOnly
+
+#imports for all generated java files
+Import com.jogamp.opencl.llb.*
+Import com.jogamp.opencl.llb.gl.CLGL
+Import java.security.AccessController
+Import java.security.PrivilegedAction
+
+ClassJavadoc CLAbstractImpl /**
+ClassJavadoc CLAbstractImpl * Java bindings to OpenCL, the Open Computing Language (generated).
+ClassJavadoc CLAbstractImpl * @author Michael Bien, GlueGen, et al.
+ClassJavadoc CLAbstractImpl */
+
+ImplJavaClass CLAbstractImpl
+AccessControl CLAbstractImpl PUBLIC_ABSTRACT
+Implements CLAbstractImpl CLGL
+
+EmitProcAddressTable true
+ProcAddressTableClassName CLProcAddressTable
+GetProcAddressTableExpr addressTable
+ProcAddressNameExpr $UpperCase(arg)
+
+#dynamic binding for OpenGL specific functions...
+#ForceProcAddressGen clGetGLContextInfoKHR
+#ForceProcAddressGen clCreateFromGLBuffer
+#ForceProcAddressGen clCreateFromGLRenderbuffer
+#ForceProcAddressGen clCreateFromGLTexture2D
+#ForceProcAddressGen clCreateFromGLTexture3D
+#ForceProcAddressGen clEnqueueAcquireGLObjects
+#ForceProcAddressGen clEnqueueReleaseGLObjects
+#ForceProcAddressGen clGetGLObjectInfo
+#ForceProcAddressGen clGetGLTextureInfo
+#ForceProcAddressGen clCreateEventFromGLsyncKHR
+#ForceProcAddressGen clIcdGetPlatformIDsKHR
+#ForceProcAddressGen clCreateSubBuffer
+#ForceProcAddressGen clCreateSubDevicesEXT
+#ForceProcAddressGen clCreateUserEvent
+#ForceProcAddressGen clEnqueueCopyBufferRect
+#ForceProcAddressGen clEnqueueReadBufferRect
+#ForceProcAddressGen clEnqueueWriteBufferRect
+#ForceProcAddressGen clReleaseDeviceEXT
+#ForceProcAddressGen clRetainDeviceEXT
+#ForceProcAddressGen clSetUserEventStatus
+
+#...or force all
+ForceProcAddressGen __ALL__
+
+#
+# extern CL_API_ENTRY void * CL_API_CALL clGetExtensionFunctionAddress(const char * /* func_name */) CL_API_SUFFIX__VERSION_1_0;
+#
+Ignore clGetExtensionFunctionAddress
+ForceProcAddressGen clGetExtensionFunctionAddress
+
+#append to generated c files
+CustomCCode #include <CL/cl.h>
+CustomCCode #include <CL/cl_ext.h>
+CustomCCode #include <CL/cl_gl.h>
+CustomCCode #include <GL3/gl3.h>
+CustomCCode #include <inttypes.h>
+
+# implement manually via custom code
+Ignore clCreateContext
+ForceProcAddressGen clCreateContext
+
+Ignore clCreateContextFromType
+ForceProcAddressGen clCreateContextFromType
+
+Ignore clBuildProgram
+ForceProcAddressGen clBuildProgram
+
+Ignore clEnqueueNativeKernel
+ForceProcAddressGen clEnqueueNativeKernel
+
+Ignore clReleaseContext
+ForceProcAddressGen clReleaseContext
+
+Ignore clSetEventCallback
+ForceProcAddressGen clSetEventCallback
+
+Ignore clSetMemObjectDestructorCallback
+ForceProcAddressGen clSetMemObjectDestructorCallback
+
+#take buffer capacity from input param 5
+ReturnValueCapacity clEnqueueMapBuffer {5}
+
+#this one is more complicated, we have to calculate the capacity with custom code
+ManuallyImplement clEnqueueMapImage
+ForceProcAddressGen clEnqueueMapImage
+
+#include custom code
+IncludeAs CustomJavaCode CLAbstractImpl clImplCustomCode.java
+IncludeAs CustomCCode clImplCustomCode.c
+