Commit Graph

60 Commits

Author SHA1 Message Date
Dmitry Baryshkov a59aa4b34d opencl-icd-loader: upgrade 2024.05.08 -> 2025.07.22
Synchronize with OpenCL v3.0.19 specification.

Note, the library version went backwards, from 1.2 to 1.0.0.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-10-24 09:06:24 -07:00
Dmitry Baryshkov f71c0f655a opencl-cts: build GL, GL ES and Vulkan interoperability tests
Follow DISTRO_FEATURES and build optional GL, GL ES and Vulkan
interoperability tests.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-28 23:16:44 -07:00
Dmitry Baryshkov 596e74fc68 opencl-cts: build SPIR-V files for the spirv-new test
Pull in spirv-tools-native package in order to build SPIR-V files for
the spirv-new test.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-28 23:16:44 -07:00
Dmitry Baryshkov f65ae714d8 opencl: make use of the 'opencl' DISTRO_FEATURE
Currently packages like Mesa list 'opengl' and 'vulkan' as required
DISTRO_FEATURES, disabling GPU support for non-graphics-enabled cases.
However in the modern world it's a perfectly fine usecase to have a
headless box with GPU being used by OpenCL only. The OE-Core has added
the 'opencl' DISTRO_FEATURE, making it possible to specify whether
OpenCL is enabled or not and also making it possible to enable GPU
packages if only OpenCL is required.

Follow the example of GLVND and vulkan-loader and disable OpenCL ICD
packages if corresponding feature is not enabled.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-17 20:07:03 -07:00
Dmitry Baryshkov 97b28934e8 opencl-icd-loader: pull in ICD packages
Make the OpenCL ICD loader RRECOMMEND the virtual ICD (Installable
Client Driver) package, making sure that the BSP can define the most
suitable OpenCL driver.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-17 20:07:03 -07:00
Dmitry Baryshkov 85a3ac2b9d opencl-cts: depend on virtual/libopencl1 instead of opencl-icd-loader
Make OpenCL CTS package depend on the OpenCL virtual package rather than
the exact implementation.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-17 20:07:03 -07:00
Dmitry Baryshkov 87b44d29b6 opencl: rename virtual/opencl-icd to virtual/libopencl1
The ocl-icd and opencl-icd-loader provide libOpenCL.so.1 rather than the
OpenCL Installable Client Driver (ICD). Rename the virtual package
accordingly.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-17 20:07:03 -07:00
Dmitry Baryshkov 6547930f24 ocl-icd, opencl-icd-loader: drop RPROVIDES for virtual-opencl-icd
These two packages don't provide ICD drivers at runtime. They provide
the libOpenCL.so.1. Corresponding package is selected at the build time
via the PROVIDES_virtual/opencl-icd. Drop the useless and incorrect
RPROVIDES for virtual-opencl-icd.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-09-17 20:07:03 -07:00
Dmitry Baryshkov a9d764744f opencl-cts: update to release 2025-04-14
Update OpenCL CTS to the latest release.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-07-29 12:22:46 -07:00
Dmitry Baryshkov 822fcd0bd6 opencl-{headers,clhpp}: update to release 2025.07.22
Synchronize with OpenCL v3.0.19 specification release.

Also patch OpenCL CTS in order to prevent its breakage with the updated
headers.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-07-29 12:22:45 -07:00
Markus Volk ad358c31a4 opencl-icd-loader: allow to build with cmake 4
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-07-10 10:46:23 -07:00
Wang Mingyu 073511a2f7 clpeak: upgrade 1.1.4 -> 1.1.5
Changelog:
===========
- Use _aligned_malloc in Windows/MSVC builds
- Add option to force number of iteration per kernel

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-06-26 07:24:00 -07:00
Alexander Kanavin fc78d37ff0 meta-openembedded/all: adapt to UNPACKDIR changes
Please see
https://git.yoctoproject.org/poky/commit/?id=4dd321f8b83afecd962393101b2a6861275b5265
for what changes are needed, and sed commands that can be used to make them en masse.

