view cos/Makefile @ 9:92ace1ca50a8

64 bits kernel without interrupts but with printf in C
author windel
date Sun, 13 Nov 2011 12:47:47 +0100
parents
children 607898120eb1
line wrap: on
line source

# vim: set noexpandtab:

all: lcfosc.elf

bootdisk: lcfosc.elf grub/menu.lst
	objcopy -O binary lcfosc.elf lcfosc.bin
	cp grub/emptybootdisk.img bootdisk.img
	mcopy -D o -i bootdisk.img lcfosc.bin ::
	mcopy -D o -i bootdisk.img grub/menu.lst ::/grub
	mdir -i bootdisk.img

CRT0 = kernel/goto64.o

CFLAGS = -m64 \
			-nostdinc \
			-nostdlib \
			-nostartfiles \
			-fno-builtin \
			-Iinclude

OBJECTS = \
	kernel/video.o \
	kernel/snprintf.o \
	kernel/kernel.o

lcfosc.elf: $(CRT0) $(OBJECTS) linker.ld
	ld -T linker.ld -o lcfosc.elf $(CRT0) $(OBJECTS)

%.o : %.asm
	nasm -f elf64 -o $@ $<

%.o : %.c
	gcc $(CFLAGS) -o $@ -c $< -Wall -Wextra -Werror

clean:
	rm $(OBJECTS) $(CRT0) lcfosc.bin lcfosc.elf