1#
2# Makefile for the linux kernel.
3#
4# Note! Dependencies are done automagically by 'make dep', which also
5# removes any old dependencies. DON'T put your own dependencies here
6# unless it's something special (ie not a .c file).
7#
8# Note 2! The CFLAGS definitions are now in the main makefile...
9
10.S.s:
11	$(CPP) $(AFLAGS) -o $*.s $<
12.S.o:
13	$(CC) $(AFLAGS) -c -o $*.o $<
14
15O_TARGET := kernel.o
16
17export-objs := alpha_ksyms.o
18
19obj-y    := entry.o traps.o process.o osf_sys.o irq.o irq_alpha.o \
20	    signal.o setup.o ptrace.o time.o semaphore.o alpha_ksyms.o \
21	    err_common.o
22
23#
24# FIXME!
25# These should be made conditional on the stuff that needs them!
26#
27obj-y	 += irq_i8259.o irq_srm.o
28
29ifdef CONFIG_VGA_HOSE
30obj-y	 += console.o
31endif
32
33obj-$(CONFIG_SMP)    += smp.o irq_smp.o
34obj-$(CONFIG_PCI)    += pci.o pci_iommu.o
35obj-$(CONFIG_SRM_ENV)	+= srm_env.o
36
37ifdef CONFIG_ALPHA_GENERIC
38
39obj-y 	 += core_apecs.o core_cia.o core_irongate.o core_lca.o core_mcpcia.o \
40	    core_polaris.o core_t2.o core_tsunami.o \
41	    sys_alcor.o sys_cabriolet.o sys_dp264.o sys_eb64p.o sys_eiger.o \
42	    sys_jensen.o sys_miata.o sys_mikasa.o sys_nautilus.o \
43	    sys_noritake.o sys_rawhide.o sys_ruffian.o sys_rx164.o \
44	    sys_sable.o sys_sio.o sys_sx164.o sys_takara.o sys_rx164.o \
45	    irq_pyxis.o srmcons.o gct.o \
46	    es1888.o smc37c669.o smc37c93x.o ns87312.o
47
48ifndef CONFIG_ALPHA_LEGACY_START_ADDRESS
49obj-y 	 += core_titan.o core_wildfire.o core_marvel.o \
50	    sys_titan.o sys_wildfire.o sys_marvel.o \
51	    err_titan.o err_marvel.o
52
53endif
54
55else
56
57# Misc support
58obj-$(CONFIG_ALPHA_SRM) += srmcons.o gct.o
59
60# Core logic support
61obj-$(CONFIG_ALPHA_APECS) += core_apecs.o
62obj-$(CONFIG_ALPHA_CIA) += core_cia.o
63
64obj-$(CONFIG_ALPHA_IRONGATE) += core_irongate.o
65obj-$(CONFIG_ALPHA_LCA) += core_lca.o
66obj-$(CONFIG_ALPHA_MARVEL) += core_marvel.o
67obj-$(CONFIG_ALPHA_MCPCIA) += core_mcpcia.o
68obj-$(CONFIG_ALPHA_T2) += core_t2.o
69obj-$(CONFIG_ALPHA_TSUNAMI) += core_tsunami.o
70obj-$(CONFIG_ALPHA_TITAN) += core_titan.o
71obj-$(CONFIG_ALPHA_POLARIS) += core_polaris.o
72obj-$(CONFIG_ALPHA_WILDFIRE) += core_wildfire.o
73
74# Board support
75ifneq ($(CONFIG_ALPHA_ALCOR)$(CONFIG_ALPHA_XLT),)
76obj-y    += sys_alcor.o
77endif
78ifneq ($(CONFIG_ALPHA_CABRIOLET)$(CONFIG_ALPHA_EB164)$(CONFIG_ALPHA_EB66P)$(CONFIG_ALPHA_LX164)$(CONFIG_ALPHA_PC164),)
79obj-y    += sys_cabriolet.o ns87312.o
80endif
81
82obj-$(CONFIG_ALPHA_DP264) += sys_dp264.o
83obj-$(CONFIG_ALPHA_SHARK) += sys_dp264.o
84obj-$(CONFIG_ALPHA_TITAN) += sys_titan.o err_titan.o
85
86ifneq ($(CONFIG_ALPHA_EB64P)$(CONFIG_ALPHA_EB66),)
87obj-y    += sys_eb64p.o
88endif
89
90obj-$(CONFIG_ALPHA_EIGER) += sys_eiger.o
91obj-$(CONFIG_ALPHA_JENSEN) += sys_jensen.o pci-noop.o
92obj-$(CONFIG_ALPHA_MARVEL) += sys_marvel.o err_marvel.o
93obj-$(CONFIG_ALPHA_MIATA) += sys_miata.o
94obj-$(CONFIG_ALPHA_MIKASA) += sys_mikasa.o
95obj-$(CONFIG_ALPHA_NAUTILUS) += sys_nautilus.o
96obj-$(CONFIG_ALPHA_NORITAKE) += sys_noritake.o
97obj-$(CONFIG_ALPHA_RAWHIDE) += sys_rawhide.o
98obj-$(CONFIG_ALPHA_RUFFIAN) += sys_ruffian.o
99obj-$(CONFIG_ALPHA_RX164) += sys_rx164.o
100
101ifneq ($(CONFIG_ALPHA_SABLE)$(CONFIG_ALPHA_LYNX),)
102obj-y    += sys_sable.o
103endif
104
105ifneq ($(CONFIG_ALPHA_BOOK1)$(CONFIG_ALPHA_AVANTI)$(CONFIG_ALPHA_NONAME)$(CONFIG_ALPHA_P2K)$(CONFIG_ALPHA_XL),)
106obj-y    += sys_sio.o
107endif
108
109obj-$(CONFIG_ALPHA_SX164) += sys_sx164.o
110obj-$(CONFIG_ALPHA_TAKARA) += sys_takara.o
111obj-$(CONFIG_ALPHA_WILDFIRE) += sys_wildfire.o
112
113ifneq ($(CONFIG_ALPHA_MIATA)$(CONFIG_ALPHA_RUFFIAN)$(CONFIG_ALPHA_SX164),)
114obj-y    += irq_pyxis.o
115endif
116
117ifneq ($(CONFIG_ALPHA_MIATA)$(CONFIG_ALPHA_DP264),)
118obj-y    += es1888.o
119endif
120
121ifneq ($(CONFIG_ALPHA_DP264)$(CONFIG_ALPHA_MIATA)$(CONFIG_ALPHA_SX164)$(CONFIG_ALPHA_TITAN),)
122obj-y    += smc37c669.o
123endif
124
125ifneq ($(CONFIG_ALPHA_PC164)$(CONFIG_ALPHA_LX164),)
126obj-y    += smc37c93x.o
127endif
128
129ifneq ($(CONFIG_ALPHA_NONAME)$(CONFIG_ALPHA_EB164)$(CONFIG_ALPHA_AVANTI)$(CONFIG_ALPHA_P2K)$(CONFIG_ALPHA_XL)$(CONFIG_ALPHA_TAKARA),)
130obj-y    += ns87312.o
131endif
132
133endif # GENERIC
134
135all: kernel.o head.o
136
137asm_offsets: check_asm
138	./check_asm > $(TOPDIR)/include/asm-alpha/asm_offsets.h
139
140check_asm: check_asm.c
141	$(HOSTCC) -o $@ $< $(CPPFLAGS) -ffixed-8
142
143clean::
144	rm -f check_asm
145
146include $(TOPDIR)/Rules.make
147