Gentoo Archives: gentoo-commits

From: "Tobias Scherbaum (dertobi123)" <dertobi123@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-libs/cyrus-sasl: ChangeLog cyrus-sasl-2.1.23.ebuild
Date: Mon, 18 May 2009 16:24:13
Message-Id: E1M65dK-0003n0-PD@stork.gentoo.org
1 dertobi123 09/05/18 16:24:10
2
3 Modified: ChangeLog
4 Added: cyrus-sasl-2.1.23.ebuild
5 Log:
6 Version bump, p.masked though for ABI change without soname change (security bug #270261)
7 (Portage version: 2.2_rc33/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.196 dev-libs/cyrus-sasl/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog?rev=1.196&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog?rev=1.196&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog?r1=1.195&r2=1.196
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog,v
19 retrieving revision 1.195
20 retrieving revision 1.196
21 diff -u -r1.195 -r1.196
22 --- ChangeLog 8 May 2009 00:58:58 -0000 1.195
23 +++ ChangeLog 18 May 2009 16:24:10 -0000 1.196
24 @@ -1,6 +1,13 @@
25 # ChangeLog for dev-libs/cyrus-sasl
26 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog,v 1.195 2009/05/08 00:58:58 loki_val Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/ChangeLog,v 1.196 2009/05/18 16:24:10 dertobi123 Exp $
29 +
30 +*cyrus-sasl-2.1.23 (18 May 2009)
31 +
32 + 18 May 2009; Tobias Scherbaum <dertobi123@g.o>
33 + +cyrus-sasl-2.1.23.ebuild:
34 + Version bump, p.masked though for ABI change without soname change (security
35 + bug #270261)
36
37 08 May 2009; Peter Alfredsen <loki_val@g.o>
38 cyrus-sasl-2.1.22-r2.ebuild, +files/cyrus-sasl-2.1.22-gcc44.patch:
39
40
41
42 1.1 dev-libs/cyrus-sasl/cyrus-sasl-2.1.23.ebuild
43
44 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-libs/cyrus-sasl/cyrus-sasl-2.1.23.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-libs/cyrus-sasl/cyrus-sasl-2.1.23.ebuild?rev=1.1&content-type=text/plain
46
47 Index: cyrus-sasl-2.1.23.ebuild
48 ===================================================================
49 # Copyright 1999-2009 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/cyrus-sasl-2.1.23.ebuild,v 1.1 2009/05/18 16:24:10 dertobi123 Exp $
52
53 WANT_AUTOCONF="latest"
54 WANT_AUTOMAKE="1.7"
55
56 inherit eutils flag-o-matic multilib autotools pam java-pkg-opt-2
57
58 ntlm_patch="${PN}-2.1.22-ntlm_impl-spnego.patch.gz"
59 SASLAUTHD_CONF_VER="2.1.21"
60
61 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
62
63 DESCRIPTION="The Cyrus SASL (Simple Authentication and Security Layer)."
64 HOMEPAGE="http://asg.web.cmu.edu/sasl/"
65 SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${P}.tar.gz
66 ntlm_unsupported_patch? ( mirror://gentoo/${ntlm_patch} )"
67 LICENSE="as-is"
68 SLOT="2"
69 IUSE="authdaemond berkdb crypt gdbm kerberos ldap mysql ntlm_unsupported_patch pam postgres sample srp ssl urandom"
70
71 RDEPEND="authdaemond? ( || ( >=net-mail/courier-imap-3.0.7 >=mail-mta/courier-0.46 ) )
72 berkdb? ( >=sys-libs/db-3.2 )
73 gdbm? ( >=sys-libs/gdbm-1.8.0 )
74 java? ( >=virtual/jre-1.4 )
75 kerberos? ( virtual/krb5 )
76 ldap? ( >=net-nds/openldap-2.0.25 )
77 mysql? ( virtual/mysql )
78 ntlm_unsupported_patch? ( >=net-fs/samba-3.0.9 )
79 pam? ( virtual/pam )
80 postgres? ( >=virtual/postgresql-base-7.2 )
81 ssl? ( >=dev-libs/openssl-0.9.6d )"
82 DEPEND="${RDEPEND}
83 >=sys-apps/sed-4
84 java? ( >=virtual/jdk-1.4 )"
85
86 pkg_setup() {
87 if use gdbm && use berkdb ; then
88 echo
89 ewarn "You have both the 'gdbm' and 'berkdb' USE flags enabled."
90 ewarn "Will default to GNU DB as your SASLdb database backend."
91 ewarn "If you want to build with BerkeleyDB support, hit Control-C now,"
92 ewarn "change your USE flags -gdbm and emerge again."
93 echo
94 ewarn "Waiting 10 seconds before starting ..."
95 ewarn "(Control-C to abort) ..."
96 epause 10
97 fi
98 java-pkg-opt-2_pkg_setup
99 }
100
101 src_unpack() {
102 unpack ${A}
103 cd "${S}"
104
105 # Fix default port name for rimap auth mechanism.
106 sed -e '/define DEFAULT_REMOTE_SERVICE/s:imap:imap2:' \
107 -i saslauthd/auth_rimap.c || die "sed failed"
108
109 # Fix include path for newer PostgreSQL versions.
110 epatch "${FILESDIR}/${PN}-2.1.17-pgsql-include.patch"
111
112 # UNSUPPORTED ntlm patch (bug #81342).
113 use ntlm_unsupported_patch && epatch "${DISTDIR}/${ntlm_patch}"
114
115 # --as-needed fix.
116 epatch "${FILESDIR}/${PN}-2.1.22-as-needed.patch"
117
118 # Support for crypted passwords (bug #45181).
119 use crypt && epatch "${FILESDIR}/${PN}-2.1.19-checkpw.c.patch"
120
121 # Upstream doesn't even honor their own configure options... grumble
122 sed -i 's:^sasldir = .*$:sasldir = $(plugindir):' \
123 "${S}"/plugins/Makefile.{am,in} || die "sed failed"
124
125 # Fixes for bug #152544.
126 epatch "${FILESDIR}/${PN}-2.1.22-crypt.patch"
127
128 # Fix QA issues.
129 epatch "${FILESDIR}/${PN}-2.1.22-qa.patch"
130
131 # support new db versions #192753
132 epatch "${FILESDIR}/${PN}-2.1.22-db4.patch"
133
134 # Support gcc-4.4 #248738
135 epatch "${FILESDIR}/${PN}-2.1.22-gcc44.patch"
136
137 # Recreate configure.
138 rm -f "${S}/config/libtool.m4" || die "rm libtool.m4 failed"
139 AT_M4DIR="${S}/cmulocal ${S}/config" eautoreconf
140 }
141
142 src_compile() {
143 # Fix QA issues.
144 append-flags -fno-strict-aliasing
145 append-flags -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -D_BSD_SOURCE -DLDAP_DEPRECATED
146
147 # Java support.
148 use java && export JAVAC="${JAVAC} ${JAVACFLAGS}"
149
150 local myconf="--enable-login --enable-ntlm --enable-auth-sasldb --disable-krb4 --disable-otp"
151 myconf="${myconf} `use_with ssl openssl`"
152 myconf="${myconf} `use_with pam`"
153 myconf="${myconf} `use_with ldap`"
154 myconf="${myconf} `use_enable ldap ldapdb`"
155 myconf="${myconf} `use_enable sample`"
156 myconf="${myconf} `use_enable kerberos gssapi`"
157 myconf="${myconf} `use_with mysql` `use_enable mysql`"
158 myconf="${myconf} `use_enable postgres`"
159 use postgres && myconf="${myconf} `use_with postgres pgsql $(pg_config --libdir)`"
160
161 # Add srp USE (bug #81970).
162 myconf="${myconf} `use_enable srp`"
163 # Java support.
164 myconf="${myconf} `use_enable java` `use_with java javahome ${JAVA_HOME}`"
165 # Add authdaemond support (bug #56523).
166 if use authdaemond ; then
167 myconf="${myconf} --with-authdaemond=/var/lib/courier/authdaemon/socket"
168 fi
169
170 # Fix for bug #59634.
171 if ! use ssl ; then
172 myconf="${myconf} --without-des"
173 fi
174
175 if use mysql || use postgres ; then
176 myconf="${myconf} --enable-sql"
177 else
178 myconf="${myconf} --disable-sql"
179 fi
180
181 # Default to GDBM if both 'gdbm' and 'berkdb' are present.
182 if use gdbm ; then
183 einfo "Building with GNU DB as database backend for your SASLdb"
184 myconf="${myconf} --with-dblib=gdbm"
185 elif use berkdb ; then
186 einfo "Building with BerkeleyDB as database backend for your SASLdb"
187 myconf="${myconf} --with-dblib=berkeley"
188 else
189 einfo "Building without SASLdb support"
190 myconf="${myconf} --with-dblib=none"
191 fi
192
193 # Use /dev/urandom instead of /dev/random (bug #46038).
194 use urandom && myconf="${myconf} --with-devrandom=/dev/urandom"
195
196 econf \
197 --with-saslauthd=/var/lib/sasl2 \
198 --with-pwcheck=/var/lib/sasl2 \
199 --with-configdir=/etc/sasl2 \
200 --with-plugindir=/usr/$(get_libdir)/sasl2 \
201 --with-dbpath=/etc/sasl2/sasldb2 \
202 ${myconf} || die "econf failed"
203
204 # We force -j1 for bug #110066.
205 emake -j1 || die "emake failed"
206
207 # Default location for java classes breaks OpenOffice (bug #60769).
208 # Thanks to axxo@g.o for the solution.
209 cd "${S}"
210 if use java ; then
211 jar -cvf ${PN}.jar -C java $(find java -name "*.class")
212 fi
213
214 # Add testsaslauthd (bug #58768).
215 cd "${S}/saslauthd"
216 emake testsaslauthd || die "emake testsaslauthd failed"
217 }
218
219 src_install() {
220 emake -j1 DESTDIR="${D}" install || die "emake install failed"
221 keepdir /var/lib/sasl2 /etc/sasl2
222
223 # Install everything necessary so users can build sample
224 # client/server (bug #64733).
225 if use sample ; then
226 insinto /usr/share/${PN}-2/examples
227 doins aclocal.m4 config.h config.status configure.in
228 dosym /usr/include/sasl /usr/share/${PN}-2/examples/include
229 exeinto /usr/share/${PN}-2/examples
230 doexe libtool
231 insinto /usr/share/${PN}-2/examples/sample
232 doins sample/*.{c,h} sample/*Makefile*
233 insinto /usr/share/${PN}-2/examples/sample/.deps
234 doins sample/.deps/*
235 dodir /usr/share/${PN}-2/examples/lib
236 dosym /usr/$(get_libdir)/libsasl2.la /usr/share/${PN}-2/examples/lib/libsasl2.la
237 dodir /usr/share/${PN}-2/examples/lib/.libs
238 dosym /usr/$(get_libdir)/libsasl2.so /usr/share/${PN}-2/examples/lib/.libs/libsasl2.so
239 fi
240
241 # Default location for java classes breaks OpenOffice (bug #60769).
242 if use java ; then
243 java-pkg_dojar ${PN}.jar
244 java-pkg_regso "${D}/usr/$(get_libdir)/libjavasasl.so"
245 # hackish, don't wanna dig through makefile
246 rm -Rf "${D}/usr/$(get_libdir)/java"
247 docinto "java"
248 dodoc "${S}/java/README" "${FILESDIR}/java.README.gentoo" "${S}"/java/doc/*
249 dodir "/usr/share/doc/${PF}/java/Test"
250 insinto "/usr/share/doc/${PF}/java/Test"
251 doins "${S}"/java/Test/*.java || die "Failed to copy java files to /usr/share/doc/${PF}/java/Test"
252 fi
253
254 docinto ""
255 dodoc AUTHORS ChangeLog NEWS README doc/TODO doc/*.txt
256 newdoc pwcheck/README README.pwcheck
257 dohtml doc/*.html
258
259 docinto "saslauthd"
260 dodoc saslauthd/{AUTHORS,ChangeLog,LDAP_SASLAUTHD,NEWS,README}
261
262 newpamd "${FILESDIR}/saslauthd.pam-include" saslauthd || die "Failed to install saslauthd to /etc/pam.d"
263
264 newinitd "${FILESDIR}/pwcheck.rc6" pwcheck || die "Failed to install pwcheck to /etc/init.d"
265
266 newinitd "${FILESDIR}/saslauthd2.rc6" saslauthd || die "Failed to install saslauthd to /etc/init.d"
267 newconfd "${FILESDIR}/saslauthd-${SASLAUTHD_CONF_VER}.conf" saslauthd || die "Failed to install saslauthd to /etc/conf.d"
268
269 exeinto /usr/sbin
270 newexe "${S}/saslauthd/testsaslauthd" testsaslauthd || die "Failed to install testsaslauthd"
271 }
272
273 pkg_postinst () {
274 # Generate an empty sasldb2 with correct permissions.
275 if ( use berkdb || use gdbm ) && [[ ! -f "${ROOT}/etc/sasl2/sasldb2" ]] ; then
276 einfo "Generating an empty sasldb2 with correct permissions ..."
277 echo "p" | "${ROOT}/usr/sbin/saslpasswd2" -f "${ROOT}/etc/sasl2/sasldb2" -p login \
278 || die "Failed to generate sasldb2"
279 "${ROOT}/usr/sbin/saslpasswd2" -f "${ROOT}/etc/sasl2/sasldb2" -d login \
280 || die "Failed to delete temp user"
281 chown root:mail "${ROOT}/etc/sasl2/sasldb2" \
282 || die "Failed to chown ${ROOT}/etc/sasl2/sasldb2"
283 chmod 0640 "${ROOT}/etc/sasl2/sasldb2" \
284 || die "Failed to chmod ${ROOT}/etc/sasl2/sasldb2"
285 fi
286
287 if use sample ; then
288 elog "You have chosen to install sources for the example client and server."
289 elog "To build these, please type:"
290 elog "\tcd /usr/share/${PN}-2/examples/sample && make"
291 fi
292
293 if use authdaemond ; then
294 elog "You need to add a user running a service using Courier's"
295 elog "authdaemon to the 'mail' group. For example, do:"
296 elog " gpasswd -a postfix mail"
297 elog "to add the 'postfix' user to the 'mail' group."
298 fi
299 }