On 26/07/15 15:41, Rakesh Kumar wrote: > Hi All, > > While trying to generate HTML test coverage reports, I am facing an > error. Can anyone please advice on this. Help would be appreciated. > > > [00:36 rakesh@param > /home/rakesh/development/gnu_development/coreutils$] : > lcov -t coreutils -q -d lib -b `pwd` -o lib.lcov -c > > Cannot open source file parse-datetime.c
`make coverage` gives a similar error for me saying that lib/lib/parse-datetime.y is not available. That looks to be due to parse-datetime.c being moved after being generated, thus having incorrect paths pertaining to parse-datetime.y. With the attached applied to gnulib I no longer see the issue. cheers, Pádraig. p.s. I see a similar error on hydra also with the doubled lib/lib, saying that lib/lib/c-ctype.h is not found. I've not looked into that, as `make coverage` doesn't give that here.
From 6b662df1edcf71f442c6fe74bfe838e44d3b8503 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A1draig=20Brady?= <p...@draigbrady.com> Date: Tue, 3 Jan 2017 00:52:13 +0000 Subject: [PATCH] parse-datetime: fix generated paths for coverage files * modules/parse-datetime: Adjust the paths for parse-datetime.y within parse-datetime.c, so that gcc generates appropriate .gcno files, allowing lcov to proceed without error. Previously it would error trying to find "lib/lib/parse-datetime.y". --- ChangeLog | 8 ++++++++ modules/parse-datetime | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index b2fe194..4dfa496 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2017-01-03 Pádraig Brady <p...@draigbrady.com> + + parse-datetime: fix generated paths for coverage files + * modules/parse-datetime: Adjust the paths for parse-datetime.y + within parse-datetime.c, so that gcc generates appropriate .gcno + files, allowing lcov to proceed without error. Previously it + would error trying to find "lib/lib/parse-datetime.y". + 2017-01-02 Pádraig Brady <p...@draigbrady.com> maint.mk: support parallel execution of coverage diff --git a/modules/parse-datetime b/modules/parse-datetime index dc25bec..e059d17 100644 --- a/modules/parse-datetime +++ b/modules/parse-datetime @@ -38,7 +38,9 @@ parse-datetime.c: parse-datetime.y y.output parse-datetime.output \ -- $(YACC) $(YFLAGS) $(AM_YFLAGS) && \ mv parse-datetime.c parse-datetime.c-t && \ - mv parse-datetime.c-t $(srcdir)/parse-datetime.c + $(SED) 's|".*/parse-datetime.y"|"parse-datetime.y"|' \ + < parse-datetime.c-t > $(srcdir)/parse-datetime.c && \ + rm -f parse-datetime.c-t lib_SOURCES += parse-datetime.y BUILT_SOURCES += parse-datetime.c MOSTLYCLEANFILES += parse-datetime.c-t -- 2.5.5