diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2008-01-26 10:38:44 +0000 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2008-01-26 10:38:44 +0000 |
commit | be5fbf9a7fecc31c192ca0c547a1f6b864d7aa05 (patch) | |
tree | 9e7ea5294656ebe1b5e31904644a4cf5560c68f4 /tools | |
parent | bc4a5b7bf50bf466cfc63f20a3907d904d5f0cdf (diff) | |
download | xen-be5fbf9a7fecc31c192ca0c547a1f6b864d7aa05.tar.gz xen-be5fbf9a7fecc31c192ca0c547a1f6b864d7aa05.tar.bz2 xen-be5fbf9a7fecc31c192ca0c547a1f6b864d7aa05.zip |
Move generation of public header hierarchy into the tools.
This patch merges the two versions of public header generation
currently used in the build into one.
Signed-off-by: Bastian Blank <waldi@debian.org>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/Makefile | 1 | ||||
-rw-r--r-- | tools/Rules.mk | 24 | ||||
-rw-r--r-- | tools/blktap/drivers/Makefile | 2 | ||||
-rw-r--r-- | tools/blktap/lib/Makefile | 2 | ||||
-rw-r--r-- | tools/console/Makefile | 1 | ||||
-rw-r--r-- | tools/flask/libflask/Makefile | 2 | ||||
-rw-r--r-- | tools/flask/loadpolicy/Makefile | 1 | ||||
-rw-r--r-- | tools/include/Makefile | 40 | ||||
-rw-r--r-- | tools/include/xen-foreign/Makefile | 45 | ||||
-rw-r--r-- | tools/ioemu/Makefile.target | 1 | ||||
-rw-r--r-- | tools/libxc/Makefile | 6 | ||||
-rw-r--r-- | tools/misc/Makefile | 1 | ||||
-rw-r--r-- | tools/python/setup.py | 1 | ||||
-rw-r--r-- | tools/xcutils/Makefile | 2 | ||||
-rw-r--r-- | tools/xenmon/Makefile | 1 | ||||
-rw-r--r-- | tools/xenstat/libxenstat/Makefile | 2 | ||||
-rw-r--r-- | tools/xenstore/Makefile | 1 | ||||
-rw-r--r-- | tools/xentrace/Makefile | 1 |
18 files changed, 103 insertions, 31 deletions
diff --git a/tools/Makefile b/tools/Makefile index fddf7e5801..d75b35cfab 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -2,6 +2,7 @@ XEN_ROOT = ../ include $(XEN_ROOT)/tools/Rules.mk SUBDIRS-y := +SUBDIRS-y += include SUBDIRS-y += libxc SUBDIRS-y += flask SUBDIRS-y += xenstore diff --git a/tools/Rules.mk b/tools/Rules.mk index ec121f645e..007a844af9 100644 --- a/tools/Rules.mk +++ b/tools/Rules.mk @@ -5,6 +5,7 @@ all: include $(XEN_ROOT)/Config.mk +XEN_INCLUDE = $(XEN_ROOT)/tools/include XEN_XC = $(XEN_ROOT)/tools/python/xen/lowlevel/xc XEN_LIBXC = $(XEN_ROOT)/tools/libxc XEN_XENSTORE = $(XEN_ROOT)/tools/xenstore @@ -37,26 +38,3 @@ $(eval $(check-y)) %.o: %.cc $(CC) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $< -.PHONY: mk-symlinks - -mk-symlinks: - mkdir -p xen/sys - ( cd xen/sys && \ - ln -sf ../../$(XEN_ROOT)/tools/include/$(XEN_OS)/*.h . ) - mkdir -p xen - ( cd xen && ln -sf ../$(XEN_ROOT)/xen/include/public/*.h . ) - mkdir -p xen/hvm - ( cd xen/hvm && ln -sf ../../$(XEN_ROOT)/xen/include/public/hvm/*.h . ) - mkdir -p xen/io - ( cd xen/io && ln -sf ../../$(XEN_ROOT)/xen/include/public/io/*.h . ) - mkdir -p xen/xsm - ( cd xen/xsm && ln -sf ../../$(XEN_ROOT)/xen/include/public/xsm/*.h . ) - mkdir -p xen/arch-x86 - ( cd xen/arch-x86 && ln -sf ../../$(XEN_ROOT)/xen/include/public/arch-x86/*.h . ) - mkdir -p xen/arch-ia64 - ( cd xen/arch-ia64 && ln -sf ../../$(XEN_ROOT)/xen/include/public/arch-ia64/*.h . ) - mkdir -p xen/foreign - ( cd xen/foreign && ln -sf ../../$(XEN_ROOT)/xen/include/public/foreign/Makefile . ) - ( cd xen/foreign && ln -sf ../../$(XEN_ROOT)/xen/include/public/foreign/reference.size . ) - ( cd xen/foreign && ln -sf ../../$(XEN_ROOT)/xen/include/public/foreign/*.py . ) - $(MAKE) -C xen/foreign diff --git a/tools/blktap/drivers/Makefile b/tools/blktap/drivers/Makefile index cfd41f6498..5376b6904b 100644 --- a/tools/blktap/drivers/Makefile +++ b/tools/blktap/drivers/Makefile @@ -1,7 +1,7 @@ XEN_ROOT = ../../.. include $(XEN_ROOT)/tools/Rules.mk -INCLUDES += -I.. -I../lib +INCLUDES += -I.. -I../lib -I$(XEN_INCLUDE) IBIN = blktapctrl tapdisk QCOW_UTIL = img2qcow qcow2raw qcow-create diff --git a/tools/blktap/lib/Makefile b/tools/blktap/lib/Makefile index 008baac776..ce6342c153 100644 --- a/tools/blktap/lib/Makefile +++ b/tools/blktap/lib/Makefile @@ -5,7 +5,7 @@ MAJOR = 3.0 MINOR = 0 SONAME = libblktap.so.$(MAJOR) -INCLUDES += -I. -I.. -I $(XEN_LIBXC) -I $(XEN_XENSTORE) +INCLUDES += -I. -I.. -I $(XEN_LIBXC) -I $(XEN_XENSTORE) -I$(XEN_INCLUDE) LIBS := -lxenstore diff --git a/tools/console/Makefile b/tools/console/Makefile index 4ee3d0a816..85c2ad8574 100644 --- a/tools/console/Makefile +++ b/tools/console/Makefile @@ -8,6 +8,7 @@ CFLAGS += -Werror CFLAGS += -I $(XEN_LIBXC) CFLAGS += -I $(XEN_XENSTORE) +CFLAGS += -I $(XEN_INCLUDE) BIN = xenconsoled xenconsole diff --git a/tools/flask/libflask/Makefile b/tools/flask/libflask/Makefile index b6c086c0c2..8c085b929b 100644 --- a/tools/flask/libflask/Makefile +++ b/tools/flask/libflask/Makefile @@ -11,7 +11,7 @@ SRCS += flask_op.c CFLAGS += -Werror CFLAGS += -fno-strict-aliasing -CFLAGS += $(INCLUDES) -I./include -I$(XEN_LIBXC) +CFLAGS += $(INCLUDES) -I./include -I$(XEN_LIBXC) -I$(XEN_INCLUDE) # Get gcc to generate the dependencies for us. CFLAGS += -Wp,-MD,.$(@F).d diff --git a/tools/flask/loadpolicy/Makefile b/tools/flask/loadpolicy/Makefile index bb0ead6846..9845222759 100644 --- a/tools/flask/loadpolicy/Makefile +++ b/tools/flask/loadpolicy/Makefile @@ -15,6 +15,7 @@ BASECFLAGS+= $(PROFILE) BASECFLAGS+= -I$(LIBXC_ROOT) BASECFLAGS+= -I$(LIBFLASK_ROOT)/include BASECFLAGS+= -I. +BASECFLAGS+= -I$(XEN_INCLUDE) CFLAGS += $(BASECFLAGS) LDFLAGS += $(PROFILE) -L$(XEN_LIBXC) -L$(LIBFLASK_ROOT) diff --git a/tools/include/Makefile b/tools/include/Makefile new file mode 100644 index 0000000000..47a72a8aa7 --- /dev/null +++ b/tools/include/Makefile @@ -0,0 +1,40 @@ +XEN_ROOT = ../.. +include $(XEN_ROOT)/tools/Rules.mk + +.PHONY: all +all: + $(MAKE) .dir + +.dir: + @rm -rf xen + mkdir xen + ln -sf ../$(XEN_ROOT)/xen/include/public/COPYING xen + ln -sf $(addprefix ../,$(wildcard $(XEN_ROOT)/xen/include/public/*.h)) xen + ln -sf $(addprefix ../$(XEN_ROOT)/xen/include/public/,arch-ia64 arch-x86 hvm io xsm) xen + ln -sf ../$(XEN_OS) xen/sys + $(MAKE) -C xen-foreign + ln -s ../xen-foreign xen/foreign + touch $@ + +.PHONY: install +install: all + $(INSTALL_DIR) $(DESTDIR)$(INCLUDEDIR)/xen/arch-ia64 + $(INSTALL_DIR) $(DESTDIR)$(INCLUDEDIR)/xen/arch-x86 + $(INSTALL_DIR) $(DESTDIR)$(INCLUDEDIR)/xen/foreign + $(INSTALL_DIR) $(DESTDIR)$(INCLUDEDIR)/xen/hvm + $(INSTALL_DIR) $(DESTDIR)$(INCLUDEDIR)/xen/io + $(INSTALL_DIR) $(DESTDIR)$(INCLUDEDIR)/xen/xsm + $(INSTALL_DATA) xen/COPYING $(DESTDIR)$(INCLUDEDIR)/xen + $(INSTALL_DATA) xen/*.h $(DESTDIR)$(INCLUDEDIR)/xen + $(INSTALL_DATA) xen/arch-ia64/*.h $(DESTDIR)$(INCLUDEDIR)/xen/arch-x86 + $(INSTALL_DATA) xen/arch-x86/*.h $(DESTDIR)$(INCLUDEDIR)/xen/arch-x86 + $(INSTALL_DATA) xen/foreign/*.h $(DESTDIR)$(INCLUDEDIR)/xen/foreign + $(INSTALL_DATA) xen/hvm/*.h $(DESTDIR)$(INCLUDEDIR)/xen/hvm + $(INSTALL_DATA) xen/io/*.h $(DESTDIR)$(INCLUDEDIR)/xen/io + $(INSTALL_DATA) xen/xsm/*.h $(DESTDIR)$(INCLUDEDIR)/xen/xsm + +.PHONY: clean +clean: + rm -rf xen .dir + $(MAKE) -C xen-foreign clean + diff --git a/tools/include/xen-foreign/Makefile b/tools/include/xen-foreign/Makefile new file mode 100644 index 0000000000..394edb602e --- /dev/null +++ b/tools/include/xen-foreign/Makefile @@ -0,0 +1,45 @@ +XEN_ROOT=../../.. +include $(XEN_ROOT)/Config.mk + +ROOT = $(XEN_ROOT)/xen/include/public/foreign +#VPATH = $(ROOT) +HOSTCFLAGS += -I$(ROOT) + +MKHEADER_PY = $(ROOT)/mkheader.py + +architectures := x86_32 x86_64 ia64 +headers := $(patsubst %, %.h, $(architectures)) +scripts := $(wildcard *.py) + +.PHONY: all clean check-headers +all: $(headers) check-headers + +clean: + rm -f $(headers) + rm -f checker checker.c + rm -f *.pyc *.o *~ + +ifeq ($(CROSS_COMPILE)$(XEN_TARGET_ARCH),$(XEN_COMPILE_ARCH)) +checker: checker.c $(headers) + $(HOSTCC) $(HOSTCFLAGS) -o $@ $< + +check-headers: checker + ./checker > tmp.size + diff -u $(ROOT)/reference.size tmp.size + rm tmp.size +else +check-headers: + @echo "cross build: skipping check" +endif + +x86_32.h: $(ROOT)/mkheader.py ../xen/arch-x86/xen-x86_32.h ../xen/arch-x86/xen.h ../xen/xen.h + python $< $* $@ $(filter %.h,$^) + +x86_64.h: $(ROOT)/mkheader.py ../xen/arch-x86/xen-x86_64.h ../xen/arch-x86/xen.h ../xen/xen.h + python $< $* $@ $(filter %.h,$^) + +ia64.h: $(ROOT)/mkheader.py ../xen/arch-ia64.h ../xen/xen.h + python $< $* $@ $(filter %.h,$^) + +checker.c: $(ROOT)/mkchecker.py + python $< $(XEN_TARGET_ARCH) $@ $(architectures) diff --git a/tools/ioemu/Makefile.target b/tools/ioemu/Makefile.target index c3bef46761..ebd691b5f0 100644 --- a/tools/ioemu/Makefile.target +++ b/tools/ioemu/Makefile.target @@ -18,6 +18,7 @@ VPATH=$(SRC_PATH):$(TARGET_PATH):$(SRC_PATH)/hw:$(SRC_PATH)/audio CPPFLAGS=-I. -I.. -I$(TARGET_PATH) -I$(SRC_PATH) CPPFLAGS+= -I$(XEN_ROOT)/tools/libxc CPPFLAGS+= -I$(XEN_ROOT)/tools/xenstore +CPPFLAGS+= -I$(XEN_ROOT)/tools/include ifdef CONFIG_DARWIN_USER VPATH+=:$(SRC_PATH)/darwin-user CPPFLAGS+=-I$(SRC_PATH)/darwin-user -I$(SRC_PATH)/darwin-user/$(TARGET_ARCH) diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile index e71b7a4e9e..d0b1168366 100644 --- a/tools/libxc/Makefile +++ b/tools/libxc/Makefile @@ -50,7 +50,7 @@ GUEST_SRCS-$(CONFIG_POWERPC) += xc_dom_powerpc.c -include $(XEN_TARGET_ARCH)/Makefile CFLAGS += -Werror -Wmissing-prototypes -CFLAGS += $(INCLUDES) -I. -I../xenstore +CFLAGS += $(INCLUDES) -I. -I../xenstore -I../include # Needed for posix_fadvise64() in xc_linux.c CFLAGS-$(CONFIG_Linux) += -D_GNU_SOURCE @@ -80,7 +80,7 @@ LIB += libxenguest.so libxenguest.so.$(MAJOR) libxenguest.so.$(MAJOR).$(MINOR) all: build .PHONY: build -build: check-for-zlib mk-symlinks +build: check-for-zlib $(MAKE) $(LIB) .PHONY: check-for-zlib @@ -114,7 +114,7 @@ TAGS: .PHONY: clean clean: - rm -rf *.rpm $(LIB) *~ $(DEPS) xen \ + rm -rf *.rpm $(LIB) *~ $(DEPS) \ $(CTRL_LIB_OBJS) $(CTRL_PIC_OBJS) \ $(GUEST_LIB_OBJS) $(GUEST_PIC_OBJS) diff --git a/tools/misc/Makefile b/tools/misc/Makefile index 62f2acf5f0..e0b38ee20e 100644 --- a/tools/misc/Makefile +++ b/tools/misc/Makefile @@ -5,6 +5,7 @@ CFLAGS += -Werror INCLUDES += -I $(XEN_XC) INCLUDES += -I $(XEN_LIBXC) +INCLUDES += -I $(XEN_INCLUDE) CFLAGS += $(INCLUDES) HDRS = $(wildcard *.h) diff --git a/tools/python/setup.py b/tools/python/setup.py index 68ce0070d4..0afc168b66 100644 --- a/tools/python/setup.py +++ b/tools/python/setup.py @@ -8,6 +8,7 @@ extra_compile_args = [ "-fno-strict-aliasing", "-Werror" ] include_dirs = [ XEN_ROOT + "/tools/libxc", XEN_ROOT + "/tools/xenstore", + XEN_ROOT + "/tools/include", ] library_dirs = [ XEN_ROOT + "/tools/libxc", diff --git a/tools/xcutils/Makefile b/tools/xcutils/Makefile index 9d70df4fba..4c004750bf 100644 --- a/tools/xcutils/Makefile +++ b/tools/xcutils/Makefile @@ -13,7 +13,7 @@ include $(XEN_ROOT)/tools/Rules.mk PROGRAMS_INSTALL_DIR = $(LIBDIR)/xen/bin -INCLUDES += -I $(XEN_LIBXC) -I $(XEN_XENSTORE) +INCLUDES += -I $(XEN_LIBXC) -I $(XEN_XENSTORE) -I$(XEN_INCLUDE) CFLAGS += -Werror CFLAGS += $(INCLUDES) diff --git a/tools/xenmon/Makefile b/tools/xenmon/Makefile index ef0b36227c..886d5b2d02 100644 --- a/tools/xenmon/Makefile +++ b/tools/xenmon/Makefile @@ -16,6 +16,7 @@ include $(XEN_ROOT)/tools/Rules.mk CFLAGS += -Werror CFLAGS += -I $(XEN_XC) CFLAGS += -I $(XEN_LIBXC) +CFLAGS += -I $(XEN_INCLUDE) LDFLAGS += -L $(XEN_LIBXC) BIN = xentrace_setmask xenbaked diff --git a/tools/xenstat/libxenstat/Makefile b/tools/xenstat/libxenstat/Makefile index 69cbf2fca7..f60ec7872e 100644 --- a/tools/xenstat/libxenstat/Makefile +++ b/tools/xenstat/libxenstat/Makefile @@ -36,7 +36,7 @@ SONAME_FLAGS=-Wl,$(SONAME_LDFLAG) -Wl,libxenstat.so.$(MAJOR) WARN_FLAGS=-Wall -Werror -CFLAGS+=-Isrc -I$(XEN_LIBXC) -I$(XEN_XENSTORE) +CFLAGS+=-Isrc -I$(XEN_LIBXC) -I$(XEN_XENSTORE) -I$(XEN_INCLUDE) LDFLAGS+=-Lsrc -L$(XEN_XENSTORE)/ -L$(XEN_LIBXC)/ LDLIBS-y = -lxenstore -lxenctrl LDLIBS-$(CONFIG_SunOS) += -lkstat diff --git a/tools/xenstore/Makefile b/tools/xenstore/Makefile index 1fbd42ce12..3b31e9a4b1 100644 --- a/tools/xenstore/Makefile +++ b/tools/xenstore/Makefile @@ -13,6 +13,7 @@ PROG_DEP = .*.d BASECFLAGS+= $(PROFILE) BASECFLAGS+= -I$(XEN_ROOT)/tools/libxc BASECFLAGS+= -I. +BASECFLAGS+= -I$(XEN_INCLUDE) CFLAGS += $(BASECFLAGS) LDFLAGS += $(PROFILE) -L$(XEN_LIBXC) diff --git a/tools/xentrace/Makefile b/tools/xentrace/Makefile index 022f01e08a..e4f27c673d 100644 --- a/tools/xentrace/Makefile +++ b/tools/xentrace/Makefile @@ -5,6 +5,7 @@ CFLAGS += -Werror CFLAGS += -I $(XEN_XC) CFLAGS += -I $(XEN_LIBXC) +CFLAGS += -I $(XEN_INCLUDE) HDRS = $(wildcard *.h) OBJS = $(patsubst %.c,%.o,$(wildcard *.c)) |