- Linus: drop support for old-style Makefiles entirely. Big.
[davej-history.git] / arch / ia64 / Makefile
blob0a1714c352beeb576b1b8d9f203b7cba1524b2b3
2 # ia64/Makefile
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.
8 # Copyright (C) 1998-2000 by David Mosberger-Tang <davidm@hpl.hp.com>
11 NM := $(CROSS_COMPILE)nm -B
12 AWK := awk
14 export AWK
16 LINKFLAGS = -static -T arch/$(ARCH)/vmlinux.lds
17 AFLAGS += -Wa,-x
18 AFLAGS_KERNEL := -mconstant-gp
19 EXTRA =
21 CFLAGS := $(CFLAGS) -pipe $(EXTRA) -Wa,-x -ffixed-r13 -mfixed-range=f10-f15,f32-f127 \
22 -funwind-tables
23 CFLAGS_KERNEL := -mconstant-gp
25 ifeq ($(CONFIG_ITANIUM_ASTEP_SPECIFIC),y)
26 CFLAGS += -ma-step
27 endif
29 ifdef CONFIG_IA64_GENERIC
30 CORE_FILES := arch/$(ARCH)/hp/hp.a \
31 arch/$(ARCH)/sn/sn.a \
32 arch/$(ARCH)/dig/dig.a \
33 $(CORE_FILES)
34 SUBDIRS := arch/$(ARCH)/hp \
35 arch/$(ARCH)/sn/sn1 \
36 arch/$(ARCH)/sn \
37 arch/$(ARCH)/dig \
38 $(SUBDIRS)
40 else # !GENERIC
42 ifdef CONFIG_IA64_HP_SIM
43 SUBDIRS := arch/$(ARCH)/hp \
44 $(SUBDIRS)
45 CORE_FILES := arch/$(ARCH)/hp/hp.a \
46 $(CORE_FILES)
47 endif
49 ifdef CONFIG_IA64_SGI_SN1
50 CFLAGS := $(CFLAGS) -DSN -I. -DBRINGUP -DDIRECT_L1_CONSOLE \
51 -DNUMA_BASE -DSIMULATED_KLGRAPH -DNUMA_MIGR_CONTROL \
52 -DLITTLE_ENDIAN -DREAL_HARDWARE -DLANGUAGE_C=1 \
53 -D_LANGUAGE_C=1
54 SUBDIRS := arch/$(ARCH)/sn/sn1 \
55 arch/$(ARCH)/sn \
56 arch/$(ARCH)/sn/io \
57 arch/$(ARCH)/sn/fprom \
58 $(SUBDIRS)
59 CORE_FILES := arch/$(ARCH)/sn/sn.a \
60 arch/$(ARCH)/sn/io/sgiio.o\
61 $(CORE_FILES)
62 endif
64 ifdef CONFIG_IA64_SOFTSDV
65 SUBDIRS := arch/$(ARCH)/dig \
66 $(SUBDIRS)
67 CORE_FILES := arch/$(ARCH)/dig/dig.a \
68 $(CORE_FILES)
69 endif
71 ifdef CONFIG_IA64_DIG
72 SUBDIRS := arch/$(ARCH)/dig \
73 $(SUBDIRS)
74 CORE_FILES := arch/$(ARCH)/dig/dig.a \
75 $(CORE_FILES)
76 endif
78 endif # !GENERIC
80 ifdef CONFIG_IA32_SUPPORT
81 SUBDIRS := arch/$(ARCH)/ia32 $(SUBDIRS)
82 CORE_FILES := arch/$(ARCH)/ia32/ia32.o $(CORE_FILES)
83 endif
85 HEAD := arch/$(ARCH)/kernel/head.o arch/ia64/kernel/init_task.o
87 SUBDIRS := arch/$(ARCH)/tools arch/$(ARCH)/kernel arch/$(ARCH)/mm arch/$(ARCH)/lib $(SUBDIRS)
88 CORE_FILES := arch/$(ARCH)/kernel/kernel.o arch/$(ARCH)/mm/mm.o $(CORE_FILES)
90 LIBS := $(TOPDIR)/arch/$(ARCH)/lib/lib.a $(LIBS) \
91 $(TOPDIR)/arch/$(ARCH)/lib/lib.a
93 MAKEBOOT = $(MAKE) -C arch/$(ARCH)/boot
95 vmlinux: arch/$(ARCH)/vmlinux.lds
97 arch/$(ARCH)/vmlinux.lds: arch/$(ARCH)/vmlinux.lds.S FORCE
98 $(CPP) -D__ASSEMBLY__ -C -P -I$(HPATH) -I$(HPATH)/asm-$(ARCH) \
99 arch/$(ARCH)/vmlinux.lds.S > $@
101 FORCE: ;
103 rawboot:
104 @$(MAKEBOOT) rawboot
107 # My boot writes directly to a specific disk partition, I doubt most
108 # people will want to do that without changes..
110 msb my-special-boot:
111 @$(MAKEBOOT) msb
113 bootimage:
114 @$(MAKEBOOT) bootimage
116 srmboot:
117 @$(MAKEBOOT) srmboot
119 archclean:
120 @$(MAKE) -C arch/$(ARCH)/kernel clean
121 @$(MAKE) -C arch/$(ARCH)/tools clean
122 @$(MAKEBOOT) clean
124 archmrproper:
125 rm -f arch/$(ARCH)/vmlinux.lds
126 @$(MAKE) -C arch/$(ARCH)/tools mrproper
128 archdep:
129 @$(MAKEBOOT) dep
131 bootpfile:
132 @$(MAKEBOOT) bootpfile