136 lines
4.1 KiB
Makefile
136 lines
4.1 KiB
Makefile
# $NetBSD: Makefile,v 1.18 2005/11/03 13:01:53 rillig Exp $
|
|
|
|
DISTNAME= Unreal3.2.3
|
|
PKGNAME= unrealircd-3.2.3
|
|
CATEGORIES= chat
|
|
MASTER_SITES= http://unreal.atlanti-ka.org/
|
|
|
|
MAINTAINER= adrianp@NetBSD.org
|
|
HOMEPAGE= http://www.unrealircd.com/
|
|
COMMENT= Advanced IRC server with IPv6 and SSL support
|
|
|
|
GNU_CONFIGURE= YES
|
|
USE_PKGINSTALL= YES
|
|
USE_TOOLS+= pkg-config
|
|
WRKSRC= ${WRKDIR}/Unreal3.2
|
|
TRE_NEEDED= 0.7.2
|
|
|
|
BUILDLINK_DEPENDS.tre+= tre-${TRE_NEEDED}
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
CONFIGURE_ENV+= tre_version="${TRE_NEEDED}"
|
|
CONFIGURE_ENV+= TRELIBS="-L${PREFIX}/lib -ltre"
|
|
|
|
CONFIGURE_ARGS+= --with-dpath=${IRCD_HOME}
|
|
CONFIGURE_ARGS+= --with-spath=${PREFIX}/sbin/ircd
|
|
CONFIGURE_ARGS+= --with-permissions=0660
|
|
CONFIGURE_ARGS+= --enable-dynamic-linking
|
|
#
|
|
CONFIGURE_ARGS+= --with-hostname=${IRCD_HOST}
|
|
CONFIGURE_ARGS+= --enable-prefixaq
|
|
CONFIGURE_ARGS+= --with-listen=${IRCD_LISTEN}
|
|
CONFIGURE_ARGS+= --with-sendq=${IRCD_SENDQ}
|
|
CONFIGURE_ARGS+= --with-bufferpool=${IRCD_BUFFER}
|
|
CONFIGURE_ARGS+= --with-fd-setsize=${IRCD_FDSIZE}
|
|
CONFIGURE_ARGS+= --with-nick-history=${IRCD_NICKHIST}
|
|
CONFIGURE_ARGS+= --disable-inet6
|
|
|
|
.include "options.mk"
|
|
|
|
IRCD_DOCS= ${PREFIX}/share/doc/unrealircd
|
|
IRCD_SHARE= ${PREFIX}/share/unrealircd
|
|
IRCD_EG= ${PREFIX}/share/examples/unrealircd
|
|
|
|
BUILD_DEFS+= IRCD_SENDQ IRCD_LISTEN IRCD_BUFFER IRCD_USER IRCD_HOST
|
|
BUILD_DEFS+= IRCD_HOME IRCD_NICKHIST IRCD_FDSIZE IRCD_GROUP
|
|
|
|
PTHREAD_OPTS= require
|
|
|
|
# The defaults for most of these here are from the standard Conf
|
|
# script supplied with the UnrealIRCd package.
|
|
#
|
|
IRCD_SENDQ?= 3000000
|
|
IRCD_LISTEN?= 5
|
|
IRCD_BUFFER?= 18
|
|
IRCD_NICKHIST?= 2000
|
|
IRCD_FDSIZE?= 512
|
|
IRCD_USER?= uircd
|
|
IRCD_GROUP?= uircd
|
|
IRCD_HOST?= localhost
|
|
IRCD_HOME?= ${VARBASE}/unrealircd
|
|
|
|
DOC_FILES= doc/Authors doc/coding-guidelines doc/tao.of.irc LICENSE
|
|
|
|
CONF_FILES_PERMS= ${IRCD_EG}/example.conf ${IRCD_HOME}/unrealircd.conf \
|
|
${IRCD_USER} ${IRCD_GROUP} 0660
|
|
|
|
PKG_USERS= ${IRCD_USER}:${IRCD_GROUP}::UnrealIRCD\ user:${IRCD_HOME}:${NOLOGIN}
|
|
PKG_GROUPS= ${IRCD_GROUP}
|
|
RCD_SCRIPTS= unrealircd
|
|
|
|
MESSAGE_SRC= ${WRKDIR}/.MESSAGE_SRC
|
|
MESSAGE_SUBST+= IRCD_HOME=${IRCD_HOME}
|
|
FILES_SUBST+= IRCD_HOME=${IRCD_HOME}
|
|
FILES_SUBST+= IRCD_USER=${IRCD_USER}
|
|
FILES_SUBST+= IRCD_GROUP=${IRCD_GROUP}
|
|
|
|
SUBST_CLASSES+= homedir
|
|
SUBST_STAGE.homedir= post-patch
|
|
SUBST_FILES.homedir= doc/example.conf
|
|
SUBST_SED.homedir= -e "s|src/modules|${IRCD_SHARE}/modules|g" \
|
|
-e "s|include \"|include \"${IRCD_SHARE}/|g"
|
|
SUBST_MESSAGE.homedir= "Fixing home directory of IRC server."
|
|
|
|
OWN_DIRS_PERMS+= ${IRCD_HOME} ${IRCD_USER} ${IRCD_GROUP} 0770
|
|
OWN_DIRS_PERMS+= ${IRCD_HOME}/tmp ${IRCD_USER} ${IRCD_GROUP} 0770
|
|
|
|
# Do an explicit disable of inet6 as --disable-inet6 does not do the job
|
|
.if empty(PKG_OPTIONS:Minet6)
|
|
CONFIGURE_ENV+= ac_cv_ip6=no
|
|
.else
|
|
MESSAGE_SRC+= ${WRKDIR}/.MESSAGE_SRC.inet6
|
|
.endif
|
|
|
|
.if ${OPSYS} == "Darwin"
|
|
INSTALL_UNSTRIPPED=YES
|
|
.endif
|
|
|
|
.include "../../mk/pthread.buildlink3.mk"
|
|
.include "../../wip/tre/buildlink3.mk"
|
|
|
|
post-build:
|
|
@${CP} ${PKGDIR}/MESSAGE ${WRKDIR}/.MESSAGE_SRC
|
|
.if !empty(PKG_OPTIONS:Minet6)
|
|
@${CP} ${PKGDIR}/MESSAGE.inet6 ${WRKDIR}/.MESSAGE_SRC.inet6
|
|
.endif
|
|
|
|
do-install:
|
|
${INSTALL_DATA_DIR} ${IRCD_SHARE}
|
|
${INSTALL_DATA_DIR} ${IRCD_SHARE}/networks
|
|
${INSTALL_DATA_DIR} ${IRCD_SHARE}/aliases
|
|
${INSTALL_DATA_DIR} ${IRCD_SHARE}/modules
|
|
${INSTALL_DATA_DIR} ${IRCD_DOCS}
|
|
${INSTALL_DATA_DIR} ${IRCD_EG}
|
|
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/html/unrealircd
|
|
|
|
${INSTALL_PROGRAM} ${WRKSRC}/src/ircd ${PREFIX}/sbin
|
|
${INSTALL_DATA} ${WRKSRC}/networks/*.network ${IRCD_SHARE}/networks
|
|
${INSTALL_DATA} ${WRKSRC}/networks/networks.ndx ${IRCD_SHARE}/networks
|
|
${INSTALL_SCRIPT} ${WRKSRC}/networks/makenet ${IRCD_SHARE}/networks
|
|
${INSTALL_DATA} ${WRKSRC}/aliases/*.conf ${IRCD_SHARE}/aliases
|
|
${INSTALL_DATA} ${WRKSRC}/badwords*.conf ${IRCD_SHARE}
|
|
${INSTALL_DATA} ${WRKSRC}/help.conf ${IRCD_SHARE}
|
|
${INSTALL_DATA} ${WRKSRC}/spamfilter.conf ${IRCD_SHARE}
|
|
${INSTALL_DATA} ${WRKSRC}/src/modules/*.so ${IRCD_SHARE}/modules
|
|
|
|
for f in ${DOC_FILES}; do \
|
|
${INSTALL_DATA} ${WRKSRC}/$$f ${IRCD_DOCS}; \
|
|
done
|
|
|
|
${INSTALL_DATA} ${WRKSRC}/doc/unreal32docs.html \
|
|
${PREFIX}/share/doc/html/unrealircd
|
|
|
|
${INSTALL_DATA} ${WRKSRC}/doc/example.conf ${IRCD_EG}
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|