f08dc6752b
API Commands - Add API versionning - Changed error handling, based on exception - ejabberd Command bugfixes - Accept commands: add_commands syntax (along commands: – add_commands) - Fix mod_muc_admin:get_room_options and set_room_affiliation - mod_http_api: support 'open' ejabberd commands Databases - Split modules DB specific code into separate modules - Rename "odbc" to "sql" everywhere - Rename "internal" auth to "mnesia" - Improve detection of databases supported by modules - Switch to varchar(64) in mysql user.server/salt as text can't have default values - 'serverkey' and 'salt' should have empty string as default XMPP - Drop headline messages sent to offline resources - Don't omit bounces for messages of type "result" - Match namespace when checking for chat states - Fix check for standalone chat state notifications - Disable TLS compression for s2s by default - Make sure that ejabberd_sm sid are unique - Send stream trailer at the very end of the processing - Generate shorted jid for anonymous connections - Fix anonymous SASL auth ejabberdctl - Add option to migration script to delete data from a table after they have been successfully moved to SQL database: ejabberdctl delete_mnesia example.org - Remove useless variable and quote EPMD and SPOOL_DIR - Fix node ping command - Use UUID for ctl node name - Remove --auth in ejabberd_ctl.erl as it's useless, still useful for mod_rest - Force ERL_PATH for Elixir console Pubsub - Fix use of pubsub node plugin when configured with default_node_config - Set default value for pubsub#itemreply option - Add subscribe/unsubscribe hooks Internal - Add mod_mam header file - Replace ?ERR_* macros with ?ERRT_* - change mod_ping Timers using maps instead of dict Dependencies - Update p1_utils to 1.0.4: Adds p1_time_compat:unique_timestamp() - Update fast_tls to 1.0.3: Prevent buffer overflows and allocation failures - Update stringprep to 1.0.3: Fix compilation on Windows and error message - Update stun to 1.0.3: Use fast_tls 1.0.3 - Update esip to 1.0.4: Use fast_tls 1.0.3
111 lines
4.1 KiB
Makefile
111 lines
4.1 KiB
Makefile
# $NetBSD: Makefile,v 1.65 2016/04/29 19:05:22 fhajny Exp $
|
|
|
|
DISTNAME= ejabberd-16.04
|
|
CATEGORIES= chat
|
|
MASTER_SITES= http://www.process-one.net/downloads/ejabberd/${PKGVERSION_NOREV}/
|
|
EXTRACT_SUFX= .tgz
|
|
|
|
MAINTAINER= filip@joyent.com
|
|
HOMEPAGE= http://www.ejabberd.im/
|
|
COMMENT= Free and Open Source distributed fault-tolerant Jabber server
|
|
LICENSE= gnu-gpl-v2
|
|
|
|
DEPENDS+= erlang-cache_tab>=1.0.2:../../devel/erlang-cache_tab
|
|
DEPENDS+= erlang-esip>=1.0.4:../../net/erlang-esip
|
|
DEPENDS+= erlang-ezlib>=1.0.1:../../devel/erlang-ezlib
|
|
DEPENDS+= erlang-fast_tls>=1.0.3:../../security/erlang-fast_tls
|
|
DEPENDS+= erlang-fast_xml>=1.1.3:../../textproc/erlang-fast_xml
|
|
DEPENDS+= erlang-fast_yaml>=1.0.3:../../textproc/erlang-fast_yaml
|
|
DEPENDS+= erlang-iconv>=1.0.0:../../converters/erlang-iconv
|
|
DEPENDS+= erlang-jiffy>=0.14.7:../../textproc/erlang-jiffy
|
|
DEPENDS+= erlang-lager>=3.0.2:../../sysutils/erlang-lager
|
|
DEPENDS+= erlang-luerl>=0.2:../../lang/erlang-luerl
|
|
DEPENDS+= erlang-p1_mysql>=1.0.1:../../databases/erlang-p1_mysql
|
|
DEPENDS+= erlang-p1_oauth2>=0.6.1:../../security/erlang-p1_oauth2
|
|
DEPENDS+= erlang-p1_pam>=1.0.0:../../security/erlang-p1_pam
|
|
DEPENDS+= erlang-p1_pgsql>=1.1.0:../../databases/erlang-p1_pgsql
|
|
DEPENDS+= erlang-p1_utils>=1.0.4:../../misc/erlang-p1_utils
|
|
DEPENDS+= erlang-p1_xmlrpc>=1.15.1:../../textproc/erlang-p1_xmlrpc
|
|
DEPENDS+= erlang-stringprep>=1.0.3:../../textproc/erlang-stringprep
|
|
DEPENDS+= erlang-stun>=1.0.3:../../net/erlang-stun
|
|
CONFLICTS+= jabberd-[0-9]*
|
|
|
|
GNU_CONFIGURE= yes
|
|
USE_GCC_RUNTIME= yes
|
|
USE_TOOLS+= bash:run gmake patch
|
|
|
|
CONFIGURE_ARGS+= --disable-debug
|
|
CONFIGURE_ARGS+= --enable-iconv
|
|
CONFIGURE_ARGS+= --enable-lager
|
|
CONFIGURE_ARGS+= --enable-mysql
|
|
CONFIGURE_ARGS+= --enable-odbc
|
|
CONFIGURE_ARGS+= --enable-pam
|
|
CONFIGURE_ARGS+= --enable-pgsql
|
|
CONFIGURE_ARGS+= --enable-zlib
|
|
CONFIGURE_ARGS+= --enable-user=${EJABBERD_USER}
|
|
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFBASEDIR}
|
|
|
|
RCD_SCRIPTS= ejabberd
|
|
|
|
BUILD_DEFS+= EJABBERD_USER EJABBERD_GROUP EJABBERD_LOGDIR
|
|
BUILD_DEFS+= EJABBERD_PIDDIR EJABBERD_DB EJABBERD_TRANSDIR
|
|
BUILD_DEFS+= VARBASE
|
|
PKG_SYSCONFSUBDIR= ejabberd
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
.include "options.mk"
|
|
|
|
EJABBERD_USER?= ejabberd
|
|
EJABBERD_GROUP?= ejabberd
|
|
EJABBERD_PIDDIR?= ${VARBASE}/run/ejabberd
|
|
EJABBERD_LOGDIR?= ${VARBASE}/log/ejabberd
|
|
EJABBERD_DB?= ${VARBASE}/spool/ejabberd
|
|
|
|
OWN_DIRS_PERMS+= ${EJABBERD_PIDDIR} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
|
|
OWN_DIRS_PERMS+= ${EJABBERD_LOGDIR} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
|
|
OWN_DIRS_PERMS+= ${EJABBERD_DB} ${EJABBERD_USER} ${EJABBERD_GROUP} 0770
|
|
|
|
FILES_SUBST+= EJABBERD_USER=${EJABBERD_USER}
|
|
FILES_SUBST+= EJABBERD_GROUP=${EJABBERD_GROUP}
|
|
FILES_SUBST+= EJABBERD_DB=${EJABBERD_DB}
|
|
|
|
PKG_GROUPS+= ${EJABBERD_GROUP}
|
|
PKG_USERS+= ${EJABBERD_USER}:${EJABBERD_GROUP}
|
|
PKG_GECOS.${EJABBERD_USER}= ejabberd user
|
|
PKG_HOME.${EJABBERD_USER}= ${EJABBERD_DB}
|
|
PKG_SHELL.${EJABBERD_USER}= ${SH}
|
|
|
|
EGDIR= share/examples/ejabberd
|
|
|
|
INSTALLATION_DIRS+= share/doc/${PKGBASE} ${EGDIR} share/bash-completion.d
|
|
INSTALLATION_DIRS+= lib/erlang/lib/${DISTNAME}/priv/sql
|
|
|
|
CONF_FILES_PERMS= ${EGDIR}/ejabberd.yml ${PKG_SYSCONFDIR}/ejabberd.yml \
|
|
${ROOT_USER} ${EJABBERD_GROUP} 0640
|
|
CONF_FILES_PERMS+= ${EGDIR}/ejabberdctl.cfg ${PKG_SYSCONFDIR}/ejabberdctl.cfg \
|
|
${ROOT_USER} ${EJABBERD_GROUP} 0640
|
|
CONF_FILES_PERMS+= ${EGDIR}/inetrc ${PKG_SYSCONFDIR}/inetrc \
|
|
${ROOT_USER} ${EJABBERD_GROUP} 0640
|
|
SPECIAL_PERMS+= sbin/ejabberdctl ${ROOT_USER} ${EJABBERD_GROUP} 0750
|
|
|
|
REPLACE_BASH= ejabberdctl.template tools/captcha.sh
|
|
|
|
SUBST_CLASSES+= paths
|
|
SUBST_MESSAGE.paths= Localizing paths
|
|
SUBST_STAGE.paths= pre-configure
|
|
SUBST_FILES.paths= Makefile.in ejabberd.yml.example ejabberdctl.template
|
|
SUBST_FILES.paths+= tools/ejabberdctl.bc
|
|
SUBST_VARS.paths= DISTNAME EJABBERD_DB EJABBERD_LOGDIR EJABBERD_PIDDIR
|
|
SUBST_VARS.paths+= PKG_SYSCONFDIR PREFIX
|
|
|
|
post-extract:
|
|
cd ${WRKSRC} && ${MKDIR} deps && ${TOUCH} deps/.got deps/.built
|
|
|
|
post-install:
|
|
${INSTALL_DATA} ${WRKSRC}/tools/ejabberdctl.bc \
|
|
${DESTDIR}${PREFIX}/share/bash-completion.d/ejabberd
|
|
cd ${WRKSRC}/sql && ${INSTALL_DATA} *.sql \
|
|
${DESTDIR}${PREFIX}/lib/erlang/lib/${DISTNAME}/priv/sql
|
|
|
|
.include "../../lang/erlang/buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|