summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Natalie <jenatali@microsoft.com>2020-11-19 08:47:02 -0800
committerJesse Natalie <jenatali@microsoft.com>2020-12-02 10:13:34 -0800
commitb1224143aa0f8daf0e62d44a8f2fde8080c654cf (patch)
tree587ccb945c8b831dafda50d47843d5365dc62269
parent474baa04eda3b2bba3bf10c121ae98a7137dc128 (diff)
clover: Use .def files for exports on Windows
v2: Move .def files to opencl target Reviewed-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Francisco Jerez <currojerez@riseup.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7680>
-rw-r--r--src/gallium/targets/opencl/MesaOpenCL.def5
-rw-r--r--src/gallium/targets/opencl/OpenCL.def124
-rw-r--r--src/gallium/targets/opencl/meson.build3
3 files changed, 132 insertions, 0 deletions
diff --git a/src/gallium/targets/opencl/MesaOpenCL.def b/src/gallium/targets/opencl/MesaOpenCL.def
new file mode 100644
index 00000000000..f8b3de18785
--- /dev/null
+++ b/src/gallium/targets/opencl/MesaOpenCL.def
@@ -0,0 +1,5 @@
+EXPORTS
+clGetPlatformInfo
+clGetExtensionFunctionAddress
+clGetExtensionFunctionAddressForPlatform
+clIcdGetPlatformIDsKHR \ No newline at end of file
diff --git a/src/gallium/targets/opencl/OpenCL.def b/src/gallium/targets/opencl/OpenCL.def
new file mode 100644
index 00000000000..bf40cd13287
--- /dev/null
+++ b/src/gallium/targets/opencl/OpenCL.def
@@ -0,0 +1,124 @@
+EXPORTS
+clBuildProgram
+clCreateBuffer
+clCreateCommandQueue
+clCreateContext
+clCreateContextFromType
+; clCreateFromGLBuffer
+; clCreateFromGLRenderbuffer
+; clCreateFromGLTexture2D
+; clCreateFromGLTexture3D
+clCreateImage2D
+clCreateImage3D
+clCreateKernel
+clCreateKernelsInProgram
+clCreateProgramWithBinary
+clCreateProgramWithSource
+clCreateSampler
+; clEnqueueAcquireGLObjects
+clEnqueueBarrier
+clEnqueueCopyBuffer
+clEnqueueCopyBufferToImage
+clEnqueueCopyImage
+clEnqueueCopyImageToBuffer
+clEnqueueMapBuffer
+clEnqueueMapImage
+clEnqueueMarker
+clEnqueueNDRangeKernel
+clEnqueueNativeKernel
+clEnqueueReadBuffer
+clEnqueueReadImage
+; clEnqueueReleaseGLObjects
+clEnqueueTask
+clEnqueueUnmapMemObject
+clEnqueueWaitForEvents
+clEnqueueWriteBuffer
+clEnqueueWriteImage
+clFinish
+clFlush
+clGetCommandQueueInfo
+clGetContextInfo
+clGetDeviceIDs
+clGetDeviceInfo
+clGetEventInfo
+clGetEventProfilingInfo
+clGetExtensionFunctionAddress
+; clGetGLObjectInfo
+; clGetGLTextureInfo
+clGetImageInfo
+clGetKernelInfo
+clGetKernelWorkGroupInfo
+clGetMemObjectInfo
+clGetPlatformIDs
+clGetPlatformInfo
+clGetProgramBuildInfo
+clGetProgramInfo
+clGetSamplerInfo
+clGetSupportedImageFormats
+clReleaseCommandQueue
+clReleaseContext
+clReleaseEvent
+clReleaseKernel
+clReleaseMemObject
+clReleaseProgram
+clReleaseSampler
+clRetainCommandQueue
+clRetainContext
+clRetainEvent
+clRetainKernel
+clRetainMemObject
+clRetainProgram
+clRetainSampler
+; clSetCommandQueueProperty
+clSetKernelArg
+clUnloadCompiler
+clWaitForEvents
+clCreateSubBuffer
+clCreateUserEvent
+clEnqueueCopyBufferRect
+clEnqueueReadBufferRect
+clEnqueueWriteBufferRect
+clSetEventCallback
+clSetMemObjectDestructorCallback
+clSetUserEventStatus
+clCompileProgram
+; clCreateFromGLTexture
+clCreateImage
+clCreateProgramWithBuiltInKernels
+clCreateSubDevices
+clEnqueueBarrierWithWaitList
+clEnqueueFillBuffer
+clEnqueueFillImage
+clEnqueueMarkerWithWaitList
+clEnqueueMigrateMemObjects
+clGetExtensionFunctionAddressForPlatform
+clGetKernelArgInfo
+clLinkProgram
+clReleaseDevice
+clRetainDevice
+clUnloadPlatformCompiler
+clCreateCommandQueueWithProperties
+clCreatePipe
+; clCreateSamplerWithProperties
+clEnqueueSVMFree
+clEnqueueSVMMap
+clEnqueueSVMMemcpy
+clEnqueueSVMMemFill
+clEnqueueSVMUnmap
+clGetPipeInfo
+clSetKernelArgSVMPointer
+clSetKernelExecInfo
+clSVMAlloc
+clSVMFree
+; clCloneKernel
+clCreateProgramWithIL
+clEnqueueSVMMigrateMem
+clGetDeviceAndHostTimer
+clGetHostTimer
+clGetKernelSubGroupInfo
+clSetDefaultDeviceCommandQueue
+clSetProgramReleaseCallback
+clSetProgramSpecializationConstant
+clCreateBufferWithProperties
+clCreateImageWithProperties
+clSetContextDestructorCallback
diff --git a/src/gallium/targets/opencl/meson.build b/src/gallium/targets/opencl/meson.build
index 243f66e3497..b77826b6e1e 100644
--- a/src/gallium/targets/opencl/meson.build
+++ b/src/gallium/targets/opencl/meson.build
@@ -93,9 +93,12 @@ else
dep_version = null_dep
endif
+ocldef = files(opencl_libname + '.def')[0]
+
libopencl = shared_library(
opencl_libname,
[],
+ vs_module_defs : ocldef,
link_args : [ld_args_gc_sections, opencl_link_args],
link_depends : opencl_link_deps,
link_whole : libclover,