pidgin/pidgin

Change the soname of libpurple to libpurple3

16 months ago, Gary Kramlich
3820d0d16092
Parents fb172b78a9ee
Children bb38b9441073
Change the soname of libpurple to libpurple3

I ran into an issue compiling a purple2 plugin on my Debian unstable machine. I
tracked it down to /usr/local/lib/x86_64-linux-gnu being before /usr/local/lib
in my ld.so.conf. This meant that the linker found
/usr/local/lib/x86_64-linux-gnu/libpurple.so.20.0.0 which is purple3, before it
found /usr/local/lib/libpurple.so.14.0.0 which is purple2. This obviously
caused the plugin to be unloadable in purple2/pidgin2.

So to avoid this issue for others, changing the soname just makes sense and is
what other libraries like GTK already do to support running both side by side.

Testing Done:
Wiped by build directory then ran the unit tests and pidgin3 and verified everything looked alright.

Reviewed at https://reviews.imfreedom.org/r/2182/
--- a/libpurple/meson.build Fri Jan 06 02:12:12 2023 -0600
+++ b/libpurple/meson.build Thu Jan 12 17:23:37 2023 -0600
@@ -313,7 +313,7 @@
]
libpurple_inc = include_directories('.')
-libpurple = library('purple',
+libpurple = library('purple3',
purple_coresources + purple_builtsources +
purple_builtheaders,
'purpleprivate.h',
@@ -335,8 +335,8 @@
pkgconfig.generate(
libpurple,
- name : 'libpurple',
- description : 'libpurple is a GLib-based instant messenger library.',
+ name : 'libpurple3',
+ description : 'libpurple3 is a GLib-based instant messenger library.',
version : meson.project_version(),
filebase : purple_filebase,
# TODO: Only use purple_filebase once everything is ported to only use purple.h
--- a/meson.build Fri Jan 06 02:12:12 2023 -0600
+++ b/meson.build Thu Jan 12 17:23:37 2023 -0600
@@ -23,7 +23,7 @@
project('pidgin', 'c',
version : '3.0.0-devel',
meson_version : '>=0.58.0')
-purple_soversion = 20
+purple_soversion = 0
parts = meson.project_version().split('-')
if parts.length() > 1