From 79dacfacb5eb6b818843bd273ad8c769b6393909 Mon Sep 17 00:00:00 2001 From: anthony Date: Fri, 4 Mar 2011 17:19:36 -0800 Subject: [PATCH] Revert "make vhd-util cross build work" This reverts commit c26de0b3e15ab5155b8fe62d729e7e2182404667. --- tools/vhd-tools/Makefile | 26 ++++++++----------- tools/vhd-tools/include/libvhd-journal.h | 2 +- tools/vhd-tools/lvm/Makefile | 4 ++- tools/vhd-tools/vhd/Makefile | 33 +++++++++++++++++------- tools/vhd-tools/vhd/lib/Makefile | 19 ++++++++++++-- tools/vhd-tools/vhd/lib/libvhd.c | 4 +-- 6 files changed, 58 insertions(+), 30 deletions(-) diff --git a/tools/vhd-tools/Makefile b/tools/vhd-tools/Makefile index bbb23317675..2558aa15ae3 100644 --- a/tools/vhd-tools/Makefile +++ b/tools/vhd-tools/Makefile @@ -1,21 +1,17 @@ +XEN_ROOT = ../.. +include $(XEN_ROOT)/tools/Rules.mk + +CFLAGS += $(CFLAGS_libxenctrl) +LDFLAGS += $(LDFLAGS_libxenctrl) + SUBDIRS-y := +SUBDIRS-y += include SUBDIRS-y += lvm SUBDIRS-y += vhd - -%.o: %.c - $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $< - -all: - for subdir in $(SUBDIRS-y); do \ - $(MAKE) -C $$subdir all; \ - done - +SUBDIRS-y += drivers clean: - for subdir in $(SUBDIRS-y); do \ - $(MAKE) -C $$subdir clean; \ - done + rm -rf *.a *.so *.o *.rpm $(LIB) *~ $(DEPS) TAGS - rm -rf *.a *.so *.o *.rpm $(LIB) *~ - -.PHONY: all clean +.PHONY: all clean install +all clean install: %: subdirs-% diff --git a/tools/vhd-tools/include/libvhd-journal.h b/tools/vhd-tools/include/libvhd-journal.h index 04a9a96c6b7..75852523c9f 100644 --- a/tools/vhd-tools/include/libvhd-journal.h +++ b/tools/vhd-tools/include/libvhd-journal.h @@ -35,7 +35,7 @@ #define VHD_JOURNAL_DATA 0x02 #define VHD_JOURNAL_HEADER_COOKIE "vjournal" -#define VHD_JOURNAL_ENTRY_COOKIE 0xaaaa12344321aaaaLLU +#define VHD_JOURNAL_ENTRY_COOKIE 0xaaaa12344321aaaa typedef struct vhd_journal_header { char cookie[8]; diff --git a/tools/vhd-tools/lvm/Makefile b/tools/vhd-tools/lvm/Makefile index 637da0843e4..d5e07b2202d 100644 --- a/tools/vhd-tools/lvm/Makefile +++ b/tools/vhd-tools/lvm/Makefile @@ -1,9 +1,11 @@ +XEN_ROOT = ../../.. +BLKTAP_ROOT := .. +include $(XEN_ROOT)/tools/Rules.mk ifeq ($(LVM_UTIL_TEST),y) TEST := lvm-util endif -CFLAGS += -m32 CFLAGS += -Werror CFLAGS += -Wno-unused CFLAGS += -I../include diff --git a/tools/vhd-tools/vhd/Makefile b/tools/vhd-tools/vhd/Makefile index f83ae681809..48a6e540b13 100644 --- a/tools/vhd-tools/vhd/Makefile +++ b/tools/vhd-tools/vhd/Makefile @@ -1,8 +1,13 @@ +XEN_ROOT=../../.. +BLKTAP_ROOT := .. +include $(XEN_ROOT)/tools/Rules.mk +SUBDIRS-y := +SUBDIRS-y += lib IBIN = vhd-util vhd-update +INST_DIR = $(SBINDIR) -CFLAGS += -m32 CFLAGS += -Werror CFLAGS += -Wno-unused CFLAGS += -I../include @@ -12,30 +17,40 @@ ifeq ($(CONFIG_X86_64),y) CFLAGS += -fPIC endif +ifeq ($(VHD_STATIC),y) +CFLAGS += -static +endif + +LIBS := -Llib -lvhd +ifeq ($(CONFIG_Linux),y) LIBS += -luuid +endif # Get gcc to generate the dependencies for us. CFLAGS += -Wp,-MD,.$(@F).d DEPS = .*.d -all: libs build +all: subdirs-all build build: $(IBIN) +LIBS_DEPENDS := lib/libvhd.so lib/vhd.a +$(LIBS_DEPENDS):subdirs-all vhd-util: vhd-util.o $(LIBS_DEPENDS) - $(CC) $(CFLAGS) -o vhd-util vhd-util.o lib/libvhd.a $(LDFLAGS) $(LIBS) + $(CC) $(CFLAGS) -o vhd-util vhd-util.o $(LDFLAGS) $(LIBS) vhd-update: vhd-update.o $(LIBS_DEPENDS) - $(CC) $(CFLAGS) -o vhd-update vhd-update.o lib/libvhd.a $(LDFLAGS) $(LIBS) + $(CC) $(CFLAGS) -o vhd-update vhd-update.o $(LDFLAGS) $(LIBS) -libs: - $(MAKE) -C lib all +install: all + $(MAKE) subdirs-install + $(INSTALL_DIR) -p $(DESTDIR)$(INST_DIR) + $(INSTALL_PROG) $(IBIN) $(DESTDIR)$(INST_DIR) -clean: +clean: subdirs-clean rm -rf *.o *~ $(DEPS) $(IBIN) - $(MAKE) -C lib clean -PHONY: all clean vhd-util vhd-update lib +.PHONY: all build clean install vhd-util vhd-update -include $(DEPS) diff --git a/tools/vhd-tools/vhd/lib/Makefile b/tools/vhd-tools/vhd/lib/Makefile index d2898cfcc3a..fa5b417619d 100644 --- a/tools/vhd-tools/vhd/lib/Makefile +++ b/tools/vhd-tools/vhd/lib/Makefile @@ -1,13 +1,17 @@ +XEN_ROOT=../../../.. +BLKTAP_ROOT := ../.. +include $(XEN_ROOT)/tools/Rules.mk LIBVHD-MAJOR = 1.0 LIBVHD-MINOR = 0 LIBVHD-SONAME = libvhd.so.$(LIBVHD-MAJOR) -LVM-UTIL-OBJ := ../../lvm/lvm-util.o +LVM-UTIL-OBJ := $(BLKTAP_ROOT)/lvm/lvm-util.o LIBVHD-BUILD := libvhd.a -CFLAGS += -m32 +INST-DIR = $(LIBDIR) + CFLAGS += -Werror CFLAGS += -Wno-unused CFLAGS += -I../../include @@ -44,14 +48,25 @@ LIB-SRCS += atomicio.c LIB-OBJS = $(patsubst %.c,%.o,$(LIB-SRCS)) LIB-OBJS += $(LVM-UTIL-OBJ) +LIBVHD = libvhd.a libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) all: build build: $(LIBVHD-BUILD) libvhd.a: $(LIB-OBJS) + $(CC) $(CFLAGS) -Wl,$(SONAME_LDFLAG),$(LIBVHD-SONAME) $(SHLIB_CFLAGS) \ + $(LDFLAGS) -o libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $(LIBS) $^ + ln -sf libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) libvhd.so.$(LIBVHD-MAJOR) + ln -sf libvhd.so.$(LIBVHD-MAJOR) libvhd.so $(AR) rc $@ $^ +install: all + $(INSTALL_DIR) -p $(DESTDIR)$(INST-DIR) + $(INSTALL_DATA) $(LIBVHD) $(DESTDIR)$(INST-DIR) + ln -sf libvhd.so.$(LIBVHD-MAJOR).$(LIBVHD-MINOR) $(DESTDIR)$(INST-DIR)/libvhd.so.$(LIBVHD-MAJOR) + ln -sf libvhd.so.$(LIBVHD-MAJOR) $(DESTDIR)$(INST-DIR)/libvhd.so + clean: rm -rf *.a *.so* *.o *~ $(DEPS) $(LIBVHD) diff --git a/tools/vhd-tools/vhd/lib/libvhd.c b/tools/vhd-tools/vhd/lib/libvhd.c index d4412d2f9ed..bc9649a6396 100644 --- a/tools/vhd-tools/vhd/lib/libvhd.c +++ b/tools/vhd-tools/vhd/lib/libvhd.c @@ -323,7 +323,7 @@ vhd_validate_header(vhd_header_t *header) return -EINVAL; } - if (header->data_offset != 0xFFFFFFFFFFFFFFFFLLU) { + if (header->data_offset != 0xFFFFFFFFFFFFFFFF) { VHDLOG("invalid header data_offset 0x%016"PRIx64"\n", header->data_offset); return -EINVAL; @@ -2452,7 +2452,7 @@ vhd_initialize_footer(vhd_context_t *ctx, int type, uint64_t size) ctx->footer.geometry = vhd_chs(size); ctx->footer.type = type; ctx->footer.saved = 0; - ctx->footer.data_offset = 0xFFFFFFFFFFFFFFFFLLU; + ctx->footer.data_offset = 0xFFFFFFFFFFFFFFFF; strcpy(ctx->footer.crtr_app, "tap"); blk_uuid_generate(&ctx->footer.uuid); }