ia64/xen-unstable

view Config.mk @ 17965:14fd83fe71c3

Add facility to get notification of domain suspend by event channel.
This event channel will be notified when the domain transitions to the
suspended state, which can be much faster than raising VIRQ_DOM_EXC
and waiting for the notification to be propagated via xenstore.

No attempt is made here to prevent multiple subscribers (last one
wins), or to detect that the subscriber has gone away. Userspace tools
should take care.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
author Keir Fraser <keir.fraser@citrix.com>
date Fri Jul 04 12:00:24 2008 +0100 (2008-07-04)
parents 20215b87d0f3
children af555a012e67
line source
1 # -*- mode: Makefile; -*-
3 # A debug build of Xen and tools?
4 debug ?= n
6 XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/ \
7 -e s/i86pc/x86_32/ -e s/amd64/x86_64/)
8 XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH)
9 XEN_OS ?= $(shell uname -s)
11 CONFIG_$(XEN_OS) := y
13 SHELL ?= /bin/sh
15 # Tools to run on system hosting the build
16 HOSTCC = gcc
17 HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer
18 HOSTCFLAGS += -fno-strict-aliasing
20 DISTDIR ?= $(XEN_ROOT)/dist
21 DESTDIR ?= /
23 # Allow phony attribute to be listed as dependency rather than fake target
24 .PHONY: .phony
26 include $(XEN_ROOT)/config/$(XEN_OS).mk
27 include $(XEN_ROOT)/config/$(XEN_TARGET_ARCH).mk
29 ifneq ($(EXTRA_PREFIX),)
30 EXTRA_INCLUDES += $(EXTRA_PREFIX)/include
31 EXTRA_LIB += $(EXTRA_PREFIX)/$(LIBLEAFDIR)
32 endif
34 # cc-option: Check if compiler supports first option, else fall back to second.
35 # Usage: cflags-y += $(call cc-option,$(CC),-march=winchip-c6,-march=i586)
36 cc-option = $(shell if test -z "`$(1) $(2) -S -o /dev/null -xc \
37 /dev/null 2>&1`"; then echo "$(2)"; else echo "$(3)"; fi ;)
39 # cc-ver: Check compiler is at least specified version. Return boolean 'y'/'n'.
40 # Usage: ifeq ($(call cc-ver,$(CC),0x030400),y)
41 cc-ver = $(shell if [ $$((`$(1) -dumpversion | awk -F. \
42 '{ printf "0x%02x%02x%02x", $$1, $$2, $$3}'`)) -ge $$(($(2))) ]; \
43 then echo y; else echo n; fi ;)
45 # cc-ver-check: Check compiler is at least specified version, else fail.
46 # Usage: $(call cc-ver-check,CC,0x030400,"Require at least gcc-3.4")
47 cc-ver-check = $(eval $(call cc-ver-check-closure,$(1),$(2),$(3)))
48 define cc-ver-check-closure
49 ifeq ($$(call cc-ver,$$($(1)),$(2)),n)
50 override $(1) = echo "*** FATAL BUILD ERROR: "$(3) >&2; exit 1;
51 cc-option := n
52 endif
53 endef
55 ifeq ($(debug),y)
56 CFLAGS += -g
57 endif
59 CFLAGS += -fno-strict-aliasing
61 CFLAGS += -std=gnu99
63 CFLAGS += -Wall -Wstrict-prototypes
65 # -Wunused-value makes GCC 4.x too aggressive for my taste: ignoring the
66 # result of any casted expression causes a warning.
67 CFLAGS += -Wno-unused-value
69 HOSTCFLAGS += $(call cc-option,$(HOSTCC),-Wdeclaration-after-statement,)
70 CFLAGS += $(call cc-option,$(CC),-Wdeclaration-after-statement,)
72 LDFLAGS += $(foreach i, $(EXTRA_LIB), -L$(i))
73 CFLAGS += $(foreach i, $(EXTRA_INCLUDES), -I$(i))
75 # Enable XSM security module. Enabling XSM requires selection of an
76 # XSM security module (FLASK_ENABLE or ACM_SECURITY).
77 XSM_ENABLE ?= n
78 FLASK_ENABLE ?= n
79 ACM_SECURITY ?= n
81 QEMU_REMOTE=http://www.chiark.greenend.org.uk/~ijackson/qemu-xen.git
83 # Specify which qemu-dm to use. This may be `ioemu' to use the old
84 # Mercurial in-tree version, or a local directory, or a git URL.
85 CONFIG_QEMU ?= ioemu
86 # CONFIG_QEMU ?= ../qemu-xen.git
87 # CONFIG_QEMU ?= $(QEMU_REMOTE)
89 # Optional components
90 XENSTAT_XENTOP ?= y
91 VTPM_TOOLS ?= n
92 LIBXENAPI_BINDINGS ?= n
93 PYTHON_TOOLS ?= y
94 CONFIG_MINITERM ?= n
95 CONFIG_LOMOUNT ?= n
97 -include $(XEN_ROOT)/.config