Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | # |
2 | # ia64/Makefile | |
3 | # | |
4 | # This file is subject to the terms and conditions of the GNU General Public | |
5 | # License. See the file "COPYING" in the main directory of this archive | |
6 | # for more details. | |
7 | # | |
8 | # Copyright (C) 1998-2004 by David Mosberger-Tang <davidm@hpl.hp.com> | |
9 | # | |
10 | ||
11 | NM := $(CROSS_COMPILE)nm -B | |
12 | READELF := $(CROSS_COMPILE)readelf | |
13 | ||
14 | export AWK | |
15 | ||
16 | CHECKFLAGS += -m64 -D__ia64=1 -D__ia64__=1 -D_LP64 -D__LP64__ | |
17 | ||
18 | OBJCOPYFLAGS := --strip-all | |
19 | LDFLAGS_vmlinux := -static | |
20 | LDFLAGS_MODULE += -T $(srctree)/arch/ia64/module.lds | |
21 | AFLAGS_KERNEL := -mconstant-gp | |
22 | EXTRA := | |
23 | ||
24 | cflags-y := -pipe $(EXTRA) -ffixed-r13 -mfixed-range=f12-f15,f32-f127 \ | |
25 | -falign-functions=32 -frename-registers -fno-optimize-sibling-calls | |
26 | CFLAGS_KERNEL := -mconstant-gp | |
27 | ||
1da177e4 LT |
28 | GAS_STATUS = $(shell $(srctree)/arch/ia64/scripts/check-gas "$(CC)" "$(OBJDUMP)") |
29 | CPPFLAGS += $(shell $(srctree)/arch/ia64/scripts/toolchain-flags "$(CC)" "$(OBJDUMP)" "$(READELF)") | |
30 | ||
31 | ifeq ($(GAS_STATUS),buggy) | |
32 | $(error Sorry, you need a newer version of the assember, one that is built from \ | |
33 | a source-tree that post-dates 18-Dec-2002. You can find a pre-compiled \ | |
34 | static binary of such an assembler at: \ | |
35 | \ | |
36 | ftp://ftp.hpl.hp.com/pub/linux-ia64/gas-030124.tar.gz) | |
37 | endif | |
38 | ||
ad14336d | 39 | ifeq ($(call cc-version),0304) |
1da177e4 LT |
40 | cflags-$(CONFIG_ITANIUM) += -mtune=merced |
41 | cflags-$(CONFIG_MCKINLEY) += -mtune=mckinley | |
42 | endif | |
43 | ||
44 | CFLAGS += $(cflags-y) | |
45 | head-y := arch/ia64/kernel/head.o arch/ia64/kernel/init_task.o | |
46 | ||
47 | libs-y += arch/ia64/lib/ | |
48 | core-y += arch/ia64/kernel/ arch/ia64/mm/ | |
49 | core-$(CONFIG_IA32_SUPPORT) += arch/ia64/ia32/ | |
50 | core-$(CONFIG_IA64_DIG) += arch/ia64/dig/ | |
51 | core-$(CONFIG_IA64_GENERIC) += arch/ia64/dig/ | |
52 | core-$(CONFIG_IA64_HP_ZX1) += arch/ia64/dig/ | |
53 | core-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/dig/ | |
54 | core-$(CONFIG_IA64_SGI_SN2) += arch/ia64/sn/ | |
55 | ||
56 | drivers-$(CONFIG_PCI) += arch/ia64/pci/ | |
57 | drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/ | |
58 | drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ | |
59 | drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ | |
60 | drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/hp/sim/ arch/ia64/sn/ | |
61 | drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/ | |
62 | ||
63 | boot := arch/ia64/hp/sim/boot | |
64 | ||
65 | .PHONY: boot compressed check | |
66 | ||
67 | all: compressed unwcheck | |
68 | ||
69 | compressed: vmlinux.gz | |
70 | ||
71 | vmlinux.gz: vmlinux | |
72 | $(Q)$(MAKE) $(build)=$(boot) $@ | |
73 | ||
74 | unwcheck: vmlinux | |
75 | -$(Q)READELF=$(READELF) $(srctree)/arch/ia64/scripts/unwcheck.py $< | |
76 | ||
77 | archclean: | |
78 | $(Q)$(MAKE) $(clean)=$(boot) | |
79 | ||
82f1b07b | 80 | CLEAN_FILES += vmlinux.gz bootloader |
39e01cb8 | 81 | |
1da177e4 LT |
82 | boot: lib/lib.a vmlinux |
83 | $(Q)$(MAKE) $(build)=$(boot) $@ | |
84 | ||
85 | install: vmlinux.gz | |
86 | sh $(srctree)/arch/ia64/install.sh $(KERNELRELEASE) $< System.map "$(INSTALL_PATH)" | |
87 | ||
88 | define archhelp | |
89 | echo '* compressed - Build compressed kernel image' | |
90 | echo ' install - Install compressed kernel image' | |
91 | echo ' boot - Build vmlinux and bootloader for Ski simulator' | |
92 | echo '* unwcheck - Check vmlinux for invalid unwind info' | |
93 | endef |