I've verified that bitbake -c patch world works with these, but did not run a world
build; the majority of recipes shouldn't need further fixups, but if there are
some that still fall out, they can be fixed in followups.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-06-25 06:44:52 -07:00
Dmitry Baryshkov 7713dff203 opencl-cts: upgrade to 2025.01.22
Upgrade OpenCL CTS to the latest release.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-04-10 17:28:56 -07:00
Dmitry Baryshkov 1408acac54 opencl-headers: backport patch from trunk
Latest OpenCL CTS is released after the latest OpenCL Headers and uses a
symbol which is not defined in the release. Backport a patch to make
OpenCL CTS compile.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-04-10 17:28:56 -07:00
Dmitry Baryshkov ce5320aed3 opencl-headers: upgrade to 2024.10.24
Upgrade OpenCL-Headers to the latest release. Upgrade opencl-clhpp with
the same commit so that they stay in sync, otherwise projects using
clhpp might fail to build.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-04-10 17:28:56 -07:00
Peter Kjellerstedt 923a5dcee7 opencl-clhpp: Update to 2024.05.08
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-03-29 08:24:01 -07:00
Peter Kjellerstedt 48a37e6c3b opencl-headers: Install development files
This installs cmake and pkgconfig files so that other recipes can find
the header files.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-03-29 08:24:01 -07:00
Randolph Sapp 3ff6af6720 clpeak: add version 1.1.4
As of right now there are no applications available for benchmarking
OpenCL. Clpeak is a simple synthetic benchmark for OpenCL that is
designed to determine the peak capabilities of OpenCL devices.

It's currently one of the more popular CL benchmarks supported by
OpenBenchmarking.org and licensed Apache-2.0.

Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-02-27 19:53:37 -08:00
Khem Raj 1c06238fc0 opencl-cts: Disable for RISCV architectures
Its not yet ported to RISCV architecure

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-01-29 17:43:03 -08:00
Antonios Christidis 2183c03811 opencl-cts: Add recipe
This recipe provides the opecl-cts suite.  This is a pre-release version
v2024-08-08, which I have tested to work with opencl-headers version v2024.05.08
. The pre-release version was picked due to incompatibility issues with other
versions of headers.

Add a patch to add an option to disable warning as error

Signed-off-by: Antonios Christidis <a-christidis@ti.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-01-29 17:43:03 -08:00
Randolph Sapp b011e934bd opencl-clhpp: add native and nativesdk
This is a header only package. It may be useful to the native machine
but it is definitely useful for the nativesdk machine.

Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-07-14 12:06:21 -07:00
Wang Mingyu d058868617 opencl-icd-loader: upgrade 2023.12.14 -> 2024.05.08
Changelog:
 Synchronize with OpenCL v3.0.16 specification release.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-05-19 08:27:54 -07:00
Wang Mingyu 4519790c0f opencl-headers: upgrade 2023.12.14 -> 2024.05.08
Changelog:
  Synchronize with OpenCL v3.0.16 specification release.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-05-19 08:27:54 -07:00
Martin Jansa 21f956598d recipes: drop ${SRCPV} usage
* Drop SRCPV similarly like oe-core did in:
  https://git.openembedded.org/openembedded-core/commit/?h=nanbield&id=843f82a246a535c353e08072f252d1dc78217872

* SRCPV is deferred now from PV to PKGV since:
  https://git.openembedded.org/openembedded-core/commit/?h=nanbield&id=a8e7b0f932b9ea69b3a218fca18041676c65aba0

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
2024-02-09 09:52:12 -08:00
Khem Raj 4dbbef7a39 opencl-icd: Rename rdepends to virtual-opencl-icd
This helps in fending off the build time QA error

