view libpurple/plugins/mono/MPlugin.cs @ 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 80ee585fb53c
children
line wrap: on
line source

using Purple;

public class MPlugin : Plugin
{
	private static PluginInfo info = new PluginInfo("mono-mplugin", "C# Plugin", "0.1", "Test C# Plugin", "Longer Description", "Eoin Coffey", "urled");

	public MPlugin()
		: base(info)
	{
	}

	public void HandleSig(object[] args)
	{
		Buddy buddy = (Buddy)args[0];
		Status old_status = (Status)args[1];
		Status status = (Status)args[2];
		
		Debug.debug(Debug.INFO, "mplug", "buddy " + buddy.Name + " went from " + old_status.Id + " to " + status.Id + "\n");
	}
	
	public override void Load()
	{
		Debug.debug(Debug.INFO, "mplug", "loading...\n");
		
		/*Signal.connect(BuddyList.GetHandle(), this, "buddy-away", new Signal.Handler(HandleSig));*/
		BuddyList.OnBuddyStatusChanged.connect(this, new Signal.Handler(HandleSig));
	}
	
	public override void Unload()
	{
		Debug.debug(Debug.INFO, "mplug", "unloading...\n");
	}
	
	public override void Destroy()
	{
		Debug.debug(Debug.INFO, "mplug", "destroying...\n");
	}
}