From: nbd Date: Tue, 19 Dec 2006 01:20:44 +0000 (+0000) Subject: implement real-time progress info for the package/target info collect (thanks to... X-Git-Url: http://git.ozo.com/?p=openwrt-10.03%2F.git;a=commitdiff_plain;h=9805286b40707a31bdfa39c59afe6c8aecd4e986;hp=42c04fcd015a54efd3142481b11d7a650319e0c0 implement real-time progress info for the package/target info collect (thanks to Thorsten Glaser for the idea) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5850 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- diff --git a/Makefile b/Makefile index 2dcb72763..447457e26 100644 --- a/Makefile +++ b/Makefile @@ -52,24 +52,31 @@ ifeq ($(FORCE),) world: tmp/.prereq-packages tmp/.prereq-target endif -tmp/.pkginfo: +ifeq ($(IS_TTY),1) + define progress + printf "\033[M\r$(1)" >&2; + endef +endif + +define dumpinfo @mkdir -p tmp - @echo Collecting package info... - @-for dir in package/*/; do \ + @echo -n Collecting package info... + @-for dir in $(1)/*/; do \ [ -f "$${dir}/Makefile" ] || continue; \ + $(call progress,Collecting package info... $${dir%%/}) \ echo Source-Makefile: $${dir}Makefile; \ $(NO_TRACE_MAKE) --no-print-dir DUMP=1 -C $$dir 3>/dev/null || echo "ERROR: please fix $${dir}Makefile" >&2; \ echo; \ done > $@ + $(call progress,Collecting package info... done) + echo +endef + +tmp/.pkginfo: + $(call dumpinfo,package) tmp/.targetinfo: - @mkdir -p tmp - @echo Collecting target info... - @-for dir in target/linux/*/; do \ - [ -f "$${dir}/Makefile" ] || continue; \ - ( cd "$$dir"; $(NO_TRACE_MAKE) --no-print-dir DUMP=1 3>/dev/null || echo "ERROR: please fix $${dir}Makefile" >&2 ); \ - echo; \ - done > $@ + $(call dumpinfo,target/linux) tmpinfo-clean: FORCE @-rm -rf tmp/.pkginfo tmp/.targetinfo