libgadu 1.11.3
(C) Copyright 2001-2014 Autorzy (pełna lista w pliku AUTHORS)

libgadu jest biblioteką przeznaczoną do obsługi protokołu komunikatora
Gadu-Gadu. Przez dłuższy czas była integralną częścią Eksperymentalnego
Klienta Gadu-Gadu, lecz ze względu na problemy z dystrybucją pakietów
i wykorzystaniem w innych projektach, została wydzielona. Własnościowy
protokół został rozszyfrowany metodą inżynierii wstecznej (ang. "reverse
engineering"), przez co libgadu może nie być w 100% zgodna
z pierwowzorem.

Biblioteka jest udostępniana na zasadach licencji LGPL w wersji 2.1,
której treść znajduje się w pliku COPYING. Biblioteka została napisana
w języku C i jest niezależna od systemu operacyjnego czy środowiska.
Pracuje pod systemami operacyjnymi zgodnymi z POSIX, również BeOS
i Win32, choć ten ostatni nie jest wspierany ze względu na istnienie
oficjalnego klienta Gadu-Gadu. Używana jest w aplikacjach konsolowych,
jak i graficznych GTK+ i Qt.

Strona projektu znajduje się pod adresem http://libgadu.net/.
Osoby zainteresowane biblioteką mogą zapisać się na listę dyskusyjną
libgadu-devel poświęconą rozwojowi biblioteki, programowaniu przy jej
użyciu oraz protokołowi Gadu-Gadu. Istnieje również lista
libgadu-commit, na którą są wysyłane informacje o zmianach w kodzie
źródłowym. Informacje o listach dyskusyjnych można uzyskać na stronach:

 - http://lists.ziew.org/mailman/listinfo/libgadu-devel

 - http://lists.ziew.org/mailman/listinfo/libgadu-commit

Ostrzeżenie: Należy pamiętać, że używanie alternatywnych klientów jest
niezgodne z regulaminem korzystania z serwisu Gadu-Gadu.

Wymagania
---------

Do połączeń szyfrowanych biblioteka wykorzystuje bibliotekę GnuTLS lub
OpenSSL. Jeśli obie są zainstalowane w systemie, pierwszeństwo ma ta
pierwsza, ponieważ użycie OpenSSL może powodować problemy z łączeniem
z programami na licencji GPL.

Do poprawnej obsługi połączeń bezpośrednich starszych wersji protokołu
niezbędny jest kompilator obsługujący 64-bitowy typ long long.

Do przechowywania listy kontaktów na serwerze niezbędna jest biblioteka
zlib.

Do wygenerowania dokumentacji używany jest Doxygen. Jeśli nie jest 
dostępny, dokumentacja nie jest generowana.

Do niektórych testów automatycznych wymagane są glibc i Perl. Jeśli nie
są dostępne, niektóre testy nie będą uruchamiane.

Podczas kompilacji wykrywana jest wersja biblioteki standardowej,
ponieważ zachowanie używanych funkcji rodziny printf() zostało
zmienione w ISO C99. Podczas kompilacji skrośnej nie jest możliwe
automatyczne określenie wersji biblioteki na systemie docelowym, więc
niezbędne jest użycie parametru --with- lub --without-c99-vsnprintf.
Większość współczesnych systemów operacyjnych zawiera bibliotekę
standardową zgodną ze standardem C99, więc w przypadku wątpliwości
można użyć --with-c99-vsnprintf.

Do asynchronicznego rozwiązywania nazw biblioteka używa procesów
lub wątków pthread. Jeśli system udostępnia wariant funkcji
gethostbyname() działający poprawnie w aplikacjach wielowątkowych
(Linux z glibc, SunOS), zostanie on użyty.

