Mir

Merge lp:~mir-team/mir/repair-client-abi into lp:mir

Proposed by Robert Carr
Status: Merged
Approved by: Alan Griffiths
Approved revision: no longer in the source branch.
Merged at revision: 2311
Proposed branch: lp:~mir-team/mir/repair-client-abi
Merge into: lp:mir
Diff against target: 105 lines (+40/-6)
3 files modified
src/client/mir_connection_api.cpp (+27/-4)
src/client/symbols-debug.map (+9/-1)
src/client/symbols.map (+4/-1)
To merge this branch: bzr merge lp:~mir-team/mir/repair-client-abi
Reviewer Review Type Date Requested Status
Alan Griffiths Approve
PS Jenkins bot (community) continuous-integration Approve
Kevin DuBois (community) Approve
Alexandros Frantzis (community) Approve
Daniel van Vugt Abstain
Chris Halse Rogers Approve
Review via email: mp+248899@code.launchpad.net

Commit message

Repair client ABI

Description of the change

Repair client ABI

To post a comment you must log in.
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

/usr/bin/ld: ../../lib/libmirclient-debug-extension.so.1: version node not found for symbol mir_connection_platform_operation@MIR_CLIENT_8
/usr/bin/ld: failed to set dynamic section sizes: Bad value
collect2: error: ld returned 1 exit status

review: Needs Fixing
Revision history for this message
Chris Halse Rogers (raof) wrote :

Now good.

review: Approve
Revision history for this message
Daniel van Vugt (vanvugt) :
review: Abstain
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

6 - * Copyright © 2014 Canonical Ltd.
7 + * Copyright © 2015 Canonical Ltd.

Shouldn't that be 2014-2015 (or 2014,2015)?

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

As noted in https://code.launchpad.net/~afrantzis/mir/platform-operation-client-api-remove-opcode/+merge/248338 :

"This is a client API/ABI break, but since the platform operation API is not currently used by external code (and could not have been used because we didn't expose any operations), we can get away with it."

However, since this fix has already landed independently on 0.11, it's good to be in sync.

review: Approve
Revision history for this message
Kevin DuBois (kdub) wrote :

okay, with copyright date update, and removal in next soname bump

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

OK

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/client/mir_connection_api.cpp'
2--- src/client/mir_connection_api.cpp 2015-02-04 15:01:59 +0000
3+++ src/client/mir_connection_api.cpp 2015-02-09 21:38:34 +0000
4@@ -1,5 +1,5 @@
5 /*
6- * Copyright © 2014 Canonical Ltd.
7+ * Copyright © 2014,2015 Canonical Ltd.
8 *
9 * This program is free software: you can redistribute it and/or modify it
10 * under the terms of the GNU Lesser General Public License version 3,
11@@ -305,7 +305,20 @@
12 connection->available_surface_formats(formats, format_size, *num_valid_formats);
13 }
14
15-MirWaitHandle* mir_connection_platform_operation(
16+extern "C"
17+{
18+MirWaitHandle* new_mir_connection_platform_operation(
19+ MirConnection* connection,
20+ MirPlatformMessage const* request,
21+ mir_platform_operation_callback callback, void* context);
22+MirWaitHandle* old_mir_connection_platform_operation(
23+ MirConnection* connection, int /* opcode */,
24+ MirPlatformMessage const* request,
25+ mir_platform_operation_callback callback, void* context);
26+}
27+
28+__asm__(".symver new_mir_connection_platform_operation,mir_connection_platform_operation@@MIR_CLIENT_8.3");
29+MirWaitHandle* new_mir_connection_platform_operation(
30 MirConnection* connection,
31 MirPlatformMessage const* request,
32 mir_platform_operation_callback callback, void* context)
33@@ -322,6 +335,16 @@
34
35 }
36
37+// TODO: Remove when we bump so name
38+__asm__(".symver old_mir_connection_platform_operation,mir_connection_platform_operation@MIR_CLIENT_8");
39+MirWaitHandle* old_mir_connection_platform_operation(
40+ MirConnection* connection, int /* opcode */,
41+ MirPlatformMessage const* request,
42+ mir_platform_operation_callback callback, void* context)
43+{
44+ return new_mir_connection_platform_operation(connection, request, callback, context);
45+}
46+
47 /**************************
48 * DRM specific functions *
49 **************************/
50@@ -390,7 +413,7 @@
51
52 mir_platform_message_set_data(msg.get(), &request, sizeof(request));
53
54- return mir_connection_platform_operation(
55+ return new_mir_connection_platform_operation(
56 connection,
57 msg.get(),
58 platform_operation_to_auth_magic_callback,
59@@ -411,7 +434,7 @@
60 static int const success{0};
61 int status{-1};
62
63- auto wh = mir_connection_platform_operation(
64+ auto wh = new_mir_connection_platform_operation(
65 connection,
66 msg.get(),
67 assign_set_gbm_device_status,
68
69=== modified file 'src/client/symbols-debug.map'
70--- src/client/symbols-debug.map 2014-08-14 05:03:46 +0000
71+++ src/client/symbols-debug.map 2015-02-09 21:38:34 +0000
72@@ -1,5 +1,13 @@
73-{
74+MIR_CLIENT_DEBUG_8 {
75 global:
76 mir_debug_*;
77 local: *;
78 };
79+
80+MIR_CLIENT_8 {
81+ local: mir_connection_platform_operation;
82+};
83+
84+MIR_CLIENT_8.3 {
85+ local: mir_connection_platform_operation;
86+};
87
88=== modified file 'src/client/symbols.map'
89--- src/client/symbols.map 2015-02-04 13:56:37 +0000
90+++ src/client/symbols.map 2015-02-09 21:38:34 +0000
91@@ -1,5 +1,7 @@
92 MIR_CLIENT_8 {
93- global: mir_*;
94+ global:
95+ mir_connection_platform_operation;
96+ mir_*;
97 extern "C++" {
98 # used by PrivateProtobuf
99 mir::client::the_rpc_channel*;
100@@ -40,4 +42,5 @@
101 mir_connection_create_spec_for_menu;
102 mir_connection_create_spec_for_tooltip;
103 mir_connection_create_spec_for_dialog;
104+ mir_connection_platform_operation;
105 } MIR_CLIENT_8.2;

Subscribers

People subscribed via source and target branches