diff --git a/Makefile b/Makefile index 11d20b3..3f8a3f8 100644 --- a/Makefile +++ b/Makefile @@ -2,13 +2,12 @@ SHELL = /bin/sh .SUFFIXES: CC = avr-gcc -RM = rm -vf STRIP = avr-strip -CPPFLAGS ?= -DNDEBUG -CFLAGS ?= -Os -LDFLAGS ?= -nostdlib -nostartfiles -flto +CPPFLAGS = -DNDEBUG +CFLAGS = -Os +LDFLAGS += -nostdlib -nostartfiles -flto CPPFLAGS += -Iinclude CFLAGS += -std=gnu99 -MMD -MP CFLAGS += -Wall -Wextra -Wpedantic -Wno-pointer-arith @@ -18,20 +17,27 @@ SRC += $(wildcard src/*.S src/*/*.S src/*/*/*.S src/*/*/*/*.S src/*/*/*/*/*.S sr OBJ := $(SRC:%=obj/%.o) -all: bin/a.out -clean:; @-$(RM) -r bin/ obj/ +.PHONY: all clean install-strip info +all: info bin/a.out +clean:; @-$(RM) -rv bin/ obj/ +info: + $(info CC: $(CC)) + $(info CFLAGS: $(CFLAGS)) + $(info CPPFLAGS: $(CPPFLAGS)) + $(info LDFLAGS: $(LDFLAGS)) + $(info LDLIBS: $(LDLIBS)) bin/a.out: $(OBJ) - $(info [LD] $@) + $(info [LD] $(CC) $@) @mkdir -p $(@D) @$(CC) -o $@ $^ $(LDFLAGS) $(LDLIBS) bin/a.hex: bin/a.out - $(info [STRIP] $@) + $(info [STRIP] $(STRIP) $@) @$(STRIP) -o $@ $< obj/%.o: % - $(info [CC] $@) + $(info [CC] $(CC) $@) @mkdir -p $(@D) @$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<