aboutsummaryrefslogtreecommitdiffstats
path: root/net/ruby-ldap/Makefile
blob: 9e2972f5dc7cb6a9114b3719a338a86f68fea4df (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
# New ports collection makefile for:    Ruby/LDAP
# Date created:     25 Sep 2000
# Whom:         Akinori MUSHA aka knu <knu@idaemons.org>
#
# $FreeBSD$
#

PORTNAME=   ldap
PORTVERSION=    0.9.7
PORTREVISION=   1
CATEGORIES= net ruby
MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ruby-${PORTNAME}
PKGNAMEPREFIX=  ${RUBY_PKGNAMEPREFIX}
DISTNAME=   ruby-${PORTNAME}-${PORTVERSION}
DIST_SUBDIR=    ruby

MAINTAINER= stas@FreeBSD.org
COMMENT=    Ruby interface to LDAP API based on RFC1823

WITH_LDAP?= openldap2

.if ${WITH_LDAP} == openldap1
USE_OPENLDAP=   yes
WANT_OPENLDAP_VER=  12
.elif ${WITH_LDAP} == openldap2
USE_OPENLDAP=   yes
.elif ${WITH_LDAP} == ldapsdk
LIB_DEPENDS=    ${LOCALBASE}/mozilla/directory/lib/libldap.so.1:${PORTSDIR}/net/ldapsdk
.else
IGNORE=     you should set WITH_LDAP variable to openldap1, openldap2 or ldapsdk
.endif

USE_RUBY=   yes
USE_RUBY_EXTCONF=   yes

.include <bsd.port.pre.mk>

.if ${WITH_LDAP} == openldap2
. if exists(${LOCALBASE}/bin/ldapwhoami)
_OPENLDAP_VER!= ${LOCALBASE}/bin/ldapwhoami -VV 2>&1 | ${GREP} ldapwhoami | ${SED} -E 's/.*OpenLDAP: ldapwhoami (2)\.(3|4).*/\1\2/'
. endif

. if defined(_OPENLDAP_VER)
LDAPVER=    ${_OPENLDAP_VER}
. elif defined(DEFAULT_OPENLDAP_VER)
LDAPVER=    ${DEFAULT_OPENLDAP_VER}
. else
LDAPVER=    24
. endif
. if ${LDAPVER} == 24
EXTRA_PATCHES=  ${FILESDIR}/extra::patch-ldap.c ${FILESDIR}/extra::patch-conn.c
. endif
.endif

# Configure options:
#   --with-ldap     specify the ldap directory
#   --with-ldap-incdir  specify the directory which contains ldap.h and lber.h
#   --with-ldap-libdir  specify the directory which contains ldap libraries
#   --with-netscape specify this to use Netscape SDK
#   --with-openldap1    specify this to use OpenLDAP-1.x
#   --with-openldap2    specify this to use OpenLDAP-2.x
.if ${WITH_LDAP} == openldap1
CONFIGURE_ARGS?=    --with-openldap1 \
            --with-ldap-dir="${LOCALBASE}"
.elif ${WITH_LDAP} == openldap2
USE_OPENSSL=        yes
CONFIGURE_ARGS?=    --with-openldap2 \
            --with-ldap-dir="${LOCALBASE}"
.elif ${WITH_LDAP} == ldapsdk
CONFIGURE_ARGS?=    --with-netscape \
            --with-ldap-dir="${LOCALBASE}/mozilla/directory"
.endif

INSTALL_TARGET= site-install

DOCS_EN=    ChangeLog FAQ README TODO

post-patch:
    ${RUBY} -i -pe 'gsub %r|/usr/local/openldap|, "${PREFIX}"' \
        -e 'gsub /ruby-1\.6/, "${RUBY}"' ${WRKSRC}/test/test.sh

post-install:
.if !defined(NOPORTDOCS)
    ${MKDIR} ${RUBY_MODEXAMPLESDIR}
    ${MKDIR} ${RUBY_MODDOCDIR}
    @(cd ${WRKSRC}/test/ && ${COPYTREE_SHARE} \* ${RUBY_MODEXAMPLESDIR}/)
    @(cd ${WRKSRC}/example/ && ${COPYTREE_SHARE} \* ${RUBY_MODEXAMPLESDIR}/)
    ${INSTALL_DATA} ${DOCS_EN:S,^,${WRKSRC}/,} ${RUBY_MODDOCDIR}/
.endif

.include <bsd.port.post.mk>