diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6697fc6 --- /dev/null +++ b/Makefile @@ -0,0 +1,39 @@ +include config.mk + +CFILES := $(wildcard *.c) +CFILES += $(wildcard */*.c) +CFILES += $(wildcard boot/$(TARGET_BOOTLOADER)/*.c) +CFILES += $(wildcard arch/$(TARGET_MACHINE)/*.c) +CFILES += $(wildcard arch/$(TARGET_MACHINE)/*/*.c) + +SFILES := $(wildcard *.S) +SFILES += $(wildcard */*.S) +SFILES += $(wildcard arch/$(TARGET_MACHINE)/*.S) +SFILES += $(wildcard arch/$(TARGET_MACHINE)/*/*.S) + +OBJFILES := $(patsubst %.c,%.o,$(CFILES)) +OBJFILES += $(patsubst %.S,%.o,$(SFILES)) + +DFILES := $(wildcard *.d) +DFILES += $(wildcard */*.d) +DFILES += $(wildcard arch/$(TARGET_MACHINE)/*.d) +DFILES += $(wildcard arch/$(TARGET_MACHINE)/*/*.d) + +BIN := jove.elf + +all: $(BIN) + +.PHONY: clean +clean: + rm $(OBJFILES) + rm $(DFILES) + rm $(BIN) + +$(BIN): ${OBJFILES} + $(LD) $(LDFLAGS) ${OBJFILES} -o $(BIN) + +%.o:%.c + $(CC) $(CFLAGS) -c $< -o $@ + +%.o:%.S + $(AS) -g -c $< -o $@ |