| # Copyright 1999-2014 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI=5 |
| |
| inherit autotools linux-mod linux-info toolchain-funcs udev multilib |
| |
| DESCRIPTION="High-Performance Intra-Node MPI Communication" |
| HOMEPAGE="http://runtime.bordeaux.inria.fr/knem/" |
| if [[ ${PV} == "9999" ]] ; then |
| EGIT_REPO_URI="https://gforge.inria.fr/git/knem/knem.git" |
| inherit git-2 |
| KEYWORDS="" |
| else |
| SRC_URI="http://runtime.bordeaux.inria.fr/knem/download/${P}.tar.gz" |
| KEYWORDS="~amd64 ~x86" |
| fi |
| |
| LICENSE="GPL-2 LGPL-2" |
| SLOT="0" |
| IUSE="debug modules" |
| |
| DEPEND=" |
| sys-apps/hwloc |
| virtual/linux-sources" |
| RDEPEND=" |
| sys-apps/hwloc |
| virtual/modutils" |
| |
| MODULE_NAMES="knem(misc:${S}/driver/linux)" |
| BUILD_TARGETS="all" |
| BUILD_PARAMS="KDIR=${KERNEL_DIR}" |
| |
| pkg_setup() { |
| linux-info_pkg_setup |
| linux-mod_pkg_setup |
| ARCH="$(tc-arch-kernel)" |
| ABI="${KERNEL_ABI}" |
| } |
| |
| src_prepare() { |
| sed 's:driver/linux::g' -i Makefile.am |
| eautoreconf |
| } |
| |
| 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 |
| } |