aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Stabellini <sstabellini@xensource.com>2010-07-20 17:26:38 +0100
committerStefano Stabellini <sstabellini@xensource.com>2010-07-20 17:26:38 +0100
commit5db6016998992e89558c9c3bfc1cddef5c9536e8 (patch)
tree40fb1fb7f002a6e682dafef945a447f838f261bc
parent5d7dda7847a49d110636df99f84813ff5b5ea75e (diff)
downloadxen-5db6016998992e89558c9c3bfc1cddef5c9536e8.tar.gz
xen-5db6016998992e89558c9c3bfc1cddef5c9536e8.tar.bz2
xen-5db6016998992e89558c9c3bfc1cddef5c9536e8.zip
Attached patch takes over some portability fixes from tools/console
to make libxl build on NetBSD. blktapctl is build on Linux only. This will be another patch to finally unbreak libxl. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
-rw-r--r--tools/Rules.mk5
-rw-r--r--tools/libxl/Makefile2
-rw-r--r--tools/libxl/libxl_bootloader.c9
3 files changed, 14 insertions, 2 deletions
diff --git a/tools/Rules.mk b/tools/Rules.mk
index 8a691a9ab0..83250717cd 100644
--- a/tools/Rules.mk
+++ b/tools/Rules.mk
@@ -26,8 +26,13 @@ LDFLAGS_libxenguest = -L$(XEN_LIBXC) -lxenguest
CFLAGS_libxenstore = -I$(XEN_XENSTORE) $(CFLAGS_include)
LDFLAGS_libxenstore = -L$(XEN_XENSTORE) -lxenstore
+ifeq ($(CONFIG_Linux),y)
CFLAGS_libblktapctl = -I$(XEN_BLKTAP2)/control -I$(XEN_BLKTAP2)/include $(CFLAGS_include)
LDFLAGS_libblktapctl = -L$(XEN_BLKTAP2)/control -lblktapctl
+else
+CFLAGS_libblktapctl =
+LDFLAGS_libblktapctl =
+endif
X11_LDPATH = -L/usr/X11R6/$(LIBLEAFDIR)
diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
index 16abd816a8..f88a10a2c6 100644
--- a/tools/libxl/Makefile
+++ b/tools/libxl/Makefile
@@ -15,7 +15,7 @@ CFLAGS += -Werror -Wno-format-zero-length
CFLAGS += -I. -fPIC
CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenguest) $(CFLAGS_libxenstore) $(CFLAGS_libblktapctl)
-LIBS = $(LDFLAGS_libxenctrl) $(LDFLAGS_libxenguest) $(LDFLAGS_libxenstore) $(LDFLAGS_libblktapctl) -lutil
+LIBS = $(LDFLAGS_libxenctrl) $(LDFLAGS_libxenguest) $(LDFLAGS_libxenstore) $(LDFLAGS_libblktapctl) $(UTIL_LIBS)
LIBXL_OBJS-y = osdeps.o libxl_paths.o libxl_bootloader.o
LIBXL_OBJS = flexarray.o libxl.o libxl_dom.o libxl_exec.o libxl_xshelp.o libxl_device.o libxl_internal.o xenguest.o libxl_utils.o $(LIBXL_OBJS-y)
diff --git a/tools/libxl/libxl_bootloader.c b/tools/libxl/libxl_bootloader.c
index e7cf624244..d2da421f9a 100644
--- a/tools/libxl/libxl_bootloader.c
+++ b/tools/libxl/libxl_bootloader.c
@@ -15,9 +15,16 @@
#include "libxl_osdeps.h"
#include <string.h>
-#include <pty.h>
#include <unistd.h>
#include <fcntl.h>
+#include <termios.h>
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+#include <util.h>
+#elif defined(__linux__)
+#include <pty.h>
+#elif defined(__sun__)
+#include <stropts.h>
+#endif
#include <sys/stat.h>
#include <sys/types.h>