Merge lp://qastaging/~compiz-team/compiz/compiz.fix_1171364 into lp://qastaging/compiz/0.9.10

Proposed by Sam Spilsbury
Status: Merged
Approved by: Sam Spilsbury
Approved revision: 3662
Merged at revision: 3670
Proposed branch: lp://qastaging/~compiz-team/compiz/compiz.fix_1171364
Merge into: lp://qastaging/compiz/0.9.10
Diff against target: 768 lines (+34/-123)
40 files modified
cmake/FindGoogleTest.cmake (+5/-1)
compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt (+0/-1)
compizconfig/integration/gnome/tests/CMakeLists.txt (+0/-1)
compizconfig/libcompizconfig/tests/CMakeLists.txt (+0/-9)
compizconfig/mocks/libcompizconfig/CMakeLists.txt (+1/-12)
gtk/window-decorator/tests/CMakeLists.txt (+0/-3)
plugins/composite/src/pixmapbinding/tests/CMakeLists.txt (+1/-3)
plugins/decor/src/clip-groups/tests/CMakeLists.txt (+1/-3)
plugins/decor/src/pixmap-requests/tests/CMakeLists.txt (+1/-3)
plugins/decor/src/pixmap-requests/tests/integration/xorg-gtest/CMakeLists.txt (+0/-1)
plugins/expo/src/click_threshold/tests/CMakeLists.txt (+1/-3)
plugins/expo/src/wall_offset/tests/CMakeLists.txt (+1/-3)
plugins/grid/src/grabhandler/tests/CMakeLists.txt (+1/-3)
plugins/opengl/src/doublebuffer/tests/CMakeLists.txt (+1/-3)
plugins/opengl/src/glxtfpbind/tests/CMakeLists.txt (+1/-3)
plugins/place/src/constrain-to-workarea/tests/CMakeLists.txt (+1/-3)
plugins/place/src/screen-size-change/tests/CMakeLists.txt (+1/-3)
plugins/place/src/smart/tests/CMakeLists.txt (+1/-3)
plugins/resize/src/logic/tests/CMakeLists.txt (+1/-3)
plugins/wall/src/offset_movement/tests/CMakeLists.txt (+1/-3)
src/option/tests/CMakeLists.txt (+0/-1)
src/plugin/tests/CMakeLists.txt (+0/-1)
src/pluginclasshandler/tests/CMakeLists.txt (+0/-3)
src/point/tests/CMakeLists.txt (+1/-3)
src/privatescreen/tests/CMakeLists.txt (+0/-1)
src/rect/tests/CMakeLists.txt (+2/-6)
src/region/tests/CMakeLists.txt (+0/-1)
src/servergrab/tests/CMakeLists.txt (+1/-3)
src/string/tests/CMakeLists.txt (+0/-1)
src/timer/tests/CMakeLists.txt (+4/-12)
src/window/constrainment/tests/CMakeLists.txt (+1/-3)
src/window/extents/tests/CMakeLists.txt (+1/-3)
src/window/geometry-saver/tests/CMakeLists.txt (+1/-3)
src/window/geometry/tests/CMakeLists.txt (+1/-3)
src/wrapsystem/tests/CMakeLists.txt (+0/-1)
tests/acceptance-tests/xorg-gtest/tests/CMakeLists.txt (+0/-1)
tests/integration/glib/CMakeLists.txt (+1/-3)
tests/shared/src/CMakeLists.txt (+1/-2)
tests/system/xorg-gtest/tests/CMakeLists.txt (+1/-2)
tests/xorg-gtest/CMakeLists.txt (+0/-3)
To merge this branch: bzr merge lp://qastaging/~compiz-team/compiz/compiz.fix_1171364
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
MC Return Approve
Sam Spilsbury Pending
Review via email: mp+160792@code.qastaging.launchpad.net

This proposal supersedes a proposal from 2013-04-22.

Commit message

Link in CMAKE_THREAD_LIBS_INIT through GTEST_BOTH_LIBRARIES so it gets
included in everything. Remove redundant links. Require FindThreads.cmake.

