Updated Changelog
[centerim/davrieb.git] / libicq2000 / README
blob0c659a0c2afbec19eff6699589db53b8530dbaad
2 ,--------------------------------------------------------------------,
3 |                                                                    |
4 |              libicq2000 - The C++ ICQ2000/2001 Library             |
5 |                                                                    |
6 `--------------------------------------------------------------------'
8    Version 0.3.2                    http://libicq2000.sourceforge.net/
14  --------------------------------------------------------------------
15  - Contents                                                         -
16  --------------------------------------------------------------------
18 1. Features
20 2. Installation
21 - 1. Prerequisites
22 - 2. Compiling
23 - 3. Installation
25 3. History
27 4. Clients
29 5. More info for developers
30 - 1. Contributing to libicq2000
31 - 2. Anonymous CVS
32 - 3. API
34 6. Comments, bug fixes, etc..
36 7. License
39  --------------------------------------------------------------------
40  - Features                                                         -
41  --------------------------------------------------------------------
43 libicq2000 is an opensource C++ library being developed to support the
44 icq2000/2001 protocol. It is easy for developers to use as the
45 backbone for their clients' connection to the ICQ network - all the
46 protocol work is abstracted away in one nice object-orientated
47 interface.
49 libicq2000 supports:
50 - Message sending/receiving
51 - URL sending/receiving
52 - SMS sending/receiving, including delivery reports
53   (SMTP gateway delivery too)
54 - Status changes
55 - Authorisation Requests
56 - "You were added" messages
57 - Fetching user info from server (both basic and advanced)
58 - Fetching away messages
59 - Setting custom away messages
60 - Direct Connections
61 - Invisibility, including visible/invisible lists
62 - Ignore lists
64 See the TODO for information about planned features in
65 progress. Please don't duplicate requests for features already
66 mentioned in the TODO. Send legitimate feature requests to the
67 libicq2000-devel mailing list on sourceforge:
68 <libicq2000-devel@lists.sourceforge.net> (you don't need to
69 subscribe to post).
71 libicq2000 is in no way affiliated with 'ICQ' or 'Mirabilis'.
74  --------------------------------------------------------------------
75  - Installation                                                     -
76  --------------------------------------------------------------------
78    ------------------------------------------------------------------
79    - Prerequisites                                                  -
80    ------------------------------------------------------------------
82 You will need:
83 * libstdc++ library (the standard C++ library)
85 Distribution   Packages required
86 ------------   -----------------
87 Redhat 7.1     libstdc++-2.96-81.i386.rpm, libstdc++-devel-2.96-81.i386.rpm
89 Other          I'd appreciate any input from people on success/failures.
90 Redhats
92 For RPM distributions (Redhat, SuSE, etc..) - make sure you install
93 the 'development' RPMs for all these libraries as well. Usually these
94 are called library-devel.rpm or similar. I'm trying to build up a list
95 of the names of the rpms that are required, so send me info about what
96 you needed for your distribution if it's not already here.
98 Debian         libstdc++2.10 and libstdc++2.10-dev
99 (+ Progeny,
100  etc..)        
102 Sources for these libraries can be found at the following addresses:
103 libstdc++: http://www.gnu.org/software/gcc/libstdc++/ 
104            (should have come with your version of gcc)
106    ------------------------------------------------------------------
107    - Compiling                                                      -
108    ------------------------------------------------------------------
110 Generic configure instructions can be found in INSTALL. These are the
111 brief instructions for libicq2000:
113 1. Type './configure'
115 2. Type 'make' to compile the package
117 On some systems that don't have gmake as the default make you might
118 have to install and explicitly use that (usually named as gmake in
119 that case).
121    ------------------------------------------------------------------
122    - Installation                                                   -
123    ------------------------------------------------------------------
125 1. Type 'make install' as root to install the libraries.
127 Easy as that.
130  --------------------------------------------------------------------
131  - History                                                          -
132  --------------------------------------------------------------------
134 libicq2000 started life out as part of the gtk-- client
135 ickle. (http://ickle.sourceforge.net).
137 Since the 0.3.0 release of ickle, libicq2000 has been split off into
138 it's own release schedule, CVS tree and sourceforge project.
140 It was always designed to work as a separate library, it seemed now
141 that there was enough demand for it to warrant splitting development
142 off.
145  --------------------------------------------------------------------
146  - Clients                                                          -
147  --------------------------------------------------------------------
149 Known clients that use this library are:
151 * ickle - a gtkmm graphical client
152   http://ickle.sourceforge.net/
154 * CenterIM - a console client
155   http://www.centerim.org/
157 * ICQv7-t - an ICQ transport for Jabber
158   http://icqv7-t.sourceforge.net/
160 * IcyJuice - a Mac OS X graphical client
161   http://www.mitzpettel.com/software/icyjuice.html
163 * Fire - a Mac OS X graphical client
164   http://www.epicware.com/fire.html
166 * Proteus - a Mac OS X graphical client
167   http://www.indigofield.com/
170  --------------------------------------------------------------------
171  - More info for developers                                         -
172  --------------------------------------------------------------------
174    ------------------------------------------------------------------
175    - Contributing to libicq2000                                     -
176    ------------------------------------------------------------------
178 In the spirit of opensource libicq2000 is a community effort with
179 contributions welcomely accepted. If it's just a small patch for a bug
180 fix, or you are wishing to help out more big time in the development
181 please feel free to contribute.
183 I'd prefer patches and development related questions to go to the
184 sourceforge libicq20000-devel mailing list - so they can be seen by
185 all the developers rather than just me. I'd suggest subscribing,
186 although you can post even if you aren't subscribed.
187 <libicq2000-devel@users.sourceforge.net>
189 For submitting patches, please:
191 a) Make sure you are working on a recent checked out copy of the
192    anonymous CVS, often the problem has been fixed already.
194 b) Follow code conventions in the layout of the code as it is at the
195    moment.
197 c) Produce the diff by running 'cvs diff -uN > my-patch.diff'
199 d) Email the diff to <libicq2000-devel@lists.sourceforge.net>
201 I am happy to add developers to the sourceforge project, so they are
202 able to checkout CVS with write access and contribute directly back
203 into CVS. This will be a lot easier for both you and me in the long
204 run, rather than exchanging patches constantly.
207    ------------------------------------------------------------------
208    - Anonymous CVS                                                  -
209    ------------------------------------------------------------------
211 If you are interested in using libicq2000 with your client, I'd
212 recommend looking at the latest CVS:
213 http://sourceforge.net/cvs/?group_id=36654
215 The modulename is libicq2000. Once you have checked out the sources,
216 you must run the autogen.sh file to generate configure.
218 Beware though - the CVS is often unstable inbetween releases. Please
219 subscribe to the libicq2000-devel mailing list on sourceforge to stay
220 up to date on what is going on in CVS. You will also probably want to
221 subscribe to libicq2000-commits, so you can see what work is being
222 done on the source. If you find a problem in CVS please check back in
223 the archives for libicq2000-devel to check it hasn't already been
224 acknowledged/solved.
226    ------------------------------------------------------------------
227    - API                                                            -
228    ------------------------------------------------------------------
230 You can find doxygen generated documentation on the libicq2000
231 homepage (the API link on the right).
233 The API should be more stable now, and I am aiming to avoid breaking
234 backward compatability in future as much as possible from now onwards.
236 The examples directory contains the shell example, which shows how to
237 use the library from the shell simply and how the socket callbacks
238 interact.
240 Other good sources of information are the ickle sourcecode, which
241 should support all the latest features of the API.
243  --------------------------------------------------------------------
244  - Comments, bug reports, etc..                                     -
245  --------------------------------------------------------------------
247 Bug reports and development related comments should be sent to:
248   <libicq2000-devel@lists.sourceforge.net>
249 (You don't need to be subscribed to post to the list)
251 To keep up to date with the CVS subscribe to:
252   <libicq2000-commits@lists.sourceforge.net>
253 This will automatically send you a brief summary of commits to CVS
254 when they are made.
256 You can send me mail to:
257   <barnaby@beedesign.co.uk>
258 Although the list is the preferred option.
260 I am available on icq (ICQ# 12137587 Alias bee).
262  --------------------------------------------------------------------
263  - License                                                          -
264  --------------------------------------------------------------------
266 libicq2000 is released under the GNU LGPL license, see COPYING for
267 copying conditions.