blob: 477b68d5378782b542fe89378e56af239a546384 (
plain)
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
|
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit fixheadtails eutils multilib autotools
IUSE="debug sasl kerberos"
DESCRIPTION="NSS LDAP Module"
HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
SRC_URI="http://www.padl.com/download/${P}.tar.gz"
SLOT="0"
LICENSE="LGPL-2"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
DEPEND=">=net-nds/openldap-2.1.30-r5
sasl? ( dev-libs/cyrus-sasl )
kerberos? ( virtual/krb5 )"
RDEPEND="${DEPEND}
!<net-fs/autofs-4.1.3"
src_unpack() {
unpack ${A}
cd "${S}"
epatch "${FILESDIR}"/nsswitch.ldap.diff
# Applied by upstream
#epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
# Applied by upstream
#EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
sed -i.orig \
-e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
"${S}"/ldap.conf || die "failed to clean up initial version marker"
# fix head/tail stuff
ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
# fix build borkage
for i in Makefile.{in,am}; do
sed -i.orig \
-e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
"${S}"/$i
done
epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
eautoreconf
}
src_compile() {
local myconf=""
use debug && myconf="${myconf} --enable-debugging"
use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
econf \
--with-ldap-lib=openldap \
--libdir=/$(get_libdir) \
--enable-schema-mapping \
--enable-paged-results \
--enable-rfc2307bis \
${myconf} || die "configure failed"
emake || die "make failed"
}
src_install() {
dodir /$(get_libdir)
emake -j1 DESTDIR="${D}" install || die "make install failed"
insinto /etc
doins ldap.conf
dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
CVSVersionInfo.txt README nsswitch.ldap certutil
docinto docs; dodoc doc/*
}
pkg_postinst() {
elog "If you use a ldaps:// string in the 'uri' setting of"
elog "your /etc/ldap.conf, you must set 'ssl on'!"
}
|