]> git.draconx.ca Git - gentoo-draconx.git/blob - net-im/bitlbee/bitlbee-1.2.7.ebuild
2f3a56537318fb579f8bd41aceb6766ec8b8e703
[gentoo-draconx.git] / net-im / bitlbee / bitlbee-1.2.7.ebuild
1 # Copyright 1999-2010 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/net-im/bitlbee/bitlbee-1.2.6a.ebuild,v 1.1 2010/04/29 21:40:29 cedk Exp $
4
5 EAPI="1"
6 inherit eutils toolchain-funcs confutils
7
8 DESCRIPTION="irc to IM gateway that support multiple IM protocols"
9 HOMEPAGE="http://www.bitlbee.org/"
10 SRC_URI="http://get.bitlbee.org/src/${P}.tar.gz"
11
12 LICENSE="GPL-2"
13 SLOT="0"
14 KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86 ~x86-fbsd"
15 IUSE="debug gnutls ipv6 +jabber msn nss +oscar ssl test twitter +yahoo xinetd" # ldap - Bug 195758
16
17 COMMON_DEPEND=">=dev-libs/glib-2.4
18         msn? ( gnutls? ( net-libs/gnutls )
19                 !gnutls? ( nss? ( dev-libs/nss ) )
20                 !gnutls? ( !nss? ( ssl? ( dev-libs/openssl ) ) )
21                 )
22         jabber? ( gnutls? ( net-libs/gnutls )
23                 !gnutls? ( nss? ( dev-libs/nss ) )
24                 !gnutls? ( !nss? ( ssl? ( dev-libs/openssl ) ) )
25                 )"
26         # ldap? ( net-nds/openldap )"
27 DEPEND="${COMMON_DEPEND}
28         dev-util/pkgconfig
29         test? ( dev-libs/check )"
30
31 RDEPEND="${COMMON_DEPEND}
32         virtual/logger
33         xinetd? ( sys-apps/xinetd )"
34
35 pkg_setup() {
36         elog "Note: Support for all IM protocols are controlled by use flags."
37         elog "      Make sure you've enabled the flags you want."
38         elog
39         confutils_require_any jabber msn oscar twitter yahoo
40
41         # At the request of upstream, die if MSN Messenger support is enabled
42         # but no SSL support has been enabled
43         confutils_use_depend_any msn gnutls nss ssl
44
45         if use jabber && ! use gnutls && ! use ssl ; then
46                 if use nss; then
47                         ewarn ""
48                         ewarn "You have enabled nss and jabber"
49                         ewarn "but nss doesn't work with jabber"
50                         ewarn "Enable ONE of the following use instead"
51                         ewarn "flags: gnutls or ssl"
52                         ewarn ""
53                         die "nss with jabber doesn't work"
54                 fi
55                 elog ""
56                 elog "You have enabled support for Jabber but do not have SSL"
57                 elog "support enabled.  This *will* prevent bitlbee from being"
58                 elog "able to connect to SSL enabled Jabber servers.  If you need to"
59                 elog "connect to Jabber over SSL, enable ONE of the following use"
60                 elog "flags: gnutls or ssl"
61                 elog ""
62         fi
63
64         enewgroup bitlbee
65         enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
66 }
67
68 src_unpack() {
69         unpack ${A}
70         cd "${S}"
71
72         sed -i \
73                 -e "s@/usr/local/sbin/bitlbee@/usr/sbin/bitlbee@" \
74                 -e "s/nobody/bitlbee/" \
75                 -e "s/}/        disable         = yes\n}/" \
76                 doc/bitlbee.xinetd || die "sed failed in xinetd"
77
78         sed -i \
79                 -e "s@mozilla-nss@nss@g" \
80                 configure || die "sed failed in configure"
81 }
82
83 src_compile() {
84         # ldap hard-disabled for now
85         local myconf="--ldap=0"
86
87         # setup protocol, ipv6 and debug
88         for flag in debug ipv6 msn jabber oscar twitter yahoo ; do
89                 if use ${flag} ; then
90                         myconf="${myconf} --${flag}=1"
91                 else
92                         myconf="${myconf} --${flag}=0"
93                 fi
94         done
95
96         # setup ssl use flags
97         if use gnutls ; then
98                 myconf="${myconf} --ssl=gnutls"
99                 einfo "Use gnutls as SSL support"
100         elif use ssl ; then
101                 myconf="${myconf} --ssl=openssl"
102                 einfo "Use openssl as SSL support"
103         elif use nss ; then
104                 myconf="${myconf} --ssl=nss"
105                 einfo "Use nss as SSL support"
106         else
107                 myconf="${myconf} --ssl=bogus"
108                 einfo "You will not have any encryption support enabled."
109         fi
110
111         # NOTE: bitlbee's configure script is not an autotool creation,
112         # so that is why we don't use econf.
113         ./configure --prefix=/usr --datadir=/usr/share/bitlbee \
114                 --etcdir=/etc/bitlbee --strip=0 ${myconf} || die "econf failed"
115
116         sed -i \
117                 -e "s/CFLAGS=.*$/CFLAGS=${CFLAGS}/" \
118                 Makefile.settings || die "sed failed"
119
120         emake || die "make failed"
121 }
122
123 src_install() {
124         make install DESTDIR="${D}" || die "install failed"
125         make install-etc DESTDIR="${D}" || die "install failed"
126         make install-doc DESTDIR="${D}" || die "install failed"
127         make install-dev DESTDIR="${D}" || die "install failed"
128         keepdir /var/lib/bitlbee
129         fperms 700 /var/lib/bitlbee
130         fowners bitlbee:bitlbee /var/lib/bitlbee
131
132         dodoc doc/{AUTHORS,CHANGES,CREDITS,FAQ,README}
133         dodoc doc/user-guide/user-guide.txt
134         dohtml -A xml doc/user-guide/*.xml
135         dohtml -A xsl doc/user-guide/*.xsl
136         dohtml doc/user-guide/*.html
137
138         doman doc/bitlbee.8 doc/bitlbee.conf.5
139
140         if use xinetd; then
141                 insinto /etc/xinetd.d
142                 newins doc/bitlbee.xinetd bitlbee
143         fi
144
145         newinitd "${FILESDIR}"/bitlbee.initd bitlbee || die
146         newconfd "${FILESDIR}"/bitlbee.confd bitlbee || die
147
148         keepdir /var/run/bitlbee
149         fowners bitlbee:bitlbee /var/run/bitlbee
150
151         dodir /usr/share/bitlbee
152         insinto /usr/share/bitlbee
153         cd utils
154         doins centericq2bitlbee.sh convert_gnomeicu.txt create_nicksfile.pl
155         doins bitlbee-ctl.pl
156 }
157
158 pkg_postinst() {
159         chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
160         chown -R bitlbee:bitlbee "${ROOT}"/var/run/bitlbee
161
162         elog "The utils included in bitlbee are now located in /usr/share/bitlbee"
163         elog
164         elog "NOTE: The IRSSI script is no longer provided by BitlBee."
165         elog
166         elog "The bitlbeed init script has been replaced by bitlbee."
167         elog "You must update your configuration."
168 }