summaryrefslogtreecommitdiff
path: root/user/cyrus-sasl/APKBUILD
blob: d8b789fd37b4711e923b166098fa52a388a18e74 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: 
pkgname=cyrus-sasl
pkgver=2.1.26
pkgrel=13
pkgdesc="Cyrus Simple Authentication Service Layer (SASL)"
url="https://www.cyrusimap.org/sasl/"
arch="all"
options="!check"  # No test suite.
license="BSD-4-Clause"
subpackages="$pkgname-dev $pkgname-doc $pkgname-gssapi $pkgname-gs2
	$pkgname-scram $pkgname-ntlm $pkgname-crammd5 $pkgname-digestmd5
	libsasl $pkgname-openrc"
depends=""
makedepends="db-dev openssl-dev heimdal-dev
	autoconf automake libtool"
source="ftp://ftp.cyrusimap.org/$pkgname/$pkgname-$pkgver.tar.gz
	saslauthd.initd
	cyrus-sasl-2.1.25-avoid_pic_overwrite.patch
	cyrus-sasl-2.1.26-size_t.patch
	CVE-2013-4122.patch
	"

# secfixes:
#   2.1.26-r7:
#   - CVE-2013-4122

prepare() {
	cd "$builddir"
	default_prepare

	# the libtool they ship is broken
	sed 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' -i configure.in
	rm -rf config/config.guess config/config.sub config/ltconfig \
		config/ltmain.sh config/libtool.m4 autom4te.cache
	libtoolize -c && aclocal -I config -I cmulocal \
		&& automake -a -c && autoheader && autoconf
}

build() {
	cd "$builddir"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--localstatedir=/var \
		--disable-anon \
		--enable-cram \
		--enable-digest \
		--enable-login \
		--enable-ntlm \
		--disable-otp \
		--enable-plain \
		--with-gss_impl=heimdal \
		--with-devrandom=/dev/urandom \
		--without-ldap \
		--with-saslauthd=/var/run/saslauthd \
		--mandir=/usr/share/man
	# parallel build is broken
	make -j1
}

package() {
	cd "$builddir"
	make -j1 DESTDIR="$pkgdir" install
	install -D -m644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING

	install -Dm755 ../saslauthd.initd "$pkgdir"/etc/init.d/saslauthd
	install -d "$pkgdir"/var/run/saslauthd
}

_plugindir=usr/lib/sasl2
_plugin() {
	depends=
	replaces="libsasl"
	pkgdesc="Cyrus SASL plugin for $2"
	mkdir -p "$subpkgdir"/$_plugindir
	mv "$pkgdir"/$_plugindir/lib${1}.so* "$subpkgdir"/$_plugindir/
}

gssapi() { _plugin gssapiv2 "Kerberos (GSSAPI)"; }
gs2() { _plugin gs2 GS2; }
scram() { _plugin scram SCRAM; }
ntlm() { _plugin ntlm NTLM; }
crammd5() { _plugin crammd5 CRAM-MD5; }
digestmd5() { _plugin digestmd5 DIGEST-MD5; }

libsasl() {
	depends=
	pkgdesc="Cyrus Simple Authentication and Security Layer (SASL) library"
	mkdir -p "$subpkgdir"/usr
	mv "$pkgdir"/usr/lib "$subpkgdir"/usr/
}

sha512sums="78819cb9bb38bea4537d6770d309deeeef09ff44a67526177609d3e1257ff4334d2b5e5131d5a1e4dea7430d8db1918ea9d171f0dee38b5e8337f4b72ed068f0  cyrus-sasl-2.1.26.tar.gz
71a00a22f91f0fb6ba2796acede321a0f071b1d7a99616f0e36c354213777f30575c340b6df392dcbfc103ba7640d046144882f6a7b505f59709bb5c429b44d8  saslauthd.initd
033e3634116e1d3b316052dbe0b671cca0fcfb6063fca1a97d990c422c2ce05109a1e424e84ed9928dc0312a325a7248f2d2e3f9547f84453b36331c01f63be5  cyrus-sasl-2.1.25-avoid_pic_overwrite.patch
fe4c3e6d5230eb50b9e6885129760a12e7bce316b41a3e58b2c550fa83526b91205cd827f7d1367751313559875d32982b95b024b1a22300ac5b35214e7c2b78  cyrus-sasl-2.1.26-size_t.patch
08964bc3ad713e137b8f05f9bac345d79676d14784bc37525f195e8e2a3e6740428237b64f7eeeacc0c71ed6cf1664c6e9c2267ac6df327761d92174a1853744  CVE-2013-4122.patch"