summaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/Makefile
blob: 2125c2f9c0e5b5ae3cbcf7e50edf04ca4ce2387a (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#
# Makefile for the Linux/MIPS 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).
#

.S.o:
	$(CC) $(CFLAGS) -c $< -o $*.o

all:	kernel.o head.o init_task.o
EXTRA_ASFLAGS = -mips3 -mcpu=r4000
O_TARGET := kernel.o
O_OBJS	:= branch.o process.o signal.o entry.o traps.o ptrace.o vm86.o \
	   ioport.o reset.o semaphore.o setup.o syscall.o sysmips.o ipc.o \
	   scall_o32.o softfp.o unaligned.o
OX_OBJS := mips_ksyms.o

ifdef CONFIG_CPU_R3000
O_OBJS	+= r2300_misc.o r2300_fpu.o r2300_switch.o
else
O_OBJS	+= r4k_misc.o r4k_switch.o 
ifdef CONFIG_CPU_R6000
O_OBJS	+= r6000_fpu.o
else
O_OBJS	+= r4k_fpu.o
endif
endif

ifdef CONFIG_MIPS_FPE_MODULE
M_OBJS += fpe.o
endif

ifndef CONFIG_DECSTATION
  ifndef CONFIG_BAGET_MIPS
    ifndef CONFIG_ORION
      ifndef CONFIG_MIPS_ATLAS
	ifndef CONFIG_MIPS_MALTA
          ifndef CONFIG_MIPS_EV96100
	    O_OBJS += time.o
            ifndef CONFIG_SGI_IP22
              ifndef CONFIG_MIPS_EV96100
	        OX_OBJS += irq.o
              endif
	    endif
          endif
        endif
      endif
    endif
  endif
endif

#
# Do we want to be able to execute IRIX elf binaries?
#
ifdef CONFIG_BINFMT_IRIX
O_OBJS += irixelf.o irixioctl.o irixsig.o sysirix.o irixinv.o
endif

#
# Kernel debugging
#
ifdef CONFIG_REMOTE_DEBUG
O_OBJS += gdb-low.o gdb-stub.o 
endif

#
# Depending from some other kernel option
#
ifdef CONFIG_PROC_FS
O_OBJS += proc.o
endif

#
# Since we add the same object files to O_OBJS for different configurations.
# O_OBJS might contain duplicate files.  We correct this by filtering out
# duplicate files.  Just to avoid users having to know about all the
# compatibility stuff between various boards and boards.
#
O_OBJS := $(sort $(O_OBJS))

entry.o: entry.S

head.o: head.S

#r4k_switch.o: r4k_switch.S
#
#r4k_misc.o: r4k_misc.S
#
#r4k_fpu.o: r4k_fpu.S
#
#r2300_switch.o: r2300_switch.S
#
#r2300_misc.o: r2300_misc.S
#
#r2300_fpu.o: r2300_fpu.S
#
#r6000_fpu.o: r6000_fpu.S

clean:

include $(TOPDIR)/Rules.make