(LP: #1171364)

Description of the change

Link in CMAKE_THREAD_LIBS_INIT through GTEST_BOTH_LIBRARIES so it gets
included in everything. Remove redundant links. Require FindThreads.cmake

I'm not able to reproduce LP: #1171364 , but I assume its due to -lpthread not being passed to every test linker line.

(LP: #1171364)

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal
Download full text (3.8 KiB)

I get this output:

/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.a(gtest-all.cc.o): In function `testing::internal::ThreadLocal<testing::TestPartResultReporterInterface*>::~ThreadLocal()':
gtest-all.cc:(.text._ZN7testing8internal11ThreadLocalIPNS_31TestPartResultReporterInterfaceEED2Ev[_ZN7testing8internal11ThreadLocalIPNS_31TestPartResultReporterInterfaceEED5Ev]+0x16): undefined reference to `pthread_getspecific'
gtest-all.cc:(.text._ZN7testing8internal11ThreadLocalIPNS_31TestPartResultReporterInterfaceEED2Ev[_ZN7testing8internal11ThreadLocalIPNS_31TestPartResultReporterInterfaceEED5Ev]+0x2b): undefined reference to `pthread_key_delete'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.a(gtest-all.cc.o): In function `testing::internal::ThreadLocal<std::vector<testing::internal::TraceInfo, std::allocator<testing::internal::TraceInfo> > >::~ThreadLocal()':
gtest-all.cc:(.text._ZN7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEED2Ev[_ZN7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEED5Ev]+0x16): undefined reference to `pthread_getspecific'
gtest-all.cc:(.text._ZN7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEED2Ev[_ZN7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEED5Ev]+0x2b): undefined reference to `pthread_key_delete'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.a(gtest-all.cc.o): In function `testing::internal::ThreadLocal<std::vector<testing::internal::TraceInfo, std::allocator<testing::internal::TraceInfo> > >::GetOrCreateValue() const':
gtest-all.cc:(.text._ZNK7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEE16GetOrCreateValueEv[_ZNK7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEE16GetOrCreateValueEv]+0x18): undefined reference to `pthread_getspecific'
gtest-all.cc:(.text._ZNK7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEE16GetOrCreateValueEv[_ZNK7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEE16GetOrCreateValueEv]+0x7c): undefined reference to `pthread_setspecific'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.a(gtest-all.cc.o): In function `testing::internal::ThreadLocal<testing::TestPartResultReporterInterface*>::CreateKey()':
gtest-all.cc:(.text._ZN7testing8internal11ThreadLocalIPNS_31TestPartResultReporterInterfaceEE9CreateKeyEv[_ZN7testing8internal11ThreadLocalIPNS_31TestPartResultReporterInterfaceEE9CreateKeyEv]+0x16): undefined reference to `pthread_key_create'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.a(gtest-all.cc.o): In function `testing::internal::ThreadLocal<std::vector<testing::internal::TraceInfo, std::allocator<testing::internal::TraceInfo> > >::CreateKey()':
gtest-all.cc:(.text._ZN7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEE9CreateKeyEv[_ZN7testing8internal11ThreadLocalISt6vectorINS0_9TraceInfoESaIS3_EEE9CreateKeyEv]+0x16): undefined reference to `pthread_key_create'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.a(gtest-all.cc.o): In function `testing::internal::ThreadLocal<testing::TestPartResultReporterInterface*>::GetOrCreateValue() const':
gtest-all.cc:(.text._ZNK7testing8internal11Thr...

Read more...

Revision history for this message
Sam Spilsbury (smspillaz) wrote : Posted in a previous version of this proposal

Try it now.

review: Approve
Revision history for this message
Sam Spilsbury (smspillaz) wrote : Posted in a previous version of this proposal

Oops

review: Abstain
Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal

/offtopic on

btw, the automerger is still in weekend mode it seems ;)

/offtopic off

I retried the latest version, but still getting those undefined references...
but judging from your last comment you seem to have found the cause, yes ?

Revision history for this message
Sam Spilsbury (smspillaz) wrote : Posted in a previous version of this proposal

Evidently not. I need to go to bed now because its 2:50AM. But what
you can do for me is post on a pastebin the output of cmake ..
-DCMAKE_VERBOSE_MAKEFILE=ON && make . I need to see if -lpthread is
being passed into the right places.

On Tue, Apr 23, 2013 at 2:49 AM, MC Return <email address hidden> wrote:
> /offtopic on
>
> btw, the automerger is still in weekend mode it seems ;)
>
> /offtopic off
>
> I retried the latest version, but still getting those undefined references...
> but judging from your last comment you seem to have found the cause, yes ?
> --
> https://code.launchpad.net/~compiz-team/compiz/compiz.fix_1171364/+merge/160177
> You proposed lp:~compiz-team/compiz/compiz.fix_1171364 for merging.

--
Sam Spilsbury

Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal

> Evidently not. I need to go to bed now because its 2:50AM. But what
> you can do for me is post on a pastebin the output of cmake ..
> -DCMAKE_VERBOSE_MAKEFILE=ON && make . I need to see if -lpthread is
> being passed into the right places.
>
Posted it here: http://pastebin.com/biBGx6tG

No stress, please. Go to sleep ;)

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Approve (continuous-integration)
Revision history for this message
Sam Spilsbury (smspillaz) wrote : Posted in a previous version of this proposal

