CMake 3.9.0 targeting x86_64-foxkit-linux-musl: Two unexplained test failures
Hello there,
I'm a developer with Adélie Linux, a new Linux distribution focused on security, reliability, and speed. As such we use the musl libc (version 1.1.16) instead of glibc. We have encountered two test failures during a build of CMake 3.9.0, in CTestCoverageCollectGCOV and CTestTestSubdir:
Start 178: CTestCoverageCollectGCOV
178/432 Test #178: CTestCoverageCollectGCOV .........................***Failed Required regular expression not found.Regex=[PASSED with correct output.*Testing/CoverageInfo/main.cpp.gcov
] 0.49 sec
* Extra verbosity turned on
Reading Script: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/test.cmake
CMake Error at /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/test.cmake:7 (ctest_empty_binary_directory):
ctest_empty_binary_directory problem removing the binary directory:
/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetCTestConfiguration:SourceDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetCTestConfiguration:BuildDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
Run dashboard with model Experimental
Source directory: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
Build directory: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
Cannot locate CTest configuration: in BuildDirectory: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/CTestConfig.cmake
Cannot locate CTest configuration: in SourceDirectory: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/CTestConfig.cmake
Site:
Build name: (empty)
Use Experimental tag: 20170813-0126
SetCTestConfiguration:BuildDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetCTestConfiguration:SourceDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetCTestConfiguration:ConfigureCommand:"/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake" "-DCMAKE_BUILD_TYPE:STRING=NoConfig" "-GUnix Makefiles" "/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject"
Configure project
Configure with command: "/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake" "-DCMAKE_BUILD_TYPE:STRING=NoConfig" "-GUnix Makefiles" "/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject"
Run command: "/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake" "-DCMAKE_BUILD_TYPE:STRING=NoConfig" "-GUnix Makefiles" "/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject"
-- The CXX compiler identification is GNU 6.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
Command exited with the value: 0
SetCTestConfiguration:BuildDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetCTestConfiguration:SourceDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetMakeCommand:/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake --build . --config "NoConfig" -- -i
SetCTestConfiguration:MakeCommand:/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake --build . --config "NoConfig" -- -i
Build project
MakeCommand:/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake --build . --config "NoConfig" -- -i
Run command: "/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake" "--build" "." "--config" "NoConfig" "--" "-i"
Scanning dependencies of target myexecutable
make[3]: *** read jobs pipe: Bad file descriptor. Stop.
make[3]: *** Waiting for unfinished jobs....
[ 25%] Building CXX object CMakeFiles/myexecutable.dir/main.cpp.o
[100%] Built target myexecutable
Command exited with the value: 0
MakeCommand:/usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake --build . --config "NoConfig" -- -i
0 Compiler errors
0 Compiler warnings
SetCTestConfiguration:BuildDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
SetCTestConfiguration:SourceDirectory:/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
Test project /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject
Constructing a list of tests
Done constructing a list of tests
Updating test list for fixtures
Added 0 tests to meet fixture requirements
Checking test dependency graph...
Checking test dependency graph end
test 1
Start 1: mytest
1: Test command: /usr/src/aports/main/cmake/src/cmake-3.9.0/bin/cmake "-DMYEXECUTABLE=/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/myexecutable" "-DTARGETDIR=/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/CMakeFiles/myexecutable.dir" "-P" "/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/fake_run_time_gcda.cmake"
1: Test timeout computed to be: 600
1: Test failure
1/1 Test #1: mytest ........................... Passed 0.01 sec
100% tests passed, 0 tests failed out of 1
Label Time Summary:
TestLabel = 0.01 sec (1 test)
Total Test time (real) = 0.01 sec
ctest_coverage_collect_gcov: No .gcda files found, ignoring coverage request.
CMake Error: Problem with archive_read_open_file(): Failed to open '/usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/gcov.tar'
CMake Error: Problem listing tar: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/TestProject/gcov.tar
CMake Error at /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestCoverageCollectGCOV/test.cmake:53 (message):
FAILED: expected:
CMakeFiles/myexecutable.dir/Labels.json;Testing/CoverageInfo/data.json;Testing/CoverageInfo/extra.cpp.gcov;Testing/CoverageInfo/main.cpp.gcov;uncovered/extra/uncovered1.cpp;uncovered/uncovered2.cpp
Got:
217/432 Test #217: CTestTestSubdir ..................................***Failed Required regular expression not found.Regex=[0 tests failed out of 3
] 0.82 sec
Run dashboard with model Experimental
Source directory: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestTestSubdir
Build directory: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestTestSubdir
Reading ctest configuration file: /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestTestSubdir/CTestConfig.cmake
Site: ciall
Build name: CTestTest-Linux-g++-Subdir
Use Experimental tag: 20170813-0128
Configure project
Each . represents 1024 bytes of output
. Size of output: 0K
Build project
Each symbol represents 1024 bytes of output.
'!' represents an error and '*' a warning.
. Size of output: 0K
0 Compiler errors
0 Compiler warnings
Test project /usr/src/aports/main/cmake/src/cmake-3.9.0/Tests/CTestTestSubdir
Start 1: TestMain1
1/3 Test #1: TestMain1 ........................ Passed 0.00 sec
Start 2: TestMain2
Could not find executable main2
Looked in the following places:
main2
main2
Release/main2
Release/main2
Debug/main2
Debug/main2
MinSizeRel/main2
MinSizeRel/main2
RelWithDebInfo/main2
RelWithDebInfo/main2
Deployment/main2
Deployment/main2
Development/main2
Development/main2
Unable to find executable: main2
2/3 Test #2: TestMain2 ........................***Not Run 0.00 sec
Start 3: TestMain3
Could not find executable main3
Looked in the following places:
main3
main3
Release/main3
Release/main3
Debug/main3
Debug/main3
MinSizeRel/main3
MinSizeRel/main3
RelWithDebInfo/main3
RelWithDebInfo/main3
Deployment/main3
Deployment/main3
Development/main3
Development/main3
Unable to find executable: main3
3/3 Test #3: TestMain3 ........................***Not Run 0.00 sec
33% tests passed, 2 tests failed out of 3
Total Test time (real) = 0.00 sec
The following tests FAILED:
2 - TestMain2 (Not Run)
3 - TestMain3 (Not Run)
I have attached a full build log.
For CTestTestSubdir, I manually ran make
in the directory and it built the main2 and main3 executables. I am not sure why it did not build them during the test run.