[arch-commits] Commit in fcgi/trunk (6 files)
Pierre Schmitz
pierre at archlinux.org
Sat May 16 11:40:18 UTC 2015
Date: Saturday, May 16, 2015 @ 13:40:17
Author: pierre
Revision: 239444
Fix build and FS#44562
Added:
fcgi/trunk/fcgi-2.4.0-Makefile.am-CPPFLAGS.patch
fcgi/trunk/fcgi-2.4.0-configure.in.patch
fcgi/trunk/fcgi-2.4.0-gcc44_fixes.patch
fcgi/trunk/fcgi-2.4.0-poll.patch
Modified:
fcgi/trunk/PKGBUILD
Deleted:
fcgi/trunk/gcc44-fix-include.patch
---------------------------------------+
PKGBUILD | 23 ++++++--
fcgi-2.4.0-Makefile.am-CPPFLAGS.patch | 36 +++++++++++++
fcgi-2.4.0-configure.in.patch | 19 +++++++
fcgi-2.4.0-gcc44_fixes.patch | 11 ++++
fcgi-2.4.0-poll.patch | 86 ++++++++++++++++++++++++++++++++
gcc44-fix-include.patch | 17 ------
6 files changed, 169 insertions(+), 23 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2015-05-16 11:39:34 UTC (rev 239443)
+++ PKGBUILD 2015-05-16 11:40:17 UTC (rev 239444)
@@ -5,7 +5,7 @@
pkgname=fcgi
pkgver=2.4.0
-pkgrel=9
+pkgrel=10
depends=('gcc-libs')
pkgdesc="FASTCgi (fcgi) is a language independent, high performant extension to CGI"
arch=('i686' 'x86_64')
@@ -13,17 +13,28 @@
options=('!makeflags')
url="http://www.fastcgi.com"
source=("http://www.fastcgi.com/dist/${pkgname}-${pkgver}.tar.gz"
- 'gcc44-fix-include.patch')
+ 'fcgi-2.4.0-configure.in.patch' 'fcgi-2.4.0-Makefile.am-CPPFLAGS.patch'
+ 'fcgi-2.4.0-gcc44_fixes.patch' 'fcgi-2.4.0-poll.patch')
md5sums=('d15060a813b91383a9f3c66faf84867e'
- 'a8028462163755f3ce457a5c641f237b')
+ '7e901968aa90168b6cdfc8323ca59868'
+ '8c07165aed574b853326ae25fe9af291'
+ '2e72c834db21da6af3f77dd2b36727a2'
+ '02900e5f2400ed2982db1e02c4a17aa8')
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -p1 -i "${srcdir}/gcc44-fix-include.patch"
- libtoolize --force
+ # Patches by Fedora:
+ # http://pkgs.fedoraproject.org/cgit/fcgi.git/tree/
+ patch -p1 -i "${srcdir}/fcgi-2.4.0-configure.in.patch"
+ patch -p1 -i "${srcdir}/fcgi-2.4.0-Makefile.am-CPPFLAGS.patch"
+ patch -p1 -i "${srcdir}/fcgi-2.4.0-gcc44_fixes.patch"
+ patch -p1 -i "${srcdir}/fcgi-2.4.0-poll.patch"
+
+ libtoolize --automake --copy --force
aclocal
+ autoheader
+ automake --add-missing --force-missing --copy
autoconf
- automake --foreign
}
build() {
Added: fcgi-2.4.0-Makefile.am-CPPFLAGS.patch
===================================================================
--- fcgi-2.4.0-Makefile.am-CPPFLAGS.patch (rev 0)
+++ fcgi-2.4.0-Makefile.am-CPPFLAGS.patch 2015-05-16 11:40:17 UTC (rev 239444)
@@ -0,0 +1,36 @@
+diff -ru fcgi-2.4.0-orig/cgi-fcgi/Makefile.am fcgi-2.4.0/cgi-fcgi/Makefile.am
+--- fcgi-2.4.0-orig/cgi-fcgi/Makefile.am 2007-03-05 18:09:31.000000000 +0100
++++ fcgi-2.4.0/cgi-fcgi/Makefile.am 2007-03-05 19:38:14.000000000 +0100
+@@ -2,7 +2,7 @@
+ bin_PROGRAMS = cgi-fcgi
+
+ INCLUDEDIR = ../include
+-CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
++AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
+
+ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.h \
+ $(INCLUDEDIR)/fcgiapp.h \
+diff -ru fcgi-2.4.0-orig/examples/Makefile.am fcgi-2.4.0/examples/Makefile.am
+--- fcgi-2.4.0-orig/examples/Makefile.am 2007-03-05 18:09:31.000000000 +0100
++++ fcgi-2.4.0/examples/Makefile.am 2007-03-05 19:38:34.000000000 +0100
+@@ -11,7 +11,7 @@
+ EXTRA_PROGRAMS = threaded echo-cpp
+
+ INCLUDEDIR = ../include
+-CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
++AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
+
+ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.h \
+ $(INCLUDEDIR)/fcgiapp.h \
+diff -ru fcgi-2.4.0-orig/libfcgi/Makefile.am fcgi-2.4.0/libfcgi/Makefile.am
+--- fcgi-2.4.0-orig/libfcgi/Makefile.am 2007-03-05 18:09:31.000000000 +0100
++++ fcgi-2.4.0/libfcgi/Makefile.am 2007-03-05 19:38:03.000000000 +0100
+@@ -1,7 +1,7 @@
+ # $Id: fcgi-2.4.0-Makefile.am-CPPFLAGS.patch,v 1.1 2007/06/28 23:15:26 till Exp $
+
+ INCLUDEDIR = ../include
+-CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
++AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
+
+ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.h \
+ $(INCLUDEDIR)/fcgiapp.h \
Added: fcgi-2.4.0-configure.in.patch
===================================================================
--- fcgi-2.4.0-configure.in.patch (rev 0)
+++ fcgi-2.4.0-configure.in.patch 2015-05-16 11:40:17 UTC (rev 239444)
@@ -0,0 +1,19 @@
+diff -ru fcgi-2.4.0-orig/configure.in fcgi-2.4.0/configure.in
+--- fcgi-2.4.0-orig/configure.in 2003-01-19 18:19:41.000000000 +0100
++++ fcgi-2.4.0/configure.in 2007-03-05 20:48:14.000000000 +0100
+@@ -4,11 +4,13 @@
+ dnl generate the file "configure", which is run during the build
+ dnl to configure the system for the local environment.
+
+-AC_INIT
+-AM_INIT_AUTOMAKE(fcgi, 2.4.0)
++AC_INIT(fcgi, 2.4.0)
++AM_INIT_AUTOMAKE(1.9 foreign)
+
+ AM_CONFIG_HEADER(fcgi_config.h)
+
++AM_MAINTAINER_MODE
++
+ AC_PROG_CC
+ AC_PROG_CPP
+ AC_PROG_INSTALL
Added: fcgi-2.4.0-gcc44_fixes.patch
===================================================================
--- fcgi-2.4.0-gcc44_fixes.patch (rev 0)
+++ fcgi-2.4.0-gcc44_fixes.patch 2015-05-16 11:40:17 UTC (rev 239444)
@@ -0,0 +1,11 @@
+diff -up fcgi-2.4.0/libfcgi/fcgio.cpp.gcc44_fixes fcgi-2.4.0/libfcgi/fcgio.cpp
+--- fcgi-2.4.0/libfcgi/fcgio.cpp.gcc44_fixes 2002-02-24 21:12:22.000000000 +0100
++++ fcgi-2.4.0/libfcgi/fcgio.cpp 2009-02-15 11:35:18.000000000 +0100
+@@ -23,6 +23,7 @@
+ #endif
+
+ #include <limits.h>
++#include <cstdio>
+ #include "fcgio.h"
+
+ using std::streambuf;
Added: fcgi-2.4.0-poll.patch
===================================================================
--- fcgi-2.4.0-poll.patch (rev 0)
+++ fcgi-2.4.0-poll.patch 2015-05-16 11:40:17 UTC (rev 239444)
@@ -0,0 +1,86 @@
+Author: Anton Kortunov <toshic.toshic at gmail.com>
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/libfcgi/+bug/933417
+Description: use poll in os_unix.c instead of select to avoid problem with > 1024 connections
+Forwarded: yes, fastcgi-developers at mailman.fastcgi.com
+
+diff --git a/libfcgi/os_unix.c b/libfcgi/os_unix.c
+index 73e6a7f..af35aee 100755
+--- a/libfcgi/os_unix.c
++++ b/libfcgi/os_unix.c
+@@ -42,6 +42,7 @@ static const char rcsid[] = "$Id: os_unix.c,v 1.37 2002/03/05 19:14:49 robs Exp
+ #include <sys/time.h>
+ #include <sys/un.h>
+ #include <signal.h>
++#include <poll.h>
+
+ #ifdef HAVE_NETDB_H
+ #include <netdb.h>
+@@ -103,6 +104,9 @@ static int volatile maxFd = -1;
+ static int shutdownPending = FALSE;
+ static int shutdownNow = FALSE;
+
++static int libfcgiOsClosePollTimeout = 2000;
++static int libfcgiIsAfUnixKeeperPollTimeout = 2000;
++
+ void OS_ShutdownPending()
+ {
+ shutdownPending = TRUE;
+@@ -168,6 +172,16 @@ int OS_LibInit(int stdioFds[3])
+ if(libInitialized)
+ return 0;
+
++ char *libfcgiOsClosePollTimeoutStr = getenv( "LIBFCGI_OS_CLOSE_POLL_TIMEOUT" );
++ if(libfcgiOsClosePollTimeoutStr) {
++ libfcgiOsClosePollTimeout = atoi(libfcgiOsClosePollTimeoutStr);
++ }
++
++ char *libfcgiIsAfUnixKeeperPollTimeoutStr = getenv( "LIBFCGI_IS_AF_UNIX_KEEPER_POLL_TIMEOUT" );
++ if(libfcgiIsAfUnixKeeperPollTimeoutStr) {
++ libfcgiIsAfUnixKeeperPollTimeout = atoi(libfcgiIsAfUnixKeeperPollTimeoutStr);
++ }
++
+ asyncIoTable = (AioInfo *)malloc(asyncIoTableSize * sizeof(AioInfo));
+ if(asyncIoTable == NULL) {
+ errno = ENOMEM;
+@@ -755,19 +769,16 @@ int OS_Close(int fd)
+
+ if (shutdown(fd, 1) == 0)
+ {
+- struct timeval tv;
+- fd_set rfds;
++ struct pollfd pfd;
+ int rv;
+ char trash[1024];
+
+- FD_ZERO(&rfds);
++ pfd.fd = fd;
++ pfd.events = POLLIN;
+
+ do
+ {
+- FD_SET(fd, &rfds);
+- tv.tv_sec = 2;
+- tv.tv_usec = 0;
+- rv = select(fd + 1, &rfds, NULL, NULL, &tv);
++ rv = poll(&pfd, 1, libfcgiOsClosePollTimeout);
+ }
+ while (rv > 0 && read(fd, trash, sizeof(trash)) > 0);
+ }
+@@ -1116,13 +1127,11 @@ static int is_reasonable_accept_errno (const int error)
+ */
+ static int is_af_unix_keeper(const int fd)
+ {
+- struct timeval tval = { READABLE_UNIX_FD_DROP_DEAD_TIMEVAL };
+- fd_set read_fds;
+-
+- FD_ZERO(&read_fds);
+- FD_SET(fd, &read_fds);
++ struct pollfd pfd;
++ pfd.fd = fd;
++ pfd.events = POLLIN;
+
+- return select(fd + 1, &read_fds, NULL, NULL, &tval) >= 0 && FD_ISSET(fd, &read_fds);
++ return poll(&pfd, 1, libfcgiIsAfUnixKeeperPollTimeout) >= 0 && (pfd.revents & POLLIN);
+ }
+
+ /*
Deleted: gcc44-fix-include.patch
===================================================================
--- gcc44-fix-include.patch 2015-05-16 11:39:34 UTC (rev 239443)
+++ gcc44-fix-include.patch 2015-05-16 11:40:17 UTC (rev 239444)
@@ -1,17 +0,0 @@
-Author: Tatsuki Sugiura <sugi at nemui.org>
-Origin: vendor, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504963
-Bug-Debian: http://bugs.debian.org/504963
-Forwarded: no
-Last-Update: 2010-02-08
-
-Index: libfcgi/libfcgi/fcgio.cpp
-===================================================================
---- libfcgi.orig/libfcgi/fcgio.cpp 2010-01-23 19:13:53.000000000 +0900
-+++ libfcgi/libfcgi/fcgio.cpp 2010-01-23 19:13:55.000000000 +0900
-@@ -22,6 +22,7 @@
- #define DLLAPI __declspec(dllexport)
- #endif
-
-+#include <cstdio>
- #include <limits.h>
- #include "fcgio.h"
More information about the arch-commits
mailing list