annotate PLUGIN_HOWTO @ 14990:633d4c25e82c

[gaim-migrate @ 17769] Change oscar-to-aim-and-icq hack. This does the renaming gtkgaim, after everything's initialized (so it fixes broken Persons and pounces and savedstatuses, but it introduces a hack in gaim_account_get_protocol_id(), since some initialization requires the protocol id to match the plugin. I don't really like this, but it's the best workaround I could think of. Hopefully we can remove this after not-long. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Fri, 17 Nov 2006 19:39:17 +0000
parents 7acebc9d043f
children cc3c50816cc9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14505
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
1 For information on writing a plugin for Gaim, go
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
2 http://gaim.sourceforge.net/api/ and see the HOWTOs in the
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
3 "Related Pages" section.
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
4
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
5 You can also generate this documentation locally by installing
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
6 doxygen and graphviz dot, then running "make docs" in the Gaim
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
7 source tree. The documentation will be in the docs/html directory.
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
8
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
9 This next paragraph is old and possibly out of date:
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
10 Compilation of the plugins is fairly straight-forward; there is a
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
11 Makefile in this directory that has a rule for making the .so file
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
12 from a .c file. No modification of the Makefile should be necessary,
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
13 unless if you simply want to type 'make' to have it made; otherwise,
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
14 'make filename.so' will take filename.c and make the .so plugin from
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
15 it. If you need to link in with extra libraries, you can set the
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
16 environment variable PLUGIN_LIBS to be the libraries you want to link
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
17 with.
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
18
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
19 It should be possible to compile plugins outside of the Gaim source
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
20 tree, which is a much cleaner solution.