Curious.

It seems to me like cmake was unable to find pthread on your system. Can you add the following to cmake/FindGoogleTest.cmake right after find_package (Threads REQUIRED)

message ("[debug] CMake detected threads library - " ${CMAKE_THREAD_LIBS_INIT})

And then post the output of cmake?

Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal

> Curious.
>
> It seems to me like cmake was unable to find pthread on your system. Can you
> add the following to cmake/FindGoogleTest.cmake right after find_package
> (Threads REQUIRED)
>
> message ("[debug] CMake detected threads library - "
> ${CMAKE_THREAD_LIBS_INIT})
>
> And then post the output of cmake?

Here it is (the beginning of it only):
-- Could NOT find gcovr (missing: GCOVR_EXECUTABLE)
[debug] CMake detected threads library - -lpthread
-- Found xorg-gtest sources at /usr/src/xorg-gtest

Revision history for this message
Sam Spilsbury (smspillaz) wrote : Posted in a previous version of this proposal

Actually, can you post the full output again with this branch? Use make -k . It might be that we're getting the undefined references in other areas now.

Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal

> Actually, can you post the full output again with this branch? Use make -k .
> It might be that we're getting the undefined references in other areas now.

Unos momentos.

Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal

It is freakin' long, but paste.ubuntu.com saved my day - here it comes:

http://paste.ubuntu.com/5598745/

Revision history for this message
MC Return (mc-return) wrote : Posted in a previous version of this proposal

/offtopic on

Could you please update the lp:compiz trunk 0.9.10-dev PPA ?

https://launchpad.net/~smspillaz/+archive/compiz-dev

It seems that it is still using 0.9.9 version number and also has no plugin packages...
It would be great to have it to be able to run Compiz from trunk with all the goodies and
it would make testing for outsiders a lot easier if it would all work nicely...

/offtopic off

Revision history for this message
Sam Spilsbury (smspillaz) wrote :

Try it now.

It looks like you're one of the lucky few who has actually managed to get a systemwide installed google test to be detected properly by cmake.

Revision history for this message
MC Return (mc-return) wrote :
Download full text (3.7 KiB)

It is already much better, but still fails:

Scanning dependencies of target compizconfig_test_ccs_gnome_gsettings_integrated_setting
[ 48%] Building CXX object compizconfig/integration/gnome/gsettings/tests/CMakeFiles/compizconfig_test_ccs_gnome_gsettings_integrated_setting.dir/compizconfig_test_ccs_gnome_gsettings_integrated_setting.cpp.o
In file included from /usr/include/gtest/gtest.h:57:0,
                 from /home/mcr2010/src/bzr/compiz.fix_1171364/compizconfig/libcompizconfig/tests/compizconfig_test_ccs_mock_backend_conformance.cpp:1:
