summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2010-06-19 12:11:02 +0000
committerChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2010-06-19 12:11:02 +0000
commit8fb3edaf9095a7d19a0cfc10658eb3554e478826 (patch)
treec0b3dcd7428f508022d14cea22df0e1dd8d81776
parentDrop alpha/arm/ia64/sh/sparc keywords since this wasn't tested at all AFAIK (diff)
downloadgentoo-2-8fb3edaf9095a7d19a0cfc10658eb3554e478826.tar.gz
gentoo-2-8fb3edaf9095a7d19a0cfc10658eb3554e478826.tar.bz2
gentoo-2-8fb3edaf9095a7d19a0cfc10658eb3554e478826.zip
Attempt to fix bug #308945
(Portage version: 2.2_rc67/cvs/Linux x86_64)
-rw-r--r--net-misc/siproxd/ChangeLog8
-rw-r--r--net-misc/siproxd/files/siproxd-libtool-2.2.patch12
-rw-r--r--net-misc/siproxd/siproxd-0.8.0-r1.ebuild104
3 files changed, 123 insertions, 1 deletions
diff --git a/net-misc/siproxd/ChangeLog b/net-misc/siproxd/ChangeLog
index 840b9b61269a..c53aaf2e060b 100644
--- a/net-misc/siproxd/ChangeLog
+++ b/net-misc/siproxd/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-misc/siproxd
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/siproxd/ChangeLog,v 1.15 2010/03/03 12:17:21 fauli Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/siproxd/ChangeLog,v 1.16 2010/06/19 12:11:02 chithanh Exp $
+
+*siproxd-0.8.0-r1 (19 Jun 2010)
+
+ 19 Jun 2010; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+ +siproxd-0.8.0-r1.ebuild, +files/siproxd-libtool-2.2.patch:
+ Attempt to fix bug #308945, thanks to ssuominen for the pointer
03 Mar 2010; Christian Faulhammer <fauli@gentoo.org> siproxd-0.8.0.ebuild:
stable x86, bug 299419
diff --git a/net-misc/siproxd/files/siproxd-libtool-2.2.patch b/net-misc/siproxd/files/siproxd-libtool-2.2.patch
new file mode 100644
index 000000000000..6210ef0d7618
--- /dev/null
+++ b/net-misc/siproxd/files/siproxd-libtool-2.2.patch
@@ -0,0 +1,12 @@
+diff -r -U 2 a/src/plugins.h b/src/plugins.h
+--- a/src/plugins.h 2010-01-07 12:44:38.000000000 +0100
++++ b/src/plugins.h 2010-06-19 13:56:30.960679284 +0200
+@@ -25,4 +25,8 @@
+
+
++#ifndef lt__PROGRAM__LTX_preloaded_symbols
++#define lt__PROGRAM__LTX_preloaded_symbols lt_libltdl_LTX_preloaded_symbols
++#endif
++
+ /* Plugins must return STS_SUCCESS / SUCCESS_FAILURE */
+
diff --git a/net-misc/siproxd/siproxd-0.8.0-r1.ebuild b/net-misc/siproxd/siproxd-0.8.0-r1.ebuild
new file mode 100644
index 000000000000..8c160cf7916c
--- /dev/null
+++ b/net-misc/siproxd/siproxd-0.8.0-r1.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/siproxd/siproxd-0.8.0-r1.ebuild,v 1.1 2010/06/19 12:11:02 chithanh Exp $
+
+EAPI="2"
+
+inherit eutils
+
+DESCRIPTION="A proxy/masquerading daemon for the SIP protocol"
+HOMEPAGE="http://siproxd.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples doc static"
+# TODO: debug can be used but dmalloc is breaking the build
+# upstream has been contacted, see bug 2649238 in their bugtracker
+
+RDEPEND=">=net-libs/libosip-3.0.0"
+# debug? ( dev-libs/dmalloc[threads] )"
+DEPEND="${RDEPEND}
+ doc? ( app-text/docbook-sgml-utils
+ app-text/docbook-sgml-dtd:4.2 )"
+# docbook-sgml-utils is for building doc
+# docbook-sgml-dtd is for the doc dtd even if docbook-sgml-utils depends on it
+
+pkg_setup() {
+ enewgroup siproxd
+ enewuser siproxd -1 -1 /dev/null siproxd
+}
+
+src_prepare() {
+ # make the daemon run as user 'siproxd' by default
+ sed -i -e "s:nobody:siproxd:" doc/siproxd.conf.example \
+ || die "patching doc/siproxd.conf.example failed"
+ # do not fail when building with external libltdl
+ sed -i 's/libltdl //' Makefile.in Makefile.am || die "patching Makefile failed"
+ epatch "${FILESDIR}/${PN}-libtool-2.2.patch"
+ # do not crash when building with external libltdl, bug 308495
+ sed -i 's|"../libltdl/ltdl.h"|<ltdl.h>|' src/plugins.h || die "patching plugins.h failed"
+}
+
+src_configure() {
+ # static-libosip2 make it link statically against libosip2
+ # static build static version of plugins, forced to true
+ econf \
+ $(use_enable doc) \
+ $(use_enable static static-libosip2) \
+ --enable-static
+ #$(use debug && use_enable debug dmalloc) \
+
+ # statically linked plugins to libosip2 causes a shared lib linking with
+ # static lib (gcc seems not to like it : portable issue it says).
+ # there was also DT_TEXREL issue and stripping of static plugins failed
+ # so shared lib has to be used for plugins
+ # upstream has been contacted, see bug 2649351 in their bugtracker
+ if use static; then
+ sed -i -r -e \
+ "s:LIBS =(.*)( \/[^ ]*libosip[^ ]*\.a)( \/[^ ]*libosip[^ ]*\.a)(.*):LIBS_STATIC =\1\2\3\4\nLIBS = \1\4 -losip2 -losipparser2:" \
+ src/Makefile || die "patching src/Makefile failed"
+ sed -i -e \
+ "s:\$(siproxd_LDADD) \$(LIBS):\$(siproxd_LDADD) \$(LIBS_STATIC):" \
+ src/Makefile || die "patching src/Makefile failed"
+ fi
+}
+
+src_install() {
+ einstall || die "einstall failed"
+
+ newinitd "${FILESDIR}"/${PN}.rc6 ${PN} || die "newinitd failed"
+
+ dodoc AUTHORS ChangeLog NEWS README RELNOTES TODO \
+ doc/FAQ doc/FLI4L_HOWTO.txt doc/KNOWN_BUGS \
+ || die "dodoc failed"
+
+ if use doc; then
+ dodoc doc/RFC3261_compliance.txt || die "dodoc failed"
+ # auto-generated doc is not auto-installed
+ # upstream has been contacted, see bug 2649333 in their bugtracker
+ dohtml -r doc/html/ || die "dohtml failed"
+ # pdf is not build all the time
+ if built_with_use app-text/docbook-sgml-utils jadetex; then
+ dodoc doc/pdf/*.pdf || die "dodoc failed"
+ fi
+ fi
+
+ if use examples; then
+ docinto examples
+ dodoc doc/sample_*.txt || die "dodoc failed"
+ fi
+
+ # set up siproxd directories
+ keepdir /var/{lib,run}/${PN} || die "keepdir failed"
+ fowners siproxd:siproxd /var/{lib,run}/${PN} || die "fowners failed"
+}
+
+pkg_postinst() {
+ if use static; then
+ elog "static USE flag does not build a _fully_ statically linked binary"
+ elog "only libosip2 and libosipparser2 are statically linked"
+ elog "In addition, plugins are dynamically linked with those libs"
+ fi
+}