From 35848870d8cb9581ec4c5875ed382dad094bacea Mon Sep 17 00:00:00 2001 From: =?utf8?q?Diego=20Elio=20Petten=C3=B2?= Date: Wed, 27 Dec 2006 06:06:49 +0000 Subject: [PATCH] Add patches to allow crosscompiling cherokee (submitted upstream as tickets #121, #123 and #124); enable epoll on Linux kernel; use -j1 in install; discover gnutls via pkg-config (upstream ticket #122) and make gnutls useflag subordinate to ssl. Package-Manager: portage-2.1.2_rc4-r1 --- www-servers/cherokee/ChangeLog | 12 +++++- www-servers/cherokee/Manifest | 38 +++++++++++----- www-servers/cherokee/cherokee-0.5.6.ebuild | 28 +++++++++--- .../cherokee-0.5.6-epoll-crosscompile.patch | 43 +++++++++++++++++++ .../cherokee-0.5.6-gnutls-pkgconfig.patch | 17 ++++++++ .../cherokee-0.5.6-replace-with-sed.patch | 21 +++++++++ ...cherokee-0.5.6-sendfile-crosscompile.patch | 20 +++++++++ 7 files changed, 160 insertions(+), 19 deletions(-) create mode 100644 www-servers/cherokee/files/cherokee-0.5.6-epoll-crosscompile.patch create mode 100644 www-servers/cherokee/files/cherokee-0.5.6-gnutls-pkgconfig.patch create mode 100644 www-servers/cherokee/files/cherokee-0.5.6-replace-with-sed.patch create mode 100644 www-servers/cherokee/files/cherokee-0.5.6-sendfile-crosscompile.patch diff --git a/www-servers/cherokee/ChangeLog b/www-servers/cherokee/ChangeLog index 509f2d289e5c..56202271465c 100644 --- a/www-servers/cherokee/ChangeLog +++ b/www-servers/cherokee/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for www-servers/cherokee # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/cherokee/ChangeLog,v 1.33 2006/12/27 05:02:31 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/cherokee/ChangeLog,v 1.34 2006/12/27 06:06:49 flameeyes Exp $ + + 27 Dec 2006; Diego Pettenò + +files/cherokee-0.5.6-epoll-crosscompile.patch, + +files/cherokee-0.5.6-gnutls-pkgconfig.patch, + +files/cherokee-0.5.6-replace-with-sed.patch, + +files/cherokee-0.5.6-sendfile-crosscompile.patch, cherokee-0.5.6.ebuild: + Add patches to allow crosscompiling cherokee (submitted upstream as tickets + #121, #123 and #124); enable epoll on Linux kernel; use -j1 in install; + discover gnutls via pkg-config (upstream ticket #122) and make gnutls + useflag subordinate to ssl. 27 Dec 2006; Diego Pettenò cherokee-0.5.6.ebuild: Add threads useflag to disable pthread support and also remove images diff --git a/www-servers/cherokee/Manifest b/www-servers/cherokee/Manifest index 7460d3434188..905d39f77d86 100644 --- a/www-servers/cherokee/Manifest +++ b/www-servers/cherokee/Manifest @@ -1,19 +1,35 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 +AUX cherokee-0.5.6-epoll-crosscompile.patch 1255 RMD160 4c7586674523e0577a669b3de30c9dba25618e57 SHA1 8cca53172f668d451b718702c5f5d0b0a8d6cfe8 SHA256 81415ea4588c7bdfe430be85b6b75f5fcdaa7c5915166d059874b08945192e60 +MD5 aededec105c4e1d6882c269cd628310b files/cherokee-0.5.6-epoll-crosscompile.patch 1255 +RMD160 4c7586674523e0577a669b3de30c9dba25618e57 files/cherokee-0.5.6-epoll-crosscompile.patch 1255 +SHA256 81415ea4588c7bdfe430be85b6b75f5fcdaa7c5915166d059874b08945192e60 files/cherokee-0.5.6-epoll-crosscompile.patch 1255 +AUX cherokee-0.5.6-gnutls-pkgconfig.patch 553 RMD160 209761a11fb856b9465fbfd03c989c5cf956e785 SHA1 b6d4909f59174752deb27000ec1753de4a29b2f5 SHA256 a660b0dbf728d29b3645f4407702c9d230852885c72afa06e0d55cbde157dbb8 +MD5 65af85c7cb509640f1fa630e39618137 files/cherokee-0.5.6-gnutls-pkgconfig.patch 553 +RMD160 209761a11fb856b9465fbfd03c989c5cf956e785 files/cherokee-0.5.6-gnutls-pkgconfig.patch 553 +SHA256 a660b0dbf728d29b3645f4407702c9d230852885c72afa06e0d55cbde157dbb8 files/cherokee-0.5.6-gnutls-pkgconfig.patch 553 +AUX cherokee-0.5.6-replace-with-sed.patch 805 RMD160 b8398d4bcf86ef6480333382ee70fac21c39a355 SHA1 7ef02e1cf7ae62b87a448802fb03eb0f9a7ccdb0 SHA256 abcee67605d09ebf1c9ab397a8cb1e5c7a4ea1b50cada4b89a46a1bbf94223df +MD5 41b5552e65d826537141dfc6c5b6fdfc files/cherokee-0.5.6-replace-with-sed.patch 805 +RMD160 b8398d4bcf86ef6480333382ee70fac21c39a355 files/cherokee-0.5.6-replace-with-sed.patch 805 +SHA256 abcee67605d09ebf1c9ab397a8cb1e5c7a4ea1b50cada4b89a46a1bbf94223df files/cherokee-0.5.6-replace-with-sed.patch 805 +AUX cherokee-0.5.6-sendfile-crosscompile.patch 615 RMD160 13359b59d8bd4a0971fc5fefbb1c3be6396f829e SHA1 a8b61dd4679dc6614c9351e36d3e73e44c595fcb SHA256 a6cb6bb6f70a62e241eaed9aa1900aa375ab287c1d5acabac6a58cdbe8ba4465 +MD5 af5d1579d883bc3ddc068d5c81d6bd58 files/cherokee-0.5.6-sendfile-crosscompile.patch 615 +RMD160 13359b59d8bd4a0971fc5fefbb1c3be6396f829e files/cherokee-0.5.6-sendfile-crosscompile.patch 615 +SHA256 a6cb6bb6f70a62e241eaed9aa1900aa375ab287c1d5acabac6a58cdbe8ba4465 files/cherokee-0.5.6-sendfile-crosscompile.patch 615 AUX cherokee-initd-0.5.6 587 RMD160 50ab8f40e9258c96685373ad38f9440ca8b496b5 SHA1 b716cac0116c8177e8d0c8064b8500ed90619154 SHA256 09985375cc821db0c12fed621d505bad134acfb578432b1a940216f5e83a5551 MD5 aa0a02cf30b359170185714c37341c80 files/cherokee-initd-0.5.6 587 RMD160 50ab8f40e9258c96685373ad38f9440ca8b496b5 files/cherokee-initd-0.5.6 587 SHA256 09985375cc821db0c12fed621d505bad134acfb578432b1a940216f5e83a5551 files/cherokee-initd-0.5.6 587 DIST cherokee-0.5.6.tar.gz 1392282 RMD160 fd5661449bd845e3be1911490f02144a805f5c9f SHA1 5e437c2315782bc6ac1d98f8db3b7838313a229a SHA256 d19ac8a85c252ccfe04c06ce0ec9b03d036b27d07c6db4601ce7d6b33c4e9cc8 -EBUILD cherokee-0.5.6.ebuild 2272 RMD160 f519a9e92c16d683353758797f91b9432ad77357 SHA1 3ffbc312dc8ec8a7d3bcecff1f7fff01189316e4 SHA256 a2997f6581eb0b6efc224a4801d73e438d797769b4c60c74b1dca61d0336d512 -MD5 7a66241d88ff74eab8087fc3a8c9e151 cherokee-0.5.6.ebuild 2272 -RMD160 f519a9e92c16d683353758797f91b9432ad77357 cherokee-0.5.6.ebuild 2272 -SHA256 a2997f6581eb0b6efc224a4801d73e438d797769b4c60c74b1dca61d0336d512 cherokee-0.5.6.ebuild 2272 -MISC ChangeLog 11207 RMD160 8eb7bb5153ca1fb97a7bdd48f159d00c94711b48 SHA1 dc64203abb11c02f426be9ce1c4604d5d78cb1f6 SHA256 d6f2484168e25daafdd7ad0d610d55c063e06a153f377d516428be6e6ed0ac27 -MD5 8450f690d3ecf0aef51d4b5cc3e8932b ChangeLog 11207 -RMD160 8eb7bb5153ca1fb97a7bdd48f159d00c94711b48 ChangeLog 11207 -SHA256 d6f2484168e25daafdd7ad0d610d55c063e06a153f377d516428be6e6ed0ac27 ChangeLog 11207 +EBUILD cherokee-0.5.6.ebuild 2673 RMD160 a9083e76122aef92f7cdaf74d1e1764dbdebe4ca SHA1 4018a37716e445136e38250e22906db30de07b9a SHA256 25225e0b44aacb9e9eaf5de68f5e544023153b6ac40e8fd8581392a6b3cb2f4f +MD5 dd35be16adab8be53f3400ce507610d6 cherokee-0.5.6.ebuild 2673 +RMD160 a9083e76122aef92f7cdaf74d1e1764dbdebe4ca cherokee-0.5.6.ebuild 2673 +SHA256 25225e0b44aacb9e9eaf5de68f5e544023153b6ac40e8fd8581392a6b3cb2f4f cherokee-0.5.6.ebuild 2673 +MISC ChangeLog 11737 RMD160 d2d2b0f9152f56e8862150505d2ab5542b62022c SHA1 1e5e77be7d0a65257981e74ef749e371df06b0b3 SHA256 dae1c5057d3b547fe17e87a5f20744c843d4ec89ed023df586bc0a61e7bcd6bc +MD5 af6e98121652dfab317b9531eec102b7 ChangeLog 11737 +RMD160 d2d2b0f9152f56e8862150505d2ab5542b62022c ChangeLog 11737 +SHA256 dae1c5057d3b547fe17e87a5f20744c843d4ec89ed023df586bc0a61e7bcd6bc ChangeLog 11737 MISC metadata.xml 269 RMD160 2f424a28702cae549abf73acbdc5e83add6381a6 SHA1 896cbff4ed1d4357fbe5ed96f1747737d6949c3c SHA256 19de4ee447412c2935b1a069641f59a069077b66a7602eaa449b8d7d8fdf1a1f MD5 87a36685076539a89b31661a9b2564fe metadata.xml 269 RMD160 2f424a28702cae549abf73acbdc5e83add6381a6 metadata.xml 269 @@ -24,7 +40,7 @@ SHA256 f225430722ee46711c8426fb588ebfc1648f4e36488ca9af972ccf2f95e40b37 files/di -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) -iD8DBQFFkf5tAiZjviIA2XgRAjviAJ4sVG6U9kF40T2euw3Ej3rcc8rnZQCgyhMX -wT6tyFBTpvpy9JnHFKMC/RI= -=OOZs +iD8DBQFFkg2BAiZjviIA2XgRAoXZAJwINH+QYjvlny3Y3B+R9raSfT0c5wCguhYT +DfVyzXlgbsQoZ0pMRYGQvUw= +=/Iux -----END PGP SIGNATURE----- diff --git a/www-servers/cherokee/cherokee-0.5.6.ebuild b/www-servers/cherokee/cherokee-0.5.6.ebuild index 56011a8cc165..00c9eb8e3754 100644 --- a/www-servers/cherokee/cherokee-0.5.6.ebuild +++ b/www-servers/cherokee/cherokee-0.5.6.ebuild @@ -1,8 +1,11 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/cherokee/cherokee-0.5.6.ebuild,v 1.3 2006/12/27 05:02:31 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/cherokee/cherokee-0.5.6.ebuild,v 1.4 2006/12/27 06:06:49 flameeyes Exp $ -inherit eutils pam versionator libtool +WANT_AUTOCONF="latest" +WANT_AUTOMAKE="latest" + +inherit eutils pam versionator libtool autotools DESCRIPTION="An extremely fast and tiny web server." SRC_URI="http://www.cherokee-project.com/download/$(get_version_component_range 1-2)/${PV}/${P}.tar.gz" @@ -11,17 +14,27 @@ HOMEPAGE="http://www.cherokee-project.com/" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~ppc ~sparc ~x86" -IUSE="ipv6 ssl gnutls static pam coverpage threads" +IUSE="ipv6 ssl gnutls static pam coverpage threads kernel_linux" RDEPEND=">=sys-libs/zlib-1.1.4-r1 - gnutls? ( net-libs/gnutls ) - ssl? ( dev-libs/openssl ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) pam? ( virtual/pam )" +DEPEND="${RDEPEND} + dev-util/pkgconfig" src_unpack() { unpack ${A} - elibtoolize + cd "${S}" + epatch "${FILESDIR}/${P}-epoll-crosscompile.patch" + epatch "${FILESDIR}/${P}-sendfile-crosscompile.patch" + epatch "${FILESDIR}/${P}-gnutls-pkgconfig.patch" + epatch "${FILESDIR}/${P}-replace-with-sed.patch" + + AT_M4DIR="m4" eautoreconf # use cherokee user/group sed -i -e 's|^#\(User \).*$|\1cherokee|' \ @@ -63,6 +76,7 @@ src_compile() { $(use_enable pam) \ $(use_enable ipv6) \ $(use_enable threads pthread) \ + $(use_enable kernel_linux epoll) \ --disable-dependency-tracking \ --enable-os-string="Gentoo ${os}" \ --with-wwwroot=/var/www/localhost/htdocs \ @@ -72,7 +86,7 @@ src_compile() { } src_install () { - emake DESTDIR="${D}" docdir="/usr/share/doc/${PF}/html" install || die "make install failed" + emake -j1 DESTDIR="${D}" docdir="/usr/share/doc/${PF}/html" install || die "make install failed" dodoc AUTHORS ChangeLog TODO newpamd pam.d_cherokee ${PN} || die "newpamd failed" diff --git a/www-servers/cherokee/files/cherokee-0.5.6-epoll-crosscompile.patch b/www-servers/cherokee/files/cherokee-0.5.6-epoll-crosscompile.patch new file mode 100644 index 000000000000..9a34a5dcd2b9 --- /dev/null +++ b/www-servers/cherokee/files/cherokee-0.5.6-epoll-crosscompile.patch @@ -0,0 +1,43 @@ +Index: cherokee-0.5.6/configure.in +=================================================================== +--- cherokee-0.5.6.orig/configure.in ++++ cherokee-0.5.6/configure.in +@@ -274,13 +274,20 @@ fi + dnl + dnl Epoll + dnl +-AC_CHECK_HEADER(sys/epoll.h, have_epoll_include=yes, have_epoll_include=no) + +-have_epoll=no +-if test "x$have_epoll_include" = "xyes"; then +- AC_MSG_CHECKING(for epoll system call) ++AC_ARG_ENABLE([epoll], AC_HELP_STRING([--disable-epoll], [Disable epoll system call usage, default: check])) + +- AC_TRY_RUN([ ++have_epoll=no ++if test "x$enable_epoll" != "xno"; then ++ AC_CHECK_HEADER(sys/epoll.h, have_epoll_include=yes, have_epoll_include=no) ++ if test "x$have_epoll_include" = "xyes"; then ++ AC_MSG_CHECKING(for epoll system call) ++ ++ if test "$host" != "$build"; then ++ AC_MSG_RESULT([crosscompile, assuming yes]) ++ have_epoll=yes ++ else ++ AC_TRY_RUN([ + #include + #include + #include +@@ -297,8 +304,10 @@ if test "x$have_epoll_include" = "xyes"; + epfd = epoll_create(256); + exit (epfd == -1 ? 1 : 0); + } +- ], have_epoll=yes) +- AC_MSG_RESULT($have_epoll) ++ ], have_epoll=yes) ++ AC_MSG_RESULT($have_epoll) ++ fi ++ fi + fi + + dnl diff --git a/www-servers/cherokee/files/cherokee-0.5.6-gnutls-pkgconfig.patch b/www-servers/cherokee/files/cherokee-0.5.6-gnutls-pkgconfig.patch new file mode 100644 index 000000000000..258779762214 --- /dev/null +++ b/www-servers/cherokee/files/cherokee-0.5.6-gnutls-pkgconfig.patch @@ -0,0 +1,17 @@ +Index: cherokee-0.5.6/configure.in +=================================================================== +--- cherokee-0.5.6.orig/configure.in ++++ cherokee-0.5.6/configure.in +@@ -861,11 +861,9 @@ then + dnl + dnl GNUTLS + dnl +- AM_PATH_LIBGNUTLS(1.0.4, [have_gnutls=yes], [have_gnutls=no]) ++ PKG_CHECK_MODULES([TLS], [gnutls >= 1.0.4], [have_gnutls=yes], [have_gnutls=no]) + if test "$have_gnutls" = "yes" + then +- TLS_LIBS="$LIBGNUTLS_LIBS" +- TLS_CFLAGS="$LIBGNUTLS_CFLAGS" + AC_SUBST(TLS_LIBS) + AC_SUBST(TLS_CFLAGS) + diff --git a/www-servers/cherokee/files/cherokee-0.5.6-replace-with-sed.patch b/www-servers/cherokee/files/cherokee-0.5.6-replace-with-sed.patch new file mode 100644 index 000000000000..e880320c1e25 --- /dev/null +++ b/www-servers/cherokee/files/cherokee-0.5.6-replace-with-sed.patch @@ -0,0 +1,21 @@ +Index: cherokee-0.5.6/Makefile.am +=================================================================== +--- cherokee-0.5.6.orig/Makefile.am ++++ cherokee-0.5.6/Makefile.am +@@ -19,15 +19,11 @@ cherokee_logrotate.1 + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = cherokee.pc + +-# Replacement utility +-noinst_PROGRAMS = cherokee_replace +-cherokee_replace_SOURCES = cherokee_replace.c +- + # Configuration files + cherokeeconfdir = $(sysconfdir)/cherokee + + .sample.pre.sample: +- $(top_builddir)/cherokee_replace $< $@ "%sysconfdir%" "${sysconfdir}" "%datadir%" "${datadir}" "%prefix%" "${prefix}" "%wwwroot%" "${WWW_ROOT}" ++ sed -e "s|%sysconfdir%|${sysconfdir}|g; s|%datadir%|${datadir}|g; s|%prefix%|${prefix}|g; s|%wwwroot%|${WWW_ROOT}|g" $< > $@ + + CONFS_PRE = \ + mods-ssl.sample.pre \ diff --git a/www-servers/cherokee/files/cherokee-0.5.6-sendfile-crosscompile.patch b/www-servers/cherokee/files/cherokee-0.5.6-sendfile-crosscompile.patch new file mode 100644 index 000000000000..dedeab0ea791 --- /dev/null +++ b/www-servers/cherokee/files/cherokee-0.5.6-sendfile-crosscompile.patch @@ -0,0 +1,20 @@ +Index: cherokee-0.5.6/configure.in +=================================================================== +--- cherokee-0.5.6.orig/configure.in ++++ cherokee-0.5.6/configure.in +@@ -634,6 +634,7 @@ ETR_SOCKET_NSL + SENDFILE_CHECK + + # Is sendfile broken? ++if test "$host" = "$build"; then + AC_MSG_CHECKING(if sendfile works) + AC_TRY_RUN([#include + int main() { +@@ -644,6 +645,7 @@ AC_TRY_RUN([#include + AC_MSG_RESULT(yes), + [ AC_MSG_RESULT(no) + AC_DEFINE([HAVE_SENDFILE_BROKEN], [1], [broken sendfile]) ]) ++fi + + # readdir_r() + LIBWWW_READDIR_R_TYPE -- 2.26.2