/home/mcr2010/src/bzr/compiz.fix_1171364/compizconfig/tests/compizconfig_backend_concept_test.h: In member function ‘void CCSBackendConformanceSpawnObjectsTestFixtureBase::SpawnSetting(const string&, CCSSettingType, const boost::shared_ptr<_CCSPlugin>&, boost::shared_ptr<_CCSSetting>&)’:
/home/mcr2010/src/bzr/compiz.fix_1171364/compizconfig/tests/compizconfig_backend_concept_test.h:372:6: error: no matching function for call to ‘testing::AssertionResult::AssertionResult(const boost::shared_ptr<_CCSPlugin>&)’
      ASSERT_TRUE (plugin);
      ^
/home/mcr2010/src/bzr/compiz.fix_1171364/compizconfig/tests/compizconfig_backend_concept_test.h:372:6: note: candidates are:
In file included from /home/mcr2010/src/bzr/compiz.fix_1171364/compizconfig/libcompizconfig/tests/compizconfig_test_ccs_mock_backend_conformance.cpp:1:0:
/usr/include/gtest/gtest.h:271:12: note: testing::AssertionResult::AssertionResult(bool)
   explicit AssertionResult(bool success) : success_(success) {}
            ^
/usr/include/gtest/gtest.h:271:12: note: no known conversion for argument 1 from ‘const boost::shared_ptr<_CCSPlugin>’ to ‘bool’
/usr/include/gtest/gtest.h:269:3: note: testing::AssertionResult::AssertionResult(const testing::AssertionResult&)
   AssertionResult(const AssertionResult& other);
   ^
/usr/include/gtest/gtest.h:269:3: note: no known conversion for argument 1 from ‘const boost::shared_ptr<_CCSPlugin>’ to ‘const testing::AssertionResult&’
Scanning dependencies of target compizconfig_test_ccs_gnome_integration
[ 48%] Building CXX object compizconfig/integration/gnome/tests/CMakeFiles/compizconfig_test_ccs_gnome_integration.dir/compizconfig_test_ccs_gnome_integration.cpp.o
Linking CXX shared library libcompiz_core.so
Linking CXX executable compiz_test_opengl_double_buffer
At global scope:
cc1plus: error: unrecognized command line option "-Wno-unused-private-field" [-Werror]
cc1plus: error: unrecognized command line option "-Wno-unused-private-field" [-Werror]
cc1plus: error: unrecognized command line option "-Wno-unused-private-field" [-Werror]
cc1plus: error: unrecognized command line option "-Wno-unused-private-field" [-Werror]
cc1plus: error: unrecognized command line option "-Wno-unused-private-field" [-Werror]
cc1plus: all warnings being treated as errors
make[2]: *** [compizconfig/libcompizconfig/tests/CMakeFiles/compizconfig_test_ccs_mock_backend_conformance.dir/compizconfig_test_ccs_mock_backend_conformance.cpp.o] Error 1
make[1]: *** [compizconfig/libcompizconfig/tests/CMakeFiles/compizconfig_test_ccs_mock_backend_conformance.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Discovering Tests...

Read more...

Revision history for this message
Sam Spilsbury (smspillaz) wrote :

Ah okay. You've got the newer boost where they've turned on explicit operator bool. Can you file a new bug about that?

Revision history for this message
Sam Spilsbury (smspillaz) wrote :

(If the link errors are gone, please approve this one, I'll fix the boost thing separately)

Revision history for this message
MC Return (mc-return) wrote :

> (If the link errors are gone, please approve this one, I'll fix the boost
> thing separately)

Sure. Approved.

review: Approve
Revision history for this message
MC Return (mc-return) wrote :

> Ah okay. You've got the newer boost where they've turned on explicit operator
> bool. Can you file a new bug about that?

Sure, done.
See bug #1172601.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
MC Return (mc-return) :
review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches

to all changes: