blob: 919334d7cc0c61e09eddb9156557ac578a14c092 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
CC = gcc
CFLAGS = -m32 -std=c99
default: build
setup:
mkdir -p bin
build: setup kernel/kernel.c kernel/io/vga/text_mode_display.c kernel/kernel-bootstrap.asm
nasm -f elf32 kernel/kernel-bootstrap.asm -o bin/kernel-bootstrap.o
$(CC) $(CFLAGS) -c kernel/kernel.c -o bin/kernel.o
$(CC) $(CFLAGS) -c kernel/io/vga/text_mode_display.c -o bin/text_mode_display.o
ld -m elf_i386 -T link.ld -o bin/kernel bin/*.o
clean:
rm -f bin/*
run:
qemu-system-i386 -kernel bin/kernel
build-and-run: build run
|