build-sys: add make check-api-unused

This commit is contained in:
Lennart Poettering 2013-11-08 16:52:42 +01:00
parent 862e8bf8c6
commit 9070a9c103
1 changed files with 20 additions and 0 deletions

View File

@ -4578,3 +4578,23 @@ check-api-docs: $(lib_LTLIBRARIES) man
echo "‣ Symbol $$symbol() lacks documentation." ; \
fi ; \
done
OBJECT_VARIABLES:=$(filter %_OBJECTS,$(.VARIABLES))
ALL_OBJECTS:=$(foreach v,$(OBJECT_VARIABLES),$($(v)))
defined: $(ALL_OBJECTS)
$(AM_V_GEN)for f in $(ALL_OBJECTS) ; do \
nm -g --undefined-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
done | cut -c 20- | cut -d @ -f 1 | sort -u > $(builddir)/undefined
undefined:
$(AM_V_GEN)for f in $(ALL_OBJECTS) ; do \
nm -g --defined-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
done | cut -c 20- | cut -d @ -f 1 | sort -u > $(builddir)/defined
CLEANFILES += \
defined \
undefined
check-api-unused: defined undefined
diff -u undefined defined | grep ^+ | grep -v ^+++ | cut -c2-