2011-02-24 04:14:30 +01:00
dnl Process this file with autoconf to produce a configure script.
2013-09-12 00:18:19 +02:00
AC_INIT([HexChat],[2.9.6])
2011-02-24 04:14:30 +01:00
2012-07-14 20:54:00 +02:00
AC_PREREQ([2.60])
2011-02-24 04:14:30 +01:00
AC_COPYRIGHT([Copyright (C) 1998-2010 Peter Zelezny])
AC_CONFIG_HEADERS([config.h])
2012-10-13 22:26:35 +02:00
AC_CONFIG_SRCDIR([configure.ac])
2011-02-24 04:14:30 +01:00
2013-07-12 14:10:51 +02:00
AC_CONFIG_MACRO_DIR([m4])
2012-11-09 21:56:37 +01:00
2013-07-12 14:10:51 +02:00
AM_INIT_AUTOMAKE([1.11 dist-bzip2 subdir-objects no-define foreign])
2012-11-09 21:56:37 +01:00
AM_SILENT_RULES([yes])
2011-02-24 04:14:30 +01:00
2012-07-14 20:54:00 +02:00
AC_USE_SYSTEM_EXTENSIONS
2011-02-24 04:14:30 +01:00
AM_MAINTAINER_MODE
AC_PROG_CC
AM_PROG_CC_C_O
AC_PROG_CPP
AM_PROG_AS
AM_DISABLE_STATIC
AC_PROG_LIBTOOL
2013-08-28 00:39:15 +02:00
AC_PATH_PROG(MDTOOL, mdtool, no)
2011-02-24 04:14:30 +01:00
dnl -----------------------------------------------------------
dnl Language Support
dnl -----------------------------------------------------------
2012-07-13 18:04:00 +02:00
GETTEXT_PACKAGE=hexchat
2011-02-24 04:14:30 +01:00
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Gettext package name])
2012-11-03 20:57:21 +01:00
ALL_LINGUAS="af am ast az be bg ca cs da de el en_GB es et eu fi fr gl gu hi hu id it ja kn ko lt lv mk ml ms nb nl no pa pl pt pt_BR ru rw sk sl sq sr sv th uk vi wa zh_CN zh_TW"
2011-02-24 04:14:30 +01:00
AM_GNU_GETTEXT
dnl displaced from acconfig.h
AH_VERBATIM([OLD_PERL],[#undef OLD_PERL])
AH_VERBATIM([PREFIX],[#undef PREFIX])
2012-07-13 18:04:00 +02:00
AH_VERBATIM([HEXCHATLIBDIR],[#undef HEXCHATLIBDIR])
AH_VERBATIM([HEXCHATSHAREDIR],[#undef HEXCHATSHAREDIR])
2011-02-24 04:14:30 +01:00
AH_VERBATIM([SOCKS],[#undef SOCKS])
AH_VERBATIM([USE_MSPROXY],[#undef USE_MSPROXY])
2011-04-16 19:18:20 +02:00
AH_VERBATIM([USE_LIBPROXY],[#undef USE_LIBPROXY])
2011-02-24 04:14:30 +01:00
AH_VERBATIM([USE_GTKSPELL],[#undef USE_GTKSPELL])
AH_VERBATIM([USE_LIBSEXY],[#undef USE_LIBSEXY])
2011-12-11 19:27:37 +01:00
AH_VERBATIM([HAVE_ISO_CODES],[#undef HAVE_ISO_CODES])
2011-04-16 19:18:20 +02:00
AH_VERBATIM([USE_LIBNOTIFY],[#undef USE_LIBNOTIFY])
2013-04-28 00:05:05 +02:00
AH_VERBATIM([USE_LIBCANBERRA],[#undef USE_LIBCANBERRA])
2011-02-24 04:14:30 +01:00
AH_VERBATIM([USE_IPV6],[#undef USE_IPV6])
AH_VERBATIM([USE_OPENSSL],[#undef USE_OPENSSL])
AH_VERBATIM([USE_PLUGIN],[#undef USE_PLUGIN])
AH_VERBATIM([USE_SIGACTION],[#undef USE_SIGACTION])
AH_VERBATIM([USING_FREEBSD],[#undef USING_FREEBSD])
AH_VERBATIM([USING_LINUX],[#undef USING_LINUX])
AH_VERBATIM([socklen_t],[#undef socklen_t])
AH_VERBATIM([USE_DBUS],[#undef USE_DBUS])
AC_PATH_PROG(sedpath, sed)
if test "_$sedpath" = _; then
2012-10-26 14:36:45 +02:00
AC_MSG_ERROR(Cannot find sed: I need it!)
2011-02-24 04:14:30 +01:00
fi
AC_PATH_PROG(unamepath, uname)
if test "_$unamepath" = _; then
system="unknown"
else
AC_MSG_CHECKING(system type)
system=`$unamepath -s`
AC_MSG_RESULT($system)
if test "$system" = "Linux"; then
AC_DEFINE(USING_LINUX)
fi
if test "$system" = "FreeBSD"; then
AC_DEFINE(USING_FREEBSD)
fi
fi
dnl *********************************************************************
dnl ** configure switches ***********************************************
dnl *********************************************************************
AC_ARG_ENABLE(socks,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--enable-socks],[link with SOCKS5 library (default: no)])],
2011-02-24 04:14:30 +01:00
socks=$enableval, socks=no)
AC_ARG_ENABLE(ipv6,
2012-12-05 07:06:05 +01:00
[AS_HELP_STRING([--disable-ipv6],[disable IPv6])],
2012-12-05 07:04:57 +01:00
ipv6=$enableval, ipv6=yes)
2011-02-24 04:14:30 +01:00
AC_ARG_ENABLE(openssl,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--enable-openssl[=PATH]],[enable use of openSSL])],
2011-02-24 04:14:30 +01:00
openssl=$enableval, openssl=yes)
AC_ARG_ENABLE(gtkfe,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-gtkfe],[disable building gtk frontend])],
2011-02-24 04:14:30 +01:00
gtkfe=$enableval, gtkfe=yes)
AC_ARG_ENABLE(textfe,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--enable-textfe],[build the text frontend (default: no)])],
2011-02-24 04:14:30 +01:00
textfe=$enableval, textfe=no)
AC_ARG_ENABLE(python,
2013-08-27 10:59:03 +02:00
[AS_HELP_STRING([--enable-python=pythonversion],[build the python plugin; possible values: "python2", "python3" or specific such as "python3.3" (default on, python2)])],
2013-03-31 16:57:26 +02:00
python=$enableval, python=python2)
2013-08-26 23:00:47 +02:00
AS_IF([test "x$python" = "xyes"], [python=python2])
2011-02-24 04:14:30 +01:00
AC_ARG_ENABLE(perl,
2013-04-28 01:38:39 +02:00
[AS_HELP_STRING([--disable-perl],[don\'t build the perl plugin])],
2011-02-24 04:14:30 +01:00
perl=$enableval, perl=yes)
AC_ARG_ENABLE(perl_old,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-perl_old],[no backwards compatibility for perl plugin])],
2011-02-24 04:14:30 +01:00
perl_old=$enableval, perl_old=yes)
2012-07-18 14:50:58 +02:00
AC_ARG_ENABLE(plugin,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-plugin],[disable plugin support])],
2012-07-18 14:50:58 +02:00
plugin=$enableval, plugin=yes)
AC_ARG_ENABLE(checksum,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-checksum],[disable the Checksum plugin])],
2012-07-18 14:50:58 +02:00
checksum=$enableval, checksum=yes)
2012-07-17 19:19:48 +02:00
2012-07-17 19:47:19 +02:00
AC_ARG_ENABLE(doat,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-doat],[disable the Do At plugin])],
2012-07-17 19:47:19 +02:00
doat=$enableval, doat=yes)
2012-07-18 10:51:22 +02:00
AC_ARG_ENABLE(fishlim,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-fishlim],[disable the FiSHLiM plugin])],
2012-07-18 10:51:22 +02:00
fishlim=$enableval, fishlim=yes)
2012-10-21 08:06:09 +02:00
AC_ARG_ENABLE(sysinfo,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-sysinfo],[disable the SysInfo plugin])],
2012-10-21 08:06:09 +02:00
sysinfo=$enableval, sysinfo=yes)
2011-02-24 04:14:30 +01:00
AC_ARG_ENABLE(dbus,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-dbus],[disable DBUS support])],
2011-02-24 04:14:30 +01:00
dbus=$enableval, dbus=yes)
2011-04-16 19:18:20 +02:00
AC_ARG_ENABLE(libnotify,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-libnotify],[disable libnotify support])],
2011-04-16 19:18:20 +02:00
libnotify=$enableval, libnotify=yes)
2013-04-28 00:05:05 +02:00
AC_ARG_ENABLE(libcanberra,
[AS_HELP_STRING([--disable-libcanberra],[disable libcanberra support])],
libcanberra=$enableval, libcanberra=yes)
2011-02-24 04:14:30 +01:00
AC_ARG_ENABLE(spell,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--enable-spell=type],[enable spelling type: none static libsexy gtkspell])],
2013-07-26 21:03:59 +02:00
spell=$enableval, spell=libsexy)
2011-02-24 04:14:30 +01:00
AC_ARG_ENABLE(ntlm,
2013-04-28 01:38:39 +02:00
[AS_HELP_STRING([--enable-ntlm],[enable Microsoft\'s NTLM auth (libntlm) library support (default: no)])],
2011-02-24 04:14:30 +01:00
ntlm=$enableval, ntlm=no)
2012-09-24 01:35:50 +02:00
AC_ARG_ENABLE(libproxy,
2012-11-09 20:09:10 +01:00
[AS_HELP_STRING([--disable-libproxy],[disable libproxy support (default: auto)])],
2012-09-24 01:35:50 +02:00
libproxy=$enableval, libproxy=auto)
2013-07-11 12:36:14 +02:00
AC_ARG_ENABLE(minimal-flags,
[AS_HELP_STRING([--enable-minimal-flags],[only add those CFLAGS that are really needed or not intrusive (default: no)])],
minimalflags=$enableval, minimalflags=no)
2013-08-28 00:39:15 +02:00
AC_ARG_WITH(theme-manager,
[AS_HELP_STRING([--with-theme-manager],[compile theme manager (needs monodevelop, default: off)])],
theme_manager=$withval, theme_manager=no)
dnl *********************************************************************
dnl ** THEME-MANAGER ****************************************************
dnl *********************************************************************
if test "x$theme_manager" != "xno" ; then
if test "x$MDTOOL" = "xno"; then
AC_MSG_ERROR([No "mdtool" found, you need to install monodevelop!])
fi
fi
2013-07-11 12:36:14 +02:00
2012-09-24 01:35:50 +02:00
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** GLIB *************************************************************
dnl *********************************************************************
2013-05-12 06:16:26 +02:00
AM_PATH_GLIB_2_0(2.28.0, glib=yes, glib=no)
2011-02-24 04:14:30 +01:00
if test "$glib" = no; then
2012-10-26 14:36:45 +02:00
AC_MSG_ERROR(Cannot find GLib!)
2011-02-24 04:14:30 +01:00
fi
2013-06-15 22:26:10 +02:00
PKG_CHECK_MODULES([GOBJECT], [gobject-2.0], [], [AC_MSG_ERROR(Cannot find gobject-2.0!)])
COMMON_CFLAGS="$GLIB_CFLAGS $GOBJECT_CFLAGS -DG_DISABLE_SINGLE_INCLUDES"
2013-06-16 02:52:04 +02:00
COMMON_LIBS="$GLIB_LIBS $GOBJECT_LIBS -lgmodule-2.0"
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** GTK **************************************************************
dnl *********************************************************************
2013-03-31 16:35:02 +02:00
# we might get undefined macro without this test
if test "$gtkfe" = yes ; then
2013-05-11 13:06:25 +02:00
AM_PATH_GTK_2_0(2.24.0, havegtk=yes, havegtk=no)
2013-03-31 16:35:02 +02:00
if test "$havegtk" = no; then
gtkfe=no
echo
echo Cannot find GTK\! Not building GTK FrontEnd.
echo
fi
2013-04-01 11:05:59 +02:00
fi
2011-02-24 04:14:30 +01:00
GUI_LIBS="$GUI_LIBS $GTK_LIBS"
2013-04-03 08:58:43 +02:00
GUI_CFLAGS="$GUI_CFLAGS $GTK_CFLAGS -DG_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** PERL *************************************************************
dnl *********************************************************************
if test "$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.])
perl=no
else
PERL_LDFLAGS=`$perlpath -MExtUtils::Embed -e ldopts |$sedpath 's/-lgdbm //'`
PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-ldb //'`
PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lndbm //'`
if test "$system" = "Linux"; then
PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lnsl //'`
PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lposix //'`
fi
PERL_LDFLAGS=`echo $PERL_LDFLAGS |$sedpath 's/-lc //'`
AC_MSG_RESULT(ok)
# oldLIBS=$LIBS
# LIBS="$LIBS $PERL_LDFLAGS"
# AC_CHECK_FUNC(eval_pv)
# AC_CHECK_FUNC(call_pv)
# LIBS=$oldLIBS
AC_MSG_CHECKING(for perl >= 5.8.0)
PERL_VER=`$perlpath -e 'print $]>= 5.008?"yes":"no"'`
if test "$PERL_VER" = "yes"; then
AC_MSG_RESULT(yes)
AC_MSG_CHECKING(if perl plugin will be backward compatible)
if test "$perl_old" = "yes"; then
AC_MSG_RESULT(yes)
AC_DEFINE(OLD_PERL)
else
AC_MSG_RESULT(no)
fi
else
AC_MSG_RESULT(no)
echo "perl version too old, building without perl."
perl=no
fi
fi
fi
dnl *********************************************************************
dnl ** PYTHON ***********************************************************
dnl *********************************************************************
2013-03-31 16:57:26 +02:00
if test "x$python" != xno ; then
2013-08-26 23:00:47 +02:00
case $python in
2013-08-27 10:59:03 +02:00
dnl set python2 default here
python2)
2013-08-26 23:00:47 +02:00
PKG_CHECK_MODULES([PY], [python-2.7], [], [AC_MSG_ERROR(Cannot find python-2.7!)])
2013-08-27 00:18:08 +02:00
PY_VER="`$PKG_CONFIG --modversion python-2.7`";;
2013-08-27 10:59:03 +02:00
dnl set python3 default here
python3)
2013-08-26 23:00:47 +02:00
PKG_CHECK_MODULES([PY], [python-3.3], [], [AC_MSG_ERROR(Cannot find python-3.3!)])
2013-08-27 00:18:08 +02:00
PY_VER="`$PKG_CONFIG --modversion python-3.3`";;
2013-08-27 10:59:03 +02:00
dnl add broken versions here
python2.5|python2.6|python3.1|python3.2)
AC_MSG_ERROR(Unsupported Python version ${python}!);;
python*)
python="python-${python#python}" # stay posix compliant
PKG_CHECK_MODULES([PY], [${python}], [], [AC_MSG_ERROR(Cannot find "${python}.pc"!)])
PY_VER="`$PKG_CONFIG --modversion ${python}`";;
2013-08-26 23:00:47 +02:00
*)
2013-08-27 10:59:03 +02:00
AC_MSG_ERROR(Unsupported Python ${python}!)
2013-08-26 23:00:47 +02:00
esac
AC_MSG_CHECKING(Python version)
AC_MSG_RESULT($PY_VER)
2011-02-24 04:14:30 +01:00
fi
dnl *********************************************************************
dnl ** IPv6 *************************************************************
dnl *********************************************************************
dnl purely for Solaris
AC_CHECK_FUNC(select, ,
AC_CHECK_LIB(socket, select, ,
AC_CHECK_LIB(nsl, select, ,
AC_CHECK_LIB(inet, select, ,
AC_CHECK_LIB(cposix, select, ,
AC_CHECK_LIB(net, select, ,
AC_MSG_WARN(i can not find select. you might need to help me)))))))
AC_CHECK_LIB(socket, select)
if test "$ipv6" = yes; then
AC_CHECK_FUNCS(getaddrinfo, have_getaddrinfo=yes)
AC_MSG_CHECKING(whether to enable IPv6 support)
if test "$have_getaddrinfo" = yes; then
AC_MSG_RESULT(yes)
AC_DEFINE(USE_IPV6)
else
ipv6=no
AC_MSG_RESULT(no)
fi
fi
dnl *********************************************************************
dnl ** OPENSSL **********************************************************
dnl *********************************************************************
retry=no
if test "$openssl" != no; then
AC_MSG_CHECKING(for openssl through pkg-config)
2013-08-27 00:09:35 +02:00
if $PKG_CONFIG openssl --exists; then
CPPFLAGS="$CPPFLAGS `$PKG_CONFIG openssl --cflags`"
LIBS="$LIBS `$PKG_CONFIG openssl --libs`"
2011-02-24 04:14:30 +01:00
AC_DEFINE(USE_OPENSSL)
AC_MSG_RESULT(yes)
openssl=yes
else
AC_MSG_RESULT(no)
retry=yes
fi
fi
if test "$retry" = "yes"; then
unset openssl_path ac_cv_lib_ssl_SSL_new ac_cv_header_openssl_ssl_h
if test "$openssl" != yes; then
openssl_path=$openssl
fi
openssl=no
SAVED_LIBS=$LIBS
LIBS="$LIBS -lcrypto"
if test -n "$openssl_path"; then
LIBS="-L$openssl_path/lib $LIBS"
fi
AC_CHECK_LIB(ssl, SSL_new, have_openssl=yes)
LIBS=$SAVED_LIBS
if test "$have_openssl" = yes; then
SAVED_CPPFLAGS=$CPPFLAGS
if test -n "$openssl_path"; then
CPPFLAGS="-I$openssl_path/include $CPPFLAGS"
fi
AC_CHECK_HEADERS(openssl/ssl.h, have_openssl_h=yes)
if test "$have_openssl_h" = yes; then
openssl=yes
AC_DEFINE(USE_OPENSSL)
LIBS="$LIBS -lssl -lcrypto"
if test -n "$openssl_path"; then
LIBS="-L$openssl_path/lib $LIBS"
fi
else
CPPFLAGS=$SAVED_CPPFLAGS
fi
fi
fi
dnl *********************************************************************
dnl ** LIBPROXY *********************************************************
dnl *********************************************************************
2012-09-24 01:35:50 +02:00
if test "x$libproxy" = "xyes" -o "x$libproxy" = "xauto" ; then
PKG_CHECK_MODULES([LIBPROXY], [libproxy-1.0], [
COMMON_LIBS="$COMMON_LIBS $LIBPROXY_LIBS"
COMMON_CFLAGS="$COMMON_CFLAGS $LIBPROXY_CFLAGS"
AC_DEFINE(USE_LIBPROXY)
libproxy=yes
], [
if test "x$libproxy" = "xyes" ; then
2012-10-26 14:36:45 +02:00
AC_MSG_ERROR(Cannot find libproxy!)
2012-09-24 01:35:50 +02:00
fi
libproxy=no
])
else
2011-04-16 19:18:20 +02:00
libproxy=no
fi
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** PLUGIN ***********************************************************
dnl *********************************************************************
if test "$plugin" = yes; then
AC_CHECK_FUNCS(dlopen, have_dl=yes)
if test "$have_dl" != yes; then
AC_CHECK_LIB(dl, dlopen, have_dl=yes)
if test "$have_dl" = yes; then
LIBS="$LIBS -ldl"
fi
fi
if test "$have_dl" = yes; then
AC_DEFINE(USE_PLUGIN)
dnl we just need the -Wl,--export-dynamic, but not -lgmodule-2.0
2013-08-27 00:09:35 +02:00
RDYNAMIC_FLAGS="`$PKG_CONFIG gmodule-2.0 --libs | $sedpath 's/ -lgmodule-2.0//'`"
2011-02-24 04:14:30 +01:00
LIBS="$LIBS $RDYNAMIC_FLAGS"
if test "$LD" = ""; then
VS="`ld --help | grep version-script 2> /dev/null`"
else
VS="`$LD --help | grep version-script 2> /dev/null`"
fi
if test "$VS" != ""; then
GUI_LIBS="$GUI_LIBS -Wl,--version-script,\$(srcdir)/../version-script"
fi
else
plugin=no
fi
fi
2012-07-18 10:51:22 +02:00
dnl *********************************************************************
2012-07-18 14:50:58 +02:00
dnl ** Checksum *********************************************************
2012-07-18 10:51:22 +02:00
dnl *********************************************************************
2012-07-18 14:50:58 +02:00
if test "$checksum" != "no"; then
checksum=no
AC_MSG_CHECKING(for plugin interface used by Checksum)
2012-07-18 10:51:22 +02:00
if test "$plugin" = yes; then
AC_MSG_RESULT([yes])
2012-07-18 14:50:58 +02:00
AC_MSG_CHECKING(for OpenSSL used by Checksum)
if test "$openssl" = yes; then
checksum=yes
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([OpenSSL cannot be found, use the --enable-openssl option])
fi
2012-07-18 10:51:22 +02:00
else
2012-07-18 14:50:58 +02:00
AC_MSG_RESULT([plugins are disabled, use the --enable-plugin option])
2012-07-18 10:51:22 +02:00
fi
fi
dnl *********************************************************************
dnl ** DO AT ************************************************************
dnl *********************************************************************
if test "$doat" != "no"; then
AC_MSG_CHECKING(for plugin interface used by Do At)
doat=no
if test "$plugin" = yes; then
doat=yes
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([plugins are disabled, use the --enable-plugin option for Do At])
fi
fi
dnl *********************************************************************
dnl ** FiSHLiM **********************************************************
dnl *********************************************************************
if test "$fishlim" != "no"; then
fishlim=no
AC_MSG_CHECKING(for plugin interface used by FiSHLiM)
if test "$plugin" = yes; then
AC_MSG_RESULT([yes])
2012-07-18 14:03:15 +02:00
AC_MSG_CHECKING(for OpenSSL used by FiSHLiM)
if test "$openssl" = yes; then
fishlim=yes
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([OpenSSL cannot be found, use the --enable-openssl option])
fi
2012-07-18 10:51:22 +02:00
else
AC_MSG_RESULT([plugins are disabled, use the --enable-plugin option])
fi
fi
2012-10-21 08:06:09 +02:00
dnl *********************************************************************
dnl ** SYSINFO **********************************************************
dnl *********************************************************************
if test "$sysinfo" != "no"; then
AC_MSG_CHECKING(for plugin interface used by SysInfo)
if test "$plugin" = yes; then
AC_MSG_RESULT([yes])
2012-10-26 14:36:45 +02:00
PKG_CHECK_MODULES(LIBPCI, libpci >= 3.0.0, [sysinfo=yes], [sysinfo=no])
2012-10-21 08:06:09 +02:00
else
AC_MSG_RESULT([plugins are disabled, use the --enable-plugin option for SysInfo])
2012-10-26 14:36:45 +02:00
sysinfo=no
2012-10-21 08:06:09 +02:00
fi
fi
2011-02-24 04:14:30 +01:00
dnl #######################################################################
dnl # Check for DBUS libraries
dnl #######################################################################
if test "x$dbus" = "xyes" ; then
PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60 dbus-glib-1 >= 0.60 gthread-2.0], dbus=yes, [
dbus=no
])
AC_PATH_PROG(DBUS_BINDING_TOOL, dbus-binding-tool, no)
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no)
if test "x$DBUS_BINDING_TOOL" = "xno" || test "x$GLIB_GENMARSHAL" = "xno" || test "x$dbus" = "xno" ; then
dbus="no"
else
2012-07-18 21:19:11 +02:00
COMMON_LIBS="$COMMON_LIBS $DBUS_LIBS"
2011-02-24 04:14:30 +01:00
COMMON_CFLAGS="$COMMON_CFLAGS $DBUS_CFLAGS"
AC_DEFINE(USE_DBUS)
2012-09-20 16:04:14 +02:00
AS_AC_EXPAND(DBUS_SERVICES_DIR, "$datadir/dbus-1/services")
2011-02-24 04:14:30 +01:00
AC_SUBST(DBUS_SERVICES_DIR)
AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", [Where services dir for DBUS is])
fi
fi
2011-04-16 19:18:20 +02:00
dnl *********************************************************************
dnl ** LIBNOTIFY ********************************************************
dnl *********************************************************************
if test "x$libnotify" = "xyes" ; then
PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= 0.4, [], [
libnotify=no
])
if test "$libnotify" != "no" ; then
GUI_LIBS="$GUI_LIBS $LIBNOTIFY_LIBS"
GUI_CFLAGS="$GUI_CFLAGS $LIBNOTIFY_CFLAGS"
AC_DEFINE(USE_LIBNOTIFY)
fi
fi
2013-04-28 00:05:05 +02:00
dnl *********************************************************************
dnl ** LIBCANBERRA ******************************************************
dnl *********************************************************************
if test "x$libcanberra" = "xyes" ; then
2013-04-28 02:28:39 +02:00
PKG_CHECK_MODULES(LIBCANBERRA, libcanberra >= 0.22, [], [
2013-04-28 00:05:05 +02:00
libcanberra=no
])
if test "$libcanberra" != "no" ; then
2013-04-28 02:28:39 +02:00
COMMON_LIBS="$COMMON_LIBS $LIBCANBERRA_LIBS"
COMMON_CFLAGS="$COMMON_CFLAGS $LIBCANBERRA_CFLAGS"
2013-04-28 00:05:05 +02:00
AC_DEFINE(USE_LIBCANBERRA)
fi
fi
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** SPELL ************************************************************
dnl *********************************************************************
if test "$spell" = "gtkspell" ; then
PKG_CHECK_MODULES(GTKSPELL, gtkspell-2.0 >= 2.0.2, [], [
spell=no
])
if test "$spell" != "no" ; then
GUI_LIBS="$GUI_LIBS $GTKSPELL_LIBS"
GUI_CFLAGS="$GUI_CFLAGS $GTKSPELL_CFLAGS"
AC_DEFINE(USE_GTKSPELL)
fi
fi
if test "$spell" = "libsexy" ; then
2012-09-22 17:36:38 +02:00
PKG_CHECK_MODULES([LIBSEXY], [libsexy >= 0.1.8], [
libsexy=yes
2011-02-24 04:14:30 +01:00
GUI_LIBS="$GUI_LIBS $LIBSEXY_LIBS"
GUI_CFLAGS="$GUI_CFLAGS $LIBSEXY_CFLAGS"
AC_DEFINE(USE_LIBSEXY)
2012-09-22 17:36:38 +02:00
], [
2011-02-24 04:14:30 +01:00
dnl use builtin static one
spell="static"
2012-09-22 17:36:38 +02:00
])
2011-02-24 04:14:30 +01:00
fi
if test "$spell" = "static" ; then
2011-12-11 19:27:37 +01:00
PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.0.0, [
AC_DEFINE(HAVE_ISO_CODES)
2011-02-24 04:14:30 +01:00
AC_DEFINE(USE_LIBSEXY)
2013-06-01 22:46:33 +02:00
GUI_CFLAGS="$GUI_CFLAGS $LIBXML2_CFLAGS"
2011-12-11 19:27:37 +01:00
LIBS="$LIBS -lxml2"
], [
2012-10-26 14:36:45 +02:00
AC_MSG_ERROR(Cannot find libxml2!)
2011-12-11 19:27:37 +01:00
])
2011-02-24 04:14:30 +01:00
fi
dnl *********************************************************************
dnl ** CONDITIONALS *****************************************************
dnl *********************************************************************
AM_CONDITIONAL(USE_OPENSSL, test "x$openssl" = "xyes")
AM_CONDITIONAL(USE_LIBSEXY, test "x$spell" = "xstatic")
2011-04-16 19:18:20 +02:00
AM_CONDITIONAL(USE_LIBNOTIFY, test "x$libnotify" = "xyes")
2013-04-28 00:05:05 +02:00
AM_CONDITIONAL(USE_LIBCANBERRA, test "x$libcanberra" = "xyes")
2011-02-24 04:14:30 +01:00
AM_CONDITIONAL(DO_TEXT, test "x$textfe" = "xyes")
AM_CONDITIONAL(DO_GTK, test "x$gtkfe" = "xyes")
AM_CONDITIONAL(DO_PERL, test "x$perl" = "xyes")
2013-03-31 16:57:26 +02:00
AM_CONDITIONAL(DO_PYTHON, test "x$python" != "xno")
2012-07-18 14:50:58 +02:00
AM_CONDITIONAL(DO_PLUGIN, test "x$plugin" = "xyes")
AM_CONDITIONAL(DO_CHECKSUM, test "x$checksum" = "xyes")
2012-07-17 19:47:19 +02:00
AM_CONDITIONAL(DO_DOAT, test "x$doat" = "xyes")
2012-07-18 10:51:22 +02:00
AM_CONDITIONAL(DO_FISHLIM, test "x$fishlim" = "xyes")
2012-10-21 08:06:09 +02:00
AM_CONDITIONAL(DO_SYSINFO, test "x$sysinfo" = "xyes")
2011-02-24 04:14:30 +01:00
AM_CONDITIONAL(USE_DBUS, test "x$dbus" = "xyes")
2013-08-28 00:39:15 +02:00
AM_CONDITIONAL(WITH_TM, test "x$theme_manager" != "xno")
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** SOCKS5 ***********************************************************
dnl *********************************************************************
if test "$socks" = yes; then
socks=no
AC_CHECK_LIB(socks5, SOCKSconnect, have_socks=yes)
if test "$have_socks" = yes; then
AC_CHECK_HEADERS(socks.h, have_socks_h=yes)
if test "$have_socks_h" = yes; then
socks=yes
AC_DEFINE(SOCKS)
LIBS="$LIBS -lsocks5"
fi
fi
fi
dnl *********************************************************************
dnl ** MS PROXY *********************************************************
dnl *********************************************************************
have_ntlm="no"
if test "x$ntlm" = "xyes" ; then
have_ntlm="no"
AC_CHECK_LIB(ntlm, ntlm_smb_encrypt, have_ntlm=yes)
if test "$have_ntlm" = yes; then
LIBS="$LIBS -lntlm"
AC_DEFINE(USE_MSPROXY)
fi
fi
dnl *********************************************************************
dnl ** GCC FLAGS ********************************************************
dnl *********************************************************************
dnl Only use -Wall and -pipe if we have gcc
if test "x$GCC" = "xyes"; then
if test -z "`echo "$CFLAGS" | grep "\-Wall" 2> /dev/null`" ; then
CFLAGS="$CFLAGS -Wall"
fi
2013-07-11 12:36:14 +02:00
dnl these flags might be unwanted
if test x$minimalflags != xyes; then
if test "$system" = "Linux" -o "$system" = "FreeBSD"; then
if test -z "`echo "$CFLAGS" | grep "\-pipe" 2> /dev/null`" ; then
CFLAGS="$CFLAGS -pipe"
fi
fi
if test -z "`echo "$CFLAGS" | grep "\-g " 2> /dev/null`" ; then
CFLAGS="$CFLAGS -g"
2011-02-24 04:14:30 +01:00
fi
fi
fi
dnl does this compiler support -Wno-pointer-sign ?
AC_MSG_CHECKING([if gcc accepts -Wno-pointer-sign ])
safe_CFLAGS=$CFLAGS
CFLAGS="-Wno-pointer-sign"
AC_TRY_COMPILE(, [
int main () { return 0 ; }
],
[
no_pointer_sign=yes
AC_MSG_RESULT([yes])
], [
no_pointer_sign=no
AC_MSG_RESULT([no])
])
CFLAGS=$safe_CFLAGS
if test x$no_pointer_sign = xyes; then
CFLAGS="$CFLAGS -Wno-pointer-sign"
fi
dnl does this compiler support -funsigned-char ?
AC_MSG_CHECKING([if gcc accepts -funsigned-char ])
safe_CFLAGS=$CFLAGS
CFLAGS="-funsigned-char"
AC_TRY_COMPILE(, [
int main () { return 0 ; }
],
[
unsigned_char=yes
AC_MSG_RESULT([yes])
], [
unsigned_char=no
AC_MSG_RESULT([no])
])
CFLAGS=$safe_CFLAGS
if test x$unsigned_char = xyes; then
CFLAGS="$CFLAGS -funsigned-char"
fi
2013-04-22 20:22:04 +02:00
dnl does this compiler support -Wno-unused-result ?
AC_MSG_CHECKING([if gcc accepts -Wno-unused-result ])
safe_CFLAGS=$CFLAGS
CFLAGS="-Wno-unused-result"
AC_TRY_COMPILE(, [
int main () { return 0 ; }
],
[
no_unused_result=yes
AC_MSG_RESULT([yes])
], [
no_unused_result=no
AC_MSG_RESULT([no])
])
CFLAGS=$safe_CFLAGS
if test x$no_unused_result = xyes; then
CFLAGS="$CFLAGS -Wno-unused-result"
fi
2011-02-24 04:14:30 +01:00
dnl *********************************************************************
dnl ** FUNCTIONS/LIBS/CFLAGS ********************************************
dnl *********************************************************************
AC_MSG_CHECKING(for modern sigaction)
2013-04-28 01:38:39 +02:00
dnl libc5 on linux and FreeBSD 3.x doesn\'t have siginfo_t
2011-02-24 04:14:30 +01:00
dnl and the sa_sigation field.
AC_TRY_COMPILE(
[#include <signal.h>],
[struct sigaction act;
siginfo_t *si;
act.sa_sigaction = 0;],
[
AC_MSG_RESULT(yes)
AC_DEFINE(USE_SIGACTION)
],
AC_MSG_RESULT(no))
AC_PATH_PROG(gdkpixbufcsourcepath, gdk-pixbuf-csource)
AC_SUBST(gdkpixbufcsourcepath)
if test "$gtkfe" != no -a "_$gdkpixbufcsourcepath" = _; then
2012-10-26 14:36:45 +02:00
AC_MSG_ERROR(Cannot find gdk-pixbuf-csource: Install GTK+ 2.0!)
2011-02-24 04:14:30 +01:00
fi
2013-04-28 01:38:39 +02:00
dnl if we don\'t have this, use g_snprintf instead
2011-02-24 04:14:30 +01:00
AC_CHECK_FUNCS(snprintf vsnprintf memrchr strtoull)
AC_CHECK_FUNC(gethostbyname, ,
AC_CHECK_LIB(resolv, gethostbyname, ,
AC_CHECK_LIB(nsl, gethostbyname)))
AC_CHECK_FUNC(gethostname, , AC_CHECK_LIB(nsl, gethostname))
dnl necessary for IRIX
AC_CHECK_HEADERS(strings.h)
dnl Check for type in sys/socket.h - from Squid source (GPL)
AC_CACHE_CHECK(for socklen_t, ac_cv_type_socklen_t, [
AC_EGREP_CPP([socklen_t[^a-zA-Z_0-9]], [#include <sys/types.h>
#include <sys/socket.h>
#if STDC_HEADERS
#include <stdlib.h>
#include <stddef.h>
#endif],
ac_cv_type_socklen_t=yes,
ac_cv_type_socklen_t=no)
])
if test $ac_cv_type_socklen_t = no; then
AC_DEFINE(socklen_t, int)
fi
dnl Mac OS X and Darwin use lookupd, which caches DNS queries by default
AC_EGREP_CPP(lookupd, dnl
[#if (defined(__APPLE__) && defined(__MACH__))
lookupd
#endif], AC_DEFINE([LOOKUPD],1,[Define to 1 if the system uses lookupd]))
dnl freebsd needs this
LIBS="$LIBS $INTLLIBS"
CFLAGS="$CFLAGS $CPPFLAGS"
GUI_LIBS="$GUI_LIBS $COMMON_LIBS"
dnl make these visible to all Makefiles
AC_SUBST(GUI_LIBS)
AC_SUBST(GUI_CFLAGS)
AC_SUBST(COMMON_LIBS)
AC_SUBST(COMMON_CFLAGS)
AC_SUBST(PERL_CFLAGS)
AC_SUBST(PERL_LDFLAGS)
AC_SUBST(PY_CFLAGS)
AC_SUBST(PY_LIBS)
AC_SUBST(DBUS_CFLAGS)
AC_SUBST(DBUS_LIBS)
2013-04-16 12:58:33 +02:00
m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], AC_SUBST([pkgconfigdir], ${libdir}/pkgconfig))
2011-02-24 04:14:30 +01:00
PLUGIN_INCLUDES='-I$(top_srcdir)/plugins'
AC_SUBST(PLUGIN_INCLUDES)
dnl for plugin.c and pixmaps.c
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
test "x$exec_prefix" = xNONE && exec_prefix="$prefix"
AC_DEFINE_UNQUOTED(PREFIX, "${prefix}")
2013-04-15 15:48:19 +02:00
AS_AC_EXPAND(HEXCHATLIBDIR, "${libdir}/hexchat/plugins")
2012-07-13 18:04:00 +02:00
AC_DEFINE_UNQUOTED(HEXCHATLIBDIR, "$HEXCHATLIBDIR")
2011-02-24 04:14:30 +01:00
2012-09-20 16:04:14 +02:00
AS_AC_EXPAND(HEXCHATSHAREDIR, "$datadir")
2012-07-13 18:04:00 +02:00
AC_DEFINE_UNQUOTED(HEXCHATSHAREDIR, "$HEXCHATSHAREDIR")
2011-02-24 04:14:30 +01:00
dnl for plugins/xxx/Makefile.am
2013-04-15 15:48:19 +02:00
hexchatlibdir=${libdir}/hexchat/plugins
2012-07-13 18:04:00 +02:00
AC_SUBST(hexchatlibdir)
2011-02-24 04:14:30 +01:00
2013-03-03 21:28:26 +01:00
AC_CONFIG_FILES([
2011-02-24 04:14:30 +01:00
Makefile
2012-12-17 02:29:08 +01:00
share/Makefile
share/icons/Makefile
share/misc/Makefile
2013-04-16 12:58:33 +02:00
share/pkgconfig/Makefile
share/pkgconfig/hexchat-plugin.pc
2011-02-24 04:14:30 +01:00
src/Makefile
src/common/Makefile
src/common/dbus/Makefile
src/fe-text/Makefile
src/fe-gtk/Makefile
2013-08-28 00:39:15 +02:00
src/htm/Makefile
2013-08-28 02:55:08 +02:00
src/htm/thememan
2011-02-24 04:14:30 +01:00
src/pixmaps/Makefile
plugins/Makefile
plugins/python/Makefile
plugins/perl/Makefile
2012-07-18 14:50:58 +02:00
plugins/checksum/Makefile
2012-07-17 19:47:19 +02:00
plugins/doat/Makefile
2012-07-18 10:51:22 +02:00
plugins/fishlim/Makefile
2012-10-21 08:06:09 +02:00
plugins/sysinfo/Makefile
2011-02-24 04:14:30 +01:00
intl/Makefile
po/Makefile.in
2012-10-27 19:07:59 +02:00
man/Makefile
2011-02-24 04:14:30 +01:00
])
2013-03-03 21:28:26 +01:00
AC_OUTPUT
2011-02-24 04:14:30 +01:00
echo
2012-07-17 19:19:48 +02:00
echo HexChat $VERSION
2011-02-24 04:14:30 +01:00
echo
2012-07-18 15:41:01 +02:00
echo GTK+ interface ........ : $gtkfe
echo Text interface ........ : $textfe
2013-08-28 00:39:15 +02:00
echo Theme manager ......... : $theme_manager
2011-02-24 04:14:30 +01:00
echo
2012-07-18 15:41:01 +02:00
echo OpenSSL support ....... : $openssl
echo D-Bus support ......... : $dbus
echo libnotify support ..... : $libnotify
2013-04-28 00:05:05 +02:00
echo libcanberra support ... : $libcanberra
2012-07-18 15:41:01 +02:00
echo Spelling .............. : $spell
echo Plugin interface ...... : $plugin
echo NLS/gettext ........... : $USE_NLS
echo IPv6 support .......... : $ipv6
echo MS Proxy NTLM \(ISA\) ... : $have_ntlm
2012-09-24 01:35:50 +02:00
echo libproxy support ...... : $libproxy
2012-07-18 14:50:58 +02:00
echo
2012-07-18 15:41:01 +02:00
echo Perl .................. : $perl
2013-08-26 23:00:47 +02:00
echo Python ................ : python-$PY_VER
2011-02-24 04:14:30 +01:00
echo
2012-07-18 15:41:01 +02:00
echo Checksum .............. : $checksum
echo Do At ................. : $doat
echo FiSHLiM ............... : $fishlim
2012-10-21 08:06:09 +02:00
echo SysInfo ............... : $sysinfo
2012-07-17 19:19:48 +02:00
echo
2011-02-24 04:14:30 +01:00
echo The binary will be installed in $prefix/bin
echo
if test "$gtkfe" = no; then
echo Warning: The GTK \(GUI\) frontend will not be built.
echo
fi
if test "$spell" = "gtkspell"; then
echo Warning: GTK SPELL is not the recommended spelling library.
echo
fi
echo configure complete, now type \'make\' and pray.
echo