Browse Source

Makefile: Improve silent and verbose build output.

Georgi Chorbadzhiyski 9 years ago
parent
commit
a36c788892
1 changed files with 17 additions and 13 deletions
  1. 17
    13
      Makefile

+ 17
- 13
Makefile View File

5
 RM = rm -f
5
 RM = rm -f
6
 MV = mv -f
6
 MV = mv -f
7
 
7
 
8
+# Setup quiet build
9
+Q =
10
+SAY = @true
8
 ifndef V
11
 ifndef V
9
 Q = @
12
 Q = @
13
+SAY = @echo
10
 endif
14
 endif
11
 
15
 
12
 CFLAGS ?= -O2 -ggdb -pipe -ffunction-sections -fdata-sections \
16
 CFLAGS ?= -O2 -ggdb -pipe -ffunction-sections -fdata-sections \
56
 	@$(MAKE) --no-print-directory videohubctrl
60
 	@$(MAKE) --no-print-directory videohubctrl
57
 
61
 
58
 videohubctrl: $(videohubctrl_OBJS)
62
 videohubctrl: $(videohubctrl_OBJS)
59
-	$(Q)echo "  LINK	videohubctrl"
63
+	$(SAY) "  LINK	videohubctrl"
60
 	$(Q)$(CROSS)$(CC) $(CFLAGS) $(DEFS) $(videohubctrl_OBJS) $(videohubctrl_LIBS) $(LDFLAGS) -o videohubctrl
64
 	$(Q)$(CROSS)$(CC) $(CFLAGS) $(DEFS) $(videohubctrl_OBJS) $(videohubctrl_LIBS) $(LDFLAGS) -o videohubctrl
61
 
65
 
62
 all: version
66
 all: version
63
 
67
 
64
 $(FUNCS_LIB): $(FUNCS_DIR)/libfuncs.h
68
 $(FUNCS_LIB): $(FUNCS_DIR)/libfuncs.h
65
-	$(Q)echo "  MAKE	$(FUNCS_LIB)"
69
+	$(SAY) "  MAKE	$(FUNCS_LIB)"
66
 	$(Q)$(MAKE) -s -C $(FUNCS_DIR)
70
 	$(Q)$(MAKE) -s -C $(FUNCS_DIR)
67
 
71
 
68
 %.o: %.c Makefile RELEASE
72
 %.o: %.c Makefile RELEASE
69
 	@$(MKDEP)
73
 	@$(MKDEP)
70
-	$(Q)echo "  CC	videohubctrl	$<"
74
+	$(SAY) "  CC	videohubctrl	$<"
71
 	$(Q)$(CROSS)$(CC) $(CFLAGS) $(DEFS) -c $<
75
 	$(Q)$(CROSS)$(CC) $(CFLAGS) $(DEFS) -c $<
72
 
76
 
73
 -include $(videohubctrl_SRC:.c=.d)
77
 -include $(videohubctrl_SRC:.c=.d)
74
 
78
 
75
 strip:
79
 strip:
76
-	$(Q)echo "  STRIP	$(PROGS)"
80
+	$(SAY) "  STRIP	$(PROGS)"
77
 	$(Q)$(CROSS)$(STRIP) $(PROGS)
81
 	$(Q)$(CROSS)$(STRIP) $(PROGS)
78
 
82
 
79
 clean:
83
 clean:
80
-	$(Q)echo "  RM	$(CLEAN_OBJS)"
84
+	$(SAY) "  RM	$(CLEAN_OBJS)"
81
 	$(Q)$(RM) $(CLEAN_OBJS)
85
 	$(Q)$(RM) $(CLEAN_OBJS)
82
 
86
 
83
 distclean: clean
87
 distclean: clean
84
-	$(Q)echo "  RM	$(DISTCLEAN_OBJS)"
88
+	$(SAY) "  RM	$(DISTCLEAN_OBJS)"
85
 	$(Q)$(RM) $(DISTCLEAN_OBJS)
89
 	$(Q)$(RM) $(DISTCLEAN_OBJS)
86
 	$(Q)$(MAKE) -s -C $(FUNCS_DIR) clean
90
 	$(Q)$(MAKE) -s -C $(FUNCS_DIR) clean
87
 
91
 
88
 install: all
92
 install: all
89
-	@install -d "$(INSTALL_PRG_DIR)"
90
-	@install -d "$(INSTALL_DOC_DIR)"
91
-	@echo "INSTALL $(INSTALL_PRG) -> $(INSTALL_PRG_DIR)"
93
+	$(Q)install -d "$(INSTALL_PRG_DIR)"
94
+	$(Q)install -d "$(INSTALL_DOC_DIR)"
95
+	$(SAY) "INSTALL $(INSTALL_PRG) -> $(INSTALL_PRG_DIR)"
92
 	$(Q)-install $(INSTALL_PRG) "$(INSTALL_PRG_DIR)"
96
 	$(Q)-install $(INSTALL_PRG) "$(INSTALL_PRG_DIR)"
93
-	@echo "INSTALL $(INSTALL_DOC) -> $(INSTALL_DOC_DIR)"
97
+	$(SAY) "INSTALL $(INSTALL_DOC) -> $(INSTALL_DOC_DIR)"
94
 	$(Q)-install --mode 0644 $(INSTALL_DOC) "$(INSTALL_DOC_DIR)"
98
 	$(Q)-install --mode 0644 $(INSTALL_DOC) "$(INSTALL_DOC_DIR)"
95
 
99
 
96
 uninstall:
100
 uninstall:
104
 	done
108
 	done
105
 
109
 
106
 help:
110
 help:
107
-	$(Q)echo -e "\
108
-videohubctrl build\n\n\
111
+	@printf "\
112
+videohubctrl build parameters\n\n\
109
 Build targets:\n\
113
 Build targets:\n\
110
   all             - Build videohubctrl\n\
114
   all             - Build videohubctrl\n\
111
   install         - Install videohubctrl in PREFIX: $(PREFIX)\n\
115
   install         - Install videohubctrl in PREFIX: $(PREFIX)\n\
116
   distclean       - Remove all generated files.\n\
120
   distclean       - Remove all generated files.\n\
117
 \n\
121
 \n\
118
   make V=1          Enable verbose build\n\
122
   make V=1          Enable verbose build\n\
119
-  make PREFIX=dir   Set install prefix\n"
123
+  make PREFIX=dir   Set install prefix\n\n"

Loading…
Cancel
Save