]> git.pld-linux.org Git - packages/proftpd.git/blame - proftpd.spec
- rel 2; tinfo link fix
[packages/proftpd.git] / proftpd.spec
CommitLineData
a62be9f3
ER
1# TODO
2# - mod_caps uses uname -r for detection
ee1ec582 3# - don't use internal libltdl
a3cd1656 4#
16865efe 5# Conditional build:
2e58659a 6%bcond_without pam # disable PAM support
7%bcond_without ipv6 # disable IPv6 and TCPD support
8%bcond_without ssl # disbale TLS/SSL support
722bdd1f 9%bcond_without ldap # disable LDAP support
10%bcond_without mysql # disable MySQL support
11%bcond_without pgsql # disable PostgreSQL support
12%bcond_without quotafile # disable quota file support
13%bcond_without quotaldap # disable quota ldap support
14%bcond_without quotamysql # disable quota mysql support
15%bcond_without quotapgsql # disable quota pgsql support
16865efe 16#
060127a7 17Summary: PROfessional FTP Daemon with apache-like configuration syntax
8529003f
ER
18Summary(es.UTF-8): Servidor FTP profesional, con sintaxis de configuración semejante a la del apache
19Summary(pl.UTF-8): PROfesionalny serwer FTP
20Summary(pt_BR.UTF-8): Servidor FTP profissional, com sintaxe de configuração semelhante à do apache
21Summary(zh_CN.UTF-8): 易于管理的,安全的 FTP 服务器
060127a7 22Name: proftpd
fdf63af7 23Version: 1.3.2e
fd29f932 24Release: 2
e4b41e2a 25Epoch: 2
372155e4 26License: GPL v2+
89efc142 27Group: Networking/Daemons
ee1ec582 28Source0: ftp://ftp.proftpd.org/distrib/source/%{name}-%{version}.tar.bz2
fdf63af7 29# Source0-md5: 018e0eb1757d9cea2a0e17f2c9b1ca2d
a96efe6e 30Source1: %{name}.conf
f2119458 31Source3: ftp.pamd
9a9f906b 32Source4: %{name}.inetd
15a3b9cf
JR
33Source5: %{name}.sysconfig
34Source6: %{name}.init
372155e4 35Source7: ftpusers.tar.bz2
87645069 36# Source7-md5: 76c80b6ec9f4d079a1e27316edddbe16
a62be9f3 37Source9: %{name}-mod_pam.conf
1af975e5 38Source10: %{name}-mod_tls.conf
813c3994 39Source11: %{name}-anonftp.conf
32ba901e 40Patch0: %{name}-paths.patch
41Patch1: %{name}-noautopriv.patch
42Patch2: %{name}-wtmp.patch
43Patch3: %{name}-pool.patch
5175a017 44Patch4: %{name}-nostrip.patch
fd29f932 45Patch5: %{name}-link.patch
dfe8b502 46URL: http://www.proftpd.org/
d13a2fd3 47BuildRequires: acl-devel
16865efe 48BuildRequires: autoconf
69a15f0d 49BuildRequires: automake
d13a2fd3 50BuildRequires: libcap-devel
3a404937 51BuildRequires: libstdc++-devel
16865efe 52BuildRequires: libwrap-devel
1dba37cb 53%if %{with mysql} || %{with quotamysql}
54BuildRequires: mysql-devel
55%endif
cb7b7049 56BuildRequires: ncurses-devel
1dba37cb 57%if %{with ldap} || %{with quotaldap}
ee1ec582 58BuildRequires: openldap-devel
1dba37cb 59%endif
af998dea 60%{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
eb09e120 61%{?with_pam:BuildRequires: pam-devel}
1dba37cb 62%if %{with pgsql} || %{with quotapgsql}
63BuildRequires: postgresql-devel
64%endif
af998dea 65BuildRequires: rpmbuild(macros) >= 1.268
d5382fca 66BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
12250d98 67
acb6a758 68%define _sysconfdir /etc/ftpd
86e5ce30 69%define _localstatedir /var/run
a62be9f3 70%define _libexecdir %{_prefix}/%{_lib}/%{name}
3531a682 71
12250d98 72%description
a7f94b1a 73ProFTPD is a highly configurable FTP daemon for Unix and Unix-like
3a652411
ER
74operating systems. ProFTPD is designed to be somewhat of a "drop-in"
75replacement for wu-ftpd. Full online documentation is available at
76<http://www.proftpd.org/>, including a server configuration directive
77reference manual.
78
840f54f1 79%description -l es.UTF-8
3a652411 80ProFTPD es un servidor FTP altamente configurable para sistemas
a7f94b1a 81operativos Unix. Está proyectado para ser un substituto directo al
840f54f1 82wu-ftpd. La documentación completa está disponible en
3a652411 83<http://www.proftpd.org/>, incluido el manual de referencia para las
840f54f1 84directivas de configuración del servidor.
3a652411 85
840f54f1
JR
86%description -l pl.UTF-8
87ProFTPD jest wysoce konfigurowalnym serwerem FTP dla systemów Unix.
88ProFTPD jest robiony jako bezpośredni zamiennik wu-ftpd. Pełna
89dokumentacja jest dostępna on-line pod <http://www.proftpd.org/>
90włącznie z dokumentacją dotyczącą konfigurowania.
3a652411 91
840f54f1
JR
92%description -l pt_BR.UTF-8
93O ProFTPD é um servidor FTP altamente configurável para sistemas
a7f94b1a 94operacionais Unix.
3a652411 95
840f54f1
JR
96É projetado para ser um substituto direto para o wu-ftpd. A
97documentação completa está disponível em <http://www.proftpd.org/>,
98incluindo o manual de referência para as diretivas de configuração do
3a652411 99servidor.
0e899110
ER
100
101%package common
102Summary: PROfessional FTP Daemon with apache-like configuration syntax - common files
89efc142
TP
103Summary(pl.UTF-8): PROfesionalny serwer FTP - wspólne pliki
104Group: Networking/Daemons
0e899110
ER
105Requires(post): awk
106Requires(post): fileutils
0e899110
ER
107Obsoletes: proftpd < 0:1.2.2rc1-3
108
109%description common
a7f94b1a 110ProFTPD is a highly configurable FTP daemon for Unix and Unix-like
64843696 111operating systems. ProFTPD is designed to be somewhat of a "drop-in"
3915e5da 112replacement for wu-ftpd. Full online documentation is available at
c4b4ddf1 113<http://www.proftpd.org/>, including a server configuration directive
3915e5da 114reference manual.
12250d98 115
840f54f1 116%description common -l es.UTF-8
a62be9f3 117ProFTPD es un servidor FTP altamente configurable para sistemas
a7f94b1a 118operativos Unix. Está proyectado para ser un substituto directo al
840f54f1 119wu-ftpd. La documentación completa está disponible en
a62be9f3 120<http://www.proftpd.org/>, incluido el manual de referencia para las
840f54f1 121directivas de configuración del servidor.
c4b4ddf1 122
840f54f1
JR
123%description common -l pl.UTF-8
124ProFTPD jest wysoce konfigurowalnym serwerem FTP dla systemów Unix.
125ProFTPD jest robiony jako bezpośredni zamiennik wu-ftpd. Pełna
126dokumentacja jest dostępna on-line pod <http://www.proftpd.org/>
127włącznie z dokumentacją dotyczącą konfigurowania.
0e899110 128
840f54f1
JR
129%description common -l pt_BR.UTF-8
130O ProFTPD é um servidor FTP altamente configurável para sistemas
a7f94b1a 131operacionais Unix.
a62be9f3 132
840f54f1
JR
133É projetado para ser um substituto direto para o wu-ftpd. A
134documentação completa está disponível em <http://www.proftpd.org/>,
135incluindo o manual de referência para as diretivas de configuração do
a62be9f3 136servidor.
d815f4e3 137
15a3b9cf
JR
138%package inetd
139Summary: inetd configs for proftpd
8529003f 140Summary(pl.UTF-8): Pliki konfiguracyjne do użycia proftpd poprzez inetd
89efc142 141Group: Networking/Daemons
16865efe
JB
142Requires(post): fileutils
143Requires(post): grep
8eb57af0
ER
144Requires(post): sed >= 4.0
145Requires(triggerpostun): sed >= 4.0
e6b0aff7
ER
146Requires: %{name}-common = %{epoch}:%{version}-%{release}
147Requires: rc-inetd
d8cfd64c 148Provides: ftpserver
af998dea 149Provides: proftpd = %{epoch}:%{version}-%{release}
d8cfd64c
AF
150Obsoletes: anonftp
151Obsoletes: bftpd
152Obsoletes: ftpd-BSD
af998dea 153Obsoletes: ftpserver
79b434cd 154Obsoletes: glftpd
d8cfd64c 155Obsoletes: heimdal-ftpd
077db6cc 156Obsoletes: krb5-ftpd
d8cfd64c 157Obsoletes: linux-ftpd
c9f4d6dc 158Obsoletes: muddleftpd
af998dea 159Obsoletes: proftpd-standalone
d8cfd64c 160Obsoletes: pure-ftpd
c9f4d6dc 161Obsoletes: troll-ftpd
43f51e83 162Obsoletes: vsftpd
d8cfd64c 163Obsoletes: wu-ftpd
0fba9130 164Conflicts: man-pages < 1.51
a62be9f3 165Conflicts: rpm < 4.4.2-0.2
15a3b9cf
JR
166
167%description inetd
168ProFTPD configs for running from inetd.
169
840f54f1 170%description inetd -l pl.UTF-8
752e9a49
PG
171Pliki konfiguracyjna ProFTPD do startowania demona poprzez inetd.
172
15a3b9cf 173%package standalone
c65518c5 174Summary: Standalone daemon configs for proftpd
8529003f 175Summary(pl.UTF-8): Pliki konfiguracyjne do startowania proftpd w trybie standalone
89efc142 176Group: Networking/Daemons
16865efe
JB
177Requires(post): fileutils
178Requires(post): grep
8eb57af0 179Requires(post): sed >= 4.0
e6b0aff7 180Requires(post,preun): /sbin/chkconfig
8eb57af0 181Requires(triggerpostun): sed >= 4.0
e6b0aff7
ER
182Requires: %{name}-common = %{epoch}:%{version}-%{release}
183Requires: rc-scripts
d8cfd64c 184Provides: ftpserver
af998dea 185Provides: proftpd = %{epoch}:%{version}-%{release}
d8cfd64c
AF
186Obsoletes: anonftp
187Obsoletes: bftpd
188Obsoletes: ftpd-BSD
af998dea 189Obsoletes: ftpserver
79b434cd 190Obsoletes: glftpd
d8cfd64c 191Obsoletes: heimdal-ftpd
077db6cc 192Obsoletes: krb5-ftpd
d8cfd64c 193Obsoletes: linux-ftpd
c9f4d6dc 194Obsoletes: muddleftpd
af998dea 195Obsoletes: proftpd-inetd
d8cfd64c 196Obsoletes: pure-ftpd
c9f4d6dc 197Obsoletes: troll-ftpd
43f51e83 198Obsoletes: vsftpd
d8cfd64c 199Obsoletes: wu-ftpd
0fba9130 200Conflicts: man-pages < 1.51
a62be9f3 201Conflicts: rpm < 4.4.2-0.2
15a3b9cf
JR
202
203%description standalone
204ProFTPD configs for running as a standalone daemon.
205
840f54f1 206%description standalone -l pl.UTF-8
d815f4e3 207Pliki konfiguracyjne ProFTPD do startowania demona w trybie
208standalone.
752e9a49 209
a62be9f3
ER
210%package devel
211Summary: Header files ProFTPD
8529003f 212Summary(pl.UTF-8): Pliki nagłówkowe ProFTPD
a62be9f3 213Group: Development/Libraries
6f8e0c48 214Requires: acl-devel
a62be9f3
ER
215
216%description devel
217This is the package containing the header files for ProFTPD.
218
840f54f1
JR
219%description devel -l pl.UTF-8
220Ten pakiet zawiera pliki nagłówkowe ProFTPD
018e0f25 221
e37dae10
ER
222%package anonftp
223Summary: Anonymous FTP config for ProFTPD
8529003f 224Summary(pl.UTF-8): Konfiguracja anonimowego FTP dla ProFTPD
89efc142 225Group: Networking/Daemons
e37dae10
ER
226Requires: %{name}-common = %{epoch}:%{version}-%{release}
227
228%description anonftp
e3db86e8
JB
229Anonymous FTP config for ProFTPD.
230
840f54f1 231%description anonftp -l pl.UTF-8
e3db86e8 232Konfiguracja anonimowego FTP dla ProFTPD.
e37dae10 233
a62be9f3
ER
234%package mod_auth_pam
235Summary: ProFTPD PAM auth module
8529003f 236Summary(pl.UTF-8): Moduł uwierzytelnienia PAM dla ProFTPD
89efc142 237Group: Networking/Daemons
a62be9f3
ER
238Requires: %{name}-common = %{epoch}:%{version}-%{release}
239Requires: pam >= 0.79.0
240
241%description mod_auth_pam
242PAM authentication method for ProFTPD.
243
840f54f1 244%description mod_auth_pam -l pl.UTF-8
018e0f25
JB
245Metoda uwierzytelnienia PAM dla ProFTPD.
246
a62be9f3
ER
247%package mod_ldap
248Summary: ProFTPD OpenLDAP module
8529003f 249Summary(pl.UTF-8): Moduł OpenLDAP dla ProFTPD
89efc142 250Group: Networking/Daemons
a62be9f3
ER
251Requires: %{name}-common = %{epoch}:%{version}-%{release}
252
253%description mod_ldap
a62be9f3
ER
254mod_ldap provides LDAP authentication support for ProFTPD. It supports
255many features useful in "toaster" environments such as default UID/GID
256and autocreation/autogeneration of home directories.
257
840f54f1
JR
258%description mod_ldap -l pl.UTF-8
259mod_ldap dodaje obsługę uwierzytelnienia LDAP do ProFTPD. Obsługuje
260wiele cech przydatnych w środowiskach "tosterowych", takich jak
261domyślny UID/GID i automatyczne tworzenie/generowanie katalogów
018e0f25
JB
262domowych.
263
a62be9f3
ER
264%package mod_quotatab
265Summary: ProFTPD quotatab module
8529003f 266Summary(pl.UTF-8): Moduł quotatab dla ProFTPD
89efc142 267Group: Networking/Daemons
a62be9f3
ER
268Requires: %{name}-common = %{epoch}:%{version}-%{release}
269
270%description mod_quotatab
271A module for managing FTP byte/file quotas via centralized tables.
272
840f54f1
JR
273%description mod_quotatab -l pl.UTF-8
274Moduł do zarządzania ograniczeniami bajtów/plików FTP poprzez
018e0f25
JB
275scentralizowane tabele.
276
a62be9f3
ER
277%package mod_quotatab_file
278Summary: ProFTPD quotatab file module
8529003f 279Summary(pl.UTF-8): Moduł quotatab_file dla ProFTPD
89efc142 280Group: Networking/Daemons
a62be9f3
ER
281Requires: %{name}-common = %{epoch}:%{version}-%{release}
282Requires: %{name}-mod_quotatab = %{epoch}:%{version}-%{release}
283
284%description mod_quotatab_file
285A mod_quotatab sub-module for managing quota data via file-based
286tables.
287
840f54f1
JR
288%description mod_quotatab_file -l pl.UTF-8
289Podmoduł mod_quotatab do zarządzania danymi o ograniczeniach poprzez
018e0f25
JB
290tabele zapisane w pliku.
291
a62be9f3
ER
292%package mod_quotatab_ldap
293Summary: ProFTPD quotatab ldap module
8529003f 294Summary(pl.UTF-8): Moduł quotatab_ldap dla ProFTPD
89efc142 295Group: Networking/Daemons
a62be9f3
ER
296Requires: %{name}-common = %{epoch}:%{version}-%{release}
297Requires: %{name}-mod_ldap = %{epoch}:%{version}-%{release}
298Requires: %{name}-mod_quotatab = %{epoch}:%{version}-%{release}
299
300%description mod_quotatab_ldap
301A mod_quotatab sub-module for obtaining quota information from an LDAP
302directory.
303
840f54f1
JR
304%description mod_quotatab_ldap -l pl.UTF-8
305Podmoduł mod_quotatab do pobierania informacji o ograniczeniach z
018e0f25
JB
306katalogu LDAP.
307
a62be9f3
ER
308%package mod_quotatab_sql
309Summary: ProFTPD quotatab sql module
8529003f 310Summary(pl.UTF-8): Moduł quotatab_sql dla ProFTPD
89efc142 311Group: Networking/Daemons
a62be9f3
ER
312Requires: %{name}-common = %{epoch}:%{version}-%{release}
313Requires: %{name}-mod_quotatab = %{epoch}:%{version}-%{release}
314Requires: %{name}-mod_sql = %{epoch}:%{version}-%{release}
315
316%description mod_quotatab_sql
317A mod_quotatab sub-module for managing quota data via SQL-based
318tables.
319
840f54f1
JR
320%description mod_quotatab_sql -l pl.UTF-8
321Podmoduł mod_quotatab do zarządzania danymi o ograniczeniach poprzez
018e0f25
JB
322tabele SQL.
323
a62be9f3 324%package mod_ratio
018e0f25 325Summary: ProFTPD ratio module
8529003f 326Summary(pl.UTF-8): Moduł ratio dla ProFTPD
89efc142 327Group: Networking/Daemons
a62be9f3
ER
328Requires: %{name}-common = %{epoch}:%{version}-%{release}
329
330%description mod_ratio
331Support upload/download ratios.
332
840f54f1
JR
333%description mod_ratio -l pl.UTF-8
334Obsługa współczynników upload/download.
018e0f25 335
a62be9f3
ER
336%package mod_readme
337Summary: ProFTPD readme module
8529003f 338Summary(pl.UTF-8): Moduł readme dla ProFTPD
89efc142 339Group: Networking/Daemons
a62be9f3
ER
340Requires: %{name}-common = %{epoch}:%{version}-%{release}
341
342%description mod_readme
343"README" file support.
344
840f54f1
JR
345%description mod_readme -l pl.UTF-8
346Obsługa pliku "README".
018e0f25 347
6cf064e5 348%package mod_rewrite
349Summary: ProFTPD rewrite module
350Summary(pl.UTF-8): Moduł rewrite dla ProFTPD
89efc142 351Group: Networking/Daemons
6cf064e5 352Requires: %{name}-common = %{epoch}:%{version}-%{release}
353
354%description mod_rewrite
355Runtime rewrite engine.
356
debd9bf3
JB
357%description mod_rewrite -l pl.UTF-8
358Silnik przepisujący adresy w locie.
359
a62be9f3
ER
360%package mod_sql
361Summary: ProFTPD SQL support module
8529003f 362Summary(pl.UTF-8): Moduł obsługi SQL dla ProFTPD
89efc142 363Group: Networking/Daemons
a62be9f3
ER
364Requires: %{name}-common = %{epoch}:%{version}-%{release}
365
366%description mod_sql
367This module provides the necessary support for SQL based
368authentication, logging and other features as required.
369
840f54f1
JR
370%description mod_sql -l pl.UTF-8
371Ten moduł dodaje obsługę SQL potrzebną do uwierzytelniania, logowania
372i innych możliwości opartych o SQL.
018e0f25 373
a62be9f3
ER
374%package mod_sql_mysql
375Summary: ProFTPD sql mysql module
8529003f 376Summary(pl.UTF-8): Moduł sql_mysql dla ProFTPD
89efc142 377Group: Networking/Daemons
a62be9f3
ER
378Requires: %{name}-common = %{epoch}:%{version}-%{release}
379Requires: %{name}-mod_sql = %{epoch}:%{version}-%{release}
82547e9c 380
a62be9f3
ER
381%description mod_sql_mysql
382Support for connecting to MySQL databases.
383
840f54f1
JR
384%description mod_sql_mysql -l pl.UTF-8
385Obsługa łączenia się z bazami danych MySQL.
018e0f25 386
a62be9f3
ER
387%package mod_sql_postgres
388Summary: ProFTPD sql postgres module
8529003f 389Summary(pl.UTF-8): Moduł sql_postgres dla ProFTPD
89efc142 390Group: Networking/Daemons
a62be9f3
ER
391Requires: %{name}-common = %{epoch}:%{version}-%{release}
392Requires: %{name}-mod_sql = %{epoch}:%{version}-%{release}
393
394%description mod_sql_postgres
018e0f25
JB
395Support for connecting to PostgreSQL databases.
396
840f54f1
JR
397%description mod_sql_postgres -l pl.UTF-8
398Obsługa łączenia się z bazami danych PostgreSQL.
a62be9f3
ER
399
400%package mod_tls
401Summary: ProFTPD TLS support
8529003f 402Summary(pl.UTF-8): Obsługa TLS dla ProFTPD
89efc142 403Group: Networking/Daemons
a62be9f3
ER
404Requires: %{name}-common = %{epoch}:%{version}-%{release}
405
406%description mod_tls
407An RFC2228 SSL/TLS module for ProFTPD.
408
840f54f1
JR
409%description mod_tls -l pl.UTF-8
410Moduł SSL/TLS zgodny z RFC2228 dla ProFTPD.
018e0f25 411
a62be9f3 412%package mod_wrap
018e0f25 413Summary: ProFTPD interface to libwrap
8529003f 414Summary(pl.UTF-8): Interfejs ProFTPD do libwrap
89efc142 415Group: Networking/Daemons
a62be9f3
ER
416Requires: %{name}-common = %{epoch}:%{version}-%{release}
417Requires: libwrap
418
419%description mod_wrap
420It enables the daemon to use the common tcpwrappers access control
421library while in standalone mode, and in a very configurable manner.
422
423Many programs will automatically add entries in the common allow/deny
424files, and use of this module will allow a ProFTPD daemon running in
425standalone mode to adapt as these entries are added. The portsentry
426program does this, for example: when illegal access is attempted, it
427will add hosts to the /etc/hosts.deny file.
428
840f54f1
JR
429%description mod_wrap -l pl.UTF-8
430Ten pakiet pozwala demonowi używać wspólnej biblioteki kontroli
431dostępu tcpwrappers w trybie samodzielnym w bardzo wygodny sposób.
018e0f25 432
840f54f1
JR
433Wiele programów automatycznie dodaje wpisy we wspólnych plikach
434allow/deny, a użycie tego modułu pozwala demonowi ProFTPD działającemu
435w trybie samodzielnym adaptować te wpisy w miarę dodawania. Robi tak
436na przykład program portsentry: przy próbie niedozwolonego dostępu
018e0f25
JB
437dodaje hosty do pliku /etc/hosts.deny.
438
a62be9f3
ER
439%prep
440%setup -q -n %{name}-%{version}%{?_rc}
b87d6462 441%patch0 -p1
5cb6df78 442%patch1 -p1
b87d6462
MW
443%patch2 -p1
444%patch3 -p1
5175a017 445%patch4 -p1
fd29f932 446%patch5 -p1
f8c6b2a1 447
69a15f0d 448cp -f /usr/share/automake/config.sub .
9c6ec5e2
ER
449
450# cleanup backups after patching
451find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
452
453%build
41af587d 454%{__autoconf}
0ef9be5d
ER
455
456MODULES="
d13a2fd3
TP
457mod_auth_file
458mod_ident
0ef9be5d
ER
459mod_ratio
460mod_readme
6cf064e5 461mod_rewrite
a62be9f3 462mod_wrap
d13a2fd3
TP
463mod_facl
464mod_ifsession
465mod_lang
0ef9be5d 466%{?with_ssl:mod_tls}
0ef9be5d
ER
467%{?with_pam:mod_auth_pam}
468%{?with_ldap:mod_ldap}
469%{?with_quotafile:mod_quotatab mod_quotatab_file}
470%{?with_quotaldap:mod_quotatab mod_quotatab_ldap}
471%{?with_quotamysql:mod_quotatab mod_quotatab_sql}
472%{?with_quotapgsql:mod_quotatab mod_quotatab_sql}
0ef9be5d
ER
473%{?with_mysql:mod_sql mod_sql_mysql}
474%{?with_pgsql:mod_sql mod_sql_postgres}
475"
476
a62be9f3 477MODARG=$(echo $MODULES | tr ' ' '\n' | sort -u | xargs | tr ' ' ':')
3531a682 478%configure \
367a54d9 479 --with-includes=/usr/include/ncurses%{?with_mysql::%{_includedir}/mysql} \
d13a2fd3 480 --disable-auth-file \
e95a6f1e 481 --enable-autoshadow \
a62be9f3
ER
482 --enable-ctrls \
483 --enable-dso \
2e58659a 484 %{?with_ipv6:--enable-ipv6} \
a62be9f3 485 --enable-sendfile \
2e58659a 486 %{!?with_ssl:--disable-tls} \
a62be9f3 487 --with-shared=$MODARG \
060127a7 488
cf9db571 489%{__make} -j1
12250d98 490
491%install
492rm -rf $RPM_BUILD_ROOT
b1cddbe1 493install -d $RPM_BUILD_ROOT/etc/{pam.d,security,sysconfig/rc-inetd,rc.d/init.d} \
a62be9f3
ER
494 $RPM_BUILD_ROOT/var/{lib/ftp/pub/Incoming,log} \
495 $RPM_BUILD_ROOT%{_sysconfdir}/conf.d \
496 $RPM_BUILD_ROOT%{_includedir}/%{name}
42d1ba60 497
a294d837
PG
498%{__make} install \
499 DESTDIR=$RPM_BUILD_ROOT \
c4b4ddf1
ER
500 INSTALL_USER=%(id -u) \
501 INSTALL_GROUP=%(id -g)
f8c6b2a1 502
a62be9f3 503rm $RPM_BUILD_ROOT%{_sbindir}/in.proftpd
efae4c7e 504
3915e5da 505install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
a62be9f3 506install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/mod_auth_pam.conf
d13a2fd3
TP
507MODULES="
508mod_auth_file
509mod_ident
510mod_ratio
511mod_readme
512mod_rewrite
513mod_wrap
514%{?with_ldap:mod_ldap}
515%{?with_quotafile:mod_quotatab mod_quotatab_file}
516%{?with_quotaldap:mod_quotatab mod_quotatab_ldap}
517%{?with_quotamysql:mod_quotatab mod_quotatab_sql}
518%{?with_quotapgsql:mod_quotatab mod_quotatab_sql}
519%{?with_mysql:mod_sql mod_sql_mysql}
520%{?with_pgsql:mod_sql mod_sql_postgres}
521"
522for module in $MODULES; do
523 echo "LoadModule $module.c" > $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/$module.conf
524done
1af975e5 525install %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/mod_tls.conf
367a54d9 526install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/anonftp.conf
a62be9f3 527
2e58659a 528%{?with_pam:install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/ftp}
3915e5da 529install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/ftpd
15a3b9cf
JR
530install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/proftpd
531install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/proftpd
66721136 532install contrib/xferstats.holger-preiss $RPM_BUILD_ROOT%{_bindir}/xferstat
e95a6f1e 533
372155e4 534bzip2 -dc %{SOURCE7} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
0fba9130 535
3915e5da 536:> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers.default
537:> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers
e95a6f1e 538
a62be9f3 539# only for -inetd package?
c9f4d6dc 540ln -sf proftpd $RPM_BUILD_ROOT%{_sbindir}/ftpd
efae4c7e 541
91058308 542:> $RPM_BUILD_ROOT/etc/security/blacklist.ftp
543
d13a2fd3
TP
544rm $RPM_BUILD_ROOT%{_libexecdir}/*.a
545rm $RPM_BUILD_ROOT%{_libexecdir}/*.la
a62be9f3 546
b1cddbe1 547rm -f $RPM_BUILD_ROOT%{_mandir}/ftpusers-path.diff*
9c6ec5e2 548cp -aL include/* config.h $RPM_BUILD_ROOT%{_includedir}/%{name}
acb6a758 549
a6fa6631
JB
550%clean
551rm -rf $RPM_BUILD_ROOT
e95a6f1e 552
4498344e 553%post common
16865efe 554umask 027
8eb57af0 555awk -F: '{ if (($3 < 500) && ($1 != "ftp")) print $1; }' < /etc/passwd >> %{_sysconfdir}/ftpusers.default
3915e5da 556if [ ! -f %{_sysconfdir}/ftpusers ]; then
16865efe 557 cp -f %{_sysconfdir}/ftpusers.default %{_sysconfdir}/ftpusers
f2119458 558fi
4d723dc9 559
a62be9f3 560%posttrans inetd
15a3b9cf 561if grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf ; then
8eb57af0
ER
562 cp -f %{_sysconfdir}/proftpd.conf{,.rpmorig}
563 sed -i -e 's/^ServerType[[:space:]]\+standalone/ServerType inetd/g' %{_sysconfdir}/proftpd.conf
15a3b9cf 564fi
af998dea 565%service -q rc-inetd reload
5178b82d 566
15a3b9cf 567%postun inetd
af998dea
ER
568if [ "$1" = "0" ]; then
569 %service -q rc-inetd reload
29aece6c 570fi
12250d98 571
a62be9f3 572%posttrans standalone
15a3b9cf 573if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf ; then
8eb57af0
ER
574 cp -f %{_sysconfdir}/proftpd.conf{,.rpmorig}
575 sed -i -e 's/^ServerType[[:space:]]\+inetd/ServerType standalone/g' %{_sysconfdir}/proftpd.conf
15a3b9cf 576fi
af998dea
ER
577/sbin/chkconfig --add proftpd
578%service proftpd restart "ProFTPD daemon"
15a3b9cf
JR
579
580%preun standalone
f7d997ba 581if [ "$1" = "0" ]; then
af998dea 582 %service proftpd stop
f7d997ba 583 /sbin/chkconfig --del proftpd
29aece6c 584fi
15a3b9cf 585
a62be9f3
ER
586# macro called at module post scriptlet
587%define module_post \
588if [ "$1" = "1" ]; then \
589 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf; then \
590 %service -q rc-inetd reload \
591 elif grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf; then \
592 %service -q proftpd restart \
593 fi \
594fi
595
596# macro called at module postun scriptlet
597%define module_postun \
598if [ "$1" = "0" ]; then \
599 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf; then \
600 %service -q rc-inetd reload \
601 elif grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf; then \
602 %service -q proftpd restart \
603 fi \
604fi
605
606# it's sooo annoying to write them
607%define module_scripts() \
608%post %1 \
609%module_post \
610\
611%postun %1 \
612%module_postun
613
614%module_scripts mod_auth_pam
615%module_scripts mod_ldap
616%module_scripts mod_quotatab
617%module_scripts mod_quotatab_file
618%module_scripts mod_quotatab_ldap
619%module_scripts mod_quotatab_sql
620%module_scripts mod_ratio
621%module_scripts mod_readme
6cf064e5 622%module_scripts mod_rewrite
a62be9f3
ER
623%module_scripts mod_sql
624%module_scripts mod_sql_mysql
625%module_scripts mod_sql_postgres
626%module_scripts mod_tls
627%module_scripts mod_wrap
628
695a30e2 629%files common
060127a7 630%defattr(644,root,root,755)
1ea19330 631%doc sample-configurations/*.conf CREDITS ChangeLog NEWS RELEASE_NOTES
a62be9f3 632%doc README README.capabilities README.classes README.controls README.IPv6
d03b6eea 633%doc README.modules
2a67e8f1 634%doc doc/*.html doc/contrib doc/howto doc/modules
a62be9f3 635%dir %attr(750,root,ftp) %dir %{_sysconfdir}
d8cfd64c 636%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
ebc84569
PG
637%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/ftpusers
638%attr(640,root,root) %{_sysconfdir}/ftpusers.default
a62be9f3 639%dir %attr(750,root,root) %{_sysconfdir}/conf.d
d13a2fd3
TP
640%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_auth_file.conf
641%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_ident.conf
90d88248 642#%attr(640,root,root) %ghost /var/log/*
7118a494 643%attr(755,root,root) %{_bindir}/*
6c45e3b3 644%attr(755,root,root) %{_sbindir}/*
d13a2fd3
TP
645%dir %{_libexecdir}
646%attr(755,root,root) %{_libexecdir}/mod_auth_file.so
647%attr(755,root,root) %{_libexecdir}/mod_facl.so
648%attr(755,root,root) %{_libexecdir}/mod_ident.so
649%attr(755,root,root) %{_libexecdir}/mod_ifsession.so
650%attr(755,root,root) %{_libexecdir}/mod_lang.so
86e5ce30 651%dir %{_localstatedir}/proftpd
0fba9130 652%{_mandir}/man[18]/*
372155e4
TO
653%dir /var/lib/ftp
654%dir /var/lib/ftp/pub
5b54e24d 655%attr(711,ftp,ftp) %dir /var/lib/ftp/pub/Incoming
15a3b9cf
JR
656
657%files inetd
658%defattr(644,root,root,755)
15a3b9cf 659%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/ftpd
0fba9130 660%{_mandir}/man5/*
661%lang(ja) %{_mandir}/ja/man5/ftpusers*
662%lang(pl) %{_mandir}/pl/man5/ftpusers*
663%lang(pt_BR) %{_mandir}/pt_BR/man5/ftpusers*
664%lang(ru) %{_mandir}/ru/man5/ftpusers*
15a3b9cf
JR
665
666%files standalone
667%defattr(644,root,root,755)
acb6a758 668%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/proftpd
15a3b9cf 669%attr(754,root,root) /etc/rc.d/init.d/proftpd
0fba9130 670%{_mandir}/man5/*
671%lang(ja) %{_mandir}/ja/man5/ftpusers*
672%lang(pl) %{_mandir}/pl/man5/ftpusers*
673%lang(pt_BR) %{_mandir}/pt_BR/man5/ftpusers*
674%lang(ru) %{_mandir}/ru/man5/ftpusers*
a62be9f3
ER
675
676%files devel
677%defattr(644,root,root,755)
678%{_includedir}/%{name}
32ba901e 679%{_pkgconfigdir}/%{name}.pc
a62be9f3 680
e37dae10
ER
681%files anonftp
682%defattr(644,root,root,755)
683%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/anonftp.conf
684
1dba37cb 685%if %{with pam}
a62be9f3
ER
686%files mod_auth_pam
687%defattr(644,root,root,755)
688%doc README.PAM
689%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
02a964e1 690%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.ftp
a62be9f3
ER
691%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_auth_pam.conf
692%attr(755,root,root) %{_libexecdir}/mod_auth_pam.so
1dba37cb 693%endif
a62be9f3 694
1dba37cb 695%if %{with ldap}
a62be9f3
ER
696%files mod_ldap
697%defattr(644,root,root,755)
698%doc README.LDAP
699%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_ldap.conf
700%attr(755,root,root) %{_libexecdir}/mod_ldap.so
1dba37cb 701%endif
a62be9f3
ER
702
703%files mod_quotatab
704%defattr(644,root,root,755)
705%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab.conf
706%attr(755,root,root) %{_libexecdir}/mod_quotatab.so
707
1dba37cb 708%if %{with quotafile}
a62be9f3
ER
709%files mod_quotatab_file
710%defattr(644,root,root,755)
711%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab_file.conf
712%attr(755,root,root) %{_libexecdir}/mod_quotatab_file.so
1dba37cb 713%endif
a62be9f3 714
1dba37cb 715%if %{with quotaldap}
a62be9f3
ER
716%files mod_quotatab_ldap
717%defattr(644,root,root,755)
718%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab_ldap.conf
719%attr(755,root,root) %{_libexecdir}/mod_quotatab_ldap.so
1dba37cb 720%endif
a62be9f3 721
1dba37cb 722%if %{with quotamysql} || %{with quotapgsql}
a62be9f3
ER
723%files mod_quotatab_sql
724%defattr(644,root,root,755)
725%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_quotatab_sql.conf
726%attr(755,root,root) %{_libexecdir}/mod_quotatab_sql.so
1dba37cb 727%endif
a62be9f3
ER
728
729%files mod_ratio
730%defattr(644,root,root,755)
2a67e8f1 731%doc contrib/README.ratio
a62be9f3
ER
732%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_ratio.conf
733%attr(755,root,root) %{_libexecdir}/mod_ratio.so
734
735%files mod_readme
736%defattr(644,root,root,755)
737%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_readme.conf
738%attr(755,root,root) %{_libexecdir}/mod_readme.so
739
6cf064e5 740%files mod_rewrite
741%defattr(644,root,root,755)
742%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_rewrite.conf
743%attr(755,root,root) %{_libexecdir}/mod_rewrite.so
744
1dba37cb 745%if %{with mysql} || %{with pgsql}
a62be9f3
ER
746%files mod_sql
747%defattr(644,root,root,755)
748%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_sql.conf
749%attr(755,root,root) %{_libexecdir}/mod_sql.so
1dba37cb 750%endif
a62be9f3 751
1dba37cb 752%if %{with mysql}
a62be9f3
ER
753%files mod_sql_mysql
754%defattr(644,root,root,755)
755%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_sql_mysql.conf
756%attr(755,root,root) %{_libexecdir}/mod_sql_mysql.so
1dba37cb 757%endif
a62be9f3 758
1dba37cb 759%if %{with pgsql}
a62be9f3
ER
760%files mod_sql_postgres
761%defattr(644,root,root,755)
762%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_sql_postgres.conf
763%attr(755,root,root) %{_libexecdir}/mod_sql_postgres.so
1dba37cb 764%endif
a62be9f3
ER
765
766%files mod_tls
767%defattr(644,root,root,755)
768%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_tls.conf
769%attr(755,root,root) %{_libexecdir}/mod_tls.so
770
771%files mod_wrap
772%defattr(644,root,root,755)
773%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/mod_wrap.conf
774%attr(755,root,root) %{_libexecdir}/mod_wrap.so
This page took 0.299388 seconds and 4 git commands to generate.