You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
184 lines
4.8 KiB
184 lines
4.8 KiB
# Copyright 1999-2014 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Header: /var/cvsroot/gentoo-x86/net-im/bitlbee/bitlbee-3.2.1.ebuild,v 1.4 2014/06/05 10:04:32 mrueg Exp $
|
|
|
|
EAPI="5"
|
|
PYTHON_COMPAT=( python{2_6,2_7} )
|
|
|
|
inherit eutils multilib user python-single-r1
|
|
|
|
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="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
|
|
IUSE="debug gnutls ipv6 +jabber libevent msn nss +oscar otr +plugins purple selinux
|
|
skype ssl test twitter +yahoo xinetd" # ldap - Bug 195758
|
|
|
|
COMMON_DEPEND="purple? ( net-im/pidgin )
|
|
libevent? ( dev-libs/libevent )
|
|
!libevent? ( >=dev-libs/glib-2.4 )
|
|
otr? ( <net-libs/libotr-4 )
|
|
gnutls? ( net-libs/gnutls )
|
|
!gnutls? (
|
|
nss? ( dev-libs/nss )
|
|
!nss? ( ssl? ( dev-libs/openssl ) )
|
|
)
|
|
selinux? ( sec-policy/selinux-bitlbee )"
|
|
# ldap? ( net-nds/openldap )"
|
|
DEPEND="${COMMON_DEPEND}
|
|
virtual/pkgconfig
|
|
skype? ( app-text/asciidoc )
|
|
test? ( dev-libs/check )"
|
|
|
|
RDEPEND="${COMMON_DEPEND}
|
|
virtual/logger
|
|
skype? (
|
|
dev-python/skype4py[${PYTHON_USEDEP}]
|
|
net-im/skype
|
|
)
|
|
xinetd? ( sys-apps/xinetd )"
|
|
|
|
REQUIRED_USE="^^ ( purple || ( jabber msn oscar yahoo ) )
|
|
msn? ( || ( gnutls nss ssl ) )
|
|
jabber? ( !nss )"
|
|
|
|
pkg_setup() {
|
|
if use jabber && ! use gnutls && ! use ssl ; then
|
|
einfo
|
|
elog "You have enabled support for Jabber but do not have SSL"
|
|
elog "support enabled. This *will* prevent bitlbee from being"
|
|
elog "able to connect to SSL enabled Jabber servers. If you need to"
|
|
elog "connect to Jabber over SSL, enable ONE of the following use"
|
|
elog "flags: gnutls or ssl"
|
|
einfo
|
|
fi
|
|
|
|
use skype && python-single-r1_pkg_setup
|
|
|
|
enewgroup bitlbee
|
|
enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
|
|
}
|
|
|
|
src_prepare() {
|
|
sed -i \
|
|
-e "s@/usr/local/sbin/bitlbee@/usr/sbin/bitlbee@" \
|
|
-e "s/nobody/bitlbee/" \
|
|
-e "s/}/ disable = yes\n}/" \
|
|
doc/bitlbee.xinetd || die "sed failed in xinetd"
|
|
|
|
sed -i \
|
|
-e "s@mozilla-nss@nss@g" \
|
|
configure || die "sed failed in configure"
|
|
|
|
use skype && python_fix_shebang protocols/skype/skyped.py
|
|
|
|
epatch "${FILESDIR}"/${PN}-3.2.1-configure.patch
|
|
epatch "${FILESDIR}"/${PN}-3.2.1-tests.patch
|
|
epatch "${FILESDIR}"/${PN}-3.0.5-parallel-make.patch
|
|
}
|
|
|
|
src_configure() {
|
|
# ldap hard-disabled for now
|
|
local myconf="--ldap=0"
|
|
|
|
# setup plugins, protocol, ipv6 and debug
|
|
for flag in debug ipv6 msn jabber oscar plugins purple skype twitter yahoo ; do
|
|
if use ${flag} ; then
|
|
myconf="${myconf} --${flag}=1"
|
|
else
|
|
myconf="${myconf} --${flag}=0"
|
|
fi
|
|
done
|
|
|
|
# set otr
|
|
if use otr && use plugins ; then
|
|
myconf="${myconf} --otr=plugin"
|
|
else
|
|
if use otr ; then
|
|
ewarn "OTR support has been disabled automatically because it"
|
|
ewarn "requires the plugins USE flag."
|
|
fi
|
|
myconf="${myconf} --otr=0"
|
|
fi
|
|
|
|
# setup ssl use flags
|
|
if use gnutls ; then
|
|
myconf="${myconf} --ssl=gnutls"
|
|
einfo "Using gnutls for SSL support"
|
|
elif use ssl ; then
|
|
myconf="${myconf} --ssl=openssl"
|
|
einfo "Using openssl for SSL support"
|
|
elif use nss ; then
|
|
myconf="${myconf} --ssl=nss"
|
|
einfo "Using nss for SSL support"
|
|
else
|
|
myconf="${myconf} --ssl=bogus"
|
|
einfo "You will not have any encryption support enabled."
|
|
fi
|
|
|
|
# set event handler
|
|
if use libevent ; then
|
|
myconf="${myconf} --events=libevent"
|
|
else
|
|
myconf="${myconf} --events=glib"
|
|
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 --plugindir=/usr/$(get_libdir)/bitlbee \
|
|
--strip=0 ${myconf} || die "econf failed"
|
|
|
|
sed -i \
|
|
-e "/^EFLAGS/s:=:&${LDFLAGS} :" \
|
|
Makefile.settings || die "sed failed"
|
|
}
|
|
|
|
src_install() {
|
|
emake install install-etc install-doc install-dev DESTDIR="${D}"
|
|
|
|
keepdir /var/lib/bitlbee
|
|
fperms 700 /var/lib/bitlbee
|
|
fowners bitlbee:bitlbee /var/lib/bitlbee
|
|
|
|
dodoc doc/{AUTHORS,CHANGES,CREDITS,FAQ,README}
|
|
dodoc doc/user-guide/user-guide.txt
|
|
dohtml doc/user-guide/*.html
|
|
|
|
if use skype ; then
|
|
newdoc protocols/skype/NEWS NEWS-skype
|
|
newdoc protocols/skype/README README-skype
|
|
fi
|
|
|
|
doman doc/bitlbee.8 doc/bitlbee.conf.5
|
|
|
|
if use xinetd ; then
|
|
insinto /etc/xinetd.d
|
|
newins doc/bitlbee.xinetd bitlbee
|
|
fi
|
|
|
|
newinitd "${FILESDIR}"/bitlbee.initd bitlbee
|
|
newconfd "${FILESDIR}"/bitlbee.confd bitlbee
|
|
|
|
exeinto /usr/share/bitlbee
|
|
cd utils
|
|
doexe convert_purple.py bitlbee-ctl.pl
|
|
}
|
|
|
|
pkg_postinst() {
|
|
chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
|
|
chown -R bitlbee:bitlbee "${ROOT}"/var/run/bitlbee
|
|
|
|
einfo
|
|
elog "The utils included in bitlbee are now located in /usr/share/bitlbee"
|
|
elog
|
|
elog "NOTE: The IRSSI script is no longer provided by BitlBee."
|
|
elog
|
|
elog "The bitlbeed init script has been replaced by bitlbee."
|
|
elog "You must update your configuration."
|
|
einfo
|
|
}
|