Dear Maintainer,

I confirm that 'lcovutil.pm' is missing the the lcov package.
As such the lcov package is completely unusable.

The attached patch simplifies the d/rules and correctly include lcovutil.pm in the package, fixing this issue.

Also, even with the lcovutil.pm issue fixed, geninfo will fail to run (error message bellow). This is due to d/patches/gcc-9-support.patch which completely breaks the code. It looks like this patch was already included upstream and the corresponding code was
slightly modified since then.
Just removing the d/patches/gcc-9-support.patch fixes the issue and finally gives a fully working lcov package.

Here is the error message due to d/patches/gcc-9-support.patch:

geninfo cmd: '/usr/bin/geninfo build/tests/lib/obj --output-filename build/coverage/initial.info --base-directory . --initial --rc lcov_branch_coverage=1 --memory 0 --branch-coverage' Prototype mismatch: sub main::print_gcov_warnings ($$$$) vs ($$$) at /usr/bin/geninfo line 2488.
Subroutine print_gcov_warnings redefined at /usr/bin/geninfo line 2469.
Variable "$gcov_tool" is not imported at /usr/bin/geninfo line 2540.
Global symbol "$gcov_tool" requires explicit package name (did you forget to declare "my $gcov_tool"?) at /usr/bin/geninfo line 2540. Global symbol "@gcov_options" requires explicit package name (did you forget to declare "my @gcov_options"?) at /usr/bin/geninfo line 2541. Global symbol "$checksum" requires explicit package name (did you forget to declare "my $checksum"?) at /usr/bin/geninfo line 2602. Too many arguments for main::intermediate_json_to_info at /usr/bin/geninfo line 2609, near "$srcdata)" Too many arguments for main::intermediate_text_to_info at /usr/bin/geninfo line 2611, near "$srcdata)" Global symbol "@ignore" requires explicit package name (did you forget to declare "my @ignore"?) at /usr/bin/geninfo line 2620. Global symbol "$checksum" requires explicit package name (did you forget to declare "my $checksum"?) at /usr/bin/geninfo line 2739. Global symbol "$checksum" requires explicit package name (did you forget to declare "my $checksum"?) at /usr/bin/geninfo line 2857. Too many arguments for main::print_gcov_warnings at /usr/bin/geninfo line 2962, near "})
       "
Too many arguments for main::print_gcov_warnings at /usr/bin/geninfo line 2969, near "})
       "
/usr/bin/geninfo has too many errors.


diff -Naur lcov-2.0.orig/debian/rules lcov-2.0/debian/rules
--- lcov-2.0.orig/debian/rules	2023-08-03 17:19:48.000000000 +0200
+++ lcov-2.0/debian/rules	2023-08-24 18:40:36.908812840 +0200
@@ -11,9 +11,4 @@
 	dh $@
 
 override_dh_auto_install:
-	dh_auto_install
-	mv debian/lcov/usr/local/bin debian/lcov/usr/bin
-	mkdir -p  debian/lcov/usr/share
-	mv debian/lcov/usr/local/share/man debian/lcov/usr/share/man
-	rm -rf debian/lcov/usr/local
-
+	dh_auto_install -- PREFIX=/usr

Reply via email to