fcgi: import from packages, add myself as maintainer, fix build errors. 100/head
authorJacob Siverskog <jacob@teenageengineering.com>
Thu, 17 Jul 2014 10:29:48 +0000 (12:29 +0200)
committerJacob Siverskog <jacob@teenageengineering.com>
Thu, 17 Jul 2014 10:29:48 +0000 (12:29 +0200)
Signed-off-by: Jacob Siverskog <jacob@teenageengineering.com>
libs/fcgi/Makefile [new file with mode: 0644]
libs/fcgi/patches/100-fcgio-int-type-fix.patch [new file with mode: 0644]
libs/fcgi/patches/110-no_examples.patch [new file with mode: 0644]
libs/fcgi/patches/120-stdio.patch [new file with mode: 0644]

diff --git a/libs/fcgi/Makefile b/libs/fcgi/Makefile
new file mode 100644 (file)
index 0000000..d1d404f
--- /dev/null
@@ -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 <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))
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 (file)
index 0000000..0fbfbfd
--- /dev/null
@@ -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<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)
+     {
diff --git a/libs/fcgi/patches/110-no_examples.patch b/libs/fcgi/patches/110-no_examples.patch
new file mode 100644 (file)
index 0000000..8c14e8a
--- /dev/null
@@ -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 (file)
index 0000000..94c7894
--- /dev/null
@@ -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 <limits.h>
++#include <stdio.h>
+ #include "fcgio.h"
+ using std::streambuf;