Mercurial > pidgin
view libpurple/plugins/perl/scripts/plugin_action.pl @ 24389:2b62300d2c19
Use libtool to build static archives when --with-static-prpls is passed
to configure. Does anyone know why we weren't using libtool before? We
were building old-fashioned .a files. But libtool archives (.la) can
contain either static or shared libraries.
I found it a lot easier to get static prpl compilation working after
making this change (that is to say, it worked). Without this I got this
error, which is probably fixable, but consistently using libtool seems
like it makes things easier:
*** Warning: Linking the shared library libpurple.la against the
*** static library ../libpurple/protocols/msn/libmsn.a is not portable!
/usr/bin/ld: ../libpurple/protocols/msn/libmsn.a(libmsn_a-msn.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
../libpurple/protocols/msn/libmsn.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
| author | Mark Doliner <mark@kingant.net> |
|---|---|
| date | Wed, 12 Nov 2008 11:30:51 +0000 |
| parents | 2f8274ce570a |
| children |
line wrap: on
line source
$MODULE_NAME = "Plugin Action Test Plugin"; use Purple; sub plugin_init { return %PLUGIN_INFO; } sub plugin_load { my $plugin = shift; } sub plugin_unload { my $plugin = shift; } sub fun1 { print "1\n"; } sub fun2 { print "2\n"; } sub fun3 { print "3\n"; } %plugin_actions = ( "Action 1" => \&fun1, "Action 2" => \&fun2, "Action 3" => \&fun3 # "Action 1" => sub { print "1\n"; }, # "Action 2" => sub { print "2\n"; }, # "Action 3" => sub { print "3\n"; } ); sub plugin_action_names { foreach $key (keys %plugin_actions) { push @array, $key; } return @array; } # All the information Purple gets about our nifty plugin %PLUGIN_INFO = ( perl_api_version => 2, name => "Perl: $MODULE_NAME", version => "0.1", summary => "Test plugin for the Perl interpreter.", description => "Just a basic test plugin template.", author => "Etan Reisner <deryni\@gmail.com>", url => "http://sourceforge.net/users/deryni9/", load => "plugin_load", unload => "plugin_unload", plugin_action_sub => "plugin_action_names" );
