From 5a71b367a6f4919c777f087a5e7f8708b74d3161 Mon Sep 17 00:00:00 2001 From: Stuart Shelton Date: Tue, 19 Nov 2013 14:47:22 +0000 Subject: www-servers/lighttpd-1.4.33 --- www-servers/lighttpd/Manifest | 8 +- .../files/lighttpd-1.4.31-automake-1.12.patch | 21 ++ .../files/lighttpd-1.4.33-fix-ipv6-build.patch | 21 ++ www-servers/lighttpd/files/lighttpd.tmpfiles.conf | 1 + www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild | 2 +- www-servers/lighttpd/lighttpd-1.4.32-r3.ebuild | 232 ++++++++++++++++++++ www-servers/lighttpd/lighttpd-1.4.33.ebuild | 234 +++++++++++++++++++++ 7 files changed, 517 insertions(+), 2 deletions(-) create mode 100644 www-servers/lighttpd/files/lighttpd-1.4.31-automake-1.12.patch create mode 100644 www-servers/lighttpd/files/lighttpd-1.4.33-fix-ipv6-build.patch create mode 100644 www-servers/lighttpd/files/lighttpd.tmpfiles.conf create mode 100644 www-servers/lighttpd/lighttpd-1.4.32-r3.ebuild create mode 100644 www-servers/lighttpd/lighttpd-1.4.33.ebuild (limited to 'www-servers') diff --git a/www-servers/lighttpd/Manifest b/www-servers/lighttpd/Manifest index 5e428d13..ca9937df 100644 --- a/www-servers/lighttpd/Manifest +++ b/www-servers/lighttpd/Manifest @@ -4,9 +4,15 @@ AUX conf/mod_cgi.conf 869 SHA256 322656b4cfd22ca9f1f8ab160e0b932f1646622422fd49c AUX conf/mod_fastcgi.conf 677 SHA256 954bf2a030e268e7cd880d4cd7d6c13317c09e0ec4e87a8d7d887fb4e7dc83bd SHA512 0e9ba1403c44bcca6740803f8932caf2d787641d139db3ff1d3d3234234368774875493b8dd82e5e5337791de945d9ddeb578f665cec5503747e5bdf2c5318ba WHIRLPOOL b7378d44772216076ca9bba05104c03a256035a1a604f0366d76e6b5d0709212a1f3e222f8cbb9e0daabd28e513d4322eeb39e6b2e2950ffff9d3602c960bce9 AUX conf/mod_fastcgi.conf-1.4.13-r2 687 SHA256 d1adc1358b5d9e85353caa2e706bfa231d145dd59c075cdcb3f818b3cb5d722e SHA512 1f7ca06b3501326f204bfa4de2694b1552fddfac5af52357a5cea5861c20204069adf6f92ea0c267968e5e2dc02804e34a61eb710026c213e3523a490254b3aa WHIRLPOOL 8e125710abe0467170a83f17a2b6cbe79d7a17ad9dde9b158a1be1dca2cc14ecfa2db6a4856371f1240f528caf22f0809523f1b13c81bab9e6ec70fd4f0abe59 AUX lighttpd-1.4.29-mod_uploadprogress.patch 22472 SHA256 b7b13ae1de4bbe2cf2687686ae4921d4ae2f66fc524703b3c63924b6d888934f SHA512 b790e36f803765c922da970ca69a851afa7f03aa8aedb9ecaf21d326794fa8622959b953705d0d9ff4125504478da7b384fa969d1c70e35623b3a3d4bb4b90bc WHIRLPOOL 837792c531c7522a11618f99574716c2b4a1eb43f906cf6e50fcd6bf10fe85ab451ad160d072830cd0d813e69a1b15fa5eb3808db75b2516244b55418e20a92e +AUX lighttpd-1.4.31-automake-1.12.patch 346 SHA256 035ba86aec4dea7e7fdfb499e8105332f1df04d41b382f14bdd8f105f0baaa60 SHA512 080085d8ec3760fea8affd423150c9f37cb9767ba494d43d7b2e900ddb73efe03bb684f2b2cf274f9e94e2c2d7803719687128333c32cde44e0da997a407cbba WHIRLPOOL 859e86d9689f4365492af0a4b9b665719172c284ab29bbc3910280ecb861d64044bf64511dfadb70c9d8b3f2d8f6472d36c0c7a02e0f84593474f070c42e8745 +AUX lighttpd-1.4.33-fix-ipv6-build.patch 661 SHA256 28d892b34d60151dbb8ccbd3d57c8f1c84747126210556ad51b1c3bb06880e5f SHA512 7e55bf1d175081b1dc764040a8cf05c74db1e2062a690a343553c12065f668db5f47c65d63f856170d213bce063227e9fb031bd5636af49b34e0d16a621276de WHIRLPOOL 2f88bc5943b1081d84c7d6dc858e1e929359051ce4ca67f2e200134c0bfbc4e2ce566912360d5996a9ee5e25c7ce33436250dfc5e9af449e14fba7e40e7f76c3 AUX lighttpd.confd 383 SHA256 bb6e6721f33e6582a91025f3500e159a599fb856d699e9394093e1018c7925e0 SHA512 a28bf860ed23836063c37c14ca33dcd70f4b1234326442f8c0bc23b44efb53f5752292a98cf5f4a6c6cfc0f9e06b3c8a2f9d3b9512b0146e680af021570ad16d WHIRLPOOL cea38f5edf0e0d30c46e815adbb03579816979215789944564f1b1bdb53a97f566857bb8bd72954bc91ae641a3a898ed87033980f7f69466ae33fbad5df88b35 AUX lighttpd.initd 1682 SHA256 4e7741cf9f702c981f14852357e7e1dcac7bb26b32dd5e872af01fce6026ffc8 SHA512 fe4e755c95355bb9c81f2a13b30df37e282238b3e5288335ca7ac66d6a2b6353ae3187446d0e2537f5094b37de884ef207859cc3ac7fd9f69df58c711dab405a WHIRLPOOL 764ceb47fa89eb81e930bedbf1401a04d0dbdf3c02e115bd5da991a77d35c7bd402d1753b8bd37df9206220874b8d1ae735f2ac0c176a4a7a15b70f497fe6b78 AUX lighttpd.logrotate 487 SHA256 503ee1cd454e2c0f9a212ef60dc8321893eda06ccf721ecbe94d189a09e0bc6c SHA512 e1284fe9ab4b9a53c21b40a5ac3e77e66343e187321b8a2f7464db64747f3a99f7e17a9e7c0e298db84a24fa1286cfe344dbff182eddd9de5c0605f5397a6972 WHIRLPOOL 96538a7fb86d6cb19dbc8eb6034e305fbc574edeb29e45d7fd8e58234fb8f1812daf7c1d845f9dfa052ebf9bfdc84b801a8aa68dfbad08aa88f32b0838a5bf5c AUX lighttpd.service 252 SHA256 bcd5a17df1bf5fe1cd2af9393e18c33a23eca5fb706de44472b214dd0cfb82fc SHA512 0a890005a8eb7d813c687bca8611018cf158152d04eb8355abf963cb74c06d712060bb66cb96d8d6d48ac71839b89bfec74e32b8f143b411c8570ec9c38ae5be WHIRLPOOL 811c4cfe203e261493da5d42dac541001982faffc0335e1a0359cb5d0b174aae136d825d4c63d89d90b3ed33d5d47fb6ce39dce6792443486b3d113ba99fecfb +AUX lighttpd.tmpfiles.conf 44 SHA256 a31237336ad02b22579b5e2168485d43d350f78ed010d39a2dbc554dd574bbcb SHA512 795448ad726ebfe7688236a23cb21bf06bbf8edd7e243924e3d1c21d33fffba1e04501734b189eb2081f6737b74af7c978eed802fb5e540dcc5c5aea69544936 WHIRLPOOL 5774c609ead3af3758766cd69111af5e080dc230cb7632ae54ade74313a20f5680d83117a2a369230e2d7c5328e1703ecc315fa1555f79a688e8728a7a209b4a DIST lighttpd-1.4.32.tar.bz2 681065 SHA256 60691b2dcf3ad2472c06b23d75eb0c164bf48a08a630ed3f308f61319104701f SHA512 ffd5488a2ed57daa26b6d16223f422a94e88f2488cdc50bbb354c45daa535fbf9231fbbe73c23327a0adb708cc2b67fbdc60c34195a2a46a171dcc0f30bb3efb WHIRLPOOL 0f537296ae2a321962a4e4bc9a45631d334cf180a5aee1a182e6d95ebdcabfec6df4d229e888ce9170f526ab716c323cc66947413747ee91e6f73e2a4a0d4526 -EBUILD lighttpd-1.4.32-r2.ebuild 6795 SHA256 983efc737afbc65ab5b1d89ac70b8f723c9cf7ab60f54881194b553db53d3616 SHA512 953a0b77f312513be35735738df46b2a6ba092e803bd02c32c5f8041bd66b0f5f2f183a36e2bb78b47fc51ce20250ecf81eb72f6407647eaf1b7aa44392ccef6 WHIRLPOOL 88ecdd22f38ce62b6c6a8babc4072b9f1ccb6ad60435249c5d058b2a1ed5ad383da87f74c21a7485f4b82c24f0ff0479034b73d63e01c716c96902e45628f08f +DIST lighttpd-1.4.33.tar.bz2 664850 SHA256 2ff2324658c0f90e7d39afd40f08f11ca230903b9019c31a2bbecd8f087f235e SHA512 f380adb20944846340b409290c43d54188f94e7992fe1e90121ab866f75048dfb7c2c1592b07b1df0af3b6d12b60d1d7e5d41de75c8684b8939b3df736f00762 WHIRLPOOL 26997d6813f59e7f26ed83c2d50d17b13d72d16565779ac85eedf5e0753f5f2b48882086e88f94f9c3050e8a0ede0a4d216a07e429f0916bed6f194585c98871 +EBUILD lighttpd-1.4.32-r2.ebuild 6797 SHA256 18ab40b5fb8c8adb2a6a945fbd0524cca3d20356e4a788633db41a1abed2f2d8 SHA512 86b4ebb01988fa68c53ea28c53417e76150048f29909a61acc1c5ebc0c5ad2cc93d41f6e7182b22802ea874e75fd7eca530dae6ea3e2d7470021da3d959779bf WHIRLPOOL 1fbd878c2e1e440e37cb5083cbab3f872fbb34f81ed8ddae8e8c9f0d4f6ff1e38c6efb83fb2d89927760ae2589e842abe87ef8da1589938b07e5f6c2036fef1e +EBUILD lighttpd-1.4.32-r3.ebuild 6899 SHA256 5305dd9bea46e6d4be69a46e36f15044f68587e1cab74d23c221729d0454f698 SHA512 f5c968ac4ff5460f39046f04925598197daec538fca8595851f5d91d02a665500c99ffa7b8714eb7dd817bc5a00748b0694cc79d872043dbcb6b61caffa7d2ca WHIRLPOOL b96e22a91e78dfb1d1d324cabe13842d64dbfee109bd9ea217a30899681831cd41c4683905fe54b30de3bba304dfa16ccd2f2d024e033b9d2192ae4a1dd35e35 +EBUILD lighttpd-1.4.33.ebuild 6958 SHA256 6e753b3c9f61e5ce0bd36cf88635a15c17685694f7c954cd6280bdae78b51c08 SHA512 db64ccfabdc0b2e0dc4b11734576381c88f496f198e58083b67f8d2d7f0fc9a06e4fcd5b8b67a5866724ab66d38453d6c5d6aefe3dbd5b21dfcf9a5d11782cce WHIRLPOOL 1ed4d37371f029fef2c39f06f6cc35b31bc7b78185232d9bce2ac92deafbc6410cc63f2fde67fdea0acefbca2b6eaa3adef305ae47f1a6b69fe81585027923aa diff --git a/www-servers/lighttpd/files/lighttpd-1.4.31-automake-1.12.patch b/www-servers/lighttpd/files/lighttpd-1.4.31-automake-1.12.patch new file mode 100644 index 00000000..eb3119fa --- /dev/null +++ b/www-servers/lighttpd/files/lighttpd-1.4.31-automake-1.12.patch @@ -0,0 +1,21 @@ +http://bugs.gentoo.org/420599 + +--- configure.ac ++++ configure.ac +@@ -14,6 +14,8 @@ + m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES]) + + dnl Checks for programs. ++m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) ++ + AC_PROG_CC + AM_PROG_CC_C_O + AC_PROG_LD +@@ -39,7 +41,6 @@ + AC_EXEEXT + + dnl more automake stuff +-AM_C_PROTOTYPES + + dnl libtool + AC_DISABLE_STATIC diff --git a/www-servers/lighttpd/files/lighttpd-1.4.33-fix-ipv6-build.patch b/www-servers/lighttpd/files/lighttpd-1.4.33-fix-ipv6-build.patch new file mode 100644 index 00000000..24acc81e --- /dev/null +++ b/www-servers/lighttpd/files/lighttpd-1.4.33-fix-ipv6-build.patch @@ -0,0 +1,21 @@ +Gentoo bug: +https://bugs.gentoo.org/show_bug.cgi?id=486426 + +Upstream bug: +http://redmine.lighttpd.net/issues/2515 + +Upstream Commit: +http://redmine.lighttpd.net/projects/lighttpd/repository/revisions/2911 + +Index: src/mod_extforward.c +=================================================================== +--- src/mod_extforward.c (revision 2909) ++++ src/mod_extforward.c (working copy) +@@ -439,7 +439,6 @@ + #ifdef HAVE_IPV6 + ipstr_to_sockaddr(srv, real_remote_addr, &sock); + #else +- UNUSED(addrs_left); + sock.ipv4.sin_addr.s_addr = inet_addr(real_remote_addr); + sock.plain.sa_family = (sock.ipv4.sin_addr.s_addr == 0xFFFFFFFF) ? AF_UNSPEC : AF_INET; + #endif diff --git a/www-servers/lighttpd/files/lighttpd.tmpfiles.conf b/www-servers/lighttpd/files/lighttpd.tmpfiles.conf new file mode 100644 index 00000000..325ab13d --- /dev/null +++ b/www-servers/lighttpd/files/lighttpd.tmpfiles.conf @@ -0,0 +1 @@ +d /var/run/lighttpd 0750 lighttpd lighttpd - \ No newline at end of file diff --git a/www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild b/www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild index f6edab6a..46e7a175 100644 --- a/www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild +++ b/www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild,v 1.10 2013/09/14 10:56:16 ago Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/lighttpd-1.4.32-r2.ebuild,v 1.12 2013/09/22 09:36:05 pacho Exp $ EAPI="4" inherit base autotools eutils depend.php readme.gentoo user systemd diff --git a/www-servers/lighttpd/lighttpd-1.4.32-r3.ebuild b/www-servers/lighttpd/lighttpd-1.4.32-r3.ebuild new file mode 100644 index 00000000..caf47378 --- /dev/null +++ b/www-servers/lighttpd/lighttpd-1.4.32-r3.ebuild @@ -0,0 +1,232 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/lighttpd-1.4.32-r3.ebuild,v 1.5 2013/11/01 13:50:00 ago Exp $ + +EAPI="4" +inherit base autotools eutils depend.php readme.gentoo user systemd + +DESCRIPTION="Lightweight high-performance web server" +HOMEPAGE="http://www.lighttpd.net/" +SRC_URI="http://download.lighttpd.net/lighttpd/releases-1.4.x/${P}.tar.bz2" + +LICENSE="BSD GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc x86 ~sparc-fbsd ~x86-fbsd" +IUSE="bzip2 doc fam gdbm ipv6 kerberos ldap libev lua minimal mmap memcache mysql pcre php rrdtool selinux ssl systemd test uploadprogress webdav xattr zlib" + +REQUIRED_USE="kerberos? ( ssl )" + +RDEPEND=" + bzip2? ( app-arch/bzip2 ) + fam? ( virtual/fam ) + gdbm? ( sys-libs/gdbm ) + ldap? ( >=net-nds/openldap-2.1.26 ) + libev? ( >=dev-libs/libev-4.01 ) + lua? ( >=dev-lang/lua-5.1 ) + memcache? ( dev-libs/libmemcache ) + mysql? ( >=virtual/mysql-4.0 ) + pcre? ( >=dev-libs/libpcre-3.1 ) + php? ( dev-lang/php[cgi] ) + rrdtool? ( net-analyzer/rrdtool ) + selinux? ( sec-policy/selinux-apache ) + ssl? ( >=dev-libs/openssl-0.9.7[kerberos?] ) + webdav? ( + dev-libs/libxml2 + >=dev-db/sqlite-3 + sys-fs/e2fsprogs + ) + xattr? ( kernel_linux? ( sys-apps/attr ) ) + zlib? ( >=sys-libs/zlib-1.1 )" + +DEPEND="${RDEPEND} + virtual/pkgconfig + doc? ( dev-python/docutils ) + test? ( + virtual/perl-Test-Harness + dev-libs/fcgi + )" + +# update certain parts of lighttpd.conf based on conditionals +update_config() { + local config="${D}/etc/lighttpd/lighttpd.conf" + + # enable php/mod_fastcgi settings + use php && { sed -i -e 's|#.*\(include.*fastcgi.*$\)|\1|' ${config} || die; } + + # enable stat() caching + use fam && { sed -i -e 's|#\(.*stat-cache.*$\)|\1|' ${config} || die; } + + # automatically listen on IPv6 if built with USE=ipv6. Bug #234987 + use ipv6 && { sed -i -e 's|# server.use-ipv6|server.use-ipv6|' ${config} || die; } +} + +# remove non-essential stuff (for USE=minimal) +remove_non_essential() { + local libdir="${D}/usr/$(get_libdir)/${PN}" + + # text docs + use doc || rm -fr "${D}"/usr/share/doc/${PF}/txt + + # non-essential modules + rm -f \ + ${libdir}/mod_{compress,evhost,expire,proxy,scgi,secdownload,simple_vhost,status,setenv,trigger*,usertrack}.* + + # allow users to keep some based on USE flags + use pcre || rm -f ${libdir}/mod_{ssi,re{direct,write}}.* + use webdav || rm -f ${libdir}/mod_webdav.* + use mysql || rm -f ${libdir}/mod_mysql_vhost.* + use lua || rm -f ${libdir}/mod_{cml,magnet}.* + use rrdtool || rm -f ${libdir}/mod_rrdtool.* + use zlib || rm -f ${libdir}/mod_compress.* +} + +pkg_setup() { + if ! use pcre ; then + ewarn "It is highly recommended that you build ${PN}" + ewarn "with perl regular expressions support via USE=pcre." + ewarn "Otherwise you lose support for some core options such" + ewarn "as conditionals and modules such as mod_re{write,direct}" + ewarn "and mod_ssi." + fi + if use mmap; then + ewarn "You have enabled the mmap option. This option may allow" + ewarn "local users to trigger SIGBUG crashes. Use this option" + ewarn "with EXTRA care." + fi + enewgroup lighttpd + enewuser lighttpd -1 -1 /var/www/localhost/htdocs lighttpd + + DOC_CONTENTS="IPv6 migration guide:\n + http://redmine.lighttpd.net/projects/lighttpd/wiki/IPv6-Config" +} + +src_prepare() { + base_src_prepare + #dev-python/docutils installs rst2html.py not rst2html + sed -i -e 's|\(rst2html\)|\1.py|g' doc/outdated/Makefile.am || \ + die "sed doc/Makefile.am failed" + # Experimental patch for progress bar. Bug #380093 + if use uploadprogress; then + epatch "${FILESDIR}"/${PN}-1.4.29-mod_uploadprogress.patch + fi + eautoreconf +} + +src_configure() { + econf --libdir=/usr/$(get_libdir)/${PN} \ + --enable-lfs \ + $(use_enable ipv6) \ + $(use_enable mmap) \ + $(use_with bzip2) \ + $(use_with fam) \ + $(use_with gdbm) \ + $(use_with kerberos kerberos5) \ + $(use_with ldap) \ + $(use_with libev) \ + $(use_with lua) \ + $(use_with memcache) \ + $(use_with mysql) \ + $(use_with pcre) \ + $(use_with ssl openssl) \ + $(use_with webdav webdav-props) \ + $(use_with webdav webdav-locks) \ + $(use_with xattr attr) \ + $(use_with zlib) +} + +src_compile() { + emake + + if use doc ; then + einfo "Building HTML documentation" + cd doc || die + emake html + fi +} + +src_test() { + if [[ ${EUID} -eq 0 ]]; then + default_src_test + else + ewarn "test skipped, please re-run as root if you wish to test ${PN}" + fi +} + +src_install() { + emake DESTDIR="${D}" install + + # init script stuff + newinitd "${FILESDIR}"/lighttpd.initd lighttpd + newconfd "${FILESDIR}"/lighttpd.confd lighttpd + use fam && has_version app-admin/fam && \ + { sed -i 's/after famd/need famd/g' "${D}"/etc/init.d/lighttpd || die; } + + # configs + insinto /etc/lighttpd + doins "${FILESDIR}"/conf/lighttpd.conf + doins "${FILESDIR}"/conf/mime-types.conf + doins "${FILESDIR}"/conf/mod_cgi.conf + doins "${FILESDIR}"/conf/mod_fastcgi.conf + if ! use systemd; then + # Secure directory for fastcgi sockets + keepdir /var/run/lighttpd/ + fperms 0750 /var/run/lighttpd/ + fowners lighttpd:lighttpd /var/run/lighttpd/ + fi + + # update lighttpd.conf directives based on conditionals + update_config + + # docs + dodoc AUTHORS README NEWS doc/scripts/*.sh + newdoc doc/config//lighttpd.conf lighttpd.conf.distrib + use ipv6 && readme.gentoo_create_doc + + use doc && dohtml -r doc/* + + docinto txt + dodoc doc/outdated/*.txt + + # logrotate + insinto /etc/logrotate.d + newins "${FILESDIR}"/lighttpd.logrotate lighttpd + + keepdir /var/l{ib,og}/lighttpd /var/www/localhost/htdocs + fowners lighttpd:lighttpd /var/l{ib,og}/lighttpd + fperms 0750 /var/l{ib,og}/lighttpd + + #spawn-fcgi may optionally be installed via www-servers/spawn-fcgi + rm -f "${D}"/usr/bin/spawn-fcgi "${D}"/usr/share/man/man1/spawn-fcgi.* + + use minimal && remove_non_essential + + if use systemd; then + systemd_dounit "${FILESDIR}/${PN}.service" + systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf" + fi +} + +pkg_postinst () { + use ipv6 && readme.gentoo_print_elog + + if [[ -f ${ROOT}etc/conf.d/spawn-fcgi.conf ]] ; then + einfo "spawn-fcgi is now provided by www-servers/spawn-fcgi." + einfo "spawn-fcgi's init script configuration is now located" + einfo "at /etc/conf.d/spawn-fcgi." + fi + + if [[ -f ${ROOT}etc/lighttpd.conf ]] ; then + elog "Gentoo has a customized configuration," + elog "which is now located in /etc/lighttpd. Please migrate your" + elog "existing configuration." + fi + + if use uploadprogress; then + elog "WARNING! mod_uploadprogress is a backported module from the" + elog "1.5x-branch, which is not considered stable yet. Please go to" + elog "http://redmine.lighttpd.net/wiki/1/Docs:ModUploadProgress" + elog "for more information. This configuration also is NOT supported" + elog "by upstream, so please refrain from reporting bugs. You have" + elog "been warned!" + fi +} diff --git a/www-servers/lighttpd/lighttpd-1.4.33.ebuild b/www-servers/lighttpd/lighttpd-1.4.33.ebuild new file mode 100644 index 00000000..1816ce10 --- /dev/null +++ b/www-servers/lighttpd/lighttpd-1.4.33.ebuild @@ -0,0 +1,234 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/lighttpd/lighttpd-1.4.33.ebuild,v 1.2 2013/10/16 20:26:13 hwoarang Exp $ + +EAPI="4" +inherit base autotools eutils depend.php readme.gentoo user systemd + +DESCRIPTION="Lightweight high-performance web server" +HOMEPAGE="http://www.lighttpd.net/" +SRC_URI="http://download.lighttpd.net/lighttpd/releases-1.4.x/${P}.tar.bz2" + +LICENSE="BSD GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" +IUSE="bzip2 doc fam gdbm ipv6 kerberos ldap libev lua minimal mmap memcache mysql pcre php rrdtool selinux ssl systemd test uploadprogress webdav xattr zlib" + +REQUIRED_USE="kerberos? ( ssl )" + +RDEPEND=" + bzip2? ( app-arch/bzip2 ) + fam? ( virtual/fam ) + gdbm? ( sys-libs/gdbm ) + ldap? ( >=net-nds/openldap-2.1.26 ) + libev? ( >=dev-libs/libev-4.01 ) + lua? ( >=dev-lang/lua-5.1 ) + memcache? ( dev-libs/libmemcache ) + mysql? ( >=virtual/mysql-4.0 ) + pcre? ( >=dev-libs/libpcre-3.1 ) + php? ( dev-lang/php[cgi] ) + rrdtool? ( net-analyzer/rrdtool ) + selinux? ( sec-policy/selinux-apache ) + ssl? ( >=dev-libs/openssl-0.9.7[kerberos?] ) + webdav? ( + dev-libs/libxml2 + >=dev-db/sqlite-3 + sys-fs/e2fsprogs + ) + xattr? ( kernel_linux? ( sys-apps/attr ) ) + zlib? ( >=sys-libs/zlib-1.1 )" + +DEPEND="${RDEPEND} + virtual/pkgconfig + doc? ( dev-python/docutils ) + test? ( + virtual/perl-Test-Harness + dev-libs/fcgi + )" + +PATCHES=( "${FILESDIR}"/${P}-fix-ipv6-build.patch ) + +# update certain parts of lighttpd.conf based on conditionals +update_config() { + local config="${D}/etc/lighttpd/lighttpd.conf" + + # enable php/mod_fastcgi settings + use php && { sed -i -e 's|#.*\(include.*fastcgi.*$\)|\1|' ${config} || die; } + + # enable stat() caching + use fam && { sed -i -e 's|#\(.*stat-cache.*$\)|\1|' ${config} || die; } + + # automatically listen on IPv6 if built with USE=ipv6. Bug #234987 + use ipv6 && { sed -i -e 's|# server.use-ipv6|server.use-ipv6|' ${config} || die; } +} + +# remove non-essential stuff (for USE=minimal) +remove_non_essential() { + local libdir="${D}/usr/$(get_libdir)/${PN}" + + # text docs + use doc || rm -fr "${D}"/usr/share/doc/${PF}/txt + + # non-essential modules + rm -f \ + ${libdir}/mod_{compress,evhost,expire,proxy,scgi,secdownload,simple_vhost,status,setenv,trigger*,usertrack}.* + + # allow users to keep some based on USE flags + use pcre || rm -f ${libdir}/mod_{ssi,re{direct,write}}.* + use webdav || rm -f ${libdir}/mod_webdav.* + use mysql || rm -f ${libdir}/mod_mysql_vhost.* + use lua || rm -f ${libdir}/mod_{cml,magnet}.* + use rrdtool || rm -f ${libdir}/mod_rrdtool.* + use zlib || rm -f ${libdir}/mod_compress.* +} + +pkg_setup() { + if ! use pcre ; then + ewarn "It is highly recommended that you build ${PN}" + ewarn "with perl regular expressions support via USE=pcre." + ewarn "Otherwise you lose support for some core options such" + ewarn "as conditionals and modules such as mod_re{write,direct}" + ewarn "and mod_ssi." + fi + if use mmap; then + ewarn "You have enabled the mmap option. This option may allow" + ewarn "local users to trigger SIGBUG crashes. Use this option" + ewarn "with EXTRA care." + fi + enewgroup lighttpd + enewuser lighttpd -1 -1 /var/www/localhost/htdocs lighttpd + + DOC_CONTENTS="IPv6 migration guide:\n + http://redmine.lighttpd.net/projects/lighttpd/wiki/IPv6-Config" +} + +src_prepare() { + base_src_prepare + #dev-python/docutils installs rst2html.py not rst2html + sed -i -e 's|\(rst2html\)|\1.py|g' doc/outdated/Makefile.am || \ + die "sed doc/Makefile.am failed" + # Experimental patch for progress bar. Bug #380093 + if use uploadprogress; then + epatch "${FILESDIR}"/${PN}-1.4.29-mod_uploadprogress.patch + fi + eautoreconf +} + +src_configure() { + econf --libdir=/usr/$(get_libdir)/${PN} \ + --enable-lfs \ + $(use_enable ipv6) \ + $(use_enable mmap) \ + $(use_with bzip2) \ + $(use_with fam) \ + $(use_with gdbm) \ + $(use_with kerberos kerberos5) \ + $(use_with ldap) \ + $(use_with libev) \ + $(use_with lua) \ + $(use_with memcache) \ + $(use_with mysql) \ + $(use_with pcre) \ + $(use_with ssl openssl) \ + $(use_with webdav webdav-props) \ + $(use_with webdav webdav-locks) \ + $(use_with xattr attr) \ + $(use_with zlib) +} + +src_compile() { + emake + + if use doc ; then + einfo "Building HTML documentation" + cd doc || die + emake html + fi +} + +src_test() { + if [[ ${EUID} -eq 0 ]]; then + default_src_test + else + ewarn "test skipped, please re-run as root if you wish to test ${PN}" + fi +} + +src_install() { + emake DESTDIR="${D}" install + + # init script stuff + newinitd "${FILESDIR}"/lighttpd.initd lighttpd + newconfd "${FILESDIR}"/lighttpd.confd lighttpd + use fam && has_version app-admin/fam && \ + { sed -i 's/after famd/need famd/g' "${D}"/etc/init.d/lighttpd || die; } + + # configs + insinto /etc/lighttpd + doins "${FILESDIR}"/conf/lighttpd.conf + doins "${FILESDIR}"/conf/mime-types.conf + doins "${FILESDIR}"/conf/mod_cgi.conf + doins "${FILESDIR}"/conf/mod_fastcgi.conf + if ! use systemd; then + # Secure directory for fastcgi sockets + keepdir /var/run/lighttpd/ + fperms 0750 /var/run/lighttpd/ + fowners lighttpd:lighttpd /var/run/lighttpd/ + fi + + # update lighttpd.conf directives based on conditionals + update_config + + # docs + dodoc AUTHORS README NEWS doc/scripts/*.sh + newdoc doc/config//lighttpd.conf lighttpd.conf.distrib + use ipv6 && readme.gentoo_create_doc + + use doc && dohtml -r doc/* + + docinto txt + dodoc doc/outdated/*.txt + + # logrotate + insinto /etc/logrotate.d + newins "${FILESDIR}"/lighttpd.logrotate lighttpd + + keepdir /var/l{ib,og}/lighttpd /var/www/localhost/htdocs + fowners lighttpd:lighttpd /var/l{ib,og}/lighttpd + fperms 0750 /var/l{ib,og}/lighttpd + + #spawn-fcgi may optionally be installed via www-servers/spawn-fcgi + rm -f "${D}"/usr/bin/spawn-fcgi "${D}"/usr/share/man/man1/spawn-fcgi.* + + use minimal && remove_non_essential + + if use systemd; then + systemd_dounit "${FILESDIR}/${PN}.service" + systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf" + fi +} + +pkg_postinst () { + use ipv6 && readme.gentoo_print_elog + + if [[ -f ${ROOT}etc/conf.d/spawn-fcgi.conf ]] ; then + einfo "spawn-fcgi is now provided by www-servers/spawn-fcgi." + einfo "spawn-fcgi's init script configuration is now located" + einfo "at /etc/conf.d/spawn-fcgi." + fi + + if [[ -f ${ROOT}etc/lighttpd.conf ]] ; then + elog "Gentoo has a customized configuration," + elog "which is now located in /etc/lighttpd. Please migrate your" + elog "existing configuration." + fi + + if use uploadprogress; then + elog "WARNING! mod_uploadprogress is a backported module from the" + elog "1.5x-branch, which is not considered stable yet. Please go to" + elog "http://redmine.lighttpd.net/wiki/1/Docs:ModUploadProgress" + elog "for more information. This configuration also is NOT supported" + elog "by upstream, so please refrain from reporting bugs. You have" + elog "been warned!" + fi +} -- cgit v1.2.3-65-gdbad