1
0
Fork 0
mirror of https://github.com/tailix/kernel.git synced 2024-12-04 11:34:42 -05:00
kernel/arch/Makefile
2017-11-01 08:37:39 +00:00

27 lines
573 B
Makefile

ifneq (ok, $(shell test -d '$(I)' && echo 'ok'))
$(error 'Include directory "$(I)" does not exist')
endif
CCPREFIX = i686-elf-
AS = $(CCPREFIX)as
CC = $(CCPREFIX)gcc
OBJS = boot.s.o main.c.o logger.c.o console.c.o gdt.c.o gdt.asm.o idt.c.o idt.asm.o isr.c.o isr.asm.o
all: kernel
clean:
rm -f kernel $(OBJS)
kernel: $(OBJS)
$(CC) -T linker.ld -o $@ -ffreestanding -nostdlib -lgcc $(OBJS)
%.c.o: %.c
$(CC) -c $< -o $@ -std=gnu99 -ffreestanding -fno-builtin -fno-stack-protector -Wall -Wextra -I$(I)
%.s.o: %.s
$(AS) $< -o $@
%.asm.o: %.asm
nasm -felf -o $@ $<