Cleaner makefile execution, use 'make Q=' if you want to see full lines

This commit is contained in:
Philippe Teuwen 2019-06-02 00:25:25 +02:00
commit 8c0cd4cfa2
13 changed files with 253 additions and 145 deletions

View file

@ -1,3 +1,7 @@
# Hide full compilation line:
Q?=@
# To see full command lines, use make Q=
CC = gcc
CFLAGS = -std=c99 -Wall -O3 -I.
LDFLAGS = -std=c99 -Wall
@ -9,15 +13,20 @@ PROG := nonce2key
all: $(PROG)
$(PROG): $(OBJ)
$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
$(info [=] LD $@)
$(Q)$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
clean:
@$(RM) $(DEP) $(OBJ) $(PROG)
$(Q)$(RM) $(DEP) $(OBJ) $(PROG)
ifneq ($(filter clean,$(MAKECMDGOALS)),clean)
-include $(DEP)
endif
%.d: %.c
$(info GEN $@)
@$(CC) -MM $(CFLAGS) $< | sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@
$(info [-] GEN $@)
$(Q)$(CC) -MM $(CFLAGS) $< | sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@
%.o: %.c
$(info [-] CC $<)
$(Q)$(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<