ia64/xen-unstable

view Config.mk @ 9917:42c73f3d7ac1

This patch changes to format in which EIP is printed to be consistent on 64-bit regardless of whether the addresses
leading bits are set or clear. It additionally changes the formatting so that trailing spaces are avoided, and it
suppresses the printing of empty records. It also prevents combining records with identical EIP but from different
domains.

It further changes the type of some variables from plain int to unsigned int, as that is yielding more efficient code
on x86-64 (signed 32-bit array indices require explicit sign extension, whereas in most cases an extra copy can be
avoided when the index type is unsigned, since all 32-bit operations already zero-extend their results).

Signed-off-by: Jan Beulich <jbeulich@novell.com>
author kaf24@firebug.cl.cam.ac.uk
date Tue May 02 15:36:07 2006 +0100 (2006-05-02)
parents baa1742637b7
children 414dabe82a31
line source
1 # -*- mode: Makefile; -*-
3 # A debug build of Xen and tools?
4 debug ?= n
6 # Currently supported architectures: x86_32, x86_64
7 XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/)
8 XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH)
9 XEN_TARGET_X86_PAE ?= n
11 # Tools to run on system hosting the build
12 HOSTCC = gcc
13 HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer
15 AS = $(CROSS_COMPILE)as
16 LD = $(CROSS_COMPILE)ld
17 CC = $(CROSS_COMPILE)gcc
18 CPP = $(CROSS_COMPILE)gcc -E
19 AR = $(CROSS_COMPILE)ar
20 RANLIB = $(CROSS_COMPILE)ranlib
21 NM = $(CROSS_COMPILE)nm
22 STRIP = $(CROSS_COMPILE)strip
23 OBJCOPY = $(CROSS_COMPILE)objcopy
24 OBJDUMP = $(CROSS_COMPILE)objdump
26 DISTDIR ?= $(XEN_ROOT)/dist
27 DESTDIR ?= /
29 INSTALL = install
30 INSTALL_DIR = $(INSTALL) -d -m0755
31 INSTALL_DATA = $(INSTALL) -m0644
32 INSTALL_PROG = $(INSTALL) -m0755
34 ifneq ($(debug),y)
35 # Optimisation flags are overridable
36 CFLAGS ?= -O2 -fomit-frame-pointer
37 CFLAGS += -DNDEBUG
38 else
39 CFLAGS += -g
40 endif
42 ifeq ($(XEN_TARGET_ARCH),x86_32)
43 CFLAGS += -m32 -march=i686
44 endif
46 ifeq ($(XEN_TARGET_ARCH),x86_64)
47 CFLAGS += -m64
48 endif
50 ifeq ($(XEN_TARGET_ARCH),x86_64)
51 LIBDIR = lib64
52 else
53 LIBDIR = lib
54 endif
56 ifneq ($(EXTRA_PREFIX),)
57 EXTRA_INCLUDES += $(EXTRA_PREFIX)/include
58 EXTRA_LIB += $(EXTRA_PREFIX)/$(LIBDIR)
59 endif
61 test-gcc-flag = $(shell $(1) -v --help 2>&1 | grep -q " $(2) " && echo $(2))
63 CFLAGS += -Wall -Wstrict-prototypes
65 HOSTCFLAGS += $(call test-gcc-flag,$(HOSTCC),-Wdeclaration-after-statement)
66 CFLAGS += $(call test-gcc-flag,$(CC),-Wdeclaration-after-statement)
68 LDFLAGS += $(foreach i, $(EXTRA_LIB), -L$(i))
69 CFLAGS += $(foreach i, $(EXTRA_INCLUDES), -I$(i))
71 # Choose the best mirror to download linux kernel
72 KERNEL_REPO = http://www.kernel.org
74 # If ACM_SECURITY = y, then the access control module is compiled
75 # into Xen and the policy type can be set by the boot policy file
76 # y - Build the Xen ACM framework
77 # n - Do not build the Xen ACM framework
78 ACM_SECURITY ?= n
80 # If ACM_SECURITY = y and no boot policy file is installed,
81 # then the ACM defaults to the security policy set by
82 # ACM_DEFAULT_SECURITY_POLICY
83 # Supported models are:
84 # ACM_NULL_POLICY
85 # ACM_CHINESE_WALL_POLICY
86 # ACM_SIMPLE_TYPE_ENFORCEMENT_POLICY
87 # ACM_CHINESE_WALL_AND_SIMPLE_TYPE_ENFORCEMENT_POLICY
88 ACM_DEFAULT_SECURITY_POLICY ?= ACM_NULL_POLICY
90 # Optional components
91 XENSTAT_XENTOP ?= y
93 VTPM_TOOLS ?= n
95 -include $(XEN_ROOT)/.config