blob: af200268fddb812d39e4902e5f4c70a0a6b375c7 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001OBJ = built-in.o
2
3.S.o:
4 $(CC) $(AFLAGS) -D__ASSEMBLY__ -D__UM_PPC__ -c $< -o $*.o
5
6OBJS = ptrace.o sigcontext.o semaphore.o checksum.o miscthings.o misc.o \
7 ptrace_user.o sysrq.o
8
9EXTRA_AFLAGS := -DCONFIG_PPC32 -I. -I$(TOPDIR)/arch/ppc/kernel
10
11all: $(OBJ)
12
13$(OBJ): $(OBJS)
14 rm -f $@
15 $(LD) $(LINKFLAGS) --start-group $^ --end-group -o $@
16
17ptrace_user.o: ptrace_user.c
18 $(CC) -D__KERNEL__ $(USER_CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
19
20sigcontext.o: sigcontext.c
21 $(CC) $(USER_CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
22
23semaphore.c:
24 rm -f $@
25 ln -s $(TOPDIR)/arch/ppc/kernel/$@ $@
26
27checksum.S:
28 rm -f $@
29 ln -s $(TOPDIR)/arch/ppc/lib/$@ $@
30
31mk_defs.c:
32 rm -f $@
33 ln -s $(TOPDIR)/arch/ppc/kernel/$@ $@
34
35ppc_defs.head:
36 rm -f $@
37 ln -s $(TOPDIR)/arch/ppc/kernel/$@ $@
38
39ppc_defs.h: mk_defs.c ppc_defs.head \
40 $(TOPDIR)/include/asm-ppc/mmu.h \
41 $(TOPDIR)/include/asm-ppc/processor.h \
42 $(TOPDIR)/include/asm-ppc/pgtable.h \
43 $(TOPDIR)/include/asm-ppc/ptrace.h
44# $(CC) $(CFLAGS) -S mk_defs.c
45 cp ppc_defs.head ppc_defs.h
46# for bk, this way we can write to the file even if it's not checked out
47 echo '#define THREAD 608' >> ppc_defs.h
48 echo '#define PT_REGS 8' >> ppc_defs.h
49 echo '#define CLONE_VM 256' >> ppc_defs.h
50# chmod u+w ppc_defs.h
51# grep '^#define' mk_defs.s >> ppc_defs.h
52# rm mk_defs.s
53
54# the asm link is horrible, and breaks the other targets. This is also
55# not going to work with parallel makes.
56
57checksum.o: checksum.S
58 rm -f asm
59 ln -s $(TOPDIR)/include/asm-ppc asm
60 $(CC) $(EXTRA_AFLAGS) $(AFLAGS) -D__ASSEMBLY__ -D__UM_PPC__ -c $< -o $*.o
61 rm -f asm
62
63misc.o: misc.S ppc_defs.h
64 rm -f asm
65 ln -s $(TOPDIR)/include/asm-ppc asm
66 $(CC) $(EXTRA_AFLAGS) $(AFLAGS) -D__ASSEMBLY__ -D__UM_PPC__ -c $< -o $*.o
67 rm -f asm
68
69clean-files := $(OBJS) ppc_defs.h checksum.S semaphore.c mk_defs.c