aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-12-07 23:41:49 +0000
committerWilmer van der Gaast <wilmer@gaast.net>2010-12-07 23:41:49 +0000
commitc775a58faa7d5905b06e2f8900db7337082d5165 (patch)
tree92bbeb0c5316ec6df1b2c3988e78801a698af268
parent83f1bd1d195b21617bbc58b3c36e9d23d7905661 (diff)
At least don't disable Twitter anymore for libpurple builds. libpurple
doesn't have Twitter support by default and it's unlikely that someone will prefer libpurple-twitter over BitlBee's Twitter code anyway. Also automatically disable libpurple protocol modules if a native variant is already set up. The linking conflict works the other way around (libpurple modules may break if native modules for the same protocol are compiled in) so this should mostly resolve the linking conflict problem.
-rwxr-xr-xconfigure3
-rw-r--r--protocols/purple/purple.c5
2 files changed, 6 insertions, 2 deletions
diff --git a/configure b/configure
index cd492b98..0b8a803f 100755
--- a/configure
+++ b/configure
@@ -600,13 +600,12 @@ EOF
jabber=0
oscar=0
yahoo=0
- twitter=0
if [ "$events" = "libevent" ]; then
- echo
echo 'Warning: Some libpurple modules (including msn-pecan) do their event handling'
echo 'outside libpurple, talking to GLib directly. At least for now the combination'
echo 'libpurple + libevent is *not* recommended!'
+ echo
fi
fi
diff --git a/protocols/purple/purple.c b/protocols/purple/purple.c
index 07f385ff..d2e85554 100644
--- a/protocols/purple/purple.c
+++ b/protocols/purple/purple.c
@@ -1286,6 +1286,11 @@ void purple_initmodule()
PurplePlugin *prot = prots->data;
struct prpl *ret;
+ /* If we already have this one (as a native module), don't
+ add a libpurple duplicate. */
+ if( find_protocol( prot->info->id ) )
+ continue;
+
ret = g_memdup( &funcs, sizeof( funcs ) );
ret->name = ret->data = prot->info->id;
if( strncmp( ret->name, "prpl-", 5 ) == 0 )