summaryrefslogtreecommitdiff
path: root/dev-libs/fcgi
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-libs/fcgi
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-libs/fcgi')
-rw-r--r--dev-libs/fcgi/Manifest11
-rw-r--r--dev-libs/fcgi/fcgi-2.4.1_pre0910052249-r2.ebuild51
-rw-r--r--dev-libs/fcgi/files/fcgi-2.4.0-Makefile.patch24
-rw-r--r--dev-libs/fcgi/files/fcgi-2.4.0-clientdata-pointer.patch96
-rw-r--r--dev-libs/fcgi/files/fcgi-2.4.0-html-updates.patch65
-rw-r--r--dev-libs/fcgi/files/fcgi-2.4.1_pre0311112127-gcc44.patch10
-rw-r--r--dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-link.patch21
-rw-r--r--dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-poll.patch80
-rw-r--r--dev-libs/fcgi/metadata.xml11
9 files changed, 369 insertions, 0 deletions
diff --git a/dev-libs/fcgi/Manifest b/dev-libs/fcgi/Manifest
new file mode 100644
index 000000000000..7cb09e45ac03
--- /dev/null
+++ b/dev-libs/fcgi/Manifest
@@ -0,0 +1,11 @@
+AUX fcgi-2.4.0-Makefile.patch 846 SHA256 3d01cc53a4eb63d416ee6cdcd29e099d759947ae200c4062fcc3cfd823849f62 SHA512 70e4d34717afc55a76e7057dc439875387ecc0e475976a4fe4f79e61b771231c0a195e03f8e7d02558ba3525382b01e51e1e4d937a6bf25778666bba651d8337 WHIRLPOOL 620f6b20f16e1836e906c1beb5f5f409c08e7f4f2e8dcbfa1253463d44f1d24a59232884cbbabb5d91fb90b68562f2cf65fa998de4e458d0da3f8354d8aa14ef
+AUX fcgi-2.4.0-clientdata-pointer.patch 3203 SHA256 27936406b5fcb13096bbdd80ee7eb0cf262e5c2b983e79e41d17a3cd17387683 SHA512 c5339ae940994daeec4cf8030933ca2ab5a00651b91eb5d2ff3b871673b5a62646bfb8e81c190ad6d83015fcf59df4076bc745f097ddcada220ca0dc4a05db6a WHIRLPOOL d3007b048703481e4a49807046e5acb34ef244531a7230e5550070e7efd3a1a0420e4f3704087298f605b5daf50b9406e7bc7b8e1a6da09efff8b2e80a02206b
+AUX fcgi-2.4.0-html-updates.patch 2527 SHA256 df8b2eb4c017fedf6f27a5650e2f4f5636e66ec7d02d20a50282edbc8d636c69 SHA512 79abe9f43150b3163e92030cc9afbee90f69f04bd487254d187abda6fa3484623f605394c96eeb6fd4203d2b06f7e771c9b46f9c21b03cde1aa043da9b3e8d5e WHIRLPOOL 101c77ec045cfa8096b4a6391a12daec9a114dacb594e97c9a66dcca3067d3f67b004dce2cd1246d528ae4b704c880785149418ece7ddf0b71a28f220201afa5
+AUX fcgi-2.4.1_pre0311112127-gcc44.patch 202 SHA256 0c15ebe26a69939694e7ed3d9b408ef782688646fc3dc64235f63215c4ac860f SHA512 bb69535695c21151edc538e64dfae095bc61abd5d612d79f73ab3be1a6ecca9d8c2d44f4590e539934820607c5d01ae81e8e71b3b4252aa9270fa638d7776ebf WHIRLPOOL 095b8b4cd5ceb4222e6926ccf93e483190e46cd5c61afd0ab7d30b70e937f65a4a66c3b95156acd9546cfde5928027a497ac06fa7b2387875762e393883c246c
+AUX fcgi-2.4.1_pre0910052249-link.patch 850 SHA256 4b1c6d626c4d4c142f1e2c8451a719c6287f0a9d436fa9dd6aee9be304d19c67 SHA512 6180201e3ac7e9fe659b281cc612ed7d6d58acc17f670feba843931c5b038a7d08e75a9f24b098413bc309cb1cdbc6b96ba77f6f1fb43e47066815937d622b52 WHIRLPOOL 044859de666d9de26acc0e63015987de4f5418be2dcf8826b39a7de8aa9ca564baae1d2477b9f353e66b87da476e78cb159e2ad1198e40c97ad4e974e0e31be7
+AUX fcgi-2.4.1_pre0910052249-poll.patch 2469 SHA256 4fe785d772b91185338b93af1f3eb8ec68e21a4a71d09e81f41a645e82c71e10 SHA512 3c00be90012bb7b9aabcce0eb014b2b0a8ec0bb8d4a44389237ae1c88fd46129e7686b035a427177545762275c30151c8a1037258b409486706a7f3a64db70b1 WHIRLPOOL e1dd7bf9464d838723d8ad450150f953e5dc8010f3341d9633652ef97eb450493ca01988099bf507adba3f31ec6fdcbc24ad79331c6c27c1dd50a51d65da949e
+DIST fcgi-2.4.1-SNAP-0910052249.tar.gz 614929 SHA256 829dc89a0a372c7b0b172303ec9b42e9d20615d6d0e9fc81570fdac6c41a0f30 SHA512 7ae7542ef0934f44d8c7a120366a5cd92639d0bc283a16be320c9218a73a0302c961cc004074e3915209690f1e2b67fc234c9ba55d35af11e31566d79f081c87 WHIRLPOOL ce454ec8bc549cc4b9e1c86fe145f1cc863160415cab0a7e2fc6b88e8aadb996a612e358789e8a15a898cdfcf79e34e77686160a26f84e052f4e5826dbef2f5d
+EBUILD fcgi-2.4.1_pre0910052249-r2.ebuild 1293 SHA256 50dd7cedd551a5032bc4c9b38128f7d0cdc02809788deef64ff561773837fa96 SHA512 f836361ffcbf97004ef7f534e81f9fe79d2ff0d5831ed4cd91c6a2ffa6b6d596e51eeb51c4ecd08a943170cd23039ae4545fb65dd3d8e686fe5d20a49589d8e6 WHIRLPOOL 97ccf17710c3c6f948db50fae362ae524fe53c3b0e7174b439de708c2b5ee16ff6fca49dde219c133530fdefb8222dc5956422a93462e41aa2511d97850efbc7
+MISC ChangeLog 2853 SHA256 c5a1af75ca9eaf44c155460b74a094413c83f8fd24e91ca7d38e2e7b25b961ea SHA512 58ff252b0ed224aeca848fa265b07fe1869a77a2e7e489f4414f139e0ed1d62065b9ea2a03575c0b7c2061c481ca5775570268b70b83c706a62f1415b739eeb9 WHIRLPOOL 0bc006fd4a97b76ab5d1a7fd9222fe814fb005f24e12d6d4ba83a9f17caa0511cdb1c0b3cc03b9b9b99bf036c0df701feec680a7fb4b92940399c279304ad683
+MISC ChangeLog-2015 8935 SHA256 e6f744bc93df467e26c52df78298e9ce70220a0f1239205f699748f8a7151a23 SHA512 72ac0ea4825f7908f3abc54e5a859c591cf3b79c35998da108f160a71d84e005c58b4f4f5ff97aafc4b8e0d962cb25773f19558d4d71ddf61e85871f10d8696d WHIRLPOOL 5d7eaf4cdd7e07c4e46c872e86ac5f21a5b2f4f1ab486dcb6c9136c8246a2ae9eeb202eeaba313e539b9ecffc55b547af6b2b9d291b4ace15764d95b6ad2a970
+MISC metadata.xml 322 SHA256 86eacfa80c38fccbbd688f77c53b4df3213973e4c7eb9385bea4ecc2861a427e SHA512 d4d683173a6acb775871efc762823f186867e446c931714e8b04475a7982845e2d8152d871f123a1c8b08e7af307c7d1453c0309c26f7e6da131f120e1c29c7b WHIRLPOOL 7412083c84c8e4f79a9ecf2ee10809833d69ed945a1c0b2603eabbc60e634f5cea0f3bd06d6820e56030e725b750657c05b942e20bb3009a84ad93c4c7348733
diff --git a/dev-libs/fcgi/fcgi-2.4.1_pre0910052249-r2.ebuild b/dev-libs/fcgi/fcgi-2.4.1_pre0910052249-r2.ebuild
new file mode 100644
index 000000000000..088ad6e3c474
--- /dev/null
+++ b/dev-libs/fcgi/fcgi-2.4.1_pre0910052249-r2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit eutils autotools multilib
+
+DESCRIPTION="FastCGI Developer's Kit"
+HOMEPAGE="http://www.fastcgi.com/"
+SRC_URI="http://www.fastcgi.com/dist/fcgi-2.4.1-SNAP-0910052249.tar.gz"
+
+LICENSE="FastCGI"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="html"
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}/fcgi-2.4.1-SNAP-0910052249"
+
+src_prepare() {
+ epatch "${FILESDIR}/fcgi-2.4.0-Makefile.patch"
+ epatch "${FILESDIR}/fcgi-2.4.0-clientdata-pointer.patch"
+ epatch "${FILESDIR}/fcgi-2.4.0-html-updates.patch"
+ epatch "${FILESDIR}"/fcgi-2.4.1_pre0311112127-gcc44.patch
+ epatch "${FILESDIR}"/${P}-link.patch
+ epatch "${FILESDIR}"/${P}-poll.patch
+
+ eautoreconf
+}
+
+src_install() {
+ emake DESTDIR="${D}" install LIBRARY_PATH="${ED}/usr/$(get_libdir)"
+
+ dodoc README
+
+ # install the manpages into the right place
+ doman doc/*.[13]
+
+ # Only install the html documentation if USE=html
+ if use html ; then
+ dohtml "${S}"/doc/*/*
+ insinto /usr/share/doc/${PF}/html
+ doins -r "${S}/images"
+ fi
+
+ # install examples in the right place
+ insinto /usr/share/doc/${PF}/examples
+ doins "${S}/examples/"*.c
+}
diff --git a/dev-libs/fcgi/files/fcgi-2.4.0-Makefile.patch b/dev-libs/fcgi/files/fcgi-2.4.0-Makefile.patch
new file mode 100644
index 000000000000..dad4cd6e02dd
--- /dev/null
+++ b/dev-libs/fcgi/files/fcgi-2.4.0-Makefile.patch
@@ -0,0 +1,24 @@
+Index: fcgi-2.4.0/cgi-fcgi/Makefile.am
+===================================================================
+--- fcgi-2.4.0.orig/cgi-fcgi/Makefile.am
++++ fcgi-2.4.0/cgi-fcgi/Makefile.am
+@@ -11,5 +11,5 @@ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.
+ LIBDIR = ../libfcgi
+ LIBFCGI = $(LIBDIR)/libfcgi.la
+
+-LDADD = $(LIBFCGI)
++LDADD = $(LIBFCGI) -lm
+ cgi_fcgi_SOURCES = $(INCLUDE_FILES) cgi-fcgi.c
+Index: fcgi-2.4.0/examples/Makefile.am
+===================================================================
+--- fcgi-2.4.0.orig/examples/Makefile.am
++++ fcgi-2.4.0/examples/Makefile.am
+@@ -21,7 +21,7 @@ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.
+ LIBDIR = ../libfcgi
+ LIBFCGI = $(LIBDIR)/libfcgi.la
+
+-LDADD = $(LIBFCGI)
++LDADD = $(LIBFCGI) -lm
+
+ echo_SOURCES = $(INCLUDE_FILES) echo.c
+ echo_x_SOURCES = $(INCLUDE_FILES) echo-x.c
diff --git a/dev-libs/fcgi/files/fcgi-2.4.0-clientdata-pointer.patch b/dev-libs/fcgi/files/fcgi-2.4.0-clientdata-pointer.patch
new file mode 100644
index 000000000000..ba4793765d5e
--- /dev/null
+++ b/dev-libs/fcgi/files/fcgi-2.4.0-clientdata-pointer.patch
@@ -0,0 +1,96 @@
+Index: fcgi-2.4.0/cgi-fcgi/cgi-fcgi.c
+===================================================================
+--- fcgi-2.4.0.orig/cgi-fcgi/cgi-fcgi.c
++++ fcgi-2.4.0/cgi-fcgi/cgi-fcgi.c
+@@ -21,6 +21,7 @@ static const char rcsid[] = "$Id: cgi-fc
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <sys/types.h>
+
+ #include "fcgi_config.h"
+
+@@ -145,7 +146,7 @@ static FCGI_BeginRequestBody MakeBeginRe
+
+
+ static int bytesToRead; /* number of bytes to read from Web Server */
+-static int appServerSock = -1; /* Socket connected to FastCGI application,
++static size_t appServerSock = -1; /* Socket connected to FastCGI application,
+ * used by AppServerReadHandler and
+ * AppServerWriteHandler. */
+ static Buffer fromAS; /* Bytes read from the FCGI application server. */
+@@ -640,7 +641,7 @@ static int ParseArgs(int argc, char *arg
+ }
+ if((av[ac] = (char *)malloc(strlen(tp1)+1)) == NULL) {
+ fprintf(stderr, "Cannot allocate %d bytes\n",
+- strlen(tp1)+1);
++ (int)strlen(tp1)+1);
+ exit(-1);
+ }
+ strcpy(av[ac++], tp1);
+Index: fcgi-2.4.0/examples/threaded.c
+===================================================================
+--- fcgi-2.4.0.orig/examples/threaded.c
++++ fcgi-2.4.0/examples/threaded.c
+@@ -24,7 +24,7 @@ static int counts[THREAD_COUNT];
+
+ static void *doit(void *a)
+ {
+- int rc, i, thread_id = (int)a;
++ size_t rc, i, thread_id = (size_t)a;
+ pid_t pid = getpid();
+ FCGX_Request request;
+ char *server_name;
+@@ -53,7 +53,7 @@ static void *doit(void *a)
+ "<h1>FastCGI Hello! (multi-threaded C, fcgiapp library)</h1>"
+ "Thread %d, Process %ld<p>"
+ "Request counts for %d threads running on host <i>%s</i><p><code>",
+- thread_id, pid, THREAD_COUNT, server_name ? server_name : "?");
++ (int)thread_id, pid, THREAD_COUNT, server_name ? server_name : "?");
+
+ sleep(2);
+
+@@ -71,7 +71,7 @@ static void *doit(void *a)
+
+ int main(void)
+ {
+- int i;
++ size_t i;
+ pthread_t id[THREAD_COUNT];
+
+ FCGX_Init();
+Index: fcgi-2.4.0/include/fcgios.h
+===================================================================
+--- fcgi-2.4.0.orig/include/fcgios.h
++++ fcgi-2.4.0/include/fcgios.h
+@@ -93,7 +93,7 @@ extern "C" {
+ # if defined(__STDC__) || defined(__cplusplus)
+ typedef void *ClientData;
+ # else
+- typedef int *ClientData;
++ typedef size_t *ClientData;
+ # endif /* __STDC__ */
+ #define _CLIENTDATA
+ #endif
+Index: fcgi-2.4.0/libfcgi/os_unix.c
+===================================================================
+--- fcgi-2.4.0.orig/libfcgi/os_unix.c
++++ fcgi-2.4.0/libfcgi/os_unix.c
+@@ -1155,7 +1155,7 @@ int OS_Accept(int listen_sock, int fail_
+
+ for (;;) {
+ do {
+-#ifdef HAVE_SOCKLEN
++#ifdef HAVE_SYS_SOCKET_H
+ socklen_t len = sizeof(sa);
+ #else
+ int len = sizeof(sa);
+@@ -1255,7 +1255,7 @@ int OS_IsFcgi(int sock)
+ struct sockaddr_in in;
+ struct sockaddr_un un;
+ } sa;
+-#ifdef HAVE_SOCKLEN
++#ifdef HAVE_SYS_SOCKET_H
+ socklen_t len = sizeof(sa);
+ #else
+ int len = sizeof(sa);
diff --git a/dev-libs/fcgi/files/fcgi-2.4.0-html-updates.patch b/dev-libs/fcgi/files/fcgi-2.4.0-html-updates.patch
new file mode 100644
index 000000000000..ca10a6a6039b
--- /dev/null
+++ b/dev-libs/fcgi/files/fcgi-2.4.0-html-updates.patch
@@ -0,0 +1,65 @@
+Index: fcgi-2.4.0/doc/fcgi-devel-kit.htm
+===================================================================
+--- fcgi-2.4.0.orig/doc/fcgi-devel-kit.htm
++++ fcgi-2.4.0/doc/fcgi-devel-kit.htm
+@@ -19,7 +19,7 @@
+ </HEAD>
+ <BODY>
+ <P CLASS="c1">
+- <IMG BORDER="0" SRC="../images/fcgi-hd.gif" ALT="[[FastCGI]]"><BR CLEAR="all">
++ <IMG BORDER="0" SRC="images/fcgi-hd.gif" ALT="[[FastCGI]]"><BR CLEAR="all">
+ </P>
+ <H3 CLASS="c2">
+ FastCGI Developer&#39;s Kit
+Index: fcgi-2.4.0/doc/fcgi-java.htm
+===================================================================
+--- fcgi-2.4.0.orig/doc/fcgi-java.htm
++++ fcgi-2.4.0/doc/fcgi-java.htm
+@@ -20,7 +20,7 @@
+ </HEAD>
+ <BODY>
+ <DIV CLASS="c1">
+- <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="../images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
++ <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
+ </DIV>
+ <BR CLEAR="all">
+ <DIV CLASS="c1">
+Index: fcgi-2.4.0/doc/fcgi-perf.htm
+===================================================================
+--- fcgi-2.4.0.orig/doc/fcgi-perf.htm
++++ fcgi-2.4.0/doc/fcgi-perf.htm
+@@ -19,7 +19,7 @@
+ </HEAD>
+ <BODY>
+ <DIV CLASS="c1">
+- <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="../images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
++ <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
+ </DIV>
+ <BR CLEAR="all">
+ <DIV CLASS="c1">
+Index: fcgi-2.4.0/doc/fcgi-perl.htm
+===================================================================
+--- fcgi-2.4.0.orig/doc/fcgi-perl.htm
++++ fcgi-2.4.0/doc/fcgi-perl.htm
+@@ -19,7 +19,7 @@
+ </HEAD>
+ <BODY>
+ <DIV CLASS="c1">
+- <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="../images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
++ <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
+ </DIV>
+ <BR CLEAR="all">
+
+Index: fcgi-2.4.0/doc/fcgi-tcl.htm
+===================================================================
+--- fcgi-2.4.0.orig/doc/fcgi-tcl.htm
++++ fcgi-2.4.0/doc/fcgi-tcl.htm
+@@ -19,7 +19,7 @@
+ </HEAD>
+ <BODY>
+ <DIV CLASS="c1">
+- <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="../images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
++ <A HREF="http://fastcgi.com"><IMG BORDER="0" SRC="images/fcgi-hd.gif" ALT="[[FastCGI]]"></A>
+ </DIV>
+ <BR CLEAR="all">
+ <DIV CLASS="c1">
diff --git a/dev-libs/fcgi/files/fcgi-2.4.1_pre0311112127-gcc44.patch b/dev-libs/fcgi/files/fcgi-2.4.1_pre0311112127-gcc44.patch
new file mode 100644
index 000000000000..a0b59f766a89
--- /dev/null
+++ b/dev-libs/fcgi/files/fcgi-2.4.1_pre0311112127-gcc44.patch
@@ -0,0 +1,10 @@
+--- fcgi-2.4.1-SNAP-0311112127-orig/include/fcgio.h
++++ fcgi-2.4.1-SNAP-0311112127/include/fcgio.h
+@@ -31,6 +31,7 @@
+ #define FCGIO_H
+
+ #include <iostream>
++#include <cstdio>
+
+ #include "fcgiapp.h"
+
diff --git a/dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-link.patch b/dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-link.patch
new file mode 100644
index 000000000000..e53c7e9d550b
--- /dev/null
+++ b/dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-link.patch
@@ -0,0 +1,21 @@
+Index: fcgi-2.4.1-SNAP-0910052249/libfcgi/Makefile.am
+===================================================================
+--- fcgi-2.4.1-SNAP-0910052249.orig/libfcgi/Makefile.am
++++ fcgi-2.4.1-SNAP-0910052249/libfcgi/Makefile.am
+@@ -9,8 +9,7 @@ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.h
+ $(INCLUDEDIR)/fcgi_stdio.h \
+ $(INCLUDEDIR)/fcgios.h
+
+-lib_LTLIBRARIES = libfcgi.la @LIBFCGIXX@
+-EXTRA_LTLIBRARIES = libfcgi++.la
++lib_LTLIBRARIES = libfcgi.la libfcgi++.la
+
+ libfcgi_la_SOURCES = $(INCLUDE_FILES) \
+ fcgiapp.c \
+@@ -23,5 +22,5 @@ libfcgi___la_SOURCES = $(INCLUDE_FILES)
+ $(INCLUDEDIR)/fcgio.h \
+ fcgio.cpp
+ libfcgi___la_CFLAGS = @PTHREAD_CFLAGS@
+-libfcgi___la_LDFLAGS = -lfcgi -rpath @libdir@
++libfcgi___la_LIBADD = libfcgi.la
+
diff --git a/dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-poll.patch b/dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-poll.patch
new file mode 100644
index 000000000000..82b9f15a846c
--- /dev/null
+++ b/dev-libs/fcgi/files/fcgi-2.4.1_pre0910052249-poll.patch
@@ -0,0 +1,80 @@
+diff -uNr fcgi-2.4.1-SNAP-0910052249.orig/libfcgi/os_unix.c fcgi-2.4.1-SNAP-0910052249/libfcgi/os_unix.c
+--- fcgi-2.4.1-SNAP-0910052249.orig/libfcgi/os_unix.c 2015-02-06 21:49:40.677082591 -0200
++++ fcgi-2.4.1-SNAP-0910052249/libfcgi/os_unix.c 2015-02-06 21:54:23.147097903 -0200
+@@ -42,6 +42,7 @@
+ #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 shutdownPending = FALSE;
+ static int shutdownNow = FALSE;
+
++static int libfcgiOsClosePollTimeout = 2000;
++static int libfcgiIsAfUnixKeeperPollTimeout = 2000;
++
+ void OS_ShutdownPending()
+ {
+ shutdownPending = TRUE;
+@@ -169,6 +173,16 @@
+ 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;
+@@ -780,19 +794,16 @@
+ {
+ 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);
+ }
+@@ -1142,13 +1153,11 @@
+ */
+ 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);
+ }
+
+ /*
diff --git a/dev-libs/fcgi/metadata.xml b/dev-libs/fcgi/metadata.xml
new file mode 100644
index 000000000000..40684197763e
--- /dev/null
+++ b/dev-libs/fcgi/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>rafaelmartins@gentoo.org</email>
+ <name>Rafael G. Martins</name>
+</maintainer>
+<use>
+ <flag name="html">Install HTML documentation</flag>
+</use>
+</pkgmetadata>