ia64/xen-unstable

view tools/Rules.mk @ 15315:de47ca8be7fe

Include Solaris kernel headers

Add the Solaris kernel headers used be the userspace tools to the
distribution. The same setup as used by Linux is taken. We modify the
Linux kernel headers to also install in /usr/include/xen/sys/ -
without a kernel-neutral path, it can make using the headers very
difficult, and encourages errors.

Signed-off-by: John Levon <john.levon@sun.com>
author kfraser@localhost.localdomain
date Mon Jun 11 15:50:35 2007 +0100 (2007-06-11)
parents 267ccb919967
children 7e7e0ea6a0bb
line source
1 # -*- mode: Makefile; -*-
3 # `all' is the default target
4 all:
6 include $(XEN_ROOT)/Config.mk
8 XEN_XC = $(XEN_ROOT)/tools/python/xen/lowlevel/xc
9 XEN_LIBXC = $(XEN_ROOT)/tools/libxc
10 XEN_XENSTORE = $(XEN_ROOT)/tools/xenstore
11 XEN_LIBXENSTAT = $(XEN_ROOT)/tools/xenstat/libxenstat/src
13 X11_LDPATH = -L/usr/X11R6/$(LIBDIR)
15 CFLAGS += -D__XEN_TOOLS__
17 # Enable implicit LFS support *and* explicit LFS names.
18 CFLAGS += $(shell getconf LFS_CFLAGS)
19 CFLAGS += -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
20 LDFLAGS += $(shell getconf LFS_LDFLAGS)
22 # 32-bit x86 does not perform well with -ve segment accesses on Xen.
23 CFLAGS-$(CONFIG_X86_32) += $(call cc-option,$(CC),-mno-tls-direct-seg-refs)
24 CFLAGS += $(CFLAGS-y)
26 # Require GCC v3.4+ (to avoid issues with alignment constraints in Xen headers)
27 check-$(CONFIG_X86) = $(call cc-ver-check,CC,0x030400,\
28 "Xen requires at least gcc-3.4")
29 $(eval $(check-y))
31 %.opic: %.c
32 $(CC) $(CPPFLAGS) -DPIC $(CFLAGS) -fPIC -c -o $@ $<
34 %.o: %.c
35 $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
37 %.o: %.cc
38 $(CC) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
40 .PHONY: mk-symlinks
42 mk-symlinks:
43 mkdir -p xen/sys
44 ( cd xen/sys && \
45 ln -sf ../../$(XEN_ROOT)/tools/include/$(XEN_OS)/*.h . )
46 mkdir -p xen
47 ( cd xen && ln -sf ../$(XEN_ROOT)/xen/include/public/*.h . )
48 mkdir -p xen/hvm
49 ( cd xen/hvm && ln -sf ../../$(XEN_ROOT)/xen/include/public/hvm/*.h . )
50 mkdir -p xen/io
51 ( cd xen/io && ln -sf ../../$(XEN_ROOT)/xen/include/public/io/*.h . )
52 mkdir -p xen/arch-x86
53 ( cd xen/arch-x86 && ln -sf ../../$(XEN_ROOT)/xen/include/public/arch-x86/*.h . )
54 mkdir -p xen/foreign
55 ( cd xen/foreign && ln -sf ../../$(XEN_ROOT)/xen/include/public/foreign/Makefile . )
56 ( cd xen/foreign && ln -sf ../../$(XEN_ROOT)/xen/include/public/foreign/reference.size . )
57 ( cd xen/foreign && ln -sf ../../$(XEN_ROOT)/xen/include/public/foreign/*.py . )
58 $(MAKE) -C xen/foreign