commit:     e319077e56afb257b19adefbf0d83e8e93396614
Author:     Austin English <wizardedit <AT> gentoo <DOT> org>
AuthorDate: Wed May  4 00:42:00 2016 +0000
Commit:     Austin English <wizardedit <AT> gentoo <DOT> org>
CommitDate: Wed May  4 00:42:00 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e319077e

net-misc/ser: use #!/sbin/openrc-run instead of #!/sbin/runscript

Gentoo-Bug: https://bugs.gentoo.org/573846

Package-Manager: portage-2.2.26

 net-misc/ser/files/ser.rc6       |   2 +-
 net-misc/ser/ser-0.9.7-r2.ebuild | 178 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 179 insertions(+), 1 deletion(-)

diff --git a/net-misc/ser/files/ser.rc6 b/net-misc/ser/files/ser.rc6
index dfe74b0..61c0a33 100644
--- a/net-misc/ser/files/ser.rc6
+++ b/net-misc/ser/files/ser.rc6
@@ -1,4 +1,4 @@
-#!/sbin/runscript
+#!/sbin/openrc-run
 # Copyright 2002 Frauenhofer Gesellschaft FOKUS, Germany.
 # Distributed under the terms of the GNU General Public License, v2 or later
 # $Id$

diff --git a/net-misc/ser/ser-0.9.7-r2.ebuild b/net-misc/ser/ser-0.9.7-r2.ebuild
new file mode 100644
index 0000000..77f0459
--- /dev/null
+++ b/net-misc/ser/ser-0.9.7-r2.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib toolchain-funcs user
+
+ETHZ_PV="1.0"
+LDAP_PV="1.0"
+LDAPS_PV="1.0"
+SILOMAIL_PV="1.0"
+MODULES_PV="0.9.0"
+
+DESCRIPTION="SIP Express Router"
+HOMEPAGE="http://www.iptel.org/ser";
+SRC_URI="
+       http://ftp.iptel.org/pub/ser/${PV}/src/${P}_src.tar.gz
+        mirror://gentoo/silomail-${SILOMAIL_PV}-${PN}-${MODULES_PV}.tar.gz
+        mirror://gentoo/ethz-${ETHZ_PV}-${PN}-${MODULES_PV}.tar.gz
+        ldap? (
+               mirror://gentoo/ldap-${LDAP_PV}-${PN}-${MODULES_PV}.tar.gz
+               mirror://gentoo/ldaps-${LDAPS_PV}-${PN}-${MODULES_PV}.tar.gz
+               )"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~sparc x86"
+IUSE="ipv6 mysql radius postgres xmpp ldap ssl"
+
+RDEPEND="
+       mysql? ( virtual/mysql )
+       radius? ( >=net-dialup/radiusclient-ng-0.5.0 )
+       postgres? ( dev-db/postgresql:=[server] )
+       xmpp? ( dev-libs/expat )
+       ldap? (
+               net-nds/openldap
+               ssl? ( dev-libs/openssl:0= )
+       )"
+
+DEPEND="${RDEPEND}
+       >=sys-devel/bison-1.35
+       >=sys-devel/flex-2.5.4a"
+
+pkg_setup() {
+       enewgroup ser
+       enewuser  ser -1 -1 /dev/null ser
+}
+
+src_prepare() {
+       local modules extmodules MY_A MY_PATCH_A x
+       use ipv6 || \
+               sed -i -e "s/-DUSE_IPV6//g" Makefile.defs || die
+       sed -i -e 's/\(CFLAGS+=-mcpu=ultrasparc\) -minline-all-stringops/\1/g' \
+               Makefile.defs || die    #157109
+
+       # external modules
+       extmodules="silomail ethz"
+
+       if use mysql; then
+               modules="${modules} mysql"
+               epatch "${FILESDIR}/${P}-mysql.diff"
+       fi
+
+       if use radius; then
+               modules="${modules} auth_radius group_radius uri_radius 
avp_radius"
+               epatch "${FILESDIR}/${P}-radius.diff"
+       fi
+
+       use xmpp && \
+               modules="${modules} jabber"
+
+       use postgres && \
+               modules="${modules} postgres"
+
+       use ldap && \
+               extmodules="${extmodules} ldap"
+
+       use ldap && use ssl && \
+               extmodules="${extmodules} ldaps"
+
+       # put list of modules into Makefile, we need the list
+       # during compile and install phase...
+       sed -i -e "s:^\(include_modules.*\):\1 ${modules} ${extmodules}:" \
+               Makefile || die
+
+       # fix ser.cfg
+       sed -i -e "/force_send_socket(smaug:5080);/ d" \
+               etc/ser.cfg || die
+
+       # unpack external modules
+       # ugly i know...
+       for x in ${extmodules}; do
+               MY_A=$(eval echo ${x}-\${$(echo ${x} | tr "[:lower:]" 
"[:upper:]")_PV}-${PN}-${MODULES_PV})
+               MY_PATCH_A="${P}-extmod-${x}"
+               mkdir -p "${S}"/modules/${x} || die
+               cd "${S}"/modules/${x} || die
+               unpack ${MY_A}.tar.gz
+               # fix makefiles
+               if [[ -f "${FILESDIR}"/${MY_A}.diff ]]; then
+                       epatch "${FILESDIR}"/${MY_A}.diff
+               fi
+
+               # additional patches
+               if [[ -f "${FILESDIR}"/${MY_PATCH_A}.diff ]]; then
+                       epatch "${FILESDIR}"/${MY_PATCH_A}.diff
+               fi
+       done
+
+       # remove sasl if openldap hasn't been built with it
+       if use ldap && ! built_with_use net-nds/openldap sasl; then
+               sed -i -e "s:-lsasl::g" \
+                       "${S}"/modules/ldap/Makefile || die
+
+               if use ssl; then
+                       sed -i -e "s:-lsasl::g" \
+                        "${S}"/modules/ldaps/Makefile || die
+               fi
+       fi
+}
+
+src_compile() {
+       # add -fPIC
+       append-flags -fPIC
+
+       emake all \
+               CC="`tc-getCC`" \
+               CFLAGS="${CFLAGS}" \
+               cfg-prefix=/ \
+               cfg-target=/etc/ser/
+}
+
+src_install () {
+       emake install \
+               prefix="" \
+               bin-prefix="${D}"/usr/sbin \
+               bin-dir="" \
+               cfg-prefix="${D}"/etc \
+               cfg-dir=ser/ \
+               cfg-target=/etc/ser/ \
+               modules-prefix="${D}"/usr/$(get_libdir)/ser \
+               modules-dir=modules \
+               modules-target=/usr/$(get_libdir)/ser/modules/ \
+               man-prefix="${D}"/usr/share/man \
+               man-dir="" \
+               doc-prefix="${D}"/usr/share/doc \
+               doc-dir="${P}"
+
+       newinitd "${FILESDIR}"/ser.rc6 ser
+       newconfd "${FILESDIR}"/ser.confd ser
+       newsbin scripts/harv_ser.sh harv_ser.sh
+       newsbin scripts/sc serctl
+       newsbin scripts/ser_mysql.sh ser_mysql.sh
+
+       chown -R root:ser "${D}"/etc/ser || die
+       chmod 750 "${D}"/etc/ser || die
+       chmod 640 "${D}"/etc/ser/* || die
+
+       # fix manpages
+       sed -i  -e "s:^.B /ser-${PV}AUTHORS:.B /usr/share/doc/${PF}/AUTHORS:" \
+               -e "s:^.B /ser:.B /usr/sbin/ser:" \
+               "${D}"/usr/share/man/*/*  || die
+}
+
+pkg_preinst() {
+       has_version "${CATEGORY}/${PN}"
+       previous_installed_version=$?
+}
+
+pkg_postinst() {
+       if [[ $previous_installed_version = 0 ]] ; then
+               einfo "Changing permissions on ${ROOT}etc/ser"
+
+               chown -R root:ser "${ROOT}"/etc/ser
+               chmod 750 "${ROOT}"/etc/ser
+               chmod 640 "${ROOT}"/etc/ser/*
+       fi
+}

Reply via email to