[cmake-developers] [Review Request][3.1-rc1 regression] topic fix_link-line-dedup_regression
Daniele E. Domenichelli
daniele.domenichelli at gmail.com
Mon Nov 10 10:46:18 EST 2014
On 10/11/14 15:18, Brad King wrote:
> However, the test does not fail for me even without the fix. I
> think for 3.1.0-rc2 I will take this fix but not the test yet.
> Please extend the topic to revise the test:
The test fails for me on a ubuntu precise chroot using gcc 4.6.3 (I
wasn't able to reproduce it elsewhere). With the patch applied it
succeeds. This is the output:
---------------------------------------------------------------------
# ctest -VV -R LinkMixed
UpdateCTestConfiguration from :/root/cmake/build/DartConfiguration.tcl
Parse Config file:/root/cmake/build/DartConfiguration.tcl
Add coverage exclude regular expressions.
Add coverage exclude: XCode
Add coverage exclude: Kdevelop
Add coverage exclude: /Source/(cm|kw)sys/
Add coverage exclude: /CMakeFiles/CMakeTmp/
Add coverage exclude: [A-Za-z]./[Qq]t/qt-.+-opensource-src
SetCTestConfiguration:CMakeCommand:/usr/local/bin/cmake
UpdateCTestConfiguration from :/root/cmake/build/DartConfiguration.tcl
Parse Config file:/root/cmake/build/DartConfiguration.tcl
Test project /root/cmake/build
Constructing a list of tests
Guessing configuration NoConfig
Done constructing a list of tests
Checking test dependency graph...
Checking test dependency graph end
test 160
Start 160: LinkMixed
160: Test command: /root/cmake/build/bin/ctest "--build-and-test"
"/root/cmake/Tests/LinkMixed" "/root/cmake/build/Tests/LinkMixed"
"--build-generator" "Unix Makefiles" "--build-project" "LinkMixed"
"--build-options" "-DCMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make"
"--test-command" "exec"
160: Test timeout computed to be: 1500
160: Internal cmake changing into directory:
/root/cmake/build/Tests/LinkMixed
160: ======== CMake output ======
160: The C compiler identification is GNU 4.6.3
160: The CXX compiler identification is GNU 4.6.3
160: Check for working C compiler: /usr/bin/cc
160: Configuring
160: Check for working C compiler: /usr/bin/cc -- works
160: Detecting C compiler ABI info
160: Configuring
160: Detecting C compiler ABI info - done
160: Detecting C compile features
160: Detecting C compile features - done
160: Check for working CXX compiler: /usr/bin/c++
160: Configuring
160: Check for working CXX compiler: /usr/bin/c++ -- works
160: Detecting CXX compiler ABI info
160: Configuring
160: Detecting CXX compiler ABI info - done
160: Detecting CXX compile features
160: Detecting CXX compile features - done
160: Configuring
160: Configuring done
160: Generating
160: Generating done
160: Build files have been written to: /root/cmake/build/Tests/LinkMixed
160: ======== End CMake output ======
160: Change Dir: /root/cmake/build/Tests/LinkMixed
160:
160: Run Clean Command:"/usr/bin/make" "clean"
160:
160: Run Build Command:"/usr/bin/make"
160: Scanning dependencies of target lib1
160: [ 33%] Building CXX object CMakeFiles/lib1.dir/lib1.cpp.o
160: Linking CXX shared library liblib1.so
160: [ 33%] Built target lib1
160: Scanning dependencies of target lib2
160: [ 66%] Building CXX object CMakeFiles/lib2.dir/lib2.cpp.o
160: Linking CXX static library liblib2.a
160: [ 66%] Built target lib2
160: Scanning dependencies of target exec
160: [100%] Building CXX object CMakeFiles/exec.dir/main.cpp.o
160: Linking CXX executable exec
160: liblib2.a(lib2.cpp.o): In function `lib2::L2::bar()':
160: lib2.cpp:(.text+0xd): undefined reference to `lib1::L1::foo()'
160: collect2: ld returned 1 exit status
160: make[2]: *** [exec] Error 1
160: make[1]: *** [CMakeFiles/exec.dir/all] Error 2
160: make: *** [all] Error 2
1/1 Test #160: LinkMixed ........................***Failed 0.90 sec
0% tests passed, 1 tests failed out of 1
Total Test time (real) = 0.91 sec
The following tests FAILED:
160 - LinkMixed (Failed)
Errors while running CTest
---------------------------------------------------------------------
> - See if it can be integrated into the Tests/Dependency test,
> perhaps as a new Case5 directory.
>
> - Convert the test implementation to use only C so that the
> test can be switched to "project (Dependency C)" as it should
> have been already.
Done, see:
Convert the test to use C only and move it into Tests/Dependency/Case5
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c875db31
It should probably be squashed to a4716b6b...
Cheers,
Daniele
More information about the cmake-developers
mailing list