summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorsL1pKn072020-03-13 21:59:40 +0100
committersL1pKn072020-03-13 22:00:21 +0100
commit74de94505d3ec0f27da2fcd2033d6d4f3f0deeef (patch)
tree1ddbaca592f4db20d8693c4b401fb907265261eb
parentb597341682ca745f6eeb9f84a1c3f76711eefb92 (diff)
downloadaur-74de94505d3ec0f27da2fcd2033d6d4f3f0deeef.tar.gz
bump
-rw-r--r--.SRCINFO2
-rw-r--r--47.diff265
-rw-r--r--PKGBUILD28
3 files changed, 290 insertions, 5 deletions
diff --git a/.SRCINFO b/.SRCINFO
index cdd605406cbb..b35c094ddf78 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -11,8 +11,10 @@ pkgbase = opencl-headers-git
conflicts = opencl-headers
source = git+https://github.com/KhronosGroup/OpenCL-Headers.git
source = git+https://github.com/KhronosGroup/OpenCL-CLHPP.git
+ source = 47.diff
sha256sums = SKIP
sha256sums = SKIP
+ sha256sums = d6e1dc689579cdb4508a3d40bab03eeb5d5c122a6fa615fcf25204ba9b0fb991
pkgname = opencl-headers-git
diff --git a/47.diff b/47.diff
new file mode 100644
index 000000000000..2955cbbce10c
--- /dev/null
+++ b/47.diff
@@ -0,0 +1,265 @@
+diff --git a/.travis/install.sh b/.travis/install.sh
+new file mode 100644
+index 0000000..5ee7683
+--- /dev/null
++++ b/.travis/install.sh
+@@ -0,0 +1,25 @@
++#!/bin/bash
++
++set -e
++set -x
++
++if [[ "$(uname -s)" == 'Darwin' ]]; then
++ brew update || brew update
++ brew outdated pyenv || brew upgrade pyenv
++ brew install pyenv-virtualenv
++ brew install cmake || brew upgrade cmake || true
++
++ if which pyenv > /dev/null; then
++ eval "$(pyenv init -)"
++ fi
++
++ pyenv install 3.7.1
++ pyenv virtualenv 3.7.1 conan
++ pyenv rehash
++ pyenv activate conan
++fi
++
++pip install conan --upgrade
++pip install conan_package_tools
++
++conan user
+\ No newline at end of file
+diff --git a/.travis/run.sh b/.travis/run.sh
+new file mode 100644
+index 0000000..0a3488e
+--- /dev/null
++++ b/.travis/run.sh
+@@ -0,0 +1,13 @@
++#!/bin/bash
++
++set -e
++set -x
++
++if [[ "$(uname -s)" == 'Darwin' ]]; then
++ if which pyenv > /dev/null; then
++ eval "$(pyenv init -)"
++ fi
++ pyenv activate conan
++fi
++
++python build.py
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+new file mode 100644
+index 0000000..512e536
+--- /dev/null
++++ b/CMakeLists.txt
+@@ -0,0 +1,43 @@
++cmake_minimum_required(VERSION 3.0)
++project(OpenCLHeaders VERSION 2.2 LANGUAGES NONE)
++
++add_library(OpenCLHeaders INTERFACE)
++add_library(OpenCL::OpenCLHeaders ALIAS OpenCLHeaders)
++target_include_directories(OpenCLHeaders INTERFACE
++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
++ $<INSTALL_INTERFACE:include>
++)
++
++install(TARGETS OpenCLHeaders EXPORT OpenCLHeadersTargets)
++install(DIRECTORY "CL" DESTINATION include)
++
++export(EXPORT OpenCLHeadersTargets
++ FILE "${PROJECT_BINARY_DIR}/OpenCLHeaders/OpenCLHeadersTargets.cmake"
++ NAMESPACE OpenCL::
++)
++file(WRITE "${PROJECT_BINARY_DIR}/OpenCLHeaders/OpenCLHeadersConfig.cmake"
++ "include(\"\${CMAKE_CURRENT_LIST_DIR}/OpenCLHeadersTargets.cmake\")"
++)
++
++set(config_package_location lib/cmake/OpenCLHeaders)
++install(EXPORT OpenCLHeadersTargets
++ FILE OpenCLHeadersTargets.cmake
++ NAMESPACE OpenCL::
++ DESTINATION ${config_package_location}
++)
++install(
++ FILES ${CMAKE_CURRENT_BINARY_DIR}/OpenCLHeaders/OpenCLHeadersConfig.cmake
++ DESTINATION ${config_package_location}
++)
++
++unset(CMAKE_SIZEOF_VOID_P)
++include(CMakePackageConfigHelpers)
++write_basic_package_version_file(
++ "${CMAKE_CURRENT_BINARY_DIR}/OpenCLHeaders/OpenCLHeadersConfigVersion.cmake"
++ VERSION ${PROJECT_VERSION}
++ COMPATIBILITY AnyNewerVersion
++)
++install(
++ FILES "${CMAKE_CURRENT_BINARY_DIR}/OpenCLHeaders/OpenCLHeadersConfigVersion.cmake"
++ DESTINATION ${config_package_location}
++)
+diff --git a/README.md b/README.md
+index 757e56e..a88843b 100644
+--- a/README.md
++++ b/README.md
+@@ -9,6 +9,27 @@ https://github.com/KhronosGroup/OpenCL-Headers
+ Issues, proposed fixes for issues, and other suggested changes should be
+ created using Github.
+
++## CMake Package
++While the headers may just be copied as-is, this repository also contains a
++CMake script with an install rule to allow for packaging the headers.
++
++```bash
++cmake -S . -B build -DCMAKE_INSTALL_PREFIX=/path/to/desired/prefix
++cmake --build build --target install
++```
++
++To consume the package:
++
++```bash
++cmake path/to/opencl/app -DOpenCLHeaders_ROOT=/chosen/install/prefix
++```
++
++```cmake
++add_executable(app main.cpp)
++find_package(OpenCLHeaders REQUIRED)
++target_link_libraries(app PRIVATE OpenCL::OpenCLHeaders)
++```
++
+ ## Branch Structure
+
+ The OpenCL API headers in this repository are Unified headers and are designed
+@@ -28,7 +49,7 @@ the OpenCL API version.
+ For example, to enforce usage of no more than the OpenCL 1.2 APIs, you may
+ include the OpenCL API headers as follows:
+
+-```
++```c
+ #define CL_TARGET_OPENCL_VERSION 120
+ #include <CL/opencl.h>
+ ```
+diff --git a/appveyor.yml b/appveyor.yml
+new file mode 100644
+index 0000000..560f9fc
+--- /dev/null
++++ b/appveyor.yml
+@@ -0,0 +1,17 @@
++build: false
++
++environment:
++ PYTHON: "C:\\Python37"
++
++ matrix:
++ - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
++ CONAN_VISUAL_VERSIONS: 12
++
++install:
++ - set PATH=%PYTHON_HOME%;%PYTHON_HOME%/Scripts/;%PATH%
++ - pip.exe install conan --upgrade
++ - pip.exe install conan_package_tools
++ - conan user # It creates the conan data directory
++
++test_script:
++ - python build.py
+diff --git a/build.py b/build.py
+new file mode 100644
+index 0000000..d535b23
+--- /dev/null
++++ b/build.py
+@@ -0,0 +1,11 @@
++from cpt.packager import ConanMultiPackager
++import datetime
++
++if __name__ == "__main__":
++ builder = ConanMultiPackager(
++ username="khronos",
++ login_username="khronos",
++ channel="stable"
++ )
++ builder.add_common_builds()
++ builder.run()
+diff --git a/conanfile.py b/conanfile.py
+new file mode 100644
+index 0000000..345e060
+--- /dev/null
++++ b/conanfile.py
+@@ -0,0 +1,23 @@
++from conans import ConanFile, tools, CMake
++import os
++
++
++class OpenCLHeadersConan(ConanFile):
++ name = "opencl-headers"
++ version = "20190502"
++ license = "Apache-2.0"
++ author = "Khronos Group <webmaster@khronos.org>"
++ url = "https://github.com/KhronosGroup/OpenCL-ICD-Loader"
++ description = "Khronos OpenCL Headers"
++ topics = ("khronos", "opencl", "headers")
++ exports_sources = "CMakeLists.txt", "CL/*"
++ no_copy_source = True
++
++ def build(self):
++ cmake = CMake(self)
++ cmake.configure()
++ cmake.build()
++ cmake.install()
++
++ def package_id(self):
++ self.info.header_only()
+\ No newline at end of file
+diff --git a/test_package/CMakeLists.txt b/test_package/CMakeLists.txt
+new file mode 100644
+index 0000000..5418842
+--- /dev/null
++++ b/test_package/CMakeLists.txt
+@@ -0,0 +1,10 @@
++cmake_minimum_required(VERSION 3.0)
++project(PackageTest C)
++
++include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
++conan_basic_setup()
++
++find_package(OpenCLHeaders REQUIRED)
++
++add_executable(example example.c)
++target_link_libraries(example OpenCL::OpenCLHeaders)
+diff --git a/test_package/conanfile.py b/test_package/conanfile.py
+new file mode 100644
+index 0000000..c3341f9
+--- /dev/null
++++ b/test_package/conanfile.py
+@@ -0,0 +1,17 @@
++import os
++from conans import ConanFile, CMake, tools
++
++
++class OpenCLHeadersTestConan(ConanFile):
++ settings = "os", "compiler", "build_type", "arch"
++ generators = "cmake"
++
++ def build(self):
++ cmake = CMake(self)
++ cmake.configure()
++ cmake.build()
++
++ def test(self):
++ if not tools.cross_building(self.settings):
++ os.chdir("bin")
++ self.run(".%sexample" % os.sep)
+diff --git a/test_package/example.c b/test_package/example.c
+new file mode 100644
+index 0000000..56d0c7a
+--- /dev/null
++++ b/test_package/example.c
+@@ -0,0 +1,9 @@
++#define CL_TARGET_OPENCL_VERSION 220
++#include <CL/cl.h>
++
++int main(void) {
++ cl_platform_id id;
++ cl_int result;
++ result = 0;
++ return result;
++}
diff --git a/PKGBUILD b/PKGBUILD
index f16b5cfdc13f..09e90ad15e14 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,9 +12,13 @@ provides=('opencl-headers')
conflicts=('opencl-headers')
source=('git+https://github.com/KhronosGroup/OpenCL-Headers.git'
'git+https://github.com/KhronosGroup/OpenCL-CLHPP.git'
+ '47.diff'
+# 'https://patch-diff.githubusercontent.com/raw/KhronosGroup/OpenCL-Headers/pull/47.diff'
)
sha256sums=('SKIP'
'SKIP'
+ 'd6e1dc689579cdb4508a3d40bab03eeb5d5c122a6fa615fcf25204ba9b0fb991'
+# '2c30d8d34ae8f7583bca45cb829dc45f31a73c9d8ef9a4755d4e9c316250324b'
)
pkgver() {
@@ -22,14 +26,28 @@ pkgver() {
echo "$(git describe --long --tags | tr - .)"
}
+prepare() {
+ mkdir -p build
+
+ cd OpenCL-Headers
+ patch -p1 -i "${srcdir}/47.diff"
+}
+
+build() {
+ cd build
+
+ cmake ../OpenCL-Headers \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr
+
+ make
+}
+
package() {
- cd "${srcdir}/OpenCL-Headers"
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ make -C build DESTDIR="${pkgdir}" install
- for i in $(find CL -type f); do
- install -Dm644 ${i} "${pkgdir}/usr/include/${i}"
- done
+ install -D -m644 OpenCL-Headers/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# remove useless headers
rm "${pkgdir}/usr/include/CL/"{cl_d3d,cl_dx9}*.h