diff options
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 82 |
1 files changed, 67 insertions, 15 deletions
diff --git a/configure.in b/configure.in index ca890f76..6c98fe9a 100644 --- a/configure.in +++ b/configure.in | |||
@@ -17,6 +17,13 @@ dnl Figure out how to invoke "install" and what install options to use. | |||
17 | AC_PROG_INSTALL | 17 | AC_PROG_INSTALL |
18 | AC_SUBST(INSTALL) | 18 | AC_SUBST(INSTALL) |
19 | 19 | ||
20 | AC_PROG_CC | ||
21 | AC_PROG_MAKE_SET | ||
22 | AC_PROG_AWK | ||
23 | |||
24 | AC_FUNC_GETLOADAVG | ||
25 | AM_FUNC_STRTOD | ||
26 | AM_WITH_REGEX | ||
20 | AC_PROG_RANLIB | 27 | AC_PROG_RANLIB |
21 | 28 | ||
22 | AC_PATH_PROG(ACLOCAL,aclocal) | 29 | AC_PATH_PROG(ACLOCAL,aclocal) |
@@ -61,10 +68,6 @@ dnl PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/etc:/usr/local/bin:/usr/local/sbin:$ | |||
61 | LDFLAGS="$LDFLAGS -L." | 68 | LDFLAGS="$LDFLAGS -L." |
62 | 69 | ||
63 | dnl Checks for programs. | 70 | dnl Checks for programs. |
64 | AC_PROG_CC | ||
65 | AC_PROG_MAKE_SET | ||
66 | AC_PROG_AWK | ||
67 | |||
68 | AC_PATH_PROG(PYTHON,python) | 71 | AC_PATH_PROG(PYTHON,python) |
69 | AC_PATH_PROG(PERL,perl) | 72 | AC_PATH_PROG(PERL,perl) |
70 | AC_PATH_PROG(SH,sh) | 73 | AC_PATH_PROG(SH,sh) |
@@ -261,6 +264,7 @@ AC_HEADER_STDC | |||
261 | AC_HEADER_TIME | 264 | AC_HEADER_TIME |
262 | AC_HEADER_SYS_WAIT | 265 | AC_HEADER_SYS_WAIT |
263 | AC_CHECK_HEADERS(signal.h strings.h string.h syslog.h unistd.h uio.h errno.h regex.h sys/types.h sys/time.h sys/socket.h sys/loadavg.h) | 266 | AC_CHECK_HEADERS(signal.h strings.h string.h syslog.h unistd.h uio.h errno.h regex.h sys/types.h sys/time.h sys/socket.h sys/loadavg.h) |
267 | AC_CHECK_HEADERS(stdarg.h sys/unistd.h unistd.h ctype.h sys/wait.h stdlib.h) | ||
264 | 268 | ||
265 | dnl Checks for typedefs, structures, and compiler characteristics. | 269 | dnl Checks for typedefs, structures, and compiler characteristics. |
266 | AC_C_CONST | 270 | AC_C_CONST |
@@ -269,17 +273,65 @@ AC_TYPE_PID_T | |||
269 | AC_TYPE_SIZE_T | 273 | AC_TYPE_SIZE_T |
270 | AC_TYPE_SIGNAL | 274 | AC_TYPE_SIGNAL |
271 | 275 | ||
272 | dnl AC_CHECK_MEMBER(struct timeb.millitm,[AC_DEFINE(HAVE_STRUCT_TIMEB_MILLITM)],,[#include <sys/timeb.h>]) | 276 | AC_CHECK_SIZEOF(int,cross) |
277 | AC_CHECK_SIZEOF(long,cross) | ||
278 | AC_CHECK_SIZEOF(short,cross) | ||
273 | 279 | ||
274 | dnl EXTRA_LIBRARIES="libgetopt.a libsnprintf.a" | 280 | AC_CACHE_CHECK([for long long],ac_cv_have_longlong,[ |
275 | dnl noinst_LIBRARIES="libgetopt.a libsnprintf.a" | 281 | AC_TRY_RUN([#include <stdio.h> |
276 | dnl libgetopt_a_SOURCES="getopt.c getopt1.c" | 282 | main() { long long x = 1000000; x *= x; exit(((x/1000000) == 1000000)? 0: 1); }], |
277 | dnl libgetopt_a_DEPENDENCIES=getopt.h | 283 | ac_cv_have_longlong=yes,ac_cv_have_longlong=no,ac_cv_have_longlong=cross)]) |
278 | dnl libsnprintf_a_SOURCES=snprintf.c | 284 | if test x"$ac_cv_have_longlong" = x"yes"; then |
279 | dnl AC_SUBST(noinst_LIBRARIES) | 285 | AC_DEFINE(HAVE_LONGLONG) |
280 | dnl AC_SUBST(libgetopt_a_SOURCES) | 286 | fi |
281 | dnl AC_SUBST(libgetopt_a_DEPENDENCIES) | 287 | |
282 | dnl AC_SUBST(libsnprintf_a_SOURCES) | 288 | # |
289 | # Check if the compiler supports the LL prefix on long long integers. | ||
290 | # AIX needs this. | ||
291 | |||
292 | AC_CACHE_CHECK([for LL suffix on long long integers],ac_cv_compiler_supports_ll, [ | ||
293 | AC_TRY_COMPILE([#include <stdio.h>],[long long i = 0x8000000000LL], | ||
294 | ac_cv_compiler_supports_ll=yes,ac_cv_compiler_supports_ll=no)]) | ||
295 | if test x"$ac_cv_compiler_supports_ll" = x"yes"; then | ||
296 | AC_DEFINE(COMPILER_SUPPORTS_LL) | ||
297 | fi | ||
298 | AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE_VA_COPY,[ | ||
299 | AC_TRY_LINK([#include <stdarg.h> | ||
300 | va_list ap1,ap2;], [__va_copy(ap1,ap2);], | ||
301 | ac_cv_HAVE_VA_COPY=yes,ac_cv_HAVE_VA_COPY=no)]) | ||
302 | if test x"$ac_cv_HAVE_VA_COPY" = x"yes"; then | ||
303 | AC_DEFINE(HAVE_VA_COPY) | ||
304 | fi | ||
305 | |||
306 | AC_CACHE_CHECK([for C99 vsnprintf],ac_cv_HAVE_C99_VSNPRINTF,[ | ||
307 | AC_TRY_RUN([ | ||
308 | #include <sys/types.h> | ||
309 | #include <stdarg.h> | ||
310 | void foo(const char *format, ...) { | ||
311 | va_list ap; | ||
312 | int len; | ||
313 | char buf[5]; | ||
314 | |||
315 | va_start(ap, format); | ||
316 | len = vsnprintf(buf, 0, format, ap); | ||
317 | va_end(ap); | ||
318 | if (len != 5) exit(1); | ||
319 | |||
320 | va_start(ap, format); | ||
321 | len = vsnprintf(0, 0, format, ap); | ||
322 | va_end(ap); | ||
323 | if (len != 5) exit(1); | ||
324 | |||
325 | if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1); | ||
326 | |||
327 | exit(0); | ||
328 | } | ||
329 | main() { foo("hello"); } | ||
330 | ], | ||
331 | ac_cv_HAVE_C99_VSNPRINTF=yes,ac_cv_HAVE_C99_VSNPRINTF=no,ac_cv_HAVE_C99_VSNPRINTF=cross)]) | ||
332 | if test x"$ac_cv_HAVE_C99_VSNPRINTF" = x"yes"; then | ||
333 | AC_DEFINE(HAVE_C99_VSNPRINTF) | ||
334 | fi | ||
283 | 335 | ||
284 | dnl We used to not do long options unless a compatible lib was found | 336 | dnl We used to not do long options unless a compatible lib was found |
285 | dnl Now we provide code and make libgetopt if native is not suitable | 337 | dnl Now we provide code and make libgetopt if native is not suitable |
@@ -302,7 +354,7 @@ AC_CHECK_FUNCS(getopt_long_only,,LIBS="$LIBS -lgetopt" DEPLIBS="$DEPLIBS libgeto | |||
302 | AC_CHECK_FUNC(asprintf,,LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a") | 354 | AC_CHECK_FUNC(asprintf,,LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a") |
303 | 355 | ||
304 | dnl Checks for library functions. | 356 | dnl Checks for library functions. |
305 | AC_CHECK_FUNCS(select socket strdup strstr strtod strtol strtoul gettimeofday) | 357 | AC_CHECK_FUNCS(memmove select socket strdup strstr strtod strtol strtoul gettimeofday) |
306 | 358 | ||
307 | AC_MSG_CHECKING(for type of socket size) | 359 | AC_MSG_CHECKING(for type of socket size) |
308 | AC_TRY_COMPILE([#include <stdlib.h> | 360 | AC_TRY_COMPILE([#include <stdlib.h> |