diff options
Diffstat (limited to 'dev-libs/oneCCL/oneCCL-2021.10.ebuild')
-rw-r--r-- | dev-libs/oneCCL/oneCCL-2021.10.ebuild | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/dev-libs/oneCCL/oneCCL-2021.10.ebuild b/dev-libs/oneCCL/oneCCL-2021.10.ebuild new file mode 100644 index 000000000..a67659f4a --- /dev/null +++ b/dev-libs/oneCCL/oneCCL-2021.10.ebuild @@ -0,0 +1,62 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="oneAPI Collective Communications Library" +HOMEPAGE="https://github.com/oneapi-src/oneCCL" +SRC_URI="https://github.com/oneapi-src/oneCCL/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="mpi" + +BDEPEND="sys-devel/DPC++" + +DEPEND=" + dev-libs/level-zero:= + sys-apps/hwloc:= + sys-block/libfabric:= + sys-devel/ittapi + sys-cluster/pmix + mpi? ( virtual/mpi ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-2021.8-use-system-libs.patch" +) + +src_prepare() { + # No -Werror + find . -name "CMakeLists.txt" -exec sed -i "s/-Werror//g" {} + || die + + # Use system libs instead + rm -r deps/* || die + + # 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=( + -DBUILD_EXAMPLES=OFF + # BUILD_CONFIG causes sandbox violation + -DBUILD_CONFIG=OFF + -DCCL_ENABLE_ZE=ON + # TODO: Find out how to execute the tests + -DBUILD_FT=OFF + -DENABLE_MPI_TESTS=OFF + -DENABLE_MPI="$(usex mpi)" + # Use system fabric + -DLIBFABRIC_DIR="${ESYSROOT}/usr" + ) + cmake_src_configure +} |