Mir

Autolanding keeps failing: mock_egl.h:89:7: error: type 'struct MockEGL' violates one definition rule [-Werror=odr]

Bug #1603303 reported by Daniel van Vugt on 2016-07-15
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
High
Daniel van Vugt
mir (Ubuntu)
Undecided
Unassigned

Bug Description

Autolandings are failing with this error:

03:37:16 ../../../../../../include/test/mir/test/doubles/mock_egl.h:89:7: error: type 'struct MockEGL' violates one definition rule [-Werror=odr]
03:37:16 class MockEGL
03:37:16 ^
03:37:16 ../../../../../../include/test/mir/test/doubles/mock_egl.h:89:7: note: a different type is defined in another translation unit
03:37:16 class MockEGL
03:37:16 ^
03:37:16 ../../../../../../include/test/mir/test/doubles/mock_egl.h:106:6: note: the first difference of corresponding definitions is field 'gmock1_eglGetDisplay_106'
03:37:16 MOCK_METHOD1(eglGetDisplay, EGLDisplay(NativeDisplayType));
03:37:16 ^
03:37:16 ../../../../../../include/test/mir/test/doubles/mock_egl.h:106:6: note: a field of same name but different type is defined in another translation unit
03:37:16 MOCK_METHOD1(eglGetDisplay, EGLDisplay(NativeDisplayType));
03:37:16 ^
03:37:16 /usr/include/gmock/gmock-generated-function-mockers.h:81:7: note: type name 'testing::internal::FunctionMocker<void* (void*)>' should match type name 'testing::internal::FunctionMocker<void* (gbm_device*)>'
03:37:16 class FunctionMocker<R(A1)> : public
03:37:16 ^
03:37:16 /usr/include/gmock/gmock-generated-function-mockers.h:81:7: note: the incompatible type is defined here
03:37:16 class FunctionMocker<R(A1)> : public
03:37:16 ^
03:37:16 /usr/include/gmock/gmock-generated-nice-strict.h:80:7: error: type 'struct NiceMock' violates one definition rule [-Werror=odr]
03:37:16 class NiceMock : public MockClass {
03:37:16 ^
03:37:16 /usr/include/gmock/gmock-generated-nice-strict.h:80:7: note: a type with different bases is defined in another translation unit
03:37:16 class NiceMock : public MockClass {
03:37:16 ^
03:37:16 lto1: all warnings being treated as errors
03:37:16 lto-wrapper: fatal error: /usr/bin/i686-linux-gnu-g++ returned 1 exit status
03:37:16 compilation terminated.
03:37:16 /usr/bin/ld.gold: fatal error: lto-wrapper failed

https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1527/consoleFull
https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1527/consoleFull

Related branches

Changed in mir:
milestone: none → 0.25.0
Daniel van Vugt (vanvugt) wrote :

The problem is rather obvious in /usr/include/EGL/eglplatform.h

Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
status: New → In Progress
Changed in mir:
importance: Critical → High
summary: - mock_egl.h:89:7: error: type 'struct MockEGL' violates one definition
- rule [-Werror=odr]
+ Autolanding keeps failing: mock_egl.h:89:7: error: type 'struct MockEGL'
+ violates one definition rule [-Werror=odr]
Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.25.0

Changed in mir:
status: In Progress → Fix Committed
Daniel van Vugt (vanvugt) wrote :

Fix committed to lp:mir/0.24 at revision 3589, scheduled for release in Mir 0.24.0

Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.25.0

Kevin DuBois (kdub) on 2016-07-20
Changed in mir:
milestone: 0.25.0 → 0.24.0
no longer affects: mir/0.24
Launchpad Janitor (janitor) wrote :
Download full text (5.7 KiB)

This bug was fixed in the package mir - 0.24.0+16.10.20160815.3-0ubuntu1

---------------
mir (0.24.0+16.10.20160815.3-0ubuntu1) yakkety; urgency=medium

  * New upstream release 0.24.0 (https://launchpad.net/mir/+milestone/0.24.0)
    - ABI summary:
      . mirclient ABI unchanged at 9
      . mirserver ABI bumped to 41
      . mircommon ABI unchanged at 6
      . mirplatform ABI bumped to 12
      . mirprotobuf ABI unchanged at 3
      . mirplatformgraphics ABI bumped to 10
      . mirclientplatform ABI unchanged at 5
      . mirinputplatform ABI unchanged at 5
    - Enhancements:
      . Added a new tool 'mirvanity' which can use a high speed video camera
        to measure client-to-screen latency.
      . Added (build-time) support for desktop full OpenGL servers (disabled
        by default in favor of GLESv2).
      . Introduced new buffer semantics (NBS) and enabled it by default.
      . Avoided using libmirserver in mir_demo_standalone_render_overlays,
        making bringup traces less cluttered.
      . Removed TilingWindowManager from example servers.
      . Added two new mir_*_performance_test tools that are run as part of
        'mir_performance_tests'.
      . Added pointer confinement to the client API.
      . Added new platform supporting software EGLStreams.
      . Added an input platform that the nested server can use.
      . Allow configuration of the application_not_responding_detector
      . Handle server-side keymapping using XKBMapper.
      . Remove the offscreen display.
      . Add callback option to notify shells that the server is about to stop.
      . Add logging for ANativeWindow events on Android.
    - Bugs fixed:
      . usage of std:call_once in mirclient causes TLS collisions with some
        android devices (LP: #1599867)
      . AltGr not working on external keyboards (LP: #1565236)
      . [regression] unity8 fails to start when built with 0.24 series (lp:mir)
        (LP: #1597717)
      . CI failure in MirSurfaceVisibilityEvent.exposed_received_when_surface_
        raised_over_occluding_surface [called twice - over-saturated and active]
        (LP: #1556045)
      . package-built mir_demo_server does not start on device (LP: #1577357)
      . During surface creation, first stream in spec becomes default stream.
        (LP: #1577967)
      . mouse is getting stuck on a phantom edge (LP: #1580774)
      . [testsfail] in MirSurfaceVisibilityEvent.exposed_received_when_surface_
        raised_over_occluding_surface [never called] (LP: #1581385)
      . [enhancement] Add support for full OpenGL compositing (LP: #1420581)
      . [testsfail] ServerSignal.terminate_handler_is_called_for_SIGINT|SIGTERM
        (LP: #1570353)
      . [testsfail] ClientLatency.triple_buffered_client_has_less_than_two_
        frames_latency (LP: #1576690)
      . [testsfail] NestedServer.when_monitor_plugged_in_client_is_notified_of_
        new_display_configuration (LP: #1576760)
      . mir server crashed in what(): drmModeMoveCursor failed (returned -13)
        (LP: #1579630)
      . mirtest-dev is hard to use as the objects used are compiled with LTO
        (LP: #1583536)
      . [testsfail] ClientLogging.repo...

Read more...

Changed in mir (Ubuntu):
status: New → Fix Released
Changed in mir:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers