summaryrefslogtreecommitdiff
path: root/kernel/makefile
blob: 27565f7f9b57fd0922f5e59caf625d3027edc725 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SOURCES = \
  storage/bd/memory.cpp storage/fs/tarfs.cpp application.asm application.cpp \
  framebuffer.cpp interrupts.asm interrupts.cpp allocator.cpp storage.cpp \
  syscall.cpp utility.cpp paging.asm paging.cpp entry.cpp input.cpp panic.cpp \
  vfile.cpp serial.asm

build/%.asm.o: source/%.asm
	@mkdir -p $(@D)
	$(HILBERT_NASM) $^ -o $@

build/%.cpp.o: source/%.cpp
	@mkdir -p $(@D)
	$(HILBERT_CC) -c -ffreestanding -mcmodel=kernel -I ${LIMINE_DIR} $^ -o $@

build/kernel.elf: $(SOURCES:%=build/%.o)
	$(HILBERT_LD) -T link.ld $^ -o $@

clean:
	rm -rf build