export LC_ALL=C
export LANG=C
export TOPDIR=${CURDIR}
-ifeq ($(KBUILD_VERBOSE),99)
- MAKE:=3>/dev/null $(MAKE)
-endif
export IS_TTY=$(shell tty -s && echo 1 || echo 0)
include $(TOPDIR)/include/verbose.mk
_N:="\\033[m" #normal
endif
+define MESSAGE
+ echo -e "$(_Y)$(1)$(_N)" >&3
+endef
+
ifneq ($(KBUILD_VERBOSE),99)
ifeq ($(QUIET),1)
$(MAKECMDGOALS): trace
trace: FORCE
@[ -f "$(MAKECMDGOALS)" ] || { \
[ -z "$${PWD##$$TOPDIR}" ] || DIR=" -C $${PWD##$$TOPDIR/}"; \
- echo -e "$(_Y)make[$$(($(MAKELEVEL)+1))]$$DIR $(MAKECMDGOALS)$(_N)" >&3; \
+ $(call MESSAGE, "make[$$(($(MAKELEVEL)+1))]$$DIR $(MAKECMDGOALS)"); \
}
else
export QUIET:=1
PREREQ_PACKAGES:=$(patsubst %,%-prereq,$(prereq-y) $(prereq-m))
DOWNLOAD_PACKAGES:=$(patsubst %,%-download,$(package-y) $(package-m))
-COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m))
+COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-m))
INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y))
$(STAMP_DIR) $(TARGET_DIR):
mkdir -p $@
+ifeq ($(QUIET),1)
+%-compile %-install: FORCE
+ $(MAKE) -C $* $(patsubst $*-%,%,$@) || { $(call MESSAGE, "*** $* $(patsubst $*-%,%,$@) failed"); false; }
+
+%-prereq %-download %-clean: FORCE
+else
%-prereq %-download %-clean %-compile %-install: FORCE
+endif
$(MAKE) -C $* $(patsubst $*-%,%,$@)
-%-prereq: $(STAMP_DIR) $(TARGET_DIR)
-%-prepare: $(TARGET_DIR)
-%-compile: %-prepare
+# .IGNORE: $(COMPILE_PACKAGES)
$(TMP_DIR)/.packagedeps: $(TMP_DIR)/.packageinfo
@$(TOPDIR)/scripts/metadata.pl package_mk < $< > $@ || rm -f $@