Mercurial > lcfOS
annotate cos/Makefile @ 20:b1fed2171e1a
Now working with 2 MB pages
author | windel |
---|---|
date | Mon, 28 Nov 2011 20:54:40 +0100 |
parents | 6129643f5c34 |
children | 69bc6d477b38 |
rev | line source |
---|---|
9 | 1 # vim: set noexpandtab: |
2 | |
12 | 3 all: bootdisk.img Makefile |
9 | 4 |
20 | 5 bootdisk.img: lcfosc.bin grub/menu.lst Makefile |
9 | 6 cp grub/emptybootdisk.img bootdisk.img |
7 mcopy -D o -i bootdisk.img lcfosc.bin :: | |
8 mcopy -D o -i bootdisk.img grub/menu.lst ::/grub | |
9 | |
10 CRT0 = kernel/goto64.o | |
11 | |
12 CFLAGS = -m64 \ | |
13 -nostdinc \ | |
14 -nostdlib \ | |
15 -nostartfiles \ | |
18
6129643f5c34
Fixed interrupt issue, ds, es, ss, fs and gs were not initialized to 0
windel
parents:
14
diff
changeset
|
16 -mno-red-zone \ |
9 | 17 -fno-builtin \ |
12 | 18 -mcmodel=large \ |
9 | 19 -Iinclude |
20 | |
21 OBJECTS = \ | |
22 kernel/video.o \ | |
23 kernel/snprintf.o \ | |
14 | 24 kernel/kernel.o \ |
25 kernel/asmcode.o \ | |
26 kernel/handlers.o | |
27 | |
9 | 28 |
20 | 29 lcfosc.bin: $(CRT0) $(OBJECTS) linker.ld |
30 ld -T linker.ld -o lcfosc.bin $(CRT0) $(OBJECTS) | |
9 | 31 |
12 | 32 %.o : %.asm Makefile |
9 | 33 nasm -f elf64 -o $@ $< |
34 | |
12 | 35 %.o : %.c Makefile |
9 | 36 gcc $(CFLAGS) -o $@ -c $< -Wall -Wextra -Werror |
37 | |
38 clean: | |
20 | 39 rm $(OBJECTS) $(CRT0) lcfosc.bin |
9 | 40 |