1dnl Process this file with autoconf to produce a configure script.
2AC_PREREQ(2.57)
3AC_INIT([netbsd-iscsi],[20111006],[Alistair Crooks <agc@NetBSD.org>])
4
5AC_CONFIG_SRCDIR([src/lib/protocol.c])
6AC_CONFIG_AUX_DIR([buildaux])
7AC_CONFIG_HEADER(include/config.h)
8
9AS_SHELL_SANITIZE
10
11AM_INIT_AUTOMAKE([-Wall -Werror foreign])
12AM_MAINTAINER_MODE
13
14AC_CANONICAL_HOST
15CANONICAL_HOST=$host
16AC_SUBST([CANONICAL_HOST])
17
18dnl Checks for programs.
19AC_PROG_INSTALL
20AC_PROG_CC
21AC_PROG_RANLIB
22AC_PROG_LIBTOOL
23
24dnl Checks for header files.
25AC_HEADER_STDC
26AC_CHECK_HEADERS(sys/types.h sys/param.h sys/stat.h sys/time.h)
27AC_CHECK_HEADERS(sys/mman.h sys/uio.h sys/socket.h sys/time.h sys/vfs.h)
28AC_CHECK_HEADERS(arpa/inet.h netinet/in.h netinet/tcp.h netdb.h poll.h)
29AC_CHECK_HEADERS(asm/byteorder.h sys/bswap.h sys/byteorder.h sys/select.h)
30AC_CHECK_HEADERS(libkern/OSByteOrder.h byteswap.h machine/endian.h)
31AC_CHECK_HEADERS(ctype.h errno.h fcntl.h pthread.h pwd.h signal.h stdint.h)
32AC_CHECK_HEADERS(stdlib.h syslog.h unistd.h string.h stdarg.h utime.h uuid.h)
33
34dnl Checks for typedefs, structures, and compiler characteristics.
35AC_C_CONST
36AC_TYPE_SIZE_T
37AC_CHECK_TYPES(socklen_t,,,[
38#include <sys/socket.h>
39#include <arpa/inet.h>
40])
41AC_CHECK_TYPES([long long, unsigned long long])
42AC_DEFINE_UNQUOTED(HAVE_SOCKLEN_T, $ac_cv_type_socklen_t)
43AC_DEFINE_UNQUOTED(HAVE_LONG_LONG, $ac_cv_type_long_long)
44AC_DEFINE_UNQUOTED(HAVE_UNSIGNED_LONG_LONG, $ac_cv_type_unsigned_long_long)
45
46# Checks for typedefs, structures, and compiler characteristics.
47#
48AC_TYPE_UNSIGNED_LONG_LONG_INT
49AC_TYPE_LONG_LONG_INT
50AC_TYPE_SIZE_T
51AC_TYPE_UINT16_T
52AC_TYPE_UINT32_T
53AC_TYPE_UINT64_T
54AC_TYPE_UINT8_T
55
56dnl check for libraries
57AC_SEARCH_LIBS([gethostbyname], [nsl])
58AC_SEARCH_LIBS([connect], [socket])
59AC_SEARCH_LIBS([inet_aton], [resolv])
60AC_SEARCH_LIBS([pthread_create], [pthread])
61
62dnl Check for functionality
63AC_CHECK_FUNCS(__bswap64 asprintf asnprintf bswap64 daemon fsync_range)
64AC_CHECK_FUNCS(getaddrinfo getnameinfo htobe64 memset bcopy poll snprintf)
65AC_CHECK_FUNCS(strlcpy strtoll syslog uuid_create uuid_to_string vasprintf)
66AC_CHECK_FUNCS(vasprintf vasnprintf vsnprintf)
67
68dnl that's it for now...
69AC_OUTPUT(Makefile)
70AC_OUTPUT(src/Makefile)
71AC_OUTPUT(src/lib/Makefile)
72AC_OUTPUT(src/target/Makefile)
73AC_OUTPUT(src/initiator/Makefile)
74