aboutsummaryrefslogtreecommitdiffstats
path: root/examples/mimas2/example.ucf
blob: 4e31b74abf1059b33e3342c1fbf37c5f3e05a495 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
XEN_ROOT = ../../..
include $(XEN_ROOT)/tools/Rules.mk

INCLUDES += -I.. -I../lib

INSTALL      = install
INSTALL_PROG = $(INSTALL) -m0755
IBIN         = blktapctrl tapdisk
QCOW_UTIL    = img2qcow qcow2raw qcow-create
INSTALL_DIR  = /usr/sbin
LIBAIO_DIR   = ../../libaio/src

CFLAGS   += -fPIC
CFLAGS   += -Wall
CFLAGS   += -Werror
CFLAGS   += -Wno-unused
CFLAGS   += -g3
CFLAGS   += -fno-strict-aliasing
CFLAGS   += -I $(XEN_LIBXC) -I $(LIBAIO_DIR)
CFLAGS   += $(INCLUDES) -I. -I../../xenstore 
CFLAGS   += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
CFLAGS   += -D_GNU_SOURCE

# Get gcc to generate the dependencies for us.
CFLAGS   += -Wp,-MD,.$(@F).d
DEPS     = .*.d

THREADLIB := -lpthread -lz
LIBS      := -L. -L.. -L../lib
LIBS      += -L$(XEN_LIBXC)
LIBS      += -lblktap
LIBS      += -lcrypto
LIBS      += -lz
LIBS      += -L$(XEN_XENSTORE) -lxenstore

AIOLIBS   := $(LIBAIO_DIR)/libaio.a

BLK-OBJS  := block-aio.o 
BLK-OBJS  += block-sync.o 
BLK-OBJS  += block-vmdk.o
BLK-OBJS  += block-ram.o 
BLK-OBJS  += block-qcow.o
BLK-OBJS  += aes.o

all: $(IBIN) qcow-util

LINUX_ROOT := $(wildcard $(XEN_ROOT)/linux-2.6.*-xen-sparse)


blktapctrl: blktapctrl.c
	$(CC) $(CFLAGS) -o blktapctrl $(LIBS) blktapctrl.c

tapdisk: $(BLK-OBJS) tapdisk.c
	$(CC) $(CFLAGS) -o tapdisk $(BLK-OBJS) tapdisk.c \
		$(AIOLIBS) $(LIBS)

.PHONY: qcow-util
qcow-util: img2qcow qcow2raw qcow-create

img2qcow qcow2raw qcow-create: %: $(BLK-OBJS)
	$(CC) $(CFLAGS) -o $* $(BLK-OBJS) $*.c $(AIOLIBS)  $(LIBS)

install: all
	$(INSTALL_PROG) $(IBIN) $(QCOW_UTIL) $(DESTDIR)$(INSTALL_DIR)

clean:
	rm -rf *.o *~ $(DEPS) xen TAGS $(IBIN) $(LIB) $(QCOW_UTIL)

.PHONY: clean install

-include $(DEPS)