Update net-im/pidgin to version 2.10.9_4
[dports.git] / net-im / jabberd / Makefile
1 # Created by: Dmitry Sivachenko <demon@FreeBSD.org>
2 # $FreeBSD$
3
4 PORTNAME=       jabberd
5 DISTVERSION=    2.3.1
6 PORTREVISION=   2
7 CATEGORIES=     net-im
8 MASTER_SITES=   https://github.com/jabberd2/jabberd2/releases/download/${PORTNAME}-${DISTVERSION}/ \
9                 LOCAL/matthew/${PORTNAME}
10
11 MAINTAINER=     mm@FreeBSD.org
12 COMMENT=        Online presence and instant messaging server
13
14 LICENSE=        GPLv2
15
16 LIB_DEPENDS=    libexpat.so:${PORTSDIR}/textproc/expat2 \
17                 libidn.so:${PORTSDIR}/dns/libidn \
18                 libudns.so:${PORTSDIR}/dns/udns
19
20 OPTIONS_DEFINE= MYSQL PGSQL LDAP BDB SQLITE PAM PIPE ANON FS DEBUG REQUIRES \
21                 DOCS SUPERSEDED EXPERIMENTAL
22 OPTIONS_SINGLE= SASL
23 OPTIONS_SINGLE_SASL=    CYRUS GSASL
24 OPTIONS_DEFAULT=MYSQL DEBUG GSASL
25 OPTIONS_SUB=    yes
26
27 GNU_CONFIGURE=  yes
28 USE_PERL5=      run
29 USE_OPENSSL=    yes
30 USES=           iconv perl5 compiler:c11 tar:xz
31 USE_RC_SUBR=    jabberd
32 USE_LDCONFIG=   ${PREFIX}/lib/jabberd
33 CONFIGURE_ARGS+=        --localstatedir=/var \
34                 --sysconfdir=${PREFIX}/etc/jabberd \
35                 --enable-ssl --enable-mio=poll \
36                 --disable-tests \
37                 --with-extra-include-path="${LOCALBASE}/include ${EIP}" \
38                 --with-extra-library-path="${LOCALBASE}/lib ${ELP}"
39
40 JABBER_USER=    jabber
41 JABBER_GROUP=   jabber
42
43 USERS=          ${JABBER_USER}
44 GROUPS=         ${JABBER_GROUP}
45
46 JABBER_ETCDIR=  "${PREFIX}/etc/jabberd"
47 JABBER_RUNDIR=  "/var/jabberd"
48
49 SUB_LIST+=      JABBER_USER=${JABBER_USER} \
50                 JABBER_GROUP=${JABBER_GROUP} \
51                 JABBER_ETCDIR="${JABBER_ETCDIR}" \
52                 JABBER_RUNDIR="${JABBER_RUNDIR}" \
53                 PERL="${PERL}"
54
55 SUB_FILES+=     pkg-install pkg-deinstall
56
57 PORTDOCS=       *
58
59 DOCFILES=       AUTHORS ChangeLog NEWS README README.config \
60                 README.protocol TODO
61
62 _REQUIRE=       LOGIN
63
64 ELP+=   ${OPENSSLLIB}
65 EIP+=   ${OPENSSLINC}
66
67 DEBUG_CONFIGURE_ENABLE= debug
68
69 PGSQL_USE=              PGSQL=yes
70 PGSQL_CONFIGURE_ENABLE= pgsql
71
72 SQLITE_CONFIGURE_ENABLE=sqlite
73 SQLITE_LIB_DEPENDS=     libsqlite3.so:${PORTSDIR}/databases/sqlite3
74 SQLITE_CFLAGS=          ${PTHREAD_CFLAGS}
75
76 MYSQL_USE=              MYSQL=yes
77 MYSQL_CONFIGURE_ENABLE= mysql
78
79 BDB_USE=                BDB=41+
80 BDB_CONFIGURE_ENABLE=   db
81 BDB_CONFIGURE_ON=       --oldincludedir=/nonexistant
82
83 LDAP_USE=               OPENLDAP=yes
84 LDAP_CONFIGURE_ENABLE=  ldap
85
86 FS_CONFIGURE_ENABLE=    fs
87 FS_DESC=                Filesystem storage (only for testing)
88
89 PAM_CONFIGURE_ENABLE=   pam
90
91 PIPE_CONFIGURE_ENABLE=  pipe
92 PIPE_DESC=              Enable pipe (auth/reg)
93
94 ANON_CONFIGURE_ENABLE=  anon
95 ANON_DESC=              Enable anonymous (auth/reg)
96
97 CYRUS_CONFIGURE_ON=     --with-sasl=cyrus
98 CYRUS_DESC=             Use Cyrus SASL backend (not supported)
99 CYRUS_LIB_DEPENDS=      libsasl2.so:${PORTSDIR}/security/cyrus-sasl2
100
101 GSASL_CONFIGURE_ON=     --with-sasl=gsasl
102 GSASL_DESC=             Use GSASL backend
103 GSASL_LIB_DEPENDS=      libgsasl.so:${PORTSDIR}/security/gsasl
104
105 SUPERSEDED_CONFIGURE_ENABLE=    superseded
106 SUPERSEDED_DESC=        Enable superseded features (ns_TIME)
107
108 EXPERIMENTAL_CONFIGURE_ENABLE=  experimental
109 EXPERIMENTAL_DESC=      Enable experimental features (TLS-Everywhere)
110
111 .include <bsd.port.options.mk>
112
113 .if (${OPSYS} != FreeBSD || ${OSVERSION} < 1000000)
114 WITH_OPENSSL_PORT=      yes
115 .endif
116
117 .if ${PORT_OPTIONS:MPGSQL}
118 _REQUIRE+=              postgresql
119 .endif
120
121 .if ${PORT_OPTIONS:MMYSQL}
122 EIP+=${LOCALBASE}/include/mysql
123 ELP+=${LOCALBASE}/lib/mysql
124 _REQUIRE+=      mysql
125 .endif
126
127 .if ${PORT_OPTIONS:MBDB}
128 EIP+=${BDB_INCLUDE_DIR}
129 ELP+=${BDB_LIB_DIR}
130 .endif
131
132 .if ${PORT_OPTIONS:MLDAP}
133 _REQUIRE+=      slapd
134 .endif
135
136 .if ${PORT_OPTIONS:MREQUIRES}
137 SUB_LIST+=      REQUIRE="${_REQUIRE}"
138 .else
139 SUB_LIST+=      REQUIRE="LOGIN"
140 .endif
141 REQUIRES_DESC=  Add backend requires to startup script
142
143 post-patch:
144         @${REINPLACE_CMD} -e 's|"-lsqlite3|"-lsqlite3 ${PTHREAD_LIBS}|g' \
145                 ${WRKSRC}/configure
146         @${REINPLACE_CMD} -e 's|%%PERL%%|${PERL}|g' \
147                 ${WRKSRC}/tools/jabberd.in
148 .if ${PORT_OPTIONS:MCYRUS}
149         @${REINPLACE_CMD} -e '/^#error /d' \
150                 ${WRKSRC}/sx/sasl_cyrus.c
151 .endif
152
153 post-install:
154 .if ${PORT_OPTIONS:MDOCS}
155         @${MKDIR} ${STAGEDIR}${DOCSDIR}
156 .for FILE in ${DOCFILES}
157         ${INSTALL_DATA} ${WRKSRC}/${FILE} ${STAGEDIR}${DOCSDIR}
158 .endfor
159 .for FILE in db-setup.mysql db-setup.pgsql db-setup.sqlite
160         ${INSTALL_DATA} ${WRKSRC}/tools/${FILE} ${STAGEDIR}${DOCSDIR}
161 .endfor
162 .endif
163
164 .include <bsd.port.mk>