SRCS = $(shell find -name '*.[cS]') OBJS = $(addsuffix .o,$(basename $(SRCS))) CC = gcc LD = ld ASM = nasm ASFLAGS = -f elf CFLAGS = -m32 -Wall -g -fno-stack-protector -nostdinc -I include -ffreestanding LDFLAGS = -melf_i386 -Tbuild/linker.ld kernel2.lfx: $(OBJS) $(LD) $(LDFLAGS) -o $@ $^ %.o: %.c $(CC) $(CFLAGS) -c -o $@ $^ %.o: %.S $(ASM) $(ASFLAGS) -o $@ $^ clean: rm $(OBJS) .PHONY: clean