Skip to content

Commit 8196c37

Browse files
committed
proftpd : updated to v/ 1.3.9 ; more databases ; config changes
* update to version 1.3.9 * sysconfir & localstatedir into own subdirs * mysql8 & postgresql* variants added addresses : https://trac.macports.org/ticket/43431 * modified patch to fix original m4 file reported : proftpd/proftpd#1878 * autoconf : yes ; to re-create configure files due to patch * DRY changes Changes to be committed: modified: net/proftpd/Portfile deleted: net/proftpd/files/dynamic_lookup-11.patch new file: net/proftpd/files/-Wimplicit-function-declaration to-do file proftpd/proftpd#1879
1 parent 2dd63d2 commit 8196c37

File tree

3 files changed

+123
-80
lines changed

3 files changed

+123
-80
lines changed

net/proftpd/Portfile

Lines changed: 100 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,25 @@
11
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
22

33
PortSystem 1.0
4+
# check if legacysupport is necessary when updating to 1.3.10
5+
# https://github.com/proftpd/proftpd/issues/1879
6+
# https://github.com/proftpd/proftpd/issues/1881
47
PortGroup legacysupport 1.1
58

69
# dprintf
710
legacysupport.newest_darwin_requires_legacy 10
811

912
name proftpd
10-
version 1.3.8b
13+
version 1.3.9
1114
revision 0
12-
checksums rmd160 c5b29f1198beaec2a1191059b56f765b417ab904 \
13-
sha256 183ab7c6107de271a2959ff268f55c9b6c76b2cf0029e6584fccc019686601e0 \
14-
size 19752808
15+
checksums rmd160 3cd0a88329a73761e272828a6cc5e4c168e62379 \
16+
sha256 4a5f13b666226813b4da0ade34535d325e204ab16cf8008c7353b1b5a972f74b \
17+
size 19837398
1518

1619
categories net
1720
license GPL-2+
18-
maintainers nomaintainer
21+
maintainers {@BjarneDMat mathiesen.info:macintosh} openmaintainer
22+
1923
description Highly configurable ftp-server.
2024
long_description ProFTPD is a highly configurable ftp daemon for unix \
2125
and unix-like operating systems. ProFTPD is designed \
@@ -39,10 +43,10 @@ depends_lib port:libidn \
3943
port:ncurses \
4044
path:lib/libssl.dylib:openssl
4145

