summaryrefslogtreecommitdiffabout
authorMichael Krelin <hacker@klever.net>2005-02-13 21:48:37 (UTC)
committer Michael Krelin <hacker@klever.net>2005-02-13 21:48:37 (UTC)
commitace26447603d3f7ecd82fd3910174f603c2c7464 (patch) (unidiff)
tree3a82346bd7fff177f74424ed61a6a2c6aa7a308e
parent4fa4a0071ef9a04c02f8934b2e1d3b7628a65c80 (diff)
downloadkingate-ace26447603d3f7ecd82fd3910174f603c2c7464.zip
kingate-ace26447603d3f7ecd82fd3910174f603c2c7464.tar.gz
kingate-ace26447603d3f7ecd82fd3910174f603c2c7464.tar.bz2
portabiity improvements
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--configure.ac3
-rw-r--r--src/Makefile.am2
-rw-r--r--src/plaincgi.cc5
3 files changed, 9 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 5ae7b27..b3141f1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,24 +2,27 @@ AC_INIT([kingate], [0.0.1], [kingate-bugs@klever.net])
2AC_CONFIG_SRCDIR([include/kingate/cgi_gateway.h]) 2AC_CONFIG_SRCDIR([include/kingate/cgi_gateway.h])
3AC_CONFIG_HEADER([config.h]) 3AC_CONFIG_HEADER([config.h])
4AM_INIT_AUTOMAKE([dist-bzip2]) 4AM_INIT_AUTOMAKE([dist-bzip2])
5 5
6AC_PROG_INSTALL 6AC_PROG_INSTALL
7AC_PROG_AWK 7AC_PROG_AWK
8AC_PROG_CXX 8AC_PROG_CXX
9AC_PROG_CC 9AC_PROG_CC
10AC_PROG_LIBTOOL 10AC_PROG_LIBTOOL
11 11
12AC_HEADER_STDC 12AC_HEADER_STDC
13AC_CHECK_HEADERS([sys/types.h sys/stat.h]) 13AC_CHECK_HEADERS([sys/types.h sys/stat.h])
14AC_CHECK_DECLS([environ],,,[
15 #include <unistd.h>
16])
14 17
15HAVE_FCGI=false 18HAVE_FCGI=false
16AC_LANG_PUSH(C++) 19AC_LANG_PUSH(C++)
17AC_CHECK_HEADERS([fcgio.h],[ 20AC_CHECK_HEADERS([fcgio.h],[
18 AC_CHECK_LIB(fcgi,FCGX_Init,[ 21 AC_CHECK_LIB(fcgi,FCGX_Init,[
19 LIBS="-lfcgi ${LIBS}" 22 LIBS="-lfcgi ${LIBS}"
20 AC_CHECK_LIB([fcgi++],[main],[ 23 AC_CHECK_LIB([fcgi++],[main],[
21 LIBS="-lfcgi++ ${LIBS}" 24 LIBS="-lfcgi++ ${LIBS}"
22 HAVE_FCGI=true 25 HAVE_FCGI=true
23 ]) 26 ])
24 ]) 27 ])
25]) 28])
diff --git a/src/Makefile.am b/src/Makefile.am
index e5c6778..d516d37 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,19 +1,19 @@
1lib_LTLIBRARIES = libkingate.la libkingate-plaincgi.la 1lib_LTLIBRARIES = libkingate.la libkingate-plaincgi.la
2 2
3if HAVE_FCGI 3if HAVE_FCGI
4lib_LTLIBRARIES += libkingate-fcgi.la 4lib_LTLIBRARIES += libkingate-fcgi.la
5endif 5endif
6 6
7INCLUDES = -I${top_srcdir}/include 7INCLUDES = -I${top_srcdir}/include -I${top_srcdir}
8AM_CXXFLAGS = ${KONFORKA_CFLAGS} 8AM_CXXFLAGS = ${KONFORKA_CFLAGS}
9LDADD = ${KONFORKA_LIBS} 9LDADD = ${KONFORKA_LIBS}
10 10
11libkingate_la_SOURCES = \ 11libkingate_la_SOURCES = \
12 cgi_gateway.cc \ 12 cgi_gateway.cc \
13 cgi_interface.cc \ 13 cgi_interface.cc \
14 util.cc 14 util.cc
15libkingate_la_LDFLAGS = -version-info 1:0:0 15libkingate_la_LDFLAGS = -version-info 1:0:0
16 16
17libkingate_fcgi_la_SOURCES = \ 17libkingate_fcgi_la_SOURCES = \
18 fastcgi.cc 18 fastcgi.cc
19libkingate_fcgi_la_LDFLAGS = -version-info 1:0:0 19libkingate_fcgi_la_LDFLAGS = -version-info 1:0:0
diff --git a/src/plaincgi.cc b/src/plaincgi.cc
index 6934748..1cb7dc6 100644
--- a/src/plaincgi.cc
+++ b/src/plaincgi.cc
@@ -1,17 +1,22 @@
1#include <unistd.h> 1#include <unistd.h>
2#include <sys/types.h> 2#include <sys/types.h>
3#include <sys/stat.h> 3#include <sys/stat.h>
4#include "kingate/plaincgi.h" 4#include "kingate/plaincgi.h"
5#include "kingate/exception.h" 5#include "kingate/exception.h"
6#include "config.h"
7
8#if !HAVE_DECL_ENVIRON
9extern char **environ;
10#endif /* HAVE_DECL_ENVIRON */
6 11
7namespace kingate { 12namespace kingate {
8 13
9 plaincgi_interface::plaincgi_interface() { 14 plaincgi_interface::plaincgi_interface() {
10 for(char **p = environ; *p; p++) { 15 for(char **p = environ; *p; p++) {
11 const char *e = strchr(*p,'='); 16 const char *e = strchr(*p,'=');
12 if(!e){ 17 if(!e){
13 // XXX: check if we have it already? 18 // XXX: check if we have it already?
14 metavars[*p] = string(0); 19 metavars[*p] = string(0);
15 }else{ 20 }else{
16 int l = e-*p; e++; 21 int l = e-*p; e++;
17 // XXX: check if we have it already? 22 // XXX: check if we have it already?