/[gentoo-x86]/net-misc/ser/ser-0.9.4.ebuild
Gentoo

Contents of /net-misc/ser/ser-0.9.4.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.9 - (show annotations) (download)
Thu Jun 17 21:56:41 2010 UTC (2 years, 11 months ago) by patrick
Branch: MAIN
Changes since 1.8: +3 -3 lines
Migrating away from deprecated postgres virtuals
(Portage version: 2.2_rc67/cvs/Linux x86_64)

1 # Copyright 1999-2010 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/net-misc/ser/ser-0.9.4.ebuild,v 1.8 2008/06/15 11:04:25 zmedico Exp $
4
5 inherit eutils flag-o-matic
6
7 IUSE="ipv6 mysql radius postgres jabber ldap ssl"
8
9 ETHZ_PV="1.0"
10 LDAP_PV="1.0"
11 LDAPS_PV="1.0"
12 SILOMAIL_PV="1.0"
13
14 DESCRIPTION="SIP Express Router"
15 HOMEPAGE="http://www.iptel.org/ser"
16 SRC_URI="ftp://ftp.berlios.de/pub/ser/${PV}/src/${P}_src.tar.gz
17 mirror://gentoo/silomail-${SILOMAIL_PV}-${PN}-0.9.0.tar.gz
18 mirror://gentoo/ethz-${ETHZ_PV}-${PN}-0.9.0.tar.gz
19 ldap? ( mirror://gentoo/ldap-${LDAP_PV}-${PN}-0.9.0.tar.gz
20 mirror://gentoo/ldaps-${LDAPS_PV}-${PN}-0.9.0.tar.gz )"
21
22 SLOT="0"
23 LICENSE="GPL-2"
24 KEYWORDS="~ppc ~sparc x86"
25
26 RDEPEND="
27 mysql? ( virtual/mysql )
28 radius? ( >=net-dialup/radiusclient-ng-0.5.0 )
29 postgres? ( dev-db/postgresql-server )
30 jabber? ( dev-libs/expat )
31 ldap? (
32 net-nds/openldap
33 ssl? ( dev-libs/openssl )
34 )"
35
36 DEPEND="${RDEPEND}
37 >=sys-devel/bison-1.35
38 >=sys-devel/flex-2.5.4a"
39
40 pkg_setup() {
41 enewgroup ser
42 enewuser ser -1 -1 /dev/null ser
43 }
44
45 src_unpack() {
46 local modules extmodules MY_A
47
48 # unpack ser source
49 unpack ${P}_src.tar.gz
50
51 cd ${S}
52 use ipv6 || \
53 sed -i -e "s/-DUSE_IPV6//g" Makefile.defs
54
55 # external modules
56 extmodules="silomail ethz"
57
58 use mysql && \
59 modules="${modules} mysql"
60
61 use radius && \
62 modules="${modules} auth_radius group_radius uri_radius avp_radius"
63
64 use jabber && \
65 modules="${modules} jabber"
66
67 use postgres && \
68 modules="${modules} postgres"
69
70 use ldap && \
71 extmodules="${extmodules} ldap"
72
73 use ldap && use ssl && \
74 extmodules="${extmodules} ldaps"
75
76 # put list of modules into Makefile, we need the list
77 # during compile and install phase...
78 sed -i -e "s:^\(include_modules.*\):\1 ${modules} ${extmodules}:" \
79 Makefile
80
81 # fix ser.cfg
82 sed -i -e "/force_send_socket(smaug:5080);/ d" \
83 etc/ser.cfg
84
85 # unpack external modules
86 # ugly i know...
87 for x in ${extmodules}; do
88 MY_A=$(eval echo ${x}-\${$(echo ${x} | tr "[:lower:]" "[:upper:]")_PV}-${PN}-0.9.0)
89 mkdir -p ${S}/modules/${x}
90 cd ${S}/modules/${x}
91 unpack ${MY_A}.tar.gz
92 # fix makefiles
93 if [[ -f ${FILESDIR}/${MY_A}.diff ]]; then
94 epatch ${FILESDIR}/${MY_A}.diff
95 fi
96 done
97
98 if use mysql || use postgres; then
99 sed -i -e "s:^#DEFS+=-DSQL_ACC$:DEFS+=-DSQL_ACC:" \
100 ${S}/modules/acc/Makefile
101 fi
102
103 # remove sasl if openldap hasn't been built with it
104 if use ldap && ! built_with_use net-nds/openldap sasl; then
105 sed -i -e "s:-lsasl::g" \
106 ${S}/modules/ldap/Makefile
107
108 if use ssl; then
109 sed -i -e "s:-lsasl::g" \
110 ${S}/modules/ldaps/Makefile
111 fi
112 fi
113 }
114
115 src_compile() {
116 # add -fPIC
117 append-flags -fPIC
118
119 make all \
120 CFLAGS="${CFLAGS}" \
121 cfg-prefix=/ \
122 cfg-target=/etc/ser/ \
123 ${myconf} || die
124 }
125
126 src_install () {
127 make install \
128 prefix="" \
129 bin-prefix=${D}/usr/sbin \
130 bin-dir="" \
131 cfg-prefix=${D}/etc \
132 cfg-dir=ser/ \
133 cfg-target=/etc/ser/ \
134 modules-prefix=${D}/usr/lib/ser \
135 modules-dir=modules \
136 modules-target=/usr/lib/ser/modules/ \
137 man-prefix=${D}/usr/share/man \
138 man-dir="" \
139 doc-prefix=${D}/usr/share/doc \
140 doc-dir=${P} || die
141
142 newinitd ${FILESDIR}/ser.rc6 ser
143 newconfd ${FILESDIR}/ser.confd ser
144 exeinto /usr/sbin
145 newexe scripts/harv_ser.sh harv_ser.sh
146 newexe scripts/sc serctl
147 newexe scripts/ser_mysql.sh ser_mysql.sh
148
149 chown -R root:ser ${D}/etc/ser
150 chmod 750 ${D}/etc/ser
151 chmod 640 ${D}/etc/ser/*
152
153 # fix manpages
154 sed -i -e "s:^.B /ser-${PV}AUTHORS:.B /usr/share/doc/${PF}/AUTHORS:" \
155 -e "s:^.B /ser:.B /usr/sbin/ser:" \
156 ${D}/usr/share/man/*/*
157 }
158
159 pkg_preinst() {
160 has_version "${CATEGORY}/${PN}"
161 previous_installed_version=$?
162 }
163
164 pkg_postinst() {
165 if [[ $previous_installed_version = 0 ]] ; then
166 einfo "Changing permissions on ${ROOT}etc/ser"
167
168 chown -R root:ser ${ROOT}/etc/ser
169 chmod 750 ${ROOT}/etc/ser
170 chmod 640 ${ROOT}/etc/ser/*
171 fi
172 }

  ViewVC Help
Powered by ViewVC 1.1.13