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-2000 by David Mosberger-Tang <davidm@hpl.hp.com>
9 #
10
11 NM := $(CROSS_COMPILE)nm -B
12 AWK := awk
13
14 export AWK
15
16 LINKFLAGS = -static -T arch/$(ARCH)/vmlinux.lds
17 AFLAGS += -Wa,-x
18 AFLAGS_KERNEL := -mconstant-gp
19 EXTRA =
20
21 CFLAGS := $(CFLAGS) -pipe $(EXTRA) -Wa,-x -ffixed-r13 -mfixed-range=f10-f15,f32-f127 \
22 -funwind-tables -falign-functions=32
23 # -frename-registers
24 CFLAGS_KERNEL := -mconstant-gp
25
26 ifeq ($(CONFIG_ITANIUM_ASTEP_SPECIFIC),y)
27 CFLAGS += -ma-step
28 endif
29 ifeq ($(CONFIG_ITANIUM_BSTEP_SPECIFIC),y)
30 CFLAGS += -mb-step
31 endif
32
33 ifdef CONFIG_IA64_GENERIC
34 CORE_FILES := arch/$(ARCH)/hp/hp.a \
35 arch/$(ARCH)/sn/sn.a \
36 arch/$(ARCH)/dig/dig.a \
37 arch/$(ARCH)/sn/io/sgiio.o \
38 $(CORE_FILES)
39 SUBDIRS := arch/$(ARCH)/hp \
40 arch/$(ARCH)/sn/sn1 \
41 arch/$(ARCH)/sn \
42 arch/$(ARCH)/dig \
43 arch/$(ARCH)/sn/io \
44 $(SUBDIRS)
45
46 else # !GENERIC
47
48 ifdef CONFIG_IA64_HP_SIM
49 SUBDIRS := arch/$(ARCH)/hp \
50 $(SUBDIRS)
51 CORE_FILES := arch/$(ARCH)/hp/hp.a \
52 $(CORE_FILES)
53 endif
54
55 ifdef CONFIG_IA64_SGI_SN1
56 CFLAGS += -DBRINGUP
57 SUBDIRS := arch/$(ARCH)/sn/sn1 \
58 arch/$(ARCH)/sn \
59 arch/$(ARCH)/sn/io \
60 arch/$(ARCH)/sn/fprom \
61 $(SUBDIRS)
62 CORE_FILES := arch/$(ARCH)/sn/sn.a \
63 arch/$(ARCH)/sn/io/sgiio.o\
64 $(CORE_FILES)
65 endif
66
67 ifdef CONFIG_IA64_SOFTSDV
68 SUBDIRS := arch/$(ARCH)/dig \
69 $(SUBDIRS)
70 CORE_FILES := arch/$(ARCH)/dig/dig.a \
71 $(CORE_FILES)
72 endif
73
74 ifdef CONFIG_IA64_DIG
75 SUBDIRS := arch/$(ARCH)/dig \
76 $(SUBDIRS)
77 CORE_FILES := arch/$(ARCH)/dig/dig.a \
78 $(CORE_FILES)
79 endif
80
81 endif # !GENERIC
82
83 ifdef CONFIG_IA32_SUPPORT
84 SUBDIRS := arch/$(ARCH)/ia32 $(SUBDIRS)
85 CORE_FILES := arch/$(ARCH)/ia32/ia32.o $(CORE_FILES)
86 endif
87
88 HEAD := arch/$(ARCH)/kernel/head.o arch/ia64/kernel/init_task.o
89
90 SUBDIRS := arch/$(ARCH)/tools arch/$(ARCH)/kernel arch/$(ARCH)/mm arch/$(ARCH)/lib $(SUBDIRS)
91 CORE_FILES := arch/$(ARCH)/kernel/kernel.o arch/$(ARCH)/mm/mm.o $(CORE_FILES)
92
93 LIBS := $(TOPDIR)/arch/$(ARCH)/lib/lib.a $(LIBS) \
94 $(TOPDIR)/arch/$(ARCH)/lib/lib.a
95
96 MAKEBOOT = $(MAKE) -C arch/$(ARCH)/boot
97
98 vmlinux: arch/$(ARCH)/vmlinux.lds
99
100 arch/$(ARCH)/vmlinux.lds: arch/$(ARCH)/vmlinux.lds.S FORCE
101 $(CPP) -D__ASSEMBLY__ -C -P -I$(HPATH) -I$(HPATH)/asm-$(ARCH) \
102 -traditional arch/$(ARCH)/vmlinux.lds.S > $@
103
104 FORCE: ;
105
106 rawboot:
107 @$(MAKEBOOT) rawboot
108
109 #
110 # My boot writes directly to a specific disk partition, I doubt most
111 # people will want to do that without changes..
112 #
113 msb my-special-boot:
114 @$(MAKEBOOT) msb
115
116 bootimage:
117 @$(MAKEBOOT) bootimage
118
119 srmboot:
120 @$(MAKEBOOT) srmboot
121
122 archclean:
123 @$(MAKE) -C arch/$(ARCH)/kernel clean
124 @$(MAKE) -C arch/$(ARCH)/tools clean
125 @$(MAKEBOOT) clean
126
127 archmrproper:
128 rm -f arch/$(ARCH)/vmlinux.lds
129 @$(MAKE) -C arch/$(ARCH)/tools mrproper
130
131 archdep:
132 @$(MAKEBOOT) dep
133
134 bootpfile:
135 @$(MAKEBOOT) bootpfile
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.