Contents of /trunk/extras/proftpd/proftpd-1.3.3-r7.smage2
Parent Directory | Revision Log
Revision 5085 -
(show annotations)
(download)
Thu Mar 4 13:39:01 2010 UTC (14 years, 6 months ago) by niro
File size: 7426 byte(s)
Thu Mar 4 13:39:01 2010 UTC (14 years, 6 months ago) by niro
File size: 7426 byte(s)
-rev bump to -r7; more tls fixes and use 'openssl-make-cert' from openssl package
1 | # $Id$ |
2 | |
3 | PNAME="proftpd" |
4 | PVER="1.3.3" |
5 | PBUILD="r7" |
6 | |
7 | PCATEGORIE="net-ftp" |
8 | STATE="unstable" |
9 | |
10 | #DESCRIPTION="Highly configurable GPL-licensed FTP server software." |
11 | HOMEPAGE="http://proftpd.org/" |
12 | |
13 | SDEPEND=">= sys-libs/ncurses-5.7 |
14 | >= sys-libs/pam-1.1 |
15 | >= sys-libs/libcap-2.17 |
16 | >= dev-libs/openssl-0.9.8k |
17 | >= sys-apps/tcp-wrappers-7.6 |
18 | >= sys-apps/acl-2.2 |
19 | >= sys-apps/attr-2.4 |
20 | >= net-nds/openldap-2.4.19 |
21 | >= dev-db/mysql5-5.1.40 |
22 | >= sys-dev/gettext-0.17" |
23 | |
24 | SRCFILE="${PNAME}-${PVER}.tar.bz2" |
25 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
26 | |
27 | SPLIT_PACKAGES="${PNAME} ${PNAME}-mysql ${PNAME}-ldap" |
28 | |
29 | MODULES_CVS_REV=1.5 |
30 | RC_CVS_REV=1.4 |
31 | |
32 | sminclude mbuild mtools cleanutils |
33 | |
34 | SRC_URI=( |
35 | ftp://ftp.proftpd.org/distrib/source/${SRCFILE} |
36 | mirror://${PNAME}/${SRCFILE} |
37 | mirror://${PNAME}/${PNAME}-${PVER}-config.patch |
38 | mirror://${PNAME}/${PNAME}-${PVER}-config-pam.patch |
39 | mirror://${PNAME}/${PNAME}-${PVER}-config-tls.patch |
40 | mirror://${PNAME}/${PNAME}-${PVER}-config-tls-cosmetic.patch |
41 | mirror://${PNAME}/${PNAME}-${PVER}-config-tls-make-cert.patch |
42 | mirror://${PNAME}/${PNAME}-${PVER}-config-tls-fixup.patch |
43 | mirror://${PNAME}/${PNAME}-${PVER}-config-ban.patch |
44 | mirror://${PNAME}/${PNAME}-${PVER}-config-ldap.patch |
45 | mirror://${PNAME}/${PNAME}-${PVER}-config-anonymous.patch |
46 | mirror://${PNAME}/${PNAME}-${PVER}-config-caps.patch |
47 | mirror://${PNAME}/${PNAME}-1.3.0a-cracklib.patch |
48 | mirror://${PNAME}/ftpusers |
49 | mirror://${PNAME}/modules.conf-${MODULES_CVS_REV} |
50 | mirror://${PNAME}/proftpd.rc-${RC_CVS_REV} |
51 | mirror://${PNAME}/proftpd.confd |
52 | mirror://${PNAME}/proftpd.pam |
53 | mirror://${PNAME}/proftpd.logrotate |
54 | ) |
55 | |
56 | UP2DATE="updatecmd -listonly ftp://ftp.proftpd.org/distrib/source/ | grep -v 'rc[0-9]' | lasttarball" |
57 | |
58 | split_info_proftpd() |
59 | { |
60 | DESCRIPTION="Highly configurable GPL-licensed FTP server software." |
61 | DEPEND=">= sys-libs/ncurses-5.7 |
62 | >= sys-libs/pam-1.1 |
63 | >= sys-libs/libcap-2.17 |
64 | >= dev-libs/openssl-0.9.8k |
65 | >= sys-apps/tcp-wrappers-7.6 |
66 | >= sys-apps/acl-2.2 |
67 | >= sys-apps/attr-2.4" |
68 | |
69 | preinstall() |
70 | { |
71 | # adding proftpd user |
72 | ${MLIBDIR}/mgroupadd -o "-g 82" proftpd |
73 | ${MLIBDIR}/museradd -o "-u 82 -g proftpd -d /dev/null -s /bin/false" proftpd |
74 | |
75 | ${MLIBDIR}/mgroupadd -o "-g 21" ftp |
76 | ${MLIBDIR}/museradd -o "-u 21 -g ftp -d /home/ftp -s /bin/false" ftp |
77 | |
78 | if [ ! -d ${MROOT}/home/ftp ] |
79 | then |
80 | # proftpd won't run if this dir is writeable |
81 | install -o root -g root -d ${MROOT}/home/ftp |
82 | fi |
83 | } |
84 | |
85 | postinstall() |
86 | { |
87 | mstartservice proftpd |
88 | } |
89 | |
90 | postremove() |
91 | { |
92 | mstopservice proftpd |
93 | } |
94 | } |
95 | |
96 | split_info_proftpd-mysql() |
97 | { |
98 | DESCRIPTION="Module to add MySQL support to the ProFTPD FTP server." |
99 | DEPEND="== net-ftp/proftpd-${PVER} |
100 | >= dev-db/mysql5-5.1.40" |
101 | } |
102 | |
103 | split_info_proftpd-ldap() |
104 | { |
105 | DESCRIPTION="Module to add LDAP support to the ProFTPD FTP server." |
106 | DEPEND="== net-ftp/proftpd-${PVER} |
107 | >= net-nds/openldap-2.4.19" |
108 | } |
109 | |
110 | src_prepare() |
111 | { |
112 | munpack ${SRCFILE} || die |
113 | cd ${SRCDIR} |
114 | |
115 | # adjust configs to match magellan |
116 | mpatch ${PNAME}-${PVER}-config.patch || die |
117 | |
118 | # enable pam support |
119 | mpatch ${PNAME}-${PVER}-config-pam.patch || die |
120 | |
121 | # enable tls support |
122 | mpatch ${PNAME}-${PVER}-config-tls.patch || die |
123 | |
124 | # fix tls description |
125 | mpatch ${PNAME}-${PVER}-config-tls-cosmetic.patch || die |
126 | |
127 | # use our provided make-cert script from openssl |
128 | mpatch ${PNAME}-${PVER}-config-tls-make-cert.patch || die |
129 | |
130 | # add hint about NoSessionReuseRequired |
131 | mpatch ${PNAME}-${PVER}-config-tls-fixup.patch || die |
132 | |
133 | # enable ban-list support |
134 | mpatch ${PNAME}-${PVER}-config-ban.patch || die |
135 | |
136 | # enable ldap support |
137 | mpatch ${PNAME}-${PVER}-config-ldap.patch || die |
138 | |
139 | # enable anonymous support |
140 | mpatch ${PNAME}-${PVER}-config-anonymous.patch || die |
141 | |
142 | # hint to disable caps support on vserver |
143 | mpatch ${PNAME}-${PVER}-config-caps.patch || die |
144 | |
145 | # fix cracklib location in ftpasswd |
146 | mpatch ${PNAME}-1.3.0a-cracklib.patch || die |
147 | } |
148 | |
149 | src_compile() |
150 | { |
151 | cd ${SRCDIR} |
152 | |
153 | # ToDO: postgres |
154 | # the modules.conf must be fixed to |
155 | # LoadModule mod_sql_postgres.c |
156 | |
157 | # new: mod_ban, mod_lang, mod_quotatab_radius, mod_wrap2, mod_wrap2_file, mod_wrap2_sql |
158 | # mod_facl, mod_ldap, mod_load, mod_sql, mod_sql_passwd, mod_sql_mysql, mod_sftp, mod_sftp_pam, |
159 | # mod_sftp_sql, mod_quotatab_ldap, mod_quotatab_radius, mod_quotatab_sql, mod_tls_shmchache |
160 | |
161 | local dso_modules="mod_ratio:mod_radius:mod_rewrite:mod_tls:mod_wrap:mod_quotatab" |
162 | dso_modules+=":mod_quotatab_file:mod_site_misc:mod_ctrls_admin" |
163 | |
164 | # the new ones |
165 | dso_modules+=":mod_ban:mod_wrap2:mod_wrap2_file" |
166 | dso_modules+=":mod_sftp:mod_sftp_pam:mod_shaper" |
167 | dso_modules+=":mod_quotatab_radius:mod_tls_shmcache:mod_load" |
168 | |
169 | # mysql |
170 | dso_modules+=":mod_sql:mod_sql_passwd:mod_sql_mysql:mod_sftp_sql:mod_quotatab_sql" |
171 | |
172 | # ldap |
173 | dso_modules+=":mod_ldap:mod_quotatab_ldap" |
174 | |
175 | # acl |
176 | dso_modules+=":mod_facl" |
177 | |
178 | # must be the last one, see: http://www16.de.proftpd.org/docs/contrib/mod_ifsession.html#Installation |
179 | dso_modules+=":mod_ifsession" |
180 | |
181 | # non shared modules |
182 | local modules="mod_auth_pam:mod_readme" |
183 | |
184 | mconfigure \ |
185 | --sysconfdir=/etc/proftpd \ |
186 | --localstatedir=/var/run/proftpd \ |
187 | --libexecdir=/usr/$(mlibdir)/proftpd \ |
188 | --enable-shadow \ |
189 | --enable-autoshadow \ |
190 | --enable-auth-pam \ |
191 | --enable-nls \ |
192 | --enable-ncurses \ |
193 | --enable-shadow \ |
194 | --enable-autoshadow \ |
195 | --enable-sendfile \ |
196 | --enable-ctrls \ |
197 | --enable-dso \ |
198 | --enable-ipv6 \ |
199 | --enable-openssl \ |
200 | --with-includes=/usr/include/openssl \ |
201 | --with-includes=/usr/include/mysql \ |
202 | --enable-cap \ |
203 | --enable-facl \ |
204 | --enable-auth-file \ |
205 | --with-modules=${modules} \ |
206 | --with-shared=${dso_modules} \ |
207 | || die |
208 | |
209 | mmake -j1 || die |
210 | } |
211 | |
212 | src_install_proftpd() |
213 | { |
214 | cd ${SRCDIR} |
215 | mmake DESTDIR=${BINDIR} install || die |
216 | |
217 | # install ftpuser blacklist |
218 | minstalletc ftpusers || die |
219 | |
220 | # install modules.conf |
221 | minstallfile -s modules.conf-${MODULES_CVS_REV} /etc/proftpd/modules.conf || die |
222 | sed -i "s:@@modulepath@@:/usr/$(mlibdir)/proftpd:g" \ |
223 | ${BINDIR}/etc/proftpd/modules.conf || die |
224 | |
225 | # install pam config |
226 | minstallpam proftpd.pam proftpd || die |
227 | |
228 | # install initscript |
229 | minstallrc proftpd.rc-${RC_CVS_REV} proftpd || die |
230 | |
231 | # install rc config |
232 | minstallconf proftpd.confd proftpd || die |
233 | |
234 | # install logrotate config |
235 | minstalllog proftpd.logrotate proftpd || die |
236 | |
237 | mkeepdir /var/run/proftpd || die |
238 | mkeepdir /var/log/proftpd || die |
239 | |
240 | minstalldocs ChangeLog COPYING CREDITS NEWS README* RELEASE_NOTES || die |
241 | minstalldocs doc/license.txt sample-configurations/*.conf || die |
242 | |
243 | # remove modules packaged in other split-packages |
244 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_ldap.{a,la,so} || die |
245 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_quotatab_ldap.{a,la,so} || die |
246 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sql.{a,la,so} || die |
247 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sql_mysql.{a,la,so} || die |
248 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sql_passwd.{a,la,so} || die |
249 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_quotatab_sql.{a,la,so} || die |
250 | rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sftp_sql.{a,la,so} || die |
251 | } |
252 | |
253 | src_install_proftpd-mysql() |
254 | { |
255 | cd ${SRCDIR} |
256 | mmake DESTDIR=${BINDIR} install-modules || die |
257 | |
258 | # remove all other modules but mysql |
259 | zapmost ${BINDIR}/usr/$(mlibdir)/proftpd \ |
260 | mod_quotatab_ldap.* \ |
261 | mod_sql.* \ |
262 | mod_sql_mysql.* \ |
263 | mod_sql_passwd.* \ |
264 | mod_quotatab_sql.* \ |
265 | mod_sftp_sql.* \ |
266 | || die |
267 | rm -r ${BINDIR}/etc || die |
268 | } |
269 | |
270 | src_install_proftpd-ldap() |
271 | { |
272 | cd ${SRCDIR} |
273 | mmake DESTDIR=${BINDIR} install-modules || die |
274 | |
275 | # remove all other modules but ldap |
276 | zapmost ${BINDIR}/usr/$(mlibdir)/proftpd mod_ldap.* || die |
277 | rm -r ${BINDIR}/etc || die |
278 | } |
Properties
Name | Value |
---|---|
svn:keywords | Id |