summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-libs/ocl-icd/Manifest2
-rw-r--r--dev-libs/ocl-icd/files/ocl-icd-2.3.0-new-headers.patch94
-rw-r--r--dev-libs/ocl-icd/ocl-icd-2.3.0-r10.ebuild (renamed from dev-libs/ocl-icd/ocl-icd-2.2.14-r10.ebuild)10
3 files changed, 104 insertions, 2 deletions
diff --git a/dev-libs/ocl-icd/Manifest b/dev-libs/ocl-icd/Manifest
index 8b40bf4c..80ea1001 100644
--- a/dev-libs/ocl-icd/Manifest
+++ b/dev-libs/ocl-icd/Manifest
@@ -1 +1 @@
-DIST ocl-icd-2.2.14.tar.gz 100629 BLAKE2B 4862560541c979edb06d89f7f57b78a34c02e38843c02b0f125a121649cd6a33570e29c86fe7d3fd6f0fa3d489831777100daef97264e32b82854384075cbbf2 SHA512 78510b6fa4e2c6a52141a51ccf0d0ef3110b0b4902a43bb97f7622ff0ce470b108dc05c9619c28ce8758ccea1e1cf6b2e7f1a296f8b07f52532f23b2b036a5cf
+DIST ocl-icd-2.3.0.tar.gz 100848 BLAKE2B b9e5b78df63f4865bb4cb3623fbc6bd336c86b4a9e1f23a29fab1cf11f848cb20d6d8d4a480ff44e442b02d606247a923798143058256ef59c2b16c9daf7098d SHA512 003f3661b7086a7364e79d1058591f12a7095aa2c3decfc4b496f00a0863a91cd81080f33b9308e3948045f8aca5856868ed2725f478654230e51a60d654e613
diff --git a/dev-libs/ocl-icd/files/ocl-icd-2.3.0-new-headers.patch b/dev-libs/ocl-icd/files/ocl-icd-2.3.0-new-headers.patch
new file mode 100644
index 00000000..aa35c96c
--- /dev/null
+++ b/dev-libs/ocl-icd/files/ocl-icd-2.3.0-new-headers.patch
@@ -0,0 +1,94 @@
+From aed1832c81c0971ea001e12d41e04df834257f94 Mon Sep 17 00:00:00 2001
+From: Brice Videau <bvideau@anl.gov>
+Date: Wed, 12 May 2021 10:24:44 -0500
+Subject: [PATCH] Updated to support latest Khronos headers.
+
+---
+ icd_generator.rb | 4 +-
+ khronos-headers/CL/cl.h | 46 +--
+ khronos-headers/CL/cl_d3d10.h | 12 +-
+ khronos-headers/CL/cl_d3d11.h | 12 +-
+ khronos-headers/CL/cl_dx9_media_sharing.h | 32 +-
+ khronos-headers/CL/cl_egl.h | 8 +-
+ khronos-headers/CL/cl_ext.h | 228 +++++++++----
+ khronos-headers/CL/cl_gl.h | 22 +-
+ khronos-headers/CL/cl_gl_ext.h | 26 +-
+ khronos-headers/CL/cl_icd.h | 316 +++++++++---------
+ khronos-headers/CL/cl_layer.h | 4 +-
+ khronos-headers/CL/cl_platform.h | 125 ++++---
+ .../CL/cl_va_api_media_sharing_intel.h | 24 +-
+ khronos-headers/CL/opencl.h | 3 +-
+ ocl_interface.yaml | 10 +-
+ run_dummy_icd.c | 1 -
+ 16 files changed, 484 insertions(+), 389 deletions(-)
+
+diff --git a/icd_generator.rb b/icd_generator.rb
+index bb0f2e9..ed4217f 100644
+--- a/icd_generator.rb
++++ b/icd_generator.rb
+@@ -57,7 +57,7 @@ module IcdGenerator
+ "clGetGLContextInfoKHR", "clUnloadCompiler",
+ "clCreateContext", "clCreateContextFromType", "clWaitForEvents"]
+ $header_files = ["/usr/include/CL/cl.h", "/usr/include/CL/cl_gl.h", "/usr/include/CL/cl_egl.h",
+- "/usr/include/CL/cl_ext.h", "/usr/include/CL/cl_gl_ext.h"]
++ "/usr/include/CL/cl_ext.h"]
+ $windows_header_files = ["/usr/include/CL/cl_dx9_media_sharing.h", "/usr/include/CL/cl_d3d11.h", "/usr/include/CL/cl_d3d10.h"]
+ $cl_data_type_error = { "cl_platform_id" => "CL_INVALID_PLATFORM",
+ "cl_device_id" => "CL_INVALID_DEVICE",
+@@ -246,7 +246,7 @@ def self.generate_run_dummy_icd_source
+ run_dummy_icd += "\n\n"
+ $api_entries.each_key { |func_name|
+ next if $forbidden_funcs.include?(func_name)
+- run_dummy_icd += $api_entries[func_name]+";\n"
++ run_dummy_icd += $api_entries[func_name]+"\n"
+ }
+ run_dummy_icd += "\n\n"
+ run_dummy_icd += "void call_all_OpenCL_functions(cl_platform_id chosen_platform) {\n"
+diff --git a/ocl_interface.yaml b/ocl_interface.yaml
+index 1e80f16..43a0e59 100644
+--- a/ocl_interface.yaml
++++ b/ocl_interface.yaml
+@@ -674,18 +674,18 @@
+ const cl_device_partition_property_ext * /* properties */,
+ cl_uint /*num_entries*/,
+ cl_device_id * /*out_devices*/,
+- cl_uint * /*num_devices*/ ) CL_EXT_SUFFIX__VERSION_1_1;
++ cl_uint * /*num_devices*/ ) CL_API_SUFFIX__VERSION_1_1;
+ 90: |-
+ CL_API_ENTRY cl_int CL_API_CALL
+- clRetainDeviceEXT( cl_device_id /*device*/ ) CL_EXT_SUFFIX__VERSION_1_1;
++ clRetainDeviceEXT( cl_device_id /*device*/ ) CL_API_SUFFIX__VERSION_1_1;
+ 91: |-
+ CL_API_ENTRY cl_int CL_API_CALL
+- clReleaseDeviceEXT( cl_device_id /*device*/ ) CL_EXT_SUFFIX__VERSION_1_1;
++ clReleaseDeviceEXT( cl_device_id /*device*/ ) CL_API_SUFFIX__VERSION_1_1;
+ 92: |-
+ CL_API_ENTRY cl_event CL_API_CALL
+ clCreateEventFromGLsyncKHR(cl_context /* context */,
+ cl_GLsync /* cl_GLsync */,
+- cl_int * /* errcode_ret */) CL_EXT_SUFFIX__VERSION_1_1;
++ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1;
+ 93: |-
+ CL_API_ENTRY cl_int CL_API_CALL
+ clCreateSubDevices(cl_device_id /* in_device */,
+@@ -1016,7 +1016,7 @@
+ const void * /*input_value*/,
+ size_t /*param_value_size*/,
+ void* /*param_value*/,
+- size_t* /*param_value_size_ret*/ ) CL_EXT_SUFFIX__VERSION_2_0;
++ size_t* /*param_value_size_ret*/ ) CL_API_SUFFIX__VERSION_2_0;
+ 137: |-
+ CL_API_ENTRY cl_kernel CL_API_CALL
+ clCloneKernel(cl_kernel /* source_kernel */,
+diff --git a/run_dummy_icd.c b/run_dummy_icd.c
+index 400c1b0..c064b19 100644
+--- a/run_dummy_icd.c
++++ b/run_dummy_icd.c
+@@ -39,7 +39,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ # include <CL/cl_gl.h>
+ # include <CL/cl_egl.h>
+ # include <CL/cl_ext.h>
+-# include <CL/cl_gl_ext.h>
+ #pragma GCC diagnostic pop
+ #include <string.h>
+ #include "ocl_icd_debug.h"
diff --git a/dev-libs/ocl-icd/ocl-icd-2.2.14-r10.ebuild b/dev-libs/ocl-icd/ocl-icd-2.3.0-r10.ebuild
index e4d747fa..96e257fb 100644
--- a/dev-libs/ocl-icd/ocl-icd-2.2.14-r10.ebuild
+++ b/dev-libs/ocl-icd/ocl-icd-2.3.0-r10.ebuild
@@ -18,11 +18,15 @@ IUSE="+khronos-headers"
BDEPEND="dev-lang/ruby:2.5
virtual/rubygems"
-DEPEND=">=dev-util/opencl-headers-2020.12.18"
+DEPEND=">=dev-util/opencl-headers-2021.04.29"
RDEPEND="${DEPEND}
!app-eselect/eselect-opencl
!dev-libs/opencl-icd-loader"
+PATCHES=(
+ "${FILESDIR}"/${P}-new-headers.patch
+)
+
src_prepare() {
replace-flags -Os -O2 # bug 646122
@@ -36,6 +40,10 @@ multilib_src_configure() {
ECONF_SOURCE="${S}" econf --enable-pthread-once --disable-official-khronos-headers
}
+multilib_src_compile() {
+ emake RUBY="$(type -P ruby25)"
+}
+
multilib_src_install() {
default