Nucleus
Barry ACPI + APIC 232d0f9 (3 years, 3 months ago)PRODUCT=nucleus CC=i686-orion-gcc CFLAGS=-Iinclude/ AS=i686-orion-as AFLAGS= LD=i686-orion-gcc LFLAGS=-T linker.ld -ffreestanding -nostdlib AS_SRC := $(shell find . -name '*.S') OBJS = $(sort $(subst ./,build/,$(subst .S,.o,$(AS_SRC)))) C_SRC := $(shell find . -name '*.c') OBJS += $(sort $(subst ./,build/,$(subst .c,.o,$(C_SRC)))) .PHONY: clean all install all: $(PRODUCT) clean: $(info Removing object files) @mkdir -p build @rm -rf build @touch $(PRODUCT) @rm $(PRODUCT) $(PRODUCT): $(OBJS) $(info LD $@) @$(LD) -o $@ $^ $(LFLAGS) build/%.o: %.c $(info CC $<) @mkdir -p $(@D) @$(CC) -c $< -o $@ $(CFLAGS) build/%.o: %.S $(info AS $<) @mkdir -p $(@D) @$(AS) -c $< -o $@ $(AFLAGS) # Overrides build/kernel/idt.o: kernel/idt.c $(info CC $<) @mkdir -p $(@D) @$(CC) -c $< -o $@ $(CFLAGS) -mgeneral-regs-only