aboutsummaryrefslogtreecommitdiff
path: root/src/makefile
blob: 6e8545d518f20c5b9f3e0e97fc87b942208f1dd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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/kernel/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/allocator.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