42-
patchfiles dynamic_lookup-11.patch
43-
44-
configure.args --sysconfdir=${prefix}/etc \
45-
--localstatedir=${prefix}/var/run \
46+
# remove the following line when updating to 1.3.10
47+
use_autoconf yes
48+
configure.args --sysconfdir=${prefix}/etc/${name} \
49+
--localstatedir=${prefix}/var/run/${name} \
4650
--mandir=${prefix}/share/man \
4751
--enable-ctrls \
4852
--enable-dso \
@@ -57,6 +61,10 @@ set modules [list mod_tls mod_sftp mod_sftp_pam mod_ban mod_ctrls_admin \
5761
set includes {}
5862
set libs {}
5963
pre-configure {
64+
if {[lsearch -glob ${modules} mod_sql_*] != -1} {
65+
lappend modules mod_sql mod_sql_passwd
66+
configure.args-append --enable-openssl
67+
}
6068
configure.args-append --with-modules=[join $modules :]
6169
configure.args-append --with-shared=[join $modules :]
6270
if {$includes != {}} {
@@ -69,45 +77,105 @@ pre-configure {
6977

7078
pre-destroot {
7179
reinplace "s|nogroup|nobody|g" ${worksrcpath}/sample-configurations/basic.conf
72-
xinstall -m 755 -d ${destroot}${prefix}/var/run/proftpd
73-
touch ${destroot}${prefix}/var/run/proftpd/proftpd.scoreboard
80+
xinstall -m 755 -d ${destroot}${prefix}/var/run/${name}
81+
touch ${destroot}${prefix}/var/run/${name}/${name}.scoreboard
7482
}
7583

7684
post-destroot {
77-
move ${destroot}${prefix}/etc/proftpd.conf ${destroot}${prefix}/etc/proftpd.conf.dist
78-
move ${destroot}${prefix}/var/run/proftpd/proftpd.scoreboard ${destroot}${prefix}/var/run/proftpd/proftpd.scoreboard.dist
85+
move ${destroot}${prefix}/etc/${name}/${name}.conf ${destroot}${prefix}/etc/${name}/${name}.conf.dist
86+
move ${destroot}${prefix}/var/run/${name}/${name}.scoreboard ${destroot}${prefix}/var/run/${name}/${name}.scoreboard.dist
7987
}
8088

8189
post-activate {
82-
if {![file exists ${prefix}/etc/proftpd.conf]} {
83-
copy ${prefix}/etc/proftpd.conf.dist ${prefix}/etc/proftpd.conf
90+
# move the .conf from an old install
91+
if {[file exists ${prefix}/etc/${name}.conf]} {
92+
move ${prefix}/etc/${name}.conf ${prefix}/etc/${name}/${name}.conf
93+
}
94+
if {![file exists ${prefix}/etc/${name}/${name}.conf]} {
95+
copy ${prefix}/etc/${name}/${name}.conf.dist ${prefix}/etc/${name}/${name}.conf
8496
}
8597
}
8698

87-
variant mysql57 conflicts postgresql11 sqlite3 description {Build with mysql 5.7 support} {
88-
depends_lib-append port:mysql57
89-
lappend modules mod_sql mod_sql_mysql
90-
lappend includes ${prefix}/include/mysql57/mysql
91-
lappend libs ${prefix}/lib/mysql57/mysql
99+
variant mysql57 conflicts mysql8 sqlite3 postgresql13 postgresql14 postgresql15 postgresql16 postgresql17 description {Build with mysql 5.7 support} {
100+
set my_db mysql57
101+
depends_lib-append port:${my_db}
102+
lappend modules mod_sql_mysql
103+
lappend includes ${prefix}/include/${my_db}/mysql
104+
lappend libs ${prefix}/lib/${my_db}/mysql
92105
}
93106

94-
variant postgresql11 conflicts mysql57 sqlite3 description {Build with PostgreSQL 11 support} {
95-
depends_lib-append port:postgresql11
96-
lappend modules mod_sql mod_sql_postgres
97-
lappend includes ${prefix}/include/postgresql11
98-
lappend libs ${prefix}/lib/postgresql11
107+
variant mysql8 conflicts mysql57 sqlite3 postgresql13 postgresql14 postgresql17 postgresql17 postgresql17 description {Build with mysql 8 support} {
108+
set my_db mysql8
109+
depends_lib-append port:${my_db}
110+
lappend modules mod_sql_mysql
111+
lappend includes ${prefix}/include/${my_db}/mysql
112+
lappend libs ${prefix}/lib/${my_db}/mysql
99113
}
100114

101-
variant sqlite3 conflicts mysql57 postgresql11 description {Build with sqlite3 support} {
115+
# https://www.postgresql.org/support/versioning/
116+
variant postgresql13 conflicts mysql57 mysql8 sqlite3 postgresql14 postgresql15 postgresql16 postgresql17 description {Build with PostgreSQL 13 support} {
117+
set my_db postgresql13
118+
depends_lib-append port:${my_db}
119+
lappend modules mod_sql_postgres
120+
lappend includes ${prefix}/include/${my_db}
121+
lappend libs ${prefix}/lib/${my_db}
122+
}
123+
124+
variant postgresql14 conflicts mysql57 mysql8 sqlite3 postgresql13 postgresql15 postgresql16 postgresql17 description {Build with PostgreSQL 14 support} {
125+
set my_db postgresql14
126+
depends_lib-append port:${my_db}
127+
lappend modules mod_sql_postgres
128+
lappend includes ${prefix}/include/${my_db}
129+
lappend libs ${prefix}/lib/${my_db}
130+
}
131+
132+
variant postgresql15 conflicts mysql57 mysql8 sqlite3 postgresql13 postgresql14 postgresql16 postgresql17 description {Build with PostgreSQL 15 support} {
133+
set my_db postgresql15
134+
depends_lib-append port:${my_db}
135+
lappend modules mod_sql_postgres
136+
lappend includes ${prefix}/include/${my_db}
137+
lappend libs ${prefix}/lib/${my_db}
138+
}
139+
140+
variant postgresql16 conflicts mysql57 mysql8 sqlite3 postgresql13 postgresql14 postgresql15 postgresql17 description {Build with PostgreSQL 16 support} {
141+
set my_db postgresql16
142+
depends_lib-append port:${my_db}
143+
lappend modules mod_sql_postgres
144+
lappend includes ${prefix}/include/${my_db}
145+
lappend libs ${prefix}/lib/${my_db}
146+
}
147+
148+
variant postgresql17 conflicts mysql57 mysql8 sqlite3 postgresql13 postgresql14 postgresql15 postgresql16 description {Build with PostgreSQL 17 support} {
149+
set my_db postgresql17
150+
depends_lib-append port:${my_db}
151+
lappend modules mod_sql_postgres
152+
lappend includes ${prefix}/include/${my_db}
153+
lappend libs ${prefix}/lib/${my_db}
154+
}
155+
156+
variant sqlite3 conflicts mysql57 mysql8 postgresql13 postgresql14 postgresql15 postgresql16 postgresql17 description {Build with sqlite3 support} {
102157
depends_lib-append port:sqlite3
103-
lappend modules mod_sql mod_sql_sqlite
158+
lappend modules mod_sql_sqlite
104159
}
105160

106-
variant quotatab description {Build with SQL quota support} {
107-
lappend modules mod_quotatab mod_quotatab_sql
161+
variant quotasql description {Build with SQL quota support} {
162+
lappend modules mod_quotatab_sql
108163
}
109164

165+
notes "
166+
On activation, if no ${prefix}/etc/${name}/${name}.conf file exists,
167+
one will be created
168+
169+
If a ${prefix}/etc/${name}/${name}.cnf file exists, MacPorts does not
170+
touch it, and any changes you make to ${prefix}/etc/${name}/${name}.cnf
171+
will be preserved (e.g., during port upgrades, deactivations or
172+
activations).
173+
174+
If you are upgrading from 1.3.8, the old ${prefix}/etc/${name}.cnf
175+
will be moved to ${prefix}/etc/${name}/${name}.cnf
176+
"
177+
110178
startupitem.create yes
111-
startupitem.start "${prefix}/sbin/proftpd"
112-
startupitem.restart "/bin/kill -HUP \$(/bin/cat ${prefix}/var/run/proftpd.pid)"
113-
startupitem.stop "/bin/kill -15 \$(/bin/cat ${prefix}/var/run/proftpd.pid)"
179+
startupitem.start "${prefix}/sbin/${name}"
180+
startupitem.restart "/bin/kill -HUP \$(/bin/cat ${prefix}/var/run/${name}/${name}.pid)"
181+
startupitem.stop "/bin/kill -15 \$(/bin/cat ${prefix}/var/run/${name}/${name}.pid)"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
Warning: Configuration logfiles contain indications of -Wimplicit-function-declaration; check that features were not accidentally disabled:
2+
crypt: found in proftpd-1.3.8c/config.log
3+
gethostbyname: found in proftpd-1.3.8c/config.log
4+
inet_aton: found in proftpd-1.3.8c/config.log
5+
gethostent: found in proftpd-1.3.8c/config.log
6+
bind: found in proftpd-1.3.8c/config.log
7+
authenticate: found in proftpd-1.3.8c/config.log
8+
loginfailed: found in proftpd-1.3.8c/config.log
9+
loginsuccess: found in proftpd-1.3.8c/config.log
10+
acl_get_perm: found in proftpd-1.3.8c/config.log
11+
send_file: found in proftpd-1.3.8c/config.log
12+
lgetxattr: found in proftpd-1.3.8c/config.log
13+
llistxattr: found in proftpd-1.3.8c/config.log
14+
lremovexattr: found in proftpd-1.3.8c/config.log
15+
lsetxattr: found in proftpd-1.3.8c/config.log
16+
SSLeay_add_all_algorithms: found in proftpd-1.3.8c/config.log, proftpd-1.3.8c/contrib/mod_sftp/config.log
17+
18+
after autoconf w/ patch applied :
19+
+ strchr: found in proftpd-1.3.8c/config.log
20+
- make_scrambled_password: found in proftpd-1.3.8c/config.log
21+
- make_scrambled_password_323: found in proftpd-1.3.8c/config.log
22+
- my_make_scrambled_password: found in proftpd-1.3.8c/config.log
23+
- my_make_scrambled_password_323: found in proftpd-1.3.8c/config.log

net/proftpd/files/dynamic_lookup-11.patch

Lines changed: 0 additions & 48 deletions
This file was deleted.

0 commit comments

Comments
 (0)