3 changed files with 89 additions and 81 deletions
@ -0,0 +1,88 @@ |
|||||
|
#
|
||||
|
# makefile to keep buildsystem helpers
|
||||
|
#
|
||||
|
# -----------------------------------------------------------------------------
|
||||
|
|
||||
|
archives-list: |
||||
|
@rm -f $(BUILD_TMP)/$@ |
||||
|
@make -qp | grep --only-matching '^\$(ARCHIVE).*:' | sed "s|:||g" > $(BUILD_TMP)/$@ |
||||
|
|
||||
|
DOCLEANUP ?= no |
||||
|
GETMISSING ?= no |
||||
|
archives-info: archives-list |
||||
|
@echo "[ ** ] Unused targets in make/archives.mk" |
||||
|
@grep --only-matching '^\$$(ARCHIVE).*:' make/archives.mk | sed "s|:||g" | \
|
||||
|
while read target; do \
|
||||
|
found=false; \
|
||||
|
for makefile in make/*.mk; do \
|
||||
|
if [ "$${makefile##*/}" = "archives.mk" ]; then \
|
||||
|
continue; \
|
||||
|
fi; \
|
||||
|
if [ "$${makefile: -9}" = "-extra.mk" ]; then \
|
||||
|
continue; \
|
||||
|
fi; \
|
||||
|
if grep -q "$$target" $$makefile; then \
|
||||
|
found=true; \
|
||||
|
fi; \
|
||||
|
if [ "$$found" = "true" ]; then \
|
||||
|
continue; \
|
||||
|
fi; \
|
||||
|
done; \
|
||||
|
if [ "$$found" = "false" ]; then \
|
||||
|
echo -e "[$(TERM_RED) !! $(TERM_NORMAL)] $$target"; \
|
||||
|
fi; \
|
||||
|
done; |
||||
|
@echo "[ ** ] Unused archives" |
||||
|
@find $(ARCHIVE)/ -maxdepth 1 -type f | \
|
||||
|
while read archive; do \
|
||||
|
if ! grep -q $$archive $(BUILD_TMP)/archives-list; then \
|
||||
|
echo -e "[$(TERM_YELLOW) rm $(TERM_NORMAL)] $$archive"; \
|
||||
|
if [ "$(DOCLEANUP)" = "yes" ]; then \
|
||||
|
rm $$archive; \
|
||||
|
fi; \
|
||||
|
fi; \
|
||||
|
done; |
||||
|
@echo "[ ** ] Missing archives" |
||||
|
@cat $(BUILD_TMP)/archives-list | \
|
||||
|
while read archive; do \
|
||||
|
if [ -e $$archive ]; then \
|
||||
|
#echo -e "[$(TERM_GREEN) ok $(TERM_NORMAL)] $$archive"; \ |
||||
|
true; \
|
||||
|
else \
|
||||
|
echo -e "[$(TERM_YELLOW) -- $(TERM_NORMAL)] $$archive"; \
|
||||
|
if [ "$(GETMISSING)" = "yes" ]; then \
|
||||
|
make $$archive; \
|
||||
|
fi; \
|
||||
|
fi; \
|
||||
|
done; |
||||
|
@$(REMOVE)/archives-list |
||||
|
|
||||
|
# -----------------------------------------------------------------------------
|
||||
|
|
||||
|
# FIXME - how to resolve variables while grepping makefiles?
|
||||
|
patches-info: |
||||
|
@echo "[ ** ] Unused patches" |
||||
|
@for patch in $(PATCHES)/*; do \
|
||||
|
if [ ! -f $$patch ]; then \
|
||||
|
continue; \
|
||||
|
fi; \
|
||||
|
patch=$${patch##*/}; \
|
||||
|
found=false; \
|
||||
|
for makefile in make/*.mk; do \
|
||||
|
if grep -q "$$patch" $$makefile; then \
|
||||
|
found=true; \
|
||||
|
fi; \
|
||||
|
if [ "$$found" = "true" ]; then \
|
||||
|
continue; \
|
||||
|
fi; \
|
||||
|
done; \
|
||||
|
if [ "$$found" = "false" ]; then \
|
||||
|
echo -e "[$(TERM_RED) !! $(TERM_NORMAL)] $$patch"; \
|
||||
|
fi; \
|
||||
|
done; |
||||
|
|
||||
|
# -----------------------------------------------------------------------------
|
||||
|
|
||||
|
PHONY += archives-list |
||||
|
PHONY += archives-info |
||||
|
PHONY += patches-info |
Loading…
Reference in new issue