blob: 2a6fc6147a57c9404388ba29ed6a3b94a1d34f80 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
nasm=nasm -f elf -g
TARGET=kernel
all: $(TARGET)
boot.o: boot.asm
$(nasm) -o boot.o boot.asm
io.o: io.asm
$(nasm) -o io.o io.asm
irq.o: irq.asm
$(nasm) -o irq.o irq.asm
kernel.o: kernel.asm
$(nasm) -o kernel.o kernel.asm
ctest.o: ctest.c
gcc -c -o ctest.o -m32 -O3 -nostdlib -nostdinc \
-fno-builtin -fno-stack-protector \
-nostartfiles -nodefaultlibs \
-Wall -Wextra \
ctest.c
$(TARGET): ctest.o irq.o io.o kernel.o boot.o
ld -g -m elf_i386 -T link.ld -o $(TARGET) boot.o io.o irq.o ctest.o kernel.o
run: $(TARGET)
qemu-system-i386 -m 8M -kernel $(TARGET)
debug: $(TARGET)
qemu-system-i386 -d int,guest_errors -no-reboot -s -S -m 8M -kernel $(TARGET) &
gdb -ex 'kdev' \
-ex 'continue' \
$(TARGET)
clean:
rm -f kernel
rm *.o
|