aboutsummaryrefslogtreecommitdiffstats
path: root/net/nss_ldap/Makefile
blob: 5db0b067c9c73c86b4f09e3c89b819a34e1150d3 (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
# Ports collection Makefile for:    nss_ldap
# Date created:             4/1/2003
# Whom:                 nectar@FreeBSD.org
#
# $FreeBSD$
#

PORTNAME=   nss_ldap
PORTVERSION=    1.${NSS_LDAP_VERSION}
PORTREVISION=   7
CATEGORIES= net
MASTER_SITES=   http://www.padl.com/download/ \
        LOCAL/martymac
DISTNAME=   ${PORTNAME}-${NSS_LDAP_VERSION}

MAINTAINER= mikeg@bsd-box.net
COMMENT=    RFC 2307 NSS module

LICENSE=    GPLv2

NSS_LDAP_VERSION=265

GNU_CONFIGURE=  yes
USE_GMAKE=  yes
USE_AUTOTOOLS=  automake aclocal autoconf autoheader
USE_LDCONFIG=   yes
USE_OPENLDAP=   yes

OPTIONS=    LCLASS "Enable login classes via the loginClass attribute" on

CPPFLAGS+=  -I${LOCALBASE}/include
LDFLAGS+=   -L${LOCALBASE}/lib -Wl,-rpath,${LOCALBASE}/lib

CONFIGURE_ARGS= --with-ldap-conf-file=${PREFIX}/etc/nss_ldap.conf \
        --with-ldap-secret-file=${PREFIX}/etc/nss_ldap.secret \
        --enable-rfc2307bis \
        --enable-paged-results

MAN5=   nss_ldap.5

SUB_FILES=  pkg-message

.include <bsd.port.pre.mk>
.if !defined(WITHOUT_KERBEROS)
CONFIGURE_ARGS+=--enable-configurable-krb5-ccname-env
.endif

.if defined(WITH_LCLASS)
CFLAGS+="-DHAVE_LOGIN_CLASSES"
.endif

post-extract:
    ${CP} ${FILESDIR}/bsdnss.c ${WRKSRC}

post-patch:
    @${REINPLACE_CMD} -e 's,/etc/ldap\.,${PREFIX}/etc/nss_ldap.,g' \
        -e 's,/etc/openldap/ldap\.,${PREFIX}/etc/openldap/ldap.,g' \
        ${WRKSRC}/ldap.conf
    @${REINPLACE_CMD} 's,#!/usr/bin/perl,#!${PERL},' \
        ${WRKSRC}/vers_string
    @${REINPLACE_CMD} 's,/etc/ldap\.,${PREFIX}/etc/nss_ldap.,g' \
        ${WRKSRC}/${MAN5}

# XXX: newer autoconf's rely on the compiler result, not the preprocessor
#      for checking headers, so the configure.in needs to be fixed upstream
#      to properly include dependencies
post-configure:
    @${ECHO} "#define HAVE_NETINET_IF_ETHER_H 1" >> ${WRKSRC}/config.h
    @${ECHO} "#define HAVE_NET_ROUTE_H 1" >> ${WRKSRC}/config.h
    @${ECHO} "#define HAVE_RESOLV_H 1" >> ${WRKSRC}/config.h

do-install:
    ${INSTALL_PROGRAM} ${WRKSRC}/nss_ldap.so ${PREFIX}/lib/nss_ldap.so.1
    ${INSTALL_DATA} ${WRKSRC}/ldap.conf ${PREFIX}/etc/nss_ldap.conf.sample
    ${INSTALL_MAN} ${WRKSRC}/${MAN5} ${MAN5PREFIX}/man/man5

post-install:
.if !exists(${PREFIX}/etc/nss_ldap.conf)
    ${CP} -p ${PREFIX}/etc/nss_ldap.conf.sample ${PREFIX}/etc/nss_ldap.conf
.endif
.if !defined(PACKAGE_BUILDING)
    @${CAT} ${PKGMESSAGE}
.endif

.include <bsd.port.post.mk>