xen-vtx-unstable

view xen/arch/x86/Makefile @ 6759:b5d91089e42c

Newer binutils is a bit stricter and errors out when you try
to use movl on a 16 bit word on x86_64. Using just a "mov"
compiles fine and should result in the same code.

{standard input}: Assembler messages:
{standard input}:2138: Error: suffix or operands invalid for `mov'
{standard input}:2140: Error: suffix or operands invalid for `mov'
{standard input}:2142: Error: suffix or operands invalid for `mov'
{standard input}:2144: Error: suffix or operands invalid for `mov'

Signed-off-by: Rik van Riel <riel@redhat.com>
author kaf24@firebug.cl.cam.ac.uk
date Tue Sep 13 10:21:22 2005 +0000 (2005-09-13)
parents 291e816acbf4
children
line source
2 include $(BASEDIR)/Rules.mk
4 OBJS += $(patsubst %.S,%.o,$(wildcard $(TARGET_SUBARCH)/*.S))
5 OBJS += $(patsubst %.c,%.o,$(wildcard $(TARGET_SUBARCH)/*.c))
6 OBJS += $(patsubst %.c,%.o,$(wildcard acpi/*.c))
7 OBJS += $(patsubst %.c,%.o,$(wildcard mtrr/*.c))
8 OBJS += $(patsubst %.c,%.o,$(wildcard genapic/*.c))
9 OBJS += $(patsubst %.c,%.o,$(wildcard cpu/*.c))
11 ifeq ($(TARGET_SUBARCH),x86_64)
12 OBJS := $(subst cpu/centaur.o,,$(OBJS))
13 OBJS := $(subst cpu/cyrix.o,,$(OBJS))
14 OBJS := $(subst cpu/rise.o,,$(OBJS))
15 OBJS := $(subst cpu/transmeta.o,,$(OBJS))
16 endif
18 OBJS := $(patsubst shadow%.o,,$(OBJS)) # drop all
19 ifeq ($(TARGET_SUBARCH),x86_64)
20 OBJS += shadow.o shadow_public.o shadow_guest32.o # x86_64: new code
21 endif
22 ifeq ($(TARGET_SUBARCH),x86_32)
23 ifneq ($(pae),n)
24 OBJS += shadow.o shadow_public.o # x86_32p: new code
25 else
26 OBJS += shadow32.o # x86_32: old code
27 endif
28 endif
30 OBJS := $(subst $(TARGET_SUBARCH)/asm-offsets.o,,$(OBJS))
32 ifneq ($(crash_debug),y)
33 OBJS := $(patsubst cdb%.o,,$(OBJS))
34 endif
36 default: $(TARGET)
38 $(TARGET): $(TARGET)-syms boot/mkelf32
39 ./boot/mkelf32 $(TARGET)-syms $(TARGET) 0x100000
41 $(CURDIR)/arch.o: $(OBJS)
42 $(LD) $(LDFLAGS) -r -o $@ $(OBJS)
44 $(TARGET)-syms: boot/$(TARGET_SUBARCH).o $(ALL_OBJS) $(TARGET_SUBARCH)/xen.lds
45 $(LD) $(LDFLAGS) -T $(TARGET_SUBARCH)/xen.lds -N \
46 boot/$(TARGET_SUBARCH).o $(ALL_OBJS) -o $@
47 $(NM) -n $@ | $(BASEDIR)/tools/symbols >$(BASEDIR)/xen-syms.S
48 $(MAKE) $(BASEDIR)/xen-syms.o
49 $(LD) $(LDFLAGS) -T $(TARGET_SUBARCH)/xen.lds -N \
50 boot/$(TARGET_SUBARCH).o $(ALL_OBJS) $(BASEDIR)/xen-syms.o -o $@
51 $(NM) -n $@ | $(BASEDIR)/tools/symbols >$(BASEDIR)/xen-syms.S
52 $(MAKE) $(BASEDIR)/xen-syms.o
53 $(LD) $(LDFLAGS) -T $(TARGET_SUBARCH)/xen.lds -N \
54 boot/$(TARGET_SUBARCH).o $(ALL_OBJS) $(BASEDIR)/xen-syms.o -o $@
55 rm -f $(BASEDIR)/xen-syms.S $(BASEDIR)/xen-syms.o
57 asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c $(HDRS)
58 $(CC) $(CFLAGS) -S -o $@ $<
60 boot/mkelf32: boot/mkelf32.c
61 $(HOSTCC) $(HOSTCFLAGS) -o $@ $<
63 clean:
64 rm -f *.o *.s *~ core boot/*.o boot/*~ boot/core boot/mkelf32
65 rm -f x86_32/*.o x86_32/*~ x86_32/core
66 rm -f x86_64/*.o x86_64/*~ x86_64/core
67 rm -f mtrr/*.o mtrr/*~ mtrr/core
68 rm -f acpi/*.o acpi/*~ acpi/core
69 rm -f genapic/*.o genapic/*~ genapic/core
70 rm -f cpu/*.o cpu/*~ cpu/core
72 .PHONY: default clean