# Copyright 2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 inherit autotools linux-mod linux-info toolchain-funcs udev multilib EGIT_COMMIT="4a43e3eb860cda2bbd5bf5c7c04a24b6" MY_P="${PN}-${P}" DESCRIPTION="High-Performance Intra-Node MPI Communication" HOMEPAGE="https://knem.gitlabpages.inria.fr/ https://gitlab.inria.fr/knem/knem" if [[ ${PV} == "9999" ]] ; then EGIT_REPO_URI="https://gitlab.inria.fr/knem/knem.git" inherit git-r3 KEYWORDS="" else SRC_URI="https://gitlab.inria.fr/${PN}/${PN}/uploads/${EGIT_COMMIT}/${P}.tar.gz" KEYWORDS="~amd64 ~x86" fi LICENSE="BSD GPL-2" SLOT="0" IUSE="debug +modules" DEPEND=" sys-apps/hwloc virtual/linux-sources" RDEPEND=" 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 -e 's:driver/linux ::g' -e '/@echo/d' -i Makefile.am sed "s:REAL_RELEASE=.*$:REAL_RELEASE=${KV_FULL}:" -i configure.ac 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 pushd "${S}/driver/linux" linux-mod_src_compile || die "failed to build driver" popd fi } src_install() { default if use modules; then pushd "${S}/driver/linux" linux-mod_src_install || die "failed to install driver" popd 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 -rf "${ED}/etc/" || die }