forked from arjun024/mkernel
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile.gnu
More file actions
48 lines (35 loc) · 1.04 KB
/
Copy pathMakefile.gnu
File metadata and controls
48 lines (35 loc) · 1.04 KB
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
CC = gcc
ASM = nasm
CFLAGS = -m32 -c -fno-stack-protector -fno-builtin
ASFLAGS = -f elf32
LD = ld
LDFILE = -m elf_i386 -T link.ld -e 0x100010
LDFLAGS = $(LDFILE)
TARGET = kernel
all: boot.o kernel.o tty.o klib.o int.o interrupt.o keyboard.o list.o dsr.o mm.o timer.o
$(LD) $(LDFLAGS) -o $(TARGET) boot.o kernel.o tty.o klib.o int.o keyboard.o interrupt.o list.o dsr.o mm.o timer.o
boot.o: kernel.asm
$(ASM) $(ASFLAGS) kernel.asm -o boot.o
int.o: int.S
$(CC) $(CFLAGS) int.S -o int.o
interrupt.o: int.c int.h
$(CC) $(CFLAGS) int.c -o interrupt.o
kernel.o: kernel.c
$(CC) $(CFLAGS) kernel.c -o kernel.o
tty.o: tty.c tty.h
$(CC) $(CFLAGS) tty.c -o tty.o
keyboard.o: keyboard.c keyboard.h
$(CC) $(CFLAGS) keyboard.c -o keyboard.o
klib.o: klib.c klib.h tty.h
$(CC) $(CFLAGS) klib.c -o klib.o
list.o: list.c list.h
$(CC) $(CFLAGS) list.c -o list.o
dsr.o: dsr.c dsr.h
$(CC) $(CFLAGS) dsr.c -o dsr.o
mm.o: mm.c mm.h multiboot.h
$(CC) $(CFLAGS) -o mm.o mm.c
timer.o: timer.c timer.h
$(CC) $(CFLAGS) -o timer.o timer.c
clean:
-rm *.o
-rm $(TARGET)