[U-Boot] [PATCH] kconfig: add CONFIG_CC_COVERAGE
Christian Gmeiner
christian.gmeiner at gmail.com
Wed Apr 4 06:31:52 UTC 2018
Gentle ping..
2018-03-29 9:49 GMT+02:00 Christian Gmeiner <christian.gmeiner at gmail.com>:
> Make it possible to use gcc code coverage analysis.
>
> Signed-off-by: Christian Gmeiner <christian.gmeiner at gmail.com>
> ---
> .gitignore | 4 ++++
> Kconfig | 8 ++++++++
> Makefile | 6 ++++++
> 3 files changed, 18 insertions(+)
>
> diff --git a/.gitignore b/.gitignore
> index 29757aa51e..f1b801579c 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -85,3 +85,7 @@ GTAGS
> *.orig
> *~
> \#*#
> +
> +# gcc code coverage files
> +*.gcda
> +*.gcno
> diff --git a/Kconfig b/Kconfig
> index 6670913799..f092f72b25 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -59,6 +59,14 @@ config CC_OPTIMIZE_FOR_SIZE
>
> This option is enabled by default for U-Boot.
>
> +config CC_COVERAGE
> + bool "Enable code coverage analysis"
> + default n
> + depends on SANDBOX
> + help
> + Enabling this option will pass "--coverage" to gcc to compile
> + and link code instrumented for coverage analysis.
> +
> config DISTRO_DEFAULTS
> bool "Select defaults suitable for booting general purpose Linux distributions"
> default y if ARCH_SUNXI || TEGRA
> diff --git a/Makefile b/Makefile
> index 5fa14789d9..d06193e8f4 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -720,6 +720,12 @@ else
> PLATFORM_LIBGCC := -L $(shell dirname `$(CC) $(c_flags) -print-libgcc-file-name`) -lgcc
> endif
> PLATFORM_LIBS += $(PLATFORM_LIBGCC)
> +
> +ifdef CONFIG_CC_COVERAGE
> +KBUILD_CFLAGS += --coverage
> +PLATFORM_LIBGCC += -lgcov
> +endif
> +
> export PLATFORM_LIBS
> export PLATFORM_LIBGCC
>
> --
> 2.14.3
>
--
greets
--
Christian Gmeiner, MSc
https://christian-gmeiner.info
More information about the U-Boot
mailing list