Message ID | 20220116175320.453041-1-gilles.talis@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [1/2] package/opencl-clhpp: new package | expand |
Hello Gilles, Le 16/01/2022 à 18:53, Gilles Talis a écrit : > opencl-clhpp are the OpenCL API C++ bindings > > Signed-off-by: Gilles Talis <gilles.talis@gmail.com> > --- > DEVELOPERS | 1 + > package/Config.in | 1 + > package/opencl-clhpp/Config.in | 10 ++++++++++ > package/opencl-clhpp/opencl-clhpp.hash | 3 +++ > package/opencl-clhpp/opencl-clhpp.mk | 16 ++++++++++++++++ > 5 files changed, 31 insertions(+) > create mode 100644 package/opencl-clhpp/Config.in > create mode 100644 package/opencl-clhpp/opencl-clhpp.hash > create mode 100644 package/opencl-clhpp/opencl-clhpp.mk > > diff --git a/DEVELOPERS b/DEVELOPERS > index a91e2dfcde..483afa4932 100644 > --- a/DEVELOPERS > +++ b/DEVELOPERS > @@ -1084,6 +1084,7 @@ F: package/libeXosip2/ > F: package/libolm/ > F: package/libosip2/ > F: package/ocrad/ > +F: package/opencl-clhpp/ > F: package/opusfile/ > F: package/restclient-cpp/ > F: package/tesseract-ocr/ > diff --git a/package/Config.in b/package/Config.in > index 4df1474b91..08eb3ad809 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -1564,6 +1564,7 @@ menu "Graphics" > source "package/libvips/Config.in" > source "package/libwpe/Config.in" > source "package/menu-cache/Config.in" > + source "package/opencl-clhpp/Config.in" Is opencl headers should really belong to "Graphics" library menu? maybe "Hardware handling" or in last resort "other"? > source "package/opencv3/Config.in" > source "package/opencv4/Config.in" > source "package/opengl/Config.in" > diff --git a/package/opencl-clhpp/Config.in b/package/opencl-clhpp/Config.in > new file mode 100644 > index 0000000000..12045be055 > --- /dev/null > +++ b/package/opencl-clhpp/Config.in > @@ -0,0 +1,10 @@ > +config BR2_PACKAGE_OPENCL_CLHPP > + bool "opencl-clhpp" > + depends on BR2_INSTALL_LIBSTDCPP The CMake build system requires a C++11 compiler, so a gcc 4.8 or newer is required. > + help > + opencl-clhpp are the OpenCL API C++ bindings > + > + http://github.khronos.org/OpenCL-CLHPP/ > + > +comment "opencl-clhpp needs a toolchain w/ C++" > + depends on !BR2_INSTALL_LIBSTDCPP > diff --git a/package/opencl-clhpp/opencl-clhpp.hash b/package/opencl-clhpp/opencl-clhpp.hash > new file mode 100644 > index 0000000000..27b27cd80c > --- /dev/null > +++ b/package/opencl-clhpp/opencl-clhpp.hash > @@ -0,0 +1,3 @@ > +# Locally Computed > +sha256 869456032e60787eed9fceaeaf6c6cb4452bc0ff97e0f5a271510145a1c8f4d4 opencl-clhpp-2.0.16.tar.gz > +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt > diff --git a/package/opencl-clhpp/opencl-clhpp.mk b/package/opencl-clhpp/opencl-clhpp.mk > new file mode 100644 > index 0000000000..610cd45b62 > --- /dev/null > +++ b/package/opencl-clhpp/opencl-clhpp.mk > @@ -0,0 +1,16 @@ > +################################################################################ > +# > +# opencl-clhpp > +# > +################################################################################ > + > +OPENCL_CLHPP_VERSION = 2.0.16 > +OPENCL_CLHPP_SITE = $(call github,KhronosGroup,OpenCL-CLHPP,v$(OPENCL_CLHPP_VERSION)) > +OPENCL_CLHPP_LICENSE = Apache-2.0 > +OPENCL_CLHPP_LICENSE_FILES = LICENSE.txt > +OPENCL_CLHPP_INSTALL_STAGING = YES > + > +# OpenCL_CLHPP is a header-only library > +OPENCL_CLHPP_INSTALL_TARGET = NO > + > +$(eval $(cmake-package)) Since we only build two headers files, is the cmake infra really required? Install the project... -- Install configuration: "Release" -- Installing: output/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/CL -- Installing: output/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/CL/opencl.hpp -- Installing: output/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/CL/cl2.hpp Best regards, Romain
Hello Gilles, On Sun, 16 Jan 2022 18:53:19 +0100 Gilles Talis <gilles.talis@gmail.com> wrote: > diff --git a/package/opencl-clhpp/Config.in b/package/opencl-clhpp/Config.in > new file mode 100644 > index 0000000000..12045be055 > --- /dev/null > +++ b/package/opencl-clhpp/Config.in > @@ -0,0 +1,10 @@ > +config BR2_PACKAGE_OPENCL_CLHPP > + bool "opencl-clhpp" > + depends on BR2_INSTALL_LIBSTDCPP I've added a dependency on BR2_PACKAGE_HAS_LIBOPENCL here. While it is not needed for this package to build (because it now only install headers), all users of opencl-clhpp will need to have this dependency. > diff --git a/package/opencl-clhpp/opencl-clhpp.hash b/package/opencl-clhpp/opencl-clhpp.hash > new file mode 100644 > index 0000000000..27b27cd80c > --- /dev/null > +++ b/package/opencl-clhpp/opencl-clhpp.hash > @@ -0,0 +1,3 @@ > +# Locally Computed > +sha256 869456032e60787eed9fceaeaf6c6cb4452bc0ff97e0f5a271510145a1c8f4d4 opencl-clhpp-2.0.16.tar.gz > +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt > diff --git a/package/opencl-clhpp/opencl-clhpp.mk b/package/opencl-clhpp/opencl-clhpp.mk > new file mode 100644 > index 0000000000..610cd45b62 > --- /dev/null > +++ b/package/opencl-clhpp/opencl-clhpp.mk > @@ -0,0 +1,16 @@ > +################################################################################ > +# > +# opencl-clhpp > +# > +################################################################################ > + > +OPENCL_CLHPP_VERSION = 2.0.16 > +OPENCL_CLHPP_SITE = $(call github,KhronosGroup,OpenCL-CLHPP,v$(OPENCL_CLHPP_VERSION)) > +OPENCL_CLHPP_LICENSE = Apache-2.0 > +OPENCL_CLHPP_LICENSE_FILES = LICENSE.txt > +OPENCL_CLHPP_INSTALL_STAGING = YES > + > +# OpenCL_CLHPP is a header-only library > +OPENCL_CLHPP_INSTALL_TARGET = NO > + > +$(eval $(cmake-package)) As suggested by Romain, I have used generic-package and a simple OPENCL_CLHPP_INSTALL_STAGING_CMDS to just install the two headers to avoid the need for a C++11 compiler. Applied with those changes, thanks! Best regards, Thomas
diff --git a/DEVELOPERS b/DEVELOPERS index a91e2dfcde..483afa4932 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1084,6 +1084,7 @@ F: package/libeXosip2/ F: package/libolm/ F: package/libosip2/ F: package/ocrad/ +F: package/opencl-clhpp/ F: package/opusfile/ F: package/restclient-cpp/ F: package/tesseract-ocr/ diff --git a/package/Config.in b/package/Config.in index 4df1474b91..08eb3ad809 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1564,6 +1564,7 @@ menu "Graphics" source "package/libvips/Config.in" source "package/libwpe/Config.in" source "package/menu-cache/Config.in" + source "package/opencl-clhpp/Config.in" source "package/opencv3/Config.in" source "package/opencv4/Config.in" source "package/opengl/Config.in" diff --git a/package/opencl-clhpp/Config.in b/package/opencl-clhpp/Config.in new file mode 100644 index 0000000000..12045be055 --- /dev/null +++ b/package/opencl-clhpp/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_OPENCL_CLHPP + bool "opencl-clhpp" + depends on BR2_INSTALL_LIBSTDCPP + help + opencl-clhpp are the OpenCL API C++ bindings + + http://github.khronos.org/OpenCL-CLHPP/ + +comment "opencl-clhpp needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/opencl-clhpp/opencl-clhpp.hash b/package/opencl-clhpp/opencl-clhpp.hash new file mode 100644 index 0000000000..27b27cd80c --- /dev/null +++ b/package/opencl-clhpp/opencl-clhpp.hash @@ -0,0 +1,3 @@ +# Locally Computed +sha256 869456032e60787eed9fceaeaf6c6cb4452bc0ff97e0f5a271510145a1c8f4d4 opencl-clhpp-2.0.16.tar.gz +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt diff --git a/package/opencl-clhpp/opencl-clhpp.mk b/package/opencl-clhpp/opencl-clhpp.mk new file mode 100644 index 0000000000..610cd45b62 --- /dev/null +++ b/package/opencl-clhpp/opencl-clhpp.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# opencl-clhpp +# +################################################################################ + +OPENCL_CLHPP_VERSION = 2.0.16 +OPENCL_CLHPP_SITE = $(call github,KhronosGroup,OpenCL-CLHPP,v$(OPENCL_CLHPP_VERSION)) +OPENCL_CLHPP_LICENSE = Apache-2.0 +OPENCL_CLHPP_LICENSE_FILES = LICENSE.txt +OPENCL_CLHPP_INSTALL_STAGING = YES + +# OpenCL_CLHPP is a header-only library +OPENCL_CLHPP_INSTALL_TARGET = NO + +$(eval $(cmake-package))
opencl-clhpp are the OpenCL API C++ bindings Signed-off-by: Gilles Talis <gilles.talis@gmail.com> --- DEVELOPERS | 1 + package/Config.in | 1 + package/opencl-clhpp/Config.in | 10 ++++++++++ package/opencl-clhpp/opencl-clhpp.hash | 3 +++ package/opencl-clhpp/opencl-clhpp.mk | 16 ++++++++++++++++ 5 files changed, 31 insertions(+) create mode 100644 package/opencl-clhpp/Config.in create mode 100644 package/opencl-clhpp/opencl-clhpp.hash create mode 100644 package/opencl-clhpp/opencl-clhpp.mk