selfmade-os
annotate makefile @ 1:42ba76f77035
the kernel with output and mem alloc
author | meillo@marmaro.de |
---|---|
date | Sun, 01 Nov 2009 23:50:51 +0100 |
parents | |
children |
rev | line source |
---|---|
meillo@1 | 1 |
meillo@1 | 2 CC = i386-elf-gcc |
meillo@1 | 3 CFLAGS = -Wall -Wextra -nostdlib -nostartfiles -nodefaultlibs |
meillo@1 | 4 |
meillo@1 | 5 LD = i386-elf-ld |
meillo@1 | 6 LDFLAGS = -T linker.ld |
meillo@1 | 7 |
meillo@1 | 8 OBJ = loader.o kernel.o io.o mem.o |
meillo@1 | 9 |
meillo@1 | 10 qemu: os.iso |
meillo@1 | 11 qemu -m 16 -boot cd -cdrom os.iso |
meillo@1 | 12 |
meillo@1 | 13 os.iso: kernel |
meillo@1 | 14 cp kernel os-isofiles/boot/kernel |
meillo@1 | 15 genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o os.iso os-isofiles |
meillo@1 | 16 |
meillo@1 | 17 loader.o: loader.s |
meillo@1 | 18 yasm -f elf -o loader.o loader.s |
meillo@1 | 19 |
meillo@1 | 20 kernel: linker.ld $(OBJ) |
meillo@1 | 21 i386-elf-ld -T linker.ld -o kernel $(OBJ) |
meillo@1 | 22 |
meillo@1 | 23 clean: |
meillo@1 | 24 rm -f *.o |
meillo@1 | 25 rm -f kernel |
meillo@1 | 26 |
meillo@1 | 27 distclean: clean |
meillo@1 | 28 rm -f os.iso |