gaim/gaim

Yo.
gtk1-stable v0_59_9
2003-03-01, Sean Egan
87952f35ac6d
Yo.
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/aim.c)
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE([gaim], [0.59.9])
AC_PREREQ([2.50])
AC_PATH_PROG(sedpath, sed)
dnl Checks for programs.
AC_PROG_CC
AC_DISABLE_STATIC
AM_PROG_LIBTOOL
LIBTOOL="$LIBTOOL --silent"
AC_PROG_INSTALL
ALL_LINGUAS="bg cs da de es fi fr hu it ja ko nl pl ru sk sv zh_CN zh_TW"
AM_GNU_GETTEXT
AM_GNU_GETTEXT_VERSION(0.10.40)
AC_CYGWIN
dnl Checks for header files.
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h locale.h signal.h)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_STRUCT_TM
dnl Checks for library functions.
AC_TYPE_SIGNAL
AC_FUNC_STRFTIME
AC_CHECK_FUNCS(socket strdup strstr atexit getaddrinfo)
dnl Checks for getopt in standard library
AC_CHECK_FUNCS(getopt_long , ,
AC_LIBOBJ(getopt)
AC_LIBOBJ(getopt1))
dnl Check for inet_aton
AC_CHECK_FUNC(inet_aton, , [AC_CHECK_LIB(resolv, inet_aton, ,
[AC_ERROR(inet_aton not found)])])
dnl Check for socklen_t (in Unix98)
AC_MSG_CHECKING(for socklen_t)
AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
socklen_t x;
], [], [AC_MSG_RESULT(yes)], [
AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>
int accept(int, struct sockaddr *, size_t *);
], [], [
AC_MSG_RESULT(size_t)
AC_DEFINE(socklen_t, size_t)], [
AC_MSG_RESULT(int)
AC_DEFINE(socklen_t, int)])])
dnl This is a bad, bad hack. I am a bad, bad man.
CFLAGS="$CFLAGS -I/usr/local/include -I/opt/include -I\$(top_srcdir)"
AC_ARG_ENABLE(distrib,,,enable_distrib=no)
AM_CONDITIONAL(DISTRIB, test "x$enable_distrib" = "xyes")
AC_ARG_ENABLE(multi, [ --disable-multi disable multiple connections],,enable_multi=yes)
AC_ARG_ENABLE(prpls, [ --disable-prpls don't build dynamic protocol plugins],,enable_prpls=yes)
AC_ARG_WITH(static-prpls, [ --with-static-prpls link in certain protocols statically],[STATIC_PRPLS=`echo $withval | $sedpath 's/,/ /g'`],STATIC_PRPLS="oscar toc")
if test "x$STATIC_PRPLS" = "xall" ; then
STATIC_PRPLS="gg icq irc jabber msn napster oscar toc yahoo zephyr"
fi
AC_SUBST(STATIC_PRPLS)
STATIC_LINK_LIBS=
extern_init=
load_proto=
for i in $STATIC_PRPLS ; do
STATIC_LINK_LIBS="$STATIC_LINK_LIBS protocols/$i/lib$i.a"
extern_init="$extern_init extern void ${i}_init(struct prpl *);"
load_proto="$load_proto load_protocol(${i}_init, sizeof(struct prpl));"
case $i in
gg) static_gg=yes ;;
icq) static_icq=yes ;;
irc) static_irc=yes ;;
jabber) static_jabber=yes ;;
msn) static_msn=yes ;;
napster) static_napster=yes ;;
oscar) static_oscar=yes ;;
toc) static_toc=yes ;;
yahoo) static_yahoo=yes ;;
zephyr) static_zephyr=yes ;;
*) echo "Invalid static protocol $i!!" ; exit ;;
esac
done
AM_CONDITIONAL(STATIC_GG, test "x$static_gg" = "xyes")
AM_CONDITIONAL(STATIC_ICQ, test "x$static_icq" = "xyes")
AM_CONDITIONAL(STATIC_IRC, test "x$static_irc" = "xyes")
AM_CONDITIONAL(STATIC_JABBER, test "x$static_jabber" = "xyes")
AM_CONDITIONAL(STATIC_MSN, test "x$static_msn" = "xyes")
AM_CONDITIONAL(STATIC_NAPSTER, test "x$static_napster" = "xyes")
AM_CONDITIONAL(STATIC_OSCAR, test "x$static_oscar" = "xyes")
AM_CONDITIONAL(STATIC_TOC, test "x$static_toc" = "xyes")
AM_CONDITIONAL(STATIC_YAHOO, test "x$static_yahoo" = "xyes")
AM_CONDITIONAL(STATIC_ZEPHYR, test "x$static_zephyr" = "xyes")
AC_SUBST(STATIC_LINK_LIBS)
AC_DEFINE_UNQUOTED(STATIC_PROTO_INIT, $extern_init void static_proto_init() { $load_proto })
AC_ARG_ENABLE(gnome, [ --disable-gnome compile without Gnome bits],,enable_gnome=yes)
AC_ARG_ENABLE(pixbuf, [ --disable-pixbuf compile without GdkPixbuf],,enable_pixbuf=yes)
AC_ARG_ENABLE(panel, [ --enable-panel compile as a GNOME applet],,enable_panel=$enable_distrib)
AM_CONDITIONAL(GNOMEAPPLET, test "x$enable_panel" = "xyes")
AC_ARG_ENABLE(esd, [ --disable-esd Turn off ESD (default=auto)],,enable_esd=yes)
AC_ARG_ENABLE(nas, [ --enable-nas Enable NAS (Network Audio System) support],,enable_nas=no)
AC_ARG_ENABLE(artsc, [ --disable-artsc Turn off ArtsC (default=auto)],,enable_artsc=yes)
AC_ARG_ENABLE(plugins, [ --disable-plugins compile without plugin support],,enable_plugins=yes)
AC_ARG_ENABLE(perl, [ --disable-perl compile without perl scripting],,enable_perl=yes)
AC_ARG_ENABLE(debug, [ --enable-debug compile with debugging support],,enable_debug=no)
AC_ARG_ENABLE(screensaver, [ --disable-screensaver compile without X screensaver extension],,enable_xss=yes)
AC_ARG_WITH(krb4, [ --with-krb4=PREFIX Compile Zephyr plugin with Kerberos 4 support],kerberos="$withval",kerberos="no")
if test "$enable_debug" = yes ; then
CFLAGS="$CFLAGS -Wall -g3"
AC_DEFINE(DEBUG)
fi
if test "x$enable_gnome" = "xyes" ; then
if test "x$enable_panel" = "xyes" ; then
GNOME_INIT(applets)
GNOME_X_CHECKS
CFLAGS="$CFLAGS $GNOME_INCLUDEDIR"
AC_DEFINE(USE_APPLET)
AC_DEFINE(USE_GNOME)
UI_LIBS="$UI_LIBS $GTK_LIBS $GNOME_LIBDIR $GNOME_APPLETS_LIBS $GNOMEUI_LIBS"
AC_PATH_PROG(gaimpath, gaim_applet)
else
AC_PATH_PROG(gnomepath, gnome-config)
AC_MSG_CHECKING(for Gnome compile flags)
GNOME_CFLAGS=`$gnomepath gnomeui --cflags 2>/dev/null`
if test "x$GNOME_CFLAGS" = "x" ; then
enable_gnome=no
AC_MSG_RESULT([Gnome not found, building without it.])
else
GNOME_VER=`$gnomepath --version |$sedpath 's/gnome-libs //' 2>/dev/null`
GNOME_MAJOR=`echo $GNOME_VER |$sedpath 's/\([[0-9]*]*\).\([[0-9]*]*\).\([[0-9]*]*\)/\1/' 2>/dev/null`
if test "x$GNOME_MAJOR" = "x0" ; then
enable_gnome = no
AC_MSG_RESULT([old Gnome found, building without it.])
else
AC_MSG_RESULT(ok)
CFLAGS="$CFLAGS $GNOME_CFLAGS"
UI_LIBS="$UI_LIBS `$gnomepath gnomeui --libs 2>/dev/null`"
AC_DEFINE(USE_GNOME)
GNOME_CONFIG="$gnomepath"
AC_SUBST(GNOME_CONFIG)
AC_PATH_PROG(gaimpath, gaim)
fi
fi
fi
fi
if test "x$enable_gnome" != "xyes" ; then
AM_PATH_GLIB(1.2.5,,AC_MSG_ERROR([
*** GLib is required to build Gaim; please make sure you have the GLib
*** development headers installed. The latest version of GLib is
*** always available at http://www.gtk.org/.]))
AM_PATH_GTK(1.2.5,,AC_MSG_ERROR([
*** GTK+ is required to build Gaim; please make sure you have the GTK+
*** development headers installed. The latest version of GTK+ is
*** always available at http://www.gtk.org/.]))
UI_LIBS="$UI_LIBS $GTK_LIBS"
AC_PATH_PROG(gaimpath, gaim)
fi
CFLAGS="$CFLAGS $GTK_CFLAGS"
dnl if test "x$enable_panel" = "xyes" ; then
dnl Things moved with the new versoin of Orbit. Thanks for
dnl telling me, Dan. This should fix them.
dnl
dnl The gnome-config script should pick this up and affect GNOME_ variables
dnl correctly. Thus, this check is not needed; if it fails, it is because of
dnl a broken installation or that your appletsConf.sh file is not updated
dnl for the new orbit installation. Gaim shouldn't need to do this.
dnl
dnl CFLAGS="$CFLAGS $ORBIT_CFLAGS"
dnl fi
use_pixbuf=no
if test "x$enable_pixbuf" = "xyes" ; then
AC_PATH_PROG(pixbufcfg, gdk-pixbuf-config)
if test "x$pixbufcfg" != "x" ; then
GDK_PIXBUF_CFLAGS=`$pixbufcfg --cflags`
GDK_PIXBUF_LIBS=`$pixbufcfg --libs`
GDK_PIXBUF_CONFIG="$pixbufcfg"
AC_SUBST(GDK_PIXBUF_CONFIG)
AC_SUBST(GDK_PIXBUF_CFLAGS)
AC_SUBST(GDK_PIXBUF_LIBS)
CFLAGS="$CFLAGS $GDK_PIXBUF_CFLAGS"
UI_LIBS="$UI_LIBS $GDK_PIXBUF_LIBS"
dnl We should be doing checks to see that the header files and functions exist. eh.
AC_DEFINE(USE_PIXBUF)
use_pixbuf=yes
fi
fi
AC_SUBST(UI_LIBS)
dnl Check for XScreenSaver
if test "x$enable_xss" = "xyes" ; then
AC_PATH_X
old_LIBS="$LIBS"
LIBS="$LIBS $UI_LIBS -L$x_libraries"
XSS_LIBS="no"
XSS_HEADERS="no"
AC_CHECK_LIB(Xext, XScreenSaverRegister,[XSS_LIBS="-L$x_libraries"],[],[-lX11 -lXext -lm])
AC_CHECK_LIB(Xss, XScreenSaverRegister,[XSS_LIBS="-L$x_libraries -lXss"],[],[-lX11 -lXext -lm])
if test \! "$XSS_LIBS" = "no"; then
AC_TRY_COMPILE([
#include <X11/extensions/scrnsaver.h>
],[],[enable_xss=no],[
AC_DEFINE(USE_SCREENSAVER)
])
else
XSS_LIBS=""
enable_xss=no
fi
LIBS="$old_LIBS"
else
XSS_LIBS=""
enable_xss=no
fi
AC_SUBST(XSS_LIBS)
AC_DEFUN(GC_TM_GMTOFF,
[AC_REQUIRE([AC_STRUCT_TM])dnl
AC_CACHE_CHECK([for tm_gmtoff in struct tm], ac_cv_struct_tm_gmtoff,
[AC_TRY_COMPILE([#include <sys/types.h>
#include <$ac_cv_struct_tm>], [struct tm tm; tm.tm_gmtoff;],
ac_cv_struct_tm_gmtoff=yes, ac_cv_struct_tm_gmtoff=no)])
if test "$ac_cv_struct_tm_gmtoff" = yes; then
AC_DEFINE(HAVE_TM_GMTOFF)
fi
])
GC_TM_GMTOFF
dnl This was taken straight from X-Chat.
dnl X-Chat is the greatest application ever, not only
dnl because it's a rocking IRC client but also because
dnl it's very easy to learn from.
if test "$enable_perl" = yes ; then
AC_PATH_PROG(perlpath, perl)
AC_MSG_CHECKING(for Perl compile flags)
PERL_CFLAGS=`$perlpath -MExtUtils::Embed -e ccopts 2>/dev/null`
if test "_$PERL_CFLAGS" = _ ; then
AC_MSG_RESULT([not found, building without perl.])
enable_perl = no
else
PERL_LIBS=`$perlpath -MExtUtils::Embed -e ldopts 2>/dev/null |$sedpath 's/-lgdbm //'`
PERL_LIBS=`echo $PERL_LIBS |$sedpath 's/-ldb //'`
PERL_LIBS=`echo $PERL_LIBS |$sedpath 's/-lndbm //'`
if test "$system" = "Linux"; then
PERL_LIBS=`echo $PERL_LIBS |$sedpath 's/-lnsl //'`
PERL_LIBS=`echo $PERL_LIBS |$sedpath 's/-lposix //'`
fi
PERL_LIBS=`echo $PERL_LIBS |$sedpath 's/-lc //'`
AC_MSG_RESULT(ok)
AC_SUBST(PERL_CFLAGS)
AC_SUBST(PERL_LIBS)
AC_DEFINE(USE_PERL)
AC_CHECK_FUNCS(Perl_eval_pv)
fi
fi
if test "$enable_nas" = yes ; then
AC_DEFINE(NAS_SOUND)
SOUND_LIBS="-laudio -lXt"
fi
if test "$enable_esd" = yes ; then
AM_PATH_GESD
if test "$no_esd" != yes ; then
old_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $ESD_CFLAGS"
AC_TRY_COMPILE(,[#include <esd.h>],
[
AC_DEFINE(ESD_SOUND)
SOUND_LIBS="$SOUND_LIBS $ESD_LIBS"
],[
enable_esd=no
CFLAGS="$old_CFLAGS"
])
else
enable_esd=no
fi
fi
if test "x$enable_artsc" = "xyes"; then
AM_PATH_ARTSC
if test "x$no_artsc" != "xyes" ; then
old_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $ARTSC_CFLAGS"
AC_TRY_COMPILE(,[#include <artsc.h>],
[
AC_DEFINE(ARTSC_SOUND)
SOUND_LIBS="$SOUND_LIBS $ARTSC_LIBS"
],[
enable_artsc=no
CFLAGS="$old_CFLAGS"
])
else
enable_artsc=no
fi
fi
AC_SUBST(SOUND_LIBS)
if test "$ac_cv_cygwin" = yes ; then
LDADD="$LDADD -static"
CFLAGS="$CFLAGS -Wall -g"
AC_DEFINE(DEBUG)
fi
AC_SUBST(CFLAGS)
AC_SUBST(LDADD)
AC_SUBST(LIBS)
if test "x$enable_multi" != "xyes" ; then
AC_DEFINE(NO_MULTI)
enable_multi=no
fi
if test "x$enable_plugins" = "xyes" ; then
AC_DEFINE(GAIM_PLUGINS)
AM_CONDITIONAL(PLUGINS, test "x$enable_plugins" = "xyes")
else
enable_plugins=no
enable_prpls=no
fi
if test "x$enable_prpls" = "xyes" ; then
AM_CONDITIONAL(PRPLS, test "x$enable_plugins" = "xyes")
else
enable_prpls=no
fi
dnl checks for icqlib
AC_CHECK_HEADERS(asm/byteorder.h byteswap.h endian.h machine/endian.h arpa/nameser_compat.h)
AC_CHECK_FUNCS(bswap_32 bswap_16)
AC_C_BIGENDIAN
dnl checks for jabber
dnl AC_CHECK_SIZEOF(short)
AC_CHECK_FUNCS(snprintf connect)
AC_CHECK_LIB(nsl, gethostent)
dnl checks for zephyr
AC_DEFINE(ZEPHYR_INT32, long)
AC_SUBST(KRB4_CFLAGS)
AC_SUBST(KRB4_LDFLAGS)
AC_SUBST(KRB4_LIBS)
if test "$kerberos" != "no" ; then
if test "$kerberos" != "yes" ; then
KRB4_CFLAGS="-I${kerberos}/include"
if test -d "$kerberos/include/kerberosIV" ; then
KRB4_CFLAGS="$KRB4_CFLAGS -I${kerberos}/include/kerberosIV"
fi
KRB4_LDFLAGS="-L${kerberos}/lib"
elif test -d /usr/local/include/kerberosIV ; then
KRB4_CFLAGS="-I/usr/local/include/kerberosIV"
elif test -d /usr/include/kerberosIV ; then
KRB4_CFLAGS="-I/usr/include/kerberosIV"
fi
AC_DEFINE(ZEPHYR_USES_KERBEROS)
orig_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $KRB4_LDFLAGS"
AC_CHECK_LIB(krb4, krb_rd_req,
[KRB4_LIBS="-lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err"],
[AC_CHECK_LIB(krb, krb_rd_req,
[KRB4_LIBS="-lkrb -ldes"],
[AC_ERROR(Kerberos 4 libraries not found)],
-ldes)],
-ldes425 -lkrb5 -lk5crypto -lcom_err)
orig_LIBS="$LIBS"
LIBS="$LIBS $KRB4_LIBS"
AC_CHECK_FUNCS(krb_set_key krb_rd_req krb_get_lrealm)
AC_CHECK_FUNCS(krb_get_err_text krb_log)
LIBS="$orig_LIBS"
LDFLAGS="$orig_LDFLAGS"
fi
AC_CHECK_FUNCS(gethostid lrand48)
AC_CHECK_FUNCS(memcpy memmove random strchr strerror vprintf)
AC_CHECK_HEADERS(malloc.h paths.h sgtty.h stdarg.h sys/cdefs.h)
AC_CHECK_HEADERS(sys/file.h sys/filio.h sys/ioctl.h sys/msgbuf.h)
AC_CHECK_HEADERS(sys/select.h sys/uio.h sys/utsname.h sys/wait.h)
AC_CHECK_HEADERS(termios.h)
AC_VAR_TIMEZONE_EXTERNALS
AC_OUTPUT([Makefile
doc/Makefile
intl/Makefile
m4/Makefile
pixmaps/Makefile
pixmaps/protocols/Makefile
pixmaps/protocols/msn/Makefile
pixmaps/protocols/yahoo/Makefile
plugins/Makefile
po/Makefile.in
sounds/Makefile
src/Makefile
src/protocols/Makefile
src/protocols/gg/Makefile
src/protocols/icq/Makefile
src/protocols/irc/Makefile
src/protocols/jabber/Makefile
src/protocols/msn/Makefile
src/protocols/napster/Makefile
src/protocols/oscar/Makefile
src/protocols/toc/Makefile
src/protocols/yahoo/Makefile
src/protocols/zephyr/Makefile
gaim.spec
])
echo
echo $PACKAGE $VERSION
echo
echo Allow Multiple Connections.... : $enable_multi
echo Build Protocol Plugins........ : $enable_prpls
echo Protocols to link statically.. : $STATIC_PRPLS
echo
if test "x$enable_panel" = "xyes" ; then
echo UI Library.................... : GNOME Panel
elif test "x$enable_gnome" = "xyes" ; then
echo UI Library.................... : GNOME App
else
echo UI Library.................... : GTK+ 1.2
fi
echo Use GdkPixbuf................. : $use_pixbuf
echo
echo Build with Plugin support..... : $enable_plugins
echo Build with Perl support....... : $enable_perl
echo
echo Use XScreenSaver Extension.... : $enable_xss
echo
echo Build with ESD................ : $enable_esd
echo Build with NAS................ : $enable_nas
echo Build with ArtsC.............. : $enable_artsc
echo
echo Print debugging messages...... : $enable_debug
echo
eval eval echo Gaim will be installed in $bindir.
if test "x$gaimpath" != "x" ; then
echo Warning: You have an old copy of gaim at $gaimpath.
fi
echo
echo configure complete, now type \'make\'
echo