Magellan Linux

Contents of /trunk/extras/proftpd/proftpd-1.3.3-r3.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 5070 - (show annotations) (download)
Wed Mar 3 20:01:05 2010 UTC (14 years, 2 months ago) by niro
File size: 6621 byte(s)
-rev bump -r3; remove etc too
1 # $Id$
2
3 PNAME="proftpd"
4 PVER="1.3.3"
5 PBUILD="r3"
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.3
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-ban.patch
42 mirror://${PNAME}/${PNAME}-${PVER}-config-ldap.patch
43 mirror://${PNAME}/${PNAME}-${PVER}-config-anonymous.patch
44 mirror://${PNAME}/${PNAME}-1.3.0a-cracklib.patch
45 mirror://${PNAME}/ftpusers
46 mirror://${PNAME}/modules.conf-${MODULES_CVS_REV}
47 mirror://${PNAME}/proftpd.rc-${RC_CVS_REV}
48 mirror://${PNAME}/proftpd.confd
49 mirror://${PNAME}/proftpd.pam
50 mirror://${PNAME}/proftpd.logrotate
51 )
52
53 UP2DATE="updatecmd -listonly ftp://ftp.proftpd.org/distrib/source/ | grep -v 'rc[0-9]' | lasttarball"
54
55 split_info_proftpd()
56 {
57 DESCRIPTION="Highly configurable GPL-licensed FTP server software."
58 DEPEND=">= sys-libs/ncurses-5.7
59 >= sys-libs/pam-1.1
60 >= sys-libs/libcap-2.17
61 >= dev-libs/openssl-0.9.8k
62 >= sys-apps/tcp-wrappers-7.6
63 >= sys-apps/acl-2.2
64 >= sys-apps/attr-2.4"
65
66 preinstall()
67 {
68 # adding proftpd user
69 ${MLIBDIR}/mgroupadd -o "-g 82" proftpd
70 ${MLIBDIR}/museradd -o "-u 82 -g proftpd -d /dev/null -s /bin/false" proftpd
71 }
72
73 postinstall()
74 {
75 mstartservice proftpd
76 }
77
78 postremove()
79 {
80 mstopservice proftpd
81 }
82 }
83
84 split_info_proftpd-mysql()
85 {
86 DESCRIPTION="Module to add MySQL support to the ProFTPD FTP server."
87 DEPEND=">= dev-db/mysql5-5.1.40"
88 }
89
90 split_info_proftpd-ldap()
91 {
92 DESCRIPTION="Module to add LDAP support to the ProFTPD FTP server."
93 DEPEND=">= net-nds/openldap-2.4.19"
94 }
95
96 src_prepare()
97 {
98 munpack ${SRCFILE} || die
99 cd ${SRCDIR}
100
101 # adjust configs to match magellan
102 mpatch ${PNAME}-${PVER}-config.patch || die
103
104 # enable pam support
105 mpatch ${PNAME}-${PVER}-config-pam.patch || die
106
107 # enable tls support
108 mpatch ${PNAME}-${PVER}-config-tls.patch || die
109
110 # fix tls description
111 mpatch ${PNAME}-${PVER}-config-tls-cosmetic.patch || die
112
113 # enable ban-list support
114 mpatch ${PNAME}-${PVER}-config-ban.patch || die
115
116 # enable ldap support
117 mpatch ${PNAME}-${PVER}-config-ldap.patch || die
118
119 # enable anonymous support
120 mpatch ${PNAME}-${PVER}-config-anonymous.patch || die
121
122 # fix cracklib location in ftpasswd
123 mpatch ${PNAME}-1.3.0a-cracklib.patch || die
124 }
125
126 src_compile()
127 {
128 cd ${SRCDIR}
129
130 # ToDO: postgres
131 # the modules.conf must be fixed to
132 # LoadModule mod_sql_postgres.c
133
134 # new: mod_ban, mod_lang, mod_quotatab_radius, mod_wrap2, mod_wrap2_file, mod_wrap2_sql
135 # mod_facl, mod_ldap, mod_sql, mod_sql_passwd, mod_sql_mysql, mod_sftp, mod_sftp_pam,
136 # mod_sftp_sql, mod_quotatab_ldap, mod_quotatab_radius, mod_quotatab_sql, mod_tls_shmchache
137
138 local dso_modules="mod_ratio:mod_radius:mod_rewrite:mod_tls:mod_wrap:mod_quotatab"
139 dso_modules+=":mod_quotatab_file:mod_site_misc:mod_ctrls_admin"
140
141 # the new ones
142 dso_modules+=":mod_ban:mod_wrap2:mod_wrap2_file"
143 dso_modules+=":mod_sftp:mod_sftp_pam:mod_shaper"
144 dso_modules+=":mod_quotatab_radius:mod_tls_shmcache"
145
146 # mysql
147 dso_modules+=":mod_sql:mod_sql_passwd:mod_sql_mysql:mod_sftp_sql:mod_quotatab_sql"
148
149 # ldap
150 dso_modules+=":mod_ldap:mod_quotatab_ldap"
151
152 # acl
153 dso_modules+=":mod_facl"
154
155 # must be the last one, see: http://www16.de.proftpd.org/docs/contrib/mod_ifsession.html#Installation
156 dso_modules+=":mod_ifsession"
157
158 # non shared modules
159 local modules="mod_auth_pam:mod_readme"
160
161 mconfigure \
162 --sysconfdir=/etc/proftpd \
163 --localstatedir=/var/run/proftpd \
164 --libexecdir=/usr/$(mlibdir)/proftpd \
165 --enable-shadow \
166 --enable-autoshadow \
167 --enable-auth-pam \
168 --enable-nls \
169 --enable-ncurses \
170 --enable-shadow \
171 --enable-autoshadow \
172 --enable-sendfile \
173 --enable-ctrls \
174 --enable-dso \
175 --enable-ipv6 \
176 --enable-openssl \
177 --with-includes=/usr/include/openssl \
178 --with-includes=/usr/include/mysql \
179 --enable-cap \
180 --enable-facl \
181 --enable-auth-file \
182 --with-modules=${modules} \
183 --with-shared=${dso_modules} \
184 || die
185
186 mmake -j1 || die
187 }
188
189 src_install_proftpd()
190 {
191 cd ${SRCDIR}
192 mmake DESTDIR=${BINDIR} install || die
193
194 # install ftpuser blacklist
195 minstalletc ftpusers || die
196
197 # install modules.conf
198 minstallfile -s modules.conf-${MODULES_CVS_REV} /etc/proftpd/modules.conf || die
199 sed -i "s:@@modulepath@@:/usr/$(mlibdir)/proftpd:g" \
200 ${BINDIR}/etc/proftpd/modules.conf || die
201
202 # install pam config
203 minstallpam proftpd.pam proftpd || die
204
205 # install initscript
206 minstallrc proftpd.rc-${RC_CVS_REV} proftpd || die
207
208 # install rc config
209 minstallconf proftpd.confd proftpd || die
210
211 # install logrotate config
212 minstalllog proftpd.logrotate proftpd || die
213
214 mkeepdir /var/run/proftpd || die
215 mkeepdir /var/log/proftpd || die
216
217 minstalldocs ChangeLog COPYING CREDITS NEWS README* RELEASE_NOTES || die
218 minstalldocs doc/license.txt sample-configurations/*.conf || die
219
220 # remove modules packaged in other split-packages
221 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_ldap.{a,la,so} || die
222 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_quotatab_ldap.{a,la,so} || die
223 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sql.{a,la,so} || die
224 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sql_mysql.{a,la,so} || die
225 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sql_passwd.{a,la,so} || die
226 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_quotatab_sql.{a,la,so} || die
227 rm ${BINDIR}/usr/$(mlibdir)/proftpd/mod_sftp_sql.{a,la,so} || die
228 }
229
230 src_install_proftpd-mysql()
231 {
232 cd ${SRCDIR}
233 mmake DESTDIR=${BINDIR} install-modules || die
234
235 # remove all other modules but mysql
236 zapmost ${BINDIR}/usr/$(mlibdir)/proftpd \
237 mod_quotatab_ldap.* \
238 mod_sql.* \
239 mod_sql_mysql.* \
240 mod_sql_passwd.* \
241 mod_quotatab_sql.* \
242 mod_sftp_sql.* \
243 || die
244 rm -r ${BINDIR}/etc || die
245 }
246
247 src_install_proftpd-ldap()
248 {
249 cd ${SRCDIR}
250 mmake DESTDIR=${BINDIR} install-modules || die
251
252 # remove all other modules but ldap
253 zapmost ${BINDIR}/usr/$(mlibdir)/proftpd mod_ldap.* || die
254 rm -r ${BINDIR}/etc || die
255 }

Properties

Name Value
svn:keywords Id