From d4951c0280c685dcf18e404f82b20c07ff2e4010 Mon Sep 17 00:00:00 2001 From: Andrew Ammerlaan Date: Tue, 6 Dec 2022 20:52:34 +0100 Subject: dev-libs/oneCCL: use DPC++ compiler Signed-off-by: Andrew Ammerlaan --- dev-libs/oneCCL/metadata.xml | 6 ++-- dev-libs/oneCCL/oneCCL-2021.7.1-r1.ebuild | 60 +++++++++++++++++++++++++++++++ dev-libs/oneCCL/oneCCL-2021.7.1.ebuild | 54 ---------------------------- 3 files changed, 63 insertions(+), 57 deletions(-) create mode 100644 dev-libs/oneCCL/oneCCL-2021.7.1-r1.ebuild delete mode 100644 dev-libs/oneCCL/oneCCL-2021.7.1.ebuild diff --git a/dev-libs/oneCCL/metadata.xml b/dev-libs/oneCCL/metadata.xml index ad55412d9..cbb320b12 100644 --- a/dev-libs/oneCCL/metadata.xml +++ b/dev-libs/oneCCL/metadata.xml @@ -1,9 +1,9 @@ - - andrewammerlaan@gentoo.org - Andrew Ammerlaan + + sci@gentoo.org + Gentoo Science Project oneapi-src/oneCCL diff --git a/dev-libs/oneCCL/oneCCL-2021.7.1-r1.ebuild b/dev-libs/oneCCL/oneCCL-2021.7.1-r1.ebuild new file mode 100644 index 000000000..b9c1fda6b --- /dev/null +++ b/dev-libs/oneCCL/oneCCL-2021.7.1-r1.ebuild @@ -0,0 +1,60 @@ +# 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:= + mpi? ( virtual/mpi ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-2021.7.1-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/hwloc deps/level_zero deps/mpi deps/ofi || die + + # DPC++ compiler required for full functionality + 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" + # TODO: Unbundle ITT + ) + cmake_src_configure +} diff --git a/dev-libs/oneCCL/oneCCL-2021.7.1.ebuild b/dev-libs/oneCCL/oneCCL-2021.7.1.ebuild deleted file mode 100644 index ae069bb2a..000000000 --- a/dev-libs/oneCCL/oneCCL-2021.7.1.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# 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" - -DEPEND=" - dev-libs/level-zero - sys-apps/hwloc - sys-block/libfabric - mpi? ( virtual/mpi ) -" -RDEPEND="${DEPEND}" - -PATCHES=( - "${FILESDIR}/${PN}-2021.7.1-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/hwloc deps/level_zero deps/mpi deps/ofi || die - - 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 -} -- cgit v1.2.3-18-g5258