WARNING: /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-core/opencl/opencl-icd-loader_2023.12.14.bb: RPROVIDES is set to v
irtual/opencl-icd, the substring 'virtual/' holds no meaning in this context. It is suggested to use the 'virtual-' instead.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Zoltán Böszörményi <zboszor@gmail.com>
2024-01-18 18:09:53 -08:00
Wang Mingyu 0fdda9232f opencl-icd-loader: upgrade 2023.04.17 -> 2023.12.14
Changelog:
Synchronize with OpenCL v3.0.15 specification release.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-12-29 09:04:20 -08:00
Wang Mingyu fb8f7ffddf opencl-headers: upgrade 2023.04.17 -> 2023.12.14
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-12-29 09:04:18 -08:00
alperak 259491990a opencl-icd-loader: upgrade v2022.01.04 -> v2023.04.17
Changelog:

- Synchronize with OpenCL v3.0.14 specification release.

Signed-off-by: alperak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-11-17 11:38:25 -08:00
alperak a0beb82729 ocl-icd: upgrade 2.3.1 -> 2.3.2
Changelog:

- Add support for system layers
- Implement published clGetICDLoaderInfoOCLICD extension
- Define CL_NO_NON_DISPATCH_EXTENSION_PROTOTYPES for compatibility with recent headers
- Updated OpenCL Headers ot 2023.04.17
- Remove use of __builtin_expect in layer dispatch
- Updated pkg-config to depend on OpenCL-Headers.pc
- Add cllayerinfo tool

