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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-im/bitlbee/bitlbee-1.0.3.ebuild,v 1.9 2007/01/12 17:29:11 eroyf Exp $
inherit eutils toolchain-funcs
DESCRIPTION="irc to IM gateway that support multiple IM protocols"
HOMEPAGE="http://www.bitlbee.org/"
SRC_URI="http://get.bitlbee.org/src/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ia64 ppc sparc x86"
IUSE="debug jabber msn oscar yahoo gnutls ssl nss xinetd ipv6"
DEPEND=">=dev-libs/glib-2.0
msn? ( gnutls? ( net-libs/gnutls )
ssl? ( dev-libs/openssl )
nss? ( dev-libs/nss ) )
jabber? ( gnutls? ( net-libs/gnutls )
ssl? ( dev-libs/openssl )
nss? ( dev-libs/nss ) )"
no_flags_die() {
eerror ""
eerror "Please choose a protocol or protocols to use with"
eerror "bitlbee by enabling the useflag for the protocol"
eerror "desired."
eerror ""
eerror " Valid useflags are;"
eerror " jabber, msn, oscar and yahoo"
die "No IM protocols selected!"
}
pkg_setup() {
elog "Note: Support for all IM protocols are controlled by use flags."
elog " Make sure you've enabled the flags you want."
elog ""
# Warn but not die if jabber is enabled but SSL is not
if ( use jabber && ( use !ssl && use !gnutls && use !nss ) ); then
ewarn ""
ewarn "You have enabled support for Jabber but do not have SSL"
ewarn "support enabled. This *will* prevent bitlbee from being"
ewarn "able to connect to SSL enabled Jabber servers. If you need to"
ewarn "connect to Jabber over SSL, enable one of the following use"
ewarn "flags: gnutls, nss ssl"
ewarn ""
fi
# At the request of upstream, die if MSN Messenger support is enabled
# but no SSL support has been enabled
if ( use msn && ( use !ssl && use !gnutls && use !nss ) ); then
eerror ""
eerror "In order to enable support for the MSN Messenger protocol,"
eerror "SSL support needs to be enabled. Please enable the ssl,"
eerror "gnutls or nss use flags to provide SSL support".
die "MSN support enabled without any SSL support enabled."
fi
use jabber || use msn || use oscar || use yahoo || no_flags_die
}
src_unpack() {
unpack ${P}.tar.gz
# Patch the default xinetd file to add/adjust values to Gentoo defaults
cd ${S}/doc && epatch ${FILESDIR}/${PN}-1.0.3-xinetd.patch
cd ${S} && epatch ${FILESDIR}/${PN}-gentoohack.patch
}
src_compile() {
# setup protocol, ipv6 and debug
local myconf
use debug && myconf="${myconf} --debug=1"
use ipv6 || myconf="${myconf} --ipv6=0"
use msn || myconf="${myconf} --msn=0 "
use jabber || myconf="${myconf} --jabber=0"
use oscar || myconf="${myconf} --oscar=0"
use yahoo || myconf="${myconf} --yahoo=0"
# setup ssl use flags
use ssl && use gnutls && myconf="${myconf} --ssl=gnutls"
use ssl && use nss && myconf="${myconf} --ssl=nss"
use ssl && use !gnutls && use !nss && myconf="${myconf} --ssl=openssl"
if ( ( use jabber && ( use gnutls || use ssl || use nss ) ) \
|| use msn ) && use !gnutls && use !ssl && use !nss; then
myconf="${myconf} --ssl=bogus"
fi
# NOTE: bitlbee's configure script is not an autotool creation, so that is
# why we don't use econf.
./configure --prefix=/usr --datadir=/usr/share/bitlbee \
--etcdir=/etc/bitlbee ${myconf} || die "econf failed"
emake || die "make failed"
# make bitlbeed forking server
cd utils
$(tc-getCC) ${CFLAGS} bitlbeed.c -o bitlbeed || die "bitlbeed failed to compile"
}
src_install() {
dodir /var/lib/bitlbee
make install DESTDIR=${D} || die "install failed"
make install-etc DESTDIR=${D} || die "install failed"
make install-doc DESTDIR=${D} || die "install failed"
keepdir /var/lib/bitlbee
dodoc doc/{AUTHORS,CHANGES,CREDITS,FAQ,README}
dodoc doc/user-guide/user-guide.txt
dohtml -A xml doc/user-guide/*.xml
dohtml -A xsl doc/user-guide/*.xsl
dohtml doc/user-guide/*.html
doman doc/bitlbee.8 doc/bitlbee.conf.5
dobin utils/bitlbeed
if use xinetd; then
insinto /etc/xinetd.d
newins doc/bitlbee.xinetd bitlbee
fi
exeinto /etc/init.d
newexe ${FILESDIR}/bitlbeed.init bitlbeed || die
insinto /etc/conf.d
newins ${FILESDIR}/bitlbeed.confd bitlbeed || die
dodir /var/run/bitlbeed
keepdir /var/run/bitlbeed
dodir /usr/share/bitlbee
cp ${S}/utils/* ${D}/usr/share/bitlbee
rm ${D}/usr/share/bitlbee/bitlbeed*
}
pkg_postinst() {
chown nobody:nobody ${ROOT}/var/lib/bitlbee
chmod 700 ${ROOT}/var/lib/bitlbee
elog "The utils included in bitlbee (other than bitlbeed) are now"
elog "located in /usr/share/bitlbee"
elog
elog "NOTE: The IRSSI script is no longer provided by BitlBee."
}
|