Quiet make output.
authorKeith Packard <keithp@keithp.com>
Sun, 21 Feb 2010 05:05:45 +0000 (21:05 -0800)
committerKeith Packard <keithp@keithp.com>
Sun, 21 Feb 2010 05:05:45 +0000 (21:05 -0800)
This borrows ideas from the notmuch project to reduce the command line
clutter seen when compiling or linking stuff.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/Makefile.proto
src/teledongle-v0.1/Makefile.defs
src/teledongle-v0.2/Makefile.defs
src/telemetrum-v0.1-sirf/Makefile.defs
src/telemetrum-v0.1-sky/Makefile.defs
src/telemetrum-v0.2/Makefile.defs
src/tidongle/Makefile.defs

index 958b7572ac783ed1487ceaea0f5911fb69bac78e..c98abca60d101f84fd7fda12cbcfd21ba0bea50f 100644 (file)
@@ -174,6 +174,10 @@ TD_SRC = \
 
 include Makefile.defs
 
+CFLAGS += $(PRODUCT_DEF) -I.
+
+NICKLE=nickle
+
 REL=$(SRC:.c=.rel) ao_product.rel
 ADB=$(REL:.rel=.adb)
 ASM=$(REL:.rel=.asm)
@@ -188,29 +192,38 @@ PMAP=$(PROG:.ihx=.map)
 PMEM=$(PROG:.ihx=.mem)
 PAOM=$(PROG:.ihx=)
 
+V=0
+# The user has explicitly enabled quiet compilation.
+ifeq ($(V),0)
+quiet = @printf "  $1 $2 $@\n"; $($1)
+endif
+# Otherwise, print the full command line.
+quiet ?= $($1)
+
 %.rel : %.c $(INC)
-       $(CC) -c $(CFLAGS) -o$@ $<
+       $(call quiet,CC,$(PRODUCT_DEF)) $(CFLAGS) -c -o$@ $<
 
-all: $(PROG)
+all: ../$(PROG)
 
-$(PROG): $(REL) Makefile Makefile.defs ../Makefile.proto
-       $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(REL)
+../$(PROG): $(REL) Makefile Makefile.defs ../Makefile.proto
+       $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(REL) && mv $(PROG) ..
 
 ../altitude.h: make-altitude
        nickle $< > $@
 
 ao_product.h: ao-make-product.5c
-             nickle $< -m altusmetrum.org -p $(PRODUCT) -v $(VERSION) > $@
+       $(call quiet,NICKLE,$<) $< -m altusmetrum.org -p $(PRODUCT) -v $(VERSION) > $@
 
 ao_product.rel: ao_product.c ao_product.h
-       $(CC) -c $(CFLAGS) -D PRODUCT_DEFS='\"ao_product.h\"' -o$@ $<
+       $(call quiet,CC) -c $(CFLAGS) -D PRODUCT_DEFS='\"ao_product.h\"' -o$@ $<
 
 distclean:     clean
 
 clean:
        rm -f $(ADB) $(ASM) $(LNK) $(LST) $(REL) $(RST) $(SYM)
-       rm -f $(PROG) $(PCDB) $(PLNK) $(PMAP) $(PMEM) $(PAOM)
+       rm -f $(PCDB) $(PLNK) $(PMAP) $(PMEM) $(PAOM)
        rm -f ao_product.h
+       rm -f ../$(PROG)
 
 install:
 
index 3526b4c5522d6d713b4e0b8e74e444f74931d665..06559b2881a1ed5ca71456ffeda948eb1e16636c 100644 (file)
@@ -5,5 +5,4 @@ SRC = \
        $(DBG_SRC)
 
 PRODUCT=TeleDongle-v0.1
-
-CFLAGS += -DTELEDONGLE_V_0_1 -I.
+PRODUCT_DEF=-DTELEDONGLE_V_0_1
index faad4dced17c7edc4f7214caa9468c90708550dd..23694fdaaf6463283307dcf271817297440b5331 100644 (file)
@@ -5,5 +5,4 @@ SRC = \
        $(DBG_SRC)
 
 PRODUCT=TeleDongle-v0.2
-
-CFLAGS += -DTELEDONGLE_V_0_2 -I.
+PRODUCT_DEF=-DTELEDONGLE_V_0_2
index 1157d6791081013652518b2ea93b01ec6413e0ba..7306683eb340aa07ea7298a700c71b3acdeea07a 100644 (file)
@@ -7,5 +7,4 @@ SRC = \
        $(DBG_SRC)
 
 PRODUCT=TeleMetrum-v0.1-SiRF
-
-CFLAGS += -DTELEMETRUM_V_0_1 -I.
+PRODUCT_DEF=-DTELEMETRUM_V_0_1
index ff7fd1bf859b50a2adad43f0b97c600a53f1e2e9..df475baafa4c3110e9e96222dd67012779522d6a 100644 (file)
@@ -7,5 +7,4 @@ SRC = \
        $(DBG_SRC)
 
 PRODUCT=TeleMetrum-v0.1
-
-CFLAGS += -DTELEMETRUM_V_0_1 -I.
+PRODUCT_DEF=-DTELEMETRUM_V_0_1
index d5b0a9629141d5128f11ef06b998ea72cabbe5cc..eb11e7dc8eb64cb8e12cebde710f2912eddd58a7 100644 (file)
@@ -7,5 +7,4 @@ SRC = \
        $(DBG_SRC)
 
 PRODUCT=TeleMetrum-v0.2
-
-CFLAGS += -DTELEMETRUM_V_0_2 -I.
+PRODUCT_DEF=-DTELEMETRUM_V_0_2
index 167629400648af250d311b62326255ab66c31434..5b910b9b3c39250b468a767428bc251846e3e953 100644 (file)
@@ -5,4 +5,4 @@ SRC = \
 
 PRODUCT=TIDongle
 
-CFLAGS += -DTIDONGLE -I.
+PRODUCT_DEF=-DTIDONGLE