]> git.sur5r.net Git - openocd/blobdiff - configure.in
Author: Raúl Sánchez Siles <rsanchezs@infoglobal.es>
[openocd] / configure.in
index 0bb1e9eb9033b53f67cdec7ef780b18de932e540..e46f06f8d9c30035ac94957aa7c864510318a19b 100644 (file)
@@ -1,4 +1,4 @@
-AC_PREREQ(2.59)
+AC_PREREQ(2.60)
 AC_INIT([openocd], [0.2.0-in-development],
        [OpenOCD Mailing List <openocd-development@lists.berlios.de>])
 AC_CONFIG_SRCDIR([src/openocd.c])
@@ -8,14 +8,45 @@ AC_CANONICAL_HOST
 AC_SEARCH_LIBS([ioperm], [ioperm])
 AC_SEARCH_LIBS([dlopen], [dl])
 
+AC_CHECK_HEADERS(arpa/inet.h)
+AC_CHECK_HEADERS(elf.h)
+AC_CHECK_HEADERS(dirent.h)
+AC_CHECK_HEADERS(fcntl.h)
+AC_CHECK_HEADERS(ifaddrs.h)
 AC_CHECK_HEADERS(jtag_minidriver.h)
+AC_CHECK_HEADERS(malloc.h)
+AC_CHECK_HEADERS(netdb.h)
+AC_CHECK_HEADERS(netinet/in.h)
+AC_CHECK_HEADERS(netinet/tcp.h)
+AC_CHECK_HEADERS(pthread.h)
+AC_CHECK_HEADERS(strings.h)
+AC_CHECK_HEADERS(sys/ioctl.h)
 AC_CHECK_HEADERS(sys/param.h)
-AC_CHECK_HEADERS(sys/time.h)
+AC_CHECK_HEADERS(sys/poll.h)
 AC_CHECK_HEADERS(sys/select.h)
-AC_CHECK_HEADERS(elf.h)
-AC_CHECK_HEADERS(strings.h)
-AC_CHECK_HEADERS(stdbool.h)
+AC_CHECK_HEADERS(sys/socket.h)
+AC_CHECK_HEADERS(sys/stat.h)
+AC_CHECK_HEADERS(sys/time.h)
+AC_CHECK_HEADERS(sys/types.h)
+AC_CHECK_HEADERS(unistd.h)
+
+AC_CHECK_HEADERS([net/if.h], [], [], [dnl
+#include <stdio.h>
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# ifdef HAVE_STDLIB_H
+#  include <stdlib.h>
+# endif
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#endif
+])
 
+AC_HEADER_ASSERT
+AC_HEADER_STDBOOL
 AC_HEADER_TIME
 
 AC_C_BIGENDIAN
@@ -240,6 +271,19 @@ if test $debug_usb_comms = yes; then
 fi
 
 
+debug_malloc=no
+AC_ARG_ENABLE(malloc_logging,
+       AS_HELP_STRING([--enable-malloc-logging],
+               [Include free space in logging messages (requires malloc.h).]), 
+       [debug_malloc=$enableval], [])
+
+AC_MSG_CHECKING([whether to enable malloc free space logging]);
+AC_MSG_RESULT($debug_malloc)
+if test $debug_malloc = yes; then
+  AC_DEFINE([_DEBUG_FREE_SPACE_],[1], [Include malloc free space in logging])
+fi
+
+
 AC_ARG_ENABLE(parport,
   AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]), 
   [build_parport=$enableval], [build_parport=no])
@@ -748,6 +792,11 @@ then
 fi
 
 AM_CONFIG_HEADER(config.h)
+AH_BOTTOM([
+#include "system.h"
+#include "replacements.h"
+])
+
 AM_INIT_AUTOMAKE([-Wall -Wno-portability])
 AM_MAINTAINER_MODE
 
@@ -781,14 +830,21 @@ AM_CONDITIONAL(BITQ, test $build_bitq = yes)
 
 AC_LANG_C
 AC_PROG_CC
+AC_PROG_CC_C99
 AM_PROG_CC_C_O
 AC_PROG_RANLIB
+AC_PROG_LIBTOOL
+
+dnl configure checks required for Jim files (these are obsolete w/ C99)
+AC_C_CONST
+AC_TYPE_LONG_LONG_INT
 
-# Look for environ alternatives.  Possibility #1: is environ in unistd.h?
-AC_MSG_CHECKING([for environ in unistd.h])
+# Look for environ alternatives.  Possibility #1: is environ in unistd.h or stdlib.h?
+AC_MSG_CHECKING([for environ in unistd.h and stdlib.h])
 AC_COMPILE_IFELSE([
 #define _GNU_SOURCE
 #include <unistd.h>
+#include <stdlib.h>
 int main(int argc, char **argv) { char **ep = environ; }
   ], [
     AC_MSG_RESULT([yes])
@@ -814,6 +870,7 @@ if test "${has_environ}" != "yes" ; then
      AC_MSG_FAILURE([Could not find 'environ' in unistd.h or available libraries.]) 
 fi
 
+AC_DEFINE([_GNU_SOURCE],[1],[Use GNU C library extensions (e.g. stdndup).])
 
 # set default gcc warnings
 GCC_WARNINGS="-Wall -Wstrict-prototypes -Wformat-security"