aboutsummaryrefslogtreecommitdiffstats
path: root/ftp/proftpd
diff options
context:
space:
mode:
authormm <mm@FreeBSD.org>2012-01-26 17:33:05 +0800
committermm <mm@FreeBSD.org>2012-01-26 17:33:05 +0800
commitb095ef8abf3175b440ed5660630dd081e04d5df7 (patch)
treec9fcea155c6e990eaf2773e94aa74bb3aa112e16 /ftp/proftpd
parent3a4219c5ca28c648d5ae2860b9dd7e5b5c4728a8 (diff)
downloadfreebsd-ports-gnome-b095ef8abf3175b440ed5660630dd081e04d5df7.tar.gz
freebsd-ports-gnome-b095ef8abf3175b440ed5660630dd081e04d5df7.tar.zst
freebsd-ports-gnome-b095ef8abf3175b440ed5660630dd081e04d5df7.zip
Update to 1.3.4a
Switch to using dynamic modules Autosellect required modules instead of exiting with IGNORE Add slave port infrastructure for building individual modules
Diffstat (limited to 'ftp/proftpd')
-rw-r--r--ftp/proftpd/Makefile490
-rw-r--r--ftp/proftpd/distinfo4
-rw-r--r--ftp/proftpd/files/patch-contrib-mod_ban.c10
-rw-r--r--ftp/proftpd/files/patch-contrib-mod_sftp-scp.c11
-rw-r--r--ftp/proftpd/files/patch-contrib-mod_tls.c10
-rw-r--r--ftp/proftpd/pkg-plist149
6 files changed, 474 insertions, 200 deletions
diff --git a/ftp/proftpd/Makefile b/ftp/proftpd/Makefile
index 390bfeedb254..96bdc7e80ca5 100644
--- a/ftp/proftpd/Makefile
+++ b/ftp/proftpd/Makefile
@@ -5,9 +5,8 @@
# $FreeBSD$
#
-PORTNAME= proftpd
-PORTVERSION= 1.3.3g
-PORTREVISION= 2
+PORTNAME?= proftpd
+PORTVERSION?= 1.3.4a
CATEGORIES?= ftp
MASTER_SITES= ftp://ftp.proftpd.org/distrib/source/ \
ftp://ftp.fastorama.com/mirrors/ftp.proftpd.org/distrib/source/ \
@@ -23,77 +22,101 @@ DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER?= mm@FreeBSD.org
-COMMENT?= Highly configurable ftp daemon
+COMMENT?= Highly configurable FTP daemon
-LICENSE= GPLv2
-LICENSE_FILE= ${WRKSRC}/COPYING
+LICENSE?= GPLv2
+LICENSE_FILE?= ${WRKSRC}/COPYING
-MAN1= ftpcount.1 ftpwho.1 ftptop.1
+.if defined(_PROFTPD_MODULE)
+_BUILDING_PROFTPD_MODULE= yes
+DISTNAME= proftpd-${PORTVERSION}
+.endif
+
+.if !defined(_BUILDING_PROFTPD_MODULE)
+MAN1= ftpcount.1 ftpmail.1 ftpasswd.1 ftpquota.1 ftpwho.1 ftptop.1
MAN5= xferlog.5
MAN8= proftpd.8 ftpscrub.8 ftpshut.8 ftpdctl.8
-MAKE_JOBS_UNSAFE= yes
PORTDOCS= *
+.endif
+MAKE_JOBS_UNSAFE= yes
USE_GMAKE= yes
USE_BZIP2= yes
USE_AUTOTOOLS= autoconf
GNU_CONFIGURE= yes
-CONFLICTS= proftpd-devel-1.[0-9].*
-
+.if !defined(_BUILDING_PROFTPD_MODULE)
USE_RC_SUBR= proftpd
+.else
+RUN_DEPENDS= ${LOCALBASE}/sbin/proftpd:${PORTSDIR}/ftp/proftpd
+.endif
LOCALSTATEDIR?= /var/run
-CONFIGURE_ARGS= --localstatedir=${LOCALSTATEDIR} \
+CONFIGURE_ARGS=--localstatedir=${LOCALSTATEDIR} \
+ --libexecdir=${PREFIX}/libexec/proftpd \
--with-pkgconfig=libdata/pkgconfig \
--sysconfdir=${PREFIX}/etc \
--enable-dso \
--disable-sendfile
+.if defined(_BUILDING_PROFTPD_MODULE)
+CONFIGURE_ARGS+= --with-shared=${_PROFTPD_MODULE}
+INCLUDEDIRS:=${INCLUDEDIRS}:${WRKSRC}:${WRKSRC}/include
+ALL_TARGET= shared
+BUILD_WRKSRC= ${WRKSRC}/modules
+INSTALL_WRKSRC= ${WRKSRC}/modules
+PLIST= ${WRKDIR}/PLIST
+PLIST_FILES+= libexec/proftpd/${_PROFTPD_MODULE}.a \
+ libexec/proftpd/${_PROFTPD_MODULE}.la \
+ libexec/proftpd/${_PROFTPD_MODULE}.so
+PLIST_DIRSTRY+= libexec/proftpd
+.else
OPTIONS= BAN "Include mod_ban (requires CTRLS)" off \
+ COPY "Include mod_copy" on \
CLAMAV "Include mod_clamav" off \
- CTRLS "Include controls" off \
+ CTRLS "Enable controls via ftpdctl" on \
+ CTRLS_ADMIN "Include mod_ctrls_admin (requires CTRLS)" off \
+ DEFLATE "Include mod_deflate" on \
DYNMASQ "Include mod_dynmasq" off \
EXEC "Include mod_exec" off \
HTMLDOCS "Include HTML documentation" off \
IFSESSION "Include mod_ifsession" on \
- IPV6 "Use IPv6" on \
- LDAP "Use LDAP" off \
- LDAP_TLS "Use LDAP TLS (requires LDAP, OPENSSL)" off
-
-# Set the MYSQL option based upon the setting from the
-# slave port (ftp/proftpd-mysql).
-.if defined(WITH_MYSQL)
-OPTIONS+= MYSQL "MySQL auth" on
-.else
-OPTIONS+= MYSQL "MySQL auth" off
-.endif
-
-OPTIONS+= NLS "Use nls (builds mod_lang)" on \
- ODBC "ODBC" off \
- OPENSSL "Include mod_tls" on \
- PGSQL "Postgres auth" off \
- QUOTA "Include mod_quota" off \
- QUOTATAB_RADIUS "include mod_quotatab_radius" off \
- SHAPER "Shaper module (requires CTRLS)" off \
- SQLITE "SQLite auth" off \
+ IFVERSION "Include mod_ifversion" on \
+ IPV6 "Support IPv6" on \
+ LDAP "Include mod_ldap" off \
+ LDAP_TLS "TLS for mod_ldap (requires LDAP, TLS)" off \
+ MEMCACHE "Include mod_memcache" off \
+ NLS "Use nls (builds mod_lang)" on \
+ ODBC "Include mod_sql_odbc (requires SQL)" off \
+ PCRE "Use pcre for regular expressions" on \
+ QOS "Include mod_qos" off \
+ QUOTATAB "Include mod_quotatab" on \
+ QUOTATAB_FILE "Include mod_quotatab_file" on \
+ QUOTATAB_LDAP "Include mod_quotatab_ldap (requires LDAP)" off \
+ QUOTATAB_SQL "Include mod_quotatab_sql (requires SQL)" on \
+ QUOTATAB_RADIUS "Include mod_quotatab_radius" off \
+ SFTP "Include mod_sftp" on \
+ SFTP_SQL "Include mod_sftp_sql (requires SFTP, SQL)" off \
+ SFTP_PAM "Include mod_sftp_pam (requires SFTP)" off \
+ SITE_MISC "Include mod_site_misc" off \
+ SHAPER "Include mod_shaper (requires CTRLS)" off \
+ SQL "Include mod_sql" on \
+ SQL_PASSWD "Include mod_sql_passwd (requires SQL)" off \
+ SQLITE "Include mod_sql_sqlite (requires SQL)" off \
RADIUS "Include mod_radius" on \
RATIO "Include mod_ratio" on \
README "Include mod_readme" on \
REWRITE "Include mod_rewrite" on \
- TLS_SHMCACHE "TLS SHM session cache (requires OPENSSL)" off \
- TDS "Include mod_sql_tds" off \
- SFTP "Include mod_sftp" off\
- SFTP_SQL "Include mod_sftp_sql" off \
- SFTP_PAM "Include mod_sftp_pam" off \
- SITE_MISC "Include mod_site_misc" off \
- SQL_PASSWD "Include mod_sql_passwd" off \
+ TLS "Include mod_tls" on \
+ TLS_MEMCACHE "mod_tls_memcache (requires MEMCACHE)" off \
+ TLS_SHMCACHE "TLS SHM session cache (requires TLS)" off \
+ TDS "Include mod_sql_tds (requires SQL)" off \
UNIQUE "Include mod_unique_id" off \
WRAP "Include mod_wrap2" on \
WRAP_FILE "Include mod_wrap2_file (requires WRAP)" off \
- WRAP_SQL "Include mod_wrap2_sql (requires WRAP)" off
+ WRAP_SQL "Include mod_wrap2_sql (requires SQL, WRAP)" off
MODULES?=
LIBDIRS?=
@@ -101,8 +124,12 @@ INCLUDEDIRS?=
PLIST_SUB+= LOCALSTATEDIR="${LOCALSTATEDIR}"
+.endif #!defined(_BUILDING_PROFTPD_MODULE)
+
.include <bsd.port.pre.mk>
+.if !defined(_BUILDING_PROFTPD_MODULE)
+
# FreeBSD-SA-11:07.chroot
.if ${OSVERSION} < 800000
CHROOT_TEST != ${GREP} __FreeBSD_libc_enter_restricted_mode \
@@ -116,82 +143,186 @@ EXTRA_PATCHES+= ${FILESDIR}/extra-patch-8-src-fsio.c
.endif
.if ${ARCH} == "sparc64" && ${OSVERSION} > 900000
-BROKEN= Does not compile on sparc64-9: storage size of 'utx' isn't known
+BROKEN= Does not compile on sparc64-9: storage size of 'utx' isn't known
.endif
.if !defined(WITHOUT_RATIO)
MODULES:=${MODULES}:mod_ratio
+PLIST_SUB+= MOD_RATIO=""
+.else
+PLIST_SUB+= MOD_RATIO="@comment "
.endif
.if !defined(WITHOUT_README)
MODULES:=${MODULES}:mod_readme
+PLIST_SUB+= MOD_README=""
+.else
+PLIST_SUB+= MOD_README="@comment "
.endif
.if !defined(WITHOUT_REWRITE)
MODULES:=${MODULES}:mod_rewrite
-.endif
-
-.if !defined(WITHOUT_WRAP)
-MODULES:=${MODULES}:mod_wrap2
-INCLUDEDIRS:=${INCLUDEDIRS}:${WORKDIR}/include
-LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
-PLIST_SUB+= WRAP=""
+PLIST_SUB+= MOD_REWRITE=""
.else
-PLIST_SUB+= WRAP="@comment "
-.endif
-
-.if ( defined(WITH_WRAP_FILE) || defined(WITH_WRAP_SQL) ) && defined(WITHOUT_WRAP)
-IGNORE= options WRAP_FILE and WRAP_FILE_SQL require WRAP
+PLIST_SUB+= MOD_REWRITE="@comment "
.endif
.if defined(WITH_WRAP_FILE)
+AUTOSELECT_WRAP= yes
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
MODULES:=${MODULES}:mod_wrap2_file
+PLIST_SUB+= MOD_WRAP_FILE="
+.else
+PLIST_SUB+= MOD_WRAP_FILE="@comment "
.endif
.if defined(WITH_WRAP_SQL)
+AUTOSELECT_SQL= yes
+AUTOSELECT_WRAP= yes
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
MODULES:=${MODULES}:mod_wrap2_sql
+PLIST_SUB+= MOD_WRAP_SQL=""
+.else
+PLIST_SUB+= MOD_WRAP_SQL="@comment "
+.endif
+
+.if defined(WITH_BAN)
+AUTOSELECT_CTRLS= yes
+MODULES:=${MODULES}:mod_ban
+PLIST_SUB+= MOD_BAN=""
+.else
+PLIST_SUB+= MOD_BAN="@comment "
+.endif
+
+.if !defined(WITHOUT_COPY)
+MODULES:=${MODULES}:mod_copy
+PLIST_SUB+= MOD_COPY=""
+.else
+PLIST_SUB+= MOD_COPY="@comment "
+.endif
+
+.if defined(WITH_CTRLS_ADMIN)
+AUTOSELECT_CTRLS= yes
+MODULES:=${MODULES}:mod_ctrls_admin
+PLIST_SUB+= MOD_CTRLS_ADMIN=""
+.else
+PLIST_SUB+= MOD_CTRLS_ADMIN="@comment "
+.endif
+
+.if !defined(WITHOUT_DEFLATE)
+MODULES:=${MODULES}:mod_deflate
+PLIST_SUB+= MOD_DEFLATE=""
+.else
+PLIST_SUB+= MOD_DEFLATE="@comment "
.endif
.if defined(WITH_DYNMASQ)
MODULES:=${MODULES}:mod_dynmasq
+PLIST_SUB+= MOD_DYNMASQ=""
+.else
+PLIST_SUB+= MOD_DYNMASQ="@comment "
.endif
.if defined(WITH_EXEC)
MODULES:=${MODULES}:mod_exec
+PLIST_SUB+= MOD_EXEC=""
+.else
+PLIST_SUB+= MOD_EXEC="@comment "
.endif
-.if defined(WITH_RADIUS)
+.if !defined(WITHOUT_IFSESSION)
+MODULES:=${MODULES}:mod_ifsession
+PLIST_SUB+= MOD_IFSESSION=""
+.else
+PLIST_SUB+= MOD_IFSESSION="@comment "
+.endif
+
+.if !defined(WITHOUT_IFVERSION)
+MODULES:=${MODULES}:mod_ifversion
+PLIST_SUB+= MOD_IFVERSION=""
+.else
+PLIST_SUB+= MOD_IFVERSION="@comment "
+.endif
+
+.if defined(WITH_TLS_MEMCACHE)
+AUTOSELECT_MEMCACHE= yes
+AUTOSELECT_TLS= yes
+MODULES:=${MODULES}:mod_tls_memcache
+PLIST_SUB+= MOD_TLS_MEMCACHE=""
+.else
+PLIST_SUB+= MOD_TLS_MEMCACHE="@comment "
+.endif
+
+.if !defined(WITHOUT_RADIUS)
MODULES:=${MODULES}:mod_radius
+PLIST_SUB+= MOD_RADIUS=""
+.else
+PLIST_SUB+= MOD_RADIUS="@comment "
.endif
-.if defined(WITH_SHAPER)
-.if !defined(WITH_CTRLS)
-IGNORE= option BAN requires CTRLS
+.if defined(WITH_QOS)
+MODULES:=${MODULES}:mod_qos
+PLIST_SUB+= MOD_QOS=""
+.else
+PLIST_SUB+= MOD_QOS="@comment "
.endif
-MODULES:=${MODULES}:mod_shaper
+
+.if !defined(WITHOUT_QUOTATAB_FILE)
+AUTOSELECT_QUOTATAB= yes
+MODULES:=${MODULES}:mod_quotatab_file
+PLIST_SUB+= MOD_QUOTATAB_FILE=""
+.else
+PLIST_SUB+= MOD_QUOTATAB_FILE="@comment "
.endif
-.if defined(WITH_SITE_MISC)
-MODULES:=${MODULES}:mod_site_misc
+.if defined(WITH_QUOTATAB_LDAP)
+AUTOSELECT_QUOTATAB= yes
+AUTOSELECT_LDAP= yes
+MODULES:=${MODULES}:mod_quotatab_ldap
+PLIST_SUB+= MOD_QUOTATAB_LDAP=""
+.else
+PLIST_SUB+= MOD_QUOTATAB_LDAP="@comment "
.endif
.if defined(WITH_QUOTATAB_RADIUS)
+AUTOSELECT_QUOTATAB= yes
MODULES:=${MODULES}:mod_quotatab_radius
+PLIST_SUB+= MOD_QUOTATAB_RADIUS=""
+.else
+PLIST_SUB+= MOD_QUOTATAB_RADIUS="@comment "
.endif
-.if defined(WITH_BAN)
-.if !defined(WITH_CTRLS)
-IGNORE= option BAN requires CTRLS
+.if !defined(WITHOUT_QUOTATAB_SQL)
+AUTOSELECT_QUOTATAB= yes
+AUTOSELECT_SQL= yes
+MODULES:=${MODULES}:mod_quotatab_sql
+PLIST_SUB+= MOD_QUOTATAB_SQL=""
+.else
+PLIST_SUB+= MOD_QUOTATAB_SQL="@comment "
.endif
-MODULES:=${MODULES}:mod_ban
+
+.if defined(WITH_SHAPER)
+AUTOSELECT_CTRLS= yes
+MODULES:=${MODULES}:mod_shaper
+PLIST_SUB+= MOD_SHAPER=""
+.else
+PLIST_SUB+= MOD_SHAPER="@comment "
+.endif
+
+.if defined(WITH_SITE_MISC)
+MODULES:=${MODULES}:mod_site_misc
+PLIST_SUB+= MOD_SITE_MISC=""
+.else
+PLIST_SUB+= MOD_SITE_MISC="@comment "
.endif
.if defined(WITH_UNIQUE)
MODULES:=${MODULES}:mod_unique_id
+PLIST_SUB+= MOD_UNIQUE=""
+.else
+PLIST_SUB+= MOD_UNIQUE="@comment "
.endif
.if defined(WITH_SETPASSENT)
@@ -219,116 +350,76 @@ PLIST_SUB+= NLS=""
PLIST_SUB+= NLS="@comment "
.endif
-#allow user to override
-MODULES?= mod_ratio:mod_readme:mod_rewrite:mod_wrap2:mod_ifsession:mod_lang
-
-INCLUDEDIRS?=
-LIBDIRS?=
+.if !defined(WITHOUT_PCRE)
+LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre
+CONFIGURE_ARGS+= --enable-pcre
+.else
+CONFIGURE_ARGS+= --disable-pcre
+.endif
.if defined(WITH_LDAP)
+. if defined(WITH_LDAP_TLS)
+AUTOSELECT_TLS= yes
+. endif
USE_OPENLDAP= yes
MODULES:=${MODULES}:mod_ldap
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
-.endif
-
-# LDAP_TLS and TLS_SHMCACHE require OPENSSL
-.if ( defined(WITH_LDAP_TLS) || defined(WITH_TLS_SHMCACHE) ) && !defined(WITH_OPENSSL)
-IGNORE= options LDAP_TLS and TLS_SHMCACHE require OPENSSL
-.endif
-
-# MYSQL, PGSQL, SQLITE, ODBC, TDS, SFTP_SQL and SQL_PASSWD require mod_sql
-.if defined(WITH_MYSQL) || defined(WITH_PGSQL) || \
-defined(WITH_SQLITE) || defined(WITH_ODBC) || defined(WITH_TDS) \
-|| defined(WITH_SFTP_SQL) || defined (WITH_SQL_PASSWD)
-MODULES:=${MODULES}:mod_sql
-.endif
-
-.if defined(WITH_MYSQL)
-USE_MYSQL= yes
-MODULES:=${MODULES}:mod_sql_mysql
-INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include:${LOCALBASE}/include/mysql:${WRKSRC}/contrib
-LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib/mysql
-.endif
-
-.if defined(WITH_PGSQL)
-USE_PGSQL= yes
-MODULES:=${MODULES}:mod_sql_postgres
-INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
-LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
+PLIST_SUB+= MOD_LDAP=""
+.else
+PLIST_SUB+= MOD_LDAP="@comment "
.endif
.if defined(WITH_SQLITE)
+AUTOSELECT_SQL= yes
USE_SQLITE= yes
MODULES:=${MODULES}:mod_sql_sqlite
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
+PLIST_SUB+= MOD_SQLITE=""
+.else
+PLIST_SUB+= MOD_SQLITE="@comment "
.endif
.if defined(WITH_ODBC)
+AUTOSELECT_SQL= yes
LIB_DEPENDS= iodbc.3:${PORTSDIR}/databases/libiodbc
MODULES:=${MODULES}:mod_sql_odbc
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
CONFIGURE_ARGS+=LIBS=-liodbc LD_LIBRARY_PATH=${LOCALBASE}/lib LDFLAGS=-L${LOCALBASE}/lib
+PLIST_SUB+= MOD_ODBC=""
+.else
+PLIST_SUB+= MOD_ODBC="@comment "
.endif
.if defined(WITH_TDS) || make(makesum) || defined(FETCH_ALL)
+AUTOSELECT_SQL= yes
DISTFILES+= mod_sql_tds-4.13.tar.bz2:sql_tds
EXTRACT_ONLY+= mod_sql_tds-4.13.tar.bz2
MODULES:=${MODULES}:mod_sql_tds
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
LIB_DEPENDS+= sybdb.5:${PORTSDIR}/databases/freetds
+PLIST_SUB+= MOD_SQL_TDS=""
+.else
+PLIST_SUB+= MOD_SQL_TDS="@comment "
.endif
.if defined(WITH_SQL_PASSWD)
+AUTOSELECT_SQL= yes
MODULES:=${MODULES}:mod_sql_passwd
-.endif
-
-.if ${MODULES:M*mod_sql*}
-PLIST_SUB+= SQL=""
+PLIST_SUB+= MOD_SQL_PASSWD=""
.else
-PLIST_SUB+= SQL="@comment "
+PLIST_SUB+= MOD_SQL_PASSWD="@comment "
.endif
.if defined(WITH_TLS_SHMCACHE)
+AUTOSELECT_TLS= yes
MODULES:=${MODULES}:mod_tls_shmcache
-.endif
-
-.if defined(WITH_OPENSSL)
-.include <${PORTSDIR}/Mk/bsd.openssl.mk>
-CFLAGS+= -DHAVE_OPENSSL -I${OPENSSLINC}
-PROFTPD_LIBS+= -lssl -lcrypto -L${OPENSSLLIB}
-MODULES:=${MODULES}:mod_tls
-PLIST_SUB+= TLS=""
+PLIST_SUB+= MOD_TLS_SHMCACHE=""
.else
-PLIST_SUB+= TLS="@comment "
-.endif
-
-.if defined(WITH_CTRLS)
-CONFIGURE_ARGS+= --enable-ctrls
-.if !defined(WITHOUT_CTRLS_ADMIN)
-MODULES:=${MODULES}:mod_ctrls_admin
-.endif
-PLIST_SUB+= CTRLS_ADMIN=""
-.else
-PLIST_SUB+= CTRLS_ADMIN="@comment "
-.endif
-
-# LDAP, PGSQL and MYSQL options due nothing (in this case)
-# without QUOTA support.
-.if defined(WITH_QUOTA)
-MODULES:=${MODULES}:mod_quotatab:mod_quotatab_file
-PLIST_SUB+= QUOTA=""
-.if defined(WITH_LDAP)
-MODULES:=${MODULES}:mod_quotatab_ldap
-.endif
-.if defined(WITH_PGSQL) || defined(WITH_MYSQL)
-MODULES:=${MODULES}:mod_quotatab_sql
-.endif
-.else
-PLIST_SUB+= QUOTA="@comment "
+PLIST_SUB+= MOD_TLS_SHMCACHE="@comment "
.endif
.if defined(WITH_CLAMAV) || make(makesum) || defined(FETCH_ALL)
@@ -339,50 +430,127 @@ MODULES:=${MODULES}:mod_clamav
LIB_DEPENDS+= clamav.7:${PORTSDIR}/security/clamav
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
-PLIST_SUB+= CLAMAV=""
+PLIST_SUB+= MOD_CLAMAV=""
.else
-PLIST_SUB+= CLAMAV="@comment "
+PLIST_SUB+= MOD_CLAMAV="@comment "
.endif
-.if defined(WITH_SFTP)
-MODULES:=${MODULES}:mod_sftp
+.if defined(WITH_SFTP_SQL)
+AUTOSELECT_SFTP= yes
+AUTOSELECT_SQL= yes
+MODULES:=${MODULES}:mod_sftp_sql
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
-PLIST_SUB+= SFTP=""
+PLIST_SUB+= MOD_SFTP_SQL=""
.else
-PLIST_SUB+= SFTP="@comment "
+PLIST_SUB+= MOD_SFTP_SQL="@comment "
.endif
-.if defined(WITH_SFTP_SQL)
-MODULES:=${MODULES}:mod_sftp_sql
+.if defined(WITH_SFTP_PAM)
+AUTOSELECT_SFTP= yes
+MODULES:=${MODULES}:mod_sftp_pam
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
-PLIST_SUB+= SFTP_SQL=""
+PLIST_SUB+= MOD_SFTP_PAM=""
.else
-PLIST_SUB+= SFTP_SQL="@comment "
+PLIST_SUB+= MOD_SFTP_PAM="@comment "
.endif
-.if defined(WITH_SFTP_PAM)
-MODULES:=${MODULES}:mod_sftp_pam
+# Handle autoselectable configuration at the end
+.if !defined(WITHOUT_CTRLS) || defined(AUTOSELECT_CTRLS)
+CONFIGURE_ARGS+= --enable-ctrls
+PLIST_SUB+= CTRLS=""
+.else
+CONFIGURE_ARGS+= --disable-ctrls
+PLIST_SUB+= CTRLS="@comment "
+.endif
+
+.if defined(WITH_MEMCACHE) || defined(AUTOSELECT_MEMCACHE)
+LIB_DEPENDS+= memcached.8:${PORTSDIR}/databases/libmemcached
+CONFIGURE_ARGS+= --enable-memcache
+PLIST_SUB+= MOD_MEMCACHE=""
+.else
+CONFIGURE_ARGS+= --disable-memcache
+PLIST_SUB+= MOD_MEMCACHE="@comment "
+.endif
+
+.if !defined(WITHOUT_QUOTATAB) || defined(AUTOSELECT_QUOTATAB)
+MODULES:=${MODULES}:mod_quotatab
+PLIST_SUB+= MOD_QUOTATAB=""
+.else
+PLIST_SUB+= MOD_QUOTATAB="@comment "
+.endif
+
+.if !defined(WITHOUT_SFTP) || defined(AUTOSELECT_SFTP)
+MODULES:=${MODULES}:mod_sftp
INCLUDEDIRS:=${INCLUDEDIRS}:${LOCALBASE}/include
LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
-PLIST_SUB+= SFTP_PAM=""
+PLIST_SUB+= MOD_SFTP=""
.else
-PLIST_SUB+= SFTP_PAM="@comment "
+PLIST_SUB+= MOD_SFTP="@comment "
.endif
-# mod_ifsession should be the last item in the modules list
-.if !defined(WITHOUT_IFSESSION)
-MODULES:=${MODULES}:mod_ifsession
+.if !defined(WITHOUT_SQL) || defined(AUTOSELECT_SQL)
+MODULES:=${MODULES}:mod_sql
+PLIST_SUB+= MOD_SQL=""
+.else
+PLIST_SUB+= MOD_SQL="@comment "
+.endif
+
+.if defined(WITH_OPENSSL) || !defined(WITHOUT_TLS) || defined(AUTOSELECT_TLS)
+.include "${PORTSDIR}/Mk/bsd.openssl.mk"
+CFLAGS+= -DHAVE_OPENSSL -I${OPENSSLINC}
+PROFTPD_LIBS+= -lssl -lcrypto -L${OPENSSLLIB}
+MODULES:=${MODULES}:mod_tls
+PLIST_SUB+= MOD_TLS=""
+.else
+PLIST_SUB+= MOD_TLS="@comment "
+.endif
+
+.if !defined(WITHOUT_WRAP) || defined(AUTOSELECT_WRAP)
+MODULES:=${MODULES}:mod_wrap2
+INCLUDEDIRS:=${INCLUDEDIRS}:${WORKDIR}/include
+LIBDIRS:=${LIBDIRS}:${LOCALBASE}/lib
+PLIST_SUB+= MOD_WRAP=""
+.else
+PLIST_SUB+= MOD_WRAP="@comment "
.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:C/^://g}
+CONFIGURE_ARGS+= --with-shared=${MODULES:C/^://g}
+PLIST_SUB+= MODULES=""
+.else
+PLIST_SUB+= MODULES="@comment "
.endif
+# Create list of autoselected modules
+.if defined(WITHOUT_CTRLS) && defined(AUTOSELECT_CTRLS)
+AUTOSELECT_MODULES+= mod_ctrls
+.endif
+.if !defined(WITH_MEMCACHE) && defined(AUTOSELECT_MEMCACHE)
+AUTOSELECT_MODULES+= mod_memcache
+.endif
+.if defined(WITHOUT_QUOTATAB) && defined(AUTOSELECT_QUOTATAB)
+AUTOSELECT_MODULES+= mod_quotatab
+.endif
+.if defined(WITHOUT_SFTP) && defined(AUTOSELECT_SFTP)
+AUTOSELECT_MODULES+= mod_sftp
+.endif
+.if defined(WITHOUT_SQL) && defined(AUTOSELECT_SQL)
+AUTOSELECT_MODULES+= mod_sql
+.endif
+.if defined(WITHOUT_TLS) && defined(AUTOSELECT_TLS)
+AUTOSELECT_MODULES+= mod_tls
+.endif
+.if defined(WITHOUT_WRAP) && defined(AUTOSELECT_WRAP)
+AUTOSELECT_MODULES+= mod_wrap
+.endif
+
+.endif #!defined(_BUILDING_PROFTPD_MODULE)
+
.if !empty(INCLUDEDIRS)
CONFIGURE_ARGS+= --with-includes=${INCLUDEDIRS}
.endif
@@ -391,6 +559,7 @@ CONFIGURE_ARGS+= --with-includes=${INCLUDEDIRS}
CONFIGURE_ARGS+= --with-libraries=${LIBDIRS}
.endif
+.if !defined(BUILDING_PROFTPD_MODULE)
post-extract:
.if defined(WITH_CLAMAV)
(cd ${WRKDIR} && ${GZIP_CMD} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/mod_clamav-0.11rc.tar.gz ${EXTRACT_AFTER_ARGS})
@@ -411,7 +580,15 @@ post-patch:
@${REINPLACE_CMD} -e 's|proftpd\.conf|proftpd.conf.sample|g' ${WRKSRC}/Makefile.in
pre-configure:
- @${ECHO_MSG} "==> Configuring with ${MODULES:C/^://g}"
+.if defined(AUTOSELECT_MODULES)
+ @${ECHO_MSG} "*** NOTICE ***"
+ @${ECHO_MSG} "The following modules are required by the current\
+ configuration and have been automatically added to the build:"
+ @${ECHO_MSG} ${AUTOSELECT_MODULES}
+ @${ECHO_MSG} ""
+.endif
+ @${ECHO_MSG} "==> Configuring with following modules:"
+ @${ECHO_MSG} "${MODULES:C/^://g}"
post-configure:
${REINPLACE_CMD} -e 's: -lnsl::' ${WRKSRC}/Make.rules
@@ -420,6 +597,12 @@ post-configure:
${WRKSRC}/src/proftpd.8 ${WRKSRC}/utils/ftpshut.8 \
${WRKSRC}/utils/ftpcount.1
+.endif #!defined(_BUILDING_PROFTPD_MODULE)
+
+.if defined(_BUILDING_PROFTPD_MODULE)
+pre-build:
+ @cd ${WRKSRC} && ${MAKE} include/buildstamp.h
+.else
post-install:
@cd ${PREFIX}/etc/ && ${CP} -n proftpd.conf.sample proftpd.conf
@${MKDIR} ${LOCALSTATEDIR}/proftpd
@@ -443,5 +626,6 @@ post-install:
@${INSTALL_PROGRAM} ${WRKSRC}/ftpdctl ${PREFIX}/sbin/
@${INSTALL_MAN} ${WRKSRC}/src/ftpdctl.8 ${MAN8PREFIX}/man/man8/
.endif
+.endif #!defined(_BUILDING_PROFTPD_MODULE)
.include <bsd.port.post.mk>
diff --git a/ftp/proftpd/distinfo b/ftp/proftpd/distinfo
index 7bfd57e73406..7eb3ade4f93d 100644
--- a/ftp/proftpd/distinfo
+++ b/ftp/proftpd/distinfo
@@ -1,5 +1,5 @@
-SHA256 (proftpd-1.3.3g.tar.bz2) = b1104a91e5e4dfafb0aa876492c073cf24b7d00b3e8528fa4443c108d963ae15
-SIZE (proftpd-1.3.3g.tar.bz2) = 4204504
+SHA256 (proftpd-1.3.4a.tar.bz2) = ad92eec86deccc385ac144e3925f9b9cbe085e60f10b33d1de6da91d32f39f3e
+SIZE (proftpd-1.3.4a.tar.bz2) = 6805631
SHA256 (mod_sql_tds-4.13.tar.bz2) = b32b1d4539b1b2e7e4f44161d12ab81a56ddf292ccd125307a9b2900fdd000a8
SIZE (mod_sql_tds-4.13.tar.bz2) = 11207
SHA256 (mod_clamav-0.11rc.tar.gz) = 87630eb1866066d6320ee711897d8998b8f4915c0498b2e78cc0464abd34855a
diff --git a/ftp/proftpd/files/patch-contrib-mod_ban.c b/ftp/proftpd/files/patch-contrib-mod_ban.c
deleted file mode 100644
index 7f7a9a9bfee0..000000000000
--- a/ftp/proftpd/files/patch-contrib-mod_ban.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- contrib/mod_ban.c.orig 2010-04-08 16:31:51.305526124 +0200
-+++ contrib/mod_ban.c 2010-04-08 16:32:29.115825094 +0200
-@@ -1117,6 +1117,7 @@
-
- #if defined(FREEBSD4) || defined(FREEBSD5) || \
- defined(FREEBSD6) || defined(FREEBSD7) || \
-+ defined(FREEBSD8) || defined(FREEBSD9) || \
- defined(DARWIN7) || defined(DARWIN8) || defined(DARWIN9)
- optreset = 1;
- opterr = 1;
diff --git a/ftp/proftpd/files/patch-contrib-mod_sftp-scp.c b/ftp/proftpd/files/patch-contrib-mod_sftp-scp.c
deleted file mode 100644
index 54a7b056d7af..000000000000
--- a/ftp/proftpd/files/patch-contrib-mod_sftp-scp.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- contrib/mod_sftp/scp.c.orig 2010-04-08 16:50:19.950294512 +0200
-+++ contrib/mod_sftp/scp.c 2010-04-08 16:50:34.925959239 +0200
-@@ -1772,7 +1772,7 @@
- */
-
- #if defined(FREEBSD4) || defined(FREEBSD5) || defined(FREEBSD6) || \
-- defined(FREEBSD7) || \
-+ defined(FREEBSD7) || defined(FREEBSD8) || defined(FREEBSD9) || \
- defined(DARWIN7) || defined(DARWIN8) || defined(DARWIN9)
- optreset = 1;
- opterr = 1;
diff --git a/ftp/proftpd/files/patch-contrib-mod_tls.c b/ftp/proftpd/files/patch-contrib-mod_tls.c
deleted file mode 100644
index c712376c3274..000000000000
--- a/ftp/proftpd/files/patch-contrib-mod_tls.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- contrib/mod_tls.c.orig 2010-04-08 16:31:45.943822175 +0200
-+++ contrib/mod_tls.c 2010-04-08 16:32:44.490058910 +0200
-@@ -4812,6 +4812,7 @@
- /* All the fun portability of resetting getopt(3). */
- #if defined(FREEBSD4) || defined(FREEBSD5) || \
- defined(FREEBSD6) || defined(FREEBSD7) || \
-+ defined(FREEBSD8) || defined(FREEBSD9) || \
- defined(DARWIN7) || defined(DARWIN8) || defined(DARWIN9)
- optreset = 1;
- opterr = 1;
diff --git a/ftp/proftpd/pkg-plist b/ftp/proftpd/pkg-plist
index 8acac40efc35..269d6b142683 100644
--- a/ftp/proftpd/pkg-plist
+++ b/ftp/proftpd/pkg-plist
@@ -1,17 +1,20 @@
+bin/ftpasswd
bin/ftpcount
bin/ftpdctl
+bin/ftpmail
+bin/ftpquota
bin/ftptop
bin/ftpwho
bin/prxs
@unexec if cmp -s %D/etc/proftpd.conf %D/etc/proftpd.conf.sample; then rm -f %D/etc/proftpd.conf; fi
etc/proftpd.conf.sample
@exec cp -n %D/%F %B/proftpd.conf
-%%SFTP%%@unexec if cmp -s %D/etc/proftpd/dhparams.pem %D/etc/proftpd/dhparams.pem.sample; then rm -f %D/etc/proftpd/dhparams.pem; fi
-%%SFTP%%etc/proftpd/dhparams.pem.sample
-%%SFTP%%@exec cp -n %D/%F %B/dhparams.pem
-%%SFTP%%@unexec if cmp -s %D/etc/proftpd/blacklist.dat %D/etc/proftpd/blacklist.dat.sample; then rm -f %D/etc/proftpd/blacklist.dat; fi
-%%SFTP%%etc/proftpd/blacklist.dat.sample
-%%SFTP%%@exec cp -n %D/%F %B/blacklist.dat
+%%MOD_SFTP%%@unexec if cmp -s %D/etc/proftpd/dhparams.pem %D/etc/proftpd/dhparams.pem.sample; then rm -f %D/etc/proftpd/dhparams.pem; fi
+%%MOD_SFTP%%etc/proftpd/dhparams.pem.sample
+%%MOD_SFTP%%@exec cp -n %D/%F %B/dhparams.pem
+%%MOD_SFTP%%@unexec if cmp -s %D/etc/proftpd/blacklist.dat %D/etc/proftpd/blacklist.dat.sample; then rm -f %D/etc/proftpd/blacklist.dat; fi
+%%MOD_SFTP%%etc/proftpd/blacklist.dat.sample
+%%MOD_SFTP%%@exec cp -n %D/%F %B/blacklist.dat
@exec mkdir -p %%LOCALSTATEDIR%%/proftpd
include/proftpd/auth.h
include/proftpd/bindings.h
@@ -40,13 +43,14 @@ include/proftpd/help.h
include/proftpd/inet.h
include/proftpd/libsupp.h
include/proftpd/log.h
+include/proftpd/memcache.h
include/proftpd/mkhome.h
-%%CLAMAV%%include/proftpd/mod_clamav.h
-%%WRAP%%include/proftpd/mod_wrap2.h
-%%SFTP%%include/proftpd/mod_sftp.h
-%%SQL%%include/proftpd/mod_sql.h
-%%TLS%%include/proftpd/mod_tls.h
-%%QUOTA%%include/proftpd/mod_quotatab.h
+%%MOD_CLAMAV%%include/proftpd/mod_clamav.h
+%%MOD_WRAP%%include/proftpd/mod_wrap2.h
+%%MOD_SFTP%%include/proftpd/mod_sftp.h
+%%MOD_SQL%%include/proftpd/mod_sql.h
+%%MOD_TLS%%include/proftpd/mod_tls.h
+%%MOD_QUOTATAB%%include/proftpd/mod_quotatab.h
include/proftpd/mod_ctrls.h
include/proftpd/modules.h
include/proftpd/netacl.h
@@ -65,21 +69,137 @@ include/proftpd/response.h
include/proftpd/scoreboard.h
include/proftpd/session.h
include/proftpd/sets.h
+include/proftpd/stash.h
include/proftpd/str.h
include/proftpd/support.h
include/proftpd/table.h
include/proftpd/throttle.h
include/proftpd/timers.h
+include/proftpd/tpl.h
include/proftpd/trace.h
include/proftpd/var.h
include/proftpd/version.h
include/proftpd/xferlog.h
libdata/pkgconfig/proftpd.pc
+%%MOD_BAN%%libexec/proftpd/mod_ban.a
+%%MOD_BAN%%libexec/proftpd/mod_ban.la
+%%MOD_BAN%%libexec/proftpd/mod_ban.so
+%%MOD_CLAMAV%%libexec/proftpd/mod_clamav.a
+%%MOD_CLAMAV%%libexec/proftpd/mod_clamav.la
+%%MOD_CLAMAV%%libexec/proftpd/mod_clamav.so
+%%MOD_COPY%%libexec/proftpd/mod_copy.a
+%%MOD_COPY%%libexec/proftpd/mod_copy.la
+%%MOD_COPY%%libexec/proftpd/mod_copy.so
+%%MOD_CTRLS_ADMIN%%libexec/proftpd/mod_ctrls_admin.a
+%%MOD_CTRLS_ADMIN%%libexec/proftpd/mod_ctrls_admin.la
+%%MOD_CTRLS_ADMIN%%libexec/proftpd/mod_ctrls_admin.so
+%%MOD_DEFLATE%%libexec/proftpd/mod_deflate.a
+%%MOD_DEFLATE%%libexec/proftpd/mod_deflate.la
+%%MOD_DEFLATE%%libexec/proftpd/mod_deflate.so
+%%MOD_DYNMASQ%%libexec/proftpd/mod_dynmasq.a
+%%MOD_DYNMASQ%%libexec/proftpd/mod_dynmasq.la
+%%MOD_DYNMASQ%%libexec/proftpd/mod_dynmasq.so
+%%MOD_EXEC%%libexec/proftpd/mod_exec.a
+%%MOD_EXEC%%libexec/proftpd/mod_exec.la
+%%MOD_EXEC%%libexec/proftpd/mod_exec.so
+%%MOD_IFVERSION%%libexec/proftpd/mod_ifversion.a
+%%MOD_IFVERSION%%libexec/proftpd/mod_ifversion.la
+%%MOD_IFVERSION%%libexec/proftpd/mod_ifversion.so
+%%MOD_IFSESSION%%libexec/proftpd/mod_ifsession.a
+%%MOD_IFSESSION%%libexec/proftpd/mod_ifsession.la
+%%MOD_IFSESSION%%libexec/proftpd/mod_ifsession.so
+%%MOD_LDAP%%libexec/proftpd/mod_ldap.a
+%%MOD_LDAP%%libexec/proftpd/mod_ldap.la
+%%MOD_LDAP%%libexec/proftpd/mod_ldap.so
+%%MOD_MEMCACHE%%libexec/proftpd/mod_memcache.a
+%%MOD_MEMCACHE%%libexec/proftpd/mod_memcache.la
+%%MOD_MEMCACHE%%libexec/proftpd/mod_memcache.so
+%%MOD_ODBC%%libexec/proftpd/mod_odbc.a
+%%MOD_ODBC%%libexec/proftpd/mod_odbc.la
+%%MOD_ODBC%%libexec/proftpd/mod_odbc.so
+%%MOD_QOS%%libexec/proftpd/mod_qos.a
+%%MOD_QOS%%libexec/proftpd/mod_qos.la
+%%MOD_QOS%%libexec/proftpd/mod_qos.so
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab.a
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab.la
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab.so
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab_file.a
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab_file.la
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab_file.so
+%%MOD_QUOTATAB_LDAP%%libexec/proftpd/mod_quotatab_ldap.a
+%%MOD_QUOTATAB_LDAP%%libexec/proftpd/mod_quotatab_ldap.la
+%%MOD_QUOTATAB_LDAP%%libexec/proftpd/mod_quotatab_ldap.so
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab_sql.a
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab_sql.la
+%%MOD_QUOTATAB%%libexec/proftpd/mod_quotatab_sql.so
+%%MOD_QUOTATAB_RADIUS%%libexec/proftpd/mod_quotatab_radius.a
+%%MOD_QUOTATAB_RADIUS%%libexec/proftpd/mod_quotatab_radius.la
+%%MOD_QUOTATAB_RADIUS%%libexec/proftpd/mod_quotatab_radius.so
+%%MOD_RADIUS%%libexec/proftpd/mod_radius.a
+%%MOD_RADIUS%%libexec/proftpd/mod_radius.la
+%%MOD_RADIUS%%libexec/proftpd/mod_radius.so
+%%MOD_RATIO%%libexec/proftpd/mod_ratio.a
+%%MOD_RATIO%%libexec/proftpd/mod_ratio.la
+%%MOD_RATIO%%libexec/proftpd/mod_ratio.so
+%%MOD_README%%libexec/proftpd/mod_readme.a
+%%MOD_README%%libexec/proftpd/mod_readme.la
+%%MOD_README%%libexec/proftpd/mod_readme.so
+%%MOD_REWRITE%%libexec/proftpd/mod_rewrite.a
+%%MOD_REWRITE%%libexec/proftpd/mod_rewrite.la
+%%MOD_REWRITE%%libexec/proftpd/mod_rewrite.so
+%%MOD_SHAPER%%libexec/proftpd/mod_shaper.a
+%%MOD_SHAPER%%libexec/proftpd/mod_shaper.la
+%%MOD_SHAPER%%libexec/proftpd/mod_shaper.so
+%%MOD_SFTP%%libexec/proftpd/mod_sftp.a
+%%MOD_SFTP%%libexec/proftpd/mod_sftp.la
+%%MOD_SFTP%%libexec/proftpd/mod_sftp.so
+%%MOD_SFTP_PAM%%libexec/proftpd/mod_sftp_pam.a
+%%MOD_SFTP_PAM%%libexec/proftpd/mod_sftp_pam.la
+%%MOD_SFTP_PAM%%libexec/proftpd/mod_sftp_pam.so
+%%MOD_SFTP_SQL%%libexec/proftpd/mod_sftp_sql.a
+%%MOD_SFTP_SQL%%libexec/proftpd/mod_sftp_sql.la
+%%MOD_SFTP_SQL%%libexec/proftpd/mod_sftp_sql.so
+%%MOD_SITE_MISC%%libexec/proftpd/mod_site_misc.a
+%%MOD_SITE_MISC%%libexec/proftpd/mod_site_misc.la
+%%MOD_SITE_MISC%%libexec/proftpd/mod_sit_misc.so
+%%MOD_SQL%%libexec/proftpd/mod_sql.a
+%%MOD_SQL%%libexec/proftpd/mod_sql.la
+%%MOD_SQL%%libexec/proftpd/mod_sql.so
+%%MOD_SQLITE%%libexec/proftpd/mod_site_misc.a
+%%MOD_SQLITE%%libexec/proftpd/mod_site_misc.la
+%%MOD_SQLITE%%libexec/proftpd/mod_site_misc.so
+%%MOD_SQL_PASSWD%%libexec/proftpd/mod_sql_passwd.a
+%%MOD_SQL_PASSWD%%libexec/proftpd/mod_sql_passwd.la
+%%MOD_SQL_PASSWD%%libexec/proftpd/mod_sql_passwd.so
+%%MOD_SQL_TDS%%libexec/proftpd/mod_sql_tds.a
+%%MOD_SQL_TDS%%libexec/proftpd/mod_sql_tds.la
+%%MOD_SQL_TDS%%libexec/proftpd/mod_sql_tds.so
+%%MOD_TLS%%libexec/proftpd/mod_tls.a
+%%MOD_TLS%%libexec/proftpd/mod_tls.la
+%%MOD_TLS%%libexec/proftpd/mod_tls.so
+%%MOD_TLS_MEMCACHE%%libexec/proftpd/mod_tls_memcache.a
+%%MOD_TLS_MEMCACHE%%libexec/proftpd/mod_tls_memcache.la
+%%MOD_TLS_MEMCACHE%%libexec/proftpd/mod_tls_memcache.so
+%%MOD_TLS_SHMCACHE%%libexec/proftpd/mod_tls_shmcache.a
+%%MOD_TLS_SHMCACHE%%libexec/proftpd/mod_tls_shmcache.la
+%%MOD_TLS_SHMCACHE%%libexec/proftpd/mod_tls_shmcache.so
+%%MOD_UNIQUE%%libexec/proftpd/mod_unique_id.a
+%%MOD_UNIQUE%%libexec/proftpd/mod_unique_id.la
+%%MOD_UNIQUE%%libexec/proftpd/mod_unique_id.so
+%%MOD_WRAP%%libexec/proftpd/mod_wrap2.a
+%%MOD_WRAP%%libexec/proftpd/mod_wrap2.la
+%%MOD_WRAP%%libexec/proftpd/mod_wrap2.so
+%%MOD_WRAP_FILE%%libexec/proftpd/mod_wrap2_file.a
+%%MOD_WRAP_FILE%%libexec/proftpd/mod_wrap2_file.la
+%%MOD_WRAP_FILE%%libexec/proftpd/mod_wrap2_file.so
+%%MOD_WRAP_SQL%%libexec/proftpd/mod_wrap2_sql.a
+%%MOD_WRAP_SQL%%libexec/proftpd/mod_wrap2_sql.la
+%%MOD_WRAP_SQL%%libexec/proftpd/mod_wrap2_sql.so
sbin/ftpscrub
sbin/ftpshut
sbin/in.proftpd
sbin/proftpd
-%%CTRLS_ADMIN%%sbin/ftpdctl
+%%CTRLS%%sbin/ftpdctl
%%NLS%%share/locale/zh_CN/LC_MESSAGES/proftpd.mo
%%NLS%%share/locale/zh_TW/LC_MESSAGES/proftpd.mo
%%NLS%%share/locale/en_US/LC_MESSAGES/proftpd.mo
@@ -104,7 +224,8 @@ sbin/proftpd
%%NLS%%@dirrmtry share/locale/ru_RU
%%NLS%%@dirrmtry share/locale/bg_BG
%%NLS%%@dirrmtry share/locale/ko_KR
-%%SFTP%%@dirrmtry etc/proftpd
+%%MOD_SFTP%%@dirrmtry etc/proftpd
@dirrm include/proftpd
@dirrmtry lib/proftpd
+%%MODULES%%@dirrmtry libexec/proftpd
@unexec rmdir %%LOCALSTATEDIR%%/proftpd 2>/dev/null || true