pkgsrc/chat/ircd-hybrid/Makefile
2003-09-01 10:13:08 +00:00

150 lines
4.8 KiB
Makefile

# $NetBSD: Makefile,v 1.8 2003/09/01 10:13:09 cjep Exp $
#
DISTNAME= ircd-hybrid-6.2
PKGREVISION= 1
CATEGORIES= chat
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=ircd-hybrid/}
EXTRACT_SUFX= .tgz
MAINTAINER= seb@pbox.org
HOMEPAGE= http://www.ircd-hybrid.net/
COMMENT= IRC server with many options
GNU_CONFIGURE= YES
USE_BUILDLINK2= # defined
USE_PKGINSTALL= YES
PKG_SYSCONFSUBDIR= ircd-hybrid
IRCD_HYBRID_DPATH= ${PKG_SYSCONFDIR}
.include "../../mk/bsd.prefs.mk"
.if ${IRCD_HYBRID_SMALL_NET} == "YES"
IRCD_HYBRID_LINK_PREALLOCATE?= 64
IRCD_HYBRID_CLIENTS_PREALLOCATE?= 64
IRCD_HYBRID_USERS_PREALLOCATE?= 64
IRCD_HYBRID_NICKNAMEHISTORYLENGTH?= 1000
IRCD_HYBRID_MAXSENDQLENGTH?= 500000
IRCD_HYBRID_INITIAL_DBUFS?= 300
IRCD_HYBRID_HARD_FDLIMIT_?= 90
IRCD_HYBRID_INIT_MAXCLIENTS?= 40
.endif
# this is not supposed to be changed
IRCD_HYBRID_SPATH= ${PREFIX}/sbin/ircd-hybrid
IRCD_HYBRID_SDIR= ${IRCD_HYBRID_SPATH:C|/[^/]*$||}
# throw all the settings in _DEFS
.for def in \
IRCD_HYBRID_LINK_PREALLOCATE IRCD_HYBRID_CLIENTS_PREALLOCATE \
IRCD_HYBRID_USERS_PREALLOCATE IRCD_HYBRID_NICKNAMEHISTORYLENGTH \
IRCD_HYBRID_MAXSENDQLENGTH IRCD_HYBRID_INITIAL_DBUFS \
IRCD_HYBRID_HARD_FDLIMIT_ IRCD_HYBRID_INIT_MAXCLIENTS
. ifdef ${def}
_DEFS+= -D${def:S|^IRCD_HYBRID_||}=${${def}}
. endif
.endfor
.for def in \
IRCD_HYBRID_NETWORK_NAME IRCD_HYBRID_NETWORK_DESC
. ifdef ${def}
_DEFS+= -D${def:S|^IRCD_HYBRID_||}=\"${${def}:Q}\"
. endif
.endfor
.for def in \
IRCD_HYBRID_DPATH IRCD_HYBRID_SPATH \
IRCD_HYBRID_FNAME_USERLOG IRCD_HYBRID_FNAME_OPERLOG IRCD_HYBRID_PPATH \
IRCD_HYBRID_IRC_USER IRCD_HYBRID_IRC_GROUP
_DEFS+= -D${def:S|^IRCD_HYBRID_||}=\"${${def}}\"
.endfor
.if ${IRCD_HYBRID_USE_SYSLOG} == "YES"
_DEFS+= -DUSE_SYSLOG=1
_DEFS+= -DLOG_FACILITY=${IRCD_HYBRID_SYSLOG_FACILITY}
.endif
.if ${IRCD_HYBRID_USE_LOGFILE} == "YES"
_DEFS+= -DUSE_LOGFILE=1
_DEFS+= -DLPATH=\"${IRCD_HYBRID_LPATH}\"
.endif
_DEFS+= -DINIT_LOG_LEVEL=${IRCD_HYBRID_INIT_LOG_LEVEL}
# and pass then down to make as DEFS
MAKE_FLAGS+= DEFS='${_DEFS}'
# and few other things for install target
MAKE_FLAGS+= SPATH=${IRCD_HYBRID_SPATH} SDIR=${IRCD_HYBRID_SDIR}
MAKE_FLAGS+= PREFIX=${PREFIX} DESTDIR=${DESTDIR}
# for the records
.for def in \
IRCD_HYBRID_LINK_PREALLOCATE IRCD_HYBRID_CLIENTS_PREALLOCATE \
IRCD_HYBRID_USERS_PREALLOCATE IRCD_HYBRID_NICKNAMEHISTORYLENGTH \
IRCD_HYBRID_MAXSENDQLENGTH IRCD_HYBRID_INITIAL_DBUFS \
IRCD_HYBRID_HARD_FDLIMIT_ IRCD_HYBRID_INIT_MAXCLIENTS \
IRCD_HYBRID_NETWORK_NAME IRCD_HYBRID_NETWORK_DESC \
IRCD_HYBRID_FNAME_OPERLOG IRCD_HYBRID_PPATH \
IRCD_HYBRID_IRC_USER IRCD_HYBRID_IRC_GROUP
. ifdef ${def}
BUILD_DEFS+= ${def}
. endif
.endfor
.ifdef ${IRCD_HYBRID_USE_SYSLOG} == "YES"
BUILD_DEFS+= IRCD_HYBRID_USE_SYSLOG
BUILD_DEFS+= IRCD_HYBRID_SYSLOG_FACILITY
.else
BUILD_DEFS+= IRCD_HYBRID_FNAME_USERLOG
.endif
.if ${IRCD_HYBRID_USE_LOGFILE} == "YES"
BUILD_DEFS+= IRCD_HYBRID_USE_LOGFILE
BUILD_DEFS+= IRCD_HYBRID_LPATH
.endif
FILES_SUBST+= PPATH=${IRCD_HYBRID_PPATH:Q}
FILES_SUBST+= SPATH=${IRCD_HYBRID_SPATH:Q}
FILES_SUBST+= USER=${IRCD_HYBRID_IRC_USER:Q}
FILES_SUBST+= DPATH=${IRCD_HYBRID_DPATH:Q}
FILES_SUBST+= GROUP=${IRCD_HYBRID_IRC_GROUP}
FILES_SUBST+= SYSLOG_FACILITY=${IRCD_HYBRID_SYSLOG_FACILITY}
RCD_SCRIPTS= ircd-hybrid
PKG_USERS= ${IRCD_HYBRID_IRC_USER}:${IRCD_HYBRID_IRC_GROUP}::IRC\\ User::/sbin/nologin
PKG_GROUPS= ${IRCD_HYBRID_IRC_GROUP}
SUPPORT_FILES= ${PREFIX}/share/examples/ircd-hybrid/opers.txt \
${IRCD_HYBRID_DPATH}/opers.txt
SUPPORT_FILES_PERMS= /dev/null ${IRCD_HYBRID_FNAME_OPERLOG} \
${IRCD_HYBRID_IRC_USER} ${IRCD_HYBRID_IRC_GROUP} 600
SUPPORT_FILES_PERMS+= /dev/null ${IRCD_HYBRID_FNAME_USERLOG} \
${IRCD_HYBRID_IRC_USER} ${IRCD_HYBRID_IRC_GROUP} 600
.if ${IRCD_HYBRID_USE_LOGFILE} == "YES"
SUPPORT_FILES_PERMS+= /dev/null ${IRCD_HYBRID_LPATH} \
${IRCD_HYBRID_IRC_USER} ${IRCD_HYBRID_IRC_GROUP} 600
.endif
post-build:
${_PKG_SILENT}${_PKG_DEBUG} \
${CP} ${FILESDIR}/pkg-setup.txt ${WRKDIR}/pkg-setup.txt
.if ${IRCD_HYBRID_USE_SYSLOG} != "YES"
${_PKG_SILENT}${_PKG_DEBUG} \
${MV} ${WRKDIR}/pkg-setup.txt ${WRKDIR}/.pkg-setup.txt
${_PKG_SILENT}${_PKG_DEBUG} \
${SED} -e '/SYSLOG_FACILITY/d' ${WRKDIR}/.pkg-setup.txt \
> ${WRKDIR}/pkg-setup.txt
.endif
${_PKG_SILENT}${_PKG_DEBUG} \
${MV} ${WRKDIR}/pkg-setup.txt ${WRKDIR}/.pkg-setup.txt
${_PKG_SILENT}${_PKG_DEBUG} \
${SED} ${FILES_SUBST_SED} ${WRKDIR}/.pkg-setup.txt \
> ${WRKDIR}/pkg-setup.txt
post-install:
${INSTALL_SCRIPT} ${WRKDIR}/ircd-hybrid ${PREFIX}/etc/rc.d/ircd-hybrid
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/ircd-hybrid
${INSTALL_DATA} ${WRKDIR}/pkg-setup.txt ${PREFIX}/share/doc/ircd-hybrid/pkg-setup.txt
for f in operguide.txt opermyth.txt; do \
${INSTALL_DATA} ${WRKDIR}/ircd-hybrid-6.2/doc/$$f ${PREFIX}/share/doc/ircd-hybrid/$$f ; \
done
.include "../../devel/zlib/buildlink2.mk"
.include "../../mk/bsd.pkg.mk"