pkgsrc - initial commit
[pkgsrc.git] / chat / ejabberd / Makefile
1 # $NetBSD: Makefile,v 1.13 2009/05/19 08:59:05 wiz Exp $
2
3 DISTNAME=       ejabberd-2.0.5
4 #PKGREVISION=   1
5 CATEGORIES=     chat
6 MASTER_SITES=   http://www.process-one.net/downloads/ejabberd/2.0.5/
7
8 MAINTAINER=     martti@NetBSD.org
9 HOMEPAGE=       http://www.ejabberd.im/
10 COMMENT=        Free and Open Source distributed fault-tolerant Jabber server
11 LICENSE=        gnu-gpl-v2
12
13 PKG_DESTDIR_SUPPORT=    user-destdir
14
15 CONFLICTS+=     jabberd-[0-9]*
16
17 GNU_CONFIGURE=  yes
18 USE_TOOLS+=     gmake
19
20 WRKSRC=         ${WRKDIR}/${PKGNAME_NOREV}
21 # much prefer to be explicit about the configure settings rather than
22 # depending on the defaults to continue to be sane or same between versions
23 CONFIGURE_ARGS+=        --enable-odbc
24 CONFIGURE_ARGS+=        --enable-mod_irc
25 CONFIGURE_ARGS+=        --enable-mod_muc
26 CONFIGURE_ARGS+=        --enable-eldap
27 CONFIGURE_ARGS+=        --enable-web
28 CONFIGURE_ARGS+=        --enable-tls
29 CONFIGURE_ARGS+=        --enable-odbc
30 CONFIGURE_ARGS+=        --enable-ejabberd_zlib
31 CONFIGURE_ARGS+=        --with-openssl=${BUILDLINK_PREFIX.openssl}
32 CONFIGURE_ARGS+=        --with-zlib=${BUILDLINK_PREFIX.zlib}
33 CONFIGURE_ARGS+=        --with-expat=${BUILDLINK_PREFIX.expat}
34 CONFIGURE_ARGS+=        --with-libiconv=${BUILDLINK_PREFIX.iconv}
35 CONFIGURE_ARGS+=        --with-erlang=${BUILDLINK_PREFIX.erlang}
36
37 CONFIGURE_DIRS+=        src
38 BUILD_DIRS+=            src
39
40 MAKE_ENV=               PKGVERSION=${PKGVERSION}
41 PLIST_SUBST+=           DISTNAME=${DISTNAME} PKGBASE=${PKGBASE}
42
43 FILES_SUBST+=           DISTNAME=${DISTNAME} PKGBASE=${PKGBASE}
44 FILES_SUBST+=           PKG_SYSCONFDIR=${PKG_SYSCONFDIR}
45 FILES_SUBST+=           EGDIR=${EGDIR}
46
47 RCD_SCRIPTS=            ejabberd
48
49 BUILD_DEFS+=            EJABBERD_USER EJABBERD_GROUP EJABBERD_LOGDIR
50 BUILD_DEFS+=            EJABBERD_PIDDIR EJABBERD_DB EJABBERD_TRANSDIR
51 BUILD_DEFS+=            EJABBERD_EXDIR
52 BUILD_DEFS+=            VARBASE
53 PKG_SYSCONFSUBDIR=      ejabberd
54
55 .include "../../mk/bsd.prefs.mk"
56
57 EJABBERD_USER=          ejabberd
58 EJABBERD_GROUP=         ejabberd
59 EJABBERD_PIDDIR=        ${VARBASE}/run/ejabberd
60 EJABBERD_LOGDIR=        ${VARBASE}/log/ejabberd
61 EJABBERD_DB=            ${VARBASE}/spool/ejabberd
62 EJABBERD_EXDIR=         share/examples/ejabberd
63
64 OWN_DIRS+=              ${EJABBERD_PIDDIR}
65 OWN_DIRS+=              ${EJABBERD_LOGDIR}
66 OWN_DIRS+=              ${EJABBERD_DB}
67 OWN_DIRS_PERMS+=        ${EJABBERD_PIDDIR} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
68 OWN_DIRS_PERMS+=        ${EJABBERD_LOGDIR} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
69 OWN_DIRS_PERMS+=        ${EJABBERD_DB} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
70
71 FILES_SUBST+=           JABBERD_USER=${EJABBERD_USER}
72 FILES_SUBST+=           JABBERD_LOGDIR=${EJABBERD_LOGDIR}
73
74 PLIST_SUBST+=           EJABBERD_EXDIR=${EJABBERD_EXDIR}
75
76 PKG_GROUPS+=            ${EJABBERD_GROUP}
77 PKG_USERS+=             ${EJABBERD_USER}:${EJABBERD_GROUP}
78
79 EGDIR=                  ${PREFIX}/${EJABBERD_EXDIR}
80
81 INSTALLATION_DIRS+=     ${PREFIX}/share/doc/${PKGNAME_NOREV}
82 INSTALLATION_DIRS+=     ${PREFIX}/share/doc/${PKGNAME_NOREV}/api
83 INSTALLATION_DIRS+=     ${EGDIR}
84
85 CONF_FILES=             ${EGDIR}/ejabberd.cfg ${PKG_SYSCONFDIR}/ejabberd.cfg
86 CONF_FILES+=            ${EGDIR}/ejabberdctl.cfg ${PKG_SYSCONFDIR}/ejabberdctl.cfg
87 CONF_FILES+=            ${EGDIR}/inetrc ${PKG_SYSCONFDIR}/inetrc
88
89 post-patch:
90         ${RM} -f ${WRKSRC}/doc/guide.tex.orig
91
92 post-install:
93         ${INSTALL_DATA} ${WRKSRC}/doc/*.* ${DESTDIR}${PREFIX}/share/doc/${PKGNAME_NOREV}
94         ${INSTALL_DATA} ${WRKSRC}/doc/Makefile ${DESTDIR}${PREFIX}/share/doc/${PKGNAME_NOREV}
95         ${INSTALL_DATA} ${WRKSRC}/doc/COPYING ${DESTDIR}${PREFIX}/share/doc/${PKGNAME_NOREV}
96         ${INSTALL_DATA} ${WRKSRC}/doc/api/* ${DESTDIR}${PREFIX}/share/doc/${PKGNAME_NOREV}/api
97
98 SUBST_CLASSES+=         paths
99 SUBST_MESSAGE.paths=    Localizing paths
100 SUBST_STAGE.paths=      pre-configure
101 SUBST_FILES.paths=      src/Makefile.in
102 SUBST_FILES.paths+=     src/ejabberdctl.template
103 SUBST_FILES.paths+=     doc/guide.tex
104 SUBST_SED.paths+=       -e 's,@PKG_SYSCONFDIR@,${PKG_SYSCONFDIR},g'
105 SUBST_SED.paths+=       -e 's,@JABBERD_LOGDIR@,${EJABBERD_LOGDIR},g'
106 SUBST_SED.paths+=       -e 's,@EJABBERD_LOGDIR@,${EJABBERD_LOGDIR},g'
107 SUBST_SED.paths+=       -e 's,@EJABBERD_DB@,${EJABBERD_DB},g'
108 SUBST_SED.paths+=       -e 's,@DISTNAME@,${DISTNAME},g'
109 SUBST_SED.paths+=       -e 's,@EJABBERD_VARDIR@,${VARBASE},g'
110
111 .include "../../converters/libiconv/buildlink3.mk"
112 .include "../../lang/erlang/buildlink3.mk"
113 .include "../../textproc/expat/buildlink3.mk"
114 .include "../../security/openssl/buildlink3.mk"
115 .include "../../devel/zlib/buildlink3.mk"
116 .include "../../mk/bsd.pkg.mk"