blob: 0d84ec1dc3bd73910f2edfc07625782ac28382d3 (
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
95
96
97
98
99
100
101
102
103
104
|
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="2"
# The globus-build tools do not require java to be installed, BUT
# configure still expects it...
inherit eutils java-pkg-2 java-utils-2
MY_P="gt${PV}-all-source-installer"
DESCRIPTION="The Globus Toolkit Build Tools"
HOMEPAGE="http://www.globus.org/toolkit/"
SRC_URI="http://www-unix.globus.org/ftppub/gt${PV:0:1}/${PV}/installers/src/${MY_P}.tar.bz2"
LICENSE="GTPL"
SLOT="4"
KEYWORDS="~x86"
IUSE="condor iodbc lsf odbc pbs"
RDEPEND="
dev-java/ant
sys-libs/zlib
dev-lang/perl
app-admin/sudo
dev-libs/openssl
dev-db/postgresql
dev-perl/XML-Parser
virtual/mpi
iodbc? ( dev-db/libiodbc )
odbc? ( !iodbc? ( dev-db/unixODBC ) )"
DEPEND=">=virtual/jdk-1.5
${RDEPEND}"
S="${WORKDIR}/${MY_P}"
GLOBUS="/opt/globus${PV:0:1}"
pkg_setup() {
enewgroup globus
enewuser globus -1 -1 /var/globus globus
}
src_prepare() {
mkdir "${S}"/build || die "making build directory failed"
sed -e "s|%%GLOBUS%%|${GLOBUS}|" \
"${FILESDIR}"/21globus-build > "${T}"/21globus-build \
|| die "sed envfile failed"
}
src_configure() {
local myconfig
# should we use odbc with iodbc or unixodbc
if use iodbc ; then
myconfig="--with-iodbc-libs=$(iodbc-config --prefix)/lib"
myconfig="${myconfig} --with-iodbc-includes=$(iodbc-config --prefix)/include/iodbc"
elif use odbc ; then
myconfig="--with-unixodbc-libs=/usr/lib"
myconfig="${myconfig} --with-unixodbc-includes=/usr/include/unixodbc"
fi
# even though globus does not use java we still need all the junk to
# make configure happy...
java-pkg_switch-vm
econf --prefix="${S}/build/${GLOBUS}" \
--with-gptlocation="${S}/build/${GLOBUS}" \
$(use_enable condor wsgram-condor) \
$(use_enable lsf wsgram-lsf) \
$(use_enable pbs wsgram-pbs) ${myconfig}
}
src_compile() {
emake gpt || die "compile failed"
}
src_install() {
einfo "Hand installing..."
# The supplied Makefile install violates standard practices. The
# following simulates a "make DESTDIR=${D}" and moves the built
# programs/files into ${D}
mv "${S}"/build/* "${D}/" || die "mv failed"
doenvd "${T}"/21globus-build || die "install env.d/globus-build died"
einfo "Updating ownership and permissions..."
fowners -R globus:globus * || die "fowners failed"
}
pkg_postrm() {
if [ -z has_version ]; then
ewarn "Globus builds and installs files into ${GLOBUS}"
ewarn "after package installation. After uninstalling"
ewarn "you may want to manually remove all or part of the Globus"
ewarn "installation directory ${GLOBUS}."
fi
}
|