Mir

Merge lp://qastaging/~afrantzis/mir/work-around-gold-gcc-bug into lp://qastaging/mir

Proposed by Alexandros Frantzis
Status: Merged
Approved by: Andreas Pokorny
Approved revision: no longer in the source branch.
Merged at revision: 3320
Proposed branch: lp://qastaging/~afrantzis/mir/work-around-gold-gcc-bug
Merge into: lp://qastaging/mir
Diff against target: 29 lines (+14/-0)
1 file modified
examples/mir_demo_server_loader.cpp (+14/-0)
To merge this branch: bzr merge lp://qastaging/~afrantzis/mir/work-around-gold-gcc-bug
Reviewer Review Type Date Requested Status
Andreas Pokorny (community) Approve
Cemil Azizoglu (community) Approve
PS Jenkins bot (community) continuous-integration Approve
Mir CI Bot continuous-integration Approve
Alan Griffiths Needs Information
Review via email: mp+286198@code.qastaging.launchpad.net

Commit message

examples: Work around gold/g++/libstdc++ bug

Description of the change

examples: Work around gold/g++/libstdc++ bug

To post a comment you must log in.
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Would adding ${CMAKE_THREAD_LIBS_INIT} to "target_link_libraries(mir_demo_server" work just as well?

review: Needs Information
Revision history for this message
Alexandros Frantzis (afrantzis) wrote :

> Would adding ${CMAKE_THREAD_LIBS_INIT} to
> "target_link_libraries(mir_demo_server" work just as well?

No. ${CMAKE_THREAD_LIBS_INIT} provides the same thread flags that we already provide globally (i.e., -pthread).

The problem is that ld.gold removes the link dependency to libpthread because it doesn't see mir_demo_server using it. Unfortunately pthread is actually needed by some internal libstdc++ locale functions. Note that ld.bfd doesn't remove pthread even if -Wl,--as-needed is used (which is the default when using ld.gold). As mentioned in the comment, it's not clear if ld.gold or g++/libstdc++-4.9 (this seems to have been fixed with newer gold/g++ version) is at fault here.

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3316
https://mir-jenkins.ubuntu.com/job/mir-ci/313/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build/102/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/108
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/104
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/104
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=amd64,compiler=gcc,platform=mesa,release=xenial/107
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=amd64,compiler=gcc,platform=mesa,release=xenial/107/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/107/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/107/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/107
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/107/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=mesa,release=xenial/107
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=mesa,release=xenial/107/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/313/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3316
https://mir-jenkins.ubuntu.com/job/mir-ci/316/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build/105
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/111
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/107
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/107
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=amd64,compiler=gcc,platform=mesa,release=xenial/110
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=amd64,compiler=gcc,platform=mesa,release=xenial/110/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/110
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/110/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/110
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/110/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=mesa,release=xenial/110
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-advanced/arch=i386,compiler=gcc,platform=mesa,release=xenial/110/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/316/rebuild

review: Approve (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

PASSED: Continuous integration, rev:3316
http://jenkins.qa.ubuntu.com/job/mir-ci/6302/
Executed test runs:
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-android-vivid-i386-build/5936
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-clang-vivid-amd64-build/4843
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-vivid-touch/5892
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-xenial-touch/447
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-xenial-amd64-ci/626
        deb: http://jenkins.qa.ubuntu.com/job/mir-xenial-amd64-ci/626/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-xenial-i386-ci/626
        deb: http://jenkins.qa.ubuntu.com/job/mir-xenial-i386-ci/626/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-builder-vivid-armhf/5889
        deb: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-builder-vivid-armhf/5889/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-runner-touch/8277
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/27647
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-builder-xenial-armhf/443
        deb: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-builder-xenial-armhf/443/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/mir-mediumtests-runner-xenial-touch/296
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/27662

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/mir-ci/6302/rebuild

review: Approve (continuous-integration)
Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

ok

review: Approve
Revision history for this message
Andreas Pokorny (andreas-pokorny) wrote :

sure

review: Approve

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