Signed-off-by: alperak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-11-17 11:38:24 -08:00
Khem Raj 5b8e91c07e opencl-headers: upgrade 04.17 -> 2023.04.17
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-11-05 22:27:14 -08:00
Wang Mingyu da6d2e4141 opencl-headers: upgrade 2023.02.06 -> 2023.04.17
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-04-23 21:55:52 -07:00
Wang Mingyu 604f3a3075 opencl-headers: upgrade 2022.09.30 -> 2023.02.06
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-03-23 21:46:12 -07:00
Zoltán Böszörményi 812f7795c3 ocl-icd: Add PROVIDES and RPROVIDES for virtual/opencl-icd
Some programs dlopen libOpenCL.so.1, they use RDEPENDS.
This will allow selecting between ocl-icd and opencl-icd-loader.

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-03-09 09:54:04 -08:00
Zoltán Böszörményi d774a272a0 opencl-icd-loader: Add RPROVIDES:${PN} = "virtual/opencl-icd"
Some programs dlopen libOpenCL.so.1, they use RDEPENDS.

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-03-09 09:54:04 -08:00
Naveen Saini 1bf977a512 opencl-headers: add native and nativesdk
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-11-16 16:25:55 -08:00
Wang Mingyu ee7e06f3aa opencl-headers: upgrade 2022.09.23 -> 2022.09.30
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-10-09 20:06:54 -07:00
wangmy f063ddc346 opencl-headers: upgrade 2022.05.18 -> 2022.09.23
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-09-27 10:04:35 -07:00
Naveen Saini 787f2581bc ocl-icd: add nativesdk support
It fixes missing unbuildable dependency 'nativesdk-ocl-icd' failure.

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-09-14 11:25:11 -07:00
Wang Mingyu 5216a2eef4 opencl-headers: upgrade 2022.01.04 -> 2022.05.18
Changelog:
Add cl_ext_image_from_buffer extension definition
(https://github.com/KhronosGroup/OpenCL-Headers/pull/196)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-05-24 08:39:45 -07:00
wangmy be76cc297f ocl-icd: upgrade 2.3.0 -> 2.3.1
Changelog:
==========
  Updated OpenCL Headers
  Add support for MacOS
  Add CI through GitHub Actions

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-04-13 19:21:41 -07:00
Daniel Gomez 33b294c8b2 opencl-clhpp: Update 2.0.15 -> 2.0.16
- Change branch name master -> main according to upstream repository.
- Update 2.0.15 -> 2.0.16. Changelog:

    1df82b9 Add param traits for CL_DEVICE_SUPPORTED_REGISTER_ALLOCATIONS_ARM (#165)
    814e7b2 update the C++ bindings code example (#151)
    6d833a5 Update opencl.hpp: Add CL_DEVICE_BOARD_NAME_AMD (#160)
    25ad589 Added missing definitions for deprecated prefixes and suffixes for version 2.2 (#159)
    21a34b0 Test two additional defines and update descriptions in header (#147)
    ff7318c Fix cl::enqueueMapSVM for cl::vector and cl::pointer (#145)
    30d4219 Test most of the possible defines (#140)
    63d9e41 Fix unreasonable error handling in opencl.hpp (#139)
    0198c41 Add support for cl_khr_integer_dot_product v2 (#141)
    8df6c8f Transition CI to Github Actions (#142)

Signed-off-by: Daniel Gomez <daniel@qtec.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-03-14 09:23:14 -07:00
Daniel Gomez 731546f048 opencl-headers: Update v2020.12.18 -> v2022.01.04
- Add PV to include package version + git revision.
- Add ALLOW_EMPTY to prevent error [1] when installing package in image.
- Change branch name master -> main according to upstream repository.

[1]: opencl-headers installation error:
E: Package 'opencl-headers' has no installation candidate

Signed-off-by: Daniel Gomez <daniel@qtec.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-03-14 09:23:14 -07:00
Daniel Gomez b6b3fa54ec opencl-icd-loader: Update 2020.12.18 -> v2022.01.04
- Fix recipe style WARNINGS from oe-stylize.

    ./contrib/oe-stylize.py
    meta-oe/recipes-core/opencl/opencl-icd-loader_git.bb

    Reminder:  Tabs should not be used (use spaces instead)  in : '
    ${bindir}/icd_loader_test \ '

    Reminder:  The correct spacing for a variable is FOO = "BAR"
    in : '
    SUMMARY  = "OpenCL ICD Loader" '

- Fix missing lib for CL applications

    strace clinfo:
    openat(AT_FDCWD, "/usr/lib/libOpenCL.so.1", O_RDONLY|O_CLOEXEC) =
    -1 ENOENT (No such file or directory)
    newfstatat(AT_FDCWD, "/usr/lib", {st_mode=S_IFDIR|0755, st_size=36864, ...}, 0) = 0
    writev(2, [{iov_base="clinfo", iov_len=6}, {iov_base=": ", iov_len=2},
    {iov_base="error while loading shared libra"..., iov_len=36},
    {iov_base=": ", iov_len=2}, {iov_base="libOpenCL.so.1", iov_len=14},
    {iov_base=": ", iov_len=2}, {iov_base="cannot open shared object file", iov_len=30},
    {iov_base=": ", iov_len=2}, {iov
    _base="No such file or directory", iov_len=25}, {iov_base="\n", iov_len=1}], 10
    clinfo: error while loading shared libraries: libOpenCL.so.1: cannot open shared
    object file: No such file or directory) = 120
    exit_group(127)                         = ?

- Change branch name master -> main according to upstream repository.

Signed-off-by: Daniel Gomez <daniel@qtec.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-03-14 09:23:14 -07:00
Richard Purdie b402a3076f recipes: Update SRC_URI branch and protocols
This patch updates SRC_URIs using git to include branch=master if no branch is set
and also to use protocol=https for github urls as generated by the conversion script
in OE-Core.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-03 06:57:49 -07:00
Martin Jansa c61dc077bb Convert to new override syntax
This is the result of automated script (0.9.1) conversion:

oe-core/scripts/contrib/convert-overrides.py .

converting the metadata to use ":" as the override character instead of "_".

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2021-08-03 10:21:25 -07:00
zangrc 1960e2a093 opencl-clhpp: upgrade 2.0.14 -> 2.0.15
Signed-off-by: Zang Ruochen <zangrc.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-07-13 09:39:15 -07:00
zangrc 9897b5d33e opencl-clhpp: upgrade 2.0.13 -> 2.0.14
Signed-off-by: Zang Ruochen <zangrc.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-11 08:48:26 -07:00
Naveen Saini f0d923503a ocl-icd: upgrade 2.2.14 -> 2.3.0
Release tag:
https://github.com/OCL-dev/ocl-icd/releases/tag/v2.3.0

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-04-15 09:28:43 -07:00
zangrc e40e42eaf2 opencl-clhpp: upgrade 2.0.12 -> 2.0.13
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-12-24 19:34:49 -08:00