ia64/xen-unstable

view tools/firmware/hvmloader/Makefile @ 12651:9164f836943d

[HVMLOADER] Fix CFLAGS.
Signed-off-by: Keir Fraser <keir@xensource.com>
author kfraser@localhost.localdomain
date Wed Nov 29 11:38:17 2006 +0000 (2006-11-29)
parents 514ed4f0e5da
children c630278d4193
line source
1 #
2 # Makefile
3 #
4 # Leendert van Doorn, leendert@watson.ibm.com
5 # Copyright (c) 2005, International Business Machines Corporation.
6 #
7 # This program is free software; you can redistribute it and/or modify it
8 # under the terms and conditions of the GNU General Public License,
9 # version 2, as published by the Free Software Foundation.
10 #
11 # This program is distributed in the hope it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 # more details.
15 #
16 # You should have received a copy of the GNU General Public License along with
17 # this program; if not, write to the Free Software Foundation, Inc., 59 Temple
18 # Place - Suite 330, Boston, MA 02111-1307 USA.
19 #
21 # External CFLAGS can do more harm than good.
22 CFLAGS :=
24 override XEN_TARGET_ARCH = x86_32
25 XEN_ROOT = ../../..
26 include $(XEN_ROOT)/Config.mk
28 # The HVM loader is started in 32-bit mode at the address below:
29 LOADADDR = 0x100000
31 # Disable PIE/SSP if GCC supports them. They can break us.
32 CFLAGS += $(call cc-option,$(CC),-nopie,)
33 CFLAGS += $(call cc-option,$(CC),-fno-stack-protector,)
34 CFLAGS += $(call cc-option,$(CC),-fno-stack-protector-all,)
36 OBJCOPY = objcopy
37 CFLAGS += -I$(XEN_ROOT)/tools/libxc -I. -fno-builtin -O2 -msoft-float
38 LDFLAGS = -nostdlib -Wl,-N -Wl,-Ttext -Wl,$(LOADADDR)
40 SRCS = hvmloader.c mp_tables.c util.c smbios.c
41 OBJS = $(patsubst %.c,%.o,$(SRCS))
43 .PHONY: all
44 all: hvmloader
46 hvmloader: roms.h acpi/acpi.a $(SRCS)
47 $(CC) $(CFLAGS) -c $(SRCS)
48 $(CC) $(CFLAGS) $(LDFLAGS) -o hvmloader.tmp $(OBJS) acpi/acpi.a
49 $(OBJCOPY) hvmloader.tmp hvmloader
50 rm -f hvmloader.tmp
52 .PHONY: acpi/acpi.a
53 acpi/acpi.a:
54 $(MAKE) -C acpi
56 roms.h: ../rombios/BIOS-bochs-latest ../vgabios/VGABIOS-lgpl-latest.bin ../vgabios/VGABIOS-lgpl-latest.cirrus.bin ../vmxassist/vmxassist.bin
57 sh ./mkhex rombios ../rombios/BIOS-bochs-latest > roms.h
58 sh ./mkhex vgabios_stdvga ../vgabios/VGABIOS-lgpl-latest.bin >> roms.h
59 sh ./mkhex vgabios_cirrusvga ../vgabios/VGABIOS-lgpl-latest.cirrus.bin >> roms.h
60 sh ./mkhex vmxassist ../vmxassist/vmxassist.bin >> roms.h
62 .PHONY: clean
63 clean:
64 rm -f roms.h acpi.h
65 rm -f hvmloader hvmloader.tmp *.o
66 $(MAKE) -C acpi clean