1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-21 20:38:45 +00:00
freebsd-ports/ftp/proftpd/Makefile
2005-04-20 00:24:49 +00:00

235 lines
6.1 KiB
Makefile

# New ports collection makefile for: proftpd
# Date created: 26 January 1998
# Whom: Stephane Legrand
#
# $FreeBSD$
#
PORTNAME= proftpd
PORTVERSION= 1.2.10
PORTREVISION= 1
CATEGORIES= ftp
MASTER_SITES= ftp://ftp.proftpd.org/distrib/source/ \
ftp://ftp.fastorama.com/mirrors/ftp.proftpd.org/distrib/source/ \
ftp://ftp.dataguard.no/ftp/pub/proftpd/distrib/source/ \
ftp://spirit.bentel.sk/mirrors/Proftpd/distrib/source/ \
ftp://proftpd.networkedsystems.co.uk/distrib/source/ \
ftp://ftp.ethereal.com/mirrors/ftp.proftpd.org/distrib/source/ \
ftp://mirror.cybercomm.nl/pub/proftpd/distrib/source/
DISTNAME= ${PORTNAME}-1.2.10
MAINTAINER?= mharo@FreeBSD.org
COMMENT?= Highly configurable ftp daemon
MAN1= ftpcount.1 ftpwho.1 ftptop.1
MAN5= xferlog.5
MAN8= proftpd.8 ftpshut.8
PORTDOCSdoc= Configuration.html faq.html
PORTDOCScontrib=mod_ifsession.html mod_radius.html mod_rewrite.html \
mod_tls.html mod_wrap.html ftpasswd.html
PORTDOCS= ${PORTDOCSdoc} ${PORTDOCScontrib}
USE_GMAKE= yes
GNU_CONFIGURE= yes
USE_BZIP2= yes
SED_SCRIPT= -e 's|%%PREFIX%%|${PREFIX}|g'
USE_RC_SUBR= yes
RC_DIR= ${PREFIX}/etc/rc.d
RC_SUFX= .sh
SED_SCRIPT+= -e 's|%%RC_SUBR%%|${RC_SUBR}|g' \
-e 's|%%RC_DIR%%|${RC_DIR}|g' \
-e 's|%%RC_SUFX%%|${RC_SUFX}|g'
PLIST_SUB+= RC_DIR=${RC_DIR} \
RC_SUFX=${RC_SUFX}
CONFIGURE_ARGS= --localstatedir=/var/run \
--disable-sendfile
OPTIONS= IPV6 "Use IPv6" off \
LDAP "Use LDAP" off \
MYSQL "Use MySQL" off \
POSTGRESQL "Use Postgres" off \
OPENSSL "Include mod_tls" off \
QUOTA "Include mod_quota" off \
IFSESSION "Include mod_ifsession" on \
README "Include mod_readme" on \
RATIO "Include mod_ratio" on \
REWRITE "Include mod_rewrite" on \
WRAP "Include mod_wrap" on
MODULES?=
.include <bsd.port.pre.mk>
.if defined(WITH_IFSESSION)
MODULES:=${MODULES}:mod_ifsession
.endif
.if defined(WITH_RATIO)
MODULES:=${MODULES}:mod_ratio
.endif
.if defined(WITH_README)
MODULES:=${MODULES}:mod_readme
.endif
.if defined(WITH_REWRITE)
MODULES:=${MODULES}:mod_rewrite
.endif
.if defined(WITH_WRAP)
MODULES:=${MODULES}:mod_wrap
.endif
.if defined(WITH_SETPASSENT)
CONFIGURE_ARGS+= --enable-force-setpassent
.endif
.if defined(WITHOUT_PAM)
CONFIGURE_ARGS+= --disable-auth-pam
.endif
.if defined(WITH_IPV6)
CONFIGURE_ARGS+= --enable-ipv6
.endif
.if defined(WITHOUT_IPV6)
CONFIGURE_ARGS+= --disable-ipv6
.endif
#allow user to override
MODULES?= mod_ifsession:mod_ratio:mod_readme:mod_rewrite:mod_wrap
INCLUDEDIRS=
LIBDIRS=
.if defined(WITH_OPENSSL)
USE_OPENSSL= yes
MODULES:=${MODULES}:mod_tls
.endif
.if defined(WITH_LDAP)
USE_OPENLDAP= yes
MODULES:=${MODULES}:mod_ldap
INCLUDEDIRS:=${INCLUDEDIRS}:${PREFIX}/include
LIBDIRS:=${LIBDIRS}:${PREFIX}/lib
.endif
.if defined(WITH_MYSQL)
USE_MYSQL= yes
MODULES:=${MODULES}:mod_sql:mod_sql_mysql
INCLUDEDIRS:=${INCLUDEDIRS}:${PREFIX}/include
LIBDIRS:=${LIBDIRS}:${PREFIX}/lib/mysql
.endif
.if defined(WITH_POSTGRESQL)
USE_PGSQL= yes
MODULES:=${MODULES}:mod_sql:mod_sql_postgres
INCLUDEDIRS:=${INCLUDEDIRS}:${PREFIX}/include
LIBDIRS:=${LIBDIRS}:${PREFIX}/lib
.endif
.if defined(WITH_OPENSSL)
CFLAGS+= -DHAVE_OPENSSL
USE_OPENSSL= yes
PROFTPD_LIBS+= -lssl -lcrypto
.endif
.if defined(WITH_CTRLS)
CONFIGURE_ARGS+= --enable-ctrls
MAN8+= ftpdctl.8
.else
.endif
.if defined(WITH_QUOTA)
MODULES:=${MODULES}:mod_quotatab:mod_quotatab_file
.if defined(WITH_LDAP)
MODULES:=${MODULES}:mod_quotatab_ldap
.endif
.if defined(WITH_POSTGRESQL) || defined(WITH_MYSQL)
MODULES:=${MODULES}:mod_quotatab_sql
.endif
.endif
# Keep this here below, in case similar constructs need to be made
CONFIGURE_ENV+= "LIBS=${PROFTPD_LIBS}"
.if !empty(MODULES)
CONFIGURE_ARGS+= --with-modules=${MODULES}
.endif
.if !empty(INCLUDEDIRS)
CONFIGURE_ARGS+= --with-includes=${INCLUDEDIRS}
.endif
.if !empty(LIBDIRS)
CONFIGURE_ARGS+= --with-libraries=${LIBDIRS}
.endif
MODULES!=${ECHO} ${MODULES} | ${SED} -e 's,^:,,' -e 's,:$$,,'
pre-configure:
@${ECHO_MSG} "==> Configuring with ${MODULES}"
post-configure:
@${MV} ${WRKSRC}/Make.rules ${WRKSRC}/Make.rules.pre_sed
@${SED} -e 's: -lnsl::' \
< ${WRKSRC}/Make.rules.pre_sed > ${WRKSRC}/Make.rules
@${MV} ${WRKSRC}/src/proftpd.8 ${WRKSRC}/src/proftpd.8.pre_sed
@${SED} -e 's:/usr/sbin/proftpd:${PREFIX}/libexec/proftpd:' \
-e 's:/usr/sbin:${PREFIX}/sbin:' \
-e 's:/usr/bin:${PREFIX}/bin:' \
< ${WRKSRC}/src/proftpd.8.pre_sed > ${WRKSRC}/src/proftpd.8
@${MV} ${WRKSRC}/utils/ftpshut.8 ${WRKSRC}/utils/ftpshut.8.pre_sed
@${SED} -e 's:/usr/sbin:${PREFIX}/sbin:' \
-e 's:/etc:/var/run:' \
< ${WRKSRC}/utils/ftpshut.8.pre_sed > ${WRKSRC}/utils/ftpshut.8
@${MV} ${WRKSRC}/utils/ftpcount.1 ${WRKSRC}/utils/ftpcount.1.pre_sed
@${SED} -e 's:/usr/bin:${PREFIX}/bin:' \
< ${WRKSRC}/utils/ftpcount.1.pre_sed > ${WRKSRC}/utils/ftpcount.1
post-build:
@${SED} ${SED_SCRIPT} ${FILESDIR}/proftpd.sh > ${WRKSRC}/proftpd.sh
do-install:
@${INSTALL_PROGRAM} ${WRKSRC}/ftpcount ${PREFIX}/bin/ftpcount
@${INSTALL_PROGRAM} ${WRKSRC}/ftpwho ${PREFIX}/bin/ftpwho
@${INSTALL_PROGRAM} ${WRKSRC}/ftptop ${PREFIX}/bin/ftptop
@${INSTALL_PROGRAM} ${WRKSRC}/proftpd ${PREFIX}/libexec/proftpd
@${INSTALL_PROGRAM} ${WRKSRC}/ftpshut ${PREFIX}/sbin/ftpshut
@${INSTALL_MAN} ${WRKSRC}/utils/ftpcount.1 ${PREFIX}/man/man1/ftpcount.1
@${INSTALL_MAN} ${WRKSRC}/utils/ftpwho.1 ${PREFIX}/man/man1/ftpwho.1
@${INSTALL_MAN} ${WRKSRC}/utils/ftptop.1 ${PREFIX}/man/man1/ftptop.1
@${INSTALL_MAN} ${WRKSRC}/src/xferlog.5 ${PREFIX}/man/man5/xferlog.5
@${INSTALL_MAN} ${WRKSRC}/utils/ftpshut.8 ${PREFIX}/man/man8/ftpshut.8
@${INSTALL_MAN} ${WRKSRC}/src/proftpd.8 ${PREFIX}/man/man8/proftpd.8
@${INSTALL_DATA} \
${WRKSRC}/sample-configurations/basic.conf ${PREFIX}/etc/proftpd.conf.default
@if [ ! -f ${PREFIX}/etc/proftpd.conf ]; then \
${INSTALL_DATA} \
${WRKSRC}/sample-configurations/basic.conf ${PREFIX}/etc/proftpd.conf; \
fi
@${INSTALL_SCRIPT} ${WRKSRC}/proftpd.sh ${PREFIX}/etc/rc.d/proftpd${RC_SUFX}
.if !defined(NOPORTDOCS)
@${MKDIR} ${PREFIX}/share/doc/proftpd
.for f in ${PORTDOCSdoc}
@${INSTALL_DATA} ${WRKSRC}/doc/${f} ${PREFIX}/share/doc/proftpd
.endfor
.for f in ${PORTDOCScontrib}
@${INSTALL_DATA} ${WRKSRC}/contrib/${f} ${PREFIX}/share/doc/proftpd
.endfor
.endif
.if !defined(WITHOUT_PAM)
@${CAT} ${PKGMESSAGE}
.endif
.include <bsd.port.post.mk>