summaryrefslogtreecommitdiff
path: root/sys-cluster/knem/knem-1.1.4.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-07-27 03:00:39 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-07-27 03:00:39 +0100
commitfe618c8b8c934661d2297b2aeb0615a48e787691 (patch)
tree24a8209687e0ff34205acd703b6b80e7c6897f81 /sys-cluster/knem/knem-1.1.4.ebuild
parent1d4cc2fdaa7a04ed1fe39b6cf1d892bd83bd8030 (diff)
gentoo auto-resync : 27:07:2022 - 03:00:38
Diffstat (limited to 'sys-cluster/knem/knem-1.1.4.ebuild')
-rw-r--r--sys-cluster/knem/knem-1.1.4.ebuild85
1 files changed, 85 insertions, 0 deletions
diff --git a/sys-cluster/knem/knem-1.1.4.ebuild b/sys-cluster/knem/knem-1.1.4.ebuild
new file mode 100644
index 000000000000..a5299c2ab493
--- /dev/null
+++ b/sys-cluster/knem/knem-1.1.4.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit autotools linux-mod linux-info toolchain-funcs udev
+
+DESCRIPTION="High-Performance Intra-Node MPI Communication"
+HOMEPAGE="https://knem.gforge.inria.fr/"
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://gforge.inria.fr/git/knem/knem.git"
+ inherit git-r3
+else
+ SRC_URI="https://gitlab.inria.fr/knem/knem/uploads/4a43e3eb860cda2bbd5bf5c7c04a24b6/${P}.tar.gz"
+ KEYWORDS="~amd64 ~riscv ~x86"
+fi
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+IUSE="debug modules"
+
+DEPEND="
+ sys-apps/hwloc:=
+ virtual/linux-sources"
+RDEPEND="
+ sys-apps/hwloc:=
+ sys-apps/kmod[tools]"
+
+MODULE_NAMES="knem(misc:${S}/driver/linux)"
+BUILD_TARGETS="all"
+BUILD_PARAMS="KDIR=${KERNEL_DIR}"
+
+pkg_setup() {
+ linux-info_pkg_setup
+ CONFIG_CHECK="DMA_ENGINE"
+ check_extra_config
+ linux-mod_pkg_setup
+ ARCH="$(tc-arch-kernel)"
+ ABI="${KERNEL_ABI}"
+}
+
+src_prepare() {
+ sed 's:driver/linux::g' -i Makefile.am
+ eautoreconf
+ default
+}
+
+src_configure() {
+ econf \
+ --enable-hwloc \
+ --with-linux="${KERNEL_DIR}" \
+ --with-linux-release=${KV_FULL} \
+ $(use_enable debug)
+}
+
+src_compile() {
+ default
+ if use modules; then
+ cd "${S}/driver/linux"
+ linux-mod_src_compile || die "failed to build driver"
+ fi
+}
+
+src_install() {
+ default
+ if use modules; then
+ cd "${S}/driver/linux"
+ linux-mod_src_install || die "failed to install driver"
+ fi
+
+ # Drop funny unneded stuff
+ rm "${ED}/usr/sbin/knem_local_install" || die
+ rmdir "${ED}/usr/sbin" || die
+ # install udev rules
+ udev_dorules "${FILESDIR}/45-knem.rules"
+ rm "${ED}/etc/10-knem.rules" || die
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}