blob: 4b1ed98b7e27075e37b389a0c2951f2f80f3607b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header$
inherit rpm
LICENSE="|| ( GPL-2 BSD-2 )"
SLOT="0"
KEYWORDS="~x86 ~amd64"
DESCRIPTION="OpenFabrics userspace distribution. An all-inclusive ebuild
alternative to the openib meta-ebuild"
HOMEPAGE="http://www.openfabrics.org/"
SHORT_PV=${PV%\.[^.]}
SRC_URI="http://www.openfabrics.org/builds/ofed-${SHORT_PV}/release/OFED-${PV}.tgz"
MY_P="OFED-${PV}"
S="${WORKDIR}/ofa_user-${PV}"
OSM="${S}/src/userspace/management/osm"
IUSE="ehca ipath cxgb3 opensm dapl srptools qlvnictools tvflash mstflint"
DEPEND=""
PDEPEND="=sys-cluster/openib-files-${PV}"
RDEPEND="${DEPEND}
!sys-cluster/libibverbs
!sys-cluster/libmthca
!sys-cluster/libipathverbs
!sys-cluster/librdmacm
!sys-cluster/libsdp
!sys-cluster/dapl
!sys-cluster/libehca
!sys-cluster/libibcm
!sys-cluster/libibcommon
!sys-cluster/libibmad
!sys-cluster/libibumad
!sys-cluster/openib-diags
!sys-cluster/openib-osm
!sys-cluster/openib-perf
!sys-cluster/openib-srptools
!sys-cluster/openib"
src_unpack() {
unpack ${A} || die "unpack failed"
rpm_unpack ${MY_P}/SRPMS/ofa_user-${PV}-0.src.rpm
tar xzf ofa_user-${PV}.tgz
}
src_compile() {
myconf="--with-libibverbs --with-libmthca"
if use ipath ; then myconf="$myconf --with-libipathverbs"; fi
if use ehca ; then myconf="$myconf --with-libehca"; fi
if use cxgb3 ; then myconf="$myconf --with-libcxgb3"; fi
myconf="$myconf --with-libibcm"
myconf="$myconf --with-libsdp"
myconf="$myconf --with-librdmacm"
myconf="$myconf $(use_with dapl)"
if use opensm ; then myconf="$myconf --with-management-libs"; fi
myconf="$myconf $(use_with opensm)"
myconf="$myconf --with-openib-diags"
myconf="$myconf --with-perftest"
myconf="$myconf $(use_with srptools)"
myconf="$myconf --with-ipoibtools"
myconf="$myconf $(use_with qlvnictools)"
myconf="$myconf $(use_with tvflash)"
myconf="$myconf $(use_with mstflint)"
myconf="$myconf --with-sdpnetstat"
#econf ${myconf} || die "configure failed"
./configure --prefix=/usr --mandir=/usr/share/man \
--sysconfdir=/etc \
${myconf} ${EXTRA_ECONF} || die "configure failed"
emake -j1
}
src_install() {
make DESTDIR="${D}" install || die "install failed"
dodoc "${WORKDIR}/${MY_P}/README.txt"
dodoc "${WORKDIR}/${MY_P}/docs/*"
if use opensm ; then
newconfd "${OSM}/scripts/opensm.sysconfig" opensm
newinitd "${FILESDIR}/opensm.init.d" opensm
insinto /etc
doins "${S}/ofed_scripts/opensm.conf"
dobin "${S}/ofed_scripts/sldd.sh"
fi
}
pkg_postinst() {
einfo "To automatically configure the infiniband subnet manager on boot,"
einfo "edit /etc/opensm.conf and add opensm to your start-up scripts:"
einfo "\`rc-update add opensm default\`"
}
|