RSSyl: Fix memory leak caused by last commit.
[claws.git] / configure.ac
index 0f433b88357f92169f5d3a010a630efa60bbd442..ed09b5f41104711a146fcdbde7588d271b987861 100644 (file)
@@ -18,9 +18,10 @@ if test \( -d .git \); then
        AC_MSG_ERROR([*** git not found. See http://git-scm.com/])
     else
        GIT_VERSION=`git describe --abbrev=6 --dirty --always`
+       echo "echo ${GIT_VERSION}" > ./version
     fi
 else
-    GIT_VERSION=`sh -c '. ./version'`
+    GIT_VERSION=`sh -c ". ./$srcdir/version"`
 fi
 MAJOR_VERSION=${GIT_VERSION%%.*}
 MINOR_VERSION=${GIT_VERSION#*.}
@@ -204,14 +205,18 @@ LIBS="$LIBS $GTK_LIBS"
 AC_CHECK_FUNCS(bind_textdomain_codeset)
 LIBS=$syl_save_LIBS
 
-dnl for gettext
-ALL_LINGUAS="bg ca cs de en_GB es fi fr he hu id_ID it ja lt nl pl pt_BR pt_PT ru sk sv uk zh_CN zh_TW"
+dnl for i18n
+ALL_LINGUAS="bg ca cs de en_GB eo es fi fr he hu id_ID it ja lt nl pl pt_BR pt_PT ru sk sv uk zh_CN zh_TW"
 GETTEXT_PACKAGE=claws-mail
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define text domain.])
 
-AM_GNU_GETTEXT_VERSION([0.15])
+AM_GNU_GETTEXT_VERSION([0.18])
 AM_GNU_GETTEXT([external])
+AM_NLS
+AS_IF([test x"$enable_nls" != xno], [
+       IT_PROG_INTLTOOL
+])
 
 AC_ARG_ENABLE(manual,
                [  --disable-manual                Do not build user manual],
@@ -241,10 +246,6 @@ AC_ARG_ENABLE(generic-umpc,
                [  --enable-generic-umpc           Build generic UMPC code],
                [enable_generic_umpc=$enableval], [enable_generic_umpc=no])
 
-AC_ARG_ENABLE(maemo,
-               [  --enable-maemo                  Build for the Maemo platform],
-               [enable_maemo=$enableval], [enable_maemo=no])
-
 AC_ARG_ENABLE(compface,
                [  --disable-compface              Do not build compface support for X-Face],
                [enable_compface=$enableval], [enable_compface=yes])
@@ -431,7 +432,7 @@ dnl ** common code **
 dnl *****************
 
 dnl check for glib
-PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.6 gmodule-2.0 >= 2.6 gobject-2.0 >= 2.6 gthread-2.0 >= 2.6)
+PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.20 gmodule-2.0 >= 2.20 gobject-2.0 >= 2.20 gthread-2.0 >= 2.20)
 
 GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0`
 AC_SUBST(GLIB_GENMARSHAL)
@@ -477,17 +478,18 @@ if test "x$enable_gnutls" != "xno"; then
         [
                 AC_DEFINE(USE_GNUTLS, 1, gnutls)
                 echo "Building with GnuTLS"
+               PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
+               [
+                       dnl No linking against libgcrypt needed
+               ],
+               [
+                       dnl linking against libgcrypt *is* needed
+                       GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
+               ])
         ],
         [
                 echo "Building without gnutls"
-        ])
-        PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11,
-        [
-                dnl No linking against libgcrypt needed
-        ],
-        [
-                dnl linking against libgcrypt *is* needed
-                GNUTLS_LIBS="$GNUTLS_LIBS -lgcrypt"
+               enable_gnutls=no
         ])
         AC_SUBST(GNUTLS_LIBS)
         AC_SUBST(GNUTLS_CFLAGS)
@@ -573,41 +575,6 @@ if test $enable_generic_umpc = yes; then
        AC_MSG_RESULT($enable_generic_umpc)
 fi
 
-dnl Maemo platform
-if test $enable_maemo = yes; then
-       PKG_CHECK_MODULES(MAEMO, libosso hildon-libs hildon-fm gnome-vfs-2.0, enable_maemo=yes,
-                 enable_maemo=no)
-       AC_SUBST(MAEMO_CFLAGS)
-       AC_SUBST(MAEMO_LIBS)
-       if test $enable_maemo = no; then
-               #test for chinook
-               PKG_CHECK_MODULES(MAEMO, libosso hildon-1 hildon-fm-2 gnome-vfs-2.0 hal, enable_maemo=yes,
-                         enable_maemo=no)
-               AC_SUBST(MAEMO_CFLAGS)
-               AC_SUBST(MAEMO_LIBS)
-               if test $enable_maemo = no; then
-                       AC_MSG_ERROR(one of libosso hildon-libs hildon-fm hildon-1 hildon-fm-2 not found)
-               else
-                       AC_DEFINE(MAEMO, 1, Build for maemo)
-                       AC_DEFINE(CHINOOK, 1, Maemo chinook)
-                       AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
-                       enable_generic_umpc=yes
-               fi
-       else
-               AC_DEFINE(MAEMO, 1, Build for maemo)
-               AC_DEFINE(GENERIC_UMPC, 1, Generic UMPC code)
-               enable_generic_umpc=yes
-       fi
-fi
-
-PKG_CHECK_MODULES(CONIC, conic, enable_conic=yes,
-         enable_conic=no)
-AC_SUBST(CONIC_CFLAGS)
-AC_SUBST(CONIC_LIBS)
-if test $enable_conic = yes; then
-       AC_DEFINE(CONIC, 1, Have conic lib)
-fi
-
 dnl Check for X-Face support
 AC_MSG_CHECKING([whether to use compface])
 if test x"$enable_compface" = xyes; then
@@ -940,6 +907,19 @@ else
 fi
 AM_CONDITIONAL(CLAWS_VALGRIND, test x"$enable_valgrind" = x"yes")
 
+dnl disabled by default
+AC_ARG_ENABLE(appdata,
+               [  --enable-appdata             Build appdata],
+               [enable_appdata=$enableval], [enable_appdata=no])
+
+AC_MSG_CHECKING([whether to build appdata])
+if test x"$enable_appdata" != xno; then
+       AC_MSG_RESULT(yes)
+else
+       AC_MSG_RESULT(no)
+fi
+AM_CONDITIONAL(BUILD_APPDATA, test x"$enable_appdata" = x"yes")
+
 dnl *************************
 dnl ** section for plugins **
 dnl *************************
@@ -1002,6 +982,10 @@ AC_ARG_ENABLE(geolocation-plugin,
                [  --disable-geolocation-plugin    Do not build geolocation plugin],
                [enable_geolocation_plugin=$enableval], [enable_geolocation_plugin=auto])
 
+AC_ARG_ENABLE(libravatar-plugin,
+               [  --disable-libravatar-plugin     Do not build libravatar  plugin],
+               [enable_libravatar_plugin=$enableval], [enable_libravatar_plugin=auto])
+
 AC_ARG_ENABLE(mailmbox-plugin,
                [  --disable-mailmbox-plugin       Do not build mailmbox plugin],
                [enable_mailmbox_plugin=$enableval], [enable_mailmbox_plugin=auto])
@@ -1078,7 +1062,8 @@ dnl either yes or no, and do the AC_SUBST calls.
 dnl Archive:           libarchive
 dnl Fancy:             Webkit, curl, optionally libsoup-gnome
 dnl Gdata:             libgdata
-dnl Geolocation                libchamplain, libsoup
+dnl Geolocation:       libchamplain, libsoup
+dnl Libravatar:                libcurl
 dnl Notification:      optionally libnotify libindicate libcanberra_gtk hotkey
 dnl Pdf-Viewer:                libpoppler
 dnl Perl:              sed perl
@@ -1087,7 +1072,7 @@ dnl PGP/Mime:             pgpcore libgpgme
 dnl PGP/Inline:                pgpcore libgpgme
 dnl S/Mime:            pgpcore libgpgme
 dnl Python:            Python
-dnl RSSyl:             libxml2 libcurl
+dnl RSSyl:             expat libcurl
 dnl SpamReport:                libcurl
 dnl vCalendar:         libcurl
 
@@ -1096,10 +1081,15 @@ PKG_CHECK_MODULES(CURL, libcurl, HAVE_CURL=yes, HAVE_CURL=no)
 AC_SUBST(CURL_LIBS)
 AC_SUBST(CURL_CFLAGS)
 
-dnl libxml2 ********************************************************************
-PKG_CHECK_MODULES(LIBXML, libxml-2.0, HAVE_LIBXML=yes, HAVE_LIBXML=no)
-AC_SUBST(LIBXML_LIBS)
-AC_SUBST(LIBXML_CFLAGS)
+dnl expat **********************************************************************
+HAVE_EXPAT=no
+AC_CHECK_HEADER(expat.h, [expat_header=yes], [])
+AC_CHECK_LIB(expat, XML_ParserCreate, [expat_lib=yes], [])
+if test x"$expat_header" = xyes -a x"$expat_lib"=xyes; then
+       HAVE_EXPAT=yes
+       AC_DEFINE(HAVE_EXPAT, 1, [Define if expat is available])
+       EXPAT_LIBS="-lexpat"
+fi
 
 dnl webkit *********************************************************************
 PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 1.1.14, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
@@ -1107,14 +1097,17 @@ AC_SUBST(WEBKIT_LIBS)
 AC_SUBST(WEBKIT_CFLAGS)
 
 dnl libsoup ********************************************************************
-PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4)
+PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4, HAVE_LIBSOUP=yes, HAVE_LIBSOUP=no)
+if test x"$HAVE_LIBSOUP" = xyes; then
+       AC_DEFINE(HAVE_LIBSOUP, 1, [Define if libsoup is available])
+fi
 AC_SUBST(LIBSOUP_CFLAGS)
 AC_SUBST(LIBSOUP_LIBS)
 
 dnl libsoup-gnome **************************************************************
 PKG_CHECK_MODULES(LIBSOUP_GNOME, libsoup-gnome-2.4 >= 2.26, HAVE_LIBSOUP_GNOME=yes, HAVE_LIBSOUP_GNOME=no)
 if test x"$HAVE_LIBSOUP_GNOME" = xyes; then
-       AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup is available])
+       AC_DEFINE(HAVE_LIBSOUP_GNOME, 1, [Define if libsoup_gnome is available])
 fi
 AC_SUBST(LIBSOUP_GNOME_CFLAGS)
 AC_SUBST(LIBSOUP_GNOME_LIBS)
@@ -1148,7 +1141,7 @@ AC_SUBST(GDATA_CFLAGS)
 AC_SUBST(GDATA_LIBS)
 
 dnl Poppler ********************************************************************
-PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.4.2, HAVE_POPPLER=yes, HAVE_POPPLER=no)
+PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.12.0, HAVE_POPPLER=yes, HAVE_POPPLER=no)
 AC_SUBST(POPPLER_LIBS)
 AC_SUBST(POPPLER_CFLAGS)
 
@@ -1165,9 +1158,6 @@ if test x"$HAVE_POPPLER" = xyes; then
        CFLAGS=$OLD_CFLAGS
 fi
 
-dnl sed ************************************************************************
-AC_CHECK_PROG(HAVE_SED, sed, yes, no)
-
 dnl perl ***********************************************************************
 AC_CHECK_PROG(HAVE_PERL, perl, yes, no)
 if test x"$HAVE_PERL" = xyes; then
@@ -1182,17 +1172,29 @@ if test x"$HAVE_PERL" = xyes; then
 fi
 if test x"$HAVE_PERL" = xyes; then
        AC_MSG_CHECKING(for Perl compile flags)
-       if test x"$HAVE_SED" = xno; then
-               AC_MSG_RESULT(no - missing sed)
-               HAVE_PERL=no
-       else
-               PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
-               PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
-               PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm//'`
-               PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb//'`
-               PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm//'`
-               PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc//'`
-               AC_MSG_RESULT(ok)
+       PERL_CFLAGS=`perl -MExtUtils::Embed -e ccopts`
+       PERL_CFLAGS=`echo $PERL_CFLAGS | sed 's/-D_FILE_OFFSET_BITS=[[0-9]]*//'`
+       PERL_LDFLAGS=`perl -MExtUtils::Embed -e ldopts |sed 's/-lgdbm//'`
+       PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-ldb//'`
+       PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lndbm//'`
+       PERL_LDFLAGS=`echo $PERL_LDFLAGS |sed 's/-lc//'`
+       AC_MSG_RESULT(ok)
+       AC_MSG_NOTICE([Adding perl LIBS ${PERL_CFLAGS}])
+       
+       if test x"$HAVE_PERL" = xyes; then
+               AC_CHECK_LIB(perl,perl_alloc,[AC_DEFINE(HAVE_LIBPERL, 1, Check for libperl.)], 
+                                            [ HAVE_LIBPERL=no ])
+       fi
+       if test x"$HAVE_LIBPERL" = xno; then
+               LIBPERL_PREFIX=`perl -MExtUtils::Embed -e perl_inc`
+               LIBPERL_PREFIX=`echo $LIBPERL_PREFIX |sed 's/-I//'`
+               AC_MSG_CHECKING([for libperl.so])
+               if test -f "$LIBPERL_PREFIX/libperl.so"; then
+                       AC_MSG_RESULT(yes)
+                       HAVE_LIBPERL=yes
+               else
+                       AC_MSG_RESULT(no)
+               fi      
        fi
        PERL="perl"
        AC_SUBST(PERL)
