Better make/build system for kernel and libraries
[meinos.git] / kernel2 / Makefile
blobc00510cea45ff2f80efd91cf061d80b4661f337c
1 -include ../Makefile.config
3 OBJFILES = aaacrt0.o \
4 biosint.o \
5 cpu.o \
6 elf.o \
7 gdt.o \
8 idt.o \
9 interrupt.o \
10 ioport.o \
11 ipc.o \
12 kprint.o \
13 lapic.o \
14 main.o \
15 malloc.o \
16 memkernel.o \
17 memphys.o \
18 memuser.o \
19 msg.o \
20 multiboot.o \
21 paging.o \
22 pic.o \
23 procm.o \
24 rpc.o \
25 sem.o \
26 shm.o \
27 signal.o \
28 swap.o \
29 syscall.o \
30 tss.o \
31 vga.o \
32 vm86.o \
33 dyncall.o \
34 llist.o \
35 pack.o \
36 perm.o \
37 tree.o \
38 string.o
40 all: kernel2 kernel2.objdump
41 cp $< ../files
43 kernel2: $(OBJFILES) libgcc.a
44 $(KERNEL_LD) -T link.ld -o $@ $(OBJFILES) libgcc.a
46 aaacrt0.o: crt0.asm
47 $(KERNEL_ASM) -f elf -o $@ $^
48 biosint.o: biosint.c
49 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
50 cpu.o: cpu.c
51 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
52 elf.o: elf.c
53 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
54 gdt.o: gdt.c
55 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
56 idt.o: idt.c
57 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
58 interrupt.o: interrupt.c
59 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
60 ioport.o: ioport.c
61 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
62 ipc.o: ipc.c
63 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
64 isr.0: isr.asm
65 $(KERNEL_ASM) -f elf -o $@ $^
66 kprint.o: kprint.c
67 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
68 lapic.o: lapic.c
69 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
70 main.o: main.c
71 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
72 malloc.o: malloc.c
73 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
74 memkernel.o: memkernel.c
75 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
76 memphys.o: memphys.c
77 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
78 memuser.o: memuser.c
79 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
80 msg.o: msg.c
81 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
82 multiboot.o: multiboot.c
83 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
84 paging.o: paging.c
85 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
86 pic.o: pic.c
87 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
88 procm.o: procm.c
89 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
90 rpc.o: rpc.c
91 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
92 sem.o: sem.c
93 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
94 shm.o: shm.c
95 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
96 signal.o: signal.c
97 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
98 swap.o: swap.c
99 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
100 syscall.o: syscall.c
101 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
102 tss.o: tss.c
103 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
104 vga.o: vga.c
105 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
106 vm86.o: vm86.c
107 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
108 dyncall.o: ../lib/libmeinos/dyncall.asm
109 $(KERNEL_ASM) -f elf -o $@ $^
110 llist.o: ../lib/libmeinos/llist.c
111 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
112 pack.o: ../lib/libmeinos/pack.c
113 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
114 perm.o: ../lib/libmeinos/perm.c
115 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
116 tree.o: ../lib/libmeinos/tree.c
117 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
118 string.o: ../lib/stdlibc/string.c
119 $(KERNEL_CC) $(KERNEL_CFLAGS) -o $@ $^
121 kernel2.objdump: kernel2
122 $(KERNEL_OBJDUMP) -d -S $^ > $@
124 clean:
125 rm -f $(OBJFILES) kernel2 *.objdump