Closed perillo closed 4 months ago
Thanks!
I haven't tried the MacOS CI build in some time, but at least before it would hang on waiting for user input (in the UI). Maybe that has changed, and thanks for checking and fixing that, although "On MacOs instead the test runner stopped after a few tests, maybe cause a deadlock." sounds a bit like that situation. Why it would happen sometimes and not always, I don't understand though.
Do you want to complete the TODO, or shall I merge the PR? The changes looks good to me, as always!
You can merge it, thanks. I will create additional PRs later.
Thanks!
I haven't tried the MacOS CI build in some time, but at least before it would hang on waiting for user input (in the UI). Maybe that has changed, and thanks for checking and fixing that, although "On MacOs instead the test runner stopped after a few tests, maybe cause a deadlock." sounds a bit like that situation. Why it would happen sometimes and not always, I don't understand though.
In my case that happened when I tried to run the tests without using sudo
.
As for sudo
on MacOs, I found this issue: https://github.com/actions/runner-images/issues/7987
Great, thanks!
Looks like this the first time you run it on OSX by the way:
and I belive that's the reason why it didn't work for MacOS in the CI before. Not sure why that would change though...
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Bfd: /usr/lib/arm-linux-gnueabihf/libbfd.so
-- Target architectures: armv7
-- Found ZLIB: /usr/lib/arm-linux-gnueabihf/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/arm-linux-gnueabihf/libcurl.so (found version "7.81.0")
-- Found DL: /usr/lib/arm-linux-gnueabihf/libdl.a
-- Found M: /usr/lib/arm-linux-gnueabihf/libm.so
-- Found Git: /usr/bin/git
fatal: No names found, cannot describe anything.
-- kcov version:
-- Found OpenSSL: /usr/lib/arm-linux-gnueabihf/libcrypto.so (found version "3.0.2")
-- Found LibElf: /usr/lib/arm-linux-gnueabihf/libelf.so
-- Found ElfUtils: /usr/lib/arm-linux-gnueabihf/libdw.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build
[ 1%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/phdr_data.c.o
[ 2%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/lib.c.o
[ 3%] Linking C shared library libkcov_sowrapper.so
[ 3%] Built target kcov_sowrapper
[ 5%] Building C object src/CMakeFiles/bash_execve_redirector.dir/engines/bash-execve-redirector.c.o
[ 6%] Linking C shared library libbash_execve_redirector.so
[ 6%] Built target bash_execve_redirector
[ 7%] Building C object src/CMakeFiles/bash_tracefd_cloexec.dir/engines/bash-tracefd-cloexec.c.o
[ 8%] Linking C shared library libbash_tracefd_cloexec.so
[ 8%] Built target bash_tracefd_cloexec
[ 10%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/engines/system-mode-binary-lib.cc.o
[ 11%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/utils.cc.o
[ 12%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/system-mode/registration.cc.o
[ 13%] Linking CXX shared library libkcov_system_lib.so
[ 13%] Built target kcov_system_lib
[ 15%] Generating version.c
[ 16%] Generating bash-cloexec-library.cc
[ 17%] Generating bash-helper.cc
[ 18%] Generating bash-redirector-library.cc
[ 20%] Generating html-data-files.cc
[ 21%] Generating kcov-system-library.cc
[ 22%] Generating library.cc
[ 24%] Generating python-helper.cc
[ 25%] Building CXX object src/CMakeFiles/kcov.dir/capabilities.cc.o
[ 26%] Building CXX object src/CMakeFiles/kcov.dir/collector.cc.o
[ 27%] Building CXX object src/CMakeFiles/kcov.dir/configuration.cc.o
[ 29%] Building CXX object src/CMakeFiles/kcov.dir/engine-factory.cc.o
[ 30%] Building CXX object src/CMakeFiles/kcov.dir/engines/bash-engine.cc.o
[ 31%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o
In file included from /usr/include/c++/11/vector:72,
from /home/runner/work/kcov/kcov/src/include/file-parser.hh:10,
from /home/runner/work/kcov/kcov/src/engines/system-mode-engine.cc:1:
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<long long unsigned int>::iterator' changed in GCC 7.1
426 | vector<_Tp, _Alloc>::
| ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/vector.tcc: In member function 'virtual int SystemModeEngine::registerBreakpoint(long unsigned int)':
/usr/include/c++/11/bits/vector.tcc:121:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
121 | _M_realloc_insert(end(), std::forward<_Args>(__args)...);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 32%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-file-format.cc.o
[ 34%] Building CXX object src/CMakeFiles/kcov.dir/engines/python-engine.cc.o
[ 35%] Building CXX object src/CMakeFiles/kcov.dir/filter.cc.o
[ 36%] Building CXX object src/CMakeFiles/kcov.dir/gcov.cc.o
In file included from /usr/include/c++/11/vector:72,
from /home/runner/work/kcov/kcov/src/include/gcov.hh:3,
from /home/runner/work/kcov/kcov/src/gcov.cc:1:
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long int}; _Tp = long long int; _Alloc = std::allocator<long long int>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<long long int>::iterator' changed in GCC 7.1
426 | vector<_Tp, _Alloc>::
| ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<long long int>::iterator' changed in GCC 7.1
/usr/include/c++/11/bits/vector.tcc: In member function 'void kcov::GcdaParser::onCounterBase(const header*, const uint8_t*)':
/usr/include/c++/11/bits/vector.tcc:121:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
121 | _M_realloc_insert(end(), std::forward<_Args>(__args)...);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 37%] Building CXX object src/CMakeFiles/kcov.dir/main.cc.o
[ 39%] Building CXX object src/CMakeFiles/kcov.dir/merge-file-parser.cc.o
[ 40%] Building CXX object src/CMakeFiles/kcov.dir/output-handler.cc.o
[ 41%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dummy-disassembler.cc.o
[ 43%] Building CXX object src/CMakeFiles/kcov.dir/parser-manager.cc.o
[ 44%] Building CXX object src/CMakeFiles/kcov.dir/reporter.cc.o
In file included from /usr/include/c++/11/vector:72,
from /home/runner/work/kcov/kcov/src/include/file-parser.hh:10,
from /home/runner/work/kcov/kcov/src/reporter.cc:2:
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {Reporter::PendingFileAddress}; _Tp = Reporter::PendingFileAddress; _Alloc = std::allocator<Reporter::PendingFileAddress>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<Reporter::PendingFileAddress>::iterator' changed in GCC 7.1
426 | vector<_Tp, _Alloc>::
| ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/vector.tcc: In member function 'bool Reporter::unMarshal(void*, size_t)':
/usr/include/c++/11/bits/vector.tcc:121:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<Reporter::PendingFileAddress*, std::vector<Reporter::PendingFileAddress> >' changed in GCC 7.1
121 | _M_realloc_insert(end(), std::forward<_Args>(__args)...);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 45%] Building CXX object src/CMakeFiles/kcov.dir/source-file-cache.cc.o
[ 46%] Building CXX object src/CMakeFiles/kcov.dir/utils.cc.o
[ 48%] Building CXX object src/CMakeFiles/kcov.dir/writers/cobertura-writer.cc.o
[ 49%] Building CXX object src/CMakeFiles/kcov.dir/writers/codecov-writer.cc.o
[ 50%] Building CXX object src/CMakeFiles/kcov.dir/writers/json-writer.cc.o
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
[ 54%] Building CXX object src/CMakeFiles/kcov.dir/writers/sonarqube-xml-writer.cc.o
[ 55%] Building CXX object src/CMakeFiles/kcov.dir/writers/writer-base.cc.o
[ 56%] Building CXX object src/CMakeFiles/kcov.dir/engines/clang-coverage-engine.cc.o
[ 58%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace.cc.o
[ 59%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace_linux.cc.o
[ 60%] Building CXX object src/CMakeFiles/kcov.dir/engines/kernel-engine.cc.o
[ 62%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf.cc.o
In file included from /usr/include/c++/11/vector:72,
from /home/runner/work/kcov/kcov/src/include/utils.hh:16,
from /home/runner/work/kcov/kcov/src/include/elf.hh:3,
from /home/runner/work/kcov/kcov/src/parsers/elf.cc:1:
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const kcov::Segment&}; _Tp = kcov::Segment; _Alloc = std::allocator<kcov::Segment>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<kcov::Segment>::iterator' changed in GCC 7.1
426 | vector<_Tp, _Alloc>::
| ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/11/vector:67,
from /home/runner/work/kcov/kcov/src/include/utils.hh:16,
from /home/runner/work/kcov/kcov/src/include/elf.hh:3,
from /home/runner/work/kcov/kcov/src/parsers/elf.cc:1:
/usr/include/c++/11/bits/stl_vector.h: In static member function 'static kcov::IElf* kcov::IElf::create(const string&)':
/usr/include/c++/11/bits/stl_vector.h:1198:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<kcov::Segment*, std::vector<kcov::Segment> >' changed in GCC 7.1
1198 | _M_realloc_insert(end(), __x);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[ 63%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf-parser.cc.o
In file included from /usr/include/c++/11/vector:72,
from /home/runner/work/kcov/kcov/src/include/file-parser.hh:10,
from /home/runner/work/kcov/kcov/src/parsers/elf-parser.cc:1:
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const kcov::Segment&}; _Tp = kcov::Segment; _Alloc = std::allocator<kcov::Segment>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<kcov::Segment>::iterator' changed in GCC 7.1
426 | vector<_Tp, _Alloc>::
| ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {kcov::Segment}; _Tp = kcov::Segment; _Alloc = std::allocator<kcov::Segment>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<kcov::Segment>::iterator' changed in GCC 7.1
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<kcov::Segment>::iterator' changed in GCC 7.1
/usr/include/c++/11/bits/vector.tcc: In member function 'virtual bool ElfInstance::addFile(const string&, phdr_data_entry*)':
/usr/include/c++/11/bits/vector.tcc:121:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<kcov::Segment*, std::vector<kcov::Segment> >' changed in GCC 7.1
121 | _M_realloc_insert(end(), std::forward<_Args>(__args)...);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/11/vector:67,
from /home/runner/work/kcov/kcov/src/include/file-parser.hh:10,
from /home/runner/work/kcov/kcov/src/parsers/elf-parser.cc:1:
/usr/include/c++/11/bits/stl_vector.h: In function 'bool ElfInstance::parseOneElf()':
/usr/include/c++/11/bits/stl_vector.h:1198:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<kcov::Segment*, std::vector<kcov::Segment> >' changed in GCC 7.1
1198 | _M_realloc_insert(end(), __x);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[ 64%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dwarf.cc.o
[ 65%] Building CXX object src/CMakeFiles/kcov.dir/solib-handler.cc.o
[ 67%] Building C object src/CMakeFiles/kcov.dir/solib-parser/phdr_data.c.o
[ 68%] Building CXX object src/CMakeFiles/kcov.dir/system-mode/file-data.cc.o
[ 69%] Building CXX object src/CMakeFiles/kcov.dir/library.cc.o
[ 70%] Building CXX object src/CMakeFiles/kcov.dir/bash-redirector-library.cc.o
[ 72%] Building CXX object src/CMakeFiles/kcov.dir/bash-cloexec-library.cc.o
[ 73%] Building CXX object src/CMakeFiles/kcov.dir/python-helper.cc.o
[ 74%] Building CXX object src/CMakeFiles/kcov.dir/bash-helper.cc.o
[ 75%] Building CXX object src/CMakeFiles/kcov.dir/kcov-system-library.cc.o
[ 77%] Building CXX object src/CMakeFiles/kcov.dir/html-data-files.cc.o
[ 78%] Building C object src/CMakeFiles/kcov.dir/version.c.o
[ 79%] Linking CXX executable kcov
[ 79%] Built target kcov
[ 81%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/configuration.cc.o
[ 82%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/dummy-solib-handler.cc.o
[ 83%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engine-factory.cc.o
[ 84%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/system-mode-file-format.cc.o
[ 86%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace.cc.o
[ 87%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace_linux.cc.o
[ 88%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/filter.cc.o
[ 89%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/gcov.cc.o
In file included from /usr/include/c++/11/vector:72,
from /home/runner/work/kcov/kcov/src/include/gcov.hh:3,
from /home/runner/work/kcov/kcov/src/gcov.cc:1:
/usr/include/c++/11/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long int}; _Tp = long long int; _Alloc = std::allocator<long long int>]':
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<long long int>::iterator' changed in GCC 7.1
426 | vector<_Tp, _Alloc>::
| ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/vector.tcc:426:7: note: parameter passing for argument of type 'std::vector<long long int>::iterator' changed in GCC 7.1
/usr/include/c++/11/bits/vector.tcc: In member function 'void kcov::GcdaParser::onCounterBase(const header*, const uint8_t*)':
/usr/include/c++/11/bits/vector.tcc:121:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
121 | _M_realloc_insert(end(), std::forward<_Args>(__args)...);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 91%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/main-system-daemon.cc.o
[ 92%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/parser-manager.cc.o
[ 93%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/file-data.cc.o
[ 94%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/registration.cc.o
[ 96%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/utils.cc.o
[ 97%] Building C object src/CMakeFiles/kcov-system-daemon.dir/version.c.o
[ 98%] Linking CXX executable kcov-system-daemon
[100%] Built target kcov-system-daemon
Consolidate compiler generated dependencies of target kcov_sowrapper
[ 3%] Built target kcov_sowrapper
Consolidate compiler generated dependencies of target bash_execve_redirector
[ 6%] Built target bash_execve_redirector
Consolidate compiler generated dependencies of target bash_tracefd_cloexec
[ 8%] Built target bash_tracefd_cloexec
Consolidate compiler generated dependencies of target kcov_system_lib
[ 13%] Built target kcov_system_lib
Consolidate compiler generated dependencies of target kcov
[ 79%] Built target kcov
Consolidate compiler generated dependencies of target kcov-system-daemon
[100%] Built target kcov-system-daemon
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/share/doc/kcov/ChangeLog
-- Installing: /usr/local/share/doc/kcov/COPYING
-- Installing: /usr/local/share/doc/kcov/COPYING.externals
-- Installing: /usr/local/bin/kcov
-- Installing: /usr/local/bin/kcov-system-daemon
-- Installing: /usr/local/share/man/man1/kcov.1
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Target architectures: armv7
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found ZLIB: /usr/lib/arm-linux-gnueabihf/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/arm-linux-gnueabihf/libcurl.so (found version "7.81.0")
-- Found Python3: /usr/bin/python3.10 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter
-- Found DL: /usr/lib/arm-linux-gnueabihf/libdl.a
-- Found M: /usr/lib/arm-linux-gnueabihf/libm.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build-tests
[ 1%] Generating multi-fork-generated.c
[ 1%] Built target multi-fork-generated
[ 3%] Building C object CMakeFiles/shared_library.dir/shared-library/solib.c.o
[ 5%] Linking C shared library libshared_library.so
[ 5%] Built target shared_library
[ 7%] Building CXX object CMakeFiles/main-tests.dir/main.cc.o
[ 9%] Building C object CMakeFiles/main-tests.dir/subdir/file.c.o
[ 11%] Building C object CMakeFiles/main-tests.dir/subdir2/file2.c.o
[ 13%] Linking CXX executable main-tests
[ 13%] Built target main-tests
[ 15%] Building C object CMakeFiles/fork.dir/fork/fork.c.o
[ 17%] Linking C executable fork
[ 17%] Built target fork
[ 19%] Building C object CMakeFiles/fork_no_wait.dir/fork/fork-no-wait.c.o
[ 21%] Linking C executable fork_no_wait
[ 21%] Built target fork_no_wait
[ 23%] Building C object CMakeFiles/vfork.dir/fork/vfork.c.o
[ 25%] Linking C executable vfork
[ 25%] Built target vfork
[ 26%] Building C object CMakeFiles/signals.dir/signals/test-signals.c.o
[ 28%] Linking C executable signals
[ 28%] Built target signals
[ 30%] Building C object CMakeFiles/multi_fork.dir/multi-fork/test-multi-fork.c.o
[ 32%] Linking C executable multi_fork
[ 34%] Built target multi_fork
[ 36%] Building C object CMakeFiles/shared_library_test.dir/shared-library/main.c.o
[ 38%] Linking C executable shared_library_test
[ 38%] Built target shared_library_test
[ 40%] Building C object CMakeFiles/argv_dependent.dir/argv-dependent.c.o
[ 42%] Linking C executable argv_dependent
[ 42%] Built target argv_dependent
[ 44%] Building C object CMakeFiles/test_popen.dir/popen/test-popen.c.o
[ 46%] Linking C executable test_popen
[ 46%] Built target test_popen
[ 48%] Building CXX object CMakeFiles/global-constructors.dir/global-constructors/test-global-ctors.cc.o
[ 50%] Linking CXX executable global-constructors
[ 50%] Built target global-constructors
[ 51%] Building CXX object CMakeFiles/test_daemon.dir/daemon/test-daemon.cc.o
[ 53%] Linking CXX executable test_daemon
[ 53%] Built target test_daemon
[ 55%] Building C object CMakeFiles/multi_1.dir/merge-tests/file.c.o
[ 57%] Building C object CMakeFiles/multi_1.dir/merge-tests/main_1.c.o
[ 59%] Linking C executable multi_1
[ 59%] Built target multi_1
[ 61%] Building C object CMakeFiles/multi_2.dir/merge-tests/file.c.o
[ 63%] Building C object CMakeFiles/multi_2.dir/merge-tests/main_2.c.o
[ 65%] Linking C executable multi_2
[ 65%] Built target multi_2
[ 67%] Building CXX object CMakeFiles/setpgid-kill.dir/setpgid-kill/setpgid-kill-main.cc.o
[ 69%] Building CXX object CMakeFiles/setpgid-kill.dir/home/runner/work/kcov/kcov/src/utils.cc.o
[ 71%] Linking CXX executable setpgid-kill
[ 71%] Built target setpgid-kill
[ 73%] Building CXX object CMakeFiles/issue31.dir/daemon/test-issue31.cc.o
[ 75%] Linking CXX executable issue31
[ 75%] Built target issue31
[ 76%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen.cc.o
[ 78%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen-main.cc.o
[ 80%] Linking CXX executable dlopen
[ 80%] Built target dlopen
[ 82%] Building C object CMakeFiles/s.dir/short-file.c.o
[ 84%] Linking C executable s
[ 84%] Built target s
[ 86%] Building C object CMakeFiles/fork+exec.dir/fork/fork+exec.c.o
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c: In function 'main':
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c:26:17: warning: argument 2 null where non-null expected [-Wnonnull]
26 | execvp(argv[1], NULL);
| ^~~~~~
In file included from /home/runner/work/kcov/kcov/tests/fork/fork+exec.c:1:
/usr/include/unistd.h:599:12: note: in a call to function 'execvp' declared 'nonnull'
599 | extern int execvp (const char *__file, char *const __argv[])
| ^~~~~~
[ 88%] Linking C executable fork+exec
[ 88%] Built target fork+exec
[ 90%] Building C object CMakeFiles/thread-test.dir/threads/thread-main.c.o
[ 92%] Linking C executable thread-test
[ 92%] Built target thread-test
[ 94%] Building C object CMakeFiles/pie.dir/pie.c.o
[ 96%] Linking C executable pie
[ 96%] Built target pie
[ 98%] Building C object CMakeFiles/pie-test.dir/argv-dependent.c.o
[100%] Linking C executable pie-test
[100%] Built target pie-test
[100%] Built target tests-stripped
/usr/bin/tar: Removing leading `/' from member names
/usr/bin/tar: Removing leading `/' from hard link targets
ELF Header:
Magic: 7f 45 4c 46 01 01 01 03 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - GNU
ABI Version: 0
Type: DYN (Position-Independent Executable file)
Machine: ARM
Version: 0x1
Entry point address: 0x7609
Start of program headers: 52 (bytes into file)
Start of section headers: 12915768 (bytes into file)
Flags: 0x5000400, Version5 EABI, hard-float ABI
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 9
Size of section headers: 40 (bytes)
Number of section headers: 39
Section header string table index: 38
Built for armv7.
Hello, kcov!
Coverage: 2/2 100.00%
runTest (test_basic.lookup_binary_in_path) ... expected failure
runTest (test_basic.outdir_is_executable) ... FAIL
runTest (test_basic.too_few_arguments) ... ok
runTest (test_basic.wrong_arguments) ... ok
runTest (test_compiled_basic.main_test) ... FAIL
runTest (test_compiled_basic.main_test_lldb_raw_breakpoints) ... FAIL
runTest (test_compiled_basic.main_test_verify) ... FAIL
runTest (test_compiled_basic.shared_library) ... FAIL
runTest (test_compiled_basic.shared_library_accumulate) ... FAIL
runTest (test_compiled_basic.shared_library_filter_out) ... FAIL
runTest (test_compiled_basic.shared_library_skip) ... skipped 'Fickle test, ignoring'
runTest (test_bash_linux_only.bash_exit_before_child) ... ok
runTest (test_bash_linux_only.bash_ldpreload_multilib) ... ok
runTest (test_bash_linux_only.bash_sh_shebang) ... ok
runTest (test_accumulate.accumulate_data) ... FAIL
runTest (test_accumulate.dont_accumulate_data_with_clean) ... FAIL
runTest (test_accumulate.merge_basic) ... ERROR
runTest (test_accumulate.merge_coveralls) ... FAIL
runTest (test_accumulate.merge_merged_output) ... FAIL
runTest (test_accumulate.merge_multiple_output_directories) ... FAIL
runTest (test_bash.bash_accumulate_changed_data) ... skipped 'Only for x86'
runTest (test_bash.bash_accumulate_data) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts) ... FAIL
runTest (test_bash.bash_can_find_non_executed_scripts_manually) ... FAIL
runTest (test_bash.bash_can_ignore_function_with_spaces) ... ok
runTest (test_bash.bash_can_ignore_non_executed_scripts) ... ok
runTest (test_bash.bash_coverage) ... ok
runTest (test_bash.bash_coverage_debug_trap) ... ok
runTest (test_bash.bash_coverage_tricky) ... ok
runTest (test_bash.bash_dollar_var_replacement) ... ok
runTest (test_bash.bash_done_eof) ... ok
runTest (test_bash.bash_drain_stdout_without_return) ... ERROR
runTest (test_bash.bash_eof_backtick) ... ok
runTest (test_bash.bash_exit_status) ... ok
runTest (test_bash.bash_handle_all_output) ... ok
runTest (test_bash.bash_heredoc_backslashes) ... ok
runTest (test_bash.bash_heredoc_special_cases_issue_44) ... ok
runTest (test_bash.bash_honor_signal) ... ok
runTest (test_bash.bash_ignore_uncovered) ... ok
runTest (test_bash.bash_issue_116_arithmetic_and_heredoc_issue_117_comment_within_string) ... ok
runTest (test_bash.bash_merge_data_issue_38) ... ok
runTest (test_bash.bash_multiline_backslashes) ... ok
runTest (test_bash.bash_multiline_quotes) ... ok
runTest (test_bash.bash_no_executed_lines) ... ok
runTest (test_bash.bash_non_empty_braces) ... ok
runTest (test_bash.bash_short_file) ... ok
runTest (test_bash.bash_stderr_redirection) ... ok
runTest (test_bash.bash_subshell) ... ok
runTest (test_filter.include_exclude_pattern) ... ok
runTest (test_filter.include_path) ... ok
runTest (test_filter.include_path_and_exclude_pattern) ... ok
runTest (test_python.python2_can_set_legal_parser) ... ok
runTest (test_python.python2_coverage) ... ok
runTest (test_python.python3_coverage) ... ok
runTest (test_python.python_accumulate_data) ... FAIL
runTest (test_python.python_can_set_illegal_parser) ... ok
runTest (test_python.python_can_set_legal_parser) ... ok
runTest (test_python.python_coverage) ... FAIL
runTest (test_python.python_exit_status) ... FAIL
runTest (test_python.python_issue_368_can_handle_symlink_target) ... ok
runTest (test_python.python_tricky_single_dict_assignment) ... expected failure
runTest (test_python.python_tricky_single_line_string_assignment) ... FAIL
runTest (test_python.python_unittest) ... FAIL
======================================================================
ERROR: runTest (test_accumulate.merge_basic)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 59, in runTest
dom = cobertura.parseFile(self.outbase + "/kcov/kcov-merged/cobertura.xml")
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 44, in parseFile
dom = xml.dom.minidom.parseString(readFile(filename))
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 5, in readFile
f = open(name, "r")
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/kcov/kcov-merged/cobertura.xml'
======================================================================
ERROR: runTest (test_bash.bash_drain_stdout_without_return)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_bash.py", line 497, in runTest
rv, o = self.do(
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/__init__.py", line 69, in do
term = subprocess.run(args, stdout=PIPE, stderr=PIPE, timeout=timeout)
File "/usr/lib/python3.10/subprocess.py", line 505, in run
stdout, stderr = process.communicate(input, timeout=timeout)
File "/usr/lib/python3.10/subprocess.py", line 1154, in communicate
stdout, stderr = self._communicate(input, endtime, timeout)
File "/usr/lib/python3.10/subprocess.py", line 2022, in _communicate
self._check_timeout(endtime, orig_timeout, stdout, stderr)
File "/usr/lib/python3.10/subprocess.py", line 1198, in _check_timeout
raise TimeoutExpired(
subprocess.TimeoutExpired: Command '['build/src/kcov', '/tmp/kcov', './tests/bash/long-output-without-return.sh']' timed out after 5.0 seconds
======================================================================
FAIL: runTest (test_basic.outdir_is_executable)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_basic.py", line 47, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 107, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test_lldb_raw_breakpoints)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 117, in runTest
self.doTest("--configure=lldb-use-raw-breakpoint-writes=1")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test_verify)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 112, in runTest
self.doTest("--verify")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 19, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library_accumulate)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 72, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library_filter_out)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 58, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 12, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.dont_accumulate_data_with_clean)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 32, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_coveralls)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 160, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_merged_output)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_multiple_output_directories)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 88, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_bash.bash_can_find_non_executed_scripts)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_bash.py", line 435, in runTest
assert cobertura.hitsPerLine(dom, "c.sh", 3) == 0
AssertionError
======================================================================
FAIL: runTest (test_bash.bash_can_find_non_executed_scripts_manually)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_bash.py", line 453, in runTest
assert cobertura.hitsPerLine(dom, "c.sh", 3) == 0
AssertionError
======================================================================
FAIL: runTest (test_python.python_accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 0
AssertionError
======================================================================
FAIL: runTest (test_python.python_coverage)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 125, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 106, in doTest
assert cobertura.hitsPerLine(dom, "main", 10) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_exit_status)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 17, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_python.python_tricky_single_line_string_assignment)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 164, in runTest
assert cobertura.hitsPerLine(dom, "second.py", 34) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_unittest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 89, in runTest
assert cobertura.hitsPerLine(dom, "testdriver", 14) == 1
AssertionError
----------------------------------------------------------------------
Ran 63 tests in 32.985s
FAILED (failures=19, errors=2, skipped=2, expected failures=2)
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Bfd: /usr/lib/aarch64-linux-gnu/libbfd.so
-- Target architectures: unknown
-- Found ZLIB: /usr/lib/aarch64-linux-gnu/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/aarch64-linux-gnu/libcurl.so (found version "7.81.0")
-- Found DL: /usr/lib/aarch64-linux-gnu/libdl.a
-- Found M: /usr/lib/aarch64-linux-gnu/libm.so
-- Found Git: /usr/bin/git
fatal: No names found, cannot describe anything.
-- kcov version:
-- Found OpenSSL: /usr/lib/aarch64-linux-gnu/libcrypto.so (found version "3.0.2")
-- Found LibElf: /usr/lib/aarch64-linux-gnu/libelf.so
-- Found ElfUtils: /usr/lib/aarch64-linux-gnu/libdw.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build
[ 1%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/phdr_data.c.o
[ 2%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/lib.c.o
[ 3%] Linking C shared library libkcov_sowrapper.so
[ 3%] Built target kcov_sowrapper
[ 5%] Building C object src/CMakeFiles/bash_execve_redirector.dir/engines/bash-execve-redirector.c.o
[ 6%] Linking C shared library libbash_execve_redirector.so
[ 6%] Built target bash_execve_redirector
[ 7%] Building C object src/CMakeFiles/bash_tracefd_cloexec.dir/engines/bash-tracefd-cloexec.c.o
[ 8%] Linking C shared library libbash_tracefd_cloexec.so
[ 8%] Built target bash_tracefd_cloexec
[ 10%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/engines/system-mode-binary-lib.cc.o
[ 11%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/utils.cc.o
[ 12%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/system-mode/registration.cc.o
[ 13%] Linking CXX shared library libkcov_system_lib.so
[ 13%] Built target kcov_system_lib
[ 15%] Generating version.c
[ 16%] Generating bash-cloexec-library.cc
[ 17%] Generating bash-helper.cc
[ 18%] Generating bash-redirector-library.cc
[ 20%] Generating html-data-files.cc
[ 21%] Generating kcov-system-library.cc
[ 22%] Generating library.cc
[ 24%] Generating python-helper.cc
[ 25%] Building CXX object src/CMakeFiles/kcov.dir/capabilities.cc.o
[ 26%] Building CXX object src/CMakeFiles/kcov.dir/collector.cc.o
[ 27%] Building CXX object src/CMakeFiles/kcov.dir/configuration.cc.o
[ 29%] Building CXX object src/CMakeFiles/kcov.dir/engine-factory.cc.o
[ 30%] Building CXX object src/CMakeFiles/kcov.dir/engines/bash-engine.cc.o
[ 31%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o
[ 32%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-file-format.cc.o
[ 34%] Building CXX object src/CMakeFiles/kcov.dir/engines/python-engine.cc.o
[ 35%] Building CXX object src/CMakeFiles/kcov.dir/filter.cc.o
[ 36%] Building CXX object src/CMakeFiles/kcov.dir/gcov.cc.o
[ 37%] Building CXX object src/CMakeFiles/kcov.dir/main.cc.o
[ 39%] Building CXX object src/CMakeFiles/kcov.dir/merge-file-parser.cc.o
[ 40%] Building CXX object src/CMakeFiles/kcov.dir/output-handler.cc.o
[ 41%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dummy-disassembler.cc.o
[ 43%] Building CXX object src/CMakeFiles/kcov.dir/parser-manager.cc.o
[ 44%] Building CXX object src/CMakeFiles/kcov.dir/reporter.cc.o
[ 45%] Building CXX object src/CMakeFiles/kcov.dir/source-file-cache.cc.o
[ 46%] Building CXX object src/CMakeFiles/kcov.dir/utils.cc.o
[ 48%] Building CXX object src/CMakeFiles/kcov.dir/writers/cobertura-writer.cc.o
[ 49%] Building CXX object src/CMakeFiles/kcov.dir/writers/codecov-writer.cc.o
[ 50%] Building CXX object src/CMakeFiles/kcov.dir/writers/json-writer.cc.o
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
[ 54%] Building CXX object src/CMakeFiles/kcov.dir/writers/sonarqube-xml-writer.cc.o
[ 55%] Building CXX object src/CMakeFiles/kcov.dir/writers/writer-base.cc.o
[ 56%] Building CXX object src/CMakeFiles/kcov.dir/engines/clang-coverage-engine.cc.o
[ 58%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace.cc.o
[ 59%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace_linux.cc.o
[ 60%] Building CXX object src/CMakeFiles/kcov.dir/engines/kernel-engine.cc.o
[ 62%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf.cc.o
[ 63%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf-parser.cc.o
[ 64%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dwarf.cc.o
[ 65%] Building CXX object src/CMakeFiles/kcov.dir/solib-handler.cc.o
[ 67%] Building C object src/CMakeFiles/kcov.dir/solib-parser/phdr_data.c.o
[ 68%] Building CXX object src/CMakeFiles/kcov.dir/system-mode/file-data.cc.o
[ 69%] Building CXX object src/CMakeFiles/kcov.dir/library.cc.o
[ 70%] Building CXX object src/CMakeFiles/kcov.dir/bash-redirector-library.cc.o
[ 72%] Building CXX object src/CMakeFiles/kcov.dir/bash-cloexec-library.cc.o
[ 73%] Building CXX object src/CMakeFiles/kcov.dir/python-helper.cc.o
[ 74%] Building CXX object src/CMakeFiles/kcov.dir/bash-helper.cc.o
[ 75%] Building CXX object src/CMakeFiles/kcov.dir/kcov-system-library.cc.o
[ 77%] Building CXX object src/CMakeFiles/kcov.dir/html-data-files.cc.o
[ 78%] Building C object src/CMakeFiles/kcov.dir/version.c.o
[ 79%] Linking CXX executable kcov
[ 79%] Built target kcov
[ 81%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/configuration.cc.o
[ 82%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/dummy-solib-handler.cc.o
[ 83%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engine-factory.cc.o
[ 84%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/system-mode-file-format.cc.o
[ 86%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace.cc.o
[ 87%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace_linux.cc.o
[ 88%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/filter.cc.o
[ 89%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/gcov.cc.o
[ 91%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/main-system-daemon.cc.o
[ 92%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/parser-manager.cc.o
[ 93%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/file-data.cc.o
[ 94%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/registration.cc.o
[ 96%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/utils.cc.o
[ 97%] Building C object src/CMakeFiles/kcov-system-daemon.dir/version.c.o
[ 98%] Linking CXX executable kcov-system-daemon
[100%] Built target kcov-system-daemon
Consolidate compiler generated dependencies of target kcov_sowrapper
[ 3%] Built target kcov_sowrapper
Consolidate compiler generated dependencies of target bash_execve_redirector
[ 6%] Built target bash_execve_redirector
Consolidate compiler generated dependencies of target bash_tracefd_cloexec
[ 8%] Built target bash_tracefd_cloexec
Consolidate compiler generated dependencies of target kcov_system_lib
[ 13%] Built target kcov_system_lib
Consolidate compiler generated dependencies of target kcov
[ 79%] Built target kcov
Consolidate compiler generated dependencies of target kcov-system-daemon
[100%] Built target kcov-system-daemon
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/share/doc/kcov/ChangeLog
-- Installing: /usr/local/share/doc/kcov/COPYING
-- Installing: /usr/local/share/doc/kcov/COPYING.externals
-- Installing: /usr/local/bin/kcov
-- Installing: /usr/local/bin/kcov-system-daemon
-- Installing: /usr/local/share/man/man1/kcov.1
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Target architectures: unknown
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found ZLIB: /usr/lib/aarch64-linux-gnu/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/aarch64-linux-gnu/libcurl.so (found version "7.81.0")
-- Found Python3: /usr/bin/python3.10 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter
-- Found DL: /usr/lib/aarch64-linux-gnu/libdl.a
-- Found M: /usr/lib/aarch64-linux-gnu/libm.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build-tests
[ 1%] Generating multi-fork-generated.c
[ 1%] Built target multi-fork-generated
[ 3%] Building C object CMakeFiles/shared_library.dir/shared-library/solib.c.o
[ 5%] Linking C shared library libshared_library.so
[ 5%] Built target shared_library
[ 7%] Building CXX object CMakeFiles/main-tests.dir/main.cc.o
[ 9%] Building C object CMakeFiles/main-tests.dir/subdir/file.c.o
[ 11%] Building C object CMakeFiles/main-tests.dir/subdir2/file2.c.o
[ 13%] Linking CXX executable main-tests
[ 13%] Built target main-tests
[ 15%] Building C object CMakeFiles/fork.dir/fork/fork.c.o
[ 17%] Linking C executable fork
[ 17%] Built target fork
[ 19%] Building C object CMakeFiles/fork_no_wait.dir/fork/fork-no-wait.c.o
[ 21%] Linking C executable fork_no_wait
[ 21%] Built target fork_no_wait
[ 23%] Building C object CMakeFiles/vfork.dir/fork/vfork.c.o
[ 25%] Linking C executable vfork
[ 25%] Built target vfork
[ 26%] Building C object CMakeFiles/signals.dir/signals/test-signals.c.o
[ 28%] Linking C executable signals
[ 28%] Built target signals
[ 30%] Building C object CMakeFiles/multi_fork.dir/multi-fork/test-multi-fork.c.o
[ 32%] Linking C executable multi_fork
[ 34%] Built target multi_fork
[ 36%] Building C object CMakeFiles/shared_library_test.dir/shared-library/main.c.o
[ 38%] Linking C executable shared_library_test
[ 38%] Built target shared_library_test
[ 40%] Building C object CMakeFiles/argv_dependent.dir/argv-dependent.c.o
[ 42%] Linking C executable argv_dependent
[ 42%] Built target argv_dependent
[ 44%] Building C object CMakeFiles/test_popen.dir/popen/test-popen.c.o
[ 46%] Linking C executable test_popen
[ 46%] Built target test_popen
[ 48%] Building CXX object CMakeFiles/global-constructors.dir/global-constructors/test-global-ctors.cc.o
[ 50%] Linking CXX executable global-constructors
[ 50%] Built target global-constructors
[ 51%] Building CXX object CMakeFiles/test_daemon.dir/daemon/test-daemon.cc.o
[ 53%] Linking CXX executable test_daemon
[ 53%] Built target test_daemon
[ 55%] Building C object CMakeFiles/multi_1.dir/merge-tests/file.c.o
[ 57%] Building C object CMakeFiles/multi_1.dir/merge-tests/main_1.c.o
[ 59%] Linking C executable multi_1
[ 59%] Built target multi_1
[ 61%] Building C object CMakeFiles/multi_2.dir/merge-tests/file.c.o
[ 63%] Building C object CMakeFiles/multi_2.dir/merge-tests/main_2.c.o
[ 65%] Linking C executable multi_2
[ 65%] Built target multi_2
[ 67%] Building CXX object CMakeFiles/setpgid-kill.dir/setpgid-kill/setpgid-kill-main.cc.o
[ 69%] Building CXX object CMakeFiles/setpgid-kill.dir/home/runner/work/kcov/kcov/src/utils.cc.o
[ 71%] Linking CXX executable setpgid-kill
[ 71%] Built target setpgid-kill
[ 73%] Building CXX object CMakeFiles/issue31.dir/daemon/test-issue31.cc.o
[ 75%] Linking CXX executable issue31
[ 75%] Built target issue31
[ 76%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen.cc.o
[ 78%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen-main.cc.o
[ 80%] Linking CXX executable dlopen
[ 80%] Built target dlopen
[ 82%] Building C object CMakeFiles/s.dir/short-file.c.o
[ 84%] Linking C executable s
[ 84%] Built target s
[ 86%] Building C object CMakeFiles/fork+exec.dir/fork/fork+exec.c.o
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c: In function 'main':
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c:26:17: warning: argument 2 null where non-null expected [-Wnonnull]
26 | execvp(argv[1], NULL);
| ^~~~~~
In file included from /home/runner/work/kcov/kcov/tests/fork/fork+exec.c:1:
/usr/include/unistd.h:599:12: note: in a call to function 'execvp' declared 'nonnull'
599 | extern int execvp (const char *__file, char *const __argv[])
| ^~~~~~
[ 88%] Linking C executable fork+exec
[ 88%] Built target fork+exec
[ 90%] Building C object CMakeFiles/thread-test.dir/threads/thread-main.c.o
[ 92%] Linking C executable thread-test
[ 92%] Built target thread-test
[ 94%] Building C object CMakeFiles/pie.dir/pie.c.o
[ 96%] Linking C executable pie
[ 96%] Built target pie
[ 98%] Building C object CMakeFiles/pie-test.dir/argv-dependent.c.o
[100%] Linking C executable pie-test
[100%] Built target pie-test
[100%] Built target tests-stripped
/usr/bin/tar: Removing leading `/' from member names
/usr/bin/tar: Removing leading `/' from hard link targets
ELF Header:
Magic: 7f 45 4c 46 02 01 01 03 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - GNU
ABI Version: 0
Type: DYN (Position-Independent Executable file)
Machine: AArch64
Version: 0x1
Entry point address: 0xccc0
Start of program headers: 64 (bytes into file)
Start of section headers: 13850424 (bytes into file)
Flags: 0x0
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 9
Size of section headers: 64 (bytes)
Number of section headers: 38
Section header string table index: 37
Built for aarch64.
Hello, kcov!
Coverage: 2/2 100.00%
runTest (test_basic.lookup_binary_in_path) ... expected failure
runTest (test_basic.outdir_is_executable) ... FAIL
runTest (test_basic.too_few_arguments) ... ok
runTest (test_basic.wrong_arguments) ... ok
runTest (test_compiled_basic.main_test) ... FAIL
runTest (test_compiled_basic.main_test_lldb_raw_breakpoints) ... FAIL
runTest (test_compiled_basic.main_test_verify) ... FAIL
runTest (test_compiled_basic.shared_library) ... FAIL
runTest (test_compiled_basic.shared_library_accumulate) ... FAIL
runTest (test_compiled_basic.shared_library_filter_out) ... FAIL
runTest (test_compiled_basic.shared_library_skip) ... skipped 'Fickle test, ignoring'
runTest (test_bash_linux_only.bash_exit_before_child) ... ok
runTest (test_bash_linux_only.bash_ldpreload_multilib) ... ok
runTest (test_bash_linux_only.bash_sh_shebang) ... ok
runTest (test_accumulate.accumulate_data) ... FAIL
runTest (test_accumulate.dont_accumulate_data_with_clean) ... FAIL
runTest (test_accumulate.merge_basic) ... ERROR
runTest (test_accumulate.merge_coveralls) ... FAIL
runTest (test_accumulate.merge_merged_output) ... FAIL
runTest (test_accumulate.merge_multiple_output_directories) ... FAIL
runTest (test_bash.bash_accumulate_changed_data) ... skipped 'Only for x86'
runTest (test_bash.bash_accumulate_data) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts_manually) ... ok
runTest (test_bash.bash_can_ignore_function_with_spaces) ... ok
runTest (test_bash.bash_can_ignore_non_executed_scripts) ... ok
runTest (test_bash.bash_coverage) ... ok
runTest (test_bash.bash_coverage_debug_trap) ... ok
runTest (test_bash.bash_coverage_tricky) ... ok
runTest (test_bash.bash_dollar_var_replacement) ... ok
runTest (test_bash.bash_done_eof) ... ok
runTest (test_bash.bash_drain_stdout_without_return) ... ok
runTest (test_bash.bash_eof_backtick) ... ok
runTest (test_bash.bash_exit_status) ... ok
runTest (test_bash.bash_handle_all_output) ... ok
runTest (test_bash.bash_heredoc_backslashes) ... ok
runTest (test_bash.bash_heredoc_special_cases_issue_44) ... ok
runTest (test_bash.bash_honor_signal) ... ok
runTest (test_bash.bash_ignore_uncovered) ... ok
runTest (test_bash.bash_issue_116_arithmetic_and_heredoc_issue_117_comment_within_string) ... ok
runTest (test_bash.bash_merge_data_issue_38) ... ok
runTest (test_bash.bash_multiline_backslashes) ... ok
runTest (test_bash.bash_multiline_quotes) ... ok
runTest (test_bash.bash_no_executed_lines) ... ok
runTest (test_bash.bash_non_empty_braces) ... ok
runTest (test_bash.bash_short_file) ... ok
runTest (test_bash.bash_stderr_redirection) ... ok
runTest (test_bash.bash_subshell) ... ok
runTest (test_filter.include_exclude_pattern) ... ok
runTest (test_filter.include_path) ... ok
runTest (test_filter.include_path_and_exclude_pattern) ... ok
runTest (test_python.python2_can_set_legal_parser) ... ok
runTest (test_python.python2_coverage) ... ok
runTest (test_python.python3_coverage) ... ok
runTest (test_python.python_accumulate_data) ... FAIL
runTest (test_python.python_can_set_illegal_parser) ... ok
runTest (test_python.python_can_set_legal_parser) ... ok
runTest (test_python.python_coverage) ... FAIL
runTest (test_python.python_exit_status) ... FAIL
runTest (test_python.python_issue_368_can_handle_symlink_target) ... ok
runTest (test_python.python_tricky_single_dict_assignment) ... expected failure
runTest (test_python.python_tricky_single_line_string_assignment) ... FAIL
runTest (test_python.python_unittest) ... FAIL
======================================================================
ERROR: runTest (test_accumulate.merge_basic)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 59, in runTest
dom = cobertura.parseFile(self.outbase + "/kcov/kcov-merged/cobertura.xml")
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 44, in parseFile
dom = xml.dom.minidom.parseString(readFile(filename))
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 5, in readFile
f = open(name, "r")
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/kcov/kcov-merged/cobertura.xml'
======================================================================
FAIL: runTest (test_basic.outdir_is_executable)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_basic.py", line 47, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 107, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test_lldb_raw_breakpoints)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 117, in runTest
self.doTest("--configure=lldb-use-raw-breakpoint-writes=1")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test_verify)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 112, in runTest
self.doTest("--verify")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 19, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library_accumulate)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 72, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library_filter_out)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 58, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 12, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.dont_accumulate_data_with_clean)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 32, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_coveralls)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 160, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_merged_output)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_multiple_output_directories)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 88, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_python.python_accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 0
AssertionError
======================================================================
FAIL: runTest (test_python.python_coverage)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 125, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 106, in doTest
assert cobertura.hitsPerLine(dom, "main", 10) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_exit_status)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 17, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_python.python_tricky_single_line_string_assignment)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 164, in runTest
assert cobertura.hitsPerLine(dom, "second.py", 34) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_unittest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 89, in runTest
assert cobertura.hitsPerLine(dom, "testdriver", 14) == 1
AssertionError
----------------------------------------------------------------------
Ran 63 tests in 35.582s
FAILED (failures=17, errors=1, skipped=2, expected failures=2)
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Bfd: /usr/lib/powerpc64le-linux-gnu/libbfd.so
-- Target architectures: ppc64
-- Found ZLIB: /usr/lib/powerpc64le-linux-gnu/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/powerpc64le-linux-gnu/libcurl.so (found version "7.81.0")
-- Found DL: /usr/lib/powerpc64le-linux-gnu/libdl.a
-- Found M: /usr/lib/powerpc64le-linux-gnu/libm.so
-- Found Git: /usr/bin/git
fatal: No names found, cannot describe anything.
-- kcov version:
-- Found OpenSSL: /usr/lib/powerpc64le-linux-gnu/libcrypto.so (found version "3.0.2")
-- Found LibElf: /usr/lib/powerpc64le-linux-gnu/libelf.so
-- Found ElfUtils: /usr/lib/powerpc64le-linux-gnu/libdw.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build
[ 1%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/phdr_data.c.o
[ 2%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/lib.c.o
[ 3%] Linking C shared library libkcov_sowrapper.so
[ 3%] Built target kcov_sowrapper
[ 5%] Building C object src/CMakeFiles/bash_execve_redirector.dir/engines/bash-execve-redirector.c.o
[ 6%] Linking C shared library libbash_execve_redirector.so
[ 6%] Built target bash_execve_redirector
[ 7%] Building C object src/CMakeFiles/bash_tracefd_cloexec.dir/engines/bash-tracefd-cloexec.c.o
[ 8%] Linking C shared library libbash_tracefd_cloexec.so
[ 8%] Built target bash_tracefd_cloexec
[ 10%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/engines/system-mode-binary-lib.cc.o
[ 11%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/utils.cc.o
[ 12%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/system-mode/registration.cc.o
[ 13%] Linking CXX shared library libkcov_system_lib.so
[ 13%] Built target kcov_system_lib
[ 15%] Generating version.c
[ 16%] Generating bash-cloexec-library.cc
[ 17%] Generating bash-helper.cc
[ 18%] Generating bash-redirector-library.cc
[ 20%] Generating html-data-files.cc
[ 21%] Generating kcov-system-library.cc
[ 22%] Generating library.cc
[ 24%] Generating python-helper.cc
[ 25%] Building CXX object src/CMakeFiles/kcov.dir/capabilities.cc.o
[ 26%] Building CXX object src/CMakeFiles/kcov.dir/collector.cc.o
[ 27%] Building CXX object src/CMakeFiles/kcov.dir/configuration.cc.o
[ 29%] Building CXX object src/CMakeFiles/kcov.dir/engine-factory.cc.o
[ 30%] Building CXX object src/CMakeFiles/kcov.dir/engines/bash-engine.cc.o
[ 31%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o
[ 32%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-file-format.cc.o
[ 34%] Building CXX object src/CMakeFiles/kcov.dir/engines/python-engine.cc.o
[ 35%] Building CXX object src/CMakeFiles/kcov.dir/filter.cc.o
In file included from /usr/include/c++/11/bits/regex_scanner.h:271,
from /usr/include/c++/11/regex:61,
from /home/runner/work/kcov/kcov/src/filter.cc:9:
/usr/include/c++/11/bits/regex_scanner.tcc: In constructor 'std::__detail::_Scanner<_CharT>::_Scanner(const _CharT*, const _CharT*, std::__detail::_Scanner<_CharT>::_FlagT, std::locale) [with _CharT = char]':
/usr/include/c++/11/bits/regex_scanner.tcc:56:5: note: the layout of aggregates containing vectors with 4-byte alignment has changed in GCC 5
56 | _Scanner<_CharT>::
| ^~~~~~~~~~~~~~~~
[ 36%] Building CXX object src/CMakeFiles/kcov.dir/gcov.cc.o
/home/runner/work/kcov/kcov/src/gcov.cc: In copy constructor 'kcov::GcnoParser::BasicBlockMapping::BasicBlockMapping(const kcov::GcnoParser::BasicBlockMapping&)':
/home/runner/work/kcov/kcov/src/gcov.cc:168:17: note: the layout of aggregates containing vectors with 8-byte alignment has changed in GCC 5
168 | m_function(other.m_function), m_basicBlock(other.m_basicBlock),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 37%] Building CXX object src/CMakeFiles/kcov.dir/main.cc.o
[ 39%] Building CXX object src/CMakeFiles/kcov.dir/merge-file-parser.cc.o
[ 40%] Building CXX object src/CMakeFiles/kcov.dir/output-handler.cc.o
[ 41%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dummy-disassembler.cc.o
[ 43%] Building CXX object src/CMakeFiles/kcov.dir/parser-manager.cc.o
[ 44%] Building CXX object src/CMakeFiles/kcov.dir/reporter.cc.o
[ 45%] Building CXX object src/CMakeFiles/kcov.dir/source-file-cache.cc.o
[ 46%] Building CXX object src/CMakeFiles/kcov.dir/utils.cc.o
[ 48%] Building CXX object src/CMakeFiles/kcov.dir/writers/cobertura-writer.cc.o
[ 49%] Building CXX object src/CMakeFiles/kcov.dir/writers/codecov-writer.cc.o
[ 50%] Building CXX object src/CMakeFiles/kcov.dir/writers/json-writer.cc.o
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
[ 54%] Building CXX object src/CMakeFiles/kcov.dir/writers/sonarqube-xml-writer.cc.o
[ 55%] Building CXX object src/CMakeFiles/kcov.dir/writers/writer-base.cc.o
[ 56%] Building CXX object src/CMakeFiles/kcov.dir/engines/clang-coverage-engine.cc.o
[ 58%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace.cc.o
[ 59%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace_linux.cc.o
[ 60%] Building CXX object src/CMakeFiles/kcov.dir/engines/kernel-engine.cc.o
[ 62%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf.cc.o
[ 63%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf-parser.cc.o
[ 64%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dwarf.cc.o
[ 65%] Building CXX object src/CMakeFiles/kcov.dir/solib-handler.cc.o
[ 67%] Building C object src/CMakeFiles/kcov.dir/solib-parser/phdr_data.c.o
[ 68%] Building CXX object src/CMakeFiles/kcov.dir/system-mode/file-data.cc.o
[ 69%] Building CXX object src/CMakeFiles/kcov.dir/library.cc.o
[ 70%] Building CXX object src/CMakeFiles/kcov.dir/bash-redirector-library.cc.o
[ 72%] Building CXX object src/CMakeFiles/kcov.dir/bash-cloexec-library.cc.o
[ 73%] Building CXX object src/CMakeFiles/kcov.dir/python-helper.cc.o
[ 74%] Building CXX object src/CMakeFiles/kcov.dir/bash-helper.cc.o
[ 75%] Building CXX object src/CMakeFiles/kcov.dir/kcov-system-library.cc.o
[ 77%] Building CXX object src/CMakeFiles/kcov.dir/html-data-files.cc.o
[ 78%] Building C object src/CMakeFiles/kcov.dir/version.c.o
[ 79%] Linking CXX executable kcov
[ 79%] Built target kcov
[ 81%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/configuration.cc.o
[ 82%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/dummy-solib-handler.cc.o
[ 83%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engine-factory.cc.o
[ 84%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/system-mode-file-format.cc.o
[ 86%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace.cc.o
[ 87%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace_linux.cc.o
[ 88%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/filter.cc.o
In file included from /usr/include/c++/11/bits/regex_scanner.h:271,
from /usr/include/c++/11/regex:61,
from /home/runner/work/kcov/kcov/src/filter.cc:9:
/usr/include/c++/11/bits/regex_scanner.tcc: In constructor 'std::__detail::_Scanner<_CharT>::_Scanner(const _CharT*, const _CharT*, std::__detail::_Scanner<_CharT>::_FlagT, std::locale) [with _CharT = char]':
/usr/include/c++/11/bits/regex_scanner.tcc:56:5: note: the layout of aggregates containing vectors with 4-byte alignment has changed in GCC 5
56 | _Scanner<_CharT>::
| ^~~~~~~~~~~~~~~~
[ 89%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/gcov.cc.o
/home/runner/work/kcov/kcov/src/gcov.cc: In copy constructor 'kcov::GcnoParser::BasicBlockMapping::BasicBlockMapping(const kcov::GcnoParser::BasicBlockMapping&)':
/home/runner/work/kcov/kcov/src/gcov.cc:168:17: note: the layout of aggregates containing vectors with 8-byte alignment has changed in GCC 5
168 | m_function(other.m_function), m_basicBlock(other.m_basicBlock),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 91%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/main-system-daemon.cc.o
[ 92%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/parser-manager.cc.o
[ 93%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/file-data.cc.o
[ 94%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/registration.cc.o
[ 96%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/utils.cc.o
[ 97%] Building C object src/CMakeFiles/kcov-system-daemon.dir/version.c.o
[ 98%] Linking CXX executable kcov-system-daemon
[100%] Built target kcov-system-daemon
Consolidate compiler generated dependencies of target kcov_sowrapper
[ 3%] Built target kcov_sowrapper
Consolidate compiler generated dependencies of target bash_execve_redirector
[ 6%] Built target bash_execve_redirector
Consolidate compiler generated dependencies of target bash_tracefd_cloexec
[ 8%] Built target bash_tracefd_cloexec
Consolidate compiler generated dependencies of target kcov_system_lib
[ 13%] Built target kcov_system_lib
Consolidate compiler generated dependencies of target kcov
[ 79%] Built target kcov
Consolidate compiler generated dependencies of target kcov-system-daemon
[100%] Built target kcov-system-daemon
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/share/doc/kcov/ChangeLog
-- Installing: /usr/local/share/doc/kcov/COPYING
-- Installing: /usr/local/share/doc/kcov/COPYING.externals
-- Installing: /usr/local/bin/kcov
-- Installing: /usr/local/bin/kcov-system-daemon
-- Installing: /usr/local/share/man/man1/kcov.1
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Target architectures: ppc64
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found ZLIB: /usr/lib/powerpc64le-linux-gnu/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/powerpc64le-linux-gnu/libcurl.so (found version "7.81.0")
-- Found Python3: /usr/bin/python3.10 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter
-- Found DL: /usr/lib/powerpc64le-linux-gnu/libdl.a
-- Found M: /usr/lib/powerpc64le-linux-gnu/libm.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build-tests
[ 1%] Generating multi-fork-generated.c
[ 1%] Built target multi-fork-generated
[ 3%] Building C object CMakeFiles/shared_library.dir/shared-library/solib.c.o
[ 5%] Linking C shared library libshared_library.so
[ 5%] Built target shared_library
[ 7%] Building CXX object CMakeFiles/main-tests.dir/main.cc.o
[ 9%] Building C object CMakeFiles/main-tests.dir/subdir/file.c.o
[ 11%] Building C object CMakeFiles/main-tests.dir/subdir2/file2.c.o
[ 13%] Linking CXX executable main-tests
[ 13%] Built target main-tests
[ 15%] Building C object CMakeFiles/fork.dir/fork/fork.c.o
[ 17%] Linking C executable fork
[ 17%] Built target fork
[ 19%] Building C object CMakeFiles/fork_no_wait.dir/fork/fork-no-wait.c.o
[ 21%] Linking C executable fork_no_wait
[ 21%] Built target fork_no_wait
[ 23%] Building C object CMakeFiles/vfork.dir/fork/vfork.c.o
[ 25%] Linking C executable vfork
[ 25%] Built target vfork
[ 26%] Building C object CMakeFiles/signals.dir/signals/test-signals.c.o
[ 28%] Linking C executable signals
[ 28%] Built target signals
[ 30%] Building C object CMakeFiles/multi_fork.dir/multi-fork/test-multi-fork.c.o
[ 32%] Linking C executable multi_fork
[ 34%] Built target multi_fork
[ 36%] Building C object CMakeFiles/shared_library_test.dir/shared-library/main.c.o
[ 38%] Linking C executable shared_library_test
[ 38%] Built target shared_library_test
[ 40%] Building C object CMakeFiles/argv_dependent.dir/argv-dependent.c.o
[ 42%] Linking C executable argv_dependent
[ 42%] Built target argv_dependent
[ 44%] Building C object CMakeFiles/test_popen.dir/popen/test-popen.c.o
[ 46%] Linking C executable test_popen
[ 46%] Built target test_popen
[ 48%] Building CXX object CMakeFiles/global-constructors.dir/global-constructors/test-global-ctors.cc.o
[ 50%] Linking CXX executable global-constructors
[ 50%] Built target global-constructors
[ 51%] Building CXX object CMakeFiles/test_daemon.dir/daemon/test-daemon.cc.o
[ 53%] Linking CXX executable test_daemon
[ 53%] Built target test_daemon
[ 55%] Building C object CMakeFiles/multi_1.dir/merge-tests/file.c.o
[ 57%] Building C object CMakeFiles/multi_1.dir/merge-tests/main_1.c.o
[ 59%] Linking C executable multi_1
[ 59%] Built target multi_1
[ 61%] Building C object CMakeFiles/multi_2.dir/merge-tests/file.c.o
[ 63%] Building C object CMakeFiles/multi_2.dir/merge-tests/main_2.c.o
[ 65%] Linking C executable multi_2
[ 65%] Built target multi_2
[ 67%] Building CXX object CMakeFiles/setpgid-kill.dir/setpgid-kill/setpgid-kill-main.cc.o
[ 69%] Building CXX object CMakeFiles/setpgid-kill.dir/home/runner/work/kcov/kcov/src/utils.cc.o
[ 71%] Linking CXX executable setpgid-kill
[ 71%] Built target setpgid-kill
[ 73%] Building CXX object CMakeFiles/issue31.dir/daemon/test-issue31.cc.o
[ 75%] Linking CXX executable issue31
[ 75%] Built target issue31
[ 76%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen.cc.o
[ 78%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen-main.cc.o
[ 80%] Linking CXX executable dlopen
[ 80%] Built target dlopen
[ 82%] Building C object CMakeFiles/s.dir/short-file.c.o
[ 84%] Linking C executable s
[ 84%] Built target s
[ 86%] Building C object CMakeFiles/fork+exec.dir/fork/fork+exec.c.o
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c: In function 'main':
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c:26:17: warning: argument 2 null where non-null expected [-Wnonnull]
26 | execvp(argv[1], NULL);
| ^~~~~~
In file included from /home/runner/work/kcov/kcov/tests/fork/fork+exec.c:1:
/usr/include/unistd.h:599:12: note: in a call to function 'execvp' declared 'nonnull'
599 | extern int execvp (const char *__file, char *const __argv[])
| ^~~~~~
[ 88%] Linking C executable fork+exec
[ 88%] Built target fork+exec
[ 90%] Building C object CMakeFiles/thread-test.dir/threads/thread-main.c.o
[ 92%] Linking C executable thread-test
[ 92%] Built target thread-test
[ 94%] Building C object CMakeFiles/pie.dir/pie.c.o
[ 96%] Linking C executable pie
[ 96%] Built target pie
[ 98%] Building C object CMakeFiles/pie-test.dir/argv-dependent.c.o
[100%] Linking C executable pie-test
[100%] Built target pie-test
[100%] Built target tests-stripped
/usr/bin/tar: Removing leading `/' from member names
/usr/bin/tar: Removing leading `/' from hard link targets
ELF Header:
Magic: 7f 45 4c 46 02 01 01 03 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - GNU
ABI Version: 0
Type: DYN (Position-Independent Executable file)
Machine: PowerPC64
Version: 0x1
Entry point address: 0xe6d8
Start of program headers: 64 (bytes into file)
Start of section headers: 14526680 (bytes into file)
Flags: 0x2, abiv2
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 9
Size of section headers: 64 (bytes)
Number of section headers: 38
Section header string table index: 37
Built for ppc64le.
Hello, kcov!
Coverage: 2/2 100.00%
runTest (test_basic.lookup_binary_in_path) ... expected failure
runTest (test_basic.outdir_is_executable) ... FAIL
runTest (test_basic.too_few_arguments) ... ok
runTest (test_basic.wrong_arguments) ... ok
runTest (test_compiled_basic.main_test) ... FAIL
runTest (test_compiled_basic.main_test_lldb_raw_breakpoints) ... FAIL
runTest (test_compiled_basic.main_test_verify) ... FAIL
runTest (test_compiled_basic.shared_library) ... FAIL
runTest (test_compiled_basic.shared_library_accumulate) ... FAIL
runTest (test_compiled_basic.shared_library_filter_out) ... FAIL
runTest (test_compiled_basic.shared_library_skip) ... skipped 'Fickle test, ignoring'
runTest (test_bash_linux_only.bash_exit_before_child) ... ok
runTest (test_bash_linux_only.bash_ldpreload_multilib) ... ok
runTest (test_bash_linux_only.bash_sh_shebang) ... ok
runTest (test_accumulate.accumulate_data) ... FAIL
runTest (test_accumulate.dont_accumulate_data_with_clean) ... FAIL
runTest (test_accumulate.merge_basic) ... ERROR
runTest (test_accumulate.merge_coveralls) ... FAIL
runTest (test_accumulate.merge_merged_output) ... FAIL
runTest (test_accumulate.merge_multiple_output_directories) ... FAIL
runTest (test_bash.bash_accumulate_changed_data) ... skipped 'Only for x86'
runTest (test_bash.bash_accumulate_data) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts_manually) ... ok
runTest (test_bash.bash_can_ignore_function_with_spaces) ... ok
runTest (test_bash.bash_can_ignore_non_executed_scripts) ... ok
runTest (test_bash.bash_coverage) ... ok
runTest (test_bash.bash_coverage_debug_trap) ... ok
runTest (test_bash.bash_coverage_tricky) ... ok
runTest (test_bash.bash_dollar_var_replacement) ... ok
runTest (test_bash.bash_done_eof) ... ok
runTest (test_bash.bash_drain_stdout_without_return) ... ok
runTest (test_bash.bash_eof_backtick) ... ok
runTest (test_bash.bash_exit_status) ... ok
runTest (test_bash.bash_handle_all_output) ... ok
runTest (test_bash.bash_heredoc_backslashes) ... ok
runTest (test_bash.bash_heredoc_special_cases_issue_44) ... ok
runTest (test_bash.bash_honor_signal) ... ok
runTest (test_bash.bash_ignore_uncovered) ... ok
runTest (test_bash.bash_issue_116_arithmetic_and_heredoc_issue_117_comment_within_string) ... ok
runTest (test_bash.bash_merge_data_issue_38) ... ok
runTest (test_bash.bash_multiline_backslashes) ... ok
runTest (test_bash.bash_multiline_quotes) ... ok
runTest (test_bash.bash_no_executed_lines) ... ok
runTest (test_bash.bash_non_empty_braces) ... ok
runTest (test_bash.bash_short_file) ... ok
runTest (test_bash.bash_stderr_redirection) ... ok
runTest (test_bash.bash_subshell) ... ok
runTest (test_filter.include_exclude_pattern) ... ok
runTest (test_filter.include_path) ... ok
runTest (test_filter.include_path_and_exclude_pattern) ... ok
runTest (test_python.python2_can_set_legal_parser) ... ok
runTest (test_python.python2_coverage) ... ok
runTest (test_python.python3_coverage) ... ok
runTest (test_python.python_accumulate_data) ... FAIL
runTest (test_python.python_can_set_illegal_parser) ... ok
runTest (test_python.python_can_set_legal_parser) ... ok
runTest (test_python.python_coverage) ... FAIL
runTest (test_python.python_exit_status) ... FAIL
runTest (test_python.python_issue_368_can_handle_symlink_target) ... ok
runTest (test_python.python_tricky_single_dict_assignment) ... expected failure
runTest (test_python.python_tricky_single_line_string_assignment) ... FAIL
runTest (test_python.python_unittest) ... FAIL
======================================================================
ERROR: runTest (test_accumulate.merge_basic)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 59, in runTest
dom = cobertura.parseFile(self.outbase + "/kcov/kcov-merged/cobertura.xml")
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 44, in parseFile
dom = xml.dom.minidom.parseString(readFile(filename))
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 5, in readFile
f = open(name, "r")
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/kcov/kcov-merged/cobertura.xml'
======================================================================
FAIL: runTest (test_basic.outdir_is_executable)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_basic.py", line 47, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 107, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test_lldb_raw_breakpoints)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 117, in runTest
self.doTest("--configure=lldb-use-raw-breakpoint-writes=1")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.main_test_verify)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 112, in runTest
self.doTest("--verify")
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 94, in doTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 19, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library_accumulate)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 72, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_compiled_basic.shared_library_filter_out)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_compiled_basic.py", line 58, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 12, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.dont_accumulate_data_with_clean)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 32, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_coveralls)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 160, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_merged_output)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_multiple_output_directories)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 88, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_python.python_accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 0
AssertionError
======================================================================
FAIL: runTest (test_python.python_coverage)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 125, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 106, in doTest
assert cobertura.hitsPerLine(dom, "main", 10) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_exit_status)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 17, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_python.python_tricky_single_line_string_assignment)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 164, in runTest
assert cobertura.hitsPerLine(dom, "second.py", 34) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_unittest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 89, in runTest
assert cobertura.hitsPerLine(dom, "testdriver", 14) == 1
AssertionError
----------------------------------------------------------------------
Ran 63 tests in 38.161s
FAILED (failures=17, errors=1, skipped=2, expected failures=2)
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Bfd: /usr/lib/i386-linux-gnu/libbfd.so
-- Target architectures: i386
-- Found ZLIB: /usr/lib/i386-linux-gnu/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/i386-linux-gnu/libcurl.so (found version "7.81.0")
-- Found DL: /usr/lib/i386-linux-gnu/libdl.a
-- Found M: /usr/lib/i386-linux-gnu/libm.so
-- Found Git: /usr/bin/git
fatal: No names found, cannot describe anything.
-- kcov version:
-- Found OpenSSL: /usr/lib/i386-linux-gnu/libcrypto.so (found version "3.0.2")
-- Found LibElf: /usr/lib/i386-linux-gnu/libelf.so
-- Found ElfUtils: /usr/lib/i386-linux-gnu/libdw.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build
[ 1%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/phdr_data.c.o
[ 2%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/lib.c.o
[ 3%] Linking C shared library libkcov_sowrapper.so
[ 3%] Built target kcov_sowrapper
[ 5%] Building C object src/CMakeFiles/bash_execve_redirector.dir/engines/bash-execve-redirector.c.o
[ 6%] Linking C shared library libbash_execve_redirector.so
[ 6%] Built target bash_execve_redirector
[ 7%] Building C object src/CMakeFiles/bash_tracefd_cloexec.dir/engines/bash-tracefd-cloexec.c.o
[ 8%] Linking C shared library libbash_tracefd_cloexec.so
[ 8%] Built target bash_tracefd_cloexec
[ 10%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/engines/system-mode-binary-lib.cc.o
[ 11%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/utils.cc.o
[ 12%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/system-mode/registration.cc.o
[ 13%] Linking CXX shared library libkcov_system_lib.so
[ 13%] Built target kcov_system_lib
[ 15%] Generating version.c
[ 16%] Generating bash-cloexec-library.cc
[ 17%] Generating bash-helper.cc
[ 18%] Generating bash-redirector-library.cc
[ 20%] Generating html-data-files.cc
[ 21%] Generating kcov-system-library.cc
[ 22%] Generating library.cc
[ 24%] Generating python-helper.cc
[ 25%] Building CXX object src/CMakeFiles/kcov.dir/capabilities.cc.o
[ 26%] Building CXX object src/CMakeFiles/kcov.dir/collector.cc.o
[ 27%] Building CXX object src/CMakeFiles/kcov.dir/configuration.cc.o
[ 29%] Building CXX object src/CMakeFiles/kcov.dir/engine-factory.cc.o
[ 30%] Building CXX object src/CMakeFiles/kcov.dir/engines/bash-engine.cc.o
[ 31%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o
[ 32%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-file-format.cc.o
[ 34%] Building CXX object src/CMakeFiles/kcov.dir/engines/python-engine.cc.o
[ 35%] Building CXX object src/CMakeFiles/kcov.dir/filter.cc.o
[ 36%] Building CXX object src/CMakeFiles/kcov.dir/gcov.cc.o
[ 37%] Building CXX object src/CMakeFiles/kcov.dir/main.cc.o
[ 39%] Building CXX object src/CMakeFiles/kcov.dir/merge-file-parser.cc.o
[ 40%] Building CXX object src/CMakeFiles/kcov.dir/output-handler.cc.o
[ 41%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dummy-disassembler.cc.o
[ 43%] Building CXX object src/CMakeFiles/kcov.dir/parser-manager.cc.o
[ 44%] Building CXX object src/CMakeFiles/kcov.dir/reporter.cc.o
[ 45%] Building CXX object src/CMakeFiles/kcov.dir/source-file-cache.cc.o
[ 46%] Building CXX object src/CMakeFiles/kcov.dir/utils.cc.o
[ 48%] Building CXX object src/CMakeFiles/kcov.dir/writers/cobertura-writer.cc.o
[ 49%] Building CXX object src/CMakeFiles/kcov.dir/writers/codecov-writer.cc.o
[ 50%] Building CXX object src/CMakeFiles/kcov.dir/writers/json-writer.cc.o
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
[ 54%] Building CXX object src/CMakeFiles/kcov.dir/writers/sonarqube-xml-writer.cc.o
[ 55%] Building CXX object src/CMakeFiles/kcov.dir/writers/writer-base.cc.o
[ 56%] Building CXX object src/CMakeFiles/kcov.dir/engines/clang-coverage-engine.cc.o
[ 58%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace.cc.o
[ 59%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace_linux.cc.o
[ 60%] Building CXX object src/CMakeFiles/kcov.dir/engines/kernel-engine.cc.o
[ 62%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf.cc.o
[ 63%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf-parser.cc.o
[ 64%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dwarf.cc.o
[ 65%] Building CXX object src/CMakeFiles/kcov.dir/solib-handler.cc.o
[ 67%] Building C object src/CMakeFiles/kcov.dir/solib-parser/phdr_data.c.o
[ 68%] Building CXX object src/CMakeFiles/kcov.dir/system-mode/file-data.cc.o
[ 69%] Building CXX object src/CMakeFiles/kcov.dir/library.cc.o
[ 70%] Building CXX object src/CMakeFiles/kcov.dir/bash-redirector-library.cc.o
[ 72%] Building CXX object src/CMakeFiles/kcov.dir/bash-cloexec-library.cc.o
[ 73%] Building CXX object src/CMakeFiles/kcov.dir/python-helper.cc.o
[ 74%] Building CXX object src/CMakeFiles/kcov.dir/bash-helper.cc.o
[ 75%] Building CXX object src/CMakeFiles/kcov.dir/kcov-system-library.cc.o
[ 77%] Building CXX object src/CMakeFiles/kcov.dir/html-data-files.cc.o
[ 78%] Building C object src/CMakeFiles/kcov.dir/version.c.o
[ 79%] Linking CXX executable kcov
[ 79%] Built target kcov
[ 81%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/configuration.cc.o
[ 82%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/dummy-solib-handler.cc.o
[ 83%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engine-factory.cc.o
[ 84%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/system-mode-file-format.cc.o
[ 86%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace.cc.o
[ 87%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/engines/ptrace_linux.cc.o
[ 88%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/filter.cc.o
[ 89%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/gcov.cc.o
[ 91%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/main-system-daemon.cc.o
[ 92%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/parser-manager.cc.o
[ 93%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/file-data.cc.o
[ 94%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/system-mode/registration.cc.o
[ 96%] Building CXX object src/CMakeFiles/kcov-system-daemon.dir/utils.cc.o
[ 97%] Building C object src/CMakeFiles/kcov-system-daemon.dir/version.c.o
[ 98%] Linking CXX executable kcov-system-daemon
[100%] Built target kcov-system-daemon
Consolidate compiler generated dependencies of target kcov_sowrapper
[ 3%] Built target kcov_sowrapper
Consolidate compiler generated dependencies of target bash_execve_redirector
[ 6%] Built target bash_execve_redirector
Consolidate compiler generated dependencies of target bash_tracefd_cloexec
[ 8%] Built target bash_tracefd_cloexec
Consolidate compiler generated dependencies of target kcov_system_lib
[ 13%] Built target kcov_system_lib
Consolidate compiler generated dependencies of target kcov
[ 79%] Built target kcov
Consolidate compiler generated dependencies of target kcov-system-daemon
[100%] Built target kcov-system-daemon
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/share/doc/kcov/ChangeLog
-- Installing: /usr/local/share/doc/kcov/COPYING
-- Installing: /usr/local/share/doc/kcov/COPYING.externals
-- Installing: /usr/local/bin/kcov
-- Installing: /usr/local/bin/kcov-system-daemon
-- Installing: /usr/local/share/man/man1/kcov.1
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Target architectures: i386
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found ZLIB: /usr/lib/i386-linux-gnu/libz.so (found version "1.2.11")
-- Found CURL: /usr/lib/i386-linux-gnu/libcurl.so (found version "7.81.0")
-- Found Python3: /usr/bin/python3.10 (found suitable version "3.10.4", minimum required is "3.8") found components: Interpreter
-- Found DL: /usr/lib/i386-linux-gnu/libdl.a
-- Found M: /usr/lib/i386-linux-gnu/libm.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/runner/work/kcov/kcov/build-tests
[ 1%] Generating multi-fork-generated.c
[ 1%] Built target multi-fork-generated
[ 3%] Building C object CMakeFiles/shared_library.dir/shared-library/solib.c.o
[ 5%] Linking C shared library libshared_library.so
[ 5%] Built target shared_library
[ 7%] Building CXX object CMakeFiles/main-tests.dir/main.cc.o
[ 9%] Building C object CMakeFiles/main-tests.dir/subdir/file.c.o
[ 11%] Building C object CMakeFiles/main-tests.dir/subdir2/file2.c.o
[ 12%] Linking CXX executable main-tests
[ 12%] Built target main-tests
[ 14%] Building C object CMakeFiles/fork.dir/fork/fork.c.o
[ 16%] Linking C executable fork
[ 16%] Built target fork
[ 18%] Building C object CMakeFiles/fork_no_wait.dir/fork/fork-no-wait.c.o
[ 20%] Linking C executable fork_no_wait
[ 20%] Built target fork_no_wait
[ 22%] Building C object CMakeFiles/vfork.dir/fork/vfork.c.o
[ 24%] Linking C executable vfork
[ 24%] Built target vfork
[ 25%] Building C object CMakeFiles/signals.dir/signals/test-signals.c.o
[ 27%] Linking C executable signals
[ 27%] Built target signals
[ 29%] Building C object CMakeFiles/multi_fork.dir/multi-fork/test-multi-fork.c.o
[ 31%] Linking C executable multi_fork
[ 33%] Built target multi_fork
[ 35%] Building C object CMakeFiles/shared_library_test.dir/shared-library/main.c.o
[ 37%] Linking C executable shared_library_test
[ 37%] Built target shared_library_test
[ 38%] Building C object CMakeFiles/argv_dependent.dir/argv-dependent.c.o
[ 40%] Linking C executable argv_dependent
[ 40%] Built target argv_dependent
[ 42%] Building C object CMakeFiles/test_popen.dir/popen/test-popen.c.o
[ 44%] Linking C executable test_popen
[ 44%] Built target test_popen
[ 46%] Building CXX object CMakeFiles/global-constructors.dir/global-constructors/test-global-ctors.cc.o
[ 48%] Linking CXX executable global-constructors
[ 48%] Built target global-constructors
[ 50%] Building CXX object CMakeFiles/test_daemon.dir/daemon/test-daemon.cc.o
[ 51%] Linking CXX executable test_daemon
[ 51%] Built target test_daemon
[ 53%] Building C object CMakeFiles/multi_1.dir/merge-tests/file.c.o
[ 55%] Building C object CMakeFiles/multi_1.dir/merge-tests/main_1.c.o
[ 57%] Linking C executable multi_1
[ 57%] Built target multi_1
[ 59%] Building C object CMakeFiles/multi_2.dir/merge-tests/file.c.o
[ 61%] Building C object CMakeFiles/multi_2.dir/merge-tests/main_2.c.o
[ 62%] Linking C executable multi_2
[ 62%] Built target multi_2
[ 64%] Building CXX object CMakeFiles/setpgid-kill.dir/setpgid-kill/setpgid-kill-main.cc.o
[ 66%] Building CXX object CMakeFiles/setpgid-kill.dir/home/runner/work/kcov/kcov/src/utils.cc.o
[ 68%] Linking CXX executable setpgid-kill
[ 68%] Built target setpgid-kill
[ 70%] Building CXX object CMakeFiles/issue31.dir/daemon/test-issue31.cc.o
[ 72%] Linking CXX executable issue31
[ 72%] Built target issue31
[ 74%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen.cc.o
[ 75%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen-main.cc.o
[ 77%] Linking CXX executable dlopen
[ 77%] Built target dlopen
[ 79%] Building C object CMakeFiles/s.dir/short-file.c.o
[ 81%] Linking C executable s
[ 81%] Built target s
[ 83%] Building C object CMakeFiles/fork+exec.dir/fork/fork+exec.c.o
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c: In function ‘main’:
/home/runner/work/kcov/kcov/tests/fork/fork+exec.c:26:17: warning: argument 2 null where non-null expected [-Wnonnull]
26 | execvp(argv[1], NULL);
| ^~~~~~
In file included from /home/runner/work/kcov/kcov/tests/fork/fork+exec.c:1:
/usr/include/unistd.h:599:12: note: in a call to function ‘execvp’ declared ‘nonnull’
599 | extern int execvp (const char *__file, char *const __argv[])
| ^~~~~~
[ 85%] Linking C executable fork+exec
[ 85%] Built target fork+exec
[ 87%] Building C object CMakeFiles/thread-test.dir/threads/thread-main.c.o
[ 88%] Linking C executable thread-test
[ 88%] Built target thread-test
[ 90%] Building C object CMakeFiles/pie.dir/pie.c.o
[ 92%] Linking C executable pie
[ 92%] Built target pie
[ 94%] Building C object CMakeFiles/pie-test.dir/argv-dependent.c.o
[ 96%] Linking C executable pie-test
[ 96%] Built target pie-test
[ 98%] Building CXX object CMakeFiles/recursive-ptrace.dir/recursive-ptrace/main.cc.o
[100%] Linking CXX executable recursive-ptrace
[100%] Built target recursive-ptrace
[100%] Built target illegal-insn
[100%] Built target fork-32
[100%] Built target tests-stripped
tar: Removing leading `/' from member names
tar: Removing leading `/' from hard link targets
ELF Header:
Magic: 7f 45 4c 46 01 01 01 03 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - GNU
ABI Version: 0
Type: DYN (Position-Independent Executable file)
Machine: Intel 80386
Version: 0x1
Entry point address: 0xb8b0
Start of program headers: 52 (bytes into file)
Start of section headers: 13220400 (bytes into file)
Flags: 0x0
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 12
Size of section headers: 40 (bytes)
Number of section headers: 41
Section header string table index: 40
Built for i386.
Hello, kcov!
Coverage: 2/2 100.00%
runTest (test_basic.lookup_binary_in_path) ... expected failure
runTest (test_basic.outdir_is_executable) ... FAIL
runTest (test_basic.too_few_arguments) ... ok
runTest (test_basic.wrong_arguments) ... ok
runTest (test_compiled_basic.main_test) ... ok
runTest (test_compiled_basic.main_test_lldb_raw_breakpoints) ... ok
runTest (test_compiled_basic.main_test_verify) ... ok
runTest (test_compiled_basic.shared_library) ... ok
runTest (test_compiled_basic.shared_library_accumulate) ... ok
runTest (test_compiled_basic.shared_library_filter_out) ... ok
runTest (test_compiled_basic.shared_library_skip) ... skipped 'Fickle test, ignoring'
runTest (test_compiled.address_sanitizer_coverage) ... skipped 'Clang only'
runTest (test_compiled.attach_process_with_threads) ... skipped 'Fickle test, ignoring'
runTest (test_compiled.attach_process_with_threads_creates_threads) ... skipped 'Fickle test, ignoring'
runTest (test_compiled.collect_and_report_only) ... skipped 'Fickle test, ignoring'
runTest (test_compiled.collect_no_source) ... expected failure
runTest (test_compiled.daemon_no_wait_for_last_child) ... expected failure
runTest (test_compiled.daemon_wait_for_last_child) ... ok
runTest (test_compiled.debuglink) ... ok
runTest (test_compiled.dlopen) ... expected failure
runTest (test_compiled.dlopen_in_ignored_source_file) ... expected failure
runTest (test_compiled.fork_32) ... skipped 'Only for x86_64'
runTest (test_compiled.fork_64) ... ok
runTest (test_compiled.fork_no_wait) ... ok
runTest (test_compiled.global_ctors) ... ok
runTest (test_compiled.illegal_insn) ... ok
runTest (test_compiled.merge_same_file_in_multiple_binaries) ... ok
runTest (test_compiled.pie) ... ok
runTest (test_compiled.pie_accumulate) ... ok
runTest (test_compiled.pie_argv_basic) ... ok
runTest (test_compiled.popen_test) ... ok
runTest (test_compiled.setpgid_kill) ... ok
runTest (test_compiled.short_filename) ... expected failure
runTest (test_compiled.signals) ... ok
runTest (test_compiled.signals_crash) ... ok
runTest (test_compiled.signals_self) ... ok
runTest (test_compiled.vfork) ... ok
runTest (test_bash_linux_only.bash_exit_before_child) ... ok
runTest (test_bash_linux_only.bash_ldpreload_multilib) ... ok
runTest (test_bash_linux_only.bash_sh_shebang) ... ok
runTest (test_system_mode.system_mode_can_instrument_binary) ... ok
runTest (test_system_mode.system_mode_can_record_and_report_binary) ... skipped 'x86_64-only'
runTest (test_system_mode.system_mode_can_start_and_stop_daemon) ... ok
runTest (test_accumulate.accumulate_data) ... FAIL
runTest (test_accumulate.dont_accumulate_data_with_clean) ... FAIL
runTest (test_accumulate.merge_basic) ... ERROR
runTest (test_accumulate.merge_coveralls) ... FAIL
runTest (test_accumulate.merge_merged_output) ... FAIL
runTest (test_accumulate.merge_multiple_output_directories) ... FAIL
runTest (test_bash.bash_accumulate_changed_data) ... ok
runTest (test_bash.bash_accumulate_data) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts) ... ok
runTest (test_bash.bash_can_find_non_executed_scripts_manually) ... ok
runTest (test_bash.bash_can_ignore_function_with_spaces) ... ok
runTest (test_bash.bash_can_ignore_non_executed_scripts) ... ok
runTest (test_bash.bash_coverage) ... ok
runTest (test_bash.bash_coverage_debug_trap) ... ok
runTest (test_bash.bash_coverage_tricky) ... ok
runTest (test_bash.bash_dollar_var_replacement) ... ok
runTest (test_bash.bash_done_eof) ... ok
runTest (test_bash.bash_drain_stdout_without_return) ... ok
runTest (test_bash.bash_eof_backtick) ... ok
runTest (test_bash.bash_exit_status) ... ok
runTest (test_bash.bash_handle_all_output) ... ok
runTest (test_bash.bash_heredoc_backslashes) ... ok
runTest (test_bash.bash_heredoc_special_cases_issue_44) ... ok
runTest (test_bash.bash_honor_signal) ... ok
runTest (test_bash.bash_ignore_uncovered) ... ok
runTest (test_bash.bash_issue_116_arithmetic_and_heredoc_issue_117_comment_within_string) ... ok
runTest (test_bash.bash_merge_data_issue_38) ... ok
runTest (test_bash.bash_multiline_backslashes) ... ok
runTest (test_bash.bash_multiline_quotes) ... ok
runTest (test_bash.bash_no_executed_lines) ... ok
runTest (test_bash.bash_non_empty_braces) ... ok
runTest (test_bash.bash_short_file) ... ok
runTest (test_bash.bash_stderr_redirection) ... ok
runTest (test_bash.bash_subshell) ... ok
runTest (test_filter.include_exclude_pattern) ... ok
runTest (test_filter.include_path) ... ok
runTest (test_filter.include_path_and_exclude_pattern) ... ok
runTest (test_python.python2_can_set_legal_parser) ... ok
runTest (test_python.python2_coverage) ... ok
runTest (test_python.python3_coverage) ... ok
runTest (test_python.python_accumulate_data) ... FAIL
runTest (test_python.python_can_set_illegal_parser) ... ok
runTest (test_python.python_can_set_legal_parser) ... ok
runTest (test_python.python_coverage) ... FAIL
runTest (test_python.python_exit_status) ... FAIL
runTest (test_python.python_issue_368_can_handle_symlink_target) ... ok
runTest (test_python.python_tricky_single_dict_assignment) ... expected failure
runTest (test_python.python_tricky_single_line_string_assignment) ... FAIL
runTest (test_python.python_unittest) ... FAIL
======================================================================
ERROR: runTest (test_accumulate.merge_basic)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 59, in runTest
dom = cobertura.parseFile(self.outbase + "/kcov/kcov-merged/cobertura.xml")
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 44, in parseFile
dom = xml.dom.minidom.parseString(readFile(filename))
File "/home/runner/work/kcov/kcov/tests/tools/libkcov/cobertura.py", line 5, in readFile
f = open(name, "r")
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/kcov/kcov-merged/cobertura.xml'
======================================================================
FAIL: runTest (test_basic.outdir_is_executable)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_basic.py", line 47, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 12, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.dont_accumulate_data_with_clean)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 32, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_coveralls)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 160, in runTest
assert rv == 0
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_merged_output)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_accumulate.merge_multiple_output_directories)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_accumulate.py", line 88, in runTest
assert cobertura.hitsPerLine(dom, "main", 10) == 1
AssertionError
======================================================================
FAIL: runTest (test_python.python_accumulate_data)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 135, in runTest
assert cobertura.hitsPerLine(dom, "main", 16) == 0
AssertionError
======================================================================
FAIL: runTest (test_python.python_coverage)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 125, in runTest
self.doTest("")
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 106, in doTest
assert cobertura.hitsPerLine(dom, "main", 10) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_exit_status)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 17, in runTest
assert rv == noKcovRv
AssertionError
======================================================================
FAIL: runTest (test_python.python_tricky_single_line_string_assignment)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 164, in runTest
assert cobertura.hitsPerLine(dom, "second.py", 34) == 2
AssertionError
======================================================================
FAIL: runTest (test_python.python_unittest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/runner/work/kcov/kcov/tests/tools/test_python.py", line 89, in runTest
assert cobertura.hitsPerLine(dom, "testdriver", 14) == 1
AssertionError
----------------------------------------------------------------------
Ran 92 tests in 166.659s
FAILED (failures=11, errors=1, skipped=7, expected failures=7)
-- The C compiler identification is Clang 16.0.6
-- The CXX compiler identification is Clang 16.0.6
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Could NOT find Bfd (missing: LIBBFD_IBERTY_LIBRARY)
-- Target architectures: x86_64
-- Found ZLIB: /usr/lib/libz.so (found version "1.3")
-- Found CURL: /usr/local/lib/libcurl.so (found version "8.7.1")
-- Found INTL: /usr/local/lib/libintl.so
-- Found M: /usr/lib/libm.so
-- Found Git: /usr/local/bin/git
fatal: No names found, cannot describe anything.
-- kcov version:
-- Found OpenSSL: /usr/lib/libcrypto.so (found version "3.0.12")
-- Found LibElf: /usr/local/lib/libelf.so
-- Found ElfUtils: /usr/local/lib/libdw.so
-- Configuring done (0.6s)
-- Generating done (0.0s)
-- Build files have been written to: /home/runner/work/kcov/kcov/build
[ 1%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/phdr_data.c.o
[ 3%] Building C object src/CMakeFiles/kcov_sowrapper.dir/solib-parser/lib.c.o
[ 4%] Linking C shared library libkcov_sowrapper.so
[ 4%] Built target kcov_sowrapper
[ 6%] Building C object src/CMakeFiles/bash_execve_redirector.dir/engines/bash-execve-redirector.c.o
[ 8%] Linking C shared library libbash_execve_redirector.so
[ 8%] Built target bash_execve_redirector
[ 9%] Building C object src/CMakeFiles/bash_tracefd_cloexec.dir/engines/bash-tracefd-cloexec.c.o
[ 11%] Linking C shared library libbash_tracefd_cloexec.so
[ 11%] Built target bash_tracefd_cloexec
[ 12%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/engines/system-mode-binary-lib.cc.o
[ 14%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/utils.cc.o
[ 16%] Building CXX object src/CMakeFiles/kcov_system_lib.dir/system-mode/registration.cc.o
[ 17%] Linking CXX shared library libkcov_system_lib.so
[ 17%] Built target kcov_system_lib
[ 19%] Generating bash-cloexec-library.cc
[ 20%] Generating bash-helper.cc
[ 22%] Generating bash-redirector-library.cc
[ 24%] Generating html-data-files.cc
[ 25%] Generating kcov-system-library.cc
[ 27%] Generating library.cc
[ 29%] Generating python-helper.cc
[ 30%] Generating version.c
[ 32%] Building CXX object src/CMakeFiles/kcov.dir/capabilities.cc.o
[ 33%] Building CXX object src/CMakeFiles/kcov.dir/collector.cc.o
[ 35%] Building CXX object src/CMakeFiles/kcov.dir/configuration.cc.o
[ 37%] Building CXX object src/CMakeFiles/kcov.dir/engine-factory.cc.o
[ 38%] Building CXX object src/CMakeFiles/kcov.dir/engines/bash-engine.cc.o
[ 40%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o
[ 41%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-file-format.cc.o
[ 43%] Building CXX object src/CMakeFiles/kcov.dir/engines/python-engine.cc.o
[ 45%] Building CXX object src/CMakeFiles/kcov.dir/filter.cc.o
[ 46%] Building CXX object src/CMakeFiles/kcov.dir/gcov.cc.o
/home/runner/work/kcov/kcov/src/gcov.cc:303:15: warning: variable 'arc' set but not used [-Wunused-but-set-variable]
unsigned int arc = 0;
^
1 warning generated.
[ 48%] Building CXX object src/CMakeFiles/kcov.dir/main.cc.o
[ 50%] Building CXX object src/CMakeFiles/kcov.dir/merge-file-parser.cc.o
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/output-handler.cc.o
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dummy-disassembler.cc.o
[ 54%] Building CXX object src/CMakeFiles/kcov.dir/parser-manager.cc.o
[ 56%] Building CXX object src/CMakeFiles/kcov.dir/reporter.cc.o
[ 58%] Building CXX object src/CMakeFiles/kcov.dir/source-file-cache.cc.o
[ 59%] Building CXX object src/CMakeFiles/kcov.dir/utils.cc.o
[ 61%] Building CXX object src/CMakeFiles/kcov.dir/writers/cobertura-writer.cc.o
[ 62%] Building CXX object src/CMakeFiles/kcov.dir/writers/codecov-writer.cc.o
[ 64%] Building CXX object src/CMakeFiles/kcov.dir/writers/json-writer.cc.o
[ 66%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
[ 67%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
[ 69%] Building CXX object src/CMakeFiles/kcov.dir/writers/sonarqube-xml-writer.cc.o
[ 70%] Building CXX object src/CMakeFiles/kcov.dir/writers/writer-base.cc.o
[ 72%] Building CXX object src/CMakeFiles/kcov.dir/engines/clang-coverage-engine.cc.o
[ 74%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace.cc.o
[ 75%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace_freebsd.cc.o
[ 77%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf.cc.o
[ 79%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf-parser.cc.o
[ 80%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dwarf.cc.o
[ 82%] Building CXX object src/CMakeFiles/kcov.dir/solib-handler.cc.o
[ 83%] Building C object src/CMakeFiles/kcov.dir/solib-parser/phdr_data.c.o
[ 85%] Building CXX object src/CMakeFiles/kcov.dir/system-mode/file-data.cc.o
[ 87%] Building CXX object src/CMakeFiles/kcov.dir/library.cc.o
[ 88%] Building CXX object src/CMakeFiles/kcov.dir/bash-redirector-library.cc.o
[ 90%] Building CXX object src/CMakeFiles/kcov.dir/bash-cloexec-library.cc.o
[ 91%] Building CXX object src/CMakeFiles/kcov.dir/python-helper.cc.o
[ 93%] Building CXX object src/CMakeFiles/kcov.dir/bash-helper.cc.o
[ 95%] Building CXX object src/CMakeFiles/kcov.dir/kcov-system-library.cc.o
[ 96%] Building CXX object src/CMakeFiles/kcov.dir/html-data-files.cc.o
[ 98%] Building C object src/CMakeFiles/kcov.dir/version.c.o
[100%] Linking CXX executable kcov
[100%] Built target kcov
[ 4%] Built target kcov_sowrapper
[ 8%] Built target bash_execve_redirector
[ 11%] Built target bash_tracefd_cloexec
[ 17%] Built target kcov_system_lib
[100%] Built target kcov
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/share/doc/kcov/ChangeLog
-- Installing: /usr/local/share/doc/kcov/COPYING
-- Installing: /usr/local/share/doc/kcov/COPYING.externals
-- Installing: /usr/local/bin/kcov
-- Set non-toolchain portion of runtime path of "/usr/local/bin/kcov" to ""
-- Installing: /usr/local/share/man/man1/kcov.1
-- The C compiler identification is Clang 16.0.6
-- The CXX compiler identification is Clang 16.0.6
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Target architectures: x86_64
-- The ASM compiler identification is Clang with GNU-like command-line
-- Found assembler: /usr/bin/cc
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found ZLIB: /usr/lib/libz.so (found version "1.3")
-- Found CURL: /usr/local/lib/libcurl.so (found version "8.7.1")
-- Found Python3: /usr/local/bin/python3 (found suitable version "3.9.18", minimum required is "3.8") found components: Interpreter
-- Found M: /usr/lib/libm.so
-- Configuring done (0.9s)
-- Generating done (0.0s)
-- Build files have been written to: /home/runner/work/kcov/kcov/build-tests
[ 1%] Generating multi-fork-generated.c
[ 1%] Built target multi-fork-generated
[ 3%] Building C object CMakeFiles/shared_library.dir/shared-library/solib.c.o
[ 5%] Linking C shared library libshared_library.so
[ 5%] Built target shared_library
[ 7%] Building CXX object CMakeFiles/main-tests.dir/main.cc.o
[ 8%] Building C object CMakeFiles/main-tests.dir/subdir/file.c.o
[ 10%] Building C object CMakeFiles/main-tests.dir/subdir2/file2.c.o
[ 12%] Linking CXX executable main-tests
[ 12%] Built target main-tests
[ 14%] Building C object CMakeFiles/fork.dir/fork/fork.c.o
[ 16%] Linking C executable fork
[ 16%] Built target fork
[ 17%] Building C object CMakeFiles/fork_no_wait.dir/fork/fork-no-wait.c.o
[ 19%] Linking C executable fork_no_wait
[ 19%] Built target fork_no_wait
[ 21%] Building C object CMakeFiles/vfork.dir/fork/vfork.c.o
[ 23%] Linking C executable vfork
[ 23%] Built target vfork
[ 25%] Building C object CMakeFiles/signals.dir/signals/test-signals.c.o
[ 26%] Linking C executable signals
[ 26%] Built target signals
[ 28%] Building C object CMakeFiles/multi_fork.dir/multi-fork/test-multi-fork.c.o
[ 30%] Linking C executable multi_fork
[ 32%] Built target multi_fork
[ 33%] Building C object CMakeFiles/shared_library_test.dir/shared-library/main.c.o
[ 35%] Linking C executable shared_library_test
[ 35%] Built target shared_library_test
[ 37%] Building C object CMakeFiles/argv_dependent.dir/argv-dependent.c.o
[ 39%] Linking C executable argv_dependent
[ 39%] Built target argv_dependent
[ 41%] Building C object CMakeFiles/test_popen.dir/popen/test-popen.c.o
[ 42%] Linking C executable test_popen
[ 42%] Built target test_popen
[ 44%] Building CXX object CMakeFiles/global-constructors.dir/global-constructors/test-global-ctors.cc.o
[ 46%] Linking CXX executable global-constructors
[ 46%] Built target global-constructors
[ 48%] Building CXX object CMakeFiles/test_daemon.dir/daemon/test-daemon.cc.o
[ 50%] Linking CXX executable test_daemon
[ 50%] Built target test_daemon
[ 51%] Building C object CMakeFiles/multi_1.dir/merge-tests/file.c.o
[ 53%] Building C object CMakeFiles/multi_1.dir/merge-tests/main_1.c.o
[ 55%] Linking C executable multi_1
[ 55%] Built target multi_1
[ 57%] Building C object CMakeFiles/multi_2.dir/merge-tests/file.c.o
[ 58%] Building C object CMakeFiles/multi_2.dir/merge-tests/main_2.c.o
[ 60%] Linking C executable multi_2
[ 60%] Built target multi_2
[ 62%] Building CXX object CMakeFiles/setpgid-kill.dir/setpgid-kill/setpgid-kill-main.cc.o
[ 64%] Building CXX object CMakeFiles/setpgid-kill.dir/home/runner/work/kcov/kcov/src/utils.cc.o
[ 66%] Linking CXX executable setpgid-kill
[ 66%] Built target setpgid-kill
[ 67%] Building CXX object CMakeFiles/issue31.dir/daemon/test-issue31.cc.o
[ 69%] Linking CXX executable issue31
[ 69%] Built target issue31
[ 71%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen.cc.o
[ 73%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen-main.cc.o
[ 75%] Linking CXX executable dlopen
[ 75%] Built target dlopen
[ 76%] Building C object CMakeFiles/s.dir/short-file.c.o
[ 78%] Linking C executable s
[ 78%] Built target s
[ 80%] Building C object CMakeFiles/fork+exec.dir/fork/fork+exec.c.o
[ 82%] Linking C executable fork+exec
[ 82%] Built target fork+exec
[ 83%] Building C object CMakeFiles/thread-test.dir/threads/thread-main.c.o
[ 85%] Linking C executable thread-test
[ 85%] Built target thread-test
[ 87%] Building C object CMakeFiles/sanitizer-coverage.dir/sanitizer-coverage.c.o
cc: warning: argument '-fsanitize-coverage=[func|bb|edge]' is deprecated, use '-fsanitize-coverage=[func|bb|edge],[trace-pc-guard|trace-pc],[control-flow]' instead [-Wdeprecated]
[ 89%] Linking C executable sanitizer-coverage
cc: warning: argument '-fsanitize-coverage=[func|bb|edge]' is deprecated, use '-fsanitize-coverage=[func|bb|edge],[trace-pc-guard|trace-pc],[control-flow]' instead [-Wdeprecated]
[ 89%] Built target sanitizer-coverage
[ 91%] Building C object CMakeFiles/pie.dir/pie.c.o
[ 92%] Linking C executable pie
[ 92%] Built target pie
[ 94%] Building C object CMakeFiles/pie-test.dir/argv-dependent.c.o
[ 96%] Linking C executable pie-test
[ 96%] Built target pie-test
[ 98%] Building CXX object CMakeFiles/recursive-ptrace.dir/recursive-ptrace/main.cc.o
[100%] Linking CXX executable recursive-ptrace
[100%] Built target recursive-ptrace
[100%] Built target illegal-insn
[100%] Built target fork-32
[100%] Built target tests-stripped
Hello, kcov!
{
"files": [
{"file": "/home/runner/work/kcov/kcov/.github/workflows/test-executable.sh", "percent_covered": "100.00", "covered_lines": "2", "total_lines": "2"}
],
"percent_covered": "100.00",
"covered_lines": 2,
"total_lines": 2,
"percent_low": 25,
"percent_high": 75,
"command": "test-executable.sh",
"date": "2024-04-15 09:15:57"
}
- The C compiler identification is AppleClang 14.0.0.14000029
-- The CXX compiler identification is AppleClang 14.0.0.14000029
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode_14.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode_14.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Target architectures: x86_64
-- The ASM compiler identification is AppleClang
-- Found assembler: /Applications/Xcode_14.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found ZLIB: /Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libz.tbd (found version "1.2.11")
-- Found CURL: /Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libcurl.tbd (found version "7.85.0")
-- Found Python3: /usr/local/Frameworks/Python.framework/Versions/3.12/bin/python3.12 (found suitable version "3.12.2", minimum required is "3.8") found components: Interpreter
-- Found DL: /Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libdl.tbd
-- Found M: /Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libm.tbd
-- Configuring done (2.9s)
-- Generating done (0.2s)
-- Build files have been written to: /Users/runner/work/kcov/kcov/build-tests
[ 1%] Generating multi-fork-generated.c
[ 1%] Built target multi-fork-generated
[ 3%] Building C object CMakeFiles/shared_library.dir/shared-library/solib.c.o
[ 5%] Linking C shared library libshared_library.dylib
[ 5%] Built target shared_library
[ 7%] Building CXX object CMakeFiles/main-tests.dir/main.cc.o
[ 9%] Building C object CMakeFiles/main-tests.dir/subdir/file.c.o
[ 11%] Building C object CMakeFiles/main-tests.dir/subdir2/file2.c.o
[ 13%] Linking CXX executable main-tests
[ 13%] Built target main-tests
[ 15%] Building C object CMakeFiles/fork.dir/fork/fork.c.o
[ 17%] Linking C executable fork
[ 17%] Built target fork
[ 19%] Building C object CMakeFiles/fork_no_wait.dir/fork/fork-no-wait.c.o
[ 21%] Linking C executable fork_no_wait
[ 21%] Built target fork_no_wait
[ 23%] Building C object CMakeFiles/vfork.dir/fork/vfork.c.o
/Users/runner/work/kcov/kcov/tests/fork/vfork.c:12:10: warning: 'vfork' is deprecated: Use posix_spawn or fork [-Wdeprecated-declarations]
child = vfork();
^
/Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include/unistd.h:604:1: note: 'vfork' has been explicitly marked deprecated here
__deprecated_msg("Use posix_spawn or fork")
^
/Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
[ 25%] Linking C executable vfork
#define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
^
1 warning generated.
[ 25%] Built target vfork
[ 26%] Building C object CMakeFiles/signals.dir/signals/test-signals.c.o
[ 28%] Linking C executable signals
[ 28%] Built target signals
[ 30%] Building C object CMakeFiles/multi_fork.dir/multi-fork/test-multi-fork.c.o
[ 32%] Linking C executable multi_fork
[ 34%] Built target multi_fork
[ 36%] Building C object CMakeFiles/shared_library_test.dir/shared-library/main.c.o
[ 38%] Linking C executable shared_library_test
[ 38%] Built target shared_library_test
[ 40%] Building C object CMakeFiles/argv_dependent.dir/argv-dependent.c.o
[ 42%] Linking C executable argv_dependent
[ 42%] Built target argv_dependent
[ 44%] Building C object CMakeFiles/test_popen.dir/popen/test-popen.c.o
[ 46%] Linking C executable test_popen
[ 46%] Built target test_popen
[ 48%] Building CXX object CMakeFiles/global-constructors.dir/global-constructors/test-global-ctors.cc.o
[ 50%] Linking CXX executable global-constructors
[ 50%] Built target global-constructors
[ 51%] Building CXX object CMakeFiles/test_daemon.dir/daemon/test-daemon.cc.o
[ 53%] Linking CXX executable test_daemon
[ 53%] Built target test_daemon
[ 55%] Building C object CMakeFiles/multi_1.dir/merge-tests/file.c.o
[ 57%] Building C object CMakeFiles/multi_1.dir/merge-tests/main_1.c.o
[ 59%] Linking C executable multi_1
[ 59%] Built target multi_1
[ 61%] Building C object CMakeFiles/multi_2.dir/merge-tests/file.c.o
[ 63%] Building C object CMakeFiles/multi_2.dir/merge-tests/main_2.c.o
[ 65%] Linking C executable multi_2
[ 65%] Built target multi_2
[ 67%] Building CXX object CMakeFiles/setpgid-kill.dir/setpgid-kill/setpgid-kill-main.cc.o
[ 69%] Building CXX object CMakeFiles/setpgid-kill.dir/Users/runner/work/kcov/kcov/src/utils.cc.o
[ 71%] Linking CXX executable setpgid-kill
[ 71%] Built target setpgid-kill
[ 73%] Building CXX object CMakeFiles/issue31.dir/daemon/test-issue31.cc.o
[ 75%] Linking CXX executable issue31
[ 75%] Built target issue31
[ 76%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen.cc.o
[ 78%] Building CXX object CMakeFiles/dlopen.dir/dlopen/dlopen-main.cc.o
[ 80%] Linking CXX executable dlopen
[ 80%] Built target dlopen
[ 82%] Building C object CMakeFiles/s.dir/short-file.c.o
[ 84%] Linking C executable s
[ 84%] Built target s
[ 86%] Building C object CMakeFiles/fork+exec.dir/fork/fork+exec.c.o
[ 88%] Linking C executable fork+exec
[ 88%] Built target fork+exec
[ 90%] Building C object CMakeFiles/thread-test.dir/threads/thread-main.c.o
[ 92%] Linking C executable thread-test
[ 92%] Built target thread-test
[ 94%] Building C object CMakeFiles/pie.dir/pie.c.o
[ 96%] Linking C executable pie
[ 96%] Built target pie
[ 98%] Building C object CMakeFiles/pie-test.dir/argv-dependent.c.o
[100%] Linking C executable pie-test
[100%] Built target pie-test
[100%] Built target tests-stripped
Hello, kcov!
{
"files": [
{"file": "/Users/runner/work/kcov/kcov/.github/workflows/test-executable.sh", "percent_covered": "100.00", "covered_lines": "2", "total_lines": "2"}
],
"percent_covered": "100.00",
"covered_lines": 2,
"total_lines": 2,
"percent_low": 25,
"percent_high": 75,
"command": "test-executable.sh",
"date": "2024-04-15 09:14:18"
}
From the build logs it seems there is a portability issue, but I'm not sure if it is really a problem.
On my system, when building kcov
I got several deprecation warning from curl:
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
/home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc: In member function ‘bool CurlConnectionHandler::talk(const std::string&)’:
/home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc:65:33: warning: ‘CURLFORM_COPYNAME’ is deprecated: since 7.56.0. Use curl_mime_name() [-Wdeprecated-declarations]
65 | CURLFORM_COPYNAME, "json_file",
| ^~~~~~~~~~~~~~~~~
In file included from /home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc:16:
/usr/include/curl/curl.h:2506:3: note: declared here
2506 | CURLFORM_COPYNAME CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
| ^~~~~~~~~~~~~~~~~
/home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc:66:33: warning: ‘CURLFORM_FILE’ is deprecated: since 7.56.0. Use curl_mime_filedata() [-Wdeprecated-declarations]
66 | CURLFORM_FILE, fileName.c_str(),
| ^~~~~~~~~~~~~
/usr/include/curl/curl.h:2515:3: note: declared here
2515 | CURLFORM_FILE CURL_DEPRECATED(7.56.0, "Use curl_mime_filedata()"),
| ^~~~~~~~~~~~~
/home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc:63:29: warning: ‘CURLFORMcode curl_formadd(curl_httppost**, curl_httppost**, ...)’ is deprecated: since 7.56.0. Use curl_mime_init() [-Wdeprecated-declarations]
63 | curl_formadd(&formpost,
| ~~~~~~~~~~~~^~~~~~~~~~~
64 | &lastptr,
| ~~~~~~~~~
65 | CURLFORM_COPYNAME, "json_file",
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
66 | CURLFORM_FILE, fileName.c_str(),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
67 | CURLFORM_END);
| ~~~~~~~~~~~~~
/usr/include/curl/curl.h:2581:1: note: declared here
2581 | curl_formadd(struct curl_httppost **httppost,
| ^~~~~~~~~~~~
/home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc:69:42: warning: ‘CURLOPT_HTTPPOST’ is deprecated: since 7.56.0. Use CURLOPT_MIMEPOST [-Wdeprecated-declarations]
69 | curl_easy_setopt(m_curl, CURLOPT_HTTPPOST, formpost);
| ^~~~~~~~~~~~~~~~
/usr/include/curl/curl.h:1191:3: note: declared here
1191 | CURLOPTDEPRECATED(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24,
| ^~~~~~~~~~~~~~~~~
/home/manlio/src/contrib/kcov/github/perillo/kcov/src/writers/coveralls-writer.cc:73:30: warning: ‘void curl_formfree(curl_httppost*)’ is deprecated: since 7.56.0. Use curl_mime_free() [-Wdeprecated-declarations]
73 | curl_formfree(formpost);
| ~~~~~~~~~~~~~^~~~~~~~~~
/usr/include/curl/curl.h:2617:1: note: declared here
2617 | curl_formfree(struct curl_httppost *form);
| ^~~~~~~~~~~~~
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
The libcurl error is #409 .
As for the other architectures on Linux, I suppose I should do some work to get at least ARM and AARCH64 usable. RISC-V and loongarch was added a while ago, so those would be nice to have tests for in addition.
However, it's a bit cumbersome to develop for when all you have are emulators. I haven't bothered to investigate the errors, so it's pretty much just a compile test now.
ARM and AARCH64 would be possible to do via the raspberry pi though, so those should be easier to get in shape.
I've looked a bit at running on non-x86 archs for Linux (in a separate branch), but I now think the issue is with how uraimo/run-on-arch-action@v2
sets up the architecture emulation. I don't think it's possible to run ptrace there, so it's unlikely to be possible to run kcov for compiled binaries with that.
I guess it might be possible to setup a self-hosted runner for at least Aarch64, and maybe ARM (thinking about my Raspberry Pi...), but that might be some additional work.
With debug printouts, I see this:
PT forked 14094
Can't set me as ptraced: Function not implemented
When trying to restore tests for other architectures, I suspected that the emulation environment/chroot may alter the result. I was planning to add an additional target "amd64 with qemu", to test if there are really changes. Do you think it make sense?
Well, I suspect they are using the qemu user space emulation, which explains why the syscalls don't work. For amd64, it might be ok anyway, since it's presumably run on a amd64 to start with.
I ran the test suite on my raspberry pi, and can confirm that at least aarch64 runs fine.
I'm not sure if there are other runners which emulate an entire machine, which would enable these tests to run. I guess the freebsd runner basically does that.
What about running qemu-system
directly?
Some time ago I tried to create a register of qemu runner instances, so that they can be downloaded from the net. I think it is strange that no one tried to do something similar.
Yeah, sounds like a good idea. Something like this, https://github.com/docker/setup-qemu-action, might be possible to use I guess?
However, if it's too much work, it might also be OK to just keep the current limited testing. I added Riscv64 in the branch I'm working on, so it at least gets some build testing.
In practice, I think x86, aarch64 and maybe arm will cover almost all practical uses of kcov, so testing them should be the first priority.
In the previous days I played with the CI, and found that the tests on MacOS actually works fine (after fixing some incorrect code).
Running tests for Linux armv7, aarch64, ppc64le and i386 instead result in several errors, so I will try to find the cause in a future PR.
CHANGES
[x] ci: change uraimo/run-on-arch version to v2
Instead of using the fixed version v2.6.0, use v2 so that updates are automatic.
This may introduce bugs but it will also contain improvements.
[x] ci: set strategy.fail-fast to false
Errors from other architectures are important.
[x] ci: use python3, instead of python in
ci-run-tests.sh
Using python3 will avoid unspecified behavior when using Python on different systems, causing an error when trying to run the tests.
See https://peps.python.org/pep-0394/
[x] tests: skip tests using python2, when not available
This happens on MacOs.
See https://developer.apple.com/documentation/macos-release-notes/macos-12_3-release-notes
[x] ci: make {{os}}-build.sh files more readable
Separate each code block, so that each action is easy to read.
[x] ci: show coverage on
test_executable.sh
on MacOsIt is done on Linux and FreeBSD; do the same with MacOs.
[x] ci: remove -DCMAKE_INSTALL_PREFIX when building tests
The tests binaries are never installed.
[x] ci: enable tests for MacOS.
It works correctly.
NOTES
I added an additional code block in
osx-build.sh
, since it was done for Linux and FreeBSD. However I'm not sure what is the purpose of this, since the result should be checked manually.TODO
I tried to run tests without using
sudo
, but on Linux/amd64 I got the errorOn my system I never encountered this error.
On MacOs instead the test runner stopped after a few tests, maybe cause a deadlock.