kern

view Makefile @ 1:ebe5e0e44a9d

pretty much finished the code for article 1, might do minor adjustments though
author John Tsiombikas <nuclear@member.fsf.org>
date Thu, 02 Dec 2010 08:45:41 +0200
parents 662ff2170531
children 86781ef20689
line source
1 # collect all of our C and assembly source files
2 csrc = $(wildcard src/*.c) $(wildcard src/klibc/*.c)
3 asmsrc = $(wildcard src/*.S) $(wildcard src/klibc/*.S)
5 # each source file will generate one object file
6 obj = $(csrc:.c=.o) $(asmsrc:.S=.o)
8 CC = gcc
10 # -nostdinc instructs the compiler to ignore standard include directories
11 # -m32 instructs the compiler to produce 32bit code (in case we have a 64bit compiler)
12 CFLAGS = -m32 -Wall -g -nostdinc -fno-builtin -Isrc -Isrc/klibc
13 ASFLAGS = -m32 -g -nostdinc -fno-builtin -Isrc -Isrc/klibc
15 bin = kernel.elf
17 # default target: make an ELF binary by linking the object files
18 # we need to specify where to assume the text section (code) is going
19 # in memory, as well as the kernel entry point (kentry).
20 $(bin): $(obj)
21 ld -melf_i386 -o $@ -Ttext 0x200000 -e kentry $(obj)
23 .PHONY: clean
24 clean:
25 rm -f $(obj) $(bin)