summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/Makefile
blob: c454c1350602353e11046d539e18e06e1c4e0070 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#
# Makefile for the linux kernel.
#
# Note! Dependencies are done automagically by 'make dep', which also
# removes any old dependencies. DON'T put your own dependencies here
# unless it's something special (ie not a .c file).

HEAD_OBJ  = head-$(PROCESSOR).o
ENTRY_OBJ = entry-$(PROCESSOR).o

ifeq ($(CONFIG_ISA_DMA),y)
  ISA_DMA_OBJS += dma-isa.o
endif

O_OBJS_arc        = dma-arc.o oldlatches.o
O_OBJS_a5k        = dma-a5k.o
O_OBJS_rpc        = dma-rpc.o
O_OBJS_ebsa110    = dma-dummy.o
O_OBJS_footbridge = dma.o dma-footbridge.o $(ISA_DMA_OBJS) hw-footbridge.o isa.o
O_OBJS_nexuspci   = dma-dummy.o
O_OBJS_sa1100     = dma-dummy.o fiq.o

O_TARGET := kernel.o

# Object file lists.

obj-y			:= arch.o $(ENTRY_OBJ) ioport.o irq.o process.o ptrace.o \
			   semaphore.o setup.o signal.o sys_arm.o time.o traps.o \
			   $(O_OBJS_$(MACHINE))
obj-m			:=
obj-n			:=
obj-			:=

export-objs		:= armksyms.o dma.o ecard.o hw-footbridge.o leds-$(MACHINE).o

obj-$(CONFIG_ARCH_ACORN) += dma.o ecard.o iic.o fiq.o time-acorn.o
obj-$(CONFIG_DEBUG_LL)	+= debug-$(PROCESSOR).o
obj-$(CONFIG_MODULES)	+= armksyms.o
obj-$(CONFIG_LEDS)	+= leds-$(MACHINE).o
obj-$(CONFIG_ARTHUR)	+= arthur.o

ifeq ($(MACHINE),nexuspci)
  obj-$(CONFIG_PCI)	+= plx9080.o
else
  obj-$(CONFIG_PCI)	+= bios32.o dec21285.o
endif

# Files that are both resident and modular; remove from modular.

obj-m		:= $(filter-out $(obj-y), $(obj-m))

# Translate to Rules.make lists.

O_OBJS		:= $(filter-out $(export-objs), $(obj-y))
OX_OBJS 	:= $(filter	$(export-objs), $(obj-y))
M_OBJS		:= $(sort $(filter-out $(export-objs), $(obj-m)))
MX_OBJS 	:= $(sort $(filter     $(export-objs), $(obj-m)))

all: kernel.o $(HEAD_OBJ) init_task.o

$(HEAD_OBJ): $(HEAD_OBJ:.o=.S)
	$(CC) -D__ASSEMBLY__ $(AFLAGS) -DTEXTADDR=$(TEXTADDR) -traditional -c $(HEAD_OBJ:.o=.S) -o $@

include $(TOPDIR)/Rules.make

.S.o:
	$(CC) -D__ASSEMBLY__ $(AFLAGS) $(AFLAGS_$@) -c -o $*.o $<

# Spell out some dependencies that `make dep' doesn't spot
entry-armv.o: calls.S ../lib/constants.h
entry-armo.o: calls.S ../lib/constants.h