diff options
author | 2023-02-26 06:18:54 +0100 | |
---|---|---|
committer | 2023-02-26 06:18:54 +0100 | |
commit | 7efc4ce881506e11f924d65f842063caf3920cf7 (patch) | |
tree | b466d75234135ca043dadeac7198d9346336ba77 /dev-python/dpctl | |
parent | dev-python/dpnp: add 0.11.1_rc1 (diff) | |
download | sci-7efc4ce881506e11f924d65f842063caf3920cf7.tar.gz sci-7efc4ce881506e11f924d65f842063caf3920cf7.tar.bz2 sci-7efc4ce881506e11f924d65f842063caf3920cf7.zip |
dev-python/dpctl: add 0.14.1_rc2
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'dev-python/dpctl')
-rw-r--r-- | dev-python/dpctl/Manifest | 1 | ||||
-rw-r--r-- | dev-python/dpctl/dpctl-0.14.1_rc2.ebuild | 69 | ||||
-rw-r--r-- | dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-level-zero.patch | 82 | ||||
-rw-r--r-- | dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-pybind.patch | 21 |
4 files changed, 173 insertions, 0 deletions
diff --git a/dev-python/dpctl/Manifest b/dev-python/dpctl/Manifest index aab57723a..f6f26fffb 100644 --- a/dev-python/dpctl/Manifest +++ b/dev-python/dpctl/Manifest @@ -1,2 +1,3 @@ DIST dpctl-0.13.0.gh.tar.gz 363708 BLAKE2B 82eaf296cb0aaaad1a9c23334b027d4b38ef8d580c43a6ea1fb7542b20f5511c09edf7fdd3bd98a5b48cdf55176fcaeea787c6d93ef65fc6c94004cbb0c61255 SHA512 5ddefe9671ef77e0ff507e3c92c80b147a4f19f50ee9b64dd940960e181edea16b5dbbdb990aa3dc37da80e6015979f702fba60210b8677a83780224cdd30e76 DIST dpctl-0.14.0.gh.tar.gz 399378 BLAKE2B 3a9cbea965941c8c0a85938f0736705fd0bbdc611e02a44363a670119555ff95fbae130526caa25f42ee499d5b36c83b8c574db1b2368a1cbe7855b84fabe9f1 SHA512 37d76653112556ebeadec846cc6b156cb84e7b82bc6a9477072a3721b3a830c5fcb7d6e92e76aa7c7449547e925b07d5dda42d2777813e7d1db1d97ea852e22a +DIST dpctl-0.14.1_rc2.gh.tar.gz 409028 BLAKE2B 481be08bb6a7b1a439580d600b0e14036f10793e568314f9373ffa46daad7d3e43d33fc66c3c48ec7e3de71e9d0a7256cdfdd984c38fa7f1694dcc0227dae93f SHA512 91ab20a51893e3afc9e140ab9dfd1aa19b24e58227a001faefb9ceba6ffc4aa235214663c7456e977acf556796be097eabacc9b01b94eb42e8c70677a2f2dd9d diff --git a/dev-python/dpctl/dpctl-0.14.1_rc2.ebuild b/dev-python/dpctl/dpctl-0.14.1_rc2.ebuild new file mode 100644 index 000000000..65526b110 --- /dev/null +++ b/dev-python/dpctl/dpctl-0.14.1_rc2.ebuild @@ -0,0 +1,69 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +DISTUTILS_USE_PEP517=setuptools +inherit distutils-r1 + +DESCRIPTION="Data Parallel Control " +HOMEPAGE="https://github.com/IntelPython/dpctl" +SRC_URI="https://github.com/IntelPython/dpctl/archive/refs/tags/${PV//_rc/dev}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}/${PN}-${PV//_rc/dev}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] + dev-python/scikit-build[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + dev-python/versioneer[${PYTHON_USEDEP}] + dev-util/cmake + dev-vcs/git + sys-devel/DPC++ +" + +DEPEND=" + dev-libs/level-zero + dev-libs/opencl-icd-loader + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + sci-libs/oneDAL + sys-devel/DPC++:0/6 +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-0.14.0-find-opencl.patch" + "${FILESDIR}/${PN}-0.14.1_rc2-dont-fetch-level-zero.patch" + "${FILESDIR}/${PN}-0.14.1_rc2-dont-fetch-pybind.patch" + #"${FILESDIR}/${PN}-0.14.1_rc2-include-tuple.patch" +) + +distutils_enable_tests pytest + +python_prepare_all() { + # DPC++ compiler required for full functionality + export CC="${ESYSROOT}/usr/lib/llvm/intel/bin/clang" + export CXX="${ESYSROOT}/usr/lib/llvm/intel/bin/clang++" + export DPCPPROOT="${ESYSROOT}/usr/lib/llvm/intel" + + # Build system reads version from git tag + git init -q || die + git config --global user.email "larry@gentoo.org" || die + git config --global user.name "Larry the Cow" || die + git add . || die + git commit -qm "init" || die + git tag -a "${PV}" -m "${PN} version ${PV}" || die + + distutils-r1_python_prepare_all +} + +python_test() { + export PYTHONPATH="${BUILD_DIR}/install/usr/lib/${EPYTHON}/site-packages" + # We don't use epytest because it overwrites our PYTHONPATH + pytest -vv || die +} diff --git a/dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-level-zero.patch b/dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-level-zero.patch new file mode 100644 index 000000000..a7a4adf8b --- /dev/null +++ b/dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-level-zero.patch @@ -0,0 +1,82 @@ +diff --git a/libsyclinterface/cmake/modules/GetLevelZeroHeaders.cmake b/libsyclinterface/cmake/modules/GetLevelZeroHeaders.cmake +index fe109fc..55595e9 100644 +--- a/libsyclinterface/cmake/modules/GetLevelZeroHeaders.cmake ++++ b/libsyclinterface/cmake/modules/GetLevelZeroHeaders.cmake +@@ -26,76 +26,10 @@ + + function(get_level_zero_headers) + +- if(EXISTS level-zero) +- # Update the checkout +- execute_process( +- COMMAND ${GIT_EXECUTABLE} fetch +- RESULT_VARIABLE result +- ERROR_VARIABLE error +- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/level-zero +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ERROR_STRIP_TRAILING_WHITESPACE +- ) +- +- if(NOT result EQUAL 0) +- message(FATAL_ERROR +- "Could not update Level Zero sources. Return code: ${result}" +- ) +- endif() +- else() +- # Clone the Level Zero git repo +- execute_process( +- COMMAND ${GIT_EXECUTABLE} clone https://github.com/oneapi-src/level-zero.git +- RESULT_VARIABLE result +- ERROR_VARIABLE error +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ERROR_STRIP_TRAILING_WHITESPACE +- ) +- +- if(NOT result EQUAL 0) +- message(FATAL_ERROR +- "Could not clone Level Zero sources from github.com/oneapi-src/level-zero. Return code: ${result}" +- ) +- endif() +- endif() +- +- # Use git describe to get latest tag name +- execute_process( +- COMMAND ${GIT_EXECUTABLE} describe --tags --abbrev=0 +- RESULT_VARIABLE result +- OUTPUT_VARIABLE latest_tag +- ERROR_VARIABLE error +- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/level-zero +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ERROR_STRIP_TRAILING_WHITESPACE +- ) +- +- if(NOT result EQUAL 0) +- message(FATAL_ERROR +- "Could not get the name for the latest release. Return code: ${result}" +- ) +- endif() +- +- # Use git describe to get latest tag name +- execute_process( +- COMMAND ${GIT_EXECUTABLE} checkout ${latest_tag} +- RESULT_VARIABLE result +- ERROR_VARIABLE error +- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/level-zero +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ERROR_STRIP_TRAILING_WHITESPACE +- ) +- +- if(NOT result EQUAL 0) +- message(FATAL_ERROR +- "Could not checkout the latest release. Return code: ${result}" +- ) +- endif() +- + # Populate the path to the headers + find_path(LEVEL_ZERO_INCLUDE_DIR + NAMES zet_api.h +- PATHS ${CMAKE_BINARY_DIR}/level-zero/include ++ PATHS /usr/include/level_zero + NO_DEFAULT_PATH + NO_CMAKE_ENVIRONMENT_PATH + NO_CMAKE_PATH diff --git a/dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-pybind.patch b/dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-pybind.patch new file mode 100644 index 000000000..d56dc27b3 --- /dev/null +++ b/dev-python/dpctl/files/dpctl-0.14.1_rc2-dont-fetch-pybind.patch @@ -0,0 +1,21 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d97ca9a..3914bd9 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -32,15 +32,7 @@ install(FILES ${_dpctl_capi_headers} + # Define CMAKE_INSTALL_xxx: LIBDIR, INCLUDEDIR + include(GNUInstallDirs) + +-# Fetch pybind11 +-include(FetchContent) +- +-FetchContent_Declare( +- pybind11 +- URL https://github.com/pybind/pybind11/archive/refs/tags/v2.10.2.tar.gz +- URL_HASH SHA256=93bd1e625e43e03028a3ea7389bba5d3f9f2596abc074b068e70f4ef9b1314ae +-) +-FetchContent_MakeAvailable(pybind11) ++include(/usr/share/cmake/pybind11/pybind11Config.cmake) + + add_subdirectory(dpctl) + |