repo/gentoo:master commit in: net-ftp/proftpd/
"Sam James" <[email protected]>
| Newsgroups | gmane.linux.gentoo.cvs |
|---|---|
| Message-ID | <1786666445.c76a91f8cfbcf39a004c98ee27b452d27ed8e97a.sam@gentoo> |
commit: c76a91f8cfbcf39a004c98ee27b452d27ed8e97a
Author: Brett A C Sheffield <bacs <AT> librecast <DOT> net>
AuthorDate: Sat Aug 1 16:12:13 2026 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 14 00:14:05 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c76a91f8
net-ftp/proftpd: drop 1.3.9-r3, 1.3.9a
Bug: https://bugs.gentoo.org/973437
Signed-off-by: Brett A C Sheffield <bacs <AT> librecast.net>
Part-of: https://codeberg.org/gentoo/gentoo/pulls/1602
Signed-off-by: Sam James <sam <AT> gentoo.org>
net-ftp/proftpd/Manifest | 3 -
net-ftp/proftpd/proftpd-1.3.9-r3.ebuild | 325 -------------------------------
net-ftp/proftpd/proftpd-1.3.9a.ebuild | 334 --------------------------------
3 files changed, 662 deletions(-)
diff --git a/net-ftp/proftpd/Manifest b/net-ftp/proftpd/Manifest
index 77c82317d06c..bde5a5632bb7 100644
--- a/net-ftp/proftpd/Manifest
+++ b/net-ftp/proftpd/Manifest
@@ -3,9 +3,6 @@ DIST mod_diskuse-0.9.1.tar.gz 72314 BLAKE2B e80d196cd1d7ca2defed7baf9bc2d31ac85b
DIST mod_gss-1.3.9.tar.gz 117158 BLAKE2B f957fa465f9a9b06ceb9c190ab60c7f67fdeeef79dce7f51bcfed8dc726cb01a231232c65821ca3a240b77a5019fa22f31b45496c128a06627bd24dc960b566f SHA512 44615983b0f67939b110e54c4a83b3056263bad72ba78de1b16f9f8590f5504c60e679f55484708d49e694c528d4715d9abd0cb75cfe439982ea9e02e0c18891
DIST mod_msg-0.5.1.tar.gz 9689 BLAKE2B fc0cbcfa341c6339be4b064db9ea8860da91c22eeee91c77fd03581e49ebbce3fcd3a27a17da85d782286c6d329e12e7237ee7cbfb70ecc1d4d32bb21f0f74e2 SHA512 729261b151a98bc971c825e88131026725aa4f4fc161adc162af8c4c3c8a457bd981308aea20fe6a1b8711b26c63a17b8d40434ef00bc45504a7c9c2a9cbe4bf
DIST mod_vroot-0.9.12.tar.gz 112717 BLAKE2B 60a59539ff9db190432a807f88236e37ab42aea0510903586ff19a00ba9d2e118b58460bdef271f6de8f2b022411484d5fe6610d66552948a9ff459ddda45343 SHA512 a84c14b9d05c4890abe50c86f832c91fa4d0971bc2b1866a3a34d73ff85acd1e902fc0cae739e22ea46e530c73230fb005ea9edeb68fd6cfb963e0c5ca9655ec
-DIST proftpd-1.3.9.tar.gz 19837398 BLAKE2B 30ad60148de79cd4198791ce89dc6c2204c75cb0966f7f17a0fefe25bf4678dd8ea7d373469fbf02f670ae0ca6879f4371ef97a65f4875ad131930d49d800b6f SHA512 5cc53d7909f8b45718509b547aeffaf027cec66b1c34ed9f3a7de1ba561f9ca3d51bb991edb24c8f833bb47e0131619850a4bfd4fec509505769d123e78dc8b3
-DIST proftpd-1.3.9a.tar.gz 19850748 BLAKE2B f024e1f112f326ebe11d1d478af258e43e4d506a01a025b6f6fa4096a19ac44f1913154489c9cd203e906ac9091806e2f2b3869c0db6b094fb960b6e6d3b4092 SHA512 217780522a9366dd16c678ab4ca3de8a6079482a0d68d2f0ab7869d0f8aba4982d0cb0105821f52c8d2fca6f76b3156da70bdbb7d01ac96ad5c16f99f33fdd76
-DIST proftpd-1.3.9a.tar.gz.asc 195 BLAKE2B 8b3f7f2fe2cc906d2804247de0b33ace669f6e0d43a99de592aaf82358c322bd42db95c23ae9bb8096702916bc42e639b6a9e8a99f7a1652731889f5a8cb5927 SHA512 6c8c872dea409745b89c5e225a421c67c3f655629d4432d03e7a55c9d4ee7921e43e8cc982743a1b32b5f3ee5e2b04467ea01237005e95cdd7add18749a9c2e4
DIST proftpd-1.3.9b.tar.gz 19858317 BLAKE2B b5c96abd419a74481f5119444ad56cab1940bad8ec4e78c636012f8e3f22fada3f5d173ffe471788cf1b512eac72d2817c30981c99c114c677beee293a5feb19 SHA512 bfcfe013db3b93247abacd2fd8fb2d929feede4e7f804a2416ca161c5cc1a3a4a18e1cc5914ae6536ebc2f40da69c1713a65c1317a3a8cbfe63706709f2e4dec
DIST proftpd-1.3.9b.tar.gz.asc 195 BLAKE2B 4e058e8e22feae1259fa4f5143e7c32def7c43b778ea29920094f80586d486e520abab4776a7bbbfc62b4b1dcbe603f206bc09628b0554349abcb1bb0a682d91 SHA512 d2875b53c401d73abe87bee3e290a8fcf8dc8d5ff08fd9aaaa0e9abfc48e90b7c94f6e3409da496910215e2fd500e1e09fd6b7b8ea55b24e6b7c30fddfb1d2a3
DIST proftpd-mod_clamav-0.14rc2.tar.gz 19710 BLAKE2B 3435e198cf029337904d4666910414124a3b7e1529d4b12f7acd8a9be563009fff4d9a30eb132a2d7361d2c830e5601c4a00a8814282585b6915e991cc29bc13 SHA512 b8e56880fadf36513215fa4c20be6db7cdf1274337072a9b29c3c3477b3de4743ebcdb1179572ec4cb1501fac0064330c855b1f818bf0cc52f0e91170f059772
diff --git a/net-ftp/proftpd/proftpd-1.3.9-r3.ebuild b/net-ftp/proftpd/proftpd-1.3.9-r3.ebuild
deleted file mode 100644
index fa8add9b89d8..000000000000
--- a/net-ftp/proftpd/proftpd-1.3.9-r3.ebuild
+++ /dev/null
@@ -1,325 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit systemd tmpfiles toolchain-funcs
-
-MOD_CASE="0.9.1"
-MOD_CLAMAV="0.14rc2"
-MOD_DISKUSE="0.9.1"
-MOD_GSS="1.3.9"
-MOD_MSG="0.5.1"
-MOD_VROOT="0.9.12"
-
-DESCRIPTION="An advanced and very configurable FTP server"
-HOMEPAGE="
- http://www.proftpd.org/
- http://www.castaglia.org/proftpd/
- https://github.com/jbenden/mod_clamav
- https://gssmod.sourceforge.net/
-"
-SRC_URI="
- ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz
- case? ( https://github.com/Castaglia/${PN}-mod_case/archive/v${MOD_CASE}.tar.gz
- -> mod_case-${MOD_CASE}.tar.gz )
- clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz
- -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz )
- diskuse? ( https://github.com/Castaglia/${PN}-mod_diskuse/archive/v${MOD_DISKUSE}.tar.gz
- -> mod_diskuse-${MOD_DISKUSE}.tar.gz )
- kerberos? ( https://downloads.sourceforge.net/gssmod/mod_gss-${MOD_GSS}.tar.gz )
- msg? ( https://github.com/Castaglia/${PN}-mod_msg/archive/v${MOD_MSG}.tar.gz
- -> mod_msg-${MOD_MSG}.tar.gz )
- vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz
- -> mod_vroot-${MOD_VROOT}.tar.gz )
-"
-S="${WORKDIR}/${P/_/}"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
-IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident
- kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius
- ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot"
-# Some tests are ran in chroot. Confuses sandbox.
-RESTRICT="test"
-# TODO: geoip
-REQUIRED_USE="
- ban? ( ctrls )
- msg? ( ctrls )
- shaper? ( ctrls )
-
- mysql? ( ssl )
- postgres? ( ssl )
- radius? ( ssl )
- sftp? ( ssl )
- sqlite? ( ssl )
-"
-
-COMMON_DEPEND="
- virtual/libcrypt:=
- acl? ( virtual/acl )
- caps? ( sys-libs/libcap )
- deflate? ( virtual/zlib:= )
- kerberos? (
- sys-fs/e2fsprogs
- virtual/krb5
- )
- ldap? ( net-nds/openldap:= )
- memcache? (
- || (
- dev-libs/libmemcached-awesome
- >=dev-libs/libmemcached-0.41
- )
- )
- mysql? (
- dev-db/mysql-connector-c:0=
- sodium? ( dev-libs/libsodium:0= )
- )
- nls? ( virtual/libiconv )
- ncurses? ( sys-libs/ncurses:0= )
- ssl? ( dev-libs/openssl:0= )
- pam? ( sys-libs/pam )
- pcre? ( dev-libs/libpcre )
- postgres? (
- dev-db/postgresql:=
- sodium? ( dev-libs/libsodium:0= )
- )
- rewrite? (
- || (
- net-dns/libidn2
- net-dns/libidn
- )
- )
- sftp? ( virtual/zlib:= )
- sqlite? (
- dev-db/sqlite:3
- sodium? ( dev-libs/libsodium:0= )
- )
-"
-DEPEND="
- ${COMMON_DEPEND}
- test? ( dev-libs/check )
-"
-RDEPEND="
- ${COMMON_DEPEND}
- net-ftp/ftpbase
- clamav? ( app-antivirus/clamav )
- selinux? ( sec-policy/selinux-ftp )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.3.6-use-trace.patch
- # https://bugs.gentoo.org/953968
- "${FILESDIR}"/${PN}-1.3.9-slibtool.patch
- "${FILESDIR}"/${PN}-1.3.9-sftp_ssl-3.0.patch
- # PR 1979 merged
- "${FILESDIR}"/${PN}-1.3.9-fix_c23.patch
-)
-
-QA_CONFIG_IMPL_DECL_SKIP=(
- # AIX only
- authenticate
- loginfailed
- loginsuccess
-
- # Deprecated/removed functions, not actually checking for this anyway
- SSLeay_add_all_algorithms
- # Test isn't actually checking for BIO_f_zlib
- BIO_f_zlib
-)
-
-in_dir() {
- pushd "${WORKDIR}/${1}" || die
- shift
- "$@"
- popd
-}
-
-src_prepare() {
- # Skip 'install-conf' / Support LINGUAS
- sed -i -e "/install-all/s/ install-conf//" Makefile.in || die
- sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die
-
- # Prepare external modules
- if use case; then
- cp -v "${WORKDIR}"/${PN}-mod_case-${MOD_CASE}/mod_case.c contrib || die
- cp -v "${WORKDIR}"/${PN}-mod_case-${MOD_CASE}/mod_case.html doc/contrib || die
- fi
-
- if use clamav ; then
- in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-refresh-api.patch
- in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-debool.patch
- cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die
- eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch
- fi
-
- if use diskuse; then
- in_dir ${PN}-mod_diskuse-${MOD_DISKUSE} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch
-
- # ./configure will modify files. Symlink them instead of copying
- ln -sv "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.h "${S}"/contrib || die
-
- cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.c "${S}"/contrib || die
- cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.html "${S}"/doc/contrib || die
- fi
-
- if use msg; then
- cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.c contrib || die
- cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.html doc/contrib || die
- fi
-
- if use vroot; then
- cp -rv "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT} contrib/mod_vroot || die
- fi
-
- if use kerberos ; then
- in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.9-gss-refresh-api.patch
- in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.9-fix_heimdal.patch
-
- # ./configure will modify files. Symlink them instead of copying
- ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die
- ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die
- ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die
-
- cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die
- cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die
- cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die
- fi
-
- default
-
- tc-export CC
-}
-
-src_configure() {
- local c m
-
- use acl && m="${m}:mod_facl"
- use ban && m="${m}:mod_ban"
- use case && m="${m}:mod_case"
- use clamav && m="${m}:mod_clamav"
- use copy && m="${m}:mod_copy"
- use ctrls && m="${m}:mod_ctrls_admin"
- use deflate && m="${m}:mod_deflate"
- if use diskuse ; then
- in_dir ${PN}-mod_diskuse-${MOD_DISKUSE} econf
- m="${m}:mod_diskuse"
- fi
- use dynmasq && m="${m}:mod_dynmasq"
- use exec && m="${m}:mod_exec"
- use ifsession && m="${m}:mod_ifsession"
- use ifversion && m="${m}:mod_ifversion"
- if use kerberos ; then
- in_dir mod_gss-${MOD_GSS} econf --with-krb5-config="${EPREFIX}/usr/bin/krb5-config"
- m="${m}:mod_gss:mod_auth_gss"
- fi
- use ldap && m="${m}:mod_ldap"
- use log-forensic && m="${m}:mod_log_forensic"
- use msg && m="${m}:mod_msg"
- if use mysql || use postgres || use sqlite ; then
- m="${m}:mod_sql:mod_sql_passwd"
- use mysql && m="${m}:mod_sql_mysql"
- use postgres && m="${m}:mod_sql_postgres"
- use sqlite && m="${m}:mod_sql_sqlite"
- fi
- use qos && m="${m}:mod_qos"
- use radius && m="${m}:mod_radius"
- use ratio && m="${m}:mod_ratio"
- use readme && m="${m}:mod_readme"
- use rewrite && m="${m}:mod_rewrite"
- if use sftp ; then
- m="${m}:mod_sftp"
- use pam && m="${m}:mod_sftp_pam"
- use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql"
- fi
- use shaper && m="${m}:mod_shaper"
- use sitemisc && m="${m}:mod_site_misc"
- use snmp && m="${m}:mod_snmp"
- if use softquota ; then
- m="${m}:mod_quotatab:mod_quotatab_file"
- use ldap && m="${m}:mod_quotatab_ldap"
- use radius && m="${m}:mod_quotatab_radius"
- use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql"
- fi
- if use ssl ; then
- m="${m}:mod_tls:mod_tls_shmcache"
- use memcache && m="${m}:mod_tls_memcache"
- fi
- if use tcpd ; then
- m="${m}:mod_wrap2:mod_wrap2_file"
- use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql"
- fi
- use unique-id && m="${m}:mod_unique_id"
- use vroot && m="${m}:mod_vroot"
-
- if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then
- einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'"
- m="${m}:${PROFTP_CUSTOM_MODULES}"
- fi
-
- [[ -z ${m} ]] || c="${c} --with-modules=${m:1}"
-
- local myeconfargs=(
- --cache-file="${S}"/config.cache
- --localstatedir=/run/proftpd
- --sysconfdir=/etc/proftpd
- --disable-strip
- $(use_enable acl facl)
- $(use_enable authfile auth-file)
- $(use_enable caps cap)
- $(use_enable ctrls)
- $(use_enable dso)
- $(use_enable ident)
- $(use_enable memcache)
- $(use_enable ncurses)
- $(use_enable nls)
- $(use_enable ssl openssl)
- $(use_enable pam auth-pam)
- $(use_enable pcre)
- $(use_enable sodium)
- $(use_enable test tests)
- --enable-trace
- --enable-shadow
- --enable-autoshadow
- ${c:1}
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_test() {
- emake api-tests -C tests
-}
-
-src_install() {
- default
- [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale
- rm -rf "${ED}"/run "${ED}"/var/run
-
- newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd
- insinto /etc/proftpd
- doins "${FILESDIR}"/proftpd.conf.sample
-
- insinto /etc/xinetd.d
- newins "${FILESDIR}"/proftpd.xinetd proftpd
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/${PN}.logrotate ${PN}
-
- dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES
-
- docinto html
- dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html
-
- docinto rfc
- dodoc doc/rfc/*.txt
-
- systemd_dounit "${FILESDIR}"/${PN}.service
- newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf
-}
-
-pkg_postinst() {
- # Create /var/run files at package merge time: bug #650000
- tmpfiles_process ${PN}.conf
-}
diff --git a/net-ftp/proftpd/proftpd-1.3.9a.ebuild b/net-ftp/proftpd/proftpd-1.3.9a.ebuild
deleted file mode 100644
index bae34444fe99..000000000000
--- a/net-ftp/proftpd/proftpd-1.3.9a.ebuild
+++ /dev/null
@@ -1,334 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/proftpd.asc
-inherit flag-o-matic systemd tmpfiles toolchain-funcs verify-sig
-
-MOD_CASE="0.9.1"
-MOD_CLAMAV="0.14rc2"
-MOD_DISKUSE="0.9.1"
-MOD_GSS="1.3.9"
-MOD_MSG="0.5.1"
-MOD_VROOT="0.9.12"
-
-DESCRIPTION="An advanced and very configurable FTP server"
-HOMEPAGE="
- http://www.proftpd.org/
- http://www.castaglia.org/proftpd/
- https://github.com/jbenden/mod_clamav
- https://gssmod.sourceforge.net/
-"
-SRC_URI="
- ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz
- case? ( https://github.com/Castaglia/${PN}-mod_case/archive/v${MOD_CASE}.tar.gz
- -> mod_case-${MOD_CASE}.tar.gz )
- clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz
- -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz )
- diskuse? ( https://github.com/Castaglia/${PN}-mod_diskuse/archive/v${MOD_DISKUSE}.tar.gz
- -> mod_diskuse-${MOD_DISKUSE}.tar.gz )
- kerberos? ( https://downloads.sourceforge.net/gssmod/mod_gss-${MOD_GSS}.tar.gz )
- msg? ( https://github.com/Castaglia/${PN}-mod_msg/archive/v${MOD_MSG}.tar.gz
- -> mod_msg-${MOD_MSG}.tar.gz )
- vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz
- -> mod_vroot-${MOD_VROOT}.tar.gz )
- verify-sig? ( ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz.asc )
-"
-S="${WORKDIR}/${P/_/}"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
-IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident
- kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius
- ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot"
-# Some tests are ran in chroot. Confuses sandbox.
-RESTRICT="test"
-# TODO: geoip
-REQUIRED_USE="
- ban? ( ctrls )
- msg? ( ctrls )
- shaper? ( ctrls )
-
- mysql? ( ssl )
- postgres? ( ssl )
- radius? ( ssl )
- sftp? ( ssl )
- sqlite? ( ssl )
-"
-
-COMMON_DEPEND="
- virtual/libcrypt:=
- acl? ( virtual/acl )
- caps? ( sys-libs/libcap )
- deflate? ( virtual/zlib:= )
- kerberos? (
- sys-fs/e2fsprogs
- virtual/krb5
- )
- ldap? ( net-nds/openldap:= )
- memcache? (
- || (
- dev-libs/libmemcached-awesome
- >=dev-libs/libmemcached-0.41
- )
- )
- mysql? (
- dev-db/mysql-connector-c:0=
- sodium? ( dev-libs/libsodium:0= )
- )
- nls? ( virtual/libiconv )
- ncurses? ( sys-libs/ncurses:0= )
- ssl? ( dev-libs/openssl:0= )
- pam? ( sys-libs/pam )
- pcre? ( dev-libs/libpcre2:= )
- postgres? (
- dev-db/postgresql:=
- sodium? ( dev-libs/libsodium:0= )
- )
- rewrite? ( net-dns/libidn2:= )
- sftp? ( virtual/zlib:= )
- sqlite? (
- dev-db/sqlite:3
- sodium? ( dev-libs/libsodium:0= )
- )
-"
-DEPEND="
- ${COMMON_DEPEND}
- test? ( dev-libs/check )
-"
-RDEPEND="
- ${COMMON_DEPEND}
- net-ftp/ftpbase
- clamav? ( app-antivirus/clamav )
- selinux? ( sec-policy/selinux-ftp )
-"
-BDEPEND="
- verify-sig? ( sec-keys/openpgp-keys-proftpd )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.3.6-use-trace.patch
- "${FILESDIR}"/${PN}-1.3.9-sftp_ssl-3.0.patch
-
- # merged in 1.3.10
- "${FILESDIR}"/${PN}-1.3.9-slibtool.patch #953968
- "${FILESDIR}"/${PN}-1.3.9-fix_c23.patch #880481
-)
-
-QA_CONFIG_IMPL_DECL_SKIP=(
- # AIX only
- authenticate
- loginfailed
- loginsuccess
-
- # Deprecated/removed functions, not actually checking for this anyway
- SSLeay_add_all_algorithms
- # Test isn't actually checking for BIO_f_zlib
- BIO_f_zlib
-)
-
-in_dir() {
- pushd "${WORKDIR}/${1}" || die
- shift
- "$@"
- popd
-}
-
-src_unpack() {
- use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P/_/}.tar.gz{,.asc}
- default
-}
-
-src_prepare() {
- # Skip 'install-conf' / Support LINGUAS
- sed -i -e "/install-all/s/ install-conf//" Makefile.in || die
- sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die
-
- # Prepare external modules
- if use case; then
- cp -v "${WORKDIR}"/${PN}-mod_case-${MOD_CASE}/mod_case.c contrib || die
- cp -v "${WORKDIR}"/${PN}-mod_case-${MOD_CASE}/mod_case.html doc/contrib || die
- fi
-
- if use clamav ; then
- in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-refresh-api.patch
- in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-debool.patch
- cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die
- eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch
- fi
-
- if use diskuse; then
- in_dir ${PN}-mod_diskuse-${MOD_DISKUSE} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch
-
- # ./configure will modify files. Symlink them instead of copying
- ln -sv "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.h "${S}"/contrib || die
-
- cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.c "${S}"/contrib || die
- cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.html "${S}"/doc/contrib || die
- fi
-
- if use msg; then
- cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.c contrib || die
- cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.html doc/contrib || die
- fi
-
- if use vroot; then
- cp -rv "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT} contrib/mod_vroot || die
- fi
-
- if use kerberos ; then
- in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.9-gss-refresh-api.patch
- in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.9-fix_heimdal.patch
-
- # ./configure will modify files. Symlink them instead of copying
- ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die
- ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die
- ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die
-
- cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die
- cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die
- cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die
- fi
-
- default
-
- tc-export CC
-}
-
-src_configure() {
- # -Werror=lto-type-mismatch #969611
- # https://github.com/proftpd/proftpd/issues/2032
- use dso && filter-lto
-
- local c m
-
- use acl && m="${m}:mod_facl"
- use ban && m="${m}:mod_ban"
- use case && m="${m}:mod_case"
- use clamav && m="${m}:mod_clamav"
- use copy && m="${m}:mod_copy"
- use ctrls && m="${m}:mod_ctrls_admin"
- use deflate && m="${m}:mod_deflate"
- if use diskuse ; then
- in_dir ${PN}-mod_diskuse-${MOD_DISKUSE} econf
- m="${m}:mod_diskuse"
- fi
- use dynmasq && m="${m}:mod_dynmasq"
- use exec && m="${m}:mod_exec"
- use ifsession && m="${m}:mod_ifsession"
- use ifversion && m="${m}:mod_ifversion"
- if use kerberos ; then
- in_dir mod_gss-${MOD_GSS} econf --with-krb5-config="${EPREFIX}/usr/bin/krb5-config"
- m="${m}:mod_gss:mod_auth_gss"
- fi
- use ldap && m="${m}:mod_ldap"
- use log-forensic && m="${m}:mod_log_forensic"
- use msg && m="${m}:mod_msg"
- if use mysql || use postgres || use sqlite ; then
- m="${m}:mod_sql:mod_sql_passwd"
- use mysql && m="${m}:mod_sql_mysql"
- use postgres && m="${m}:mod_sql_postgres"
- use sqlite && m="${m}:mod_sql_sqlite"
- fi
- use qos && m="${m}:mod_qos"
- use radius && m="${m}:mod_radius"
- use ratio && m="${m}:mod_ratio"
- use readme && m="${m}:mod_readme"
- use rewrite && m="${m}:mod_rewrite"
- if use sftp ; then
- m="${m}:mod_sftp"
- use pam && m="${m}:mod_sftp_pam"
- use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql"
- fi
- use shaper && m="${m}:mod_shaper"
- use sitemisc && m="${m}:mod_site_misc"
- use snmp && m="${m}:mod_snmp"
- if use softquota ; then
- m="${m}:mod_quotatab:mod_quotatab_file"
- use ldap && m="${m}:mod_quotatab_ldap"
- use radius && m="${m}:mod_quotatab_radius"
- use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql"
- fi
- if use ssl ; then
- m="${m}:mod_tls:mod_tls_shmcache"
- use memcache && m="${m}:mod_tls_memcache"
- fi
- if use tcpd ; then
- m="${m}:mod_wrap2:mod_wrap2_file"
- use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql"
- fi
- use unique-id && m="${m}:mod_unique_id"
- use vroot && m="${m}:mod_vroot"
-
- if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then
- einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'"
- m="${m}:${PROFTP_CUSTOM_MODULES}"
- fi
-
- [[ -z ${m} ]] || c="${c} --with-modules=${m:1}"
-
- local myeconfargs=(
- --cache-file="${S}"/config.cache
- --localstatedir=/run/proftpd
- --sysconfdir=/etc/proftpd
- --disable-strip
- $(use_enable acl facl)
- $(use_enable authfile auth-file)
- $(use_enable caps cap)
- $(use_enable ctrls)
- $(use_enable dso)
- $(use_enable ident)
- $(use_enable memcache)
- $(use_enable ncurses)
- $(use_enable nls)
- $(use_enable ssl openssl)
- $(use_enable pam auth-pam)
- $(use_enable pcre pcre2)
- $(use_enable sodium)
- $(use_enable test tests)
- --enable-trace
- --enable-shadow
- --enable-autoshadow
- ${c:1}
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_test() {
- emake api-tests -C tests
-}
-
-src_install() {
- default
- [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale
- rm -rf "${ED}"/run "${ED}"/var/run
-
- newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd
- insinto /etc/proftpd
- doins "${FILESDIR}"/proftpd.conf.sample
-
- insinto /etc/xinetd.d
- newins "${FILESDIR}"/proftpd.xinetd proftpd
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/${PN}.logrotate ${PN}
-
- dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES
-
- docinto html
- dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html
-
- docinto rfc
- dodoc doc/rfc/*.txt
-
- systemd_dounit "${FILESDIR}"/${PN}.service
- newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf
-}
-
-pkg_postinst() {
- # Create /var/run files at package merge time: bug #650000
- tmpfiles_process ${PN}.conf
-}