# Makefile for HOS # Josh Holtrop # Created: 07/08/04 # Modified: 08/22/04 # Assembler Information: NASM=nasm NASM_FLAGS=-f aout # C Information: CC=gcc CC_FLAGS=-fleading-underscore -fno-builtin -nostdlib -nostartfiles -nodefaultlibs -I. -Wall # Linker Information: LD=ld LD_FLAGS=-nodefaultlibs -nostdlib --no-demangle -T link.ld all: Asm_Kernel C_Kernel $(LD) $(LD_FLAGS) -Map kernel.map \ boot.o kernel.o asmfuncs.o mm.o vmm.o parallel.o conv.o kout.o \ vconsole.o display.o devices.o pic.o keyboard.o ramdisk.o vfs.o \ devfs.o -o kernel.bin Asm_Kernel: $(NASM) $(NASM_FLAGS) -l boot.lst boot.asm -o boot.o $(NASM) $(NASM_FLAGS) -l asmfuncs.lst lang/asmfuncs.asm -o asmfuncs.o C_Kernel: $(CC) $(CC_FLAGS) -c kernel.c -o kernel.o $(CC) $(CC_FLAGS) -c mm/mm.c -o mm.o $(CC) $(CC_FLAGS) -c mm/vmm.c -o vmm.o $(CC) $(CC_FLAGS) -c char/parallel.c -o parallel.o $(CC) $(CC_FLAGS) -c lang/conv.c -o conv.o $(CC) $(CC_FLAGS) -c kout.c -o kout.o $(CC) $(CC_FLAGS) -c char/vconsole.c -o vconsole.o $(CC) $(CC_FLAGS) -c fs/devices.c -o devices.o $(CC) $(CC_FLAGS) -c display.c -o display.o $(CC) $(CC_FLAGS) -c sys/pic.c -o pic.o $(CC) $(CC_FLAGS) -c char/keyboard.c -o keyboard.o $(CC) $(CC_FLAGS) -c block/ramdisk.c -o ramdisk.o $(CC) $(CC_FLAGS) -c fs/devfs.c -o devfs.o $(CC) $(CC_FLAGS) -c fs/vfs.c -o vfs.o ################################################# # Clean up the source directory of any binaries # ################################################# clean: -rm -f *.o *.bin *.map *.lst *.out *~ fs/*~ sys/*~ block/*~ char/*~ lang/*~ mm/*~