Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/
Date: Wed, 16 Dec 2015 13:32:33
Message-Id: 1450272738.28be5f18b3d88aec60371cac87280699871864ac.polynomial-c@gentoo
1 commit: 28be5f18b3d88aec60371cac87280699871864ac
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Wed Dec 16 13:31:38 2015 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Wed Dec 16 13:32:18 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=28be5f18
7
8 net-ftp/pure-ftpd: Revbump to add libressl support (bug #565392).
9
10 Package-Manager: portage-2.2.26
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 net-ftp/pure-ftpd/pure-ftpd-1.0.42-r1.ebuild | 144 +++++++++++++++++++++++++++
14 1 file changed, 144 insertions(+)
15
16 diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.42-r1.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.42-r1.ebuild
17 new file mode 100644
18 index 0000000..70628ab
19 --- /dev/null
20 +++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.42-r1.ebuild
21 @@ -0,0 +1,144 @@
22 +# Copyright 1999-2015 Gentoo Foundation
23 +# Distributed under the terms of the GNU General Public License v2
24 +# $Id$
25 +
26 +EAPI=5
27 +inherit eutils confutils flag-o-matic
28 +
29 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
30 +
31 +DESCRIPTION="Fast, production-quality, standard-conformant FTP server"
32 +HOMEPAGE="http://www.pureftpd.org/"
33 +SRC_URI="ftp://ftp.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
34 + http://download.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2"
35 +
36 +LICENSE="BSD"
37 +SLOT="0"
38 +
39 +IUSE="anondel anonperm anonren anonres caps charconv implicittls ldap libressl mysql noiplog pam paranoidmsg postgres resolveids selinux ssl sysquota vchroot xinetd"
40 +
41 +REQUIRED_USE="implicittls? ( ssl )"
42 +
43 +DEPEND="caps? ( sys-libs/libcap )
44 + charconv? ( virtual/libiconv )
45 + ldap? ( >=net-nds/openldap-2.0.25 )
46 + mysql? ( virtual/mysql )
47 + pam? ( virtual/pam )
48 + postgres? ( dev-db/postgresql:= )
49 + ssl? (
50 + !libressl? ( >=dev-libs/openssl-0.9.6g:0=[-bindist] )
51 + libressl? ( dev-libs/libressl:= )
52 + )
53 + sysquota? ( sys-fs/quota[-rpc] )
54 + xinetd? ( virtual/inetd )"
55 +
56 +RDEPEND="${DEPEND}
57 + dev-libs/libsodium:=
58 + net-ftp/ftpbase
59 + selinux? ( sec-policy/selinux-ftp )"
60 +
61 +src_prepare() {
62 + epatch "${FILESDIR}"/${PN}-1.0.28-pam.patch
63 +}
64 +
65 +src_configure() {
66 + # adjust max user length to something more appropriate
67 + # for virtual hosts. See bug #62472 for details.
68 + sed -e "s:# define MAX_USER_LENGTH 32U:# define MAX_USER_LENGTH 127U:" \
69 + -i "${S}/src/ftpd.h" || die "sed failed"
70 +
71 + local my_conf=""
72 +
73 + # Let's configure the USE-enabled stuff
74 + enable_extension_without "capabilities" "caps"
75 + enable_extension_with "rfc2640" "charconv" 0
76 + enable_extension_with "ldap" "ldap" 0
77 + enable_extension_with "mysql" "mysql" 0
78 + enable_extension_with "pam" "pam" 0
79 + enable_extension_with "paranoidmsg" "paranoidmsg" 0
80 + enable_extension_with "pgsql" "postgres" 0
81 + enable_extension_with "tls" "ssl" 0
82 + enable_extension_with "implicittls" "implicittls" 0
83 + enable_extension_with "virtualchroot" "vchroot" 0
84 + enable_extension_with "sysquotas" "sysquota" 0
85 + enable_extension_without "inetd" "xinetd"
86 +
87 + # noiplog is a negative flag, we don't want that enabled by default,
88 + # so we handle it manually, as confutils can't do that
89 + use noiplog && my_conf="${my_conf} --without-iplogging"
90 +
91 + # Those features are only configurable like this, see bug #179375.
92 + use anondel && append-cppflags -DANON_CAN_DELETE
93 + use anonperm && append-cppflags -DANON_CAN_CHANGE_PERMS
94 + use anonren && append-cppflags -DANON_CAN_RENAME
95 + use anonres && append-cppflags -DANON_CAN_RESUME
96 + use resolveids && append-cppflags -DALWAYS_RESOLVE_IDS
97 +
98 + # Do not auto-use SSP -- let the user select this.
99 + export ax_cv_check_cflags___fstack_protector_all=no
100 +
101 + econf \
102 + --with-altlog \
103 + --with-cookie \
104 + --with-diraliases \
105 + --with-extauth \
106 + --with-ftpwho \
107 + --with-language=${PUREFTPD_LANG:=english} \
108 + --with-peruserlimits \
109 + --with-privsep \
110 + --with-puredb \
111 + --with-quotas \
112 + --with-ratios \
113 + --with-throttling \
114 + --with-uploadscript \
115 + --with-virtualhosts \
116 + --enable-largefile \
117 + ${my_conf}
118 +}
119 +
120 +src_install() {
121 + emake DESTDIR="${D}" install
122 +
123 + dodoc AUTHORS CONTACT ChangeLog FAQ HISTORY INSTALL README* NEWS
124 +
125 + newconfd "${FILESDIR}/pure-ftpd.conf_d-3" ${PN}
126 +
127 + if use implicittls ; then
128 + sed -i '/^SERVER/s@21@990@' "${ED}"/etc/conf.d/${PN} \
129 + || die "Adjusting default server port for implicittls usage failed!"
130 + fi
131 +
132 + newinitd "${FILESDIR}/pure-ftpd.rc11" pure-ftpd
133 +
134 + dodir /var/lib/run/${PN}
135 +
136 + if use xinetd ; then
137 + insinto /etc/xinetd.d
138 + newins "${FILESDIR}/pure-ftpd.xinetd" pure-ftpd
139 + fi
140 +
141 + if use ldap ; then
142 + insinto /etc/openldap/schema
143 + doins pureftpd.schema
144 + insinto /etc/openldap
145 + insopts -m 0600
146 + doins pureftpd-ldap.conf
147 + fi
148 +}
149 +
150 +pkg_postinst() {
151 + if [[ -z "${REPLACING_VERSIONS}" ]]; then
152 + # This is a new installation
153 + elog
154 + elog "Before starting Pure-FTPd, you have to edit the /etc/conf.d/pure-ftpd file!"
155 + elog
156 + ewarn "It's *really* important to read the README provided with Pure-FTPd!"
157 + ewarn "Check out http://download.pureftpd.org/pub/pure-ftpd/doc/README for general info"
158 + ewarn "and http://download.pureftpd.org/pub/pure-ftpd/doc/README.TLS for SSL/TLS info."
159 + ewarn
160 + if use charconv ; then
161 + ewarn "Charset conversion is an *experimental* feature!"
162 + ewarn "Remember to set a valid charset for your filesystem in the configuration!"
163 + fi
164 + fi
165 +}