diff options
Diffstat (limited to 'sys-cluster/knem/knem-1.1.3-r3.ebuild')
-rw-r--r-- | sys-cluster/knem/knem-1.1.3-r3.ebuild | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/sys-cluster/knem/knem-1.1.3-r3.ebuild b/sys-cluster/knem/knem-1.1.3-r3.ebuild new file mode 100644 index 000000000000..3241a9c53b13 --- /dev/null +++ b/sys-cluster/knem/knem-1.1.3-r3.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools linux-mod linux-info toolchain-funcs udev multilib + +DESCRIPTION="High-Performance Intra-Node MPI Communication" +HOMEPAGE="http://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="http://gforge.inria.fr/frs/download.php/37186/${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}" + +PATCHES=( "${FILESDIR}/${P}-setup_timer.patch" ) + +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 +} |