@@ -1224,21 +1226,31 @@ AM_PATH_PYTHON([2.5], [
        fi
 
        if test x"$HAVE_PYTHON" = xyes; then
-               # libpython.so
-               PYTHON_SO_FILE="libpython${PYTHON_VERSION}.so"
-               found_libpython_so="no"
-               if test -f "$PYTHON_PREFIX/lib/$PYTHON_SO_FILE"; then
-                       found_libpython_so="yes"
-                       PYTHON_SHARED_LIB=`python -c "import os,sys; print os.path.basename(os.path.realpath(\"$PYTHON_PREFIX/lib/$PYTHON_SO_FILE\"))"`
-               fi
-               if test -f "$PYTHON_PREFIX/lib64/$PYTHON_SO_FILE"; then
-                       found_libpython_so="yes"
-                       PYTHON_SHARED_LIB=`python -c "import os,sys; print os.path.basename(os.path.realpath(\"$PYTHON_PREFIX/lib64/$PYTHON_SO_FILE\"))"`
+               _save_libs="$LIBS"
+               if test x"$platform_win32" = xno; then
+                       # libpython.so
+                       PYTHON_SHARED_LIB="libpython${PYTHON_VERSION}.so"
+                       LIBS="-ldl"
+                       AC_MSG_CHECKING([whether to dlopen $PYTHON_SHARED_LIB works])
+                       AC_RUN_IFELSE(
+                               [AC_LANG_PROGRAM(
+                                       [#include <dlfcn.h>
+                                        #define PYTHON_SO_FILE "${PYTHON_SHARED_LIB}"
+                                       ],
+                                       [if (!dlopen(PYTHON_SO_FILE, RTLD_NOW | RTLD_GLOBAL)) return 1; return 0;])
+                               ],
+                               [found_libpython_so="yes"],
+                               [found_libpython_so="no"],
+                               [AC_MSG_FAILURE([cross-compiling not supported])])
                fi
                if test x"$found_libpython_so" != x"yes"; then
-                       AC_MSG_WARN(Could not find Python shared libary: $PYTHON_SO_FILE does not exist. Maybe you need to install development packages for Python.)
+                       AC_MSG_RESULT(no)
+                       AC_MSG_WARN(Could not find Python shared libary: ${PYTHON_SHARED_LIB}. Maybe you need to install development packages for Python.)
                        HAVE_PYTHON=no
+               else
+                       AC_MSG_RESULT(yes)
                fi
+               LIBS="$_save_libs";
        fi
        if test x"$HAVE_PYTHON" = xyes; then
                PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.10.3, [AC_DEFINE(ENABLE_PYTHON, [1], [Enable Python support])], HAVE_PYTHON=no)
@@ -1461,6 +1473,7 @@ else
        AC_MSG_RESULT(no)
 fi
 
+AC_MSG_CHECKING([whether to build geolocation plugin])
 if test x"$enable_geolocation_plugin" != xno; then
        dependencies_missing=""
 
@@ -1485,6 +1498,31 @@ else
        AC_MSG_RESULT(no)
 fi
 
+AC_MSG_CHECKING([whether to build libravatar plugin])
+if test x"$enable_libravatar_plugin" != xno; then
+       dependencies_missing=""
+
+       if test x"$HAVE_CURL" = xno; then
+               dependencies_missing="libcurl $dependencies_missing"
+       fi
+
+       if test x"$dependencies_missing" = x; then
+               PLUGINS="$PLUGINS libravatar"
+               AC_MSG_RESULT(yes)
+       elif test x"$enable_libravatar_plugin" = xauto; then
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN("Plugin libravatar will not be built; missing $dependencies_missing")
+               enable_libravatar_plugin=no
+               MISSING_DEPS_PLUGINS="$MISSING_DEPS_PLUGINS libravatar"
+       else
+               AC_MSG_RESULT(no)
+               AC_MSG_ERROR("Plugin libravatar cannot be built; missing $dependencies_missing")
+       fi
+else
+       DISABLED_PLUGINS="$DISABLED_PLUGINS libravatar"
+       AC_MSG_RESULT(no)
+fi
+
 AC_MSG_CHECKING([whether to build mailmbox plugin])
 if test x"$enable_mailmbox_plugin" != xno; then
        PLUGINS="$PLUGINS mailmbox"
@@ -1574,8 +1612,8 @@ AC_MSG_CHECKING([whether to build perl plugin])
 if test x"$enable_perl_plugin" != xno; then
        dependencies_missing=""
 
-       if test x"$HAVE_PERL" = xno; then
-               dependencies_missing="perl $dependencies_missing"
+       if test x"$HAVE_LIBPERL" = xno; then
+               dependencies_missing="libperl $dependencies_missing"
        fi
 
        if test x"$dependencies_missing" = x; then
@@ -1705,8 +1743,8 @@ AC_MSG_CHECKING([whether to build rssyl plugin])
 if test x"$enable_rssyl_plugin" != xno; then
        dependencies_missing=""
 
-       if test x"$HAVE_LIBXML" = xno; then
-               dependencies_missing="libxml2 $dependencies_missing"
+       if test x"$HAVE_EXPAT" = xno; then
+               dependencies_missing="expat $dependencies_missing"
        fi
        if test x"$HAVE_CURL" = xno; then
                dependencies_missing="libcurl $dependencies_missing"
@@ -1845,6 +1883,7 @@ AM_CONDITIONAL(BUILD_FANCY_PLUGIN,                test x"$enable_fancy_plugin" != xno)
 AM_CONDITIONAL(BUILD_FETCHINFO_PLUGIN,         test x"$enable_fetchinfo_plugin" != xno)
 AM_CONDITIONAL(BUILD_GDATA_PLUGIN,             test x"$enable_gdata_plugin" != xno)
 AM_CONDITIONAL(BUILD_GEOLOCATION_PLUGIN,       test x"$enable_geolocation_plugin" != xno)
+AM_CONDITIONAL(BUILD_LIBRAVATAR_PLUGIN,                test x"$enable_libravatar_plugin" != xno)
 AM_CONDITIONAL(BUILD_MAILMBOX_PLUGIN,          test x"$enable_mailmbox_plugin" != xno)
 AM_CONDITIONAL(BUILD_NEWMAIL_PLUGIN,           test x"$enable_newmail_plugin" != xno)
 AM_CONDITIONAL(BUILD_NOTIFICATION_PLUGIN,      test x"$enable_notification_plugin" != xno)
@@ -1869,6 +1908,7 @@ dnl ****************************
 
 AC_OUTPUT([
 Makefile
+appdata/Makefile
 m4/Makefile
 po/Makefile.in
 src/common/version.h
@@ -1892,6 +1932,7 @@ src/plugins/fancy/Makefile
 src/plugins/fetchinfo/Makefile
 src/plugins/gdata/Makefile
 src/plugins/geolocation/Makefile
+src/plugins/libravatar/Makefile
 src/plugins/mailmbox/Makefile
 src/plugins/newmail/Makefile
 src/plugins/notification/Makefile
@@ -1905,6 +1946,7 @@ src/plugins/pgpcore/Makefile
 src/plugins/pgpmime/Makefile
 src/plugins/pgpinline/Makefile
 src/plugins/rssyl/Makefile
+src/plugins/rssyl/libfeed/Makefile
 src/plugins/smime/Makefile
 src/plugins/spamassassin/Makefile
 src/plugins/spam_report/Makefile
@@ -1951,7 +1993,6 @@ manual/de/dist/ps/Makefile
 manual/de/dist/html/Makefile
 manual/de/dist/txt/Makefile
 claws-mail.pc
-version
 ])
 
 dnl Output the configuration summary
@@ -1978,7 +2019,7 @@ echo "DBUS               : $enable_dbus"
 echo "NetworkManager     : $enable_networkmanager"
 echo "Manual             : $enable_manual"
 echo "Generic UMPC code  : $enable_generic_umpc"
-echo "Maemo build        : $enable_maemo"
+echo "AppData            : $enable_appdata"
 echo "Config dir         : $ac_cv_with_config_dir"
 
 echo "Plugins"