Add a Xen build target to count the lines of code of the source files built. Uses `cloc' to do the job.
With Xen on ARM taking off in embedded, IoT, and automotive, we are seeing more and more uses of Xen in constrained environments. Users and system integrators want the smallest Xen and Dom0 configurations. Some of these deployments require certifications, where you definitely want the smallest lines of code count. I provided this patch to give us the lines of code count for that purpose. Use the .o.d files to account for all the built source files. Generate a list for the `cloc' utility and invoke `cloc'. Signed-off-by: Stefano Stabellini <sstabell...@kernel.org> Acked-by: Jan Beulich <jbeul...@suse.com> CC: jbeul...@suse.com CC: andrew.coop...@citrix.com --- Changes in v4: - use grep regex to get multiple source files from .d files Changes in v3: - remove build as dependecy for the cloc target Changes in v2: - change implementation to use .o.d to find built source files --- xen/Makefile | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/xen/Makefile b/xen/Makefile index 62d479c..338d5a3 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -267,3 +267,15 @@ $(KCONFIG_CONFIG): include/config/auto.conf.cmd: ; -include $(BASEDIR)/include/config/auto.conf.cmd + +.PHONY: cloc +cloc: + $(eval tmpfile := $(shell mktemp)) + $(foreach f, $(shell find $(BASEDIR) -name *.o.d), \ + $(eval path := $(dir $(f))) \ + $(eval names := $(shell grep -o "[a-zA-Z0-9_/-]*\.[cS]" $(f))) \ + $(foreach sf, $(names), \ + $(shell if test -f $(path)/$(sf) ; then echo $(path)/$(sf) >> $(tmpfile); fi;))) + cloc --list-file=$(tmpfile) + rm $(tmpfile) + -- 1.9.1 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel