Mir

Merge lp:~alan-griffiths/mir/do-not-requre-miregl into lp:mir

Proposed by Alan Griffiths
Status: Merged
Approved by: Alan Griffiths
Approved revision: no longer in the source branch.
Merged at revision: 4286
Proposed branch: lp:~alan-griffiths/mir/do-not-requre-miregl
Merge into: lp:mir
Diff against target: 67 lines (+17/-2)
1 file modified
examples/miral-shell/spinner/eglspinner.cpp (+17/-2)
To merge this branch: bzr merge lp:~alan-griffiths/mir/do-not-requre-miregl
Reviewer Review Type Date Requested Status
Mir CI Bot continuous-integration Approve
Alberto Aguirre (community) Approve
Review via email: mp+332150@code.launchpad.net

Commit message

Don't use Mir EGL if it isn't available

Description of the change

Don't use Mir EGL if it isn't available

Useful when building Mir on Debian or Fedora

To post a comment you must log in.
Revision history for this message
Alberto Aguirre (albaguirre) wrote :

OK.

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

PASSED: Continuous integration, rev:4282
https://mir-jenkins.ubuntu.com/job/mir-ci/3724/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/5109
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/5347
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=artful/5334
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/5334
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=zesty/5334
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=artful/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=artful/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=zesty/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=zesty/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=artful/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=artful/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=zesty/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=zesty/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=mesa,release=artful/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=mesa,release=artful/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=mesa,release=zesty/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=mesa,release=zesty/5153/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/5153
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/5153/artifact/output/*zip*/output.zip

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

review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'examples/miral-shell/spinner/eglspinner.cpp'
--- examples/miral-shell/spinner/eglspinner.cpp 2017-08-21 15:58:34 +0000
+++ examples/miral-shell/spinner/eglspinner.cpp 2017-10-11 17:45:38 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright © 2013-2015 Canonical Ltd.2 * Copyright © 2013-2017 Canonical Ltd.
3 *3 *
4 * This program is free software: you can redistribute it and/or modify4 * This program is free software: you can redistribute it and/or modify
5 * under the terms of the GNU General Public License version 2 or 3 as as5 * under the terms of the GNU General Public License version 2 or 3 as as
@@ -19,6 +19,14 @@
19 * Kevin DuBois <kevin.dubois@canonical.com>19 * Kevin DuBois <kevin.dubois@canonical.com>
20 */20 */
2121
22// Ugly way to detect the Mir EGL patch to mesa
23// NB this has to be before any other includes
24#define MIR_EGL_PLATFORM
25#include <EGL/eglplatform.h>
26#ifndef MIR_CLIENT_API_VERSION
27#define MIR_EGL_UNAVAILABLE
28#endif
29
22#include "splash.h"30#include "splash.h"
2331
24#include <chrono>32#include <chrono>
@@ -143,7 +151,7 @@
143 //1.) 0.0 - 0.6: logo fades in fully151 //1.) 0.0 - 0.6: logo fades in fully
144 //2.) 0.0 - 6.0: logo does one full spin 360°152 //2.) 0.0 - 6.0: logo does one full spin 360°
145 //3.) 6.0 - 6.833: glow fades in fully, black-background fades out to 50%153 //3.) 6.0 - 6.833: glow fades in fully, black-background fades out to 50%
146 //4.) 6.833 - 7.666: glow fades out fully, black-background fades out to 0% 154 //4.) 6.833 - 7.666: glow fades out fully, black-background fades out to 0%
147 //5.) 7.666 - 8.266: logo fades out fully155 //5.) 7.666 - 8.266: logo fades out fully
148 //8.266..: now spinner can be closed as all its elements are faded out156 //8.266..: now spinner can be closed as all its elements are faded out
149157
@@ -221,11 +229,14 @@
221 "} \n";229 "} \n";
222230
223std::atomic<bool> dying{false};231std::atomic<bool> dying{false};
232
233#ifndef MIR_EGL_UNAVAILABLE
224void lifecycle_event_callback(MirConnection* /*connection*/, MirLifecycleState state, void* context)234void lifecycle_event_callback(MirConnection* /*connection*/, MirLifecycleState state, void* context)
225{235{
226 if (state == mir_lifecycle_connection_lost)236 if (state == mir_lifecycle_connection_lost)
227 static_cast<decltype(dying)*>(context)->store(true);237 static_cast<decltype(dying)*>(context)->store(true);
228}238}
239#endif
229}240}
230241
231struct SpinnerSplash::Self242struct SpinnerSplash::Self
@@ -254,6 +265,7 @@
254void SpinnerSplash::operator()(MirConnection* const connection)265void SpinnerSplash::operator()(MirConnection* const connection)
255try266try
256{267{
268#ifndef MIR_EGL_UNAVAILABLE
257 GLuint prog[2];269 GLuint prog[2];
258 GLuint texture[2];270 GLuint texture[2];
259 GLint vpos[2];271 GLint vpos[2];
@@ -365,6 +377,9 @@
365377
366 glDeleteTextures(2, texture);378 glDeleteTextures(2, texture);
367 g_timer_destroy (timer);379 g_timer_destroy (timer);
380#else
381 (void)connection;
382#endif
368}383}
369catch (std::exception const& x)384catch (std::exception const& x)
370{385{

Subscribers

People subscribed via source and target branches