diff cos/kernel/Makefile @ 28:47b7df514243

Moved Makefiles
author windel
date Wed, 28 Dec 2011 13:38:43 +0100
parents cos/Makefile@7f74363f4c82
children 7e3bdcb391dc
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cos/kernel/Makefile	Wed Dec 28 13:38:43 2011 +0100
@@ -0,0 +1,29 @@
+# vim: set noexpandtab:
+
+all: bootdisk.img Makefile
+
+bootdisk.img: lcfosc.bin grub/menu.lst Makefile
+	cp grub/emptybootdisk.img bootdisk.img
+	mcopy -D o -i bootdisk.img lcfosc.bin ::
+	mcopy -D o -i bootdisk.img grub/menu.lst ::/grub
+
+CRT0 = goto64.o
+
+CFLAGS = -m64 -nostdinc	-nostdlib -nostartfiles -mno-red-zone \
+	-fno-builtin -mcmodel=large -Wall -Wextra -Werror
+
+OBJECTS = video.o snprintf.o kernel.o asmcode.o handlers.o keyboard.o \
+			klib.o malloc.o task.o mm.o timer.o
+
+lcfosc.bin: $(CRT0) $(OBJECTS) link.ld
+	ld -T link.ld -s -o lcfosc.bin $(CRT0) $(OBJECTS)
+
+%.o : %.asm Makefile
+	nasm -f elf64 -o $@ $<
+
+%.o : %.c Makefile
+	gcc $(CFLAGS) -o $@ -c $<
+
+clean:
+	rm $(OBJECTS) $(CRT0) lcfosc.bin
+