aboutsummaryrefslogtreecommitdiffstats
path: root/mail/sympa/Makefile
blob: 809781c47546e8a2e1390d4dc3d5cbfa0b5f8a55 (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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
# Created by: Autrijus Tang <autrijus@autrijus.org>
# $FreeBSD$

PORTNAME=   sympa
DISTVERSION=    6.2.30
CATEGORIES= mail

MAINTAINER= dgeo@centrale-marseille.fr
COMMENT=    Sympa is an electronic mailing list manager

LICENSE=    GPLv2

BUILD_DEPENDS:= ${RUN_DEPENDS}
RUN_DEPENDS=    \
    p5-Archive-Zip>=0:archivers/p5-Archive-Zip \
    p5-DBI>=0:databases/p5-DBI  \
    p5-Class-Singleton>=0:devel/p5-Class-Singleton  \
    p5-File-Copy-Recursive>=0:devel/p5-File-Copy-Recursive  \
    p5-IO-stringy>=0:devel/p5-IO-stringy    \
    p5-Locale-libintl>=0:devel/p5-Locale-libintl    \
    p5-Term-ProgressBar>=0:devel/p5-Term-ProgressBar    \
    p5-MIME-EncWords>=0:mail/p5-MIME-EncWords   \
    p5-MIME-Tools>=0:mail/p5-MIME-Tools \
    p5-Mail-Tools>=0:mail/p5-Mail-Tools \
    p5-Msgcat>=0:misc/p5-Locale-Msgcat  \
    p5-perl-ldap>=0:net/p5-perl-ldap    \
    p5-Net-Netmask>=0:net-mgmt/p5-Net-Netmask   \
    p5-IO-Socket-SSL>=0:security/p5-IO-Socket-SSL   \
    p5-Crypt-CipherSaber>=0:security/p5-Crypt-CipherSaber   \
    p5-HTML-Format>=0:textproc/p5-HTML-Format   \
    p5-Unicode-LineBreak>=0:textproc/p5-Unicode-LineBreak   \
    p5-XML-LibXML>=0:textproc/p5-XML-LibXML \
    p5-HTML-StripScripts-Parser>=0:www/p5-HTML-StripScripts-Parser  \
    p5-HTML-Tree>=0:www/p5-HTML-Tree    \
    p5-Template-Toolkit>=0:www/p5-Template-Toolkit  \
    p5-MIME-Lite-HTML>=0:mail/p5-MIME-Lite-HTML \
    p5-Net-DNS>=0:dns/p5-Net-DNS    \
    p5-DateTime-Format-Mail>=0:devel/p5-DateTime-Format-Mail    \
    p5-DateTime-TimeZone>=0:devel/p5-DateTime-TimeZone  \
    p5-Email-Simple>=0:mail/p5-Email-Simple \
    p5-File-NFSLock>=0:devel/p5-File-NFSLock    \
    p5-MIME-Charset>=0:mail/p5-MIME-Charset \
    p5-Net-CIDR>=0:net-mgmt/p5-Net-CIDR \
    p5-Proc-ProcessTable>=0:devel/p5-Proc-ProcessTable  \
    p5-Crypt-SMIME>=0:security/p5-Crypt-SMIME   \
    p5-CGI>=0:www/p5-CGI \
    p5-Data-Password>=0:security/p5-Data-Password

# Ignore alpha/beta versions
PORTSCOUT=  limit:^[0-9]+(\.[0-9]+)*$$

PORTDOCS=   NEWS.md

USERS=      sympa
GROUPS=     sympa
# Shebang is corrected by configure script
USES=       autoreconf cpe fakeroot perl5 shebangfix gettext

SHEBANG_FILES=  po/sympa/xgettext.pl \
        po/sympa/add-lang.pl \

GNU_CONFIGURE=  yes
ICONSDIR?=  www/icons
CONFIGURE_ARGS+=--enable-fhs    \
        --bindir=${PREFIX}/bin  \
        --libexecdir=${PREFIX}/libexec/${PORTNAME} \
        --localedir=${PREFIX}/share/locale  \
        --localstatedir=/var/${PORTNAME}    \
        --sbindir=${PREFIX}/libexec/${PORTNAME} \
        --datadir=${DATADIR}    \
        --sysconfdir=${ETCDIR}          \
        --with-confdir=${ETCDIR}        \
        --with-docdir=${EXAMPLESDIR}        \
        --with-expldir=${DATADIR}/list_data \
        --with-defaultdir=${DATADIR}/defaults   \
        --without-initdir   \
        --with-lockdir=/var/spool/lock      \
        --with-modulesdir=${PREFIX}/libexec/${PORTNAME} \
        --with-staticdir=${DATADIR}/static \
        --with-cssdir=${DATADIR}/static/css \
        --with-picturesdir=${DATADIR}/static/pictures \
        --with-piddir=/var/run/${PORTNAME} \
        --with-scriptdir=${PREFIX}/libexec/${PORTNAME} \
        --with-spooldir=/var/spool/${PORTNAME} \
        --with-cgidir=${PREFIX}/libexec/${PORTNAME} \
        --without-smrshdir

CONFIGURE_ENV+= lt_cv_sys_max_cmd_len=${CONFIGURE_MAX_CMD_LEN} \
        ac_cv_path_POSTALIAS=${LOCALBASE}/sbin/postalias
MAKE_ENV?=  PERL_EXTUTILS_AUTOINSTALL=--skip
SUB_FILES=  pkg-install pkg-message apache.sample nginx.sample fcgi.sample
SUB_LIST=   DB_TYPE=${DB_TYPE} PERL=${PERL} WRKSRC=${WRKSRC} BINDIR=${STAGEDIR}${PREFIX}
PORTEXAMPLES=   *

USE_GITHUB= YES
GH_TUPLE=   sympa-community:sympa:${PORTVERSION}

USE_RC_SUBR=    sympa

CONFLICTS=  sympa-5*

OPTIONS_DEFINE= FASTCGI APACHE
OPTIONS_DEFAULT=APACHE
OPTIONS_RADIO=  DATABASE
OPTIONS_RADIO_DATABASE= PGSQL SYBASE MYSQL
OPTIONS_SUB=    yes

SYBASE_DESC=    Sybase database

.ifdef DB_TYPE
DB_TYPE:=   ${DB_TYPE:tu}
.  for option in ${OPTIONS_RADIO_DATABASE}
.    if ${DB_TYPE} == ${option:S,PGSQL,PG,}
OPTIONS_DEFAULT+=   ${option}
.warning You need to replace your DB_TYPE variable in make.conf with mail_sympa_SET+=${option}
.    endif
.  endfor
.endif

FASTCGI_RUN_DEPENDS=    p5-FCGI>=0:www/p5-FCGI
APACHE_IMPLIES= FASTCGI
APACHE_USES+=   apache:run
APACHE_RUN_DEPENDS= ${LOCALBASE}/${APACHEMODDIR}/mod_fastcgi.so:www/mod_fastcgi

PGSQL_SUB_LIST= REQ_PGSQL=postgresql
PGSQL_SUB_LIST_OFF= REQ_PGSQL=""
PGSQL_RUN_DEPENDS=  p5-DBD-Pg>=0:databases/p5-DBD-Pg
PGSQL_VARS= DB_TYPE=Pg
SYBASE_RUN_DEPENDS= p5-DBD-Sybase>=0:databases/p5-DBD-Sybase
SYBASE_VARS=    DB_TYPE=sybase
MYSQL_SUB_LIST= REQ_MYSQL=mysql
MYSQL_SUB_LIST_OFF= REQ_MYSQL=""
MYSQL_RUN_DEPENDS=  p5-DBD-mysql>=0:databases/p5-DBD-mysql
MYSQL_VARS= DB_TYPE=mysql

post-patch:
    @${REINPLACE_CMD} -e 's|^\( *staticdir=\).*$$|\1${DATADIR}|'    \
        -e 's|^\( *arcdir=\).*$$|\1${DATADIR}/arc|'         \
        -e 's|^\( *bouncedir=\).*$$|\1${DATADIR}/bounce|'       \
        ${WRKSRC}/configure.ac

post-install:
    for link in sympa.pl sympa_wizard.pl upgrade_bulk_spool.pl upgrade_send_spool.pl; do \
        (cd ${STAGEDIR}${PREFIX}/bin && ${LN} -f -s ../libexec/sympa/$$link) \
    done
    ${MKDIR} ${STAGEDIR}${DOCSDIR}
    ${INSTALL_DATA} ${WRKSRC}/NEWS.md ${STAGEDIR}${DOCSDIR}
    ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
    ${INSTALL_DATA} ${WRKDIR}/apache.sample ${WRKDIR}/nginx.sample \
        ${WRKDIR}/fcgi.sample ${STAGEDIR}${EXAMPLESDIR}

.include <bsd.port.mk>