From 8fb3edaf9095a7d19a0cfc10658eb3554e478826 Mon Sep 17 00:00:00 2001 From: Chí-Thanh Christopher Nguyễn Date: Sat, 19 Jun 2010 12:11:02 +0000 Subject: Attempt to fix bug #308945 (Portage version: 2.2_rc67/cvs/Linux x86_64) --- net-misc/siproxd/ChangeLog | 8 +- net-misc/siproxd/files/siproxd-libtool-2.2.patch | 12 +++ net-misc/siproxd/siproxd-0.8.0-r1.ebuild | 104 +++++++++++++++++++++++ 3 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 net-misc/siproxd/files/siproxd-libtool-2.2.patch create mode 100644 net-misc/siproxd/siproxd-0.8.0-r1.ebuild (limited to 'net-misc/siproxd') 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 + +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 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"||' 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 +} -- cgit v1.2.3-65-gdbad