]> git.itanic.dy.fi Git - rrdd/commitdiff
Makefile: Fixes
authorTimo Kokkonen <kaapeli@itanic.dy.fi>
Sun, 6 Mar 2011 10:19:43 +0000 (12:19 +0200)
committerTimo Kokkonen <kaapeli@itanic.dy.fi>
Sun, 6 Mar 2011 11:21:08 +0000 (13:21 +0200)
Proper dependency checking. Improved pretty printing.

Signed-off-by: Timo Kokkonen <kaapeli@itanic.dy.fi>
Makefile

index 895910d31fcfe0b8585f00247ad37c616f68669b..aeae43cd7c5533a513f62010a125858ad80cbd7a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,18 +5,33 @@ CFLAGS=-Wall -O2 -g
 RRDD_OBJS= main.o process.o draw_graphs.o parser.o scheduler.o string.o \
                debug.o
 
-rrdd: $(RRDD_OBJS)
-       @echo -e "\tLD\t" rrdd
-       @$(CC) -o rrdd $(RRDD_OBJS)
+ALL_OBJS = $(RRDD_OBJS)
+ALL_DEBS = $(patsubst %.o,.%.o.d,$(ALL_OBJS))
+
+ifeq ($(V),1)
+       Q               =
+       QUIET_CC        =
+       QUIET_LINK      =
+else
+       Q               = @
+       QUIET_CC        = @echo "       CC " $@;
+       QUIET_LINK      = @echo "     LINK " $@;
+endif
 
 all: rrdd
 
+rrdd: $(RRDD_OBJS)
+       $(QUITET_LINK)$(CC) -o rrdd $(RRDD_OBJS)
+
 clean:
        rm -vf rrdd *~ *.o .*.d
 
 .c.o:
-       @echo -e "\tCC\t" $@
-       @$(CC) -MMD -MF .$@.d $(CFLAGS) -c $< -o $@
+       $(QUIET_CC)$(CC) -MMD -MF .$@.d $(CFLAGS) -c $< -o $@
+       $(Q)cp .$@.d .$@.P; \
+            sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
+                -e '/^$$/ d' -e 's/$$/ :/' < .$@.d >> .$@.P; \
+            mv .$@.P .$@.d
 
 TAGS:
        @echo -e "\tTAGS\t"
@@ -24,5 +39,4 @@ TAGS:
 
 .PHONY: all clean TAGS
 
--include .*.d
-
+-include $(ALL_DEBS)