view PLUGIN_HOWTO @ 15905:2cf21661f828

Cleanup and fixes for nat-pmp. We no longer do the whole 'try 10 times, doubling the delay in a blocking manner' ttempt from the original code; as I note in the comments above where the attempt is made a single time, this leads to about 8 minutes of nonresponsiveness if the router both doesn't support nat-pmp and doesn't send back a response to let the program know. purple_pmp_create_map() and purple_pmp_destroy_map() now return a gboolean indicating success, as the internal data structures of nat-pmp are certainly not needed elsewhere. The #includes are slightly reordered from the cleanup Mark did (thanks, Mark :) ), as with my OS X 10.3 cross-compiler, anyways, route.h needs to come after the sys includes to be properly handled.
author Evan Schoenberg <evan.s@dreskin.net>
date Sun, 25 Mar 2007 01:29:58 +0000
parents 7acebc9d043f
children cc3c50816cc9
line wrap: on
line source

For information on writing a plugin for Gaim, go
http://gaim.sourceforge.net/api/ and see the HOWTOs in the
"Related Pages" section.

You can also generate this documentation locally by installing
doxygen and graphviz dot, then running "make docs" in the Gaim
source tree.  The documentation will be in the docs/html directory.

This next paragraph is old and possibly out of date:
Compilation of the plugins is fairly straight-forward; there is a
Makefile in this directory that has a rule for making the .so file
from a .c file. No modification of the Makefile should be necessary,
unless if you simply want to type 'make' to have it made; otherwise,
'make filename.so' will take filename.c and make the .so plugin from
it. If you need to link in with extra libraries, you can set the
environment variable PLUGIN_LIBS to be the libraries you want to link
with.

It should be possible to compile plugins outside of the Gaim source
tree, which is a much cleaner solution.