diff options
Diffstat (limited to 'app-mobilephone/kannel/kannel-1.5.0.ebuild')
-rw-r--r-- | app-mobilephone/kannel/kannel-1.5.0.ebuild | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/app-mobilephone/kannel/kannel-1.5.0.ebuild b/app-mobilephone/kannel/kannel-1.5.0.ebuild new file mode 100644 index 000000000000..729b44c31550 --- /dev/null +++ b/app-mobilephone/kannel/kannel-1.5.0.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-mobilephone/kannel/kannel-1.5.0.ebuild,v 1.1 2013/08/25 19:54:39 creffett Exp $ + +EAPI=5 +WANT_AUTOMAKE=none + +inherit eutils autotools flag-o-matic ssl-cert user + +DESCRIPTION="Powerful SMS and WAP gateway" +HOMEPAGE="http://www.kannel.org/" +SRC_URI="http://www.kannel.org/download/${PV}/gateway-${PV}.tar.gz" + +LICENSE="Apache-1.1" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug doc mysql pam pcre postgres sqlite ssl" + +RESTRICT="test" # some tests fail with "address already in use" + +RDEPEND="sys-libs/e2fsprogs-libs + dev-libs/libxml2 + dev-lang/perl + sys-libs/zlib + ssl? ( dev-libs/openssl ) + mysql? ( virtual/mysql ) + sqlite? ( dev-db/sqlite:3 ) + postgres? ( dev-db/postgresql-server ) + pcre? ( dev-libs/libpcre ) + pam? ( virtual/pam ) +" +DEPEND="${RDEPEND} + >=sys-devel/bison-2.2 + doc? ( media-gfx/transfig + app-text/jadetex + app-text/docbook-dsssl-stylesheets + app-text/docbook-sgml-dtd:3.1 ) +" + +S="${WORKDIR}/gateway-${PV}" + +pkg_setup() { + enewgroup kannel + enewuser kannel -1 -1 /var/log/kannel kannel +} + +src_prepare() { + epatch "${FILESDIR}/${PN}-1.5.0-custom-wap-ports.patch" + epatch "${FILESDIR}/${PN}-1.4.3-autotools.patch" + epatch "${FILESDIR}/${PN}-1.4.3-external-libuuid.patch" + + #by default, use current directory for logging + sed -i -e 's:/tmp/::' doc/examples/kannel.conf + + eautoconf +} + +src_configure() { + append-flags -fno-strict-aliasing # some code breaks strict aliasing + econf --docdir=/usr/share/doc/${PF} \ + --enable-localtime \ + --disable-start-stop-daemon \ + --without-sqlite2 \ + $(use_enable pam) \ + $(use_enable debug debug) \ + $(use_enable pcre) \ + $(use_enable doc docs) \ + $(use_enable ssl) \ + $(use_with mysql) \ + $(use_with sqlite sqlite3) \ + $(use_with postgres pgsql) \ + || die "econf failed" +} + +# phase disabled by RESTRICT +# src_test() { +# emake check || die "emake check failed" +# } + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + + if use doc; then + emake -j1 DESTDIR="${D}" install-docs || die "emake install-docs failed" + fi + dodoc README + + diropts -g kannel -m0750 + dodir /etc/kannel + insinto /etc/kannel + newins doc/examples/kannel.conf kannel.conf.sample + + local f + for f in bearerbox smsbox wapbox; do + newinitd "${FILESDIR}/kannel-$f.initd" kannel-$f + done + + diropts -g kannel -m0770 + keepdir /var/log/kannel /var/run/kannel +} + +pkg_postinst() { + if use ssl; then + elog "SSL certificate can be created by running" + elog " emerge --config =${CATEGORY}/${PF}" + fi +} + +pkg_config() { + if use ssl; then + if install_cert /etc/ssl/kannel; then + chown kannel "${ROOT}"etc/ssl/kannel.{pem,key} + einfo "For using this certificate, you have to add following line to your kannel.conf:" + einfo ' ssl-client-certkey-file = "/etc/ssl/kannel.pem"' + einfo ' ssl-server-cert-file = "/etc/ssl/kannel.crt"' + einfo ' ssl-server-key-file = "/etc/ssl/kannel.key"' + fi + else + eerror "This phase exists only for creating kannel SSL certificate" + eerror "and ssl USE flag is disabled for this package!" + fi +} |