bin_PROGRAMS = nbd-server
-EXTRA_PROGRAMS = nbd-client
+EXTRA_PROGRAMS = nbd-client knbd-client
TESTS = $(srcdir)/simple_test
check_PROGRAMS = nbd-tester-client
nbd_client_SOURCES = nbd-client.c cliserv.h
mv NBD-SERVER.5 nbd-server.5.in
dist-hook:
rm -Rf `find $(distdir) -name '.svn' -type d -print`
+knbd_client-nbd-client.o: nbd-client.c
+ $(KLCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(knbd_client_CPPFLAGS) $(CPPFLAGS) $(knbd_client_CFLAGS) $(CFLAGS) -c -o knbd_client-nbd-client.o nbd-client.c
+knbd-client$(EXEEXT): knbd_client-nbd-client.o $(knbd_client_DEPENDENCIES)
+ @rm -f knbd-client$(EXEEXT)
+ $(LINK) $(knbd_client_LDFLAGS) knbd_client-nbd-client.o $(knbd_client_LDADD) $(LIBS)
]
)
+AC_MSG_CHECKING(for klcc)
+AC_ARG_WITH(
+ klcc,
+ AC_HELP_STRING(--with-klcc,[Build a version of nbd-client against klibc (for initramfs uses). Specify the path to 'klcc' (default autodetected)]),
+ [
+ if test "x$withval" != "x"; then
+ if test -x "$withval"; then
+ KLCC="$withval"
+ sbin_PROGRAMS=knbd-client
+ AC_MSG_RESULT($KLCC)
+ else
+ AC_MSG_ERROR("specified klcc is not executable or does not exist.")
+ fi
+ else
+ if test -x /usr/bin/klcc; then
+ KLCC=/usr/bin/klcc
+ sbin_PROGRAMS=knbd-client
+ AC_MSG_RESULT($KLCC)
+ else
+ AC_MSG_ERROR("klcc not found! Please specify it as a parameter to the --with-klcc option");
+ fi
+ fi
+ ],
+ [ if test -x /usr/bin/klcc; then
+ sbin_PROGRAMS=knbd-client
+ KLCC=/usr/bin/klcc
+ AC_MSG_RESULT($KLCC)
+ else
+ AC_MSG_RESULT(not found)
+ fi
+ ]
+)
+AC_SUBST(KLCC)
+
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_FUNC_SETVBUF_REVERSED
AC_MSG_CHECKING(whether client should be built)
case $host_os in
- linux*) sbin_PROGRAMS=nbd-client
+ linux*) sbin_PROGRAMS="$sbin_PROGRAMS nbd-client"
AC_MSG_RESULT(yes)
;;
*) AC_MSG_RESULT(no) ;;
#include <errno.h>
#include <string.h>
#include <fcntl.h>
+#include <syslog.h>
#include <unistd.h>
#include <sys/ioctl.h>
/* asm/types defines __u??, at least on my system */
#include <asm/types.h>
-#define u32 __u32
-#define u64 __u64
+#define MY_NAME "gznbd"
/* these headers take care of endianness */
#include "../config.h"