about summary refs log tree commit diff stats
path: root/tools/iso/kernel.soso/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'tools/iso/kernel.soso/Makefile')
-rw-r--r--tools/iso/kernel.soso/Makefile21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/iso/kernel.soso/Makefile b/tools/iso/kernel.soso/Makefile
new file mode 100644
index 00000000..d9f4210a
--- /dev/null
+++ b/tools/iso/kernel.soso/Makefile
@@ -0,0 +1,21 @@
+CC=cc
+LD=ld
+# disable stack-protector to support Arch Linux
+# (https://bugs.archlinux.org/task/18864)
+CFLAGS=-nostdlib -nostdinc -fno-builtin -fno-stack-protector -m32 -c
+LDFLAGS=-Tlink.ld -m elf_i386
+ASFLAGS=-felf
+
+OBJ = $(patsubst %.c,%.o,$(wildcard *.c)) $(patsubst %.asm,%.o,$(wildcard *.asm))
+
+kernel.bin: $(OBJ)
+	$(LD) $(LDFLAGS) -o kernel.bin $(OBJ) font/font.o
+
+%.o:%.c
+	$(CC) $(CFLAGS) $< -o $@
+
+%.o:%.asm
+	nasm $(ASFLAGS) $< -o $@
+
+clean:
+	-rm *.o kernel.bin