aboutsummaryrefslogtreecommitdiffstats
path: root/russian/ircd-hybrid/Makefile
blob: 837416909db3ff197609a358a894ce196d6337cb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Created by: Evgueni V. Gavrilov <aquatique@rusunix.org>
# $FreeBSD$

PORTNAME=   ircd
PORTVERSION=    7.2.4
CATEGORIES= russian irc
MASTER_SITES=   SF/${PORTNAME}-hybrid-ru/${PORTNAME}-hybrid-ru/${PORTNAME}-hybrid-ru-${PORTVERSION} \
        ftp://rusunix.org/pub/FreeBSD/distfiles/

PKGNAMESUFFIX=  -hybrid
DISTNAME=   ircd-hybrid-ru-${PORTVERSION}

MAINTAINER= rodrigo@bebik.net
COMMENT=    Russian version of well known hybrid IRC server

LICENSE=    GPLv2
LICENSE_FILE=   ${WRKSRC}/LICENSE

CONFLICTS=  ircd-[0-9]*

WRKSRC=     ${WRKDIR}/${PORTNAME}${PKGNAMESUFFIX}-ru
USE_OPENSSL=    yes
USES=       bison
GNU_CONFIGURE=  yes
CONFIGURE_ARGS= --sysconfdir=${PREFIX}/etc/ircd-hybrid-ru

USERS=      ircdru
GROUPS=     ircdru

MAN8=       ircd.8

.if defined(WITH_SMALL_NET)
CONFIGURE_ARGS+=-enable-small-net
.endif

.if defined(WITH_SYSLOG)
CONFIGURE_ARGS+=--enable-syslog=\"kill squit connect users oper\"
.endif

.if defined(NICKLENGTH)
CONFIGURE_ARGS+=--with-nicklen=${NICKLENGTH}
.endif

.if defined(TOPICLENGTH)
CONFIGURE_ARGS+=--with-topiclen=${TOPICLENGTH}
.endif

.if defined(MAXCONN)
CONFIGURE_ARGS+=--with-maxconn=${MAXCONN}
.endif

pre-extract:
    @${ECHO_MSG} "* * * Build options for ircd-hybrid-ru * * *"
    @${ECHO_MSG} "Issue make WITH_SMALL_NET=yes to build server optimized for small network"
    @${ECHO_MSG} "Issue make WITH_SYSLOG=yes to enable logging via syslogd"
    @${ECHO_MSG} "You can define maximum nick length. For example make NICKLENGTH=46 (default is 30)"
    @${ECHO_MSG} "You can define maximum topic length. For example make TOPICLENGTH=254 (default is 120; maximum is 390)"
    @${ECHO_MSG} "You can define maximum number of connections for ircd. For example make MAXCONN=512"

post-extract:
    @${CP} ${WRKSRC}/contrib/m_ojoin.c ${WRKSRC}/modules/
    @${CP} ${WRKSRC}/contrib/m_force.c ${WRKSRC}/modules/

post-patch:
    @${REINPLACE_CMD} -e 's,-g -O2,-O2,' ${WRKSRC}/configure
    @${REINPLACE_CMD} -e 's,"-g","",' ${WRKSRC}/configure
    @${REINPLACE_CMD} -e 's,ac_cv_prog_cc_g=yes,ac_cv_prog_cc_g=no,' ${WRKSRC}/configure

pre-install:
    @${REINPLACE_CMD} -e 's,ircd/etc/codepage,etc/ircd-hybrid-ru/codepage,' ${WRKSRC}/etc/example.conf
    @${REINPLACE_CMD} -e 's,/ircd/modules,/lib/ircd-hybrid-ru-modules,' ${WRKSRC}/etc/example.conf

post-install:
    @${INSTALL_SCRIPT} -m 555 ${FILESDIR}/ircd-hybrid-ru.sh.sample ${PREFIX}/etc/rc.d
    @${CHOWN} -R ${USERS}:${GROUPS} ${PREFIX}/etc/ircd-hybrid-ru
    @${CHOWN} -R ${USERS}:${GROUPS} /var/log/ircd-hybrid-ru
    @${MKDIR} ${DOCSDIR}
    @${INSTALL_DATA} ${WRKSRC}/RELNOTE* ${DOCSDIR}
    @${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${DOCSDIR}
    @${INSTALL_DATA} ${WRKSRC}/doc/server-version-info ${DOCSDIR}
    @${CAT} ${PKGMESSAGE}

.include <bsd.port.mk>