# $Id$ # Maintainer: Jan de Groot # This package spans multiple repositories. # Always build from cyrus-sasl/trunk and merge changes to libsasl/trunk. #pkgbase=('cyrus-sasl') #pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql') pkgname=libsasl pkgver=2.1.26 pkgrel=12 pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" arch=('x86_64') url="http://cyrusimap.web.cmu.edu/" license=('custom') options=('!makeflags') makedepends=('postgresql-libs' 'libmariadbclient' 'libldap' 'krb5' 'openssl' 'sqlite') source=(ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-${pkgver}.tar.gz cyrus-sasl-2.1.22-qa.patch cyrus-sasl-2.1.26-size_t.patch 0010_maintainer_mode.patch 0011_saslauthd_ac_prog_libtool.patch 0025_ld_as_needed.patch 0026_drop_krb5support_dependency.patch 0030-dont_use_la_files_for_opening_plugins.patch saslauthd.service saslauthd.conf.d tmpfiles.conf CVE-2013-4122.patch cyrus-sasl-sql.patch cyrus-sasl-gssapi.patch cyrus-sasl-2.1.27-openssl-1.1.0.patch fix-pkgconfig.patch) md5sums=('a7f4e5e559a0e37b3ffc438c9456e425' '79b8a5e8689989e2afd4b7bda595a7b1' 'f45aa8c42b32e0569ab3d14a83485b37' 'f45d8b60e8f74dd7f7c2ec1665fa602a' '9d93880514cb5ff5da969f1ceb64a661' '62bf892fe4d1df41ff748e91a1afaf67' 'b7848957357e7c02d6490102be496bf9' '8e7106f32e495e9ade69014fd1b3352a' '3499dcd610ad1ad58e0faffde2aa7a23' '49219af5641150edec288a3fdb65e7c1' '45bb0192d2f188066240b9a66ee6365f' 'c5f0ec88c584a75c14d7f402eaeed7ef' '82c0f66fdc5c1145eb48ea9116c27931' '0363b1a0337474a57b1f75f72fe88fa3' 'c8a385bbca9bd79910c6bda3dd02845c' '409727695f9f28a3c43e340232462ff6') prepare() { cd cyrus-sasl-$pkgver patch -Np1 -i ../cyrus-sasl-2.1.22-qa.patch patch -Np1 -i ../cyrus-sasl-2.1.26-size_t.patch patch -Np1 -i ../0010_maintainer_mode.patch patch -Np1 -i ../0011_saslauthd_ac_prog_libtool.patch patch -Np1 -i ../0025_ld_as_needed.patch patch -Np1 -i ../0026_drop_krb5support_dependency.patch patch -Np1 -i ../0030-dont_use_la_files_for_opening_plugins.patch patch -Np1 -i ../CVE-2013-4122.patch patch -Np0 -i ../cyrus-sasl-sql.patch patch -Np1 -i ../cyrus-sasl-gssapi.patch patch -Np1 -i ../cyrus-sasl-2.1.27-openssl-1.1.0.patch patch -Np1 -i ../fix-pkgconfig.patch sed -e 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' -e 's/libmysqlclient.a/libmysqlclient.so/' -i configure.in } build() { export CFLAGS="$CFLAGS -fPIC" cd cyrus-sasl-$pkgver rm -f config/config.guess config/config.sub rm -f config/ltconfig config/ltmain.sh config/libtool.m4 rm -fr autom4te.cache libtoolize -c aclocal -I config -I cmulocal automake -a -c autoheader autoconf pushd saslauthd rm -f config/config.guess config/config.sub rm -f config/ltconfig config/ltmain.sh config/libtool.m4 rm -fr autom4te.cache libtoolize -c aclocal -I config -I ../cmulocal -I ../config automake -a -c autoheader autoconf popd ./configure --prefix=/usr \ --sbin=/usr/bin \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --disable-static \ --enable-shared \ --enable-alwaystrue \ --enable-checkapop \ --enable-cram \ --enable-digest \ --disable-otp \ --disable-srp \ --disable-srp-setpass \ --disable-krb4 \ --enable-gssapi \ --enable-auth-sasldb \ --enable-plain \ --enable-anon \ --enable-login \ --enable-ntlm \ --disable-passdss \ --enable-sql \ --with-mysql=/usr \ --with-pgsql=/usr/lib \ --with-sqlite3=/usr/lib \ --enable-ldapdb \ --disable-macos-framework \ --with-pam \ --with-saslauthd=/var/run/saslauthd \ --with-ldap \ --with-dblib=gdbm \ --with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \ --sysconfdir=/etc \ --with-devrandom=/dev/urandom make } package_libsasl() { pkgdesc="Cyrus Simple Authentication Service Layer (SASL) Library" depends=('openssl') conflicts=('cyrus-sasl-plugins') cd cyrus-sasl-$pkgver make DESTDIR="$pkgdir" install-pkgconfigDATA for dir in include lib sasldb plugins utils; do pushd ${dir} make DESTDIR="${pkgdir}" install popd done rm -f "${pkgdir}"/usr/lib/sasl2/libsql.so* rm -f "${pkgdir}"/usr/lib/sasl2/libgssapiv2.so* rm -f "${pkgdir}"/usr/lib/sasl2/libldapdb.so* rm -f "${pkgdir}"/usr/lib/sasl2/libgs2.so* install -m755 -d "${pkgdir}/usr/share/licenses/libsasl" install -m644 COPYING "${pkgdir}/usr/share/licenses/libsasl/" } package_cyrus-sasl() { depends=("libsasl=${pkgver}" 'krb5') pkgdesc="Cyrus saslauthd SASL authentication daemon" backup=('etc/conf.d/saslauthd') cd cyrus-sasl-$pkgver/saslauthd make DESTDIR="${pkgdir}" install install -Dm644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd" install -Dm644 "${srcdir}/saslauthd.service" "${pkgdir}/usr/lib/systemd/system/saslauthd.service" install -Dm644 "${srcdir}/tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/saslauthd.conf" install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl" ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/" } package_cyrus-sasl-gssapi() { pkgdesc="GSSAPI authentication mechanism for Cyrus SASL" depends=("libsasl=${pkgver}" 'krb5') replaces=('cyrus-sasl-plugins') cd cyrus-sasl-$pkgver/plugins install -m755 -d "${pkgdir}/usr/lib/sasl2" cp -a .libs/libgssapiv2.so* "${pkgdir}/usr/lib/sasl2/" cp -a .libs/libgs2.so* "${pkgdir}/usr/lib/sasl2/" install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi" ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi/" } package_cyrus-sasl-ldap() { pkgdesc="ldapdb auxprop module for Cyrus SASL" depends=("libsasl=${pkgver}" 'libldap') replaces=('cyrus-sasl-plugins') cd cyrus-sasl-$pkgver/plugins install -m755 -d "${pkgdir}/usr/lib/sasl2" cp -a .libs/libldapdb.so* "${pkgdir}/usr/lib/sasl2/" install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap" ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap/" } package_cyrus-sasl-sql() { pkgdesc="SQL auxprop module for Cyrus SASL" depends=("libsasl=${pkgver}" 'postgresql-libs' 'libmariadbclient' 'sqlite') replaces=('cyrus-sasl-plugins') cd cyrus-sasl-$pkgver/plugins install -m755 -d "${pkgdir}/usr/lib/sasl2" cp -a .libs/libsql.so* "${pkgdir}/usr/lib/sasl2/" install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-sql" ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-sql/" }