commit:     e2897f066d926deecb6649d886514758eba1acf0
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 25 08:54:07 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sat Feb 25 08:54:07 2023 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=e2897f06

sys-devel/oneDPL: add 2022.0.0

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 sys-devel/oneDPL/metadata.xml           |  3 ++
 sys-devel/oneDPL/oneDPL-2022.0.0.ebuild | 60 +++++++++++++++++++++++++++++++++
 2 files changed, 63 insertions(+)

diff --git a/sys-devel/oneDPL/metadata.xml b/sys-devel/oneDPL/metadata.xml
index 5fbeb1b05..474176a00 100644
--- a/sys-devel/oneDPL/metadata.xml
+++ b/sys-devel/oneDPL/metadata.xml
@@ -8,4 +8,7 @@
        <upstream>
                <remote-id type="github">oneapi-src/oneDPL</remote-id>
        </upstream>
+       <use>
+               <flag name="esimd_emulator">enable ESIMD CPU emulation</flag>
+       </use>
 </pkgmetadata>

diff --git a/sys-devel/oneDPL/oneDPL-2022.0.0.ebuild 
b/sys-devel/oneDPL/oneDPL-2022.0.0.ebuild
new file mode 100644
index 000000000..6d36dc409
--- /dev/null
+++ b/sys-devel/oneDPL/oneDPL-2022.0.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Missing deps for documentation
+# PYTHON_COMPAT=( python3_{10..11} )
+# DOCS_BUILDER="sphinx"
+# DOCS_DIR="documentation/library_guide"
+# DOCS_AUTODOC=0
+inherit cmake #python-any-r1 docs
+
+DESCRIPTION="oneAPI Data Parallel C++ Library"
+HOMEPAGE="https://github.com/oneapi-src/oneDPL";
+SRC_URI="https://github.com/oneapi-src/oneDPL/archive/refs/tags/${P}-release.tar.gz";
+S="${WORKDIR}/${PN}-${P}-release"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="esimd_emulator"
+#TODO: Figure out how to use the test
+RESTRICT="test"
+
+BDEPEND="virtual/pkgconfig"
+
+DEPEND="
+       sys-devel/DPC++:0/6[esimd_emulator?]
+       dev-libs/level-zero
+       dev-cpp/tbb
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       # Not using the DPC++ compiler doesn't really make sense here
+       export CXX="${ESYSROOT}/usr/lib/llvm/intel/bin/clang++"
+       export CC="${ESYSROOT}/usr/lib/llvm/intel/bin/clang"
+       cmake_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DONEDPL_DEVICE_BACKEND="level_zero"
+               -DONEDPL_BACKEND="dpcpp"
+               -DONEDPL_ENABLE_SIMD="$(usex esimd_emulator)"
+       )
+
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+       # docs_compile
+}
+
+src_install() {
+       einstalldocs
+       doheader -r "${S}/include/oneapi"
+}

Reply via email to