2017-11-04 08:01:10 -04:00
|
|
|
# Architecture-dependent
|
2017-11-03 22:14:28 -04:00
|
|
|
OBJS = start.s.o
|
2017-11-03 22:15:05 -04:00
|
|
|
OBJS += init.c.o
|
2017-11-04 08:19:51 -04:00
|
|
|
OBJS += multiboot.c.o
|
2017-11-08 00:07:15 -05:00
|
|
|
OBJS += panic.c.o panic.asm.cpp.o
|
2017-11-08 00:10:09 -05:00
|
|
|
OBJS += pfa.c.o
|
2017-11-04 10:43:07 -04:00
|
|
|
OBJS += paging.c.o paging.asm.cpp.o
|
2017-11-04 08:01:10 -04:00
|
|
|
|
|
|
|
# Architecture-independent
|
2017-11-03 22:32:23 -04:00
|
|
|
OBJS += main.c.o
|
2017-11-03 22:13:30 -04:00
|
|
|
|
2017-11-05 23:41:11 -05:00
|
|
|
# Built-in drivers
|
2017-11-04 01:31:37 -04:00
|
|
|
OBJS += console.c.o
|
2017-11-06 07:13:28 -05:00
|
|
|
OBJS += pic.c.o
|
2017-11-05 23:41:11 -05:00
|
|
|
OBJS += timer.c.o
|
2017-11-06 07:43:56 -05:00
|
|
|
OBJS += keyboard.c.o
|
2017-11-05 23:41:11 -05:00
|
|
|
|
2017-11-06 08:07:10 -05:00
|
|
|
# For debugging
|
2017-11-05 23:41:11 -05:00
|
|
|
OBJS += logger.c.o
|
2017-11-04 01:31:37 -04:00
|
|
|
|
2017-11-02 22:22:19 -04:00
|
|
|
OBJS += protected.c.o protected.asm.cpp.o
|
2017-11-05 08:50:13 -05:00
|
|
|
|
2017-11-05 10:29:44 -05:00
|
|
|
OBJS += tss.c.o tss.asm.cpp.o
|
2017-11-05 10:37:11 -05:00
|
|
|
OBJS += tasks.asm.cpp.o
|
2017-11-05 10:16:56 -05:00
|
|
|
|
2017-11-05 08:50:13 -05:00
|
|
|
OBJS += interrupt.asm.cpp.o
|
|
|
|
|
|
|
|
OBJS += exception.c.o
|
|
|
|
OBJS += hwint.c.o
|
|
|
|
OBJS += syscall.c.o
|
2017-11-01 05:20:44 -04:00
|
|
|
|
2017-11-08 04:38:55 -05:00
|
|
|
all: $(OUTPUT)
|
2017-11-01 00:53:54 -04:00
|
|
|
|
|
|
|
clean:
|
2017-11-08 04:38:55 -05:00
|
|
|
rm -f $(OUTPUT) $(OBJS)
|
2017-11-01 00:53:54 -04:00
|
|
|
|
2017-11-08 04:38:55 -05:00
|
|
|
$(OUTPUT): $(OBJS)
|
2017-11-08 07:02:36 -05:00
|
|
|
$(CC) -T linker.ld -o $(OUTPUT) -ffreestanding -nostdlib -lgcc $(OBJS) $(LIBSRC) $(LIBK)
|
2017-11-01 00:53:54 -04:00
|
|
|
|
|
|
|
%.c.o: %.c
|
2017-11-08 06:34:14 -05:00
|
|
|
$(CC) -c $< -o $@ $(CFLAGS)
|
2017-11-01 00:53:54 -04:00
|
|
|
|
|
|
|
%.s.o: %.s
|
|
|
|
$(AS) $< -o $@
|
2017-11-01 01:26:22 -04:00
|
|
|
|
2017-11-02 12:01:00 -04:00
|
|
|
%.asm.cpp.o: %.asm.cpp
|
2017-11-05 12:32:14 -05:00
|
|
|
nasm -felf32 -o $@ $<
|
2017-11-02 12:01:00 -04:00
|
|
|
|
|
|
|
%.asm.cpp: %.asm
|
|
|
|
cpp -P $< $@
|