diff --git a/libs/fcgi/Makefile b/libs/fcgi/Makefile new file mode 100644 index 0000000000..d1d404f8d1 --- /dev/null +++ b/libs/fcgi/Makefile @@ -0,0 +1,82 @@ +# +# 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 + +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)) diff --git a/libs/fcgi/patches/100-fcgio-int-type-fix.patch b/libs/fcgi/patches/100-fcgio-int-type-fix.patch new file mode 100644 index 0000000000..0fbfbfd227 --- /dev/null +++ b/libs/fcgi/patches/100-fcgio-int-type-fix.patch @@ -0,0 +1,38 @@ +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::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::int_type fcgi_streambuf::underflow() + { + if (this->bufsize) + { diff --git a/libs/fcgi/patches/110-no_examples.patch b/libs/fcgi/patches/110-no_examples.patch new file mode 100644 index 0000000000..8c14e8ad35 --- /dev/null +++ b/libs/fcgi/patches/110-no_examples.patch @@ -0,0 +1,24 @@ +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 + diff --git a/libs/fcgi/patches/120-stdio.patch b/libs/fcgi/patches/120-stdio.patch new file mode 100644 index 0000000000..94c789434b --- /dev/null +++ b/libs/fcgi/patches/120-stdio.patch @@ -0,0 +1,12 @@ +Index: fcgi-2.4.0/libfcgi/fcgio.cpp +=================================================================== +--- fcgi-2.4.0.orig/libfcgi/fcgio.cpp 2014-05-15 10:43:15.153971782 +0200 ++++ fcgi-2.4.0/libfcgi/fcgio.cpp 2014-05-15 10:44:44.037974020 +0200 +@@ -23,6 +23,7 @@ + #endif + + #include ++#include + #include "fcgio.h" + + using std::streambuf;