[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Use a global build configuration file, and rework libxc Makefile for PPC.
# HG changeset patch # User kfraser@xxxxxxxxxxxxxxxxxxxxxxx # Node ID 414dabe82a31841a2eb019f2d76fdbfb392c42b4 # Parent 9e207a5cf589ae6401a88f3391163ff6e9b9a180 Use a global build configuration file, and rework libxc Makefile for PPC. Signed-off-by: Hollis Blanchard <hollisb@xxxxxxxxxx> --- Config.mk | 14 -------- config/ia64.mk | 4 ++ config/x86_32.mk | 9 +++++ config/x86_64.mk | 9 +++++ extras/mini-os/Makefile | 3 + tools/Makefile | 45 ++++++++++++------------- tools/Rules.mk | 2 + tools/libxc/Makefile | 75 +++++++++++++++++-------------------------- tools/libxc/xc_core.c | 2 - tools/libxc/xc_hvm_build.c | 2 - tools/libxc/xc_linux_build.c | 8 ---- tools/libxc/xc_load_elf.c | 8 ---- tools/libxc/xg_private.c | 15 ++++++++ tools/libxc/xg_private.h | 8 ++++ tools/misc/Makefile | 2 - xen/tools/Makefile | 3 + xen/tools/figlet/Makefile | 3 + 17 files changed, 109 insertions(+), 103 deletions(-) diff -r 9e207a5cf589 -r 414dabe82a31 Config.mk --- a/Config.mk Wed May 31 09:30:40 2006 +0100 +++ b/Config.mk Wed May 31 11:31:52 2006 +0100 @@ -39,19 +39,7 @@ CFLAGS += -g CFLAGS += -g endif -ifeq ($(XEN_TARGET_ARCH),x86_32) -CFLAGS += -m32 -march=i686 -endif - -ifeq ($(XEN_TARGET_ARCH),x86_64) -CFLAGS += -m64 -endif - -ifeq ($(XEN_TARGET_ARCH),x86_64) -LIBDIR = lib64 -else -LIBDIR = lib -endif +include $(XEN_ROOT)/config/$(XEN_TARGET_ARCH).mk ifneq ($(EXTRA_PREFIX),) EXTRA_INCLUDES += $(EXTRA_PREFIX)/include diff -r 9e207a5cf589 -r 414dabe82a31 extras/mini-os/Makefile --- a/extras/mini-os/Makefile Wed May 31 09:30:40 2006 +0100 +++ b/extras/mini-os/Makefile Wed May 31 11:31:52 2006 +0100 @@ -1,7 +1,8 @@ debug ?= y debug ?= y pae ?= n -include $(CURDIR)/../../Config.mk +XEN_ROOT = ../.. +include $(XEN_ROOT)/Config.mk # Set TARGET_ARCH override TARGET_ARCH := $(XEN_TARGET_ARCH) diff -r 9e207a5cf589 -r 414dabe82a31 tools/Makefile --- a/tools/Makefile Wed May 31 09:30:40 2006 +0100 +++ b/tools/Makefile Wed May 31 11:31:52 2006 +0100 @@ -1,39 +1,38 @@ XEN_ROOT = ../ XEN_ROOT = ../ include $(XEN_ROOT)/tools/Rules.mk -SUBDIRS := -SUBDIRS += libxc -SUBDIRS += xenstore -SUBDIRS += misc -SUBDIRS += examples -SUBDIRS += xentrace -SUBDIRS += xcutils -SUBDIRS += firmware -SUBDIRS += security -SUBDIRS += console -SUBDIRS += xenmon -SUBDIRS += guest-headers -ifeq ($(VTPM_TOOLS),y) -SUBDIRS += vtpm_manager -SUBDIRS += vtpm -endif -SUBDIRS += xenstat +SUBDIRS-y := +SUBDIRS-y += libxc +SUBDIRS-y += xenstore +SUBDIRS-y += misc +SUBDIRS-y += examples +SUBDIRS-y += xentrace +SUBDIRS-$(CONFIG_X86) += xcutils +SUBDIRS-y += firmware +SUBDIRS-y += security +SUBDIRS-y += console +SUBDIRS-y += xenmon +SUBDIRS-y += guest-headers +SUBDIRS-$(VTPM_TOOLS) += vtpm_manager +SUBDIRS-$(VTPM_TOOLS) += vtpm +SUBDIRS-y += xenstat + # These don't cross-compile ifeq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH)) -SUBDIRS += python -SUBDIRS += pygrub +SUBDIRS-y += python +SUBDIRS-y += pygrub endif .PHONY: all all: check - @set -e; for subdir in $(SUBDIRS); do \ + @set -e; for subdir in $(SUBDIRS-y); do \ $(MAKE) -C $$subdir $@; \ done $(MAKE) ioemu .PHONY: install install: check - @set -e; for subdir in $(SUBDIRS); do \ + @set -e; for subdir in $(SUBDIRS-y); do \ $(MAKE) -C $$subdir $@; \ done $(MAKE) ioemuinstall @@ -41,7 +40,7 @@ install: check .PHONY: clean clean: check_clean - @set -e; for subdir in $(SUBDIRS); do \ + @set -e; for subdir in $(SUBDIRS-y); do \ $(MAKE) -C $$subdir $@; \ done $(MAKE) ioemuclean @@ -55,7 +54,7 @@ check_clean: $(MAKE) -C check clean .PHONY: ioemu ioemuinstall ioemuclean -ifndef XEN_NO_IOEMU +ifdef CONFIG_IOEMU ioemu ioemuinstall ioemuclean: [ -f ioemu/config-host.h ] || \ (cd ioemu; sh ./configure --prefix=usr) diff -r 9e207a5cf589 -r 414dabe82a31 tools/Rules.mk --- a/tools/Rules.mk Wed May 31 09:30:40 2006 +0100 +++ b/tools/Rules.mk Wed May 31 11:31:52 2006 +0100 @@ -4,6 +4,8 @@ all: all: include $(XEN_ROOT)/Config.mk + +CONFIG_$(shell uname -s) := y XEN_XC = $(XEN_ROOT)/tools/python/xen/lowlevel/xc XEN_LIBXC = $(XEN_ROOT)/tools/libxc diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/Makefile --- a/tools/libxc/Makefile Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/Makefile Wed May 31 11:31:52 2006 +0100 @@ -10,43 +10,30 @@ XEN_ROOT = ../.. XEN_ROOT = ../.. include $(XEN_ROOT)/tools/Rules.mk -SRCS := -SRCS += xc_bvtsched.c -SRCS += xc_core.c -SRCS += xc_domain.c -SRCS += xc_evtchn.c -SRCS += xc_misc.c -SRCS += xc_acm.c -SRCS += xc_physdev.c -SRCS += xc_private.c -SRCS += xc_sedf.c -SRCS += xc_csched.c -SRCS += xc_tbuf.c +CTRL_SRCS-y := +CTRL_SRCS-y += xc_bvtsched.c +CTRL_SRCS-y += xc_core.c +CTRL_SRCS-y += xc_domain.c +CTRL_SRCS-y += xc_evtchn.c +CTRL_SRCS-y += xc_misc.c +CTRL_SRCS-y += xc_acm.c +CTRL_SRCS-y += xc_physdev.c +CTRL_SRCS-y += xc_private.c +CTRL_SRCS-y += xc_sedf.c +CTRL_SRCS-y += xc_csched.c +CTRL_SRCS-y += xc_tbuf.c +CTRL_SRCS-$(CONFIG_X86) += xc_ptrace.c xc_ptrace_core.c xc_pagetab.c +CTRL_SRCS-$(CONFIG_Linux) += xc_linux.c -ifeq ($(patsubst x86%,x86,$(XEN_TARGET_ARCH)),x86) -SRCS += xc_ptrace.c -SRCS += xc_ptrace_core.c -SRCS += xc_pagetab.c -endif - -SRCS_Linux += xc_linux.c - -SRCS += $(SRCS_Linux) - -BUILD_SRCS := -BUILD_SRCS += xc_linux_build.c -BUILD_SRCS += xc_load_bin.c -BUILD_SRCS += xc_load_elf.c -BUILD_SRCS += xg_private.c - -ifeq ($(XEN_TARGET_ARCH),ia64) -BUILD_SRCS += xc_ia64_stubs.c -else -BUILD_SRCS += xc_load_aout9.c -BUILD_SRCS += xc_linux_restore.c -BUILD_SRCS += xc_linux_save.c -BUILD_SRCS += xc_hvm_build.c -endif +GUEST_SRCS-y := +GUEST_SRCS-y += xc_linux_build.c +GUEST_SRCS-y += xc_load_bin.c +GUEST_SRCS-y += xc_load_elf.c +GUEST_SRCS-y += xg_private.c +GUEST_SRCS-$(CONFIG_IA64) += xc_ia64_stubs.c +GUEST_SRCS-$(CONFIG_PLAN9) += xc_load_aout9.c +GUEST_SRCS-$(CONFIG_MIGRATE) += xc_linux_restore.c xc_linux_save.c +GUEST_SRCS-$(CONFIG_HVM) += xc_hvm_build.c CFLAGS += -Werror CFLAGS += -fno-strict-aliasing @@ -61,11 +48,11 @@ LDFLAGS += -L. LDFLAGS += -L. DEPS = .*.d -LIB_OBJS := $(patsubst %.c,%.o,$(SRCS)) -PIC_OBJS := $(patsubst %.c,%.opic,$(SRCS)) +CTRL_LIB_OBJS := $(patsubst %.c,%.o,$(CTRL_SRCS-y)) +CTRL_PIC_OBJS := $(patsubst %.c,%.opic,$(CTRL_SRCS-y)) -LIB_BUILD_OBJS := $(patsubst %.c,%.o,$(BUILD_SRCS)) -PIC_BUILD_OBJS := $(patsubst %.c,%.opic,$(BUILD_SRCS)) +GUEST_LIB_OBJS := $(patsubst %.c,%.o,$(GUEST_SRCS-y)) +GUEST_PIC_OBJS := $(patsubst %.c,%.opic,$(GUEST_SRCS-y)) LIB := libxenctrl.a LIB += libxenctrl.so libxenctrl.so.$(MAJOR) libxenctrl.so.$(MAJOR).$(MINOR) @@ -125,7 +112,7 @@ rpm: build # libxenctrl -libxenctrl.a: $(LIB_OBJS) +libxenctrl.a: $(CTRL_LIB_OBJS) $(AR) rc $@ $^ libxenctrl.so: libxenctrl.so.$(MAJOR) @@ -133,12 +120,12 @@ libxenctrl.so.$(MAJOR): libxenctrl.so.$( libxenctrl.so.$(MAJOR): libxenctrl.so.$(MAJOR).$(MINOR) ln -sf $< $@ -libxenctrl.so.$(MAJOR).$(MINOR): $(PIC_OBJS) +libxenctrl.so.$(MAJOR).$(MINOR): $(CTRL_PIC_OBJS) $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-soname -Wl,libxenctrl.so.$(MAJOR) -shared -o $@ $^ # libxenguest -libxenguest.a: $(LIB_BUILD_OBJS) +libxenguest.a: $(GUEST_LIB_OBJS) $(AR) rc $@ $^ libxenguest.so: libxenguest.so.$(MAJOR) @@ -146,7 +133,7 @@ libxenguest.so.$(MAJOR): libxenguest.so. libxenguest.so.$(MAJOR): libxenguest.so.$(MAJOR).$(MINOR) ln -sf $< $@ -libxenguest.so.$(MAJOR).$(MINOR): $(PIC_BUILD_OBJS) libxenctrl.so +libxenguest.so.$(MAJOR).$(MINOR): $(GUEST_PIC_OBJS) libxenctrl.so $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-soname -Wl,libxenguest.so.$(MAJOR) -shared -o $@ $^ -lz -lxenctrl -include $(DEPS) diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/xc_core.c --- a/tools/libxc/xc_core.c Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/xc_core.c Wed May 31 11:31:52 2006 +0100 @@ -1,6 +1,4 @@ #include "xg_private.h" -#define ELFSIZE 32 -#include "xc_elf.h" #include <stdlib.h> #include <unistd.h> diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/xc_hvm_build.c --- a/tools/libxc/xc_hvm_build.c Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/xc_hvm_build.c Wed May 31 11:31:52 2006 +0100 @@ -2,9 +2,9 @@ * xc_hvm_build.c */ +#define ELFSIZE 32 #include <stddef.h> #include "xg_private.h" -#define ELFSIZE 32 #include "xc_elf.h" #include <stdlib.h> #include <unistd.h> diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/xc_linux_build.c --- a/tools/libxc/xc_linux_build.c Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/xc_linux_build.c Wed May 31 11:31:52 2006 +0100 @@ -5,14 +5,6 @@ #include "xg_private.h" #include "xc_private.h" #include <xenctrl.h> - -#if defined(__i386__) -#define ELFSIZE 32 -#endif - -#if defined(__x86_64__) || defined(__ia64__) -#define ELFSIZE 64 -#endif #include "xc_elf.h" #include "xc_aout9.h" diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/xc_load_elf.c --- a/tools/libxc/xc_load_elf.c Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/xc_load_elf.c Wed May 31 11:31:52 2006 +0100 @@ -3,14 +3,6 @@ */ #include "xg_private.h" - -#if defined(__i386__) -#define ELFSIZE 32 -#endif -#if defined(__x86_64__) || defined(__ia64__) -#define ELFSIZE 64 -#endif - #include "xc_elf.h" #include <stdlib.h> diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/xg_private.c --- a/tools/libxc/xg_private.c Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/xg_private.c Wed May 31 11:31:52 2006 +0100 @@ -145,3 +145,18 @@ unsigned long csum_page(void *page) return sum ^ (sum>>32); } + +__attribute__((weak)) int xc_hvm_build( + int xc_handle, + uint32_t domid, + int memsize, + const char *image_name, + unsigned int vcpus, + unsigned int pae, + unsigned int acpi, + unsigned int apic, + unsigned int store_evtchn, + unsigned long *store_mfn) +{ + return -ENOSYS; +} diff -r 9e207a5cf589 -r 414dabe82a31 tools/libxc/xg_private.h --- a/tools/libxc/xg_private.h Wed May 31 09:30:40 2006 +0100 +++ b/tools/libxc/xg_private.h Wed May 31 11:31:52 2006 +0100 @@ -25,6 +25,14 @@ #define DECLARE_DOM0_OP dom0_op_t op #endif +#ifndef ELFSIZE +#include <limits.h> +#if UINT_MAX == ULONG_MAX +#define ELFSIZE 32 +#else +#define ELFSIZE 64 +#endif +#endif char *xc_read_image(const char *filename, unsigned long *size); char *xc_inflate_buffer(const char *in_buf, diff -r 9e207a5cf589 -r 414dabe82a31 tools/misc/Makefile --- a/tools/misc/Makefile Wed May 31 09:30:40 2006 +0100 +++ b/tools/misc/Makefile Wed May 31 11:31:52 2006 +0100 @@ -25,7 +25,7 @@ build: $(TARGETS) build: $(TARGETS) $(MAKE) -C miniterm $(MAKE) -C cpuperf -ifneq ($(XEN_TARGET_ARCH),ia64) +ifeq ($(CONFIG_MBOOTPACK),y) $(MAKE) -C mbootpack endif $(MAKE) -C lomount diff -r 9e207a5cf589 -r 414dabe82a31 xen/tools/Makefile --- a/xen/tools/Makefile Wed May 31 09:30:40 2006 +0100 +++ b/xen/tools/Makefile Wed May 31 11:31:52 2006 +0100 @@ -1,5 +1,6 @@ -include $(BASEDIR)/../Config.mk +XEN_ROOT = $(BASEDIR)/.. +include $(XEN_ROOT)/Config.mk .PHONY: default default: diff -r 9e207a5cf589 -r 414dabe82a31 xen/tools/figlet/Makefile --- a/xen/tools/figlet/Makefile Wed May 31 09:30:40 2006 +0100 +++ b/xen/tools/figlet/Makefile Wed May 31 11:31:52 2006 +0100 @@ -1,5 +1,6 @@ -include $(BASEDIR)/../Config.mk +XEN_ROOT = $(BASEDIR)/.. +include $(XEN_ROOT)/Config.mk figlet: figlet.c $(HOSTCC) -o $@ $< diff -r 9e207a5cf589 -r 414dabe82a31 config/ia64.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/config/ia64.mk Wed May 31 11:31:52 2006 +0100 @@ -0,0 +1,4 @@ +CONFIG_IA64 := y +CONFIG_IOEMU := y + +LIBDIR := lib diff -r 9e207a5cf589 -r 414dabe82a31 config/x86_32.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/config/x86_32.mk Wed May 31 11:31:52 2006 +0100 @@ -0,0 +1,9 @@ +CONFIG_X86 := y +CONFIG_PLAN9 := y +CONFIG_HVM := y +CONFIG_MIGRATE := y +CONFIG_IOEMU := y +CONFIG_MBOOTPACK := y + +CFLAGS += -m32 -march=i686 +LIBDIR := lib diff -r 9e207a5cf589 -r 414dabe82a31 config/x86_64.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/config/x86_64.mk Wed May 31 11:31:52 2006 +0100 @@ -0,0 +1,9 @@ +CONFIG_X86 := y +CONFIG_PLAN9 := y +CONFIG_HVM := y +CONFIG_MIGRATE := y +CONFIG_IOEMU := y +CONFIG_MBOOTPACK := y + +CFLAGS += -m64 +LIBDIR = lib64 _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |