aboutsummaryrefslogtreecommitdiffstats
path: root/irc/inspircd/Makefile
blob: 5b49c8e97b65827432026e654f5e527b211d8843 (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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# New ports collection makefile for:   inspircd
# Date created:        25 August 2006
# Whom:                brain
#
# $FreeBSD$
#

PORTNAME=   inspircd
PORTVERSION=    2.0.5
PORTREVISION=   2
CATEGORIES= irc
MASTER_SITES=   http://cloud.github.com/downloads/inspircd/inspircd/
DISTNAME=   InspIRCd-${PORTVERSION}

MAINTAINER= feld@feld.me
COMMENT=    A modular C++ IRC daemon

CONFLICTS=  inspircd-1.*

USE_BZIP2=  yes
USE_RC_SUBR=    ${PORTNAME}
MAKEFILE=   BSDmakefile

USERS=  ircd
GROUPS= ircd
INSPIRCD_UID=   72

INSPIRCD_RUN?=  /var/run/${PORTNAME}
INSPIRCD_LOG?=  /var/log/${PORTNAME}/ircd.log
SUB_LIST+=  PORTNAME=${PORTNAME} \
        INSPIRCD_LOG=${INSPIRCD_LOG} \
        INSPIRCD_RUN=${INSPIRCD_RUN}

# Configure script is written in perl
USE_PERL5_BUILD=yes

HAS_CONFIGURE=  yes
CONFIGURE_ARGS= --with-cc=${CXX} --config-dir=${ETCDIR} \
        --module-dir=${PREFIX}/lib/${PORTNAME}/modules            \
        --library-dir=${PREFIX}/lib/${PORTNAME}                   \
        --prefix=${PREFIX}/lib/${PORTNAME} --binary-dir=${PREFIX}/bin \
        --enable-kqueue --enable-ipv6 --disable-interactive \
        --uid=${INSPIRCD_UID}

PORTDOCS=   docs/* extras/*

OPTIONS_DEFINE= MYSQL PGSQL SQLITE LDAP GNUTLS OPENSSL

GNUTLS_DESC=    Build m_ssl_gnutls module
LDAP_DESC=  Build m_ldapauth module
MYSQL_DESC= Build m_mysql module
OPENSSL_DESC=   Build m_ssl_openssl module
PGSQL_DESC= Build m_pgsql module
SQLITE_DESC=    Build m_sqlite3 module

.include <bsd.port.options.mk>

post-extract:
    @(cd ${WRKDIR} && ${MV} ${PORTNAME} ${DISTNAME})

.if ${PORT_OPTIONS:MLDAP}
USE_OPENLDAP=   yes
EXTRAS:=${EXTRAS},m_ldapauth.cpp
PLIST_SUB+= LDAP=""
.else
PLIST_SUB+= LDAP="@comment "
.endif

.if ${PORT_OPTIONS:MMYSQL}
USE_MYSQL=  yes
EXTRAS:=${EXTRAS},m_mysql.cpp
PLIST_SUB+= MYSQL=""
.else
PLIST_SUB+= MYSQL="@comment "
.endif

.if ${PORT_OPTIONS:MPGSQL}
USE_PGSQL=  yes
EXTRAS:=${EXTRAS},m_pgsql.cpp
PLIST_SUB+= PGSQL=""
.else
PLIST_SUB+= PGSQL="@comment "
.endif

.if ${PORT_OPTIONS:MSQLITE}
USE_SQLITE= 3
EXTRAS:=${EXTRAS},m_sqlite3.cpp
PLIST_SUB+= SQLITE=""
.else
PLIST_SUB+= SQLITE="@comment "
.endif

.if ${PORT_OPTIONS:MGNUTLS}
LIB_DEPENDS+=   gnutls.47:${PORTSDIR}/security/gnutls \
        gcrypt.18:${PORTSDIR}/security/libgcrypt
CONFIGURE_ARGS+=    --enable-gnutls
PLIST_SUB+= GNUTLS=""
.else
PLIST_SUB+= GNUTLS="@comment "
.endif

.if ${PORT_OPTIONS:MOPENSSL}
USE_OPENSSL=yes
CONFIGURE_ARGS+=    --enable-openssl
PLIST_SUB+= OPENSSL=""
.else
PLIST_SUB+= OPENSSL="@comment "
.endif

CONFIGURE_ARGS+=    --enable-extras=${EXTRAS}

post-install:
    @${STRIP_CMD} ${PREFIX}/lib/${PORTNAME}/modules/*.so
    @${STRIP_CMD} ${PREFIX}/bin/${PORTNAME}
.for FILE in inspircd.censor inspircd.conf inspircd.filter inspircd.helpop-full \
    inspircd.helpop inspircd.motd inspircd.quotes inspircd.rules links.conf modules.conf opers.conf
    @if ${TEST} -f ${ETCDIR}/${FILE} &&              \
        ${TEST} ! -f ${ETCDIR}/${FILE}.example ; then \
        ${CP} -p ${ETCDIR}/${FILE}.example       \
            ${ETCDIR}/${FILE};               \
    fi
.endfor

.include <bsd.port.mk>