Commit | Line | Data |
3361128b |
1 | dnl $Id: configure.in,v 1.2 1999/08/02 15:51:05 skimo Exp $ |
0198fd3c |
2 | dnl |
3 | dnl This file is an input file used by the GNU "autoconf" program to |
4 | dnl generate the file "configure", which is run during the build |
5 | dnl to configure the system for the local environment. |
6 | dnl |
7 | |
8 | AC_INIT(libfcgi/fcgiapp.c) |
9 | #-------------------------------------------------------------------- |
10 | # Perform common OMI configuration. This will include: |
11 | # 1) Choosing compiler and associated build options. |
12 | # 2) Checking for various common build associated programs. |
13 | # 3) Determining the best build options for this platform. |
14 | # 4) Checking for certain common header files. |
15 | # 5) Checking for exports/global switch. |
16 | # 6) Importing OMI dependencies (header files, libraries, and binaries). |
17 | # 7) Checking for existence of various system libraries and routines. |
18 | #-------------------------------------------------------------------- |
19 | OMI_CONFIG |
20 | |
21 | AC_CONFIG_HEADER(include/fcgi_config.h) |
22 | AC_MSG_CHECKING(for sun_len in sys/un.h) |
23 | AC_EGREP_HEADER(sun_len, |
24 | sys/un.h, |
25 | AC_MSG_RESULT(yes) |
26 | AC_DEFINE(HAVE_SOCKADDR_UN_SUN_LEN), |
27 | AC_MSG_RESULT(no)) |
28 | |
29 | #-------------------------------------------------------------------- |
30 | # What extra libraries do we need for this platform? |
31 | #-------------------------------------------------------------------- |
32 | |
33 | AC_CHECK_FUNCS(strerror strtol) |
34 | |
35 | AC_REPLACE_FUNCS(strerror strtol) |
36 | |
37 | #-------------------------------------------------------------------- |
38 | # Include sys/select.h if it exists and if it supplies things |
39 | # that appear to be useful and aren't already in sys/types.h. |
40 | # This appears to be true only on the RS/6000 under AIX. Some |
41 | # systems like OSF/1 have a sys/select.h that's of no use, and |
42 | # other systems like SCO UNIX have a sys/select.h that's |
43 | # pernicious. If "fd_set" isn't defined anywhere then set a |
44 | # special flag. |
45 | #-------------------------------------------------------------------- |
46 | |
47 | AC_MSG_CHECKING(for fd_set in in sys/types.h) |
48 | AC_TRY_LINK([#include <sys/types.h>], |
49 | [fd_set readMask, writeMask;], |
50 | AC_MSG_RESULT(yes), |
51 | AC_MSG_RESULT(no) |
52 | AC_MSG_CHECKING(for fd_mask in in sys/select.h) |
53 | AC_HEADER_EGREP(fd_mask, |
54 | sys/select.h, |
55 | AC_MSG_RESULT(yes) |
56 | AC_DEFINE(HAVE_SYS_SELECT_H), |
57 | AC_MSG_RESULT(no) |
58 | AC_DEFINE(NO_FD_SET))) |
59 | |
60 | AC_MSG_CHECKING(for fpos in stdio.h) |
61 | AC_EGREP_HEADER(fpos_t, |
62 | stdio.h, |
63 | AC_MSG_RESULT(yes) |
64 | AC_DEFINE(HAVE_FPOS), |
65 | AC_MSG_RESULT(no)) |
66 | |
67 | AC_HAVE_HEADERS(windows.h) |
3361128b |
68 | AC_HAVE_HEADERS(sys/socket.h, [have_sys_socket=yes]) |
0198fd3c |
69 | AC_HAVE_HEADERS(winsock.h) |
70 | AC_HAVE_HEADERS(netdb.h) |
71 | AC_HAVE_HEADERS(netinet/in.h) |
72 | AC_HAVE_HEADERS(arpa/inet.h) |
73 | AC_HAVE_HEADERS(strings.h) |
74 | AC_HAVE_HEADERS(sys/time.h) |
75 | |
3361128b |
76 | if test "x$have_sys_socket" = "xyes"; then |
77 | AC_MSG_CHECKING(for socklen_t in sys/socket.h) |
78 | AC_EGREP_HEADER(socklen_t, |
79 | sys/socket.h, |
80 | AC_MSG_RESULT(yes) |
81 | AC_DEFINE(HAVE_SOCKLEN), |
82 | AC_MSG_RESULT(no)) |
83 | fi |
84 | |
0198fd3c |
85 | #-------------------------------------------------------------------- |
86 | # Do we need cross-process locking on this platform? |
87 | #-------------------------------------------------------------------- |
88 | AC_MSG_CHECKING("if this machine needs cross-process locking") |
89 | case "`uname -sr`" in |
90 | IRIX\ 5.*) |
91 | AC_DEFINE(USE_LOCKING) |
92 | AC_MSG_RESULT(yes) |
93 | ;; |
94 | SunOS\ 5.*) |
95 | AC_DEFINE(USE_LOCKING) |
96 | AC_MSG_RESULT(yes) |
97 | ;; |
98 | UNIX_System_V\ 4.0) |
99 | AC_DEFINE(USE_LOCKING) |
100 | AC_MSG_RESULT(yes) |
101 | ;; |
102 | *) |
103 | AC_MSG_RESULT(no) |
104 | ;; |
105 | esac |
106 | |
107 | #-------------------------------------------------------------------- |
108 | # Does va_arg(arg, long double) crash the compiler? |
109 | # hpux 9.04 compiler does and so does Stratus FTX (uses HP's compiler) |
110 | #-------------------------------------------------------------------- |
111 | AC_MSG_CHECKING(if va_arg(arg, long double) crashes the compiler) |
112 | AC_TRY_COMPILE([#include <stdarg.h>], |
113 | [long double lDblArg; va_list arg; lDblArg = va_arg(arg, long double);], |
114 | AC_MSG_RESULT(no), |
115 | AC_DEFINE(HAVE_VA_ARG_LONG_DOUBLE_BUG) |
116 | AC_MSG_RESULT(yes)) |
117 | |
118 | #-------------------------------------------------------------------- |
119 | # What's the target system? |
120 | #-------------------------------------------------------------------- |
121 | case "$PLATFORM_CLASS" in |
122 | WINDOWS) |
123 | SYSTEM="win32" |
124 | ;; |
125 | UNIX) |
126 | SYSTEM="unix" |
127 | ;; |
128 | esac |
129 | |
130 | AC_SUBST(SYSTEM) |
131 | AC_OUTPUT(Makefile FastCGI.mak |
132 | libfcgi/Makefile libfcgi/libfcgi.mak |
133 | cgi-fcgi/Makefile cgi-fcgi/cgi-fcgi.mak |
134 | examples/Makefile ) |
135 | |