# $NetBSD: Makefile,v 1.1.1.1 2004/03/28 19:44:05 xtraeme Exp $ # DISTNAME= jabberd-2.0s2 CATEGORIES= chat MASTER_SITES= http://www.jabberstudio.org/files/jabberd2/ MAINTAINER= xtraeme@NetBSD.org HOMEPAGE= http://jabberd.jabberstudio.org/2/ COMMENT= Instant messaging server (version 2) CONFLICTS= jabberd-[0-9]*:../../chat/jabberd USE_BUILDLINK3= yes USE_LIBTOOL= yes GNU_CONFIGURE= yes USE_PKGINSTALL= yes BUILDLINK_DEPENDS.openssl+= openssl>=0.9.6b BUILDLINK_TRANSFORM.db4= -e "s,/db4/,/,g" SUBST_CLASSES= path SUBST_STAGE.path= post-patch SUBST_FILES.path= configure SUBST_MESSAGE.path= "Fixing configure script." SUBST_SED.path= -e "s,/usr/local,${PREFIX},g" \ -e "s,\$sysconfdir/jabberd,\$sysconfdir,g" CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} #CONFIGURE_ARGS+= --enable-debug REPLACE_PERL= tools/pipe-auth.pl .include "../../mk/bsd.prefs.mk" BUILD_DEFS+= JABBERD_USER JABBERD_STATIC \ JABBERD_AUTH_METHOD JABBERD_STORAGE_METHOD \ JABBERD_LOGDIR JABBERD_DBDIR JABBERD_PIDDIR # This specify the actual method which will be used for authenticate # the users/accounts. # # JABBERD_AUTH_METOD has 4 available options: # # db (by default) # mysql (MySQL) # openldap (OpenLDAP) # pam (Pluggable Authentication Module) # pgsql (PostgreSQL) JABBERD_AUTH_METHOD?= db AUTHREG_MODS="anon pipe ${JABBERD_AUTH_METHOD}" .if !empty(JABBERD_AUTH_METHOD:Mdb) CONFIGURE_ARGS+= --enable-authreg=${AUTHREG_MODS} CONFIGURE_ARGS+= --with-berkeley-db=${BUILDLINK_DIR}/include . include "../../databases/db4/buildlink3.mk" . elif !empty(JABBERD_AUTH_METHOD:Mopenldap) CONFIGURE_ARGS+= --enable-authreg=${AUTHREG_MODS} CONFIGURE_ARGS+= --with-openldap=${BUILDLINK_PREFIX.openldap} . include "../../databases/openldap/buildlink3.mk" . elif !empty(JABBERD_AUTH_METHOD:Mpgsql) CONFIGURE_ARGS+= --enable-authreg=${AUTHREG_MODS} CONFIGURE_ARGS+= --with-pgsql=${BUILDLINK_PREFIX.postgresql-lib} . include "../../databases/postgresql-lib/buildlink3.mk" . elif !empty(JABBERD_AUTH_METHOD:Mmysql) CONFIGURE_ARGS+= --enable-authreg=${AUTHREG_MODS} CONFIGURE_ARGS+= --with-mysql=${BUILDLINK_PREFIX.mysql-server} . include "../../databases/mysql-client/buildlink3.mk" . elif !empty(JABBERD_AUTH_METHOD:Mpam) CONFIGURE_ARGS+= --enable-authreg=${AUTHREG_MODS} CONFIGURE_ARGS+= --with-pam=${BUILDLINK_PREFIX.PAM} . include "../../security/PAM/buildlink3.mk" .endif # This specify the actual method which will be used to store the accounts # and related information. # # JABBERD_STORAGE_METHOD has 3 available options: # # db (by default) # mysql (MySQL) # pgsql (PostgreSQL) JABBERD_STORAGE_METHOD?= db .if !empty(JABBERD_STORAGE_METHOD:Mdb) CONFIGURE_ARGS+= --enable-storage=db CONFIGURE_ARGS+= --with-berkeley-db=${BUILDLINK_DIR}/include . include "../../databases/db4/buildlink3.mk" . elif !empty(JABBERD_STORAGE_METHOD:Mmysql) CONFIGURE_ARGS+= --enable-storage=mysql CONFIGURE_ARGS+= --with-mysql=${BUILDLINK_PREFIX.mysql-server} . include "../../databases/mysql-client/buildlink3.mk" . elif !empty(JABBERD_STORAGE_METHOD:Mpgsql) CONFIGURE_ARGS+= --enable-storage=pgsql CONFIGURE_ARGS+= --with-pgsql=${BUILDLINK_PREFIX.postgresql-lib} . include "../../databases/postgresql-lib/buildlink3.mk" .endif .if defined(JABBERD_STATIC) && !empty(JABBERD_STATIC:M[Yy][Ee][Ss]) CONFIGURE_ARGS+= --enable-all-static .endif PKG_SYSCONFSUBDIR= jabberd RCD_SCRIPTS= jabberd c2s sm resolver router s2s JABBERD_USER?= jabberd JABBERD_GROUP?= jabberd FILES_SUBST+= JABBERD_USER=${JABBERD_USER} FILES_SUBST+= JABBERD_GROUP=${JABBERD_GROUP} FILES_SUBST+= JABBERD_PIDDIR=${JABBERD_PIDDIR} FILES_SUBST+= JABBERD_LOGDIR=${JABBERD_LOGDIR} PKG_GROUPS= ${JABBERD_GROUP} PKG_USERS= ${JABBERD_USER}:${JABBERD_GROUP} BINDIR= ${PREFIX}/bin EGDIR= ${PREFIX}/share/examples/jabberd SUPPORT_FILES= ${EGDIR}/jabberd.cfg ${PKG_SYSCONFDIR}/jabberd.cfg FILES= c2s.xml resolver.xml router.xml \ router-users.xml s2s.xml sm.xml DBFILES= db-setup.mysql db-setup.pgsql .for f in ${FILES} CONF_FILES+= ${EGDIR}/${f} ${PKG_SYSCONFDIR}/${f} .endfor CONF_FILES+= ${EGDIR}/roster.xml ${PKG_SYSCONFDIR}/roster.xml .undef f # Directory to store the log files JABBERD_LOGDIR?= /var/log/jabberd # Directory to store the database files JABBERD_DBDIR?= /var/db/jabberd # Directory to store the pid files JABBERD_PIDDIR?= /var/run/jabberd .for f in ${JABBERD_LOGDIR} ${JABBERD_DBDIR} ${JABBERD_PIDDIR} OWN_DIRS_PERMS+= ${f} ${JABBERD_USER} ${JABBERD_GROUP} 770 .endfor .undef f post-extract: .for f in jabberd.cfg ${FILES} @${MV} ${WRKSRC}/etc/${f}.dist.in ${WRKSRC}/etc/${f}.in .endfor .undef f pre-configure: .for f in ${FILES} @${SED} \ -e "s|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g" \ -e "s|@PIDDIR@|${JABBERD_PIDDIR}|g" \ -e "s|@LOGDIR@|${JABBERD_LOGDIR}|g" \ -e "s|@SSLCERTS@|${SSLCERTS}|g" \ -e "s|@BINDIR@|${PREFIX}/bin|g" \ -e "s|@DBDIR@|${JABBERD_DBDIR}|g" \ ${WRKSRC}/etc/${f}.in > ${WRKSRC}/etc/${f} .endfor .undef f @${SED} \ -e "s|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g" \ -e "s|@BINDIR@|${PREFIX}/bin|g " \ ${WRKSRC}/etc/jabberd.cfg.in > ${WRKSRC}/etc/jabberd.cfg post-install: ${INSTALL_DATA_DIR} ${EGDIR} ${INSTALL_DATA} ${WRKSRC}/etc/templates/roster.xml.dist.in \ ${EGDIR}/roster.xml ${INSTALL_SCRIPT} ${WRKSRC}/tools/pipe-auth.pl ${BINDIR} .for f in ${DBFILES} ${INSTALL_DATA} ${WRKSRC}/tools/${f} ${EGDIR} .endfor .undef f .for f in jabberd.cfg ${FILES} ${INSTALL_DATA} ${WRKSRC}/etc/${f} ${EGDIR} .endfor .undef f .include "../../converters/libiconv/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" .include "../../mk/bsd.pkg.mk"