1 KERNEL_OBJ
= kernel.o entry.o
3 include drivers
/Makefile
4 include arch
/x86
/Makefile
6 ASFLAGS_BASE
= -f elf
-g dwarf2
7 CFLAGS_BASE
= -fgnu89-inline
-ffreestanding
-nostdlib
-Iinclude \
8 -Iinclude
/arch
/x86
-g
-DGIT_COMMIT
=\"$(GIT_REV
)\" \
10 LDFLAGS_BASE
= -ffreestanding
-nostdlib
-lgcc
-g
-flto
12 kernel.elf kernel.dbg
: $(KERNEL_OBJ
)
13 $(CC
) $(LDFLAGS_BASE
) $(LDFLAGS
) -T linker.
ld $^
-o
$@
14 i686-elf-objcopy
--only-keep-debug kernel.elf kernel.dbg
15 i686-elf-objcopy
--add-gnu-debuglink
=kernel.dbg kernel.elf
16 i686-elf-strip
--strip-unneeded kernel.elf
19 -rm $(KERNEL_OBJ
) kernel.elf kernel.dbg
23 $(CC
) $(CFLAGS_BASE
) $(CFLAGS
) -c
$< -o
$@
26 $(AS
) $(ASFLAGS_BASE
) $(ASFLAGS
) $< -o
$@