--- /dev/null
+#
+# Copyright (C) 2007-2011 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=fcgi
+PKG_VERSION:=2.4.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://www.fastcgi.com/dist/
+PKG_MD5SUM:=d15060a813b91383a9f3c66faf84867e
+
+PKG_FIXUP:=libtool-ucxx
+
+PKG_MAINTAINER:=Jacob Siverskog <jacob@teenageengineering.com>
+
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/uclibc++.mk
+include $(INCLUDE_DIR)/package.mk
+
+define Package/fcgi/Default
+ SECTION:=libs
+ CATEGORY:=Libraries
+ URL:=http://www.fastcgi.com/
+endef
+
+define Package/fcgi
+ $(call Package/fcgi/Default)
+ MENU:=1
+ DEPENDS:= +libpthread
+ TITLE:=Shared library of FastCGI
+endef
+
+define Package/fcgixx
+ $(call Package/fcgi/Default)
+ DEPENDS:=fcgi $(CXX_DEPENDS)
+ TITLE:=Shared library of FastCGI++
+endef
+
+define Package/fcgi/description
+ FastCGI is a language independent, scalable, open extension to
+ CGI that provides high performance without the limitations of
+ server specific APIs.
+endef
+
+TARGET_CFLAGS += $(FPIC)
+
+CONFIGURE_ARGS += \
+ --enable-shared \
+ --enable-static \
+
+CONFIGURE_VARS += \
+ LIBS="-lm" \
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/fastcgi.h $(1)/usr/include/
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/fcgi{app,_config,misc,o,os,_stdio}.h $(1)/usr/include/
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfcgi{,++}.{a,so*} $(1)/usr/lib/
+endef
+
+define Package/fcgi/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/cgi-fcgi $(1)/usr/bin/
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfcgi.so.* $(1)/usr/lib/
+endef
+
+define Package/fcgixx/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfcgi++.so.* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,fcgi))
+$(eval $(call BuildPackage,fcgixx))
--- /dev/null
+Index: fcgi-2.4.0/include/fcgio.h
+===================================================================
+--- fcgi-2.4.0.orig/include/fcgio.h 2007-07-17 13:30:28.000000000 +0200
++++ fcgi-2.4.0/include/fcgio.h 2007-07-17 13:30:28.000000000 +0200
+@@ -77,10 +77,10 @@
+ virtual int sync();
+
+ // Remove and return the current character.
+- virtual int uflow();
++ virtual int_type uflow();
+
+ // Fill the get area (if buffered) and return the current character.
+- virtual int underflow();
++ virtual int_type underflow();
+
+ // Use a buffer. The only reasons that a buffer would be useful is
+ // to support the use of the unget()/putback() or seek() methods. Using
+diff -urN fcgi-2.4.0/libfcgi/fcgio.cpp fcgi-2.4.0.new/libfcgi/fcgio.cpp
+--- fcgi-2.4.0/libfcgi/fcgio.cpp 2002-02-24 21:12:22.000000000 +0100
++++ fcgi-2.4.0.new/libfcgi/fcgio.cpp 2007-08-28 11:22:22.000000000 +0200
+@@ -89,7 +89,7 @@
+ }
+
+ // uflow() removes the char, underflow() doesn't
+-int fcgi_streambuf::uflow()
++std::basic_streambuf<char>::int_type fcgi_streambuf::uflow()
+ {
+ int rv = underflow();
+ if (this->bufsize) gbump(1);
+@@ -97,7 +97,7 @@
+ }
+
+ // Note that the expected behaviour when there is no buffer varies
+-int fcgi_streambuf::underflow()
++std::basic_streambuf<char>::int_type fcgi_streambuf::underflow()
+ {
+ if (this->bufsize)
+ {
--- /dev/null
+diff -urN fcgi-2.4.0/Makefile.am fcgi-2.4.0.new/Makefile.am
+--- fcgi-2.4.0/Makefile.am 2001-12-22 14:05:39.000000000 +0100
++++ fcgi-2.4.0.new/Makefile.am 2007-08-28 11:05:10.000000000 +0200
+@@ -4,7 +4,7 @@
+ # $Id: Makefile.am,v 1.7 2001/12/22 13:05:39 robs Exp $
+ #
+
+-SUBDIRS = libfcgi cgi-fcgi examples include
++SUBDIRS = libfcgi cgi-fcgi include
+
+ include_HEADERS = fcgi_config.h
+
+diff -urN fcgi-2.4.0/Makefile.in fcgi-2.4.0.new/Makefile.in
+--- fcgi-2.4.0/Makefile.in 2003-01-19 18:21:15.000000000 +0100
++++ fcgi-2.4.0.new/Makefile.in 2007-08-28 11:04:55.000000000 +0200
+@@ -93,7 +93,7 @@
+ am__quote = @am__quote@
+ install_sh = @install_sh@
+
+-SUBDIRS = libfcgi cgi-fcgi examples include
++SUBDIRS = libfcgi cgi-fcgi include
+
+ include_HEADERS = fcgi_config.h
+