Mercurial > pidgin.yaz
view finch/libgnt/autogen.sh @ 23995:85bed17fe5c1
The variable we use to keep track of the watcher of the ssl connection
should be unsigned. This isn't really a problem in Pidgin, where we
use glib's mainloop and GIOChannels because glib starts assigning the
handle IDs sequentially starting from 1.
But if an eventloop implementation ever returns a handle ID greater
than the largest possible signed integer (2,147,483,647) then we
won't be able to remove the watcher because purple_ssl_close() in
sslconn.c only removes it if inpa > 0, and since it interprets inpa
as a signed value then handles over 2,147,483,647 appear as negative
numbers.
I stumbled upon this when playing around with libevent, which can
use epoll. My implementation generated a random handle ID which
was sometimes greater than 2,147,483,647.
I don't believe this breaks binary compatibility. And I don't think
it breaks source compatibility, but I guess it might depend on what
compiler you're using.
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Thu, 04 Sep 2008 18:04:29 +0000 |
parents | 0e3a8505ebbe |
children |
line wrap: on
line source
#!/bin/sh (libtoolize --version) < /dev/null > /dev/null 2>&1 || { echo; echo "You must have libtool installed to compile LibGNT"; echo; exit; } (automake --version) < /dev/null > /dev/null 2>&1 || { echo; echo "You must have automake installed to compile LibGNT"; echo; exit; } (autoconf --version) < /dev/null > /dev/null 2>&1 || { echo; echo "You must have autoconf installed to compile LibGNT"; echo; exit; } echo "Generating configuration files for LibGNT, please wait...." echo; echo "Running libtoolize, please ignore non-fatal messages...." echo n | libtoolize --copy --force || exit; # Add other directories to this list if people continue to experience # brokennesses ... Obviously the real answer is for them to fix it # themselves, but for Luke's sake we have this. for dir in "/usr/local/share/aclocal" \ "/opt/gnome-1.4/share/aclocal" do if test -d $dir ; then ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I $dir" fi done libtoolize -c -f --automake aclocal $ACLOCAL_FLAGS || exit; autoheader || exit; automake --add-missing --copy; autoconf || exit; automake || exit; ./configure $@