Tweak net-im/mu-conference version 0.8_3
[dports.git] / net-im / mu-conference / Makefile
1 # Created by: Denis Shaposhnikov <dsh@vlink.ru>
2 # $FreeBSD$
3
4 PORTNAME=       mu-conference
5 PORTVERSION=    0.8
6 PORTREVISION=   3
7 CATEGORIES=     net-im
8 MASTER_SITES=   http://download.gna.org/mu-conference/
9 DISTNAME=       ${PORTNAME}_${PORTVERSION}
10
11 MAINTAINER=     ports@FreeBSD.org
12 COMMENT=        Multi-User Conferencing component for Jabber
13
14 LICENSE=        GPLv2
15
16 LIB_DEPENDS=    expat:${PORTSDIR}/textproc/expat2 \
17                 idn:${PORTSDIR}/dns/libidn
18
19 USES=           pkgconfig
20 USE_GNOME=      glib20
21 USE_RC_SUBR=    ${PORTNAME}
22
23 OPTIONS_DEFINE= MYSQL
24 OPTIONS_DEFAULT=DAEMON
25 OPTIONS_SINGLE= SERVER
26 OPTIONS_SINGLE_SERVER=  JABBER JABBERD EJABBERD DAEMON
27
28 JABBER_DESC=    Use with jabberd14 (net-im/jabber)
29 JABBERD_DESC=   Use with jabberd 2.x (net-im/jabberd)
30 EJABBERD_DESC=  Use with ejabberd (net-im/ejabberd)
31 DAEMON_DESC=    Use builtin daemon
32
33 SUB_FILES+=     pkg-message README.FreeBSD.jabberd14 \
34                 README.FreeBSD.jabberd2 README.FreeBSD.external
35
36 DOCFILES=       AUTHORS ChangeLog FAQ LICENSE README TODO \
37                 XEP0045_SUPPORT muc-default.xml style.css
38
39 PORTDOCS=       *
40
41 MAKE_JOBS_UNSAFE=       yes
42
43 NO_STAGE=       yes
44 .include <bsd.port.pre.mk>
45
46 .if ${PORT_OPTIONS:MMYSQL}
47 USE_MYSQL=      yes
48 CFLAGS+=        -DHAVE_MYSQL
49 LIBS+=          `${LOCALBASE}/bin/mysql_config --libs`
50 MAKE_ENV+=      LIBS="${LIBS}"
51 DOCFILES+=      README.sql mu-conference.sql
52 .endif
53
54 MUC_LOGDIR?=    /var/log/mu-conference
55
56 .if ${PORT_OPTIONS:MJABBER}
57 JABBER_REQUIRE?=        jabber
58 JABBER_USER?=           jabber
59 JABBER_PIDDIR?=         /var/run/jabberd
60 JABBER_SPOOLDIR?=       /var/spool/jabberd
61 RUN_DEPENDS+=           jabberd14:${PORTSDIR}/net-im/jabber
62 .elif ${PORT_OPTIONS:MJABBERD}
63 JABBER_REQUIRE?=        jabberd
64 JABBER_USER?=           jabber
65 JABBER_PIDDIR?=         /var/jabberd/pid
66 JABBER_SPOOLDIR?=       /var/spool/jabber
67 RUN_DEPENDS+=           jabberd:${PORTSDIR}/net-im/jabberd
68 .elif ${PORT_OPTIONS:MEJABBERD}
69 JABBER_REQUIRE?=        ejabberd
70 JABBER_USER?=           ejabberd
71 JABBER_PIDDIR?=         /var/jabberd/pid
72 JABBER_SPOOLDIR?=       /var/spool/jabber
73 RUN_DEPENDS+=           ejabberdctl:${PORTSDIR}/net-im/ejabberd
74 .elif ${PORT_OPTIONS:MDAEMON}
75 JABBER_REQUIRE?=        DAEMON
76 JABBER_USER?=           nobody
77 JABBER_PIDDIR?=         /var/run/mu-conference
78 JABBER_SPOOLDIR?=       /var/spool/mu-conference
79 .endif
80
81 SUB_LIST+=      JABBER_REQUIRE="${JABBER_REQUIRE}" \
82                 JABBER_PIDDIR="${JABBER_PIDDIR}" \
83                 JABBER_SPOOLDIR="${JABBER_SPOOLDIR}" \
84                 JABBER_USER=${JABBER_USER} \
85                 MUC_LOGDIR=${MUC_LOGDIR}
86
87 post-patch:
88         @${REINPLACE_CMD} -e 's/=$$(CFLAGS)/=/g;s/^CFLAGS[:]*=/CFLAGS+=/g' \
89                 -e 's/^CC:*=/CC?=/g;s|gcc |$$(CC) |;s|-O2||g' \
90                 -e 's#`pkg-config#-I${LOCALBASE}/include `${LOCALBASE}/bin/pkg-config#g' \
91                 ${WRKSRC}/Makefile ${WRKSRC}/*/Makefile \
92                 ${WRKSRC}/*/*/Makefile
93         @${REINPLACE_CMD} -e 's#<spool>\./spool/chat.localhost#<spool>${JABBER_SPOOLDIR}/conference.localhost#g' \
94                 -e 's#<logdir>\./syslogs#<logdir>${LOGDIR}#g' \
95                 -e 's#<logdir>\./logs#<logdir>${JABBER_SPOOLDIR}/conference.localhost/logs#g' \
96                 -e 's#<pidfile>\.#<pidfile>${JABBER_PIDDIR}#g' \
97                 ${WRKSRC}/muc-default.xml
98
99 do-install:
100         ${INSTALL_PROGRAM} ${WRKSRC}/src/mu-conference ${PREFIX}/bin
101         ${INSTALL_DATA} ${WRKSRC}/muc-default.xml ${PREFIX}/etc/muc.xml.sample
102         @if ! [ -f ${PREFIX}/etc/muc.xml ]; then \
103                 ${INSTALL_DATA} ${WRKSRC}/muc-default.xml ${PREFIX}/etc/muc.xml; \
104         fi
105 .if !defined(NOPORTDOCS)
106         @${MKDIR} ${DOCSDIR}/scripts
107 .for FILE in README.FreeBSD.jabberd14 README.FreeBSD.jabberd2 README.FreeBSD.external
108         @${INSTALL_DATA} ${WRKDIR}/${FILE} ${DOCSDIR}
109 .endfor
110 .for FILE in ${DOCFILES}
111         @${INSTALL_DATA} ${WRKSRC}/${FILE} ${DOCSDIR}
112 .endfor
113         ${INSTALL_DATA} ${WRKSRC}/scripts/README ${DOCSDIR}/scripts
114 .for FILE in roommaker.pl roomname.pl
115         ${INSTALL_SCRIPT} ${WRKSRC}/scripts/${FILE} ${DOCSDIR}/scripts
116 .endfor
117 .endif
118
119 post-install:
120         @${CAT} ${PKGMESSAGE}
121
122 .include <bsd.port.post.mk>