mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
make vhd-util cross build work
This commit is contained in:
parent
29147fa0b0
commit
c26de0b3e1
@ -1,17 +1,21 @@
|
||||
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
|
||||
SUBDIRS-y += drivers
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
|
||||
|
||||
all:
|
||||
for subdir in $(SUBDIRS-y); do \
|
||||
$(MAKE) -C $$subdir all; \
|
||||
done
|
||||
|
||||
|
||||
clean:
|
||||
rm -rf *.a *.so *.o *.rpm $(LIB) *~ $(DEPS) TAGS
|
||||
for subdir in $(SUBDIRS-y); do \
|
||||
$(MAKE) -C $$subdir clean; \
|
||||
done
|
||||
|
||||
.PHONY: all clean install
|
||||
all clean install: %: subdirs-%
|
||||
rm -rf *.a *.so *.o *.rpm $(LIB) *~
|
||||
|
||||
.PHONY: all clean
|
||||
|
||||
@ -35,7 +35,7 @@
|
||||
#define VHD_JOURNAL_DATA 0x02
|
||||
|
||||
#define VHD_JOURNAL_HEADER_COOKIE "vjournal"
|
||||
#define VHD_JOURNAL_ENTRY_COOKIE 0xaaaa12344321aaaa
|
||||
#define VHD_JOURNAL_ENTRY_COOKIE 0xaaaa12344321aaaaLLU
|
||||
|
||||
typedef struct vhd_journal_header {
|
||||
char cookie[8];
|
||||
|
||||
@ -1,11 +1,9 @@
|
||||
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
|
||||
|
||||
@ -1,13 +1,8 @@
|
||||
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
|
||||
@ -17,40 +12,30 @@ 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: subdirs-all build
|
||||
all: libs 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 $(LDFLAGS) $(LIBS)
|
||||
$(CC) $(CFLAGS) -o vhd-util vhd-util.o lib/libvhd.a $(LDFLAGS) $(LIBS)
|
||||
|
||||
vhd-update: vhd-update.o $(LIBS_DEPENDS)
|
||||
$(CC) $(CFLAGS) -o vhd-update vhd-update.o $(LDFLAGS) $(LIBS)
|
||||
$(CC) $(CFLAGS) -o vhd-update vhd-update.o lib/libvhd.a $(LDFLAGS) $(LIBS)
|
||||
|
||||
install: all
|
||||
$(MAKE) subdirs-install
|
||||
$(INSTALL_DIR) -p $(DESTDIR)$(INST_DIR)
|
||||
$(INSTALL_PROG) $(IBIN) $(DESTDIR)$(INST_DIR)
|
||||
libs:
|
||||
$(MAKE) -C lib all
|
||||
|
||||
clean: subdirs-clean
|
||||
clean:
|
||||
rm -rf *.o *~ $(DEPS) $(IBIN)
|
||||
$(MAKE) -C lib clean
|
||||
|
||||
.PHONY: all build clean install vhd-util vhd-update
|
||||
PHONY: all clean vhd-util vhd-update lib
|
||||
|
||||
-include $(DEPS)
|
||||
|
||||
@ -1,17 +1,13 @@
|
||||
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 := $(BLKTAP_ROOT)/lvm/lvm-util.o
|
||||
LVM-UTIL-OBJ := ../../lvm/lvm-util.o
|
||||
|
||||
LIBVHD-BUILD := libvhd.a
|
||||
|
||||
INST-DIR = $(LIBDIR)
|
||||
|
||||
CFLAGS += -m32
|
||||
CFLAGS += -Werror
|
||||
CFLAGS += -Wno-unused
|
||||
CFLAGS += -I../../include
|
||||
@ -48,25 +44,14 @@ 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)
|
||||
|
||||
|
||||
@ -323,7 +323,7 @@ vhd_validate_header(vhd_header_t *header)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (header->data_offset != 0xFFFFFFFFFFFFFFFF) {
|
||||
if (header->data_offset != 0xFFFFFFFFFFFFFFFFLLU) {
|
||||
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 = 0xFFFFFFFFFFFFFFFF;
|
||||
ctx->footer.data_offset = 0xFFFFFFFFFFFFFFFFLLU;
|
||||
strcpy(ctx->footer.crtr_app, "tap");
|
||||
blk_uuid_generate(&ctx->footer.uuid);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user