diff options
author | Mike Ruprecht <cmaiku@gmail.com> | 2018-12-08 21:06:37 -0600 |
---|---|---|
committer | Mike Ruprecht <cmaiku@gmail.com> | 2018-12-08 21:06:37 -0600 |
commit | 54ca06e72e176901d23c49854a08f490279b1fce (patch) | |
tree | c60e2494bc5d58945dd9a231992ebc3b4522ba6a | |
parent | 08baadc9abdf7d90efef220fad03bf3f5bedd767 (diff) | |
download | pidgin-54ca06e72e176901d23c49854a08f490279b1fce.tar.gz |
libpurple: Drop capability to statically build prpls
The static building of protocol plugins has been completely broken
since switching to meson. Because of this and the prospect of GPlugin
growing capabilities for limiting allowed plugins, this patch drops
the remaining meson configuration for attempting to support static
protocol plugins.
-rw-r--r-- | libpurple/core.c | 7 | ||||
-rw-r--r-- | libpurple/protocols/bonjour/meson.build | 7 | ||||
-rw-r--r-- | libpurple/protocols/facebook/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/gg/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/irc/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/jabber/meson.build | 7 | ||||
-rw-r--r-- | libpurple/protocols/novell/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/oscar/meson.build | 7 | ||||
-rw-r--r-- | libpurple/protocols/sametime/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/silc/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/simple/meson.build | 6 | ||||
-rw-r--r-- | libpurple/protocols/zephyr/meson.build | 6 | ||||
-rw-r--r-- | meson.build | 63 | ||||
-rw-r--r-- | meson_options.txt | 3 |
14 files changed, 11 insertions, 131 deletions
diff --git a/libpurple/core.c b/libpurple/core.c index c0b90364f7..62841f207b 100644 --- a/libpurple/core.c +++ b/libpurple/core.c @@ -60,9 +60,6 @@ struct PurpleCore static PurpleCoreUiOps *_ops = NULL; static PurpleCore *_core = NULL; -STATIC_PROTO_LOAD -STATIC_PROTO_UNLOAD - static void purple_core_print_version(void) { @@ -145,9 +142,6 @@ purple_core_init(const char *ui) purple_cmds_init(); purple_protocols_init(); - /* Load all static protocols. */ - static_proto_load(); - /* Since plugins get probed so early we should probably initialize their * subsystem right away too. */ @@ -249,7 +243,6 @@ purple_core_quit(void) purple_prefs_uninit(); purple_plugins_uninit(); - static_proto_unload(); purple_protocols_uninit(); purple_cmds_uninit(); diff --git a/libpurple/protocols/bonjour/meson.build b/libpurple/protocols/bonjour/meson.build index 929f7f17cb..7cb337d276 100644 --- a/libpurple/protocols/bonjour/meson.build +++ b/libpurple/protocols/bonjour/meson.build @@ -23,12 +23,7 @@ else bonjour_link_args = [] endif -if STATIC_BONJOUR - bonjour_prpl = static_library('bonjour', BONJOURSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - link_args : bonjour_link_args, - dependencies : [libxml, avahi, libpurple_dep, glib, ws2_32]) -elif DYNAMIC_BONJOUR +if DYNAMIC_BONJOUR bonjour_prpl = shared_library('bonjour', BONJOURSOURCES, link_args : bonjour_link_args, dependencies : [libxml, avahi, libpurple_dep, glib, ws2_32], diff --git a/libpurple/protocols/facebook/meson.build b/libpurple/protocols/facebook/meson.build index 5de81eca0f..882e081fec 100644 --- a/libpurple/protocols/facebook/meson.build +++ b/libpurple/protocols/facebook/meson.build @@ -18,11 +18,7 @@ FACEBOOKSOURCES = [ 'util.h' ] -if STATIC_FACEBOOK - facebook_prpl = static_library('facebook', FACEBOOKSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - dependencies : [json, libpurple_dep, glib]) -elif DYNAMIC_FACEBOOK +if DYNAMIC_FACEBOOK facebook_prpl = shared_library('facebook', FACEBOOKSOURCES, dependencies : [json, libpurple_dep, glib], install : true, install_dir : PURPLE_PLUGINDIR) diff --git a/libpurple/protocols/gg/meson.build b/libpurple/protocols/gg/meson.build index bc6e18a249..6f224a7fb9 100644 --- a/libpurple/protocols/gg/meson.build +++ b/libpurple/protocols/gg/meson.build @@ -51,11 +51,7 @@ GGSOURCES = [ 'oauth/oauth-purple.h' ] -if STATIC_GG - gg_prpl = static_library('gg', GGSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - dependencies : [libgadu, json, libpurple_dep, glib]) -elif DYNAMIC_GG +if DYNAMIC_GG gg_prpl = shared_library('gg', GGSOURCES, dependencies : [libgadu, json, libpurple_dep, glib], install : true, install_dir : PURPLE_PLUGINDIR) diff --git a/libpurple/protocols/irc/meson.build b/libpurple/protocols/irc/meson.build index 603707d56d..1640b51f93 100644 --- a/libpurple/protocols/irc/meson.build +++ b/libpurple/protocols/irc/meson.build @@ -7,11 +7,7 @@ IRCSOURCES = [ 'parse.c' ] -if STATIC_IRC - irc_prpl = static_library('irc', IRCSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - dependencies : [sasl, libpurple_dep, glib, gio, ws2_32]) -elif DYNAMIC_IRC +if DYNAMIC_IRC irc_prpl = shared_library('irc', IRCSOURCES, dependencies : [sasl, libpurple_dep, glib, gio, ws2_32], install : true, install_dir : PURPLE_PLUGINDIR) diff --git a/libpurple/protocols/jabber/meson.build b/libpurple/protocols/jabber/meson.build index 2fba0794fb..84823b5299 100644 --- a/libpurple/protocols/jabber/meson.build +++ b/libpurple/protocols/jabber/meson.build @@ -114,12 +114,7 @@ else jabber_link_args = [] endif -if STATIC_JABBER - jabber_prpl = static_library('jabber', JABBERSOURCES, - c_args : ['-DPURPLE_STATIC_PRPL', use_idn], - link_args : jabber_link_args, - dependencies : [gstreamer, idn, libxml, sasl, libpurple_dep, glib, gio, math, ws2_32]) -elif DYNAMIC_JABBER +if DYNAMIC_JABBER jabber_prpl = shared_library('jabber', JABBERSOURCES, c_args : use_idn, link_args : jabber_link_args, diff --git a/libpurple/protocols/novell/meson.build b/libpurple/protocols/novell/meson.build index 76bd801a54..3e039593ba 100644 --- a/libpurple/protocols/novell/meson.build +++ b/libpurple/protocols/novell/meson.build @@ -23,11 +23,7 @@ NOVELLSOURCES = [ 'novell.c' ] -if STATIC_NOVELL - novell_prpl = static_library('novell', NOVELLSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - dependencies : [libpurple_dep, glib, ws2_32]) -elif DYNAMIC_NOVELL +if DYNAMIC_NOVELL novell_prpl = shared_library('novell', NOVELLSOURCES, dependencies : [libpurple_dep, glib, ws2_32], install : true, install_dir : PURPLE_PLUGINDIR) diff --git a/libpurple/protocols/oscar/meson.build b/libpurple/protocols/oscar/meson.build index f447ed531f..17da574c19 100644 --- a/libpurple/protocols/oscar/meson.build +++ b/libpurple/protocols/oscar/meson.build @@ -53,12 +53,7 @@ else oscar_link_args = [] endif -if STATIC_OSCAR - oscar_prpl = static_library('oscar', OSCARSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - link_args : oscar_link_args, - dependencies : [libpurple_dep, glib, ws2_32]) -elif DYNAMIC_OSCAR +if DYNAMIC_OSCAR oscar_prpl = shared_library('oscar', OSCARSOURCES, link_args : oscar_link_args, dependencies : [libpurple_dep, glib, ws2_32], diff --git a/libpurple/protocols/sametime/meson.build b/libpurple/protocols/sametime/meson.build index 6e9852a184..df30aaa7a2 100644 --- a/libpurple/protocols/sametime/meson.build +++ b/libpurple/protocols/sametime/meson.build @@ -3,11 +3,7 @@ SAMETIMESOURCES = [ 'sametime.h' ] -if STATIC_SAMETIME - sametime_prpl = static_library('sametime', SAMETIMESOURCES, - c_args : ['-DG_LOG_DOMAIN="sametime"', '-DPURPLE_STATIC_PRPL'], - dependencies : [meanwhile, libpurple_dep, glib]) -elif DYNAMIC_SAMETIME +if DYNAMIC_SAMETIME sametime_prpl = shared_library('sametime', SAMETIMESOURCES, c_args : ['-DG_LOG_DOMAIN="sametime"'], dependencies : [meanwhile, libpurple_dep, glib], diff --git a/libpurple/protocols/silc/meson.build b/libpurple/protocols/silc/meson.build index 6571656ee9..98fb76c9ca 100644 --- a/libpurple/protocols/silc/meson.build +++ b/libpurple/protocols/silc/meson.build @@ -11,11 +11,7 @@ SILCSOURCES = [ 'wb.h' ] -if STATIC_SILC - silc_prpl = static_library('silcpurple', SILCSOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - dependencies : [silc, libpurple_dep, glib]) -elif DYNAMIC_SILC +if DYNAMIC_SILC silc_prpl = shared_library('silcpurple', SILCSOURCES, dependencies : [silc, libpurple_dep, glib], install : true, install_dir : PURPLE_PLUGINDIR) diff --git a/libpurple/protocols/simple/meson.build b/libpurple/protocols/simple/meson.build index 0743d199af..5182d79c73 100644 --- a/libpurple/protocols/simple/meson.build +++ b/libpurple/protocols/simple/meson.build @@ -7,11 +7,7 @@ SIMPLESOURCES = [ 'sipmsg.h' ] -if STATIC_SIMPLE - simple_prpl = static_library('simple', SIMPLESOURCES, - c_args : '-DPURPLE_STATIC_PRPL', - dependencies : [libpurple_dep, nettle, glib, gio, ws2_32]) -elif DYNAMIC_SIMPLE +if DYNAMIC_SIMPLE simple_prpl = shared_library('simple', SIMPLESOURCES, dependencies : [libpurple_dep, nettle, glib, gio, ws2_32], install : true, install_dir : PURPLE_PLUGINDIR) diff --git a/libpurple/protocols/zephyr/meson.build b/libpurple/protocols/zephyr/meson.build index 658588fa4a..dc18ed2787 100644 --- a/libpurple/protocols/zephyr/meson.build +++ b/libpurple/protocols/zephyr/meson.build @@ -68,11 +68,7 @@ if EXTERNAL_LIBZEPHYR extdep = ext_zephyr endif -if STATIC_ZEPHYR - zephyr_prpl = static_library('zephyr', ZEPHYRSOURCES, - c_args : ['-Dlint', '-DPURPLE_STATIC_PRPL'], - dependencies : [extdep, libpurple_dep, glib]) -elif DYNAMIC_ZEPHYR +if DYNAMIC_ZEPHYR zephyr_prpl = shared_library('zephyr', ZEPHYRSOURCES, c_args : '-Dlint', dependencies : [extdep, libpurple_dep, glib], diff --git a/meson.build b/meson.build index 83df56e624..9a8a144444 100644 --- a/meson.build +++ b/meson.build @@ -539,68 +539,6 @@ DEFAULT_PRPLS = ['bonjour', 'facebook', 'gg', 'irc', 'jabber', 'novell', ALL_PRPLS = DEFAULT_PRPLS + ['null'] dynamic_list = get_option('dynamic-prpls').split(',') -static_list = get_option('static-prpls').split(',') -if (static_list != [''] and static_list != []) and dynamic_list == ['all'] - dynamic_list = [] -endif - -if static_list == ['all'] - static_list = DEFAULT_PRPLS -endif -STATIC_PRPLS = [] -foreach prpl : static_list - if prpl == '' - # The list was empty; do nothing. - elif prpl == 'sametime' and not enable_meanwhile - # Do nothing - elif prpl == 'bonjour' and not enable_avahi - # Do nothing - elif prpl == 'silc' and not have_silc - # Do nothing - elif prpl == 'gg' and not have_libgadu - # Do nothing - elif prpl == 'zephyr' and IS_WIN32 - # Do nothing - else - STATIC_PRPLS += [prpl] - endif -endforeach -STATIC_LINK_LIBS = [] -extern_load = [] -load_proto = [] -extern_unload = [] -unload_proto = [] -foreach prpl : STATIC_PRPLS - # Ugly special case for 'libsilcpurple.la': - if prpl == 'silc' - STATIC_LINK_LIBS.append('\$(top_builddir)/libpurple/protocols/@1@/lib@1@purple.la'.format(meson.build_root(), prpl)) - else - # FIXME: Shouldn't be libtool: - STATIC_LINK_LIBS.append('\$(top_builddir)/libpurple/protocols/@1@/lib@1@.la'.format(meson.build_root(), prpl)) - endif - extern_load.append('extern gboolean @0@_plugin_load();'.format(prpl)) - load_proto.append('@0@_plugin_load();'.format(prpl)) - extern_unload.append('extern gboolean @0@_plugin_unload();'.format(prpl)) - unload_proto.append('@0@_plugin_unload();'.format(prpl)) -endforeach -STATIC_BONJOUR = STATIC_PRPLS.contains('bonjour') -STATIC_FACEBOOK = STATIC_PRPLS.contains('facebook') -STATIC_GG = STATIC_PRPLS.contains('gg') -STATIC_IRC = STATIC_PRPLS.contains('irc') -STATIC_JABBER = STATIC_PRPLS.contains('jabber') -STATIC_NOVELL = STATIC_PRPLS.contains('novell') -STATIC_OSCAR = STATIC_PRPLS.contains('oscar') or STATIC_PRPLS.contains('aim') or STATIC_PRPLS.contains('icq') -STATIC_SAMETIME = STATIC_PRPLS.contains('sametime') -STATIC_SILC = STATIC_PRPLS.contains('silc') -STATIC_SIMPLE = STATIC_PRPLS.contains('simple') -STATIC_ZEPHYR = STATIC_PRPLS.contains('zephyr') -conf.set('STATIC_PROTO_LOAD', - ' '.join(extern_load) + - ' static void static_proto_load(void) { ' + ' '.join(load_proto) + ' }') -conf.set('STATIC_PROTO_UNLOAD', - ' '.join(extern_unload) + - ' static void static_proto_unload(void) { ' + ' '.join(unload_proto) + ' }') - if dynamic_list == ['all'] dynamic_list = DEFAULT_PRPLS endif @@ -1027,7 +965,6 @@ message('Build for X11................. : ' + with_x.to_string()) message('') message('Enable Gestures............... : ' + enable_gestures.to_string()) message('Protocols to build dynamically : @0@'.format(DYNAMIC_PRPLS)) -message('Protocols to link statically.. : @0@'.format(STATIC_PRPLS)) message('') message('Build with GStreamer support.. : ' + enable_gst.to_string()) message('Build with voice and video.... : ' + enable_vv.to_string()) diff --git a/meson_options.txt b/meson_options.txt index 54a9fc0689..090e568da3 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -56,9 +56,6 @@ option('libgadu', type : 'boolean', value : true, option('silc', type : 'boolean', value : false, description : 'compile with SILC plugin') -option('static-prpls', type : 'string', - description : 'Link to certain protocols statically') - option('dynamic-prpls', type : 'string', value: 'all', description : 'specify which protocols to build dynamically') |