1 dnl Configure script for NBD system
2 dnl (c) 1998 Martin Mares <mj@ucw.cz>, (c) 2000 Pavel Machek <pavel@ucw.cz>,
3 dnl (c) 2003-2006 Wouter Verhelst <wouter@debian.org>
4 AC_INIT([nbd],[3.6],[wouter@debian.org])
5 AM_INIT_AUTOMAKE(foreign dist-xz serial-tests)
6 AM_MAINTAINER_MODE([enable])
11 AC_HELP_STRING(--disable-lfs,Disable Large File Support (default on)),
13 if test "x$enableval" = "xyes" ; then
21 AC_MSG_CHECKING([whether Large File Support should be enabled])
22 if test $NBD_LFS -eq 1; then
23 AC_DEFINE(NBD_LFS,1, [Define to 1 if Large File Support should be enabled])
32 AC_HELP_STRING(--enable-syslog,Enable Syslog logging),
34 if test "x$enableval" = "xyes" ; then
43 AC_MSG_CHECKING([whether syslog logging is requested])
44 if test $ISSERVER -eq 1; then
45 AC_DEFINE(ISSERVER,1, [Define to 1 if you want nbd-server to log through syslog])
53 AC_HELP_STRING(--enable-debug,Build a debugging version of the server),
55 if test "x$enableval" = "xyes"; then
64 AC_MSG_CHECKING([whether a debugging version is requested])
65 if test $DODBG -eq 1; then
67 if test $ISSERVER -eq 1; then
68 AC_MSG_ERROR([You requested both syslog logging and a debugging version of the server. Bad idea!])
70 AC_DEFINE(DODBG,1,[Define if you want a debugging version of nbd-server (lots of copious output)])
71 AC_DEFINE(NOFORK,1,[Define if you don't want the nbd-server to fork()])
78 AC_HELP_STRING(--enable-sdp,Build a version of nbd-server with support for the Socket Direct Protocol (SDP). Requires you to build and install a kernel with the InfiniBand patches (default disabled)),
80 if test "x$enableval" = "xyes"; then
81 AC_DEFINE(WITH_SDP, 1, [Define to 1 if you have and want support for the Socket Direct Protocol])
93 AC_CHECK_SIZEOF(unsigned short int)
94 AC_CHECK_SIZEOF(unsigned int)
95 AC_CHECK_SIZEOF(unsigned long int)
96 AC_CHECK_SIZEOF(unsigned long long int)
97 AC_CHECK_FUNCS([llseek alarm gethostbyname inet_ntoa memset socket strerror strstr mkstemp fdatasync])
98 AC_CHECK_HEADERS([linux/falloc.h])
100 if test "x$ac_cv_header_linux_falloc_h" = "xyes"
102 AC_CHECK_DECL(FALLOC_FL_PUNCH_HOLE, [HAVE_FL_PH=yes], [HAVE_FL_PH=no], [[#include <linux/falloc.h>]])
105 AC_MSG_CHECKING([for FALLOC_FL_PUNCH_HOLE support])
106 if test "x$HAVE_FL_PH" = "xyes"
108 AC_DEFINE(HAVE_FALLOC_PH, 1, [Define to 1 if you have FALLOC_FL_PUNCH_HOLE])
111 AC_DEFINE(HAVE_FALLOC_PH, 0, [Define to 1 if you have FALLOC_FL_PUNCH_HOLE])
115 AC_CHECK_FUNC([sync_file_range],
116 [AC_DEFINE([HAVE_SYNC_FILE_RANGE], [sync_file_range(2) is not supported], [sync_file_range(2) is supported])],
119 AC_FUNC_SETVBUF_REVERSED
120 AC_MSG_CHECKING(whether client should be built)
122 linux*) NBD_CLIENT_NAME="nbd-client"
125 *) NBD_CLIENT_NAME=""
129 AC_SUBST(NBD_CLIENT_NAME)
130 AC_SEARCH_LIBS(bind, socket,, AC_MSG_ERROR([Could not find an implementation of the bind() system call]))
131 AC_SEARCH_LIBS(inet_ntoa, nsl,, AC_MSG_ERROR([Could not find an implementation of the inet_ntoa() system call]))
132 AC_SEARCH_LIBS(daemon, resolv,, AC_MSG_ERROR([Could not find an implementation of the daemon() system call]))
133 AC_CHECK_HEADERS([sys/mount.h],,,
134 [[#include <sys/param.h>
136 AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h sys/ioctl.h sys/socket.h syslog.h linux/types.h])
137 AM_PATH_GLIB_2_0(2.26.0, [HAVE_GLIB=yes], AC_MSG_ERROR([Missing glib]))
141 nbd_server_CPPFLAGS=$nbd_server_CPPFLAGS" -DSYSCONFDIR='\"$sysconfdir\"'"
142 AC_SUBST(nbd_server_CPPFLAGS)
143 AC_CONFIG_HEADERS([config.h])
144 AC_CONFIG_FILES([Makefile
154 man/nbd-trdump.1.sh])