You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by nw...@apache.org on 2014/01/14 20:21:03 UTC
[lucy-commits] [17/50] git commit: Add code coverage target to Makefile
Add code coverage target to Makefile
Create HTML pages with coverage data using lcov like this:
$ ./configure --enable-coverage
$ make
$ make coverage
Project: http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/commit/d217b037
Tree: http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/tree/d217b037
Diff: http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/diff/d217b037
Branch: refs/heads/master
Commit: d217b03751b5a3da8c3a0647151f7e98e8491cba
Parents: 7063130
Author: Nick Wellnhofer <we...@aevum.de>
Authored: Tue Apr 30 21:55:58 2013 +0200
Committer: Nick Wellnhofer <we...@aevum.de>
Committed: Tue Apr 30 22:45:12 2013 +0200
----------------------------------------------------------------------
src/Charmonizer/Core/CFlags.c | 11 +++++++++++
src/Charmonizer/Core/CFlags.h | 3 +++
src/Charmonizer/Probe.c | 6 ++++++
src/Charmonizer/Probe.h | 2 ++
4 files changed, 22 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/blob/d217b037/src/Charmonizer/Core/CFlags.c
----------------------------------------------------------------------
diff --git a/src/Charmonizer/Core/CFlags.c b/src/Charmonizer/Core/CFlags.c
index dd66ca5..ffd5b9a 100644
--- a/src/Charmonizer/Core/CFlags.c
+++ b/src/Charmonizer/Core/CFlags.c
@@ -274,4 +274,15 @@ chaz_CFlags_add_library(chaz_CFlags *flags, const char *library) {
free(string);
}
+void
+chaz_CFlags_enable_code_coverage(chaz_CFlags *flags) {
+ if (flags->style == CHAZ_CFLAGS_STYLE_GNU) {
+ chaz_CFlags_append(flags, "--coverage");
+ }
+ else {
+ chaz_Util_die("Don't know how to enable code coverage with '%s'",
+ chaz_CC_get_cc());
+ }
+}
+
http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/blob/d217b037/src/Charmonizer/Core/CFlags.h
----------------------------------------------------------------------
diff --git a/src/Charmonizer/Core/CFlags.h b/src/Charmonizer/Core/CFlags.h
index 2b4ffe6..989518f 100644
--- a/src/Charmonizer/Core/CFlags.h
+++ b/src/Charmonizer/Core/CFlags.h
@@ -85,6 +85,9 @@ chaz_CFlags_add_library_path(chaz_CFlags *flags, const char *directory);
void
chaz_CFlags_add_library(chaz_CFlags *flags, const char *library);
+void
+chaz_CFlags_enable_code_coverage(chaz_CFlags *flags);
+
#ifdef __cplusplus
}
#endif
http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/blob/d217b037/src/Charmonizer/Probe.c
----------------------------------------------------------------------
diff --git a/src/Charmonizer/Probe.c b/src/Charmonizer/Probe.c
index c1475db..886589b 100644
--- a/src/Charmonizer/Probe.c
+++ b/src/Charmonizer/Probe.c
@@ -56,6 +56,12 @@ chaz_Probe_parse_cli_args(int argc, const char *argv[],
args->charmony_rb = 1;
output_enabled = 1;
}
+ else if (strcmp(arg, "--enable-makefile") == 0) {
+ args->write_makefile = 1;
+ }
+ else if (strcmp(arg, "--enable-coverage") == 0) {
+ args->code_coverage = 1;
+ }
else if (memcmp(arg, "--cc=", 5) == 0) {
if (strlen(arg) > CHAZ_PROBE_MAX_CC_LEN - 5) {
fprintf(stderr, "Exceeded max length for compiler command");
http://git-wip-us.apache.org/repos/asf/lucy-charmonizer/blob/d217b037/src/Charmonizer/Probe.h
----------------------------------------------------------------------
diff --git a/src/Charmonizer/Probe.h b/src/Charmonizer/Probe.h
index 9d44efa..7f1e321 100644
--- a/src/Charmonizer/Probe.h
+++ b/src/Charmonizer/Probe.h
@@ -34,6 +34,8 @@ struct chaz_CLIArgs {
int charmony_pm;
int charmony_rb;
int verbosity;
+ int write_makefile;
+ int code_coverage;
};
/* Parse command line arguments, initializing and filling in the supplied