quinn-os/Makefile

124 lines
3.5 KiB
Makefile

CC =/opt/cross/bin/i686-elf-gcc
#CFLAGS =-Werror
LDFLAGS =-nostdlib -fno-builtin -nostartfiles -nodefaultlibs
LD =/opt/cross/bin/i686-elf-ld
all:kernel.bin
minix.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o minix.o -c minix.c
hashmap.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o hashmap.o -c hashmap.c
socket.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o socket.o -c socket.c
tcp.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o tcp.o -c tcp.c
icmp.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o icmp.o -c icmp.c
ipv4.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o ipv4.o -c ipv4.c
arp.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o arp.o -c arp.c
i825xx.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o i825xx.o -c i825xx.c
ether.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o ether.o -c ether.c
fpu.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o fpu.o -c fpu.c
mouse.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o mouse.o -c mouse.c
gui.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o gui.o -c gui.c
hd.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o hd.o -c hd.c
pata.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o pata.o -c pata.c
rtc.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o rtc.o -c rtc.c
execve.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o execve.o -c execve.c
tty_fs.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o tty_fs.o -c tty_fs.c
syscalls.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o syscalls.o -c syscalls.c
font.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o font.o -c font.c
timer.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o timer.o -c timer.c
fat.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o fat.o -c fat.c
vfs.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o vfs.o -c vfs.c
sfs.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o sfs.o -c sfs.c
ramdisk.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o ramdisk.o -c ramdisk.c
keyboard.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o keyboard.o -c keyboard.c
io.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o io.o -c io.c
malloc.o:
$(CC) $(CFLAGS) -DMALLOC_FAILURE_ACTION -DHAVE_MMAP=0 -DLACKS_SYS_PARAM_H -DLACKS_UNISTD_H -DLACKS_FCNTL_H -DLACKS_SYS_TYPES_H=1 -DNO_MALLOC_STATS=1 -DLACKS_ERRNO_H -DLACKS_TIME_H -DLACKS_STDLIB_H -DLACKS_STRING_H -DLACKS_SYS_MMAN_H $(LDFLAGS) -o malloc.o -c malloc.c
memory.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o memory.o -c memory.c
string.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o string.o -c string.c
interrupts.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o interrupts.o -c interrupts.c
gdt.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o gdt.o -c gdt.c
console.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o console.o -c console.c
pci.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o pci.o -c pci.c
schedule.o:
$(CC) $(CFLAGS) $(LDFLAGS) -o schedule.o -c schedule.c
loader.o:
nasm -f elf -o loader.o loader.s
kernel.o:loader.o
$(CC) $(CFLAGS) $(LDFLAGS) -o kernel.o -c kernel.c
kernel.bin:kernel.o console.o gdt.o interrupts.o string.o memory.o malloc.o io.o keyboard.o ramdisk.o sfs.o vfs.o pci.o schedule.o timer.o fat.o font.o syscalls.o tty_fs.o execve.o rtc.o pata.o hd.o gui.o mouse.o fpu.o i825xx.o ether.o arp.o ipv4.o icmp.o socket.o tcp.o hashmap.o minix.o
$(LD) -T linker.ld -o kernel.bin loader.o kernel.o console.o gdt.o interrupts.o string.o memory.o malloc.o io.o keyboard.o ramdisk.o sfs.o vfs.o pci.o schedule.o timer.o fat.o font.o syscalls.o tty_fs.o execve.o rtc.o pata.o hd.o gui.o mouse.o fpu.o i825xx.o ether.o arp.o ipv4.o icmp.o socket.o tcp.o hashmap.o minix.o /opt/cross/lib/gcc/i686-elf/5.2.0/libgcc.a
clean:
rm -f loader.o kernel.o kernel.bin kernel.img console.o gdt.o interrupts.o string.o memory.o malloc.o io.o keyboard.o shell.o ramdisk.o sfs.o vfs.o pci.o schedule.o timer.o fat.o font.o syscalls.o tty_fs.o execve.o rtc.o pata.o hd.o gui.o mouse.o fpu.o i825xx.o ether.o arp.o ipv4.o icmp.o socket.o tcp.o hashmap.o minix.o
install:
rm -f loader.o kernel.o kernel.bin