summaryrefslogtreecommitdiff
path: root/kernel/Makefile
blob: df8ece7d62ec7bec6075ac966590772c4dcd0c83 (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
CFLAGS += -I include

OBJS = \
	src/boot/boot64.o \
	src/boot/boot.o \
	src/boot/header.o \
	src/boot/multiboot2.o \
	src/cpu/idt.o \
	src/cpu/io.o \
	src/cpu/irq.o \
	src/cpu/irq_stub.o \
	src/cpu/pic.o \
	src/devices/keyboard.o \
	src/libk/math.o \
	src/libk/stdio.o \
	src/libk/string.o \
	src/main.o \
	src/mem/heap.o \
	src/mem/paging_asm.o \
	src/mem/paging.o \
	src/misc/debug.o \
	src/misc/graphics.o \

all: kernel.bin

kernel.bin: $(OBJS) src/kernel.ld ../Makefile Makefile
	$(info [kernel] $@)
	@$(LD) $(LDFLAGS) -T src/kernel.ld $(OBJS) -o kernel.bin


%.o: %.c
	$(info [kernel] $@)
	@$(CC) $(CFLAGS) -c $< -o $@


%.o: %.S
	$(info [kernel] $@)
	@$(CC) $(CFLAGS) -c $< -o $@


.PHONY: all

-include $(OBJS:.o=.d)