aboutsummaryrefslogtreecommitdiffstats
path: root/tools/blktap/Makefile
diff options
context:
space:
mode:
authorakw27@arcadians.cl.cam.ac.uk <akw27@arcadians.cl.cam.ac.uk>2005-09-04 21:19:44 +0000
committerakw27@arcadians.cl.cam.ac.uk <akw27@arcadians.cl.cam.ac.uk>2005-09-04 21:19:44 +0000
commit3e2b1c87ba74e8fa69374cda8cf3a110f242e56c (patch)
treea5523ce591530b2070a3a7e2668dfc9ff2517fd9 /tools/blktap/Makefile
parent3ebd771dc380240d3992dbf1960357fc1fdd07ec (diff)
downloadxen-3e2b1c87ba74e8fa69374cda8cf3a110f242e56c.tar.gz
xen-3e2b1c87ba74e8fa69374cda8cf3a110f242e56c.tar.bz2
xen-3e2b1c87ba74e8fa69374cda8cf3a110f242e56c.zip
Updates to blktap driver and user code.
Mostly this makes the tap code work again with all of the changes that have happened to the block drivers recently. We now use a shared page per VBD (to the driver), and handle control information through the store. The taplib interfaces have changed to be based around per-vbd data structures that you can attach arbitrary handlers for. There is also initial code for a user-level blockback driver, which aims to get around the use of loopbacks for file-based vbds. Still plenty of work to do here -- this is a working incremental checkin and I'm away from this for the next four weeks. Signed-off-by: Andrew Warfield <andrew.warfield@cl.cam.ac.uk>
Diffstat (limited to 'tools/blktap/Makefile')
-rw-r--r--tools/blktap/Makefile26
1 files changed, 16 insertions, 10 deletions
diff --git a/tools/blktap/Makefile b/tools/blktap/Makefile
index 0fe5216212..fab85d1adc 100644
--- a/tools/blktap/Makefile
+++ b/tools/blktap/Makefile
@@ -6,7 +6,8 @@ XEN_ROOT = ../..
include $(XEN_ROOT)/tools/Rules.mk
SUBDIRS :=
-SUBDIRS += parallax
+SUBDIRS += ublkback
+#SUBDIRS += parallax
BLKTAP_INSTALL_DIR = /usr/sbin
@@ -14,12 +15,12 @@ INSTALL = install
INSTALL_PROG = $(INSTALL) -m0755
INSTALL_DIR = $(INSTALL) -d -m0755
-INCLUDES += -I. -I $(XEN_LIBXC)
+INCLUDES += -I. -I $(XEN_LIBXC) -I $(XEN_XENSTORE)
LIBS := -lpthread -lz
SRCS :=
-SRCS += blktaplib.c
+SRCS += blktaplib.c xenbus.c blkif.c
CFLAGS += -Wall
CFLAGS += -Werror
@@ -28,17 +29,20 @@ CFLAGS += -Wno-unused
CFLAGS += -g3
CFLAGS += -fno-strict-aliasing
CFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
+# get asprintf():
+CFLAGS += -D _GNU_SOURCE
# Get gcc to generate the dependencies for us.
CFLAGS += -Wp,-MD,.$(@F).d
CFLAGS += $(INCLUDES)
DEPS = .*.d
OBJS = $(patsubst %.c,%.o,$(SRCS))
-IBINS = blkdump
+IBINS :=
+#IBINS += blkdump
LIB = libblktap.so libblktap.so.$(MAJOR) libblktap.so.$(MAJOR).$(MINOR)
-all: mk-symlinks libblktap.so blkdump
+all: mk-symlinks libblktap.so #blkdump
@set -e; for subdir in $(SUBDIRS); do \
$(MAKE) -C $$subdir $@; \
done
@@ -59,7 +63,7 @@ install: all
$(INSTALL_DIR) -p $(DESTDIR)/usr/include
$(INSTALL_PROG) $(LIB) $(DESTDIR)/usr/$(LIBDIR)
$(INSTALL_PROG) blktaplib.h $(DESTDIR)/usr/include
- $(INSTALL_PROG) $(IBINS) $(DESTDIR)$(BLKTAP_INSTALL_DIR)
+ #$(INSTALL_PROG) $(IBINS) $(DESTDIR)$(BLKTAP_INSTALL_DIR)
@set -e; for subdir in $(SUBDIRS); do \
$(MAKE) -C $$subdir $@; \
done
@@ -79,14 +83,16 @@ rpm: all
mv staging/i386/*.rpm .
rm -rf staging
-libblktap.so: $(OBJS)
- $(CC) $(CFLAGS) -Wl,-soname -Wl,$(SONAME) -shared -o \
- libblktap.so.$(MAJOR).$(MINOR) $^ $(LIBS)
+libblktap.so: $(OBJS)
+ $(CC) $(CFLAGS) -Wl,-soname -Wl,$(SONAME) -shared \
+ -L$(XEN_XENSTORE) -l xenstore \
+ -o libblktap.so.$(MAJOR).$(MINOR) $^ $(LIBS)
ln -sf libblktap.so.$(MAJOR).$(MINOR) libblktap.so.$(MAJOR)
ln -sf libblktap.so.$(MAJOR) $@
blkdump: libblktap.so
- $(CC) $(CFLAGS) -o blkdump -L$(XEN_LIBXC) -L. -l blktap blkdump.c
+ $(CC) $(CFLAGS) -o blkdump -L$(XEN_LIBXC) -L. \
+ -l blktap blkdump.c
.PHONY: TAGS clean install mk-symlinks rpm