Binary compatiblity for liboxygenstyle.so
Pino Toscano
pino at kde.org
Sat Feb 25 11:17:05 GMT 2012
Alle sabato 25 febbraio 2012, Hugo Pereira Da Costa ha scritto:
> On 02/24/12 19:38, Andras Mantia wrote:
> > On Friday, February 24, 2012 05:48:36 PM Sune Vuorela wrote:
> >> On 2012-02-24, Hugo Pereira Da Costa<hugo at oxygen-icons.org> wrote:
> >>> I understand that. The point I was trying to make, is that you
> >>> would still get the "old" pluggin, admittingly without crashing,
> >>> but which would nonetheless be not correct.
> >>
> >> Whattabout just linking liboxygenstyle static into the oxygen
> >> style? Problem solved. No more abi to manage.
> >>
> >> Alternatively, set the SOVERSION of liboxygenstyle to the version
> >> of KDE Workspace. As you have no external dependencies outside
> >> kde-workspace this should not give any problems for anyone.
> >
> > I tend to think proper soversion bumping would be a good solution.
+1
> In both cases it does not fix (sorry for repeating myself) the true
> issue, which is that your plugin_path is not consistent with your
> LD_LIBRARY_PATH.
Right, but that is *not* your problem, hence you should not make your
stuff crash pointlessy because of it.
> In fact, thinking more about it, I would be inclined to leave the
> code as it is now, because such BIC crashes make it fairly easy to
> spot the inconsistency, which otherwise can have much more
> pernicious effects.
Which "pernicious effects"? Only the old plugin being loaded?
Remember that potentially who compiles trunk usually is interested in
working on their stuff, so make a "style" break everything like that is
just counter-productive. Sure, they might have environment setup issue,
but then please don't put also oxygen in their way.
> Also note that nowhere in KDE you can find an "About Oxygen" button
> that would tell you which so version you are using anyway ...
So solve that, for example by making the plugin output to
debug/stdout/whatever its version when loaded; this way you can tell
users to just run any application from terminal to see which oxygen
style plugin is loaded.
Or for example you can add a "version" string property to any instance
of the OxygenStyle (any QStyle is a QObject), then in oxygen-settings
load a new oxygen style (if not already loaded) and print the version
string of that instance, to easily see which style is loaded.
--
Pino Toscano
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20120225/a567563e/attachment.sig>
More information about the kde-core-devel
mailing list