aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/oneMKL')
-rw-r--r--sci-libs/oneMKL/Manifest2
-rw-r--r--sci-libs/oneMKL/files/oneMKL-0.2_p20221201-find-lapacke.patch22
-rw-r--r--sci-libs/oneMKL/metadata.xml11
-rw-r--r--sci-libs/oneMKL/oneMKL-0.2_p20221201.ebuild59
-rw-r--r--sci-libs/oneMKL/oneMKL-0.2_p20230221.ebuild59
5 files changed, 153 insertions, 0 deletions
diff --git a/sci-libs/oneMKL/Manifest b/sci-libs/oneMKL/Manifest
new file mode 100644
index 000000000..9999712a5
--- /dev/null
+++ b/sci-libs/oneMKL/Manifest
@@ -0,0 +1,2 @@
+DIST oneMKL-0.2_p20221201.tar.gz 958514 BLAKE2B 14fe7ca0095440f90ae74f9480be1693677c405071d123b10044d3ce09c7e2f8cb42f262ecfe617ba7d68efdf506ccd6aa31c52e376ff3bd1789f4923597b2b5 SHA512 e474f3d37aa58978aba417073f466507c91e428477c7a4b6f52206584e4ba6c307df7157b5b6e6e9b82e8bd1d9b6537eebef569fe8170cf053f6d1d87d2c1176
+DIST oneMKL-0.2_p20230221.tar.gz 983270 BLAKE2B 73f399301989938c78620dfd833cc895050e253d5880d4b7b6a416438179ac3299278f7dfef8198ba81aa55c33e95bb37d62c523345aa5d876177ca482cbaab7 SHA512 b502b0511613927e74e0d40186c0d91864f12bd23880eb029876a30b89cf1d495f0af9bfefe0278ee102b6d0bb7f698b50a3280ad53b33a9ebce32ec5ce84e85
diff --git a/sci-libs/oneMKL/files/oneMKL-0.2_p20221201-find-lapacke.patch b/sci-libs/oneMKL/files/oneMKL-0.2_p20221201-find-lapacke.patch
new file mode 100644
index 000000000..2c2fc1367
--- /dev/null
+++ b/sci-libs/oneMKL/files/oneMKL-0.2_p20221201-find-lapacke.patch
@@ -0,0 +1,22 @@
+diff --git a/cmake/FindLAPACKE.cmake b/cmake/FindLAPACKE.cmake
+index 42a5b7d..080108a 100644
+--- a/cmake/FindLAPACKE.cmake
++++ b/cmake/FindLAPACKE.cmake
+@@ -19,13 +19,13 @@
+
+ include_guard()
+
+-find_library(LAPACKE64_file NAMES lapacke64.dll.lib lapacke64.lib lapacke64 HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
++find_library(LAPACKE64_file NAMES lapacke64.dll.lib lapacke64.lib lapacke HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
+ find_package_handle_standard_args(LAPACKE REQUIRED_VARS LAPACKE64_file)
+-find_library(LAPACK64_file NAMES lapack64.dll.lib lapack64.lib lapack64 HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
++find_library(LAPACK64_file NAMES lapack64.dll.lib lapack64.lib lapack HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
+ find_package_handle_standard_args(LAPACKE REQUIRED_VARS LAPACK64_file)
+-find_library(CBLAS64_file NAMES cblas64.dll.lib cblas64.lib cblas64 HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
++find_library(CBLAS64_file NAMES cblas64.dll.lib cblas64.lib cblas HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
+ find_package_handle_standard_args(LAPACKE REQUIRED_VARS CBLAS64_file)
+-find_library(BLAS64_file NAMES blas64.dll.lib blas64.lib blas64 HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
++find_library(BLAS64_file NAMES blas64.dll.lib blas64.lib blas HINTS ${REF_LAPACK_ROOT} PATH_SUFFIXES lib lib64)
+ find_package_handle_standard_args(LAPACKE REQUIRED_VARS BLAS64_file)
+
+ get_filename_component(LAPACKE64_LIB_DIR ${LAPACKE64_file} DIRECTORY)
diff --git a/sci-libs/oneMKL/metadata.xml b/sci-libs/oneMKL/metadata.xml
new file mode 100644
index 000000000..77e2dd702
--- /dev/null
+++ b/sci-libs/oneMKL/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">oneapi-src/oneMKL</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-libs/oneMKL/oneMKL-0.2_p20221201.ebuild b/sci-libs/oneMKL/oneMKL-0.2_p20221201.ebuild
new file mode 100644
index 000000000..35d773397
--- /dev/null
+++ b/sci-libs/oneMKL/oneMKL-0.2_p20221201.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+COMMIT="f4866ab2648cd7cff4a047b91be5f94ff7b73ba1"
+
+DESCRIPTION="oneAPI Math Kernel Library Interfaces "
+HOMEPAGE="https://github.com/oneapi-src/oneMKL"
+SRC_URI="https://github.com/oneapi-src/oneMKL/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="test"
+# Tests don't compile properly
+# RESTRICT="!test? ( test )"
+RESTRICT="test"
+
+BDEPEND="sys-devel/DPC++"
+
+DEPEND="
+ dev-cpp/tbb:=
+ sci-libs/lapack[lapacke]
+ sci-libs/mkl
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-find-lapacke.patch"
+)
+
+src_prepare() {
+ # DPC++ compiler required for full functionality
+ export CC="${ESYSROOT}/usr/lib/llvm/intel/bin/clang"
+ export CXX="${ESYSROOT}/usr/lib/llvm/intel/bin/clang++"
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_CXX_COMPILER="${ESYSROOT}/usr/lib/llvm/intel/bin/clang++"
+ -DCMAKE_C_COMPILER="${ESYSROOT}/usr/lib/llvm/intel/bin/clang"
+ -DMKL_ROOT="${ESYSROOT}/opt/intel/oneapi/mkl/latest"
+ -DBUILD_FUNCTIONAL_TESTS="$(usex test)"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # Move into the correct libdid
+ mv "${ED}/usr/lib" "${ED}/usr/$(get_libdir)" || die
+}
diff --git a/sci-libs/oneMKL/oneMKL-0.2_p20230221.ebuild b/sci-libs/oneMKL/oneMKL-0.2_p20230221.ebuild
new file mode 100644
index 000000000..896ed4566
--- /dev/null
+++ b/sci-libs/oneMKL/oneMKL-0.2_p20230221.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+COMMIT="793c771c60f5105c12eaf59e1534eeb21d1cfe4a"
+
+DESCRIPTION="oneAPI Math Kernel Library Interfaces "
+HOMEPAGE="https://github.com/oneapi-src/oneMKL"
+SRC_URI="https://github.com/oneapi-src/oneMKL/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="test"
+# Tests don't compile properly
+# RESTRICT="!test? ( test )"
+RESTRICT="test"
+
+BDEPEND="sys-devel/DPC++"
+
+DEPEND="
+ dev-cpp/tbb:=
+ sci-libs/lapack[lapacke]
+ sci-libs/mkl
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.2_p20221201-find-lapacke.patch"
+)
+
+src_prepare() {
+ # DPC++ compiler required for full functionality
+ export CC="${ESYSROOT}/usr/lib/llvm/intel/bin/clang"
+ export CXX="${ESYSROOT}/usr/lib/llvm/intel/bin/clang++"
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_CXX_COMPILER="${ESYSROOT}/usr/lib/llvm/intel/bin/clang++"
+ -DCMAKE_C_COMPILER="${ESYSROOT}/usr/lib/llvm/intel/bin/clang"
+ -DMKL_ROOT="${ESYSROOT}/opt/intel/oneapi/mkl/latest"
+ -DBUILD_FUNCTIONAL_TESTS="$(usex test)"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # Move into the correct libdir
+ mv "${ED}/usr/lib" "${ED}/usr/$(get_libdir)" || die
+}