aboutsummaryrefslogtreecommitdiff
path: root/src/makefile
blob: 68ec6d6f308fcd3bc9e55133d6656a108366ecf7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
AS_OBJ += src/boot.o \
	  src/idt/stubs.o

CXX_OBJ += src/kernel.o \
	   src/kernel/dump_gdt.o src/kernel/dump_multiboot.o \
	   src/cpu/cpu.o \
	   src/gdt.o \
	   src/gdt/segmentdescriptor.o \
	   src/idt.o \
	   src/idt/exception.o src/idt/interruptgate.o src/idt/interrupthandler.o \
	   src/vmm.o \
	   src/scheduler.o src/scheduler/task.o

src/cpu/irq.h: $(OBJ_DIR)/src/idt/stubs.o
	@echo "  GEN  $@"
	@echo '#pragma once' > $@
	@echo 'extern "C" {' >> $@
	@echo '/* interrupt map */' >> $@
	@for x in $^; do $(NM) $$x -g | $(SED) -nr 's/[0-9a-f]{8} T (.+)/void \1();/p'; done >> $@
	@echo '}' >> $@

autogen := $(autogen) src/cpu/irq.h