Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-servers/lighttpd/
Date: Sat, 03 Jul 2021 15:46:23
Message-Id: 1625326938.bac424b30a1d45485ee016f418cd6fb0702e470f.juippis@gentoo
1 commit: bac424b30a1d45485ee016f418cd6fb0702e470f
2 Author: Herb Miller Jr <herb <AT> hlmjr <DOT> com>
3 AuthorDate: Thu May 20 20:59:20 2021 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Sat Jul 3 15:42:18 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bac424b3
7
8 www-servers/lighttpd: Version bump (v1.4.59)
9
10 Added Zstandard output compression support and cleaned up ebuild
11 a bit.
12
13 Closes: https://bugs.gentoo.org/776793
14 Package-Manager: Portage-3.0.18, Repoman-3.0.3
15 Signed-off-by: Herb Miller Jr. <herb <AT> hlmjr.com>
16 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
17
18 www-servers/lighttpd/Manifest | 1 +
19 www-servers/lighttpd/lighttpd-1.4.59.ebuild | 237 ++++++++++++++++++++++++++++
20 www-servers/lighttpd/metadata.xml | 1 +
21 3 files changed, 239 insertions(+)
22
23 diff --git a/www-servers/lighttpd/Manifest b/www-servers/lighttpd/Manifest
24 index 4451e529352..545b25d8c85 100644
25 --- a/www-servers/lighttpd/Manifest
26 +++ b/www-servers/lighttpd/Manifest
27 @@ -1,2 +1,3 @@
28 DIST lighttpd-1.4.55.tar.xz 765660 BLAKE2B 7b972de86e7d1a51438718e4d5bd49188c107b0f2e656ead597085ae84f3d41cdb662a7774c6655155d390c26f3e4f0b0dc4243c85cb0255a91d8ca57742f402 SHA512 023d5a54079e710a89a59e259c0b5798103ef6fce4544c36110dc4c5281ef429ef99369923d74123fcf8be37afe622d44cd7149078d21971ff26f3f4ee37c439
29 DIST lighttpd-1.4.58.tar.xz 956828 BLAKE2B b8b0a111db64a8af429dd9922503991e55276808b58143ffce3268bc8b20a39cfec9d8c1e2917b34326ac5502801a6ca3b9bae26874f86b6749c363a09225ca3 SHA512 b7f18223e46bf78f866eb22f44a7702df07424271e085da9f0d03e626198c30e87a3959536d02e3588aa47ba4bc7db7c432307175fb3b25a2984f9cf692c0ca4
30 +DIST lighttpd-1.4.59.tar.xz 968352 BLAKE2B 8997386be24d9d84fa8012aedd8ac97b3ad4fd19bb756163d3e9b8c6984c740475c6db2810817db9d1a246320bcd81f7ab35847707316454523c614a4485299f SHA512 94d312f6ac65c32057018b749c4865220b43b3e4b7fe9396848aa403ea7fdc2ccbf3f4f91daf281b754cf272a52a8bcdc689502773ea33cae36eead2785daa0f
31
32 diff --git a/www-servers/lighttpd/lighttpd-1.4.59.ebuild b/www-servers/lighttpd/lighttpd-1.4.59.ebuild
33 new file mode 100644
34 index 00000000000..b3d8e44ff79
35 --- /dev/null
36 +++ b/www-servers/lighttpd/lighttpd-1.4.59.ebuild
37 @@ -0,0 +1,237 @@
38 +# Copyright 1999-2021 Gentoo Authors
39 +# Distributed under the terms of the GNU General Public License v2
40 +
41 +EAPI=7
42 +
43 +LUA_COMPAT=( lua5-{1..4} )
44 +
45 +inherit autotools flag-o-matic lua-single readme.gentoo-r1 systemd tmpfiles toolchain-funcs
46 +
47 +DESCRIPTION="Lightweight high-performance web server"
48 +HOMEPAGE="https://www.lighttpd.net https://github.com/lighttpd"
49 +SRC_URI="https://download.lighttpd.net/lighttpd/releases-1.4.x/${P}.tar.xz"
50 +
51 +LICENSE="BSD GPL-2"
52 +SLOT="0"
53 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
54 +IUSE="brotli bzip2 dbi doc gdbm gnutls ipv6 kerberos ldap libev lua maxminddb mbedtls mmap memcached mysql nss pcre php postgres rrdtool sasl selinux ssl sqlite test webdav xattr zlib zstd"
55 +RESTRICT="!test? ( test )"
56 +
57 +REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )
58 + mysql? ( dbi )
59 + postgres? ( dbi )
60 + sqlite? ( dbi )
61 + webdav? ( sqlite )
62 +"
63 +
64 +BDEPEND="virtual/pkgconfig"
65 +
66 +COMMON_DEPEND="
67 + acct-group/lighttpd
68 + acct-user/lighttpd
69 + brotli? ( app-arch/brotli )
70 + bzip2? ( app-arch/bzip2 )
71 + dbi? (
72 + dev-db/libdbi
73 + mysql? ( dev-db/libdbi-drivers[mysql] )
74 + postgres? ( dev-db/libdbi-drivers[postgres] )
75 + sqlite? ( dev-db/libdbi-drivers[sqlite] )
76 + )
77 + gdbm? ( sys-libs/gdbm:= )
78 + gnutls? ( net-libs/gnutls )
79 + kerberos? ( virtual/krb5 )
80 + ldap? ( >=net-nds/openldap-2.1.26 )
81 + libev? ( >=dev-libs/libev-4.01 )
82 + lua? ( ${LUA_DEPS} )
83 + maxminddb? ( dev-libs/libmaxminddb )
84 + mbedtls? ( net-libs/mbedtls )
85 + memcached? ( dev-libs/libmemcached )
86 + nss? ( dev-libs/nss )
87 + pcre? ( >=dev-libs/libpcre-3.1 )
88 + php? ( dev-lang/php:*[cgi] )
89 + rrdtool? ( net-analyzer/rrdtool )
90 + sasl? ( dev-libs/cyrus-sasl )
91 + ssl? ( >=dev-libs/openssl-0.9.7:0= )
92 + webdav? (
93 + dev-libs/libxml2
94 + sys-fs/e2fsprogs
95 + )
96 + xattr? ( kernel_linux? ( sys-apps/attr ) )
97 + zlib? ( >=sys-libs/zlib-1.1 )
98 + zstd? ( app-arch/zstd )"
99 +
100 +DEPEND="${COMMON_DEPEND}
101 + doc? ( dev-python/docutils )
102 + test? (
103 + virtual/perl-Test-Harness
104 + dev-libs/fcgi
105 + )"
106 +
107 +RDEPEND="${COMMON_DEPEND}
108 + selinux? ( sec-policy/selinux-apache )
109 +"
110 +
111 +# update certain parts of lighttpd.conf based on conditionals
112 +update_config() {
113 + local config="${D}/etc/lighttpd/lighttpd.conf"
114 +
115 + # enable php/mod_fastcgi settings
116 + if use php; then sed -i -e 's|#.*\(include.*fastcgi.*$\)|\1|' ${config} || die; fi
117 +
118 + # automatically listen on IPv6 if built with USE=ipv6. Bug #234987
119 + if use ipv6; then sed -i -e 's|# server.use-ipv6|server.use-ipv6|' ${config} || die; fi
120 +}
121 +
122 +pkg_setup() {
123 + if use lua; then
124 + lua-single_pkg_setup
125 + fi
126 +
127 + if ! use pcre ; then
128 + ewarn "It is highly recommended that you build ${PN}"
129 + ewarn "with perl regular expressions support via USE=pcre."
130 + ewarn "Otherwise you lose support for some core options such"
131 + ewarn "as conditionals and modules such as mod_re{write,direct}"
132 + ewarn "and mod_ssi."
133 + fi
134 +
135 + DOC_CONTENTS="IPv6 migration guide:\n
136 + http://redmine.lighttpd.net/projects/lighttpd/wiki/IPv6-Config"
137 +}
138 +
139 +src_prepare() {
140 + default
141 + if use memcached; then append-ldflags -pthread; fi
142 + # dev-python/docutils installs rst2html.py not rst2html
143 + sed -i -e 's|\(rst2html\)|\1.py|g' doc/outdated/Makefile.am || \
144 + die "sed doc/Makefile.am failed"
145 + eautoreconf
146 +}
147 +
148 +src_configure() {
149 + # The lua bit requires a bit of explanation. The lighttpd autoconf script
150 + # handles the value passed to --with-lua as follows:
151 + # - "no" - do nothing
152 + # - "yes" - query pkgconfig for VERSIONED lua packages, starting with 5.3
153 + # and going down; only if lua5.1 cannot be found plain "lua" is tried
154 + # - any other value is passed to pkgconfig as the exact package name to use.
155 + # We want a specific implementation to be used even if a newer one is present
156 + # in the system so we use the latter mode.
157 + econf \
158 + CC_FOR_BUILD=$(tc-getBUILD_CC) \
159 + --libdir=/usr/$(get_libdir)/${PN} \
160 + --enable-lfs \
161 + $(use_enable ipv6) \
162 + $(use_enable mmap) \
163 + $(use_with brotli) \
164 + $(use_with bzip2) \
165 + $(use_with dbi) \
166 + $(use_with gdbm) \
167 + $(use_with gnutls ) \
168 + $(use_with kerberos krb5) \
169 + $(use_with ldap) \
170 + $(use_with libev) \
171 + $(use_with lua lua ${ELUA}) \
172 + $(use_with maxminddb) \
173 + $(use_with mbedtls) \
174 + $(use_with memcached) \
175 + $(use_with nss) \
176 + $(use_with pcre) \
177 + $(use_with sasl) \
178 + $(use_with ssl openssl) \
179 + $(use_with webdav webdav-props) \
180 + $(use_with webdav webdav-locks) \
181 + $(use_with xattr attr) \
182 + $(use_with zlib) \
183 + $(use_with zstd)
184 +}
185 +
186 +src_compile() {
187 + emake
188 +
189 + if use doc ; then
190 + einfo "Building HTML documentation"
191 + cd doc || die
192 + emake html
193 + fi
194 +}
195 +
196 +src_test() {
197 + if [[ ${EUID} -eq 0 ]]; then
198 + default_src_test
199 + else
200 + ewarn "test skipped, please re-run as root if you wish to test ${PN}"
201 + fi
202 +}
203 +
204 +src_install() {
205 + default
206 +
207 + find "${D}" -name '*.la' -delete || die
208 +
209 + # init script stuff
210 + newinitd "${FILESDIR}"/lighttpd.initd lighttpd
211 + newconfd "${FILESDIR}"/lighttpd.confd lighttpd
212 +
213 + # configs
214 + insinto /etc/lighttpd
215 + doins "${FILESDIR}"/conf/lighttpd.conf
216 + doins "${FILESDIR}"/conf/mime-types.conf
217 + doins "${FILESDIR}"/conf/mod_cgi.conf
218 + doins "${FILESDIR}"/conf/mod_fastcgi.conf
219 +
220 + # update lighttpd.conf directives based on conditionals
221 + update_config
222 +
223 + # docs
224 + dodoc AUTHORS README NEWS doc/scripts/*.sh
225 + newdoc doc/config//lighttpd.conf lighttpd.conf.distrib
226 + if use ipv6; then readme.gentoo_create_doc; fi
227 +
228 + if use doc; then dodoc -r doc; fi
229 +
230 + docinto txt
231 + dodoc doc/outdated/*.txt
232 +
233 + # logrotate
234 + insinto /etc/logrotate.d
235 + newins "${FILESDIR}"/lighttpd.logrotate-r1 lighttpd
236 +
237 + keepdir /var/l{ib,og}/lighttpd /var/www/localhost/htdocs
238 + fowners lighttpd:lighttpd /var/l{ib,og}/lighttpd
239 + fperms 0750 /var/l{ib,og}/lighttpd
240 +
241 + systemd_dounit "${FILESDIR}/${PN}.service"
242 + newtmpfiles "${FILESDIR}/${PN}.tmpfiles.conf" "${PN}.conf"
243 +}
244 +
245 +pkg_postinst() {
246 + if use ipv6; then readme.gentoo_print_elog; fi
247 +
248 + if [[ -f ${ROOT}/etc/lighttpd.conf ]] ; then
249 + elog
250 + elog "Gentoo has a customized configuration,"
251 + elog "which is now located in /etc/lighttpd. Please migrate your"
252 + elog "existing configuration."
253 + fi
254 +
255 + if use brotli || use bzip2 || use zlib; then
256 + elog
257 + elog "Remember to clean your cache directory when using"
258 + elog "output compression!"
259 + elog "https://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModDeflate"
260 + fi
261 +
262 + if use mysql; then
263 + elog
264 + elog "Note that upstream has moved away from using mysql directly"
265 + elog "via mod_mysql and is now accessing it through mod_dbi. You"
266 + elog "may need to update your configuration"
267 + fi
268 +
269 + elog
270 + elog "Upstream has deprecated a number of features. They are not missing"
271 + elog "but have been migrated to other mechanisms. Please see upstream"
272 + elog "changelog for details."
273 + elog "https://www.lighttpd.net/2021/2/2/1.4.59/"
274 +}
275
276 diff --git a/www-servers/lighttpd/metadata.xml b/www-servers/lighttpd/metadata.xml
277 index bdade9103aa..8477d5d0d91 100644
278 --- a/www-servers/lighttpd/metadata.xml
279 +++ b/www-servers/lighttpd/metadata.xml
280 @@ -29,5 +29,6 @@
281 <flag name="rrdtool">Enable rrdtool support via mod_rrdtool</flag>
282 <flag name="webdav">Enable webdav properties</flag>
283 <flag name="zlib">Enable output compression via gzip or deflate algorithms</flag>
284 + <flag name="zstd">Enable output compression via Zstandard algorithm</flag>
285 </use>
286 </